CT图像三维重建附源码Word格式.doc

上传人:wj 文档编号:1456530 上传时间:2023-04-30 格式:DOC 页数:8 大小:40.50KB
下载 相关 举报
CT图像三维重建附源码Word格式.doc_第1页
第1页 / 共8页
CT图像三维重建附源码Word格式.doc_第2页
第2页 / 共8页
CT图像三维重建附源码Word格式.doc_第3页
第3页 / 共8页
CT图像三维重建附源码Word格式.doc_第4页
第4页 / 共8页
CT图像三维重建附源码Word格式.doc_第5页
第5页 / 共8页
CT图像三维重建附源码Word格式.doc_第6页
第6页 / 共8页
CT图像三维重建附源码Word格式.doc_第7页
第7页 / 共8页
CT图像三维重建附源码Word格式.doc_第8页
第8页 / 共8页
亲,该文档总共8页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

CT图像三维重建附源码Word格式.doc

《CT图像三维重建附源码Word格式.doc》由会员分享,可在线阅读,更多相关《CT图像三维重建附源码Word格式.doc(8页珍藏版)》请在冰点文库上搜索。

CT图像三维重建附源码Word格式.doc

P=squeeze(ph(:

:

str2num(cell2mat(numInput))));

%将用户的输入信息转换成数字,并从ph中得到相应的片信息P

imshow(P)%展示图片P

D=250;

%将D赋值为250,是从扇束顶点到旋转中心的像素距离。

dsensor1=2;

%正实数指定扇束传感器的间距2

F1=fanbeam(P,D,'

FanSensorSpacing'

dsensor1);

%通过P,D等计算扇束的数据值

dsensor2=1;

%正实数指定扇束传感器的间距1

F2=fanbeam(P,D,'

dsensor2);

dsensor3=0.25%正实数指定扇束传感器的间距0.25

[F3,sensor_pos3,fan_rot_angles3]=fanbeam(P,D,...

dsensor3);

%通过P,D等计算扇束的数据值,并得到扇束传感器的位置sensor_pos3和旋转角度fan_rot_angles3

figure,%创建窗口

imagesc(fan_rot_angles3,sensor_pos3,F3)%根据计算出的位置和角度展示F3的图片

colormap(hot);

%设置色图为hot

colorbar;

%显示色栏

xlabel('

FanRotationAngle(degrees)'

)%定义x坐标轴

ylabel('

FanSensorPosition(degrees)'

)%定义y坐标轴

output_size=max(size(P));

%得到P维数的最大值,并赋值给output_size

Ifan1=ifanbeam(F1,D,...

'

dsensor1,'

OutputSize'

output_size);

%根据扇束投影数据F1及D等数据重建图像

figure,imshow(Ifan1)%创建窗口,并展示图片Ifan1

title('

图一'

);

disp('

图一和原图的性噪比为:

result=psnr1(Ifan1,P);

Ifan2=ifanbeam(F2,D,...

dsensor2,'

%根据扇束投影数据F2及D等数据重建图像

figure,imshow(Ifan2)%创建窗口,并展示图片Ifan2

图二和原图的性噪比为:

result=psnr1(Ifan2,P);

图二'

Ifan3=ifanbeam(F3,D,...

dsensor3,'

%根据扇束投影数据F3及D等数据重建图像

figure,imshow(Ifan3)%创建窗口,并展示图片Ifan3

图三'

图三和原图的性噪比为:

result=psnr1(Ifan3,P);

function[p,ellipse]=phantom3d(varargin)

%PHANTOM3DThree-dimensionalanalogueofMATLABShepp-Loganphantom

%P=PHANTOM3D(DEF,N)generatesa3Dheadphantomthatcan

%beusedtotest3-Dreconstructionalgorithms.

%

%DEFisastringthatspecifiesthetypeofheadphantomtogenerate.

%Validvaluesare:

%

%'

Shepp-Logan'

Atestimageusedwidelybyresearchersin

%tomography

ModifiedShepp-Logan'

(default)AvariantoftheShepp-Loganphantom

%inwhichthecontrastisimprovedforbetter

%visualperception.

%NisascalarthatspecifiesthegridsizeofP.

%Ifyouomittheargument,Ndefaultsto64.

%

%P=PHANTOM3D(E,N)generatesauser-definedphantom,whereeachrow

%ofthematrixEspecifiesanellipsoidintheimage.Ehastencolumns,

%witheachcolumncontainingadifferentparameterfortheellipsoids:

%

%Column1:

Atheadditiveintensityvalueoftheellipsoid

%Column2:

athelengthofthexsemi-axisoftheellipsoid

%Column3:

bthelengthoftheysemi-axisoftheellipsoid

%Column4:

cthelengthofthezsemi-axisoftheellipsoid

%Column5:

x0thex-coordinateofthecenteroftheellipsoid

%Column6:

y0they-coordinateofthecenteroftheellipsoid

%Column7:

z0thez-coordinateofthecenteroftheellipsoid

%Column8:

phiphiEulerangle(indegrees)(rotationaboutz-axis)

%Column9:

thetathetaEulerangle(indegrees)(rotationaboutx-axis)

%Column10:

psipsiEulerangle(indegrees)(rotationaboutz-axis)

%Forpurposesofgeneratingthephantom,thedomainsforthex-,y-,and

%z-axesspan[-1,1].Columns2through7mustbespecifiedinterms

%ofthisrange.

%[P,E]=PHANTOM3D(...)returnsthematrixEusedtogeneratethephantom.

%ClassSupport

%-------------

%Allinputsmustbeofclassdouble.Alloutputsareofclassdouble.

%Remarks

%-------

%Foranygivenvoxelintheoutputimage,thevoxel'

svalueisequaltothe

%sumoftheadditiveintensityvaluesofallellipsoidsthatthevoxelisa

%partof.Ifavoxelisnotpartofanyellipsoid,itsvalueis0.

%TheadditiveintensityvalueAforanellipsoidcanbepositiveornegative;

%ifitisnegative,theellipsoidwillbedarkerthanthesurroundingpixels.

%Notethat,dependingonthevaluesofA,somevoxelsmayhavevaluesoutside

%therange[0,1].

%

%Example

%ph=phantom3d(128);

%figure,imshow(squeeze(ph(64,:

)))

%Copyright2005MatthiasChristianSchabel(matthias@stanfordalumni.org)

%UniversityofUtahDepartmentofRadiology

%UtahCenterforAdvancedImagingResearch

%729ArapeenDrive

%SaltLakeCity,UT84108-1218

%ThiscodeisreleasedundertheGnuPublicLicense(GPL).Formoreinformation,

%see:

http:

//www.gnu.org/copyleft/gpl.html

%Portionsofthiscodearebasedonphantom.m,copyrightedbytheMathworks

[ellipse,n]=parse_inputs(varargin{:

});

p=zeros([nnn]);

rng=((0:

n-1)-(n-1)/2)/((n-1)/2);

[x,y,z]=meshgrid(rng,rng,rng);

coord=[flatten(x);

flatten(y);

flatten(z)];

p=flatten(p);

fork=1:

size(ellipse,1)

A=ellipse(k,1);

%Amplitudechangeforthisellipsoid

asq=ellipse(k,2)^2;

%a^2

bsq=ellipse(k,3)^2;

%b^2

csq=ellipse(k,4)^2;

%c^2

x0=ellipse(k,5);

%xoffset

y0=ellipse(k,6);

%yoffset

z0=ellipse(k,7);

%zoffset

phi=ellipse(k,8)*pi/180;

%firstEulerangleinradians

theta=ellipse(k,9)*pi/180;

%secondEulerangleinradians

psi=ellipse(k,10)*pi/180;

%thirdEulerangleinradians

cphi=cos(phi);

sphi=sin(phi);

ctheta=cos(theta);

stheta=sin(theta);

cpsi=cos(psi);

spsi=sin(psi);

%Eulerrotationmatrix

alpha=[cpsi*cphi-ctheta*sphi*spsicpsi*sphi+ctheta*cphi*spsispsi*stheta;

-spsi*cphi-ctheta*sphi*cpsi-spsi*sphi+ctheta*cphi*cpsicpsi*stheta;

stheta*sphi-stheta*cphictheta];

%rotatedellipsoidcoordinates

coordp=alpha*coord;

idx=find((coordp(1,:

)-x0).^2./asq+(coordp(2,:

)-y0).^2./bsq+(coordp(3,:

)-z0).^2./csq<

=1);

p(idx)=p(idx)+A;

end

p=reshape(p,[nnn]);

return;

functionout=flatten(in)

out=reshape(in,[1prod(size(in))]);

function[e,n]=parse_inputs(varargin)

%eisthem-by-10arraywhichdefinesellipsoids

%nisthesizeofthephantombrainimage

n=128;

%Thedefaultsize

e=[];

defaults={'

shepp-logan'

'

modifiedshepp-logan'

yu-ye-wang'

fori=1:

nargin

ifischar(varargin{i})%Lookforadefaultphantom

def=lower(varargin{i});

idx=strmatch(def,defaults);

ifisempty(idx)

eid=sprintf('

Images:

%s:

unknownPhantom'

mfilename);

msg='

Unknowndefaultphantomselected.'

error(eid,'

%s'

msg);

end

switchdefaults{idx}

case'

e=shepp_logan;

e=modified_shepp_logan;

e=yu_ye_wang;

elseifnumel(varargin{i})==1

n=varargin{i};

%ascalaristheimagesize

elseifndims(varargin{i})==2&

&

size(varargin{i},2)==10

e=varargin{i};

%userspecifiedphantom

else

eid=sprintf('

invalidInputArgs'

msg='

Invalidinputarguments.'

error(eid,'

end

%ellipseisnotyetdefined

ifisempty(e)

e=modified_shepp_logan;

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

%Defaultheadphantoms:

%

functione=shepp_logan

e=modified_shepp_logan;

e(:

1)=[1-.98-.02-.02.01.01.01.01.01.01];

functione=modified_shepp_logan

%ThisheadphantomisthesameastheShepp-Loganexcept

%theintensitiesarechangedtoyieldhighercontrastin

%theimage.TakenfromToft,199-200.

%

%Aabcx0y0z0phithetapsi

%-----------------------------------------------------------------

e=[1.6900.920.810000000

-.8.6624.874.7800-.01840000

-.2.1100.310.220.2200-18010

-.2.1600.410.280-.220018010

.1.2100.250.4100.35-.15000

.1.0460.046.0500.1.25000

.1.0460.046.0500-.1.25000

.1.0460.023.050-.08-.6050000

.1.0230.023.0200-.6060000

.1.0230.046.020

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > PPT模板 > 商务科技

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2