【问题标题】:Fast algorithm for multiple line integrals over 2D discrete function二维离散函数上多线积分的快速算法
【发布时间】:2010-08-02 15:34:50
【问题描述】:

好的,我正在寻找类似于积分图像(面积求和表)的东西,用于加速窗口上的积分计算。

我有一个图像 I 和它的梯度图像 G。我想计算 G 绝对值图像中任意两个点 a 和 b 的直线积分。显然我可以跨过线 (1-t )a + t*b, t in [0, 1] 并在给定正确的 t 步长的情况下求和。但是,我想这样做几百万次,所以我想要一些加速结构,最好不需要我为每一对 (a, b) 运行一个循环。

有没有人知道现有的算法来完成这种事情?

【问题讨论】:

    标签: math image-processing integration


    【解决方案1】:

    你似乎知道你的数学,所以我建议adaptive quadrature 算法。

    它最常用于有效地计算简单的 2D 积分,但您也可以将它用于您正在处理的工作。

    【讨论】:

      【解决方案2】:

      我认为答案是否定的。如果您要整合梯度而不是其绝对值,那将是微不足道的。

      不过,我还有另一个问题:您如何在 G 上进行插值?您将拥有像素值,并且用于计算积分的采样点通常不会完全落在像素上。 “选择最接近的像素值”或“在四个邻居之间插值”都可以。后者更精确,前者更快。

      自从 |G|可能不顺利,您将别无选择,只能使用(昂贵的)梯形规则进行积分。

      编辑:查看Bresenham's algorithm。由于您不会进行插值,因此它应该提供有用的优化。

      【讨论】:

      • 是的,这就是我害怕的。谢谢 Alexandre,我会在一两天内不回答它,以防有人知道一些疯狂的算法技术。至于你关于在 G 上插值的问题,这不需要是一个非常精确的计算,所以我打算只对点之间的线进行光栅化,并对所有线像素的值求和。
      • 梯形规则不一定很昂贵。请参阅我的帖子以获得良好的优化。
      • @Stargazer:即使做得正确(例如自适应),它也会比 Gauss-Legendre、Simpson 或 Romberg 更昂贵,因为它缺乏规律性。这就是我所说的“昂贵”。
      猜你喜欢
      • 2011-12-31
      • 2020-11-01
      • 1970-01-01
      • 2011-09-07
      • 2013-03-25
      • 1970-01-01
      • 2020-07-16
      • 2019-08-02
      • 2011-08-27
      相关资源
      最近更新 更多