ページ 11

画像の色認識

Posted: 2009年4月04日(土) 21:25
by ice
いつもお世話になっております。iceです。

画像の色を認識して当たり判定を作ろうと思うのですが、
「画像内にある黒色(0,0,0)は1、そのほかの色は0」
という判定を作る場合どのように書けばよいでしょうか。
ご教授よろしくお願いします。

Re:画像の色認識

Posted: 2009年4月05日(日) 01:50
by lbfuvab
せめて環境をお書き下さい。

Re:画像の色認識

Posted: 2009年4月05日(日) 07:59
by ice
環境というと・・・
こういうのでいいのでしょうか。

Microsoft Visual C++ 2008
でDXライブラリで作成中です。

Re:画像の色認識

Posted: 2009年4月05日(日) 09:42
by Dixq (管理人)
以前まではちょっとめんどくさかった作業もVUで楽に出来るようになりました。
DXライブラリのリファレンスで
「ドット単位で画像にアクセスしたい関係」
というとこに紹介されている関数がありますね。
それを使う事で実現出来ますよ。

Re:画像の色認識

Posted: 2009年4月09日(木) 20:59
by ice
返信が遅くなりました。
リファレンスの項目を見て色々考えたのですが、
まだうまく出来ません。
ヒントをいただけないでしょうか。

Re:画像の色認識

Posted: 2009年4月09日(木) 23:59
by Valhalla
まず、画像を配列に読み込んでください。
unsigned char *img
そして、その配列に対して、for文でループまわしてください。
せめて画像形式を教えて下さい BMPですか?

Re:画像の色認識

Posted: 2009年4月10日(金) 02:19
by SooA
まずイメージサイズによる矩形範囲で判定を行う
プログラムを組んでみましょう。

それが出来たら、接触している場合の処理として、
両者の重なっている位置とサイズを求め、
接触部分の透過色以外が重なっているか判定する
といった流れになります。

Re:画像の色認識

Posted: 2009年4月10日(金) 21:21
by ice
Valhalla様
画像形式はpngです。

ヒントありがとうございます。
ちょっと考えて見ます。