From c8b26597032a7b2c435a01ce46c754a9333a236a Mon Sep 17 00:00:00 2001 From: Pierre-Yves Nicolas <6371790+pynicolas@users.noreply.github.com> Date: Sat, 20 Sep 2025 18:49:18 +0200 Subject: [PATCH] Retinex kernel sizes should depend on image size --- app/src/main/java/org/fairscan/app/PostProcessing.kt | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/app/src/main/java/org/fairscan/app/PostProcessing.kt b/app/src/main/java/org/fairscan/app/PostProcessing.kt index a82ba26..1c2c531 100644 --- a/app/src/main/java/org/fairscan/app/PostProcessing.kt +++ b/app/src/main/java/org/fairscan/app/PostProcessing.kt @@ -97,7 +97,11 @@ fun isColoredDocument( } -private fun multiScaleRetinex(img: Mat, kernelSizes: List = listOf(30.0, 500.0)): Mat { +private fun multiScaleRetinex(img: Mat): Mat { + val imageSize = img.size() + val maxDim = max(imageSize.width, imageSize.height) + val kernelSizes: List = listOf(maxDim / 50, maxDim / 3) + // Convert to grayscale (1 channel) val gray = Mat() if (img.channels() == 4) {