我正在尝试融合2张CT和MRI图像。但在我这样做之前,我试图融合2个任意图像,使用标记和链接注册方法(使用cpselect标记点)注册它们。我试图将两个图像相互注册,然后融合它们。但似乎虽然融合图像并没有调整到相同的常规大小然后被融合。相反,混合发生在它们原始的形状和大小上,因此它们没有被适当地混合。为什么会这样?有人可以建议吗?我试图在imfuse函数中使用不同类型的融合方法,但他们无法解决问题。是否存在替代功能或使用imfuse的错误方式。或许某些事情被错过了?
以下是我尝试过的matlab代码:
CT_input=imread('C:\Semester 6\BTP\Spinal Cord Data\test\house1.png');
MR_base=imread('C:\Semester 6\BTP\Spinal Cord Data\test\house2.png');
figure, imshow(MR_base,[]);
[input_points,base_points]=cpselect(CT_input,MR_base,'wait',true);
geotype=cp2tform(input_points,base_points,'linear conformal');
registered=imtransform(CT_input,geotype);
registered2=imtransform(MR_base,geotype);
figure, imshow(registered,[])
figure, imshow(registered2,[])
基本图片如下: 1)图1 2)图像2(略小且移位的图像1)
注册后: 1)注册图片1 2)注册图像2
获得融合图像(不是令人满意的融合水平)