首页 > 系统相关 >使用Field_II_ver_3_24_windows_gcc工具箱实现超声波数据成像matlab仿真

使用Field_II_ver_3_24_windows_gcc工具箱实现超声波数据成像matlab仿真

时间:2022-11-12 10:07:51浏览次数:71  
标签:24 gcc ver Jensen floor pp II Field end


目录

​​一、理论基础​​

​​二、核心程序​​

​​三、测试结果​​


​​FPGA教程目录​​

​​MATLAB教程目录​​

一、理论基础

​Field II Ultrasound Simulation Program​

关于Field_II_ver_3_24_windows_gcc工具箱,从上述网址,我们可以知道:

       今年,Field II庆祝其为超声波社区服务25年。最初的C版本是在1991-92年我休假期间在杜克大学开发的,这是1995-1996年开发的通用Field II的基础。从那时起,该程序就可以在网上免费下载。Field IIpro并行版本现已发布,可在Matlab 2021a上使用,并制作了新的Python版本,即将发布。目前,它存在于Matlab和Octave的版本中,也存在于可用于构建独立可执行文件的C库版本中。有关该程序的更多信息,请访问左侧菜单中的Field IIpro。在这里,您还可以找到一篇关于Field IIpro性能的论文。

        用于windows的Field II 3.30版已发布用于Matlab 2021a。您可以在左边的菜单中找到代码:Download/For Matlab 2021。

       你现在可以在LinkedIn上关注Field II并发表评论和讨论。您可以自由加入名为:Field II超声模拟程序的小组,在那里将发布有关FieldⅡ新版本的新闻。

        Field II是一个使用线性声学模拟超声换能器场和超声成像的程序。该程序使用Tupholme Stepanishen方法计算脉冲超声场。该程序能够计算大量不同换能器的脉冲和连续波情况下的发射和脉冲回波场。此外,可以模拟任何类型的线性成像以及人体组织的真实图像。该程序在Matlab下运行在多种不同的操作系统(Windows、Linux、Mac OS X)上,并且这些程序目前在某些限制下可以自由使用(参见版权)。

该程序的最新版本是2021 4月5日的3.30版本。请注意,该代码将在64位版本的Linux、Mac和Windows下与Matlab 2019-2021配合使用。

References

[1] G.E. Tupholme: Generation of acoustic pulses by baffled plane pistons, Mathematika 16, pp. 209-224, 1969.

[2] P.R. Stepanishen: The time-dependent force and radiation impedance on a piston in a rigid infinite planar baffle, J.Acoust.Soc.Am. 49 (3), pp. 841-849, 1971A.

[3] P.R. Stepanishen: Transient radiation from pistons in a infinite planar baffle, J.Acoust.Soc.Am. 49, pp. 1627-1638, 1971B.

[4] P.R. Stepanishen: Pulsed transmit/receive response of ultrasonic piezoelectric transducers, J.Acoust.Soc.Am. 69, pp. 1815-1827, 1981.

[5] J.A. Jensen: A Model for the Propagation and Scattering of Ultrasound in Tissue, J.Acoust.Soc.Am. 89, pp. 182-191, 1991.

[6] J.A. Jensen and N. B. Svendsen: Calculation of pressure fields from arbitrarily shaped, apodized, and excited ultrasound transducers, IEEE Trans. Ultrason., Ferroelec., Freq. Contr., 39, pp. 262-267, 1992.

[7] J.A. Jensen: Linear description of ultrasound imaging systems, Notes for the International Summer School on Advanced Ultrasound Imaging, Technical University of Denmark July 5 to July 9, 1999, Technical University of Denmark, June, 1999.

[8] J.A. Jensen: Field: A Program for Simulating Ultrasound Systems, Paper presented at the 10th Nordic-Baltic Conference on Biomedical Imaging Published in Medical & Biological Engineering & Computing, pp. 351-353, Volume 34, Supplement 1, Part 1, 1996.

[9] J. A. Jensen, Darshan Gandhi, and William D. O'Brien: Ultrasound fields in an attenuating medium, Proceedings of the IEEE 1993 Ultrasonics Symposium, pp. 943-946, Vol. 2, 1993.

[10] J. A. Jensen: Ultrasound fields from triangular apertures, Journal of the Acoustical Society of America, Vol. 100(4), pp. 2049-2056, October, 1996.

[11] J. A. Jensen: Simulating arbitrary-geometry ultrasound transducers using triangles, Proceedings of IEEE International Ultrasonics Symposium, Vol. 2, pp. 885-888, 1996.

[12] J. A. Jensen and Peter Munk: Computer phantoms for simulating ultrasound B-mode and cfm images, 23rd Acoustical Imaging Symposium, Boston, Massachusetts, USA, April 13-16, 1997.

[13] J. A. Jensen: A new approach to calculating spatial impulse responses, Proceedings of IEEE Ultrasonics Symposium Proceedings, pp. 1755-1759, 1997

[14] J. A. Jensen: A new Calculation Procedure for Spatial Impulse Responses in Ultrasound, Journal of the Acoustical Society of America, Vol. 105, pp. 3266-3274, 1999.

[15] J. A. Jensen: Ultrasound Imaging and its modeling, in "Imaging of Complex Media with Acoustic and Seismic Waves", Editors: Fink, M.; Kuperman, W.A.; Montagner, J-P; Tourin, A., Topics in Applied Physics, Springer Verlag, pp. 135-165, 2002.

[16] J. A. Jensen: Speed-accuracy trade-offs in computing spatial impulse responses for simulation medical ultrasound imaging, Journal of Computational Acoustics, Vol.9, no..3, pp.731-744, 2001

[17] M. Schlaikjer, S. Torp-Pedersen and J. A. Jensen: Simulation of RF data with tissue motion for optimizing stationary echo canceling filters, Ultrasonics, Vol. 41 (6) , pp. 415-419. 2003.

[18] J. A. Jensen and S. Nikolov: Fast simulation of ultrasound images, Proceedings the IEEE Ultrasonics Symposium, vol. 2, pp. 1721-1724, 2000.

二、核心程序

............................................................
%搜索缺陷
[flag3,X,Y,env_gray0] = func_holesearch(env_gray,x*1000,depth*1000);


figure;
subplot(121);
image(x*1000, depth*1000, 255*flag3);
xlabel('Lateral distance [mm]')
ylabel('Depth [mm]')
axis('image')
colormap(gray(128))

subplot(122);
image(x*1000, depth*1000, env_gray0);
xlabel('Lateral distance [mm]')
ylabel('Depth [mm]')
axis('image')
colormap(gray(128))

%将数据量缩小,否则三维的时候内存会不够
SCALE = 250;
flag31 = flag3(1:8295/SCALE:end,:);
[RR,CC] = size(flag31);
%像素坐标转换为转化为体素数据
VoxelMat0 = zeros(RR,CC,10);
for i=1:RR
for j=1:CC
for k=1:10
if flag31(i,j)==0
VoxelMat0(i,j,k)=1;
end
end
end
end
figure;
subplot(121);
[vol_handle,FV]=VoxelPlotter(VoxelMat0,1);
daspect([0.5,1,1]);
view([100,34]);


%像素坐标转换为转化为体素数据
VoxelMat=zeros(RR,CC,1);
for i=1:RR
for j=1:CC
for k=1:1
if flag31(i,j)==0
VoxelMat(i,j,k)=1;
end
end
end
end
subplot(122);
[vol_handle,FV]=VoxelPlotter(VoxelMat,1);
view([90,90]);
daspect([0.5,1,1]);




VoxelMat2=zeros(RR,CC,1);
for i=1:RR
for j=1:CC
for k=1:1
if flag31(i,j)==1
VoxelMat2(i,j,k)=1;
end
end
end
end
figure;
[vol_handle,FV2]=VoxelPlotter(VoxelMat2,1);


%八叉树法细化,缩小成像范围;
%第一次
pts = FV2.vertices;
OT = OcTree(pts,'binCapacity',3000,'minSize',0.001);
OT.shrink
X1 = OT.Points(1:4:end,1);
Y1 = OT.Points(1:4:end,2);
Z1 = OT.Points(1:4:end,3);
VoxelMat3 = VoxelMat0;
for i = 1:length(X1)
VoxelMat3(floor(X1(i))+0,floor(Y1(i))+0,floor(Z1(i))+1)=0;
VoxelMat3(floor(X1(i))+0,floor(Y1(i))+1,floor(Z1(i))+1)=0;
VoxelMat3(floor(X1(i))+1,floor(Y1(i))+0,floor(Z1(i))+1)=0;
VoxelMat3(floor(X1(i))+1,floor(Y1(i))+1,floor(Z1(i))+1)=0;
end
%第二次
.....................................

三、测试结果

使用Field_II_ver_3_24_windows_gcc工具箱实现超声波数据成像matlab仿真_matlab

 

使用Field_II_ver_3_24_windows_gcc工具箱实现超声波数据成像matlab仿真_超声波成像_02

 

使用Field_II_ver_3_24_windows_gcc工具箱实现超声波数据成像matlab仿真_linux_03

 

A19-18

标签:24,gcc,ver,Jensen,floor,pp,II,Field,end
From: https://blog.51cto.com/u_15815923/5846502

相关文章

  • C#之强制类型转换是错误和String到int用Convert()函数解决
    strings="2222"inti=(int)s 这种写法在C#中是错误的,属于强制类型转换,没有通过第三方,直接从A到B的转换,是不受欢迎的。 通过Convert()函数进行第三方转换,属于A到C,再到......
  • Azure DevOps Server 设置项目管理用户,用户组
    一,引言AzureDevOpsServer搭建完成后,关于如何进行项目管理,项目成员管理等,我们接着上一篇文章,继续讲解AzureDevOpsServer的用户,用户组。首先,我们需要明白Azure......
  • Reverse Linked List
    https://leetcode.cn/problems/reverse-linked-list-ii/  classSolution:defreverseBetween(self,head:Optional[ListNode],left:int,right:int)->......
  • Idea/goland go debug : version of delve is too old for this version of go.
    terminal:gogetgithub.com/go-delve/delve/cmd/dlv1、拿到最新的dlv.exe。位置在gopath的lib目录下的bin目录。2、help>EditCustomProperties:创建一个properties......
  • 塔防(cover)Atcoder/Codeforces的某道题
    题目背景在某个塔防游戏中,有一种防御塔,可以攻击到上下左右四个方向以及自身位置的敌人。题目描述塔防游戏的⼀个关卡地图可以看作⼀个的矩阵,也就是⾏,列的矩阵。其......
  • 使用Field_II_ver_3_24_windows_gcc工具箱实现超声波数据成像matlab仿真
    目录一、理论基础二、核心程序三、测试结果FPGA教程目录MATLAB教程目录一、理论基础FieldIIUltrasoundSimulationProgram关于Field_II_ver_3_24_windows_gcc......
  • 第六章24
    【题目描述】在某一国度里流行着一种游戏。游戏规则为:在一堆球中,每个球上都有一个整数编号i(0≤i≤100000000),编号可重复,现在说一个随机整数k(0≤k≤100000100),判断编号为k的......
  • day24 - 表格 内联等
    表格​实现表格的创建行操作:tr列操作:td​colspon实现跨列操作rowspon实现跨行操作1<!DOCTYPEhtml>2<htmllang="en"xmlns="http://www.w3.org/1999/html......
  • Linux开启DNS Server后解析外域受限问题
      CentOS7系统里起了一个DNSServer,一切顺利,针对本地域的各项解析都很成功,欢欣鼓舞。 在欢欣鼓舞时却发觉DNS服务器无法进行域外域名解析,查找原因发现除了本地定义的......
  • Seata Server 1.5.2 源码学习
    Seata包括Server端和Client端。Seata中有三种角色:TC、TM、RM,其中,Server端就是TC,TM和RM属Client端。Client端的源码学习上一篇已讲过,详见《Seata1.5.2源码学习》,今天来......