Process
Process = classname [string] Class of processing objects. method [string] Method to use for class. Parameters [string,value,string,value,…] An array of property, value pairs that define the various attributes of the processing object. In Matlab, this construct is a cell array, consisting of strings and values that possibly have different datatypes.
显示图像
Image = imgbufnum [double] 展示的imagebuf索引,ImageBuffer number to use for source. framenum [double] Source frame number (use -1 for last) pdatanum [double] No. of PData structure srcData [string] ‘intensity’(default),0-2e6’signedColor,0-255’,’unsignedColor,-128-127’ grainRemoval [string] 滤除奇异值和临近点值相比明显不同的数据,使图像平滑化。‘none’(default),‘low’,‘medium’,‘high’ persistMethod [string] 根据帧之间强度变化量设置持久性。‘none’(default), ‘simple’, ‘dynamic’ persistLevel [double] ,对于值=20,相当于前一帧强度的20%加上新帧强度值的80%。Amount of persistence, range 0 – 99 interpMethod [string] Interpolation method (‘4pt’ interp(default)). processMethod [string] 对插值过后imagebuffer的空间滤波器,‘none’(default),‘reduceSpeckle1’,‘reduceSpeckle2’ averageMethod [string] 计算后两帧或者三帧的平均值,数值送到displaydata buffer中‘none’(default),‘runAverage2’,‘runAverage3’ %以下四个:送入displaydata buffer中前修改强度强度范围,压缩方式等。 pgain [double] 最大数据限制在maxV*pgain,0到1,Processing gain. reject [double] 设置minV=0到100%maxV/4,处理的强度会减去minV,使强度范围在0~maxV-minV之间,Low level reject (0-100) compressMethod [string] ‘power’ or ‘log’,‘power’通过 compressFactor计算强度系数。20时输出功率1.0,40时输出功率0.5的开方压缩,较高压缩因子提供较小的功率。log采用对数压缩,值越高曲线上涨越快。 compressFactor [double] (0-100) mappingMethod [string] 多普勒要分上下区域(B超下多普勒上)‘full’(default),‘lowerHalf’,’upperHalf’. threshold [double] 0-255. 比较是否复写Compare against pixel value to determine whether to overwrite. gamma [double] compression applied to gray scale colormap blacklevel [double] reject applied to gray scale colormap display [double] 当需要多帧imagebuf输出时,设为0,比如多普勒成像的情况。0-no display, 1-display displayWindow [double] Dest. display window (default is 1).
- 显示数据有四个缓冲区,ID0为临时缓冲区,ID1到ID3为放置处理后imagbuffer的历史缓冲区。
%设置举例 Process(1).classname = ‘Image’; Process(1).method = ‘imageDisplay’; Process(1).Parameters = {‘imgbufnum’,1,… % ImageBuffer to process. ‘framenum’,1,… ‘pdatanum’,1,… ‘compressMethod’,‘power’,… % power comp. ‘compressFactor’, 40,… ‘pgain’,1.0,… % image processing gain ‘reject’,3,… % reduce intens. below this index ‘mappingMode’,’full’,… ‘displayWindow’,1,… % Dest. display ‘display’,1}; % display image
多普勒处理(问题)
Doppler = %多普勒处理起始位置 srcbufnum [double] interbuf数,Source buffer number srcframenum [double] 起始帧,Source frame number Srcsectionnums [1x2double] 3D使用,Source section [start,stop] for 3D scans. srcpagenum [double] 起始多普勒采集数,Starting page no. out of numPRIs pages. % pdatanum [double] No. of PData structure dstbufnum [double] 输出位置,Dest. buffer number dstframenum [double] Dest. frame number prf [double] PRF in Hz. numPRIs [double] 重复数,1-numPRIs,interbuffer.pagesperframe值,No. of PRIs to process. wallFilter [string] 壁滤波器的选择Method of wall filtering. pwrThreshold [double] % of max power threshold maxPower [double] maximum power level for calculations & display postFilter [double] Method of filtering estimate data (0=none)
- 对于弱血流条件下,还有CDIWeakFlowFilterResponses?
示例:
Process(1).classname = ‘Doppler’; Process(1).method = ‘computeCFIFreqEst’; Process(1).Parameters = {‘srcbufnum’,1,… %no. of buffer to process. ‘srcframenum’,1,… % starting frame no. ‘srcpagenum’,1,… ‘pdatanum’,2,… ‘dstbufnum’,1,… ‘dstframenum’,1,… ‘prf’,2000,… % Doppler prf in Hz ‘numPRIs’,16,… % number of PRIs in ensemble ‘wallFilter’,'regression',… % method of wall filter ‘pwrThreshold’,0.1,… % power threshold % of max ‘postFilter’,0};
%interbuffer
Resource.InterBuffer(m).datatype = ‘complex’;
Resource.InterBuffer(m).numFrames = 1; % Only one frame needed.
Resource.InterBuffer(m).rowsPerFrame = 2048;
Resource.InterBuffer(m).colsPerFrame = 64;
Resource.InterBuffer(m).pagesPerFrame = numPRIs; % numPRIs pages per
ensemble
外部函数
- 处理信号位置
- 处理后输出位置
- 例程名称
Process(1).classname = ‘External’; % Identifies the processing as external. Process(1).method = ‘processFunctionName’; Process(1).Parameters ={ %处理信号位置 ‘srcbuffer’,’receive’,… %可选“receive”、“inter”、“image”和“imageP”或“none”,不允许传输单个section或page ‘srcbufnum’,1,… % no. of buffer to process.,-1(receive、image、imageP)为缓冲区最后一帧,-2(image、imageP),使用最后一帧,最后一帧指针后移一位 ‘srcframenum’,1,… % starting frame no. ‘srcsectionnum’,1,… ‘srcpagenum’,1,… %输出信号位置 ‘dstbuffer’,’image’,… ‘dstbufnum’,1,… ‘dstframenum’,1,… ‘dstsectionnum’,1,… ‘dstpagenum’,1}; %使用image、imageP为disbuffer,此项忽略
- 输入缓冲区为只读;
- 使用矩阵处理多帧数据时注意对齐,
- 外部函数第一句话:
function Output = myProcessingFunc(Input)