2
旧バージョンのOpenCVにはStream::enqueueUpload
という機能があり、これはCudaMem
(how to use gpu::Stream in OpenCV?との比較)と共に非同期にGPUにデータをアップロードするために使用できます。しかし、この関数はOpenCV 3では存在しなくなりました。CudaMem
クラスもなくなりましたが、HostMem
クラスに置き換えられているようです。OpenCV3:cv :: cuda :: Stream :: enqueueUpload()はどこにありますか?
OpenCV 3で非同期アップロードを実行する方法を教えてもらえますか?それはvoid GpuMat::upload(InputArray arr, Stream& stream)
方法を経由して、今行うことができます
おかげで、私はこれをしようとします! – user1488118
これはこれを行う正しい方法だと思われます。私はまだ知りたいことがあります: 'cv :: mat :: copyTo'を避けるために、イメージを' cv :: imread'でページロックされたメモリに_directly_読み込むことが可能ですか? – user1488118
'cuda :: HostMem'は、' MatAllocator'オブジェクトを返す静的 'getAllocator'メソッドを提供します。これを使って 'cv :: Mat :: setDefaultAllocator'メソッドを使って' cv :: Mat'のデフォルトアロケータをオーバーライドすることができます。その後、 'cuda :: HostMem'の代わりに' cv :: Mat'オブジェクトを使うことができます。 – jet47