OpenCV 轮廓精确的宽度和长度

时间:2021-03-17 19:35:43

标签: python opencv opencv-drawcontour

我试图找出轮廓的确切长度和​​宽度。基本上我想找出划痕和它们的确切长度。请参考下图: enter image description here

谁能告诉我如何找到这些裂缝的确切厚度。我已经尝试了 boundingrect() 函数来检索宽度和高度,但这并不能达到目的,因为它不准确到划痕的线。我在想是否可以找到绘制轮廓的临时实现,因为 drawcontours() 能够准确地绘制它们。 有人吗??

1 个答案:

答案 0 :(得分:0)

我不认为有什么解决方案可以让您开箱即用,但由于这些划痕只是彼此非常接近的两条线,因此您可能可以通过使用轮廓的弧长特征:

perimeter = cv2.arcLength(cnt,True)
length = perimeter / 2;

您可以使用轮廓的其他特征和属性来尝试自己计算确切的长度。会想到极值点和像素点等属性。您可以从 documentation 中找到有关这些的更多信息。