Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/opencv/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何区分蓝色(类圆形)和其他(任意方向的矩形/多边形)类型的轮廓_Python_Opencv_Image Processing_Computer Vision_Halcon - Fatal编程技术网

Python 如何区分蓝色(类圆形)和其他(任意方向的矩形/多边形)类型的轮廓

Python 如何区分蓝色(类圆形)和其他(任意方向的矩形/多边形)类型的轮廓,python,opencv,image-processing,computer-vision,halcon,Python,Opencv,Image Processing,Computer Vision,Halcon,图中有三条等高线。我想过滤掉蓝色轮廓,它看起来像一个圆形的椭圆形,而其他的看起来像任意对齐的多边形,其边缘也可能不是完全平滑的。我们如何区分蓝色(圆形)和其他(任意方向的矩形/多边形)类型的轮廓?如何在OpenCV或Halcon中为此设计功能?在Halcon中,您可以使用功能区分不同形状的区域/xld。查看区域/功能的帮助。HDevelop中甚至有一个“功能直方图”工具来帮助您完成这项工作,并探索所有不同的功能,检查菜单/可视化/工具/功能直方图 代码: 读取图像(图像'M0tcu.jpg')

图中有三条等高线。我想过滤掉蓝色轮廓,它看起来像一个圆形的椭圆形,而其他的看起来像任意对齐的多边形,其边缘也可能不是完全平滑的。我们如何区分蓝色(圆形)和其他(任意方向的矩形/多边形)类型的轮廓?如何在OpenCV或Halcon中为此设计功能?

在Halcon中,您可以使用功能区分不同形状的区域/xld。查看区域/功能的帮助。HDevelop中甚至有一个“功能直方图”工具来帮助您完成这项工作,并探索所有不同的功能,检查菜单/可视化/工具/功能直方图

代码:

读取图像(图像'M0tcu.jpg')
分解3(图像,图像1,图像2,图像3)
rgb3_至_灰色(图像1、图像2、图像3、图像灰色)
阈值(ImageGray,区域,131255)
连接(区域、连接的区域)
选择形状(连接区域、选定区域、圆形度和0.4615,1)

寻找“圆度”