python opencv画出图片中文字区域
时间: 2023-05-20 12:01:59 浏览: 195
opencv在图片上显示文字
可以使用 pytesseract 库来识别图片中的文字区域,然后使用 OpenCV 的矩形框函数将文字区域框出来。以下是示例代码:
```python
import cv2
import pytesseract
# 读取图片
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)
# 识别文字区域
boxes = pytesseract.image_to_boxes(thresh)
# 画出文字区域
for b in boxes.splitlines():
b = b.split(' ')
x, y, w, h = int(b[1]), int(b[2]), int(b[3]), int(b[4])
cv2.rectangle(img, (x, img.shape[0] - y), (w, img.shape[0] - h), (0, 0, 255), 2)
# 显示结果
cv2.imshow('result', img)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
注意:在使用 pytesseract 之前需要先安装 tesseract-ocr 软件,并将其路径添加到系统环境变量中。
阅读全文