deeroad
deeroad
Win10不用试了,目前是不支持的。 跑成功也是乱码。
已经找到原因: 是因为图片分割(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...
> > @deeroad 你好,请问你是在linux环境下还是在windows环境下运行的。 > > win10系统无法运行这个项目,感觉有点鸡肋 我是Ubuntu 18.4,目前正常,Win10 cpu模式识别结果乱码。
> win10下CPU模式,python3.6.5,已编译cpu版makefile > > 请问CPU模式下,config.py设置GPU为False,**是否需要修改ocr.py**第19行 if 1: 为 if gpu: ??? > > 若不修改,调用predict_darknet 和 predict_cpu均无任何输出,无报错信息,程序就直接结束 >  > > 若修改,输出结果均为乱码,如下图。 >  请问你那边Win10编译用的Cygwin还是Vc编译AlexeyAB/darknet?
我用CPU模式(OpenCV)在Win10和Ubuntu 18.4都是乱码。 Ubuntu使用darknet cpu(gcc编译)的话提交图片后程序会崩溃,并且没有提示。
经测试,目前版本的opencv是无效的,各种系统都是乱码,用darknet可以正常运行。 而且一定要编译darknet GPU版,CPU版慢的没法用。
>  >  > 哪里是乱码,CPU模式哪里速度很慢?确定问题,首先检查是不是自己的问题。 CPU=False 运行后识别出来的文字是乱码; CPU=True 识别文字正常。 所以肯定不是读取编码的问题。
难倒是多线程调用导致的? 我是在后台程序直接POST请求的。
应该是高并发显存不足导致的,加了一个semaphone来限制并发,可以了。
> 并发要改为异步的方式 是修改darknet c代码还是在python中修改? 我测试了多次,目前的代码并发也是可以调用的,但是并发高的话显存更容易不足,所以才加了请求队列。 但是目前也还是偶尔会崩溃,所以暂时性又做了一个守护程序定时检测。 如有更好方案还望不吝赐教。