2016-06-14 16 views
3

OpenCVを使用してビデオの安定化プロジェクトを進めていますが、CPUの実装は機能していますが、パフォーマンスが向上する必要があるため、ほとんどの処理をGPUに移行しようとしています。OpenCVのestimateRigidTransformに相当するCUDA 3

現在の実装は、主にこれら四つのOpenCVの関数を使用しています。

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

これまでのところ私は、次の同等物を見つけましたGPU:

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

estimateRigidTransformのCUDA相当はありますか?

+0

https://github.com/danielsuo/cuSIFT

は、ここであなたが必要とする機能です。それはCPU上でかなり高速でなければならず、GPUにロードするためのオーバーヘッドは、ポイントの数が少なければ遅くなる可能性があります。 estimateRigidTransformは、最小二乗法を使用します。これは、cuda cuSolverを使用して計算できます。あなたが本当にGPU上でそれをしたいのであれば実装するのは難しいはずはありません。 – taarraas

+0

ちょっと@taarraasがコメントしてくれてありがとう。私はビデオスタビライズをGPUに100%書き直しているので、CPU上で 'estimatedRigidTransform'を実行するためにポイントをダウンロード/アップロードする必要はありません。 GPUに既存の実装がない場合は、CUDAで記述します。何かが見逃してしまった場合に備えて頼むと思っただけです:) –

答えて

関連する問題