※ morphingData

 getPictPoints関数で指定した変形前の三角形データと変形後の三角形データから画像データをモーフィング変形する。

【書式】

morphingData(data,sankakuBefore,sankakuAfter)

【引数】

data : モーフィング対象のm行n列の画像データ
sankakuBefore : p行9列の変形前の三角形データ
sankakuAfter : p行9列の変形後の三角形データ

【戻値】

変形後のm行n列の画像データ

【備考】

【例 】

モーフィング変形対象の画像データを入力・表示。今回は PET断層画像

f1$ = cal_getFilePath(0);
a = loadImage(f1$,22);
a = hokan(a,512,512);
RGB = popRGBColor(0);
a# = densityPlot(a,|7000,0|);
changePictSize(a#,1/2);

重ね合わせ先の画像データを入力・表示。今回はMRI T1強調画像。

f2$ = cal_getFilePath(0);
b = loadImage(f2$,9);
RGB = popRGBColor(1);
b# = densityPlot(b,|350,0|);
changePictSize(b#,1/2);

getPictPoints関数を使い変形対象の画像データに特徴点を設定する。

pm = getPictPoints(a#);

 同様にgetPictPoints関数を使い変形対象の画像データで与えた特徴点を変形先の画像で同一場所に設定する。今回は同一患者のデータなので拡大・縮小・回転・平行移動のみで設定は可能。

pn = getPictPoints(b#,pm);

 モーフィング関数を使いPET画像データをMRI T1強調画像に一致するよう変形する。

c = morphingData(a,pm,pn);
RGB = popRGBColor(0);
c# = densityPlot(c,|7000,0|);
a#•b#;b#•c#;

変形前の画像を単に重ね合わせただけ。二枚の画像の位置は完全に異なる。

 モーフィングでPET画像データを変形しMRI画像に重ねた画像。モーフィングにより奇麗に一致する事が判る。