基于图像的苹果检测及尺寸测量代码
时间: 2023-06-14 09:04:12 浏览: 192
以下是一个基于Python和OpenCV的示例代码,用于检测苹果并测量其尺寸。代码将检测到的苹果用矩形框标记,并计算苹果的边界框尺寸。请注意,这只是一个示例代码,可能需要针对您的具体用例进行修改。
```python
import cv2
import numpy as np
# 加载图像
img = cv2.imread('apple.jpg')
# 转换为HSV颜色空间
hsv = cv2.cvtColor(img, cv2.COLOR_BGR2HSV)
# 设定蓝色范围
lower_blue = np.array([90, 50, 50])
upper_blue = np.array([130, 255, 255])
# 获取蓝色区域的掩模
mask = cv2.inRange(hsv, lower_blue, upper_blue)
# 进行形态学操作,以消除噪声
kernel = np.ones((5,5),np.uint8)
mask = cv2.morphologyEx(mask,cv2.MORPH_OPEN,kernel)
# 查找轮廓
contours, hierarchy = cv2.findContours(mask, cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE)
# 绘制矩形框,计算并打印边界框尺寸
for cnt in contours:
x,y,w,h = cv2.boundingRect(cnt)
cv2.rectangle(img,(x,y),(x+w,y+h),(0,255,0),2)
print("苹果尺寸:{} x {}".format(w, h))
# 显示图像
cv2.imshow('image',img)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
需要注意的是,此代码假定苹果的颜色在HSV颜色空间中是蓝色。您可能需要根据您的图像中苹果的实际颜色进行调整。此外,此代码假定图像中只有一个苹果。如果图像中有多个苹果,则需要进行额外的处理来区分它们。
阅读全文