matlab 光源坐标,点光源小孔成像matlab

模拟的r射线,不用考虑散射了。

function []=spheresource()

h=input('source to collimator:');

H=input('source to detector:');

r=input('hole diameter:');

d1=input('pinhole1 parameter(x y axis):');

d2=input('pinhole2 parameter:');

d3=input('pinhole3 parameter:');

d4=input('pinhole4 parameter:');

%h is distanse source to collimator,H is source to detector

%dx is center of the hole to y axis

%dy is center of the hole to x axis

%spheresource(5,20,3,3,4)

%spheresource(5,20,-3,3,4)

%spheresource(5,20,2.5 ,2.5,-2.5 ,2.5,2.5,-2.5,-2.5,-2.5,4)

N=80;%256可调分辨率

I64=zeros(N,N); %预定义平面164的灰度值为O

[m,n]=meshgrid(linspace(-N/2,N/2-1,N));%确定坐标系及坐标原点的位置

% h=1;H=2;

% dx=5;

% r=5;

r1=r*H/h; %圆半径大小控制变量(单位pixel)

a1=d1(1)*H/h; %圆心位置控制变量

b1=d1(2)*H/h; %圆心位置控制变量

D1=((m+a1).^2+(n+b1).^2).^(1/2); %圆函数关系式

i=find(D1<=r1); %单下标寻址实现语句,find()函数足条件D

I64(i)=0.2; %按要求为像素点赋值

r2=r*H/h; %圆半径大小控制变量(单位pixel)

a2=d2(1)*H/h; %圆心位置控制变量

b2=d2(2)*H/h; %圆心位置控制变量

D2=((m+a2).^2+(n+b2).^2).^(1/2); %圆函数关系式

i=find(D2<=r2);%单下标寻址实现语句,find()函数足条件D

I64(i)=0.2+I64(i); %按要求为像素点赋值

r3=r*H/h; %圆半径大小控制变量(单位pixel)

a3=d3(1)*H/h; %圆心位置控制变量

b3=d3(2)*H/h; %圆心位置控制变量

D3=((m+a3).^2+(n+b3).^2).^(1/2); %圆函数关系式

i=find(D3<=r3);%单下标寻址实现语句,find()函数足条件D

I64(i)=0.2+I64(i); %按要求为像素点赋值

r4=r*H/h; %圆半径大小控制变量(单位pixel)

a4=d4(1)*H/h; %圆心位置控制变量

b4=d4(2)*H/h; %圆心位置控制变量

D4=((m+a4).^2+(n+b4).^2).^(1/2); %圆函数关系式

i=find(D4<=r4);%单下标寻址实现语句,find()函数足条件D

I64(i)=0.2+I64(i); %按要求为像素点赋值

J=mat2gray(I64,[0,1]);%matrix to gray scale image

imshow(J);

len=length(find(I64(i)==0.8))%find the gray scale equals to 0.8(4order overlap)

overlap=len/(N*N)%percentage

>> spheresource()

source to collimator:3

source to detector:10

hole diameter:1

pinhole1 parameter(x y axis):[2 2]

pinhole2 parameter:[-2 2]

pinhole3 parameter:[2 -2]

pinhole4 parameter:[-2 -2]

len =

0

overlap =

0

0_12993203089QSh.gif

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值