零碎的轮廓

时间:2016-02-05 00:05:49

标签: android opencv camera

我正在使用open cv在android上编写简单的应用程序,它将在黑色检测到的对象上绘制红色轮廓。

这是处理代码

    Mat hsv = new Mat();
    Mat maskInrange = new Mat();
    Mat dilateMat = new Mat();
    List<MatOfPoint> contours= new ArrayList<>();

    Imgproc.cvtColor(rgbaImage, hsv, Imgproc.COLOR_RGB2HSV);

    Scalar lowerThreshold = new Scalar(0, 0, 0);
    Scalar upperThreshold  = new Scalar(15, 15, 15);

    Core.inRange(hsv, lowerThreshold, upperThreshold, maskInrange);

    Imgproc.dilate(maskInrange, dilateMat, new Mat());

    Mat h=new Mat();

    Imgproc.findContours(dilateMat, contours, h, Imgproc.RETR_LIST, Imgproc.CHAIN_APPROX_SIMPLE);

    Imgproc.drawContours ( rgbaImage, contours, -1, new Scalar(255,0,0), 1);

问题在于,代替物体的一个大轮廓代替了许多不稳定的轮廓。 enter image description here

我猜它是关于噪音的,但改善应用程序的下一步应该是什么?

0 个答案:

没有答案