matlab提取交点坐标,请问怎样提取图像交点的坐标做后面的运算

我做了一个两个图像的交点

然后他的交点坐标显示在command window里

我需要用横坐标做后面的计算,我该咋把他提取出来呢?

代码如下

T=10e-6; %脉冲宽度10us

B=30e6; %带宽30MHz

K=B/T; %调频斜率

f0=4e6;%起始频率4MHz

Fs=2*B;%采样频率

Ts=1/Fs; %采样间隔

N=T/Ts; %采样点

t=linspace(-T/2,T/2,N);%(起始值,终止值,元素个数)

St=exp(j*2*pi*f0*t+j*pi*K*t.^2); %线性调频信号

%%%%%加白噪声%%%%%

%设信噪比为20dB,则噪声功率为0.01

St=awgn(St,20);%白噪声

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

%subplot(211)

%plot(t*1e6,real(St));

%xlabel('时间/us');

%title('线性调频信号时域波形');

%grid on;

%axis tight;

subplot(111)

freq=linspace(-Fs/2,Fs/2,N);

y=fftshift(abs(fft(St)));

%%%%设置门限值%%

a=20;

n=length(freq);%用于计算交点位置

A=ones(n,1)*a;

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

freq1=freq*1e-6;

plot(freq1,y,freq1,A,'k');

xlabel('频率/MHz');

title('线性调频信号的幅度谱');

grid on;

axis tight;

%%%%求出交点的位置

delta_y=y'-A;

j=1;

for i=1:n-1

if delta_y(i)*delta_y(i+1)<0

position(j)=i+1;

j=j+1;

end

end

hold on;

plot(freq1(position),A(position),'ro');

for j=1:length(position) %可输出交点

fprintf('交点%d:%f,%f\n',j,freq1(position(j)),A(position(j)))

end

file:///D:\My Documents\Tencent Files\278205723\Image\C2C\3TEWM)I`CL@~PG3TE4F`X86.jpg

2016-5-14 10:46 上传

442a53943febe9465fc072b4fbe10813.gif

b2a5a3e0dcc7d508e00275fe42fce1b5.gif

bcea1dd92cf5e86a5114fe3f903361be.png


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部