hiroi-sora / Umi-OCR

OCR software, free and offline. 开源、免费的离线OCR软件。支持截屏/批量导入图片,PDF文档识别,排除水印/页眉页脚,扫描/生成二维码。内置多国语言库。
MIT License
23.04k stars 2.35k forks source link

无法识别HEIC编码的图片,错误码203 #488

Closed shi19870201 closed 1 month ago

shi19870201 commented 2 months ago

webp的图片识别不了

hiroi-sora commented 2 months ago

你好,文件没有上传成功哦。要等 [](https://...........) 链接刷出来,才点击 Comment 。

shi19870201 commented 2 months ago

145.zip 145.zip

shi19870201 commented 2 months ago

你试试,这种图片webp的识别不出来 印章识别.zip

shi19870201 commented 2 months ago

部分图片后缀是.webp,但是实际上是HEIC格式

hiroi-sora commented 2 months ago

感谢提供的信息。这是由于 OpenCV库不支持HEIC格式 ,所以基于OpenCV的OCR引擎无法读取该图片。暂时没有好的办法,只能用第三方软件转为标准jpg或png格式,再导入Umi。

另外,如果任意一张图片无法识别,Umi会自动将其忽略,继续后面的任务的。你是否观察到,一个图片无法识别,导致后续任务无法进行?

shi19870201 commented 2 months ago

一张图片无法识别,会跳过,后续还是可以正常识别其他任务

hiroi-sora commented 2 months ago

OK,那就是在正常设计以内。

相关: https://github.com/hiroi-sora/Umi-OCR/issues/424

shi19870201 commented 2 months ago

识别不了.zip 这几张图片识别不了,你看下什么问题,格式都是jpg的,但是识别不了文字

hiroi-sora commented 2 months ago

这几张图片识别不了,你看下什么问题

你这个压缩包里5个png文件,全部都能正常识别啊

image

shi19870201 commented 2 months ago

奇怪了,我是几千张,批量识别,识别不出来

hiroi-sora commented 2 months ago

是不是上传错了,你说不行的是 jpg ,上传的是 png

shi19870201 commented 2 months ago

1 5李千基1787703428470_1.zip

hiroi-sora commented 2 months ago

还是没有上传完哦, "Uploading" 表示上传中,要等它变成链接,才是完成。

shi19870201 commented 2 months ago

5李千基1787703428470_1.zip 5双爆1787754143897_1.zip 1

shi19870201 commented 2 months ago

2 3

hiroi-sora commented 2 months ago

这两张图片确实不太对劲,Windows默认的图片浏览器无法打开。WPS倒是可以打开。

image

我用一些源信息查看工具来检查,估计这两张是嵌套文件,即外层是jpg格式的小尺寸缩略图,内层是webp或heic的完整图。对于这种非标准的文件格式,常规软件不提供支持是正常的。

你可以先批量OCR,然后将出错的图片单独收集起来,用一些支持的转换工具转为标准的jpg、png等格式,再导入OCR。

shi19870201 commented 2 months ago

方便加你vx?

shi19870201 commented 2 months ago

同样的是这样的图片,有的可以正常识别,有的不能识别

hiroi-sora commented 2 months ago

方便加你vx?

不好意思,不太方便交换私人联系方式。

同样的是这样的图片,有的可以正常识别,有的不能识别

可能对于部分文件,二进制结构符合常规标准,可以被解码。而部分文件,嵌套缩略图的形式恰好破坏了二进制结构,导致无法解码。

那就将所有图片转换格式吧。比如可以用WPS的批量转换。网上也有一些在线的免费转换服务,可以试一试。

image

shi19870201 commented 2 months ago

好的,我知道了,谢谢你

lforlgg commented 2 months ago

一个图片无法识别,导致后续任务无法进行?

如果有出现这种,能否记录在logo里,最后完毕的时候,在目标文件边上出现个logo就意味着,用户要注意,有异常情况可能会有遗漏。这样可以人工关注下结果是否完美。💖 如果顺利就按正常目前这样。

hiroi-sora commented 2 months ago

这样可以人工关注下结果是否完美

加了个功能,如果存在识别失败的图片,则任务完成后会弹窗提醒。

左栏的文件列表中,状态 标为 × 的就是识别失败的图片。

image

hiroi-sora commented 2 months ago

另外,Umi中是有两套图片解码机制。一套是OCR引擎中的OpenCV,它的兼容性较弱,无法解码楼上的样例图片。

另一套是QT框架的QImage,兼容性较强,可以成功解码样例图片,并转换为标准png等格式。

未来,Umi可能会增加一个“批量转换图片格式”的标签页,类似简化版的格式工厂,将各种图片转换为标准格式。此外,也许还能提供 批量图片压缩、图片裁切等实用功能。

image

lforlgg commented 2 months ago

这样可以人工关注下结果是否完美

加了个功能,如果存在识别失败的图片,则任务完成后会弹窗提醒。

左栏的文件列表中,状态 标为 × 的就是识别失败的图片。

🧡谢谢大佬体察民情。 ❓不过能否不用“弹窗”?🙏总觉得,弹窗不够友好,是比较过时的UI交互。 弹窗缺点: 😑操作变复杂:需要用户去点确定,硬多了一步。 😑操作被阻断:比如它在ocr图片的时候,我在进行屏幕截图识别任务。是否就被弹窗阻止了?可能过半以上的用户并不在意出错那些,只想要顺溜地直接进入下一个任务,这样弹窗对他们不友好。 😑可能引起经典弹窗重叠问题:Windows 95年代经典表现,一叠弹窗,等着点确定(怕不确定情况出现这种)

✅我建议:我觉得有下面那个像状态条类似的,无阻塞,友好型提示就可以了。 或者悄咪咪的在文件结果附近记录一个logo.txt(没问题就不产生这个) 2024-04-25_204340_ziped

另外,Umi中是有两套图片解码机制。一套是OCR引擎中的OpenCV,它的兼容性较弱,无法解码楼上的样例图片。

另一套是QT框架的QImage,兼容性较强,可以成功解码样例图片,并转换为标准png等格式。

未来,Umi可能会增加一个“批量转换图片格式”的标签页,类似简化版的格式工厂,将各种图片转换为标准格式。此外,也许还能提供 批量图片压缩、图片裁切等实用功能。

🚫关于效仿“格式工厂”感觉那是费力不讨好的事。 🚫概率:使用概率估计提出问题的朋友,十年也难得碰到一次。有提示已经很专业的做法了。 🚫臃肿和性能:专业度很难跟优化了十几年的工具比,还担心臃肿和性能下降。 🤕格式工厂的臃肿(效果不够专业,求大求全),为很多人所诟病。 🚫专业的工具做专业的业务,👍xnconvert在这块已经非常成熟,还是免费的,速度快效果又好。

shi19870201 commented 2 months ago

各种不同尺寸的图片,都要忽略右下角的水印,请问要如何设置忽略区呢? QQ截图20240428125303

hiroi-sora commented 2 months ago

各种不同尺寸的图片,都要忽略右下角的水印,请问要如何设置忽略区域呢?

忽略区域的判定是以左上角为坐标系原点的。对于不同尺寸图片,目前无法准确定位到“所有图片的右下角”。

如果各种图片的尺寸差别不大,并且文字区域离水印的距离较远,那么可以将忽略区域画大一点,确保包裹住最小、最大的图片的右下角。

如果图片尺寸差别较大,那么有一种曲线救国的方法:先批量将所有图片旋转180°,将右下角“挪到”左上角。然后在Umi中划选左上角作为忽略区域,并且标签页设置中勾选 纠正文本方向 以便能识别倒置的文字。