python中find的输出规则_findContours的输出意味着什么?我如何解析它?

cv2.findConturs()cnt,heirarchy = cv2.findContours(edged_img,cv2.RETR_TREE,cv2.CHAIN_APPROX_SIMPLE) # Finding contours detection

此方法返回两个值。轮廓和层次。Python是所有轮廓的一个列表。每个单独的轮廓是一个由物体边界点的(x,y)坐标组成的数组。在

在您的例子中,它返回相同的两个值,但不同的是,您将它解析为字符串并将其放入单个变量中,这使得它很难理解

d类型

每个ndarray都有一个关联的数据类型(dtype)对象。这个数据类型对象(dtype)通知我们ab

在阵列的布局之外。这意味着它为我们提供了以下信息:数据类型(整数、浮点、Python对象等)

数据大小(字节数)

数据的字节顺序(小端或大端)

如果数据类型是子数组,它的形状和数据类型是什么。在

在您的例子中,它说明了ndarray中的数据是int类型以及数组维度

修复代码

在您的代码中,问题在于以下部分:

^{pr2}$

在这里,您将把findCounturs返回的值解析为str类型。在cnt,heirarchy = cv2.findContours(edged_img,cv2.RETR_TREE,cv2.CHAIN_APPROX_SIMPLE) # Finding contours detection

编辑:

用于绘图

如果要绘制所有检测到的轮廓,则必须使用cv2.drawContours()方法。在cv2.drawContours(image,contours,-1,(255,0,0),2) # Drawing the detected contours on the image.

它接受5值。它的第一个参数是源图像,第二个参数是应该作为Python列表传递的轮廓,第三个参数是等高线的索引(绘制单个轮廓时很有用)。若要绘制所有轮廓,请传递-1),其余参数为颜色、厚度等

如果您希望看到一个python程序,它可以获取图像并在其上绘制轮廓(信息),那么您可以检查这个开源代码。在

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值