【问题标题】:CUDA equivalent of estimateRigidTransform in OpenCV 3CUDA 相当于 OpenCV 3 中的 estimateRigidTransform
【发布时间】:2016-06-14 08:03:07
【问题描述】:

我正在使用 OpenCV 进行视频稳定项目,并且我的 CPU 实现正在运行,但性能需要改进,因此我正在尝试将大部分处理转移到 GPU。

目前的实现主要使用这四个OpenCV函数:

  • cv::goodFeaturesToTrack
  • cv::calcOpticalFlowPyrLK
  • cv::estimateRigidTransform
  • cv::warpAffine

到目前为止,我在 GPU 上找到了以下等价物:

  • cv::cuda::createGoodFeaturesToTrackDetector
  • cv::cuda::SparsePyrLKOpticalFlow
  • cv::cuda::warpAffine

是否存在与 estimateRigidTransform 等效的 CUDA?

【问题讨论】:

  • 我不确定你是否想要一个。它在 cpu 上应该非常快,并且将其加载到 GPU 的开销可能会使它因点数少而变慢。 estimateRigidTransform 使用最小二乘法,可以使用 cuda cuSolver 计算。如果你真的想在 GPU 上实现它应该不难
  • 嘿@taarraas 感谢您的评论。我正在将视频稳定性重写为在 GPU 上 100%,所以我不想下载/上传点以在 CPU 上运行 estimateRigidTransform。如果 GPU 上没有现有的实现,那么我会在 CUDA 中编写它,只是想我会问一下,以防我错过了什么:)

标签: c++ opencv opencv3.0


【解决方案1】:

OpenCV 没有在 CUDA 上实现 estimateRigidTransform。 github上有一个基于opencv的项目,具有计算单应性和估计刚性变换的功能:https://github.com/danielsuo/cuSIFT

这是您需要的功能: https://github.com/danielsuo/cuSIFT/blob/master/extras/rigidTransform.cu

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-01-27
    • 2021-12-04
    • 1970-01-01
    • 2023-04-04
    • 2012-08-20
    • 2014-07-15
    • 2020-11-18
    相关资源
    最近更新 更多