1、内容提要: B信号处理 C信号处理 1. B扫描 2. M7的关键点 3. M7的核心处理步骤B信号处理 用到了很多种改善图像性能的方式: 孔径合成; 线复合; 谐波成像; 多焦点; 空间复合等等通常是上述几种方式中的23种组合使用,采用的方式确定了扫描过程。反过来,由扫描过程也可以反推出用到了那些改善图像性能的方式。不同的扫描方法,决定了不同的信号处理方式,在M5,DC3中非常明显体现出来。B信号处理-扫描右图为当前扫描的一个例子,横坐标表示扫描序号。上图表示线号,下图表示属性。可以看出扫描方式为8波束4焦点。B信号处理-扫描先扫同一个线的4个不同焦点的数据,然后线号间隔两线,再次扫描4个不
2、同焦点的数据。B信号处理-扫描-孔径合成.B信号处理-扫描-线复合多波束接收假设为8波束,让扫描线间隔数小于8,然后将接收线中相同线号的线叠加。用于改善信噪比。下图为采用间隔四线扫描,累加两次的复合情况。下图为无复合,错开8线扫描的情况。B信号处理-扫描-线复合下图为采用间隔两线扫描,累加四次的复合情况。B信号处理-扫描-线复合右图为采用间隔一线扫描,累加八次的复合情况。复合是在帧率和性能之间的一个折衷平衡,当复合累加次数分别为1,2,4,8时,实际上分别等价于8,4,2,1波束系统。常用的是错开两线扫描的方式。B信号处理-扫描-多焦点为改善整场的清晰度。保持线号不变,改变每次发射聚焦区域,从
3、回波中取出相应的聚焦区域的数据。很明显多焦点能兼顾整场的清晰度,但是代价是牺牲帧率。B信号处理-扫描-多焦点M5中,为了节省BLOCK RAM,将线复合和多焦点拼接合在一起完成。反复对BOLCK RAM进行读写操作;不断对输入数据和RAM中读出的数据进行复合或者是拼接区的HANNING窗的加权运算。实现方案非常复杂!B信号处理-扫描-谐波成像超声图像的分辨率和超声波长成反比,即和频率成正比,但是频率越高,衰减越快。对系统动态范围的要求越高。谐波成像,兼顾基波的穿透力,和谐波的分辨率。谐波成像分为:自然谐波成像,正方向谐波成像。其中正反向谐波成像好理解一些。分别发射正向以及反向脉冲,回波数据相加
4、,消除基波,得到谐波;回波数据相减,消除谐波的干扰。B信号处理-扫描-空间复合沿着不同的偏转角度对人体组织进行扫描,然后将不同角度的图像融合成一帧。B信号处理-扫描-空间复合空间复合并不会改变图像的帧率。抑制图像上的突发的黑点噪声,但是图像清晰度有所降低。 复合前的图像 复合后的图像 1. B扫描 2. M7的关键点 3. M7的核心处理步骤B信号处理B信号处理- M7的关键点系统每次更改方案,每次更改扫描模式,后面的实现方式就会随着更改,调试,在M5中的表现非常明显;M7的突破点便是从哲学角度上概括超声扫描接收处理特点。使得前端扫描,数据存储读写和随后的处理分开,后面的实现处理只依赖参数,不
5、依赖前端的扫描方式。哲学:从现实世界纷繁复杂的社会现象中,提炼出形而上的规律。“凡是现实的就是合理的,凡是合理的就是现实的”“人们首先必须吃、喝、住、穿,然后才能从事政治、科学、艺术、宗教等社会活动。”“我思故我在”“反者道之动,弱者道之用。天下万物生于有,有生于无。”B信号处理- M7的关键点M7整体设计理念高于DC6,M5。M7的精髓 :数据帧缓存,将正交解调后顺序上不规则的数据存储于FPGA片外 DDRII中,读的时候按所需的规则顺序来读取。M7的神奇点一:矩阵乘,对B来说实现相干累加,对C来说实现壁滤波,对TDI模式来说直通。M7的神奇点二:累加器,对B来说实现非相干累加,对C来说实现
6、自相关后速度矢量的相干叠加。B信号处理- M7的关键点鉴于相干叠加,非相干叠加贯穿于超声信号处理的整个过程,有必要加深对相干叠加,非相干叠加的认识。对数据先IQ加权叠加,后求模的方式称为相干叠加;对数据先IQ求模,后模值加权叠加的方式成为非相干叠加;超声B信号处理中,有孔径合成,多焦点拼接,线复合,正反向谐波数据获取,频率复合,空间复合等等。相干叠加方式: 孔径复合,线复合,正反向谐波数据获取,非相干叠加方式:线复合,多焦点拼接,频率复合,空间复合。B信号处理- M7的关键点相干叠加,非相干叠加的概念来自于通信系统,在信道的相干时间之内,相干叠加即IQ叠加可以最大限度提高信噪比。B信号处理-
7、M7的关键点超出了相干时间后,信号相位差异较大,相干叠加无助于提高信噪比,反而会降低信噪比。此时采用非相干即模值叠加的方式,因为信号相位差异较大,但其包络变化不大。B信号处理- M7的关键点什么是相干时间?从统计的角度看,维持信道单位冲击响应基本不变的一段时间。反比于多普勒频移,即和组织运动的速度成反比。下面是两种极端情况:假设组织绝对静止,其速度为0,那么其相干时间为无穷大,即可以做无限多次的相干(IQ)叠加,使得其信噪比为无穷大。假设组织运动速度为无穷大,其相干时间为零,即不能做相干叠加。 1. B扫描 2. M7的关键点 3. M7的核心处理步骤B信号处理B信号处理- M7:数据帧缓存D
8、C6,M5数据重排模块,仅在C处理时用到,借助片外SSRAM实现数据的重新整理。M7将数据重排的概念扩展到B,统称为数据帧缓存。数据帧缓存的实质是根据扫描模式,按照符合要求的数据格式,对FPGA片外缓存的读写。可以认为片外缓存是一个三维的矩阵,装载数据方式如下:B信号处理- M7:数据帧缓存第一个焦点内孔径的头8条线;第一个焦点外孔径的头8条线;第二个焦点内孔径的头8条线;第二个焦点外孔径的头8条线;错开两线扫描;-讲到数据帧缓存,不可避免引入基本概念:子帧,子集,线集,线。以一个8波束,错开两线复合,有孔径合成,两焦点为例,看看数据在三维矩阵中如何装载读写 :B信号处理- M7:数据帧缓存接
9、收线号先后顺序如下图:B信号处理- M7:数据帧缓存B信号处理- M7:数据帧缓存B信号处理- M7:数据帧缓存上例中,同一线号的数据共16次得到,即子帧个数为16;数据分两批读出,每一批数据称为一个线集,16个子帧的数据共2个线集;每一批数据包含8个子帧,即线集里面子帧的个数为8;将每一批8个子帧的数据送出去相干(IQ)叠加,即矩阵乘里面的系数为: 1 1 1 1 1 1 1 分属不同线集的数据求模后,非相干叠加,合并为一帧数据送到后端显示。在这个例子中,非相干叠加的次数即为线集的个数,相干叠加的次数即为矩阵里面系数的个数。B信号处理- M7:数据帧缓存 例1: 4波束,无复合,只有孔径合成
10、,其接收线号如下:B信号处理- M7:数据帧缓存 例1:4波束,无复合,只有孔径合成,往帧缓存中写:B信号处理- M7:数据帧缓存 例1: 4波束,无复合,只有孔径合成,从帧缓存中读数据:B信号处理- M7:数据帧缓存 例1:4波束,无复合,只有孔径合成子帧个数为2;子集个数为1;线集个数为1;矩阵乘里面的系数为:1 1B信号处理- M7:数据帧缓存 例2: 4波束,有复合,无孔径合成,其接收线号如下:B信号处理- M7:数据帧缓存 例2: 4波束,有复合,无孔径合成,写帧缓存如下:B信号处理- M7:数据帧缓存 例2: 4波束,有复合,无孔径合成,读帧缓存如下:B信号处理- M7:数据帧缓存
11、 例2: 4波束,有复合,无孔径合成子帧个数为2;子集个数为1;线集个数为1;矩阵乘里面的系数为:1 1B信号处理- M7:数据帧缓存 例3: 8波束,有复合,无孔径合成,3角度的空间复合,其发射线号如下:B信号处理- M7:数据帧缓存 例3: 8波束,有复合,无孔径合成,3角度的空间复合,子帧个数共为12;子集个数为3;每个子集的线集个数为1;矩阵乘里面的系数为:1 1 1 1B信号处理- M7:数据帧缓存从正交解调的输出,到数据输出给矩阵乘,帧缓存处理数据过程分为三步:第一次变换:正交解调后的数据写入DDRII之前,解交织一次;第二次变换:第一次变换的结果写入DDRII,然后从DDRII中
12、读出;第三次变换:从DDRII中读出的结果再交织一次,变为适合矩阵乘的数据格式。B信号处理- M7:数据帧缓存写入DDRII之前,在FPGA中数据格式变换。B信号处理- M7:数据帧缓存DDRII中数据格式变换。B信号处理- M7:数据帧缓存从DDRII中读出数据后,在FPGA中数据格式变换。B信号处理- M7:数据帧缓存深度变换,模式切换,即只要是涉及到扫描模式变换的,都是帧缓存的天敌。图像无输出,模式切换时图像异常,图像抖动,丢包,帧率不正常,应该优先检查帧缓存模块;三次数据格式转变过程中,任何一次在时序上稍有不当,整个管道就堵塞,导致系统数据流停滞。可以采用下列手段辅助诊断:采集分析波束
13、合成数据(1),用于检查送给帧缓存的数据是否正确;分析帧缓存写入到DDRII的数据(2),用于验证写操作是否正确;分析输入到矩阵乘的数据(3),用于验证帧缓存读是否正确。B信号处理- M7:数据帧缓存Bug27864 BCM时数据丢包;B ug29141 BM谐波时M图像间或的亮线;Bug 晃取样框时,C突然死掉;Bug BC奇偶帧扫描下,帧率只有理论的一半;-B信号处理- M7:矩阵乘B的矩阵乘的实质是对同一个线集内,属于同一线的不同子帧的同一深度的IQ加权求和。B矩阵的系数通常取1或-1。如果存在正反向谐波成像,系数有一半取-1,得到谐波数据成分。C的矩阵乘用于实现壁滤波或TDI模式的直通
14、,和DC6,M5类似。B信号处理- M7:累加器对于B信号处理来说,累积器作用有两个:1是用于基波和谐波处理结果的模值加权叠加;2是用于同一子集内部不同线集结果的叠加,比如多焦点结果的模值叠加。对于C信号处理来说,累积器作用:实现速度矢量的相干叠加。内容提要: B信号处理 C信号处理 1. C扫描 2. 数据重排 3. 壁滤波 4. 自相关 5. 求速度 6. KEYHOLE噪声抑制C信号处理速度对应着多普勒频移;要检测血流速度,即求出多普勒频移,也就是鉴频;对于数字信号处理来说,鉴频是在采样数据中求出数据中可能的频率成分,等价于鉴别数据的相位变化趋势。C信号处理-C扫描上图中第一,第二,次回
15、波数据是如何得到的?对同一位置多次等间隔扫描,假设次数为P;等间隔时间T的倒数1T称为速度样点采样率;而非AD采样率。从速度样点采样率,发射频率,超声速度,又能换算到血流速度范围:Scale(cm/s)下面为多普勒频移公式,以及测速范围Scale的算法。C信号处理-C扫描上面的公式中Fs即为速度样点的采样率,各种模式下Fs 含义如下所示:下图中,K的取值表示不同位置的血流扫描线,对于正常的C扫描来说,采用的是下图左边的扫描方式,而不是右边的扫描方式。为什么?C信号处理-C扫描前提条件1:取样框的位置(深度)决定了C发射的PRF,假设PRF=4K;前提条件2:现在要检测极其低速血流,速度范围SC
16、ALE非常小,比如手指尖,采样率1K即够;按照下图右边的扫描方式,如果相邻P之间的时间间隔倒数为1K,能达到要求的速度分辨率,最后显示的帧率就太慢了。按照下图右边的扫描方式,如果相邻P之间的时间间隔倒数为4K,帧率能满足要求,能达到的速度范围SCALE为原来的四倍,实际上对于低速血流来说,没有必要需要如此高的SCALE,速度分辨率降低为原来的14。下面左图的P,K交叉扫描是理想的扫描方式,既提高了帧率,又兼顾了速度分辨率。P,K值取多少,由很多因素折衷决定。C信号处理-C扫描典型的P,K以及C的PRF,C的速度样点采样率之间关系。C信号处理-C扫描C线复合的扫描方式:4波束,间隔两线扫描,B复
17、合一次,C一个取样框分成5个数据包扫描,每个包的P=14,K=2,包内的K=0,K=1线号错开2;上一个包的最后一线和下一包的第一线线号错开2.每个包的开头都有两次无效的扫描;从下图可以看出C最终显示的线数是:54-22=16;C信号处理-C扫描C线复合的扫描方式:C的子帧个数为28,以第一次得到的有效线为基准,线号间隔四线得到的线数据放在子帧0至13中,即线集0的数据;线号间隔二线得到的线数据放在子帧14至27中,即线集1的数据。C的子集为1,线集共为2。在累加器中,实现速度矢量的累加,C信号处理-C扫描C奇偶帧复合的扫描方式:一个扫描控制帧分两个显示帧完成,称为奇帧和偶帧。对于B来说,奇帧
18、和偶帧扫描过程完全相同;对于C来说,下图中P=12,K=13,一个C的取样框由一个包组成;对于C来说,奇帧,偶帧错开两线,C的线集数为0,累加器无累加。但是存在帧复合运算;可以把帧复合当作帧于帧之间的非相干叠加;下图中C的线数一共为:134-22=48;C信号处理-C扫描C的线复合属于矢量的叠加,C的帧复合属于标量的加权叠加。例如:假设V0角度为25度,V1角度为90度,矢量量叠加后,其角度为35度。标量叠加,假设权值为0.5,结果为(90+25)0.5=57.5度;两种方法计算出的结果稍有差异。如果权值为0.5,可以证明标量叠加计算的结果要比矢量叠加的结果大一些。C信号处理-C扫描 1. C
19、扫描 2. 数据重排 3. 壁滤波 4. 自相关 5. 求速度 6. KEYHOLE噪声抑制C信号处理在前面的数据帧缓存中讲过,C的数据重排是通过对数据帧缓存的读写实现的。假设当前数据点为D(P,K,F),P表示样点数据的编号,K表示线号,F表示深度。如果不考虑多波束的因素,输入数据的先后顺序为:F-K-P,如下图左;数据重排后,输出数据的顺序为:P-F-K,如下图右。C信号处理-数据重排 1. C扫描 2. 数据重排 3. 壁滤波 4. 自相关 5. 求速度 6. KEYHOLE噪声抑制C信号处理得到同一线同一深度的等时间间隔的P个采样点数据后,分析数据频谱,其成分为:较强的低速组织运动。非
20、常微弱的高速的血流运动。C信号处理-壁滤波 1. C扫描 2. 数据重排 3. 壁滤波 4. 自相关 5. 求速度 6. KEYHOLE噪声抑制C信号处理互相关计算用来求出不同信号之间的相似度,对于自相关,既可以用来求信号的能量,也可以求信号最可能的旋转成分。序列的自相关C(m) = EA(n+m)*conj(A(n)即为延迟共扼相乘。通常用来估算输入序列的频偏。在通信系统中,有自动频偏纠正:AFC,分为自动频偏估计以及自动频偏补偿两步完成。其中自动频偏估计,有下列两种方法:1.延迟共扼相关;2.FFT;延迟共扼相关是找出信号中最可能的频偏成份,即最大似然估计;而FFT是以频率分辨率的间隔,遍
21、历求出信号可能的频偏成分的模值。对应到超声系统:延迟共扼相关用于估计C的血流相位变化;FFT用于求出多普勒模式(PW,CW)的谱线。C信号处理-自相关假设对同一位置每隔相同时间进行P次扫描,得到P个样点,P通常取值8,12,14,16。样点矢量在坐标轴上的分布如下图,蓝色为原始矢量,红色为原始矢量的共扼向量。延迟共扼相乘后得到相邻样点中包含的旋转矢量,即血流的旋转矢量。对多个样点的旋转矢量平均,以去除噪声的影响,得到同一位置血流最大可能的旋转矢量,求出该旋转矢量的角度即鉴别出血流的相位变化信息。对数字信号处理鉴相即为鉴频,反映着血流的多普勒频移,即血流速度。自相关的结果,得到能量R以及速度矢量
22、在X,Y轴上的分量D,N。C信号处理-自相关 1. C扫描 2. 数据重排 3. 壁滤波 4. 自相关 5. 求速度 6. KEYHOLE噪声抑制C信号处理1.求出速度矢量D,N和X轴之间的角度theta,其值为-pi,pi)之间。2.将该角度用8比特量化,即round(theta/pi/2*2.8) ,量化后的值范围为-128到+127,之间,最高位为符号位表示血流的方向。3.将量化后的值用伪彩的方式显示出来,即为看到的屏幕上的彩色图像。C信号处理-求速度实际求出的参量中,除了能量,速度外,还有方差。方差的算法:1(速度矢量的模值/能量) ;在超声中,方差的概念可以这样去理解:血流成分的准确
23、性,比如方差为0,则认为仅包含血流或组织运动引起的单频成分,不包含任何其它噪声;再比如方差趋向于1,则认为该点处的血流矢量太小,该点并非血流。方差在B,C图像显示融合的时候,用于辅助判断是否显示血流或者黑白图像。C信号处理-求速度 1. C扫描 2. 数据重排 3. 壁滤波 4. 自相关 5. 求速度 6. KEYHOLE噪声抑制C信号处理实际算出的VTP不一定正确。下图中,红色区域内的V0矢量被认为是壁滤波没有过滤干净的低速组织运动,应该被清除;V2,V4矢量认为其模值,或能量值太小,也是被剔除的矢量。只有V1,V3矢量被认为是很可能正确的速度矢量。KEYHOLE是通过一些参量的门限阈值来最大可能的确定当前矢量是否是真实的速度矢量。用来改善血流的显示形态。C信号处理-KEYHOLE噪声抑制KEYHOLE前后的对比。C信号处理-KEYHOLE噪声抑制图像含义图像含义内容提要: 未完,待续: 超声中的信号处理(三)