2011/02/19

詳解OpenCVの練習問題(3)

詳解OpenCVの練習問題を解いていきます。
(3章の練習問題)

ソースコードは別館の方に保存してあります。


5. ROIの練習。 210x210 のシングルチャネルのバイト画像を作成します。
それを0に設定する。ROIとcvSet()を使って、値が増加するピラミッドを作成します。
ピラミッドの境界の幅は10ピクセルで、内側の境界になるたび値が10ずつ増加します。

作成した画像


















6.一つの画像に対して、複数の画像ヘッダを使用します。
100x100以上の画像を読み込みます。
画像ヘッダを新たに2つ作り、orignin depth,チャネル数,widthstepを
読み込んだ画像と同じに設定します。
2つの画像ヘッダのwidthは20、Heightは30に設定します。
最後に、画像データのポインタを、(5,10)と(50,60)をさすように設定します。
新しい画像ヘッダをcvNotに渡します。
その後、画像を表示します。



作成した画像













7.cvComp()を使ってマスクを作る練習をします。
画像を読み込み、cvSpritを使用して3チャネルに分離します。
a.赤の画像を表示します。
b.緑のプレーン画像の複製を2個作ります。(clone1 clone2)
c.緑のプレーン画像の中にある、最小値と最大値を見つけます。
d.clone1の値をthreash(unsigned char)((最大値-最小値)/2)に設定します。
e.clone2を0に設定し、cvCmp(green_image,clone1,clone2,CV_CMP_GE)を使って結果を表示します。


元画像














緑チャネルの画像














マスクの画像














ではまた。

0 件のコメント:

コメントを投稿