7

我已经实现了ImageView中FloodFill算法的实现。但我无法在相机(Android 的表面视图)上实现它。我正在使用 OpenCV 库来做这件事。我已经使用轮廓概念尝试了以下代码。但我没有得到确切的结果。

public Mat onCameraFrame(CvCameraViewFrame inputFrame) {
        mRgba = inputFrame.rgba();

        if (mIsColorSelected) {
            mDetector.process(mRgba);
            List<MatOfPoint> contours = mDetector.getContours();
            Log.e(TAG, "Contours count: " + contours.size());
            for (int contourIdx = 0; contourIdx < contours.size(); contourIdx++) {
                Imgproc.drawContours(mRgba, contours, contourIdx, new Scalar(0,
                        0, 100, 10), -1);

            }

            Mat colorLabel = mRgba.submat(4, 68, 4, 68);
            colorLabel.setTo(mBlobColorRgba);

            Mat spectrumLabel = mRgba.submat(4, 4 + mSpectrum.rows(), 70,
                    70 + mSpectrum.cols());
            mSpectrum.copyTo(spectrumLabel);


        }

        return mRgba;
    }

任何人都知道如何做到这一点。提前致谢。

4

0 回答 0