small changes for FF clip control code to prepare Hombre's upcoming patch, no Issue
This commit is contained in:
@@ -1296,8 +1296,8 @@ void RawImageSource::processFlatField(const RAWParams &raw, RawImage *riFlatFile
|
|||||||
}
|
}
|
||||||
|
|
||||||
float limitFactor = 1.f;
|
float limitFactor = 1.f;
|
||||||
|
|
||||||
if(raw.ff_AutoClipControl) {
|
if(raw.ff_AutoClipControl) {
|
||||||
|
int clipControlGui = 0;
|
||||||
for (int m=0; m<2; m++)
|
for (int m=0; m<2; m++)
|
||||||
for (int n=0; n<2; n++) {
|
for (int n=0; n<2; n++) {
|
||||||
float maxval = 0.f;
|
float maxval = 0.f;
|
||||||
@@ -1327,6 +1327,7 @@ void RawImageSource::processFlatField(const RAWParams &raw, RawImage *riFlatFile
|
|||||||
if(maxval + black[c4] >= ri->get_white(c4))
|
if(maxval + black[c4] >= ri->get_white(c4))
|
||||||
limitFactor = min(limitFactor,ri->get_white(c4) / (maxval + black[c4]));
|
limitFactor = min(limitFactor,ri->get_white(c4) / (maxval + black[c4]));
|
||||||
}
|
}
|
||||||
|
clipControlGui = (1.f - limitFactor) * 100.f; // this value can be used to set the clip control slider in gui
|
||||||
} else {
|
} else {
|
||||||
limitFactor = max((float)(100 - raw.ff_clipControl)/100.f,0.01f);
|
limitFactor = max((float)(100 - raw.ff_clipControl)/100.f,0.01f);
|
||||||
}
|
}
|
||||||
@@ -1365,10 +1366,11 @@ void RawImageSource::processFlatField(const RAWParams &raw, RawImage *riFlatFile
|
|||||||
for(int c=0;c<3;c++)
|
for(int c=0;c<3;c++)
|
||||||
refcolor[c] = refcolor[c] / cCount[c];
|
refcolor[c] = refcolor[c] / cCount[c];
|
||||||
|
|
||||||
float limitFactor;
|
float limitFactor = 1.f;
|
||||||
|
|
||||||
if(raw.ff_AutoClipControl) {
|
if(raw.ff_AutoClipControl) {
|
||||||
// determine maximum calculated value to avoid clipping
|
// determine maximum calculated value to avoid clipping
|
||||||
|
int clipControlGui = 0;
|
||||||
float maxval = 0.f;
|
float maxval = 0.f;
|
||||||
// xtrans files have only one black level actually, so we can simplify the code a bit
|
// xtrans files have only one black level actually, so we can simplify the code a bit
|
||||||
#pragma omp parallel
|
#pragma omp parallel
|
||||||
@@ -1389,8 +1391,10 @@ void RawImageSource::processFlatField(const RAWParams &raw, RawImage *riFlatFile
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
// there's only one white level for xtrans
|
// there's only one white level for xtrans
|
||||||
if(maxval + black[0] > ri->get_white(0))
|
if(maxval + black[0] > ri->get_white(0)) {
|
||||||
limitFactor = ri->get_white(0) / (maxval + black[0]);
|
limitFactor = ri->get_white(0) / (maxval + black[0]);
|
||||||
|
clipControlGui = (1.f - limitFactor) * 100.f; // this value can be used to set the clip control slider in gui
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
limitFactor = max((float)(100 - raw.ff_clipControl)/100.f,0.01f);
|
limitFactor = max((float)(100 - raw.ff_clipControl)/100.f,0.01f);
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user