upload correction task
This commit is contained in:
parent
5da7ec6ba0
commit
9dc5eeed6b
@ -21,7 +21,30 @@ PNM* Correction::transform()
|
||||
|
||||
PNM* newImage = new PNM(width, height, image->format());
|
||||
|
||||
qDebug() << Q_FUNC_INFO << "Not implemented yet!";
|
||||
for (int i=0; i<256; ++i) {
|
||||
|
||||
int newColor = pow(i, gamma);
|
||||
newColor = newColor * factor;
|
||||
newColor = newColor + shift;
|
||||
|
||||
if (newColor > 255) newColor = 255;
|
||||
else if (newColor < 0) newColor = 0;
|
||||
|
||||
LUT[i] = newColor;
|
||||
}
|
||||
|
||||
for (int x=0; x<width; x++)
|
||||
for (int y=0; y<height; y++)
|
||||
{
|
||||
QRgb pixel = image->pixel(x,y);
|
||||
|
||||
int red = LUT[qRed(pixel)];
|
||||
int green = LUT[qGreen(pixel)];
|
||||
int blue = LUT[qBlue(pixel)];
|
||||
|
||||
newImage->setPixel(x,y, QColor(red,green,blue).rgb());
|
||||
}
|
||||
|
||||
return newImage;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user