mirror of
https://github.com/HIllya51/LunaTranslator.git
synced 2024-12-29 00:24:13 +08:00
1.7 KiB
1.7 KiB
OCR自动化执行方法的参数含义
文本相似度阈值
OCR的结果是不稳定的,经常对于图片的微小扰动会使文本发生微小变化,导致翻译也会连带重新翻译。
不管使用哪种自动化方法,每次调用OCR后,都会比较本次OCR的结果和上一次OCR的结果(编辑距离),当编辑距离大于阈值时,才会输出文本。
自动化执行方法
分析图像更新
这个方法会使用参数“图像稳定性阈值”“图像一致性阈值”
1. 图像稳定性阈值
当游戏文本不是立即出现,或者游戏有动态背景或live2d时,截取的图片是会不停的发生变化的。
每次截图时,和上一次截图进行比较,计算相似度。当相似度大于阈值时,认为图片是处于稳定状态,进行下一步判断。
如果可以确定游戏是完全静态的,可以将这个值设置为0,反之可以适当提高该值。
2. 图像一致性阈值
这个参数是最重要的。
当图片稳定后,比较当前图片和上一次进行OCR时图片(而非上一次截图)的相似度。当相似度小于该阈值时,认为游戏文本发生了变化,进行OCR。
如果OCR频率过快,可以适当提高该值;反之如果太过迟钝,可以适当降低该值。
周期执行
这个方法会依据“执行周期”来周期执行
分析图像更新+周期执行
结合上述两种方法,当根据至少每“执行周期”的时间间隔都会执行一次OCR。且也会根据“分析图像更新”在间隔内进行OCR,间隔内的OCR会重置间隔的计时。