/** Reconstruct the image which was Haar-transformed */ void Image::reconstruct(const size_t& level){ const size_t imageHeight = this->_header.height; const size_t imageWidth = this->_header.width; //Start settings: size_t widthToTransform=imageWidth; size_t heightToTransform=imageHeight; for (size_t i=1;i_pixels[heightStart*imageWidth+i+j*imageWidth]; int s=this->_pixels[heightStart*imageWidth+(heightToTransform/2)*imageWidth+i+j*imageWidth]; this->_pixels[heightStart*imageWidth+i+2*j*imageWidth]=s-d; this->_pixels[heightStart*imageWidth+i+(2*j+1)*imageWidth]=s+d; } } //Rows for(size_t i=0;i_pixels[heightStart*imageWidth+i*imageWidth+j]; int s=this->_pixels[heightStart*imageWidth+i*imageWidth+(widthToTransform/2)+j]; this->_pixels[heightStart*imageWidth+i*imageWidth+2*j]=s+d; this->_pixels[heightStart*imageWidth+i*imageWidth+2*j+1]=s-d; } } widthToTransform*=2; heightToTransform*=2; heightStart=imageHeight-heightToTransform; } }