魔术集卡扫描仪与opencv和tesseract

问题描述

我计划制造一台扫描我所有万智牌的机器。它拍摄每张卡片的照片。 (机器还没完成所以还没有原图)

我认为这是一个很好的工作流程(为了更轻松的工作流程,省略卡片

  1. 检测集合(仅通过文本很难检测到集合,例如 Wrath of God,另外请记住,旧卡片(
  2. 对卡片进行 OCR
  3. 将 ocr 文本与该组所有卡片的文本进行比较(最多 400 张)(数据库https://github.com/EskoSalaka/mtgtools

我有点卡在第 1 步。我的想法是:

  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

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

  • 提取标题 (=name)
  • 教授tesseract,例如关于法力符号,但这不是目前的重点。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)