image-processing - 提取内部轮廓(HOLES)OpenCV

标签 image-processing opencv imagemagick computer-vision contour

有没有一种方法可以提取或显示孔洞,同时丢弃外部轮廓?

我可以使用 CV_RETR_EXTERNAL 仅显示外部轮廓,但似乎无法仅显示内部轮廓(孔)。

最佳答案

你可以在 C 接口(interface)中使用这样的东西:

cvFindContours(tmp, storage, &srcSeq, sizeof(CvContour), 
                       CV_RETR_LIST, CV_CHAIN_APPROX_SIMPLE);
        while (srcSeq)
        {
            if (CV_IS_SEQ_HOLE(srcSeq))
            {
                // do something with the hole
            }
            srcSeq = srcSeq->h_next;
        }

如果您使用的是 C++ 接口(interface),则必须使用 FindContours() 中的层次结构参数来查看轮廓是否为孔。

关于image-processing - 提取内部轮廓(HOLES)OpenCV,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8708920/

相关文章:

opencv - SurfFeatureDetector 并使用 Mat() 创建一个空掩码

python - OpenCV:cv2.videoCapture成功,但是isOpen在紧接之后失败

c++ - 使用 C++、Qt 进行亮度、对比度、 Gamma 调整

python - SJ4000 + OpenCV + Raspberry Pi 图像处理

c++ - findContours 给出内存堆错误

java - 如何在 Java 中将图像的光栅字节数组转换为原始图像?

opencv - 高架人员计数的计算机视觉

c# - AWS EC2 MVC 应用程序和 Lambda Serverless Web API 应用程序之间的文件传输导致数据损坏

image-processing - ImageMagick - Alpha channel 提取,6.7 与 6.9 上的不同结果(较暗)

pdf - ImageMagick ghostscript 'delegate' 安全策略阻止转换