2023-12-19 分类:未分类
阅读() 评论(0)
本软件下载地址未录入,如想要软件请评论,我们会补上!
说明
该程序主要是将MATLAB的4个投影变换函数,改写成VC++语言实现。
其中包括一维、二维离散傅里叶变换及其逆变换,一维最近、线性、立方、三次样条插值,二维最近插值。
二维图像的重建,提供了三种方法,直接傅里叶反变换法,滤波反投影,卷积反投影。
程序在VS2010下运行无误,有问题联系 [email protected]
--- 程序主要功能:
打开MATLAB保存的txt数据文件,保存成256位的bmP图像文件,显示图像。
用VC++实现MATLAB的phantom函数,产生头骨幻影数据,与上面MATLAB保存的比较,结果是一样的,将数据用于下面的变换。
用VC++实现MATLAB的4个图像变换,平行投影、反投影,扇形等距投影、反投影,radon,iRadon,fanbeam,iFanbeam。
--- 文件说明
BMP.h
BMP.cpp 打开bmp格式的文件,目前只是借用了其定义的结构体
ImageProcess.h
ImageProcess.cpp 仅仅用来显示图像
fft.h
fft.cpp 一维离散傅里叶变换、逆变换
radon.h
radon.cpp&nbs>
p; 相邻计算法实现radon变换,即平行投影
iradon.h
iradon.cpp
滤波反投影,6种滤波器;卷积反投影,2种卷积核。
平行直接反投影,扇形反投影;平行查询正弦图,扇形查询正弦图。
fan2para.h
fan2para.cpp 扇形投影后的数据,转换为平行投影,然后再反投影
para2fan.h
para2fan.cpp 平行投影后的数据,转换为扇形投影,作为原始图像的扇形投影
inter.h
inter.cpp 一维插值,实现了最近、线性、立方、三次样条;二维插值,只实现了最近插值
fftnmy.h
fftnmy.cpp 二维离散傅里叶变换、逆变换
dfr.cpp 直接傅里叶变换法重建图形
myhead.h 公共头文件
Matlab2C_Radon.h
Matlab2C_Radon.cpp APP类文件
Matlab2C_RadonDlg.h
Matlab2C_RadonDlg.cpp 对话框类文件
--- 程序功能详细说明
OnBnClickedButtonShowimage 显示图像
MATLAB中执行如下命令:
P = phantom(128);
save(`128-phantom.txt`,`P`,`-ascii`,`-double`);
这样就将128*128的头骨幻影图像数据,保存成了txt的格式。
这个文件格式是这样的,每个数据开头两个空格(若是负数,则为一个负号和一个空格),然后数据用16位小数表示,加上科学计数的5位,则为 2(负号和空格,或者两个空格)+2(数字位+小数点)+16(小数点后的个数)+5(e +/- xxx)=25个字节,
每行结尾是换行符二个字节,故文件大小为,128*128*25 + 128*2=409,856
-5.5511151231257827e-017 数据格式,最大为9*10^999
先读取matlab保存的txt格式的文件;
将读取到的数据数据归一化处理,变成0~255之间的数据,保存成bmp格式的256位图像;
将归一化后的数据直接显示成图像。
读取txt格式的数据,程序中使用了两种办法。
一是用字符串的方式,转换为double类型的数据;二是自己手动计算,计算出double类型的数据。
经过测试,读取1280*1280的数据,第一种是3291毫秒,第二种是2309毫秒,但是第二种方法确实引入了误差,经过比较与原来的文件有差距。
OnBnClickedButtonOpenima 产生仿真数据,头骨幻影图像
实现MATLAB中的phantom函数,默认产生的头骨幻影数据大小为256*256
OnBnClickedButtonRadon 平行投影
实现radon变换,相邻计算法得出平行投影结果,与MATLAB的radon函数运行结果一样
OnBnClickedButtoniradon 平行反投影
1 直接傅里叶变换法
2 irandon变换,滤波反投影(RL,SL,Cos,Hamming,Hann,ButterWorth等6种),卷积反投影(RL,SL)
3 修改2,先产生平行投影时的正弦图,然后反投影时直接查询正弦图
OnBnClickedButtonFanbeam 扇形投影
先将原始图像radon变换得出平行投影数据,然后再将平行投影转换为扇形投影,转换后的数据,作为原始图像扇形投影的数据
OnBnClickedButtonifanbeam 扇形反投影
1 扇形投影数据先转化为平行投影数据,将平行投影数据,做iradon变换
2 扇形数据直接iradon变换,反投影时用扇形直接计算
3 修改2,先产生扇形投影时的正弦图,然后反投影时直接查询正弦图
>
标题:《Matlab二维图像投影和图像重建》
链接:
https://www.lvruan.com/app/204183
本站资源仅供个人学习交流,请于下载后24小时内删除,不允许用于商业用途,否则法律问题自行承担。
LvRuan.com=绿软=绿盟=绿色软件联盟情怀第一 18年 老牌 下载站 绿色 安全 无广告 无捆绑