Matlab 对齐两个图像

Matlab 对齐两个图像,matlab,image-processing,edge-detection,Matlab,Image Processing,Edge Detection,我有两张相同鞋底的照片,一张是用扫描仪拍摄的,另一张是用数码相机拍摄的。我想缩放其中一幅图像,这样它就可以轻松地与另一幅图像对齐,而不必全部手工操作 我的想法是使用边缘检测,连接鞋子外部的所有点,缩放一幅图像以适应另一幅图像的内部,然后以相同的速率缩放原始图像 我在MatLab的图像处理工具箱中使用了不同的工具,但没有取得任何进展 有更好的方法吗?我的建议是首先使用功能activecontour在两张图像上获得鞋的外部轮廓。然后使用函数procrustes,将二进制图像作为输入 [~, Came

我有两张相同鞋底的照片,一张是用扫描仪拍摄的,另一张是用数码相机拍摄的。我想缩放其中一幅图像,这样它就可以轻松地与另一幅图像对齐,而不必全部手工操作

我的想法是使用边缘检测,连接鞋子外部的所有点,缩放一幅图像以适应另一幅图像的内部,然后以相同的速率缩放原始图像

我在MatLab的图像处理工具箱中使用了不同的工具,但没有取得任何进展


有更好的方法吗?

我的建议是首先使用功能
activecontour
在两张图像上获得鞋的外部轮廓。然后使用函数
procrustes
,将二进制图像作为输入

[~, CameraFittedToScan] = procrustes(Scan,Camera);

这会将相机图像转换为与扫描图像最匹配的图像。如果扫描和相机的尺寸不相同,则需要首先使用功能
imresize

进行调整,尝试找到一组点的质心和惯性主轴。需要查看图像。