Python OpenCVの基礎 もうちょっとNumpyでROI
ROI(region of images) を学んでいきます
こんな感じのことをやってみます
つまり領域のことですね。画素単位でちまちま設定したりするのではなく、画像を一つの矩形として、一気に塗りつぶしたりしてみようというのが今回の目的です。
for文を使って座標を指定して画素に対して1つずつ色設定、というやり方もあるでしょうが、一括でできる部分はサクッとやってしまいましょう。
今回はコチラを参考にさせていただきました。ありがとうございます。勉強になりました。
OpenCV: Basic Operations on Images
Numpyのndarrayに画素を適当にいれて、それを画像として保存する
zeros
https://docs.scipy.org/doc/numpy-dev/reference/generated/numpy.zeros.html#numpy.zeros
Return a new array of given shape and type, filled with zeros.
zerosはNumpyのメソッドで、任意の大きさと型でできた画像のための配列をつくゼロで初期化してくれます。
zerosで初期化した配列に色を設定する。
imgはもちろんnumpy.ndarray型になっています。 3を指定したのでimgは3次元の配列で、それぞれにBGRの値を入れていくことができるわけですね。 そのひとつひとつの画素はuint8で作っています。ここまで指定できるんですね。
ウインドウ表示
zerosで初期化したままの配列
色を配置してみた
なんか荒くてすみません。。。。
こんなこともできるみたい
ジョン・レノンの顔をコピーして、ごめん、リンゴの顔の上にコピーしてみたいと思います。 今回はあらかじめフォトショップなどで座標を確認しています。
今後学習が進めば、顔を検出してその部分をコピーするという離れ業が可能になることでしょう
元画像
結果
かえすがえす、荒くてすみません。。。。
若干色が変わっていますよね? 画像保存の際に指定するオプションなどがあるのでしょうか???
今回はここまで!
詳解 OpenCV ―コンピュータビジョンライブラリを使った画像処理・認識
- 作者: Gary Bradski,Adrian Kaehler,松田晃一
- 出版社/メーカー: オライリージャパン
- 発売日: 2009/08/24
- メディア: 単行本(ソフトカバー)
- 購入: 17人 クリック: 272回
- この商品を含むブログ (34件) を見る
Pythonによるデータ分析入門 ―NumPy、pandasを使ったデータ処理
- 作者: Wes McKinney,小林儀匡,鈴木宏尚,瀬戸山雅人,滝口開資,野上大介
- 出版社/メーカー: オライリージャパン
- 発売日: 2013/12/26
- メディア: 大型本
- この商品を含むブログ (12件) を見る