You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

SikuliX clickText()函数突然无法精准识别文本求助

SikuliX clickText() 突然无法识别文本的排查方案

关于OCR引擎突然改变行为的可能性

  • SikuliX的OCR依赖Tesseract和OpenCV,除非底层依赖文件损坏或被篡改,否则不会突然改变行为。你已经验证了tessdata目录和OpenCV配置,这个可能性较低,但可以再确认系统是否有其他Tesseract版本覆盖了SikuliX自带的组件。

Java 11 & SikuliX 2.0.5的已知问题

  • SikuliX 2.0.5在Java 11环境下,存在和高DPI显示、屏幕缩放相关的OCR识别问题:如果系统显示缩放比例(比如125%、150%)被意外调整,SikuliX的屏幕捕获会出现拉伸或压缩,导致OCR失效,而外部OCR工具通常会自动适配缩放。
  • 此外,该版本的Tesseract集成存在字符集默认配置异常的情况:如果系统区域设置被修改(比如从英文切换到中文),可能导致Tesseract默认字符集不匹配,即使文本清晰也无法识别。

额外排查与修复步骤

  • 检查系统显示缩放比例,强制设置为100%;或者在SikuliX配置文件(SikulixSettings.cfg)中添加 Screen.useHighDPI = true,启用高DPI适配。
  • 调用clickText()时显式指定语言参数,比如 clickText("目标文本", lang="eng")(中文用lang="chi_sim"),避免系统区域设置干扰。
  • 使用capture()函数截取指针附近区域并保存为图片,检查捕获的图像是否存在模糊、拉伸,确认和人眼看到的画面一致。
  • 删除\AppData\Roaming\Sikulix\SikulixTesseract目录,重启SikuliX,让它自动重新下载适配的Tesseract组件。

内容的提问来源于stack exchange,提问作者Safaa Mhirsi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.14 03:27:08