波束形成

波束形成1.问题描述:数字波束形成器是全数字化超声成像的基础,也是高性能彩超的保证。数字波束形成包括发射和接收两个部分。数字是接收波束形成的关键技术,它通过使用顺序储存器FIFO或随机存取存储器双端口RAM替代模拟式波束形成器中的LC延时线来实现波束聚焦,即以数字延时补偿替代模拟延时的补偿。数字延时不仅能实现精确延时补偿,实现所谓的逐点跟踪式动态聚焦,还能方便实现动态孔径、动态变迹控制,克服模拟式延时补偿存在的诸多固有缺点,通道数增加不受限制,是图像品质得以全面提高。2.部分程序:close..

大家好,又见面了,我是你们的朋友全栈君。

1.问题描述:

 数字波束形成器是全数字化超声成像的基础,也是高性能彩超的保证。

数字波束形成包括发射和接收两个部分。数字是接收波束形成的关键技术,它通过使用顺序储存器FIFO或随机存取存储器双端口RAM替代模拟式波束形成器中的LC延时线来实现波束聚焦,即以数字延时补偿替代模拟延时的补偿。数字延时不仅能实现精确延时补偿,实现所谓的逐点跟踪式动态聚焦,还能方便实现动态孔径、动态变迹控制,克服模拟式延时补偿存在的诸多固有缺点,通道数增加不受限制,是图像品质得以全面提高。

2.部分程序:

 

close all
clear all

%%波束形成
f=[4000,5000,6000];%信号频率,单位Hz
w=[1,1,1,1,1;%每一行表示一种加权
    1,2,4,2,1;
    4,2,1,2,4];
fs=4*f;%采样频率取信号频率的4倍
T=0.1;%信号长度,单位s
N=T*fs;%采样点数
c=1500;%声速,m/s
d=0.15;%阵元间距,单位m
jay=sqrt(-1);%复单位
theta=-90:1:90;%观测角度范围,单位度
tao=d*sin(pi*theta/180)/c;%相邻阵元时延
xx=zeros(3,2400);%准备产生三种频率下的参考信号

for i=1:3
    xx(i,1:N(i))=exp(jay*(2*pi*f(i)/fs(i)*(0:N(i)-1)));%三种频率下的参考信号
end

for j=1:3%三种频率循环
    for i=1:length(tao)%不同角度循环
        for k=(j-1)*5+1:(j-1)*5+5%第一种频率下的五个阵元的信号
            x(k,:)=xx(j,:)*exp(-jay*2*pi*f(j)*(k-1)*tao(i));
        end
        r=x((j-1)*5+1:(j-1)*5+5,:)*x((j-1)*5+1:(j-1)*5+5,:)’/N(j);%求某一角度下的波束图,用公式B=w*(∑x*x’)*w’/N.
        B((j-1)*3+1,i)=w(1,:)*r*w(1,:)’;%第j个频率下的第一种加权的波束图输出
        B((j-1)*3+2,i)=w(2,:)*r*w(2,:)’;%第j个频率下的第二种加权的波束图输出
        B((j-1)*3+3,i)=w(3,:)*r*w(3,:)’;%第j个频率下的第三种加权的波束图输出
    end
end
%c产生的举证B表示B=[B11;B12;B13;B21;B22;B23;B31;B32;B33];第一个下角标表示第几个频率,第二个下角标表示第几种加权而得到的波束
for k=1:9%分别对9个波束图进行归一化和取对数
    B(k,:)=real(B(k,:))/max(real(B(k,:)));%归一化
    B(k,:)=20*log10(B(k,:));%取对数
end
figure(1);%频率f=4000,加权不同
subplot(3,1,1);
plot(theta,B(1,:));axis([-90 90 -60 0]);title(‘频率f=4000,加权[1,1,1,1,1]’);xlabel(‘角度/°’);ylabel(‘波束图/dB’);
subplot(3,1,2);
plot(theta,B(2,:));axis([-90 90 -60 0]);title(‘频率f=4000,加权[1,2,4,2,1]’);xlabel(‘角度/°’);ylabel(‘波束图/dB’);
subplot(3,1,3);
plot(theta,B(3,:));axis([-90 90 -60 0]);title(‘频率f=4000,加权[4,2,1,2,4]’);xlabel(‘角度/°’);ylabel(‘波束图/dB’);

figure(2);%频率f=5000,加权不同
subplot(3,1,1);
plot(theta,B(4,:));axis([-90 90 -60 0]);title(‘频率f=5000,加权[1,1,1,1,1]’);xlabel(‘角度/°’);ylabel(‘波束图/dB’);
subplot(3,1,2);
plot(theta,B(5,:));axis([-90 90 -60 0]);title(‘频率f=5000,加权[1,2,4,2,1]’);xlabel(‘角度/°’);ylabel(‘波束图/dB’);
subplot(3,1,3);
plot(theta,B(6,:));axis([-90 90 -60 0]);title(‘频率f=5000,加权[4,2,1,2,4]’);xlabel(‘角度/°’);ylabel(‘波束图/dB’);

figure(3);%频率f=6000,加权不同
subplot(3,1,1);
plot(theta,B(7,:));axis([-90 90 -60 0]);title(‘频率f=6000,加权[1,1,1,1,1]’);xlabel(‘角度/°’);ylabel(‘波束图/dB’);
subplot(3,1,2);
plot(theta,B(8,:));axis([-90 90 -60 0]);title(‘频率f=6000,加权[1,2,4,2,1]’);xlabel(‘角度/°’);ylabel(‘波束图/dB’);
subplot(3,1,3);
plot(theta,B(9,:));axis([-90 90 -60 0]);title(‘频率f=6000,加权[4,2,1,2,4]’);xlabel(‘角度/°’);ylabel(‘波束图/dB’);

figure(4);%加权[1,1,1,1,1],频率不同
subplot(3,1,1);
plot(theta,B(1,:));axis([-90 90 -60 0]);title(‘频率f=4000,加权[1,1,1,1,1]’);xlabel(‘角度/°’);ylabel(‘波束图/dB’);
subplot(3,1,2);
plot(theta,B(4,:));axis([-90 90 -60 0]);title(‘频率f=5000,加权[1,1,1,1,1]’);xlabel(‘角度/°’);ylabel(‘波束图/dB’);
subplot(3,1,3);
plot(theta,B(7,:));axis([-90 90 -60 0]);title(‘频率f=6000,加权[1,1,1,1,1]’);xlabel(‘角度/°’);ylabel(‘波束图/dB’);

figure(5);%加权[1,2,4,2,1],频率不同
subplot(3,1,1);
plot(theta,B(2,:));axis([-90 90 -60 0]);title(‘频率f=4000,加权[1,2,4,2,1]’);xlabel(‘角度/°’);ylabel(‘波束图/dB’);
subplot(3,1,2);
plot(theta,B(5,:));axis([-90 90 -60 0]);title(‘频率f=5000,加权[1,2,4,2,1]’);xlabel(‘角度/°’);ylabel(‘波束图/dB’);
subplot(3,1,3);
plot(theta,B(8,:));axis([-90 90 -60 0]);title(‘频率f=6000,加权[1,2,4,2,1]’);xlabel(‘角度/°’);ylabel(‘波束图/dB’);

figure(6);%加权[4,2,1,2,4],频率不同
subplot(3,1,1);
plot(theta,B(3,:));axis([-90 90 -60 0]);title(‘频率f=4000,加权[4,2,1,2,4]’);xlabel(‘角度/°’);ylabel(‘波束图/dB’);
subplot(3,1,2);
plot(theta,B(6,:));axis([-90 90 -60 0]);title(‘频率f=5000,加权[4,2,1,2,4]’);xlabel(‘角度/°’);ylabel(‘波束图/dB’);
subplot(3,1,3);
plot(theta,B(9,:));axis([-90 90 -60 0]);title(‘频率f=6000,加权[4,2,1,2,4]’);xlabel(‘角度/°’);ylabel(‘波束图/dB’);

%计算主瓣宽度D和旁瓣级P
for k=1:9
    [i,j]=find(abs(B(k,:)+3)<0.5);%误差限设在0.5dB。
    D(k)=(j(length(j))-j(1))*1;%每一个点之间是一度
end    %根据计算D的结果可以发现,同一种频率下三种加权分辨率最高的是第三种,其次是第一种。同一加权下,频率越高,分辨率越高
disp(‘9个波束图的参数依次为,其中分别表示:’);
disp(‘f=4000,w=[1,1,1,1,1];f=4000,w=[1,2,4,2,1];f=4000,w=[4,2,1,2,4]’);
disp(‘f=5000,w=[1,1,1,1,1];f=5000,w=[1,2,4,2,1];f=5000,w=[4,2,1,2,4]’);
disp(‘f=6000,w=[1,1,1,1,1];f=6000,w=[1,2,4,2,1];f=6000,w=[4,2,1,2,4]’);
disp(‘波束宽度为:’);
ss=sprintf(‘%d ‘,D);
disp(ss);
NN=length(theta);%每一个波束图离散的点数
for k=1:9
    for i=(NN-1)/2+1:NN-1%从主波束开始往后找到第一个次级大的位置
        if B(k,i)>=B(k,i+1)&&B(k,i)>=B(k,i-1)
            CC(k)=B(k,i);%记录第一个次级大的分贝数
        end
    end
end
CC(2)=B(2,1);CC(5)=B(5,1);%由于在[-90,90]度的范围内,第二种和第五种情况下没有找到次级大,故用它在-90°的地方分贝数近似。
disp(‘旁絆级为:’);
s=sprintf(‘%f ‘,CC);
disp(s);

3.仿真结论:

波束形成

D00003

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/147650.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • Linux中断 – 综述

    Linux中断 – 综述

  • pycharm如何编译程序_xc8编译器

    pycharm如何编译程序_xc8编译器现在轮到PyCharmPyCharm安装教程PyCharm是一款功能强大的Python编辑器,具有跨平台性,鉴于目前最新版PyCharm使用教程较少,为了节约时间,来介绍一下PyCharm在Windows下是如何安装的。第一步:进入PyCharm官网这是PyCharm的下载地址:http://www.jetbrains.com/pycharm/download/#section=windows进入该网站后,我们会看到如下界面:professional表示专业版,co

  • flutter 配置文件_怎么配置mysql的环境变量

    flutter 配置文件_怎么配置mysql的环境变量废话不多说,这篇文章仅仅作为自己的备忘。在安装flutter的时候,由于要配置环境变量,在windows上面倒还好,什么都是可视化的操作,自然不会有多大的问题,然而在mac上面,由于对mac不是很熟悉,就环境变量的配置都纠结了好久,每次配好之后重启一下,环境变量就不知所踪,百度了好久,最后才找到解决方案,当然,大神可以略过,这篇文章也只针对mac菜鸟。touch~/.bash_profile…

    2022年10月30日
  • python股票数据分析_用Python抓取新浪的股票数据「建议收藏」

    最近做数据分析,先是找到了Tushare这个免费开源的第三方财经包,但后来用了几天之后发现,它的日交易历史数据有时候有不准确的情况,查看源代码发现,这个包的数据源是凤凰财经,而对比凤凰网站其站点的数据本身就是有出入的,所以到也不是Tushare的问题。于是百度了一圈,发现很多网友都是获取新浪的股票数据,包括其历史数据和实时数据。于是乎试了一下,发现速度还挺快,没有具体去测时间但从感官上要比Tush…

  • 手把手教你领取永久免费服务器

    手把手教你领取永久免费服务器01免费领取首先说下前提条件: 一张外币信用卡 务必用手机流量,不要用wifi 可以手机操作,当然你也可以手机热点给电脑,然后电脑操作,但不管怎么样,手机流量申请,成功率更高。小编操作演示,用手机热点给电脑。然后打开注册账号网页点击立即行动,进入注册账号页面。根据提示填写就行注意名字和姓氏和你的信用卡填写一致,地区就选中国,没问题。等注册信息完事之后,邮箱会收到验证邮件。邮箱验证完就会自动进入填写密码,选的服务器所在区域的页…

  • 解决VirtualBox错误:“FATAL:No bootable medium found!”

    解决VirtualBox错误:“FATAL:No bootable medium found!”

    2021年10月28日

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号