sml2h3 / ddddocr

带带弟弟 通用验证码识别OCR pypi版

Home Page:https://ddddocr.com

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

计算两张缺口滑动图时,报错(-215:Assertion failed) !_src.empty() in function 'cv::cvtColor'

yuzepeng opened this issue · comments

如题,使用det.slide_match(target_bytes, background_bytes)函数时 正确的传入了两张图片的byte数据,结果直接报一下错误

target = cv2.cvtColor(np.asarray(target), cv2.IMREAD_ANYCOLOR) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cv2.error: OpenCV(4.9.0) D:\a\opencv-python\opencv-python\opencv\modules\imgproc\src\color.cpp:196: error: (-215:Assertion failed) !_src.empty() in function 'cv::cvtColor'

使用的图片是 京东 登录时拼图验证图片

如果在slide_match函数调用时加上simple_target=True 不会报错 但是效果就不行了

因为get_target函数有点问题。无法准确截取滑块导致。修改一下这个函数就可以了。

因为get_target函数有点问题。无法准确截取滑块导致。修改一下这个函数就可以了。

请问这个怎么改呢

使用opencv的轮廓。获取最大轮廓就行了。或者原函数增加2个y方向的缓存变量进行递进查找。