math - 二维离散函数上多线积分的快速算法

标签 math image-processing integration

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

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

有谁知道现有的算法可以完成这类事情吗?

最佳答案

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

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

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

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

关于math - 二维离散函数上多线积分的快速算法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3389261/

相关文章:

c# - 找到两条线之间的交点

arrays - 解析 JSON 来做数学题?

java - Java中的人脸识别/处理

python - 无法使用 sort_contors 构建七段 OCR

wordpress - 与 Wordpress 博客集成的最佳论坛软件是什么?

PHP + Quickbook 在线版(API 集成)?

math - float 学坏了吗?

Python 和 OpenCV。如何检测图像中的所有(填充)圆形/圆形对象?

admob - SwiftUI 中的 Google AdMob 插页式广告

java - 生成无限的元组流