JavaCVでテンプレートマッチングを高速化したいのですが。
検索対象の画像のサイズが大きいと、matchTemplate関数の処理に時間がかかる
OpenCVの公式サイトから入手できる公式のJavaラッパーを使用し、特定の画像の断片が存在するか検査するプロクラムを作成していますが、検索対象の画像が画素数の多い大きなサイズになるほど著しく検出結果の取得に時間がかかるようになってしまいました。
そこで、C++版の資料からGPGPUによる加速を期待できるUMat
やoclMat
、gpuMat
といったクラスを利用できないかと思案しておりましたが、どうやらJava版では提供されていなように見受けられました。
念のためPython版も確認してみましたが、こちらも状況は同じのように思われ、あわせて市販の書籍も参照してみましたがやはり出来ないという結論に至りました。
それではと思い立ち、Bytedecoで配布されている、JavaCVという別のパッケージへ乗り換えることにいたしました。
差し当たり、事前準備として日本語での解説やサンプルが入手できないか、あれこれ調べてみたのですが、どうもFFmepgによる動画編集のほか、画像変換や顔認証といったものが中心のようで、目的のテンプレートマッチングの高速化に関するものを見つけることが出来ませんでした。
まことに勝手ではございますが、どなたかにご指南いただけると、大変幸いと存じます。
参考にした資料
Qiita
WEB
書籍