问题标签 [number-recognition]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
42513 浏览

c# - 识别图像中的数字

我一直在寻找用于在网络上的图像中识别数字的资源。我发现许多链接提供了大量关于该主题的资源。但不幸的是,这比帮助更令人困惑,我不知道从哪里开始。

我有一张图片,里面有 5 个数字,不受干扰(没有验证码或类似的东西)。数字是白色背景上的黑色,以标准字体书写。

我的第一步是将数字分开。我目前使用的算法非常简单,它只是检查一列是否完全是白色的,因此是一个空格。然后修剪每个字符,使其周围没有白色边框。这工作得很好。

但现在我坚持对数字的实际识别。我不知道猜测正确的最佳方法是什么。我不认为直接与字体进行比较是一个好主意,因为如果数字仅略有不同,它将不再起作用。

谁能给我一个关于这是如何完成的提示?

这个问题无关紧要,但我将在 C# 或 Java 中实现它。我找到了一些可以完成这项工作的库,但我想自己实现它,以学习一些东西。

0 投票
1 回答
1187 浏览

iphone - 检测数字并处理它们?

我试图检测写在网格上的数字,然后使用 iPhone 相机处理它们。到目前为止,我发现的是一些很好的例子,例如:

http://blog.damiles.com/?p=93

http://cmgresearch.blogspot.com/2010/01/augmented-reality-on-iphone-how-to_01.html

虽然我能够在覆盖视图上很好地绘制数字,但仍然无法检测到这些数字是什么。

编辑

大家好,我在http://github.com/nolanbrown/Tesseract-iPhone-Demo上找到了一个链接,我从那里下载了代码并开始测试,但它只运行了一次,但没有给出任何输出,从那时起它就崩溃了我以下错误日志:

现在在第 131 行,我发现

但我无法介入或找到解决问题的任何方法,任何知道这一点的人请帮忙。在过去的 4 天里,我一直在做这件事,并没有向前迈出一步。

谢谢, 马杜普

0 投票
1 回答
677 浏览

neural-network - 使用Yan Cheng,Cheok的手写数字识别?

我打算将(Yan Cheng, Cheok 的手写数字识别)用于我正在进行的项目,我应该使用他们的数据库进行数字识别,但文件不在他们的网站上,我应该使用一个名为“ LRTBHVtrainingdata.txtI=96H=200LR=0.9M=0.1C=2000.snet”正如他们在教程中所说,但我在他们的网站 (http://yann.lecun.com/exdb/mnist/) 上发现的是四个文件,我不知道如何使用它们?那么关于在哪里获取他们的数据库或在哪里或使用它们的文件有什么帮助吗?

0 投票
0 回答
2091 浏览

ios - 正方体数字识别:最常见的 OCR 选项是什么

这是我通过 Tesseract 引擎进行数字识别的 iOS OCR 代码:

使用上面,我得到了一些正确识别的图像。但是有时我得到 5 而不是 8、6 而不是 5 等等。我的输入图像非常完美——二值化后的纯黑白。

还有其他我想指定的 Tesseract 选项吗?我看到有 600 多个选项和非常稀疏的文档。

我能找到的最好的是这个网站,它列出了所有选项,但对于 OCR 初学者来说还不是很清楚。

如果有人使用 tesseract 对数字 OCR 实现了 100% 的准确率,那将非常有帮助。

0 投票
2 回答
2785 浏览

python - 如何使用 openCV 对模糊数字进行分类

我想从这种图片中捕获数字。

在此处输入图像描述

我从以下链接尝试了多尺度匹配。

http://www.pyimagesearch.com/2015/01/26/multi-scale-template-matching-using-python-opencv/

我只想知道红色数字。但问题是,openCV 识别/匹配模板的红色数字是模糊的。是否有其他可能的方法来检测黑色背景上的这个红色数字?

0 投票
2 回答
5325 浏览

python - 使用python和tensorflow从图像中识别数字

详细信息:Ubuntu 14.04(LTS)、OpenCV 2.4.13、Spyder 2.3.9(Python 2.7)、Tensorflow r0.10

我想 用PythonTensorflow(可选OpenCV)从图像中识别 Number 。

此外,我想将 MNIST 数据训练与 tensorflow 一起使用

像这样(代码参考本页视频),

代码:

但是,问题是我怎样才能使numpy数组像

代码补充:

[[ 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0。0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.0. 0.50196081 0.50196081 0.50196081 0.50196081 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.50196081 1. 1. 1. 1. 1. 1. 0.50196081 0.25098041 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0 . 0.50196081 1. 1. 1. 1. 1. 1. 1. 1. 1. 1. 0.25098041 0. 0. 0. 0. 0. 0. 0. 0.0. 0. 0. 0. 0. 0. 0. 0. 0.74901962 1. 1. 1. 1. 0.50196081 0.50196081 0.50196081 0.74901962 1. 1. 1. 0.74901962 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.50196081 1. 1. 1. 0.74901962 0. 0. 0. 0. 0. 0. 0.50196081 1. 1. 0.74901962 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 1. 1. 1. 0.50196081 0. 0. 0. 0. 0. 0. 0. 0.0.25098041 1. 1. 0.74901962 0.25098041 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.74901962 1. 1. 0.74901962 0. 0. 0. 0. 0. 0. 0. 0. 0 . 0. 0.25098041 1. 1. 0.74901962 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.50196081 1. 1. 0.74901962 0. 0. 0. 0. 0. 0. 0. 0. 0 . 0. 0. 0. 0.25098041 1. 1. 0.50196081 0. 0. 0. 0. 0. 0. 0. 0. 0.50196081 1. 1. 0.25098041 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 1. 1. 0.50196081 0. 0. 0. 0. 0. 0. 0. 0. 1. 1. 1. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.25098041 1. 1. 1. 0. 0. 0. 0. 0. 0. 0 . 0. 1. 1. 0.50196081 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.25098041 1. 1. 1. 1. 0. 0. 0.0. 0. 0. 0. 0. 0.74901962 1. 0.50196081 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.74901962 1. 1. 1. 0.25098041 0. 0. 0. 0. 0. 0. 0. 0. 0.50196081 1. 1. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.25098041 0.74901962 1. 1. 1. 1. 0.74901962 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.50196081 1. 1. 0.74901962 0. 0. 0. 0. 0. 0.25098041 0.50196081 1. 1.1. 1. 1. 1. 0.50196081 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.74901962 1. 1. 1. 1. 0.50196081 0.50196081 0.74901962 1. 1. 1. 1 . 1. 1. 1. 0.50196081 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.74901962 1. 1. 1. 1. 1. 1. 1. 1 . 1. 1. 1. 0.50196081 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.0.25098041 1. 1. 1. 1. 1. 1. 1. 0.50196081 0.25098041 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0 . 0. 0. 0. 0.50196081 0.50196081 0.50196081 0.50196081 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0 . 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. ]]0. 0. 0. 0. ]]0. 0. 0. 0. ]]

当我使用 OpenCV 解决问题时,我可以制作关于图像的 numpy 数组,但有点奇怪。(我想把数组变成28x28的向量)

代码补充:

[[[255 255 255] [255 255 255] [255 255 255] ...,[255 255 255] [255 255 255] [255 255 255]]

[[255 255 255] [255 255 255] [255 255 255] ..., [255 255 255] [255 255 255] [255 255 255]]

[[255 255 255] [255 255 255] [255 255 255] ..., [255 255 255] [255 255 255] [255 255 255]]

...,

[[255 255 255] [255 255 255] [255 255 255] ..., [255 255 255] [255 255 255] [255 255 255]]

[[255 255 255] [255 255 255] [255 255 255] ..., [255 255 255] [255 255 255] [255 255 255]]

[[255 255 255] [255 255 255] [255 255 255] ..., [255 255 255] [255 255 255] [255 255 255]]]

然后,我将 value('resized_image') 放入 Tensorflow 代码中。像这样,

代码修改:

结果,该行出现错误。

ValueError:无法为形状为“(?,784)”的张量u'Placeholder_2:0'提供形状(28、28、3)的值

最后,

1)我想知道如何制作可以输入张量流代码的数据(可能是numpy数组[784])

2)你知道使用te​​nsorflow的数字识别例子吗?

我是机器学习的初学者。

请详细告诉我该怎么做。

0 投票
0 回答
226 浏览

python - 如何从图像中识别数字?

我正在编写一个脚本,该脚本获取图像并将图像裁剪为仅包含我希望它识别的数字。我的那部分工作正常。数字将是一位数或两位数。

我尝试使用 Google 的 Vision API,它运行良好并给出了正确的结果,但我宁愿在本地进行,以避免与使用该服务相关的费用。我目前正在使用 Tesseract OCR https://github.com/tesseract-ocr/tesseract

我希望它识别的图像示例:

Tesseract 是一个命令行程序,但我在一个 python 文件中调用它,该文件还处理我的脚本的其他部分。我不确定 Tesseract 是否是我想要的,或者是否有更好的解决方案来解决我的问题。

无论我通过什么图像,我得到的唯一结果返回 0 并且还显示“空页面!!”

编辑:

我现在正在使用 pytesseract,我正在尝试使用以下代码:

什么都没有输出,所以我尝试了

它输出它猜测的随机字母。tesseract 有没有办法只查找数字,以便缩小我的结果范围?

0 投票
0 回答
133 浏览

python - Opencv:裁剪 6 位手写邮政编码

我正在尝试为邮政编码排序应用程序裁剪 6 位数的手写邮政编码,因为代码适用于 10 位数的电话号码,但无法识别 6 位数的轮廓。请更正给定的代码或提供更好的替代代码来完成上述任务。

0 投票
1 回答
79 浏览

swiftui - 图像中的数字识别器

你好我对 Swift 比较陌生,还在学习新东西。我想要构建一个文本识别器,从图像中过滤出所有数字并对其进行排序。例如,当我有一张包含多个号码的信用卡时。我如何识别特定字段(IBAN、BIC 等)。最后,用户界面中的这个字段应该自动填充卡片输入图像。我的第一种方法是构建主要的文本识别器。那行得通。但我不知道,如何继续对为图像捕获的所有数据进行排序。有小费吗?谢谢

0 投票
0 回答
286 浏览

python - 在 Python 中使用 Tesseract-OCR 从图像中获取数字

我有成千上万的比例图像,我想从每个图像中提取比例的读数。但是,当使用 Tesseract 时,它会给出错误的值。我为图像尝试了几个过程,但仍然遇到同样的问题。根据我目前在图像中定义感兴趣区域后的理解,它必须转换为黑色背景的白色文本。但是,我是 python 新手,我尝试了一些功能,但仍然遇到同样的问题。如果有人可以帮助我解决这个问题,将不胜感激。以下链接用于图片,因为它超过 2 MiB,所以我无法在此处上传: https ://mega.nz/file/fZMUDRbL#tg4Tc2VmGMMdEpnZzt7blxZjVLdlhMci9jll0FLnIGI

这是处理后的图像

在此处输入图像描述