diff --git a/stretchtoolbar.cpp b/stretchtoolbar.cpp index 2e74e99..1e4034d 100644 --- a/stretchtoolbar.cpp +++ b/stretchtoolbar.cpp @@ -48,14 +48,16 @@ void StretchToolbar::stretchImage(Image *img) { if(img->rawImage()) { - double median, mad; - img->rawImage()->imageStats(nullptr, nullptr, &median, nullptr, nullptr, &mad); + double median, mad, max; + img->rawImage()->imageStats(nullptr, nullptr, &median, nullptr, &max, &mad); median /= 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 mid = MTF(median - bp, TARGET_BACKGROUND); - m_stfSlider->setMTFParams(bp, mid, 1.0f); - emit paramChanged(m_stfSlider->blackPoint(), m_stfSlider->midPoint(), 1.0f); + m_stfSlider->setMTFParams(bp, mid, max); + emit paramChanged(m_stfSlider->blackPoint(), m_stfSlider->midPoint(), max); } } }