【opencv练习】青果课程表文字提取(二)
调试发现用了canny反而不好,直接跑findContours可以识别出来全部内容!(data/attachment/forum/202412/09/001104o8nittwtzk0r2cce.png)
我们可以利用面积进行过滤
复合面积的方块取左上和右下进行ocr
先取点画出来看看
```js
for i in range(len(contours)):
area = cv2.contourArea(contours)
if area > 500:
x, y, w, h = cv2.boundingRect(contours)
top_left = (x, y)
bottom_right = (x + w, y + h)
cv2.rectangle(originImage, top_left, bottom_right, (0, 0, 255), 2)
```
!(data/attachment/forum/202412/09/001231n6de9i0i12ieil11.png)
然后就是跑ocr的问题了
根据测试pytesseract 的效果并不是特别好
反而百度的paddle识别效果还不错
https://paddlepaddle.github.io/PaddleOCR/latest/ppocr/visualization.html#_3
直接初始化一下
```js
from paddleocr import PaddleOCR
logging.disable(logging.DEBUG)
ocr = PaddleOCR(use_angle_cls=True, lang='ch')
```
然后在获取方块的时候得到ori图片进行ocr识别
```js
text = ""
for line in result:
if line is not None:
for word_info in line:
text += word_info
```
!(data/attachment/forum/202412/09/001619qkiifkzpip069a06.png)
可以发现图片内的内容都能一一对上
既有坐标又有文字
剩下的只是编码部分了
有心情再写吧
缅怀小米课程表
实际小米的处理肯定比我操作的更为复杂
一通操作下来只是怀念
既是怀念曾经的小米,也是纪念那个还热泪盈眶又笨笨的自己 pytesseract 简直就是垃圾,我调用他识别验证码,成功率低得很,后来直接用了百度的api,但是又发现百度的api不如腾讯的准确率高 Su. 发表于 2024-12-9 10:02
pytesseract 简直就是垃圾,我调用他识别验证码,成功率低得很,后来直接用了百度的api,但是又发现百度的a ...
我用的百度本地模型,可以白嫖还好
腾讯好像没发布开源的
李恒道 发表于 2024-12-9 16:39
我用的百度本地模型,可以白嫖还好
腾讯好像没发布开源的
不晓得,因为是自己用,所以就直接调的api,一个月免费1000次,够我用了,腾讯,百度都是一千次,阿里是200次
页:
[1]