2017-01-18 24 views
0

opencv document about gpu::orbgpuMatのデータにどのようにアクセスできますか?

私は、GPUで画像のキーポイントを取得したい:: ORBとキーポイントの種類は、私が文書としてgpuMatのデータへのアクセスを取得しようとしましたgpuMat.Thenです。

私は以下のコードで試してみました:

cout<<keypoints.ptr<float>(3)[4]<<endl; 

(キーポイントはgpumatである)が、私は「セグメンテーションフォールト(コアダンプ)」を得た私たちはgpuMat内のデータを変更することができないことを知っていました。どうすればgpuMatでデータを取得できますか? OpenCV documentationcv::cuda::GpuMatによれば

答えて

2

である:参照カウントとGPUメモリため

ベースストレージクラス。そのインターフェースは、以下の制限付きマットインタフェース一致します(GPU上参照はCPUのために有効ではないため)

  • なし、任意の寸法のサポート(2Dのみ)
  • そのデータへの参照を返していない機能を
  • なし式テンプレート技術サポート

ptrは、デバイスメモリへのポインタを返します。ホストからデバイスメモリを直接読み取ることはできません。 operator <<のようなホスト機能でデータを使用するには、GpuMat::download(cv::Mat& m)を使用してホストメモリにデータをコピーする必要があります。

関連する問題