怎么识别视频里的中文

软件和网站开发以及相关技术探讨
回复
anth
帖子: 172
注册时间: 2010-11-09 3:06

怎么识别视频里的中文

#1

帖子 anth » 2023-10-27 16:59

一年前我做了个小工具 识别抖音视频的作者账号 很好用 里面最关键的几个工具是

cv2 截图
tesseract 识别
re 正则表达式做判断 剔除乱码


英文非常好用 最快手头有些视频是中文的 这就抓瞎了
遇到了两个困难

tesseract中文错误率很高
re 正则判断困难

其实刚开始的时候工具没做好 英文识别错误也高
但是能用
因为可以用re判断
只要匹配一下四个英文字母 基本上所有的乱码都能踢出去

中文不行啊
比如
云字 可以识别成 去 上 芸 丰 二

我用re踢不出去错误的
怎么踢
头像
astolia
论坛版主
帖子: 6451
注册时间: 2008-09-18 13:11

Re: 怎么识别视频里的中文

#2

帖子 astolia » 2023-10-27 19:40

之前看你对预处理不屑一顾的态度,我就知道会有这种结果了。
关于tesseract的识别率我的体会是,如果能用目标字形去训练出自己的数据集的话,效果会比用tesseract自带的那些训练数据好很多。加上适当的预处理,tesseract的识别正确率能在95%以上,基本不需要再对识别出的文本进行后期加工。不过这些也只是针对拉丁字符识别的经验。中文的话你也可以尝试找找抖音文字用的字体,再用那个字体生成一堆文字和对应的字形图片喂给tesseract进行针对性训练,看看效果如何。
或者用些免费的在线API,扔给别人的服务进行处理
anth
帖子: 172
注册时间: 2010-11-09 3:06

Re: 怎么识别视频里的中文

#3

帖子 anth » 2023-10-28 10:06

astolia 写了: 2023-10-27 19:40 之前看你对预处理不屑一顾的态度,我就知道会有这种结果了。
关于tesseract的识别率我的体会是,如果能用目标字形去训练出自己的数据集的话,效果会比用tesseract自带的那些训练数据好很多。加上适当的预处理,tesseract的识别正确率能在95%以上,基本不需要再对识别出的文本进行后期加工。不过这些也只是针对拉丁字符识别的经验。中文的话你也可以尝试找找抖音文字用的字体,再用那个字体生成一堆文字和对应的字形图片喂给tesseract进行针对性训练,看看效果如何。
或者用些免费的在线API,扔给别人的服务进行处理
谢谢 昨天我又想了很久 对于预处理 识别工具 后期判断这方面分别有这样的结论

1 预处理 用了一年了 根据经验 模糊 笔画断续 倾斜其实都很罕见 现有的预处理图像非常清晰 再要降低噪声 做去噪 对我来说 既有难度 又有时间成本 很难实现

2 后期处理 英文可以后期处理 因为编码成千上万 字母就只有那几十个 所以正则表达式匹配一下几乎所有的错误都没了 中文真不行 必须提高识别率

3 文字识别工具 我看了一篇评论 是某个会议以后一个学生和文字识别大佬的谈话 他说中文识别太容易变现了 人家又不是雷锋 不可能开源 我已经不抱希望找现成工具了 确实要自己做了

我的结论和你的建议差不多 要自己拿tesseract训练 难度很大 首先是收集dataset 手头完全没有 其次是没有显卡 妈呀 拿macbook 训练 想想都酸爽 这个方向对我来说很可能走不通 我打算慢慢的试 不着急 也不抱希望

4 关于现在这个工具怎么做 那很简单 我自己想办法绕开中文了 视频里不可能全部中文了 还是有英文 重新截图就可以了
anth
帖子: 172
注册时间: 2010-11-09 3:06

Re: 怎么识别视频里的中文

#4

帖子 anth » 2023-10-31 11:57

补充一下进度吧

个人用户还是要知道自己能干什么不能干什么 一直往深了走时间成本还是太高了 我发现在软件领域 我的优势就是开源 说白了就是白嫖 对自己的定位还是要清晰一点 那么问题来了 现在的开源领域中文是什么状况 英文是什么状况 长眼睛都知道 继续白嫖下去中文来源确实捉襟见肘 去英文来源 人家也没兴趣提供中文特供版本 所以结论就是白嫖就要嫖相同点 文字不一样脸是一样的 与其卡在文字不如转向刷脸 这个可以继续嫖下去

我评估了 opencv tensorflow pytorch dlib等平台 结论是还是有点超过我的能力了 目前选择了最简单的成品产品 face recognition 已经完成组件拆解备用了 速度测试和准确率测试自己做完 至于人工智能 这个还是直接买比较划算 我不搞了 不过pytorch打算继续观望一下 没准什么时候需要微调
回复