使用python-opencv识别图片中的数字的示例
时间: 2023-04-03 18:03:52 浏览: 129
可以使用以下代码来识别图片中的数字:
```python
import cv2
# 读取图片
img = cv2.imread('image.jpg')
# 将图片转换为灰度图像
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
# 对图像进行二值化处理
ret, thresh = cv2.threshold(gray, 0, 255, cv2.THRESH_BINARY_INV + cv2.THRESH_OTSU)
# 查找轮廓
contours, hierarchy = cv2.findContours(thresh, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE)
# 遍历轮廓
for contour in contours:
# 计算轮廓的边界框
x, y, w, h = cv2.boundingRect(contour)
# 提取数字图像
digit = thresh[y:y+h, x:x+w]
# 调整图像大小
resized_digit = cv2.resize(digit, (18, 18))
# 填充图像
padded_digit = np.pad(resized_digit, ((5,5),(5,5)), "constant", constant_values=0)
# 显示数字图像
cv2.imshow('digit', padded_digit)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
这段代码可以识别图片中的数字,并将其显示出来。
阅读全文