Cv2.Sobel(binaryMat, sobelMat, MatType.CV_8U, 1, 1); 如何获得轮廓线的 坐标值
时间: 2024-04-14 09:26:11 浏览: 18
要获取轮廓线的坐标值,你需要使用Cv2.FindContours函数来找到二值化图像中的轮廓。然后,你可以遍历找到的轮廓列表,并访问每个轮廓的点集来获取坐标值。
以下是一个示例代码,展示了如何使用Cv2.FindContours和Cv2.DrawContours来获取并绘制轮廓线的坐标值:
```python
import cv2
# 读取二值化图像
binaryMat = cv2.imread('binary_image.png', 0)
# 寻找轮廓
contours, hierarchy = cv2.findContours(binaryMat, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE)
# 绘制轮廓线并获取坐标值
for contour in contours:
# 绘制轮廓线
cv2.drawContours(binaryMat, [contour], -1, (0, 255, 0), 2)
# 获取坐标值
for point in contour:
x, y = point[0]
print("坐标:", x, y)
# 显示绘制后的图像
cv2.imshow("Contours", binaryMat)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
这段代码首先使用Cv2.FindContours函数找到二值化图像中的轮廓。然后,遍历轮廓列表,并使用Cv2.DrawContours函数绘制轮廓线。最后,通过遍历每个轮廓的点集,获取每个点的坐标值。
请注意,这里假设你已经将二值化图像保存为了名为'binary_image.png'的文件。你需要根据你的实际情况修改文件名和路径。