BIGPPWONG / idcardocr

离线环境下第二代居民身份证信息识别
GNU General Public License v3.0
411 stars 149 forks source link

请教 #2

Open jt387 opened 6 years ago

jt387 commented 6 years ago

你好! 安装完依赖库后在解压的源码目录下命令行执行如下:

import idcard_recognize 0.3333333333333333 1280 print (idcard_recognize.process('testimages/3.jpg')) [ INFO:0] Initialize OpenCL runtime... integer argument expected, got float {'error': 1} 没有其他提示, 我不知道该怎么定位错误, 请指点!多谢!

BIGPPWONG commented 6 years ago

应该是opencl初始化失败,import之后运行cv2.ocl.setUseOpenCL(False)试试

jt387 commented 6 years ago

多谢回复, 不过试了之后还是同样的错误:

import idcard_recognize 0.3333333333333333 1280 import cv2 cv2.ocl.setUseOpenCL(False) print (idcard_recognize.process('testimages/3.jpg')) integer argument expected, got float {'error': 1}

jt387 commented 6 years ago

我把process中的try catch去掉后执行,发现错误如下:

idcard_recognize.process('testimages/3.jpg') Traceback (most recent call last): File "", line 1, in File "/home/dell/soft/idcardocr-master/idcard_recognize.py", line 14, in process idcard_img = idfind.find('idcard_mask.jpg', img_name) File "/home/dell/soft/idcardocr-master/findidcard.py", line 16, in find img1 = self.img_resize(img1, 640) File "/home/dell/soft/idcardocr-master/findidcard.py", line 92, in img_resize crop = cv2.resize(src=crop, dsize=(dwidth, height), interpolation=cv2.INTER_CUBIC) TypeError: integer argument expected, got float 可能是dwidth, height不是整数吧, 我用int()转换,还是一样的错误