问题标签 [image-registration]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
365 浏览

matlab - 如何在 Matlab 中交叉和对齐两个图像的像素?

我有两张不同大小和不同世界位置的图像,像这样

在此处输入图像描述

对于这两个图像,我都有imref2d信息。

我想进行比较分析,所以我需要将两个图像裁剪为相同的大小并重新采样其中一个,以便两个图像的像素对齐。

matlab中是否有任何简单/内置的方法?

0 投票
2 回答
1846 浏览

c# - 对齐来自一组四个点的两个图像

我正在用 C# 在accord.net 中玩耍,并试图对齐两个图像。我是计算机视觉的新手,想知道accord.net 是否可以做到这一点,或者我是否必须自己写一些东西。

我有两张图片,每张图片我有四个点。这些点从左上角开始沿图像逆时针方向分配(TL、TR、BR、BL)

例子:

图 1

图 1 - 盒子

图 2

图 2 - 旋转和缩小的盒子

在两个图像中,图像 1 的点 1 与图像 2 的点 1 相关,其余点相同。

所以我想做的是对齐两个图像,以便两个图像之间的比例、旋转和对齐匹配,当叠加时我最终得到两个图像应该如下图所示:

结果

到目前为止,我有这个,它适用于旋转和对齐,但不缩放图像。据我了解,RANSAC 似乎对这份工作太过分了,因为我已经在关联这些点了?另外,我希望单独输出图像以进行进一步的图像处理。

谢谢!

0 投票
1 回答
2411 浏览

matlab - 将 2D 图像刚性配准到 3D 体积,并具有良好的仿射变换初始猜测

我有一个 3D 体积和一个 2D 图像以及两者之间的近似映射(没有倾斜的仿射变换、已知的缩放、旋转和平移近似已知并且需要拟合)。因为这个映射有错误,我想进一步将 2D 图像注册到 3D 体积。我以前没有为注册目的编写代码,但是因为我找不到任何程序或代码来解决这个问题,所以我想尝试这样做。我相信注册的标准是优化互信息。我认为这在这里也很合适,因为两个图像之间的强度不相等。所以我想我应该做一个转换函数,一个互信息函数和一个优化函数。

根据一篇文章,我确实在两年前的 mathworks线程上找到了一些 Matlab 代码。OP 报告说她设法让代码正常工作,但我不知道她是如何做到这一点的。在 matlab 的 IP 包中也有一个实现,但我没有那个包,而且似乎没有octave的等效项。SPM是一个使用 matlab 并实现了注册的程序,但不处理 2d 到 3d 的注册。在文件交换中,有一种使用互信息注册两个 2D 图像的蛮力方法

她所做的是将多平面重建函数和相似性/误差函数传递到最小化算法中。但细节我不太明白。也许重新开始会更好:

0 投票
1 回答
251 浏览

matlab - 如何使用 lsqcurvefit 进行图像配准?

我有两个 3D 图像,我需要使用“lsqcurvefit”注册这两个图像。我知道我可以使用“imregister”,但我想在 Matlab 中使用“lsqcurvefit”使用我自己的注册。我的图像遵循高斯分布。没有很好地记录我应该如何提供它,任何人都可以详细帮助我吗?

图像配准是使用仿射将源图像映射到目标图像的重复过程。我想使用强度基配准,并且我使用图像的所有体素。因此,我需要尽可能地适合这两个图像。

谢谢

0 投票
1 回答
309 浏览

image - Matlab cpselect与RGB固定图像

我希望能够使用 cpselect matlab 工具(或类似工具)以 RGB 显示两个图像(运动图像和参考图像)(我只设法看到 RGB 运动图像和灰度参考图像) .

有人可以为我指出一个支持这个工具的替代方案,或者无论如何能够在 cpselect 中以 rgb 显示这两个图像吗?

提前致谢。

0 投票
1 回答
36 浏览

image-processing - Id : 表示 Rn 的恒等映射

我想知道Identity mapping Id的像素值;它通常用于图像配准。说h是变形;然后,---对于 Id+h--- 他们称之为扭曲的图像。但是,我不知道如何将 Id 嵌入到 matlab;它的价值是什么?它是单位矩阵吗?最好的

0 投票
2 回答
1921 浏览

python - 计算两个数组之间偏移的简单方法?Python

我有两个 dicom 图像,可以使用下面的代码计算图像的均方误差。但是,与另一张图像相比,一张图像可能存在固有的变化(如果我的成像仪稍微未对齐)。有没有一种简单的方法来计算两个 numpy 数组的移位?

我尝试将数组每个方向移动几个像素并计算最小 MSQ。但是,这还不够健壮。任何帮助或建议将不胜感激!

0 投票
1 回答
411 浏览

matlab - MATLAB等值面顶点坐标对应于体积

我有一个关于 MATLAB 的等值面函数的问题。

假设我有一个表示对象 A 的蒙版(一个 bw 体积)和一个表示对象 B 的表面(顶点和面)。我们知道对象 A 和对象 B 是同一事物的不同表示。因此,我们要注册它们。

现在,配准算法返回某个变换 T,从初始猜测 T' 开始。要手动评估初始猜测,我执行以下操作:

其中初始猜测是我手动修改的仿射矩阵,直到两个表面几乎重叠。此时,注册算法来了,并完成了剩下的工作。

问题是,当我将转换应用于点云(从对象 B 生成,请参见下面的代码)时,结果没有任何意义!就好像变换矩阵是随机生成的!

0 投票
1 回答
1071 浏览

image - 当我们有 tfrom 时如何获得位移场或控制点矢量?

我正在使用图像注册工具箱来注册两个 3D 图像。我将运动图像注册到固定图像。我使用“imregtform”来保存 tform。

例如,这是我的“tform”:

然后我使用“Imwarp”将运动图像转换为固定图像。在我的代码中,

'timg' 是源图像的传输图像。我检查了它,它工作正常,但我现在需要这个变换的控制点或位移场。换句话说,我需要知道每个体素(3d 像素)移动到哪个位置。如果我知道这一点,我可以绘制矢量场。在NiftyReg 包等可变形图像注册方法中,提供了控制点命令以方便用户使用,但我不知道如何在 Matlab 中的简单 3d 仿射中做到这一点。任何帮助将不胜感激

0 投票
1 回答
5018 浏览

image - 在 Matlab 中如何 imwarp 传输点?

我正在使用 Matlab 将图像转换为目标图像。我有几何变换(tform)。

例如,这是我的“tform”:

在 Matlab2013 中,可以使用 imwarp 轻松完成:

使用 imwarp 的结果是完美的(图像中的红色肺)

在此处输入图像描述

我需要知道 imwarp 是如何工作的,然后我编写了自己的函数

在此处输入图像描述

我的功能(更多信息)的结果与 imwarp 输出不匹配(红肺没有位于正确的位置),有人可以帮助我吗?