使用opencv和tesseract制作采集卡扫描仪

2024-10-01 22:25:30 发布

您现在位置:Python中文网/ 问答频道 /正文

我计划造一台机器扫描我所有的魔法卡。它为每张卡片拍照。(机器尚未完成,因此还没有原始照片)

我认为这是一个很好的工作流程(为了简化工作流程,请省去卡片<;第四版,没有任何设置符号)

  1. 检测集(仅通过文本(例如Wrath of God)很难检测集,还要记住,旧卡(<;2015)的底部没有3个字母的集代码!)
  2. OCR卡
  3. 将ocr文本与该集所有卡片的文本进行比较(最大400)(数据库:https://github.com/EskoSalaka/mtgtools

我有点被第一步卡住了。我想的是:

  1. 神经网络分类 (套数太多,学习卡太少,手工作业太多)
  2. 使用神经网络检测集合符号位置,然后使用3或4 (可能有效,但我认为没有必要)
  3. 模板匹配(see) 这可能有效,因为卡片的方向总是相同的。但我需要为每个版本获取模板&;我自己拍摄的照片的稀有性(+分割卡片方向example)。此外,我可能需要在符号周围设置一个遮罩,因为背景颜色与卡片中的不同)
  4. 特征匹配(see) 从gatherer(example)下载符号 匹配关键点。当角度或比率不同时,这应该起作用。 遗憾的是,这根本不起作用: matches

我现在的问题是什么:

  • 如何使关键点匹配工作。(code)我也很高兴能看到关于关键点匹配的更多基本信息
  • 我是不是完全走错了方向

PS:OCR在开箱即用的情况下运行得非常好: card

(.venv) user@ThinkPad-X1 ~/Projects/find_set $ tesseract Loxodon_Lifechanter.jpg stdout -l eng

When Loxodon Lifechanter enters
the battlefield, you may have your
life total become the total toughness
of creatures you control.

5 *: Loxodon Lifechanter gets

< until end of turn, where X is

your life total.

027/280 R
M20 + EN }SNICHOLAS GREGORY "8 & © 2019 Wizards ofthe

这可以优化,但我相信这将匹配正确的卡

  • 未提取标题(=名称)
  • 教授特瑟拉特,例如关于法力符号,但这不是目前的重点

Tags: of文本lt机器模板符号神经网络流程

热门问题