Wrong border interpolation when using IGV, fixes #5048

This commit is contained in:
heckflosse
2018-12-01 13:32:51 +01:00
parent 36312557fb
commit 4673ae3b24

View File

@@ -1425,8 +1425,6 @@ void RawImageSource::igv_interpolate(int winw, int winh)
chr[2] = hdif;
chr[3] = vdif;
border_interpolate2(winw, winh, 7, rawData, red, green, blue);
if (plistener) {
plistener->setProgressStr (Glib::ustring::compose(M("TP_RAW_DMETHOD_PROGRESSBAR"), RAWParams::BayerSensor::getMethodString(RAWParams::BayerSensor::Method::IGV)));
plistener->setProgress (0.0);
@@ -1781,6 +1779,7 @@ void RawImageSource::igv_interpolate(int winw, int winh)
}
}
}// End of parallelization
border_interpolate2(winw, winh, 8, rawData, red, green, blue);
if (plistener) {
plistener->setProgress (1.0);
@@ -1815,8 +1814,6 @@ void RawImageSource::igv_interpolate(int winw, int winh)
vdif = (float (*)) calloc(width * height / 2, sizeof * vdif);
hdif = (float (*)) calloc(width * height / 2, sizeof * hdif);
border_interpolate2(winw, winh, 7, rawData, red, green, blue);
if (plistener) {
plistener->setProgressStr (Glib::ustring::compose(M("TP_RAW_DMETHOD_PROGRESSBAR"), RAWParams::BayerSensor::getMethodString(RAWParams::BayerSensor::Method::IGV)));
plistener->setProgress (0.0);
@@ -2045,6 +2042,8 @@ void RawImageSource::igv_interpolate(int winw, int winh)
blue [row][col] = CLIP(rgb[1][indx] - 65535.f * chr[1][indx]);
}
}// End of parallelization
border_interpolate2(winw, winh, 8, rawData, red, green, blue);
if (plistener) {
plistener->setProgress (1.0);