darknet-ocr
darknet-ocr copied to clipboard
部分图片一识别就奔溃。CUDA Error: invalid configuration argument
CUDA Error: invalid configuration argument python3: ./src/cuda.c:36: check_error: Assertion `0' failed. 大部分图片都正常,只有部分图片会这样,一识别就崩溃。 如下图片: https://i.niupic.com/images/2020/02/13/6qpg.png
已经找到原因: 是因为图片分割(detect_lines)后,如果被分割的图片宽度小于一定的数值,predict_image就会崩溃,应该是跟训练有关系。解决也很简单,做个判断就可以。darknet.py 主动抛个异常,其它地方捕获一下就行了。 ` def array_to_image(image): boxed_image = np.array(image) boxed_image = np.array(cv2.split(boxed_image)) c = boxed_image.shape[0] h = boxed_image.shape[1] w = boxed_image.shape[2] if w < 50: raise Exception("width not supported")
image = boxed_image.flatten()
data = c_array(c_float, image)
im = IMAGE(w, h, c, data)
return im`
@deeroad 你好,请问你是在linux环境下还是在windows环境下运行的。
@deeroad 你好,请问你是在linux环境下还是在windows环境下运行的。
win10系统无法运行这个项目,感觉有点鸡肋
@deeroad 你好,请问你是在linux环境下还是在windows环境下运行的。
win10系统无法运行这个项目,感觉有点鸡肋
我在ubuntu下运行遇到了问题,请问能请教一下你吗?😥运行ocr.py遇到 python:段错误(核心已转储)。如果方便的话,能加一下我的QQ吗?QQ:1126654139,验证问题答案:胡军涛。万分感谢,真的比较着急。🙏
@deeroad 你好,请问你是在linux环境下还是在windows环境下运行的。
win10系统无法运行这个项目,感觉有点鸡肋
我是Ubuntu 18.4,目前正常,Win10 cpu模式识别结果乱码。
您好,我是在colab上运行,也是好多图片一跑就崩溃。根据您的解答确实可以避免崩溃,但是我没太搞明白为什么w需要>=50,我看代码里只是判断了w<8,而且h的大小也只是32.
@deeroad 你好,请问你是在linux环境下还是在windows环境下运行的。
win10系统无法运行这个项目,感觉有点鸡肋
我是Ubuntu 18.4,目前正常,Win10 cpu模式识别结果乱码。
您好,我是在colab上运行,也是好多图片一跑就崩溃。根据您的解答确实可以避免崩溃,但是我没太搞明白为什么w需要>=50,我看代码里只是判断了w<8,而且h的大小也只是32.
@deeroad 你好,请问你是在linux环境下还是在windows环境下运行的。
win10系统无法运行这个项目,感觉有点鸡肋
我是Ubuntu 18.4,目前正常,Win10 cpu模式识别结果乱码。
崩溃的问题解决了,我的解决方案是在读完图片后进行了旋转。所以,可能是因为照片在旋转后无法进行识别(旋转180度没有尝试)。
@deeroad 大佬,你这个是怎么定位出来的,我解决了这个问题,但又有相似情况,不知道定位的步骤,直接c代码就出问题。
ocr.py 里有outW = int(np.ceil(w/4)-3),这也是网络输出特征的outW,如果输入小于13,则输出特征图的宽为0,会报错;所以把84行 if w<8: 改为 w<13即可。
@jiojio1973 ,不只是在outW那儿报错,当w=8时,在res = predict_image(ocrNet, im)这一句会输出一个 python: ,然后就退出了