はじめに
今回は、スクレイピングして、その抽出した画像を表示させ、編集したいと思います。
使用したライブラリ
urllib.request
ウェブ上にある画像をダウンロードするために使用しました。
matplotlib
画像を出力するのに使用しました。
本題
はじめに、抽出したい画像を決めます。
今回は、ヤフーのトップページに表示されていた画像にしました。
本当は、有名人の画像でも抽出しようと思ったのですが、ブログに載せると肖像権が絡んでくるので使用できません。
解説としては、 urllib.requestをインポートしています。
これは、urlretrieve()関数を使用することで、画像をダウンロードしています。
また、axisの表示をオフにしました。オフにしない場合、画像の左と下に数値が表示されます。したがって、画像だけ表示させたい場合は、オフにした方がいいと思います。
次に、OpenCVというオープンソースのライブラリを使って、画像をインラインに表示させています。
OpenCVというライブラリは、画像形式の変更や顔認識や文字認識などの処理にも使用されています。
今回は、そのライブラリを使って画像をリサイズしていきたいと思います。
とりあえずは、桜のところだけにしたいですね。
したがって、そこだけを切り取って、表示させたいと思います。
うーん
微妙ですね(笑)。
OpenCVは、座標系を利用して、画像処理します。
したがって、画像の左上の座標が(0,0)となります。そして、右下に行くほど値が大きく増えていきます。
桜だけを表示させるとしたら、[100:300,100:200]くらいが一番いいかもしれないですね。
おわりに
やっぱり、サンプルの画像は他から取ってくればよかったのかもしれませんね(笑)。
そもそも、一枚の画像を処理するということ自体、わざわざpythonで取り組むべきことじゃないですよねorz