使用OpenCV,如何在掩码图像中找到“掩蔽区域”的HSV通道的值?

时间:2016-01-07 13:54:34

标签: android opencv image-processing opencv3.0 opencv4android

使用OpenCV4Android,如何在掩码图像中获取蒙版区域的第一个像素的HSV通道(dilatedMat在下面的代码段中? 我知道我们会通过hsvMat.get(0,0)获得第一个像素的HSV频道值,但我不知道如何仅将其应用于蒙版区域,而不是整个Mat。< /强>

例如,以下是相机帧作为参数传递的函数,我已经生成了一个掩码,但是我该如何从那里开始?

注意: 请注意,蒙面区域不是矩形,但形状不规则。

private void detectColoredBlob (Mat rgbaFrame) { 
        Mat hsvImage = new Mat(); 
        Imgproc.cvtColor(rgbaFrame, hsvImage, Imgproc.COLOR_RGB2HSV_FULL);

        Mat maskedImage = new Mat(); 
        Scalar lowerThreshold = new Scalar(85, 50, 20); 
        Scalar upperThreshold = new Scalar(135, 255, 77); 
        Core.inRange(hsvImage, lowerThreshold, upperThreshold, maskedImage);

        Mat dilatedMat= new Mat(); 
        Imgproc.dilate(maskedImage, dilatedMat, new Mat() ); 

        //****************WHAT NOW???**************
     }

0 个答案:

没有答案