OpenCVについて

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
smile

OpenCVについて

#1

投稿記事 by smile » 11年前

現在, WebカメラとOpenCVを使用してプログラムを作成しています.

cvFindContours関数で輪郭抽出を行い, そして

cvDrawContours関数でその輪郭をRGB値を指定して描画します.

このとき,
cvDrawContours(contour,find_contour,cvScalar(0, 0, 255),cvScalar(0, 0, 255) , CONTOUR_MAX_LEVEL,CV_FILLED,CV_AA,cvPoint(0,0));
のように第6引数を〖CV_FILLED〗とすることで, 輪郭線内を塗りつぶすことができます.
この場合は赤で塗りつぶしています.

ここで疑問なのですが,

赤く塗りつぶした個所のRGB値を調べたところ, もとの背景画像のRGB値のままでした.

塗りつぶした個所のRGB値を, RGB(255, 0, 0)としたいのですがどのようにすればいいのでしょうか.


ご回答よろしくお願いします.

アバター
usao
記事: 1889
登録日時: 12年前
連絡を取る:

Re: OpenCVについて

#2

投稿記事 by usao » 11年前

赤く塗りつぶした結果の画像を表示して目視した場合,
その箇所は赤くなってますか?
なっているなら,その位置の画素値を取得すれば当然赤を示す値が得られるハズですので

>赤く塗りつぶした個所のRGB値を調べたところ
↑この処理が何か間違っているのではないでしょうか

smile

Re: OpenCVについて

#3

投稿記事 by smile » 11年前

熟練のプログラマーさん
ご回答ありがとうございます.

目視したところ, 赤く塗りつぶしができているのは確認しました.

RGB値を調べる方法ですが, マウスを動かしたときそのマウスが指し示す画素のRGB値を出力する

という方法で行っています.

塗りつぶしただけで画素のRGB値そのものは変わっていないのかもしれませんし,

ご指摘通りRGB値を調べる方法が間違っているのかもしれません・・・

再度参考書等を見ながら取り組みたいと思います.ありがとうございました

閉鎖

“C言語何でも質問掲示板” へ戻る