python - 使用opencv python从机器部分识别字符
问题描述
我正在做一个关于使用opencv python识别机器部件中的字符的项目:
此图像由罗技 c615 相机捕获。我想检测该机器部件上的完美文本。
我尝试了easyocr,结果是:
final ['(ER--', '827818,303"', '821698,', 'I(dia']
而现在我真的不知道该怎么办。这是我的代码:
import numpy as np
import cv2
import easyocr
IMAGE_FILE_LOCATION = r'D:\camera_mv_image\IMAGES\date (1).jpeg'
input_img = cv2.imread(IMAGE_FILE_LOCATION)
bfilter = cv2.bilateralFilter(input_img, 15, 30, 30)
bfilter = cv2.cvtColor(bfilter, cv2.COLOR_BGR2GRAY)
sharpen_kernel = np.array([[-1,-1,-1], [-1,9,-1], [-1,-1,-1]])
sharpen = cv2.filter2D(bfilter, -1, sharpen_kernel)
cv2.imshow('sharpen', sharpen)
reader = easyocr.Reader(['en'])
result = reader.readtext(sharpen,detail=0)
print("final",result)
cv2.waitKey(0)
解决方案
尝试首先定位感兴趣的区域(文本)并调用readtext()
每一行。如果这还不够,请在每行中找到每个单独的字符并调用readtext()
每个单独的字符,就像我在这里演示的那样:https ://stackoverflow.com/a/68521734/14432704
推荐阅读
- firebase-realtime-database - 是否可以让 Firebase 实时数据库节点仅可供 2 个特定用户访问?
- mongodb - 减少数组元素 (MongoDB)
- javascript - 如何使用带有加密进度/状态指示器的 AES-CBC 算法加密和解密大文件?
- c++ - 'for' 之前的预期不合格 -id
- git - 合并后将gitlab-ci.yml中的include-ref更改为master?
- terraform - 如何将用户添加到 terraform OCI 中的组
- wordpress - 无法在 cPanel 中打开 wp-config.php
- entity-relationship - 如何确定实体关系?如何区分一对多和多对多
- c# - 在 WPF 中更改 TextBox 时如何更改 TextString?
- c# - SocketException:数据库查找期间发生不可恢复的错误