2016-03-24 75 views
0

シーンの変化を検出するためにビデオのフレームのヒストグラムを比較する必要があります。Javaのopencvによる画像のヒストグラム

Imgproc.calcHist(matList,new MatOfInt(0),new Mat(),histogram,new MatOfInt(25),ranges); 

誰かが説明することができます:私は別の質問(私は、JavaとEclipseで働いている)で提案されているように、これらのパラメータでのOpenCV 3.1.0のライブラリ方法calcHist Imgprocを使用しようとしました私はすべてのパラメータの意味ですか?これは、コンパイルが、私は、たとえば、出力の意味を理解していない :

Histogram frame 0=[684213;291263;126683;78313;50989;30860;93541;76835;154938;55532;38304;93131;479949345;34612;34889;39014;25014;13223;14521;9534;5310;3310;2650;19581] 

これの意味は何ですか?ヒストグラムをプロットするにはどうすればよいですか? は、詳細なパラメータの説明については非常に多くの

+0

ライブラリのドキュメントには正確に説明されています。例からパラメータをコピーするだけではありません。それぞれのドキュメントをお読みください。ただ使ってはいけません。わかる! http://docs.opencv.org/2.4/modules/imgproc/doc/histograms.html – Piglet

+0

ありがとうございます@ピグレット!私はすでにドキュメントを読んでいますが、私が探しているものは見つかりませんでした。だから私はここで尋ねる。さらに、C++やPhytonのドキュメントがありますが、Javaを使用しています –

+0

すべてのケースの99%でパラメータの説明をJavaに適用できます。 – Piglet

答えて

1

をあなたに感謝を参照してください:。 http://docs.opencv.org/3.1.0/d6/dc7/group__imgproc__hist.html#ga4b2b5fd75503ff9e6844cc4dcdaed35d あなたは、私は、パラメータはintと確信しているだけでJavaへの型と、そのようなを翻訳し、名前を見て(JavaへのC++記述を適用することができます数もJavaで意味を行います:)

あなたの関数呼び出し

Imgproc.calcHist(matList,new MatOfInt(0),new Mat(),histogram,new MatOfInt(25),ranges); 

matListでの画像のヒストグラムを計算します。ピクセルは無視されません(空のマスク)。チャネル0のみを考慮します。ヒストグラムには25個のビンがあります。あなたの範囲入力はわかりません。

得られる結果は、25個のビンを備えたヒストグラムです。値は各ビンのヒストグラム値です。

ヒストグラムが何であるか分かりません。だから私はそれについて何かを読むことをお勧めします。 (少なくともウィキペディア)

そして、これを読んでください:ここではwww.google.com

あなたがキーワードを入力することができますし、彼らはそれに情報を見つける: は

も、このウェブサイトをご参照ください。試してみる。入力:プロットヒストグラムOpenCV

関連する問題