Closed linchuanXu closed 1 month ago
https://sspai.com/prime/story/rewind-diy
这个哥们也在复现rewind,用的ocr技术是
识别文字和压缩截图尺寸:使用 OCRmyPDF 少数派过去曾有一篇文章介绍如何通过 OCRmyPDF 在扫描版 PDF 中检索文字。本文沿用那篇文章所介绍的用法,唯一多用到的选项是 --optimize 3;根据文档,这是指对图片进行比较激进的有损压缩,特别适合截图留档这种「能看清就行」的场景。
目前禁用了 chineseOCRlite 的主要原因是效能比较糟糕(需要消耗更多的计算资源、时间也相对慢一些)、且同输入图像准确率和系统自带相比也接近。在同15分钟视频切片下,chineseOCRlite
OCR 耗时约为8分钟,Windows.Media.Ocr.Cli
大概为3分钟不到。
准确率较低的原因可能是由于录制的规格分辨率比较低,导致基于此画面的OCR结果准确率也低,可以参见这个讨论: https://github.com/Antonoko/Windrecorder/issues/9#issuecomment-1793343276
(因为我屏幕的缩放开得比较大,所以没有太注意到准确率的问题……下个版本中我们会加上关闭压缩分辨率策略的选项🤯,通过录制原始的分辨率画面,应该可以对 OCR 准确度有较大的提升
OCRmyPDF 我们也瞅瞅看!未来也可能会加上 paddleOCR 等方式选项进行 benchmark 供选择🤔
todo: [x] 添加取消屏幕录制时缩放的策略选项,允许高分屏用户录制完整分辨率的视频文件; [ ] 暴露 OCR 接口,添加更多 OCR 选型、允许用户添加自定义的 OCR 引擎,添加与完善 benchmark 测试对比工具;
我改本地代码调用了chineseOCRlite,删除数据库全部ocr,效果好了很多! 字小的,模糊的可以考虑这个。
用chineseOCRlite的时候,在crnn.py的25行加入,可以避免输出大量onnx的警告:
rt.set_default_logger_severity(3)
https://cnocr.readthedocs.io/zh/latest/models/
cnocr 我看了一下,很灵活,cpu、gpu、模型都可以配置,效果很好。但是配环境很麻烦。
最好还是能暴露接口
尝试了一下调用微信自带的OCR来替换Windows.Media.Ocr.Cli,精度提升非常大,性能还没测试,也没在前端做按钮,更新刚刚推送到我fork的一个分支(https://github.com/B1lli/Windrecorder/tree/dev ),如果 @Antonoko 愿意的话,可以加在前端页面作为可选的替换OCR选择
尝试了一下调用微信自带的OCR来替换Windows.Media.Ocr.Cli,精度提升非常大,性能还没测试,也没在前端做按钮,更新刚刚推送到我fork的一个分支(https://github.com/B1lli/Windrecorder/tree/dev ),如果 @Antonoko 愿意的话,可以加在前端页面作为可选的替换OCR选择
棒!大概 0.2.0 版本前会添加自定义 ocr 接口的配置,这个 ocr 方式可以作为一个备选项加入~
尝试了一下调用微信自带的OCR来替换Windows.Media.Ocr.Cli,精度提升非常大,性能还没测试,也没在前端做按钮,更新刚刚推送到我fork的一个分支(https://github.com/B1lli/Windrecorder/tree/dev ),如果 @Antonoko 愿意的话,可以加在前端页面作为可选的替换OCR选择
棒!大概 0.2.0 版本前会添加自定义 ocr 接口的配置,这个 ocr 方式可以作为一个备选项加入~
你好,现在有了吗
已添加三方 OCR 引擎扩展,欢迎尝试~
测试结果对比参考 benchmark test: https://github.com/yuka-friends/Windrecorder/blob/main/__assets__/third_party_ocr_engine_benchmark_reference.md
我单独调用了Windows.Media.Ocr.Cli.exe来进行OCR测试,但效果非常差。这也导致了分词和搜索的效果较差,在我看来,这是整个软件的一个明显短板。
在源码中,还有第二种OCR方式:OCR文本-chineseOCRlite。我想知道为什么不再使用这个配置?
我希望能够自由切换OCR引擎,并增加一个OCR测试页面,有更好的ocr效果。
如果ocr不准确的话,现在我搜索的效果都很差,后面的LLM等创意都没有意义了