2012-01-23 18 views
-1

ピクチャの各ピクセルごとにRGB値を取得しましたが、今ではRGBに基づいてヒストグラムをプロットすることにします。したがって、ピクセル値に応じて3行(青、緑、赤)が上下に移動します。しかし、それにもかかわらず、私はそれについて行く方法を見つける方法はありません。私が利用できる指針はありますか?ありがとうございました!ヒストグラムをC++のRGB値でプロットする

P.S:C++プロジェクトアプリケーションではなく、C++コンソールアプリケーションを使用しています。

編集:私は、Microsoft Visual Studio 2010の

Editを使用しています:私は、X軸とY軸をプロットしてみました。

私はYが一定に留まることができますが、X軸ではY軸を上っている間にX軸がRGB値を表示する必要があります。それを回避する方法はありますか?

申し訳ありませんが、私は混乱して聞こえる場合は、うまくいけば私は何を意味します。

+0

OpenCV、Magickなどのような意味でのLibaries申し訳ありませんあなたが私の意図を誤解している場合は、アプリケーション内の線でヒストグラムを描画する方法はありますか? – Newbie

+0

詳細を見ることなく...ちょうど3Dヒストグラム+カウント(4D合計)をプロットする方法を紙に描き、あなたの質問に合っていないと分かります。 – carlosdc

+0

私は現在Microsoft Visual Studio 2010を使用しています – Newbie

答えて

0

MoveToおよびLineToは、通常、WM_PAINTメッセージに応答して、Windowsで線を描画するために使用されます。それらを呼び出す前に、DCに適切な色のペンを選択します。

ヒストグラムの値をYスケールにスケーリングする必要があります。最大Y値を選択し、ヒストグラム値ごとにy = histogram[x] * height/maxYを使用します。

+0

こんにちはマーク、MoveToEx(hdc、0、0、NULL); y =ヒストグラム[x] * height/maxYはどういう意味ですか? 私はヒストグラム[x] =ピクセル値* 200 /最大高さを理解しています。 ヒストグラム法はどのように宣言しますか? – Newbie

+0

@Cnoob、私のヒストグラム[x]の使い方は、 '' Blue、Green、Red'のいずれかの 'x'の値でのピクセル数を意味していました。 –

+0

さて、それを持って、ありがとう! :) – Newbie

0

あなたの質問からわかるように、あなたはそのような作業の初心者です。このような場合、私はあなたのために仕事のほとんどを行ういくつかのサードパーティのGUIライブラリをお勧めします。最良の選択はおそらくQt by Nokia(Visual Studioアドインが利用可能です)であり、ヒストグラム、スペクトログラムその他多くのテクニカルプロットをプロットするのに最適ですQtに基づいてQWTと呼ばれるフリーライブラリがあります。少なくとも、あなたはソースコードを読んだり、自分のやり方で自分自身にインスピレーションを与えることができます。

もちろん、ネイティブWindows API(GDI+)を使用するとできますが、実際には苦痛です。

+0

ありがとうございますが、ごめんなさいビアコット。 私はサードパーティ製のGUIライブラリを使用することはできません(私が本当にしたいとは思っていますが)私の側の制限のために使用することはできません。私が実際に行うことができるのは、DrawlineでX軸とY軸を使ってヒストグラムをプロットすることです。 – Newbie

関連する問題