python中简单的2D图像注册
imgreg2D的Python项目详细描述
图像2D
简单的基于napari的python应用程序,用于将2D图像注册到模板。在
安装
您可以使用以下方法直接从Pypi安装代码:
pip install imgreg2d
或者,您可以直接从安装:
^{pr2}$使用
要将图像注册到模板,用户需要指定一组点(大于3,理想情况下至少6个)的位置 参考和注册图像。这些数据然后被用来计算仿射矩阵,然后用来 扭曲注册图像,使其与模板匹配。在
有关如何执行OM图像注册的示例,请选中example.py
或阅读以下内容:
第0步-导入函数并获取图像
from imgreg2D.register import register
from imgreg2D.points import get_fixed_points
reference = 'media/original.jpg' # <- path to reference image
registering = 'media/rotated.jpg' # <- path to registering image
当我们调用register
时,我们必须传递引用并注册图像。
这可以通过像上面的代码一样传递文件路径或者通过传递np.ndarray
来完成。在
步骤1-定义参考图像上的点
要定义用于在参考图像(fixed_points
)上注册的点的位置,可以使用
get_fixed_points
。如果您已经知道这些点的位置(例如,因为您已经使用了相同的点
模板图像),您可以跳过此步骤。在
points = get_fixed_points(reference)
单击所有需要的点后,按q
关闭查看器并继续下一步。在
步骤2-定义注册图像的点
现在,您必须单击注册图像中相应的一组点,以便 可以计算仿射变换。记住,点的定义顺序很重要:第一个点 在步骤1中单击的内容必须与现在要定义的第一个点相对应。因为这个原因,给你看了一份副本 你的参考图像的位置和顺序的固定点。一旦你定义了所有的注册点 编辑器将自动关闭,分析将继续进行下一步。在
要开始定义注册点,请调用:
register(reference, registering, fixed_points = points)
注意:如果您已经有一个转换矩阵(例如,从上一次运行的注册步骤),您可以跳过这一步。 要跳过步骤2,只需致电:
warped_img, warp_mtx = register(reference, registering, warp_mtx = warp_mtx)
注2:调用register时,您可以决定是否要保存扭曲矩阵。这可以用来节省时间 下次需要注册图像时。在
步骤3-交互式优化
一旦定义了注册点的位置,代码将计算仿射变换(warp_mtx
)和
注册您的图像。
此时,另一个napari查看器将打开,您可以使用该查看器使用
以下热键:
############################################################
## REFINEMENT HOT KEYS ##
## ##
## TRANSLATIONS ##
## ------------------------------------------------ ##
## 'a' -> negative x translation ##
## 'w' -> positive y translation ##
## ##
## 's' -> negative y translation ##
## 'd' -> positive x translation ##
## ##
## SCALING ##
## ------------------------------------------------ ##
## 'r' -> positive x scaling ##
## 'f' -> negative x scaling ##
## ##
## 't' -> positive y scaling ##
## 'g' -> negative y scaling ##
## ##
## SHEARS ##
## ------------------------------------------------ ##
## 'z' -> positive x shear ##
## 'x' -> negative x shear ##
## ##
## 'c' -> positive y shear ##
## 'v' -> negative y shear ##
## ##
############################################################
一旦您对结果满意,请按y
完成分析(如果您不满意,
按n
,您可以从步骤2)再试一次。
在第三步之后,您将得到您注册的图像(warped_img
)和仿射变换矩阵(warp_mtx
),享受吧!在
信用与贡献
原始代码是Common-Coordinates-Behaviour的一部分(作者:philipshamash)。该代码经过修改,可以与Napari一起使用。在
欢迎投稿!只需发送一个公关或打开一个问题。在
- 项目
标签: