Image processing 绘图数字化-从图形图像中提取样本值

Image processing 绘图数字化-从图形图像中提取样本值,image-processing,charts,plot,ocr,curve-fitting,Image Processing,Charts,Plot,Ocr,Curve Fitting,这不是真正的“OCR”,因为它不能识别字符,但这与应用于曲线的想法相同。有人知道从(光栅)绘图图像检索值的图像处理库或已建立的算法吗?例如,在这张图中,我很难用眼睛读取准确的值,因为网格线之间有这样的间隙: 我可以使用直尺或其他工具,但它仍然很容易出错。如果有一个软件可以截取任何旧图形的屏幕截图,并自动将其转换为一个值表或一个可以查询的函数,那就太好了 似乎被称为“曲线识别”?也可用于从科学论文中的曲线中提取数据,这些曲线的基础数据尚未公布 有一些人类的指导是可以的。例如,OCR没有理由不能

这不是真正的“OCR”,因为它不能识别字符,但这与应用于曲线的想法相同。有人知道从(光栅)绘图图像检索值的图像处理库或已建立的算法吗?例如,在这张图中,我很难用眼睛读取准确的值,因为网格线之间有这样的间隙:

我可以使用直尺或其他工具,但它仍然很容易出错。如果有一个软件可以截取任何旧图形的屏幕截图,并自动将其转换为一个值表或一个可以查询的函数,那就太好了

似乎被称为“曲线识别”?也可用于从科学论文中的曲线中提取数据,这些曲线的基础数据尚未公布

有一些人类的指导是可以的。例如,OCR没有理由不能读取“100”并将其与线匹配,但在机器提取曲线相对于网格线的路径后,让人给出线的数值是可以的。我最感兴趣的是相对于网格追踪曲线的功能,即使网格倾斜、旋转或旋转

更新:


现在有一篇维基百科文章,名为,链接中有一堆软件。还有一些。我想理论现在就应该开始了,而软件解决方案现在就应该开始了。

这非常困难而且容易出错。(我们在化学中经常做这类事情,我们试图分析化学。)这主要取决于各种参数和条件

  • 图像是位图(仅像素)还是矢量(EMF、WMF、SVG、PS、PDF…)?矢量比像素好得多。我们处理矢量(包括PDF),但不涉及像素。我们的一些Collaborator会尝试使用像素,但仅限于最近的文档
  • 如果你被像素困住了,那么你的图像都来自同一个来源吗?如果是这样,您提取字体信息的机会很小。恐怕你的形象太差了,需要做大量的工作。但是,如果你能计算出字体,那么如果所有文档都来自同一个来源,你就有机会提取文本和数字。您可以使用启发式(规则,比如数字可能在哪里)或机器学习(一系列可以训练方法的功能)

  • 您的图像似乎已被扫描(因为轴是像素化的)。这让情况变得更糟。对于一台机器来说,看起来像一条直线的东西是可怕的。你的图片在页面上有歪斜吗?您可能需要对其进行反着色
  • 如果有直线和曲线的模型,则可能会在图像中更改建模预期参数。但这不是小事

  • 很抱歉我很悲观。如果你真的想要这些信息,那么可以通过大量投资或与从事这类工作的团队合作来完成。

    我不知道有哪种软件能满足你的要求,但如果你只得到几点,你可以使用某种回归来找到适合这些点的最佳函数。这个特殊的图形看起来像一个指数函数。所以你想找到一个指数回归计算器。

    谷歌“曲线识别软件”建议也有相关的,该页面又提到了其他替代方案。

    是一个用于数字化图形的程序。

    我使用im2graph将图形图像转换为数据,即数字。im2graph是免费的,可用于Linux和Windows。非常平滑,只需您很少的努力即可产生结果。
    请参见

    肉眼很难刮取数值。但您可以使用图形数字化仪,它可以让您对非栅格点进行采样。互联网上有很多这样的工具。有人已经提到了数字化。然而,它不是免费的

    以下是我的首选工具,我经常使用它们从图形和扫描文档中提取数据点

  • :它是免费(在线)和付费(离线)的,并且支持许多图形。它还支持对数刻度,就像图形中的刻度一样
  • WebPlotDigitalizer:它也是一个非常流行的工具,完全免费。但有时,我发现这是一辆马车和故障
  • 数字化:它是一个付费工具,没有在线版本

  • 我不认为这有你想象的那么难。你对此有什么具体经验?我不明白刮削图形与“分析化学”有什么关系。是的,我指的是光栅化图形,而不是矢量图像。@endolith上面的图形很可能出现在化学论文中。我们对如何从科学论文中提取信息进行了分析(并发表在同行评议的期刊上)。这些碰巧主要是在化学方面,但它们包含的图表显示了这个问题的所有方面。你“不认为这有我想象的那么难”。如果你真的成功地编写了一个可以从图中提取信息(无需人工帮助)的软件,那么你会让很多人感到惊讶。我的问题是阅读曲线相对于网格线的位置,而不是阅读文本。我在问题的第一句是这样说的。但我仍然坚持我的说法,即OCR读取数字“100”没有问题,特别是因为我刚刚通过ocrterminal.com、onlineocr.net、free-OCR.com和googlecodesamples.com运行了这张图像,它们都读取“100”。这些都是针对文本页面进行优化的。如果OCR算法知道它是在寻找数字而不是字母,并且它们是沿着网格排列的,那么它会更加准确。“你的图像似乎已经被扫描过……这让情况变得更糟。对一台机器来说,看起来是一条直线的东西是可怕的。”我不明白为什么。即使是一个示例Hough变换脚本也可以找到图像中的线:一个寻找等长等距平行线的专用程序