diff --git a/LunaTranslator/LunaTranslator/gui/setting_textinput_ocr.py b/LunaTranslator/LunaTranslator/gui/setting_textinput_ocr.py index 4d75906c..10da0706 100644 --- a/LunaTranslator/LunaTranslator/gui/setting_textinput_ocr.py +++ b/LunaTranslator/LunaTranslator/gui/setting_textinput_ocr.py @@ -2,7 +2,7 @@ from qtsymbols import * import functools, os import gobject from myutils.config import globalconfig, ocrsetting, _TRL, ocrerrorfix, _TR -from myutils.utils import splitocrtypes +from myutils.utils import splitocrtypes, dynamiclink from gui.inputdialog import autoinitdialog, postconfigdialog, autoinitdialog_items from gui.usefulwidget import ( D_getsimplecombobox, @@ -188,7 +188,13 @@ def getocrgrid(self): type="grid", grid=[ [ - ("自动化执行方法", 8), + ("自动化执行方法", 7), + D_getIconButton( + callback=lambda: os.startfile( + dynamiclink("{docs_server}/#/zh/ocrparam") + ), + icon="fa.question", + ), ( D_getsimplecombobox( _TRL( diff --git a/docs/zh/ocrparam.md b/docs/zh/ocrparam.md new file mode 100644 index 00000000..4154f0c1 --- /dev/null +++ b/docs/zh/ocrparam.md @@ -0,0 +1,38 @@ +## OCR 自动化执行方法的参数含义 + +![img](https://image.lunatranslator.xyz/zh/ocrauto.png) + +#### 文本相似度阈值 + +OCR的结果是不稳定的,经常对于图片的微小扰动会使文本发生微小变化,导致翻译也会连带重新翻译。 + +不管使用哪种自动化方法,每次调用OCR后,都会比较本次OCR的结果和上一次OCR的结果(编辑距离),当编辑距离大于阈值时,才会输出文本。 + +## 三种执行方法 + +### 1. 分析图像更新 + +这个方法会使用参数“图像稳定性阈值”“图像一致性阈值” + +#### 1. 图像稳定性阈值 + +当游戏文本不是立即出现,或者游戏有动态背景或live2d时,截取的图片是会不停的发生变化的。 + +每次截图时,和上一次截图进行比较,计算相似度。当相似度大于阈值时,认为图片是处于稳定状态,进行下一步判断。 + +如果可以确定游戏是完全静态的,可以将这个值设置为0 + +#### 2. 图像一致性阈值 + +这个参数是最重要的。 + +当图片稳定后,比较当前图片和上一次进行OCR时图片(而非上一次截图)的相似度。当相似度小于该阈值时,认为游戏文本发生了变化,进行OCR。 + +### 2. 周期执行 + +这个方法会依据“执行周期”来周期执行 + + +### 3. 分析图像更新+周期执行 + +结合上述两种方法,当根据至少每“执行周期”的时间间隔都会执行一次OCR。且也会根据“分析图像更新”在间隔内进行OCR,间隔内的OCR会重置间隔的计时。 \ No newline at end of file diff --git a/docs/zh/sidebar.md b/docs/zh/sidebar.md index 20e69faa..79f6e914 100644 --- a/docs/zh/sidebar.md +++ b/docs/zh/sidebar.md @@ -21,6 +21,7 @@ - [软件更新](/zh/update.md) - 常见问题 + - [OCR 自动化执行方法的参数含义](/zh/windowsocr.md) - [Windows OCR 如何安装额外的语言支持](/zh/windowsocr.md) - [如何使用 Mecab 分词&词性颜色标注](/zh/qa1.md) - [如何自动划词进 anki](/zh/qa2.md)