Set max value in autostretch

This commit is contained in:
2022-06-02 15:46:06 +02:00
parent 5b44d2ac69
commit eb417010c3
+6 -4
View File
@@ -48,14 +48,16 @@ void StretchToolbar::stretchImage(Image *img)
{ {
if(img->rawImage()) if(img->rawImage())
{ {
double median, mad; double median, mad, max;
img->rawImage()->imageStats(nullptr, nullptr, &median, nullptr, nullptr, &mad); img->rawImage()->imageStats(nullptr, nullptr, &median, nullptr, &max, &mad);
median /= img->rawImage()->norm(); median /= img->rawImage()->norm();
mad /= img->rawImage()->norm(); mad /= img->rawImage()->norm();
max /= img->rawImage()->norm();
if(max>1.0f)max = 1.0f;
float bp = median + mad * BLACK_POINT_SIGMA * MAD_TO_SIGMA; float bp = median + mad * BLACK_POINT_SIGMA * MAD_TO_SIGMA;
float mid = MTF(median - bp, TARGET_BACKGROUND); float mid = MTF(median - bp, TARGET_BACKGROUND);
m_stfSlider->setMTFParams(bp, mid, 1.0f); m_stfSlider->setMTFParams(bp, mid, max);
emit paramChanged(m_stfSlider->blackPoint(), m_stfSlider->midPoint(), 1.0f); emit paramChanged(m_stfSlider->blackPoint(), m_stfSlider->midPoint(), max);
} }
} }
} }