怎么从文献中用matlab提取图,科学网—提取参考文献中图片(曲线)数据 - 赵国伟的博文...

本文介绍了一种利用Matlab处理图片并提取文献中曲线数据的方法。通过图像预处理、灰度转换、坐标轴处理和数据分析,可以将曲线数据还原。文章提供部分源代码,适用于非均匀坐标系下的数据提取。
摘要由CSDN通过智能技术生成

在阅读国内外文献时,发现文章中有一张很有意义的图,很想得到它的原始数据,每个位置的数值到底是多少,这个想法基本上是每个人都有的.虽然我们可以得到电子版的文献,但是如何把数据提取出来,却没有一个很好的方法,只能估计或分析曲线趋势.

在科研过程中,我也同样的碰到了这个问题.发现利用Matlab的图片处理函数,加上数据处理基本上可以很好的将数据提取出来,并将图形还原.

过程其实也不复杂,但细节处理比较多.步骤为:

1)将文献中的图片,利用任意一种图片处理软件,从文章中复制出来,保存为图片文件.

2)在Matlab程序中,首先利用图形处理函数(如去噪等),将一些无用的杂点去掉,使图片看得干净些.

3)将图片数据转换成灰度或黑白数组,首先对坐标进行处理,确定曲线的起点和终点,通过阈值,去除XY坐标轴,因为这不是我们所需要的曲线.

4)对数据进行分析,一般认为曲线是连续的,处理后可以得到一条基本和原图一模一样的图片.

其中对数据处理的一些细节很多,简单来说有1)将图片转换成数组时,要合理的控制域值,太大太小都是不合适的.2)分析坐标轴时,最好将每个小间隔的信息也提取出来,这主要是考虑非均匀坐标系下的曲线.3)因为假定曲线是连续的,因此在查找下一个点时,是从前一个点的Y坐标开始找距离最小的值,如果没有,查找下一个,然后可以线性插值补上中间的值.4)如果点太多,可以取中间值来替代.5)如果有多条曲线,也是相同的处理,只不过在处理缺失点的时候要考虑一下。6)可以在程序中加入标准值,比如对特别模糊的区域,另外加入强制性的点来进行标定,有利于图形更加准确.

这个原理,处理相对比较简单,但是很实用.篇幅所限,下面是部分源程序.

function [BW,Datay1,Datay2,Datax]=image2data(filename,BWLevel,GridLevelx,GridLevely,DataYstart,DataYstep,DataXstep)

fileda

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值