网上的资料整理的:
CT(computed tomographyt:电脑断层扫描)
观察的CT 值范围,人们称之为窗宽 ;观察的中心CT值即为窗位或窗中心
原则上说窗位应该等于或接近需要观察的CT 值;窗宽应能反映该组织或病变的CT 值变化范围。
MRI:磁共振成像
非线性转换 : 常用算法有 log 和 gamma 两种。gamma 比较好调 gamma 值,因此用得比较多
procedure WinWL(iWinWidth:integer; iWinLevel:integer;
imgwidth :integer; imgheight:integer;
lpSrImage: pointer;
lpDsImage: pointer);
var
iRange, i, lSz :integer;
iWidth :integer;
iScaleShl10 :integer;
min16, max16 :integer;
begin
if lpSrImage=nil then
begin
exit;
end;
iWidth := abs(trunc(iWinWidth/2));
min16 := iWinLevel - iWidth; // 以窗位为中心,
max16 := iWinLevel + iWidth; // 上下各一半窗宽
lSz := (imgwidth*imgheight);
lSz := lSz - 1;
iRange := (max16-min16); // iRange 即 iWinWidth窗宽
if (iRange = 0) or (trunc((1024/iRange) * 255) = 0) then
begin
if iWinWidth > 1024 then
begin
for i := 0 to lSz do
pbyte(integer(lpDsImage)+i)^ := 128;
end
else
begin
for i := 0 to lSz do
if pword(integer(lpSrImage)+i*2)^ < iWinLevel t