找回密码
 注册
Simdroid-非首页
查看: 1210|回复: 18

[原创区] 图像中的曲线数据提取及其平滑处理

[复制链接]
发表于 2005-6-27 11:40:08 | 显示全部楼层 |阅读模式 来自 湖北武汉
图像中的曲线数据提取及其平滑处理

alexqxp(原创)
近日一友人送来张X射线光电子能谱仪(XPS)的图像,对仪器生成的曲线不是很满意,认为其中由于仪器测量时不稳定导致杂波很多。由于仪器只提供了图片文件,没有提供数据,因此不可能直接对数据进行滤波处理。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×

评分

1

查看全部评分

 楼主| 发表于 2005-6-27 11:41:18 | 显示全部楼层 来自 湖北武汉

Re:图像中的曲线数据提取及其平滑处理

Simdroid开发平台
因此我采取如下步骤处理这一问题。

1.  将原图中的数据曲线分割出来;

2.  写了读取图像数据的程序,读出图像点的坐标;

3.  对坐标数据进行线性变换,得到图像的原始数据;

4.  使用Origin平滑数据,然后重新绘图。

下面具体说明。

1) 使用PHOTOSHOP对图像进行切割,去除曲线外的内容,黑白转换,得到第一幅图如下所示。这里注意到图像是镜像的,原因是图中的横坐标是反向的,由大到小,这样处理是为了后面画图;

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
 楼主| 发表于 2005-6-27 11:42:22 | 显示全部楼层 来自 湖北武汉

Re:图像中的曲线数据提取及其平滑处理

2)然后使用自写程序读图像点坐标数据,得到文本数据;

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
 楼主| 发表于 2005-6-27 11:45:23 | 显示全部楼层 来自 湖北武汉

Re:图像中的曲线数据提取及其平滑处理

3)使用EXCEL打开数据文件,进行简单的线性变换;
4)将变换后的数据放入Origin,然后使用Smooth命令进行数据平滑;
将平滑后的数据使用EXCEL画图,得到平滑后的曲线。
使用数值次序反转得到结果图像。
根据此曲线经过简单的处理就可以得到最终的结果。

由于很多仪器设备制造商处于自身利益的考虑,都不提供原始数据文件,使得设备配套软件可以买高价,本方法也适用于其它类似情况。

后记:在ORIGIN里面由专门的控件来实现这个功能。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
发表于 2005-6-27 11:51:36 | 显示全部楼层 来自 哈尔滨工程大学

Re:图像中的曲线数据提取及其平滑处理

很好的教程
应该放到origin专栏
 楼主| 发表于 2005-6-27 12:05:00 | 显示全部楼层 来自 湖北武汉

Re:图像中的曲线数据提取及其平滑处理

是吗?我写的东西一般有点杂,放到ORIGIN里面不会说这不相关吧。毕竟里面只使用了ORIGIN的平滑功能,其它的功能都不是ORIGIN里面的。
发表于 2005-6-27 12:45:30 | 显示全部楼层 来自 哈尔滨工程大学

Re:图像中的曲线数据提取及其平滑处理

alexqxp wrote:
是吗?我写的东西一般有点杂,放到ORIGIN里面不会说这不相关吧。毕竟里面只使用了ORIGIN的平滑功能,其它的功能都不是ORIGIN里面的。
那就算综合origin和编程和excel和…………的综合应用:D
发表于 2005-6-27 12:57:34 | 显示全部楼层 来自 新疆乌鲁木齐

Re:图像中的曲线数据提取及其平滑处理

alexqxp wrote:
2)然后使用自写程序读图像点坐标数据,得到文本数据;
想问一下,是什么自写程序,这个问题别人以前也问过我,最后我说让他在mapinfo里作,你是怎么作的呢?因为这步最关键,有了数据,后续的处理在很多软件中都能够完成.
发表于 2005-6-27 13:47:38 | 显示全部楼层 来自 上海大学

Re:图像中的曲线数据提取及其平滑处理

不错啊,好像有个小程序dataget,可以屏幕取值的。
 楼主| 发表于 2005-6-27 15:25:18 | 显示全部楼层 来自 湖北武汉

Re:图像中的曲线数据提取及其平滑处理

bainhome:
这个所谓的自写程序是这么回事。我自己工作时做了个图像分析软件(imageanalysis),主要针对金相,铁谱,地质等专业,提供个性化服务。我也在这个程序的基础上写点小程序,完成一些图像方面的小功能。这些小功能本身不包含在程序里面。你需要的话我可以专门另外写个程序给你。
就本问题而言。也可以使用MATLAB完成。流程如下:
1。读入图像;
2。黑白二值化;
3。设置循环,记录象素色度为0的点的下标就是(x,y)。
然后设置相应的线性变换,就可以得到原始数据了。
发表于 2005-6-27 15:58:52 | 显示全部楼层 来自 北京

Re:图像中的曲线数据提取及其平滑处理

原创的都值得顶
发表于 2005-6-27 17:27:02 | 显示全部楼层 来自 新疆乌鲁木齐

Re:图像中的曲线数据提取及其平滑处理

alexqxp wrote:
bainhome:
这个所谓的自写程序是这么回事。我自己工作时做了个图像分析软件(
...
然后设置相应的线性变换,就可以得到原始数据了。
这个问题是朋友的硕论中的,我仔细想过,程序也编过,但是往往一个比如700×700的小图片就要执行490000次循环+判断,所以就放弃了,我始终没有更好的提高速度的执行办法来作这个工作.另外如果一幅图形中有多条直线,如何能够分别提取这些直线的端点,这个问题也困扰我很久了,今天也一并吐苦水+灌水吧
诚心请教!
顺便说一句:欢迎您在MATLAB版上发贴,与MATLAB有无关联均可,因为我注意你很久了:D,你会的软件太多了,什么photoshop,MATLAB,origin,3Dmax,ansys...,对您这样的人强分派别,恐怕只有水区不会赶你走了:D
您来MATLAB发贴,我的反应只有一个:倒履相迎!
发表于 2005-6-28 19:30:23 | 显示全部楼层 来自 湖南湘潭

Re:图像中的曲线数据提取及其平滑处理

我只能狂顶了!
一直就想实现这个功能,却根本找不到北!
谢谢了
发表于 2005-6-28 19:54:11 | 显示全部楼层 来自 上海大学

Re:图像中的曲线数据提取及其平滑处理

alexqxp:

     如果是反过来操作呢!

     我有一堆数据,需要进行可视化操作,最好是gui界面 的。
 楼主| 发表于 2005-6-29 08:27:58 | 显示全部楼层 来自 湖北武汉

Re:图像中的曲线数据提取及其平滑处理

什么数据,给个例子好吗?我在MATLAB版写了点关于试验数据的3D可视化的帖子,你可以先看看。
发表于 2005-7-23 12:02:23 | 显示全部楼层 来自 上海交通大学

Re:图像中的曲线数据提取及其平滑处理

NNNNNNN
^_^
发表于 2007-1-30 17:04:41 | 显示全部楼层 来自 北京
太好了,正用的上,正有类似的问题困扰着我,我试试看。
发表于 2011-6-19 02:46:49 | 显示全部楼层 来自 上海
好贴,原来读取图片数据是这样实现的啊。
回复 不支持

使用道具 举报

发表于 2011-6-23 13:11:32 | 显示全部楼层 来自 日本
10# alexqxp
读出图像上的坐标后,用线性变换,怎么去把握变换出来的是原始数据?这个图像也是频谱的结果啊
回复 不支持

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|小黑屋|联系我们|仿真互动网 ( 京ICP备15048925号-7 )

GMT+8, 2024-3-29 04:49 , Processed in 0.087763 second(s), 18 queries , Gzip On, MemCache On.

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表