16

最近、C++で隠れマルコフモデルの実装を検討してきました。私は、C++で書かれた既存のHMMライブラリのどれかを、アクション認識(OpenCV付き)で を使用することができるかどうか疑問に思っていましたか?隠しマルコフモデル(C++)

私は「ホイールを再発明する」を避けることに夢中です!

音声認識に対応するように設計されていても、Torch3Visionを使用することはできますか? 、我々は デコード、推論、パラメータ学習(バウム=ウェルチアルゴリズム)のためにこれらのシンボルを使用することができます -

私の考えでは、我々は(関数kmeansクラスタリングベクトル量子化を使用して)シンボル/観察 に特徴ベクトルを変換することができれば、ということです。この方法では はOpenCVのTorch3Visionで動作します。

本当にありがとうございます。

答えて

11

HMMの背後にある理論については、http://www.ece.ucsb.edu/Faculty/Rabiner/ece259/Reprints/tutorial%20on%20hmm%20and%20applications.pdfをご覧ください。アルゴリズムを自分で実装するのは難しくありません。

Cベースのバージョンの場合、私はGoogle Summer of Codeプロジェクトで行った実装http://code.google.com/p/accelges/を見ることができます。

+0

コードが役に立ちました。したがって、ジェスチャ認識のために記述されたコードは、適切な種類の特徴ベクトルを使用する場合、コンピュータビジョン(行動認識のために)で使用することができますか? – garak

+1

それは正しいです。 –

5

数日前に書いたこの実装もあります。 OpenCVを用いた離散HMMのクラスです。あなたはここを見て可能性があります

https://sourceforge.net/projects/cvhmm/

あなたの特徴の量子化した後、あなたは1枚のラベルに各特徴ベクトルを変換し、離散HMMを訓練するために、ラベルのシーケンスを使用することができます。

+0

サフ。私はここでクエリ(http://stackoverflow.com/questions/34754602/hmm-for-image-sequence-classification-in-opencv-c)をライブラリの使用に関して、親切に助言することができますか? – Benson