半透明人間

2007年度 長岡技術科学大学オープンハウス
半透明人間
小山高等専門学校
電気・情報工学科
4年 PHAN TUAN TAI
実習内容
• Matlabの基本的な使用法。
• Matlabを使用して半透明人間プログラムの作
成。
• 半透明画像の応用。
プログラムの作成手順
• 背景、人物の取り込み
• 人物画像の抽出
• 関数autothを用いて閾値の決定
• 二値化
• ノイズ除去
• 人物画像と背景画像の合成
背景、人物画像の取り込み
Fig.1 人物画像
Fig.2 背景画像
人物画像の抽出
• (差分画像)=(人物画像)-(背景画像)
Fig.3 差分画像
二値化
• 関数autothを用いて閾値で二値化。
Fig.4 二値化
ノイズ除去
• Medianフィルタとクローズ処理を使い、人物
領域のノイズを除去する。
Fig.5 ノイズ除去前
Fig.6 ノイズ除去後
半透明画像の作成
• 二値画像で0ではないところの人物画像を1/2、背景画像を
1/2にして合成する。
Fig.7 半透明画像
発展課題
• 1.透明度の変化。
• 2.伝送量の比較。
透明度の変化
伝送量の比較1
撮影画像と比べて、人物画像のサイズが小さいである。 伝送量が減らし。
伝送量の比較2
透明度が大きいほど人物画像のサイズが大きくになる。
2007年度 長岡技術科学大学オープンハウス
画像からの顔領域の摘出
小山高等専門学校
電気・情報工学科
4年 PHAN TUAN TAI
実習内容
• Matlabの基本的な使用法。
• Matlabを使用して顔抽出プログラムの作成。
プログラムの動作内容
• ある画像から肌色の画素を抜き出す(HSVとYCbCr
色空間を使って、肌色部分を抽出)。
• つながっている画素を1つ塊としてまとめる。(ラベリ
ング作業)。
• それぞれの塊を形、大きさなどにより顔領域を選別
する。
処理I:肌色領域の摘出
肌色領域認識:
• HSV色空間に変換。
• Hの値の6°~38°で収まる「肌色」 を保存
->hadaHSVfilter
• YCbCr色空間に変換。
• Y,Cb,Crの値を変えながら肌色部分を抽出するのに
最も適した値の範囲を決定。
->hadaYCbCrfilter
• hadafilter = hadaHSVfilter & hadaYCbCrfilter
処理1:肌色領域の摘出
撮影画像
YCbCr画像
HSV画像
YCbCr肌色領域
HSV肌色領域
合成画像
処理2:ラベリング
ラベリング変換前
ラベリング変換後
• (L,N)=bwlabel(A)という関数を使い、連結さ
れた領域の数をNに出力する。
処理3:顔領域の摘出
• ラベリングされた塊の中で一番大きい塊を見
つければ、それが顔領域であることが多い。
ラベリング変換後
顔領域画像
処理4:画像抽出
• 顔領域だけを2値(0,1)で表した結果を用い
て、元画像から顔領域を抜き出す。
撮影画像
顔領域
顔領域画像
顔摘出の結果
まとめ
• Matlabを使って、画像処理のテクニットを学
び、とても有意義でした。
• この研修は先輩が優しいし、丁寧に教えて頂
きました、楽しかった。