【问题标题】:Are there predefined functions in scipy/numpy to shift/rotate an image that use sinc-interpolation instead of spline interpolation?scipy/numpy 中是否有预定义的函数来移动/旋转使用 sinc 插值而不是样条插值的图像?
【发布时间】:2014-02-15 10:36:41
【问题描述】:

我希望问题标题总结得很好。我有大量要注册的图像。为此,我需要移动/旋转图像。到目前为止,我已经使用 scipy.ndimage.rotate 和 scipy.ndimage.shift 来完成这项任务。然而,一些图像具有高阶样条插值失败的尖锐强度特征(即产生振铃伪影)。低阶(0 或 1)样条不能很好地保留图像数据。

scipy/numpy(或原则上任何其他包)中是否有使用 sinc 插值 (http://en.wikipedia.org/wiki/Whittaker%E2%80%93Shannon_interpolation_formula) 的内置任务?

我自己已经安静地搜索了一段时间,但没有想出任何简单的解决方案,如果我错过了一些明显的事情,请指出正确的方向。

【问题讨论】:

    标签: python image-processing numpy scipy image-rotation


    【解决方案1】:

    我建议使用来自imageMagik 的命令行convert,您可以转换整个批次并控制插值方法 - 可用的方法有:

    整数 - 左上角像素的颜色(地板函数)。

    nearest-neighbor - 离查找点最近的像素(舍入函数)

    average - 周围四个像素的平均颜色

    bilinear - 像素的双线性插值(默认)

    mesh - 将区域划分为两个平面三角形插值

    bicubic - 周围 16 像素的拟合双三次脊柱

    spline - 直接样条曲线(颜色模糊)

    过滤器 - 使用调整大小过滤器设置

    【讨论】:

    • 感谢您的建议,但如果可能的话,我更喜欢原生 python 解决方案,如果我没有遗漏某些东西(这是可能的),这些插值方法也不包括 sinc 插值
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-11-03
    • 1970-01-01
    • 2021-11-22
    • 1970-01-01
    • 2019-08-05
    • 1970-01-01
    • 2013-10-24
    相关资源
    最近更新 更多