调用cv2.findContours()函数实现轮廓检测,检测图像中物体的轮廓。 2、调用imutils.grab_contours()函数获取图像轮廓。 3、调用contours.sort_contours()函数将轮廓从左到右进行排序。 4、初始化比例系数pixelsPerMetric为空,用于后续真实长度计算。 5、初始化参照物宽度width为3,用于后续真实长度计算。
时间: 2024-04-05 20:30:11 浏览: 102
openCV——寻找并绘制图像的轮廓
5星 · 资源好评率100%
好的,你的问题是如何实现图像中物体的轮廓检测并按照从左到右的顺序排序,以及如何计算真实长度?
首先,你可以使用OpenCV中的cv2.findContours()函数来实现轮廓检测,该函数可以接受二进制图像作为输入,并返回一个包含所有轮廓的列表。
然后,你可以使用imutils.grab_contours()函数来获取轮廓列表,该函数可以确保适用于不同OpenCV版本的轮廓格式。
为了将轮廓从左到右进行排序,你可以使用contours.sort_contours()函数来对轮廓进行排序,该函数可以根据一定的标准(如从左到右,从上到下等)对轮廓进行排序。
最后,为了计算真实长度,你需要确定一个比例系数和参照物的宽度。比例系数可以根据实际情况进行测量,参照物的宽度可以事先确定,并用来计算其他物体的真实长度。在计算真实长度时,你可以使用像素值与比例系数的乘积来得到物体的实际长度。
阅读全文