利用Matlab提取图片中曲线数据(线性修正,支持对数坐标)

时间:2026-01-19

前一段时间看到一篇文章“利用Matlab 提取图图片中的数据”,觉得思路挺好,遂下载下来研究了一番,发现作者所编写的程序没有考虑原始图片非水平放置的情况,而实际扫描图片时,将图片完全放置水平难度较大... 同时作者也没有考虑对数坐标的情况,且程序GUI 界面不太人性化,操作有点不习惯。因此借着作者良好意愿,对其程序进行了改进~

利用Matlab提取图片中曲线数据

前一段时间看到一篇文章“利用Matlab提取图图片中的数据”,觉得思路挺好,遂下载下来研究了一番,发现作者所编写的程序没有考虑原始图片非水平放置的情况,而实际扫描图片时,将图片完全放置水平难度较大... 同时作者也没有考虑对数坐标的情况,且程序GUI界面不太人性化,操作有点不习惯。因此借着作者良好意愿,对其程序进行了改进~

2011-6-9

考虑一张非水平无变形的曲线图,现将其曲线数据取出来,步骤如下:

(x1(x

1. 在坐标轴上取三点以定位坐标系。如图中红色点所示。

2. 在曲线上选取若干个点,如图中蓝色点所示。

3. 设定坐标轴选取点x和y的实际值。

4. 选取坐标系类型。

5. 变换。

6. 保存数据。

7. 数据后处理。

在变换过程中程序首先计算(xi,yi)到(x1,y1)和(x2,y2)所组成的y轴的距离Δx,同样的方法计算Δy,当然Δx和Δy是图片的像素值。接下来计算每个像素点所对应实际坐标值。对于线性x轴,比例系数为(Xmax-Xmin)/(sqrt((x1-x0)^2)+(y1-y0)^2),同样对于线性y轴,比例系数(Ymax-Ymin)/(sqrt((x0-x2)^2)+(y0-y2)^2)。这样即可求出每个点的实际坐标值

Xi=Δx *(Xmax-Xmin)/(sqrt((x1-x0)^2)+(y1-y0)^2)+Xmin

Yi=Δy *(Ymax-Ymin)/(sqrt((x0-x2)^2)+(y0-y2)^2)+Ymin

对数坐标的变换关系类似

Xi=10^(log10(Xmin)+Δx *(log10(Xmax)-log10(Xmin))/(sqrt((x1-x0)^2)+(y1-y0)^2))

Yi= 10^(log10(Ymin)+Δy *(log10(Ymax)-log10(Ymin))/(sqrt((x0-x2)^2)+(y0-y2)^2))

前一段时间看到一篇文章“利用Matlab 提取图图片中的数据”,觉得思路挺好,遂下载下来研究了一番,发现作者所编写的程序没有考虑原始图片非水平放置的情况,而实际扫描图片时,将图片完全放置水平难度较大... 同时作者也没有考虑对数坐标的情况,且程序GUI 界面不太人性化,操作有点不习惯。因此借着作者良好意愿,对其程序进行了改进~

具体操作说明

1.导入图片。

2.定位坐标系。按del键可删除上一个点

3.定位曲线。

前一段时间看到一篇文章“利用Matlab 提取图图片中的数据”,觉得思路挺好,遂下载下来研究了一番,发现作者所编写的程序没有考虑原始图片非水平放置的情况,而实际扫描图片时,将图片完全放置水平难度较大... 同时作者也没有考虑对数坐标的情况,且程序GUI 界面不太人性化,操作有点不习惯。因此借着作者良好意愿,对其程序进行了改进~

4.设置变换参数。

5.变换。单击[变换]按钮后,弹出变换后的结果。

6.保存数据。

前一段时间看到一篇文章“利用Matlab 提取图图片中的数据”,觉得思路挺好,遂下载下来研究了一番,发现作者所编写的程序没有考虑原始图片非水平放置的情况,而实际扫描图片时,将图片完全放置水平难度较大... 同时作者也没有考虑对数坐标的情况,且程序GUI 界面不太人性化,操作有点不习惯。因此借着作者良好意愿,对其程序进行了改进~

8. 数据后处理

导入数据,假定导入后变量名为

test

在Matlab Command窗口中输入 x=test(:,1);y=test(:,2); cftool;弹出曲线拟合工具箱

创建数据集

前一段时间看到一篇文章“利用Matlab 提取图图片中的数据”,觉得思路挺好,遂下载下来研究了一番,发现作者所编写的程序没有考虑原始图片非水平放置的情况,而实际扫描图片时,将图片完全放置水平难度较大... 同时作者也没有考虑对数坐标的情况,且程序GUI 界面不太人性化,操作有点不习惯。因此借着作者良好意愿,对其程序进行了改进~

拟合数据

前一段时间看到一篇文章“利用Matlab 提取图图片中的数据”,觉得思路挺好,遂下载下来研究了一番,发现作者所编写的程序没有考虑原始图片非水平放置的情况,而实际扫描图片时,将图片完全放置水平难度较大... 同时作者也没有考虑对数坐标的情况,且程序GUI 界面不太人性化,操作有点不习惯。因此借着作者良好意愿,对其程序进行了改进~

数据初始化程序段:

导入图像程序段:

前一段时间看到一篇文章“利用Matlab 提取图图片中的数据”,觉得思路挺好,遂下载下来研究了一番,发现作者所编写的程序没有考虑原始图片非水平放置的情况,而实际扫描图片时,将图片完全放置水平难度较大... 同时作者也没有考虑对数坐标的情况,且程序GUI 界面不太人性化,操作有点不习惯。因此借着作者良好意愿,对其程序进行了改进~

点选取程序段:

前一段时间看到一篇文章“利用Matlab 提取图图片中的数据”,觉得思路挺好,遂下载下来研究了一番,发现作者所编写的程序没有考虑原始图片非水平放置的情况,而实际扫描图片时,将图片完全放置水平难度较大... 同时作者也没有考虑对数坐标的情况,且程序GUI 界面不太人性化,操作有点不习惯。因此借 …… 此处隐藏:2575字,全部文档内容请下载后查看。喜欢就下载吧 ……

利用Matlab提取图片中曲线数据(线性修正,支持对数坐标).doc 将本文的Word文档下载到电脑

    精彩图片

    热门精选

    大家正在看

    Copyright © 2023-2025 学科文库 版权所有
    本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
    客服QQ:370150219 邮箱:370150219@qq.com
    苏ICP备16052595号-5

    × 游客快捷下载通道(下载后可以自由复制和排版)

    限时特价:4.9 元/份 原价:20元

    支付方式:

    开通VIP包月会员 特价:19元/月

    注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
    微信:fanwen365 QQ:370150219