c# - 用人工智能识别条形码

标签 c# artificial-intelligence barcode

作为一个宠物项目/学习经验(不,这不是家庭作业),我正在开发软件来识别照片中的条形码。我不是在寻找执行此操作的软件或库 - 相反,我将其用作学习练习,我正在写博客并将其张贴在 Codeplex 上。

I have code that successfully recognizes EAN13 barcodes (which I published on CodePlex) UPC 版本 A/E 应该很快就会跟进。不过,我有两个方面很担心。首先是解码图片中有点模糊或对比度差等的条形码。其次是简单地在更大的图片中找到实际的条形码(现在你必须给我一张只有条形码的照片)。

我有一种直觉,某种形式的 AI 会帮助我解决这个问题。我过去玩过一些遗传算法,很久以前我上过一门关于人工智能的类(class),所以这对我来说并不完全陌生,但我不太确定从哪里开始。

什么类型的算法最适合解决这类问题?有任何关于 AI 繁重工作的推荐读物或代码吗?是的,我想了解正在发生的事情,但我不一定要深入到自己编写各种代码等级别。

最佳答案

我建议搜索条形码具有的属性。我想到的一些是:

  1. 颜色直方图显示两种不同的颜色大致均匀分布
  2. 正在做 hough transformation找到许多平行线
  3. 线条的粗细有两个不同的维度。

其他的?

有了这个,我会把图像分成几 block ,然后用这些特征进行分类,然后结合结果来计算一 block 是否包含条形码的可能性。

对于您的第二个问题(模糊图像),我建议计算 1st order derivative的灰度值,然后检测该空间中线条的边缘。如果图像模糊,导数的最大值会降低,但对于某个模糊因子应该是可检测的。

这对你有帮助吗?

关于c# - 用人工智能识别条形码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3506948/

相关文章:

html - CSS 和条码

c# - 我如何从一组 Action 中随机选择

search - 国际象棋计算机中的静止搜索

java - 如何处理条形码扫描器返回的二进制数据?

c# - 如何在 Build 上运行 TextTemplatingFileGenerator (VS 2017)

artificial-intelligence - Silva 和 Almeida 的反向传播算法中 u 和 d 的最佳值是多少?

android - ZXing如何扫描二维码和一维条码?

c# - 如何在 C# 代码中嵌入文件内容?

c# - 使用反射获取单个属性的每个 XmlElementAttribute 实例

c# - SocketAsyncEventArgs 缓冲区充满了零