问题遇到的现象和发生背景
在进行easyocr测试程序时,产生报错,pth文件我已经放在了用户/.easyocr.model中了
问题相关代码,这是原代码
# -*- coding: cp936 -*-
import numpy as np
import cv2
import easyocr
font = cv2.FONT_HERSHEY_SIMPLEX
reader = easyocr.Reader(['en'])
img=cv2.imread("./1.jpg")
hsv_img=cv2.cvtColor(img,cv2.COLOR_BGR2HSV)
lower_hsv = np.array([0,0,30])#颜色范围低阈值
upper_hsv = np.array([170,100,210])#颜色范围高阈值
mask = cv2.inRange(hsv_img,lower_hsv,upper_hsv)#根据颜色范围删选
mask = cv2.medianBlur(mask, 5)#中值滤波
cv2.imshow('mask', mask)
contours,hierarchy = cv2.findContours(mask, cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_NONE)
ROI = None
rect = (0,0,0,0)
for cnt in contours:
(x, y, w, h) = cv2.boundingRect(cnt)
if(w > 240 and w < 300 and h>60 and h < 100):
ROI = img[y-20:y+h+20,x-20:x+w+20].copy()
cv2.rectangle(img,(x,y),(x+w,y+h),(0,255,0),3)
rect = (x, y, w, h)
break
cv2.imshow('e',img)
cv2.imshow('ROI',ROI)
cv2.imwrite('./result/roi.jpg',ROI)
result = reader.readtext(ROI)
if len(result) > 0:
for i in range(0,len(result)):
print(result[i][1])
strText = result[i][1].replace(' ','')
cv2.putText(img,strText,(rect[0],rect[1]),0,1.5,(0,0,255),3)
cv2.imshow('result',img)
cv2.imwrite('./result/res.jpg',img)
cv2.waitKey(0)
cv2.destroyAllWindows()
运行结果及报错内容
AttributeError: module 'zmq.constants' has no attribute 'bytes_sockopts'.
View Jupyter log for further details.
我的解答思路和尝试过的方法
找了很多,这方面知识好少,对于zmq也不知道是什么
我想要达到的结果
测试easyocr,拿来作为字符识别的demo