在我的应用程序中,我遇到了一个问题,不知道如何在 opencv 中实现我的想法。可以请Anone指导我如何解决这个问题。我想要一个基于色调饱和度的动态阈值,以便我可以识别图像中的特定位置。以下是适用于不同图像的阈值
cvInRangeS(imgHSV, cvScalar(5, 70, 179), cvScalar(54, 255, 255), imgThreshed); // work fine for img1, img2 and img3 but not for img4, img5, img6.
cvInRangeS(imgHSV, cvScalar(5, 100, 100), cvScalar(54, 255, 255), imgThreshed); //work fine for img4, img5 but nor for img1,2,3 and 6
cvInRangeS(imgHSV, cvScalar(5, 96, 140), cvScalar(100, 255, 255), imgThreshed);// work fine img7 but not for img 1,2,3,4,5,6.
cvInRangeS(imgHSV, cvScalar(5, 100, 100), cvScalar(35, 255, 255), imgThreshed);
cvInRangeS(imgHSV, cvScalar(12, 63 , 128), cvScalar(18, 200, 255), imgThreshed);
cvInRangeS(imgHSV, cvScalar(5, 70, 160), cvScalar(100, 255, 255), imgThreshed);
我需要一种通用方法,以便可以在运行时提取最大和最小色调饱和值并将其放入 cvInranges() 中。到目前为止,我研究发现有一个直方图可用于确定图像的色调饱和度。您能否指导我或参考我如何在运行时获取特定区域的色调饱和最大值和最小值,以便我可以在 opencv 中推广我的应用程序。如果有人有任何其他想法,我将非常感谢您。我被困在这一点上。