首页 > 解决方案 > 图像变形场的 B 样条插值

问题描述

我目前正在使用 Python 注册一些图像,但要创建自己的工具来执行此操作,因为当前的注册技术不适合我的目标。我想估计变形场的 b 样条曲线,但在将我读到的任何关于它的内容扩展到 2d 图像时遇到问题。

我已经有两个图像之间匹配的点列表,以及位置处的变形场......我想使用 b 样条将变形场推广到图像中的每个点。

# Find control points in the image
# p is a vector 2xnumber of control points
p = find_control_points(live_im)

# Find deformation of control points
# d is 1xnumber of control points
d = det_best_match(mask_im, live_im, p)

我有一个 NxN 的图像,控制点 p 是图像中的位置。我正在考虑使用 scipy.interpolate.BSpline 但你已经需要 t, c, k 来提供它。所有的例子都是 1d 的,我想我有一个 3d 的例子。我终其一生都无法弄清楚关于数学的任何事情。有没有人用过这个或者可以看看这个功能是否可以实现?

标签: pythonimageregistrationsplinebspline

解决方案


对于 B 样条曲线/曲面,控制点不是曲线/曲面上的点。您确定仅通过将失真图像与原始图像进行比较就已经了解它们吗?


推荐阅读