ITいろいろ

プログラミングやクラウド、データ解析など、ITにかかわることをいろいろと書いています。

画像処理

色調で簡易的な物体検出

今日は色調を見て赤色のものを検出するプログラムを紹介します。 色で検知するにはHSVを利用します。こちらもまた後程紹介します。 コード紹介 出力結果 少し解説 HSVについて 関数 flatten() 多次元配列を一次元配列に変換 mean() 平均値の計算 cv2.rectang…

OpenCVで動画を扱う

OpenCVは動画の扱いも比較的楽に行えます。 少しずつ動画処理の記事も増やしていこうと思います。 コード紹介 出力結果 少し解説 少し改造 コード紹介 # import import cv2 import time # 動画データを取り込む # 0以上の数字:Webカメラを入力とする(どの…

画像の配列をいじって色調を変える

OpenCVのcv2.imreadで画像を取り込むと、画像1ピクセルごとの色情報が配列で読み取られます。 今回はそれを活用して、色調を変えてみます。 画像の配列について 赤要素をなくす(0にする) コード紹介 出力結果 少し解説 応用 縦0~100ピクセルだけ変える 縦0…

OpenCVでの画像のリサイズとpyplotで複数画像を表示

今回はOpenCVで画像をリサイズしてみます。 そして、今まではOpenCVの画像出力cv2.imshowを使っていたのですが、pyplotを使って複数の画像を一度に表示する方法も記述します。 コード紹介 出力結果 少し解説 リサイズcv2.resizeについて pyplotについて 注意…

OpenCV/ガウシアンフィルタで画像をぼかす

今日はぼかしについて記述していきます。 コード紹介 出力結果 引数の解説、変更 終わりに コード紹介 # インポート import cv2 # 画像ファイルの読み込み img = cv2.imread("Lenna.jpg") # ガウシアンフィルタでぼかす img_blur = cv2.GaussianBlur(img, (9…

OpenCVのエッジ検出の方法をいくつか紹介

今回はエッジ検出です。Pillowもエッジ検出の方法はあるようですが、いったんOpenCVを使った方法をまとめたいと思います。 エッジ検出の方法 Cannyを使ったエッジ検出 コード紹介 出力結果 少し解説 その他のエッジ検出 ラプラシアン ソーベル エッジ検出の…

OpenCV、Pillowそれぞれでグレースケール変換

前回までは画像の回転について書いていきましたが、今回は色調についても触れていきたいと思います。 単純な画像はPillowの方が使いやすいのですが、今後機械学習などを使うことを考えるとOpenCVの使い方も覚えた方がよいと思いますので、両方のやり方を記述…

Pillowを使ってもっと自由に画像を回転

前回はOpenCVを使って画像を回転してみました。 ただ、回転は90度、180度、270度できないため、もっと自由に回転ができるPillowというライブラリを使ってみようと思います。 コードの紹介 出力結果 その他rotateのオプション 全画面表示 回転軸を変える 画像…

OpenCVで画像を回転(90度、180度、270度)

画像を回転するには、OpenCVのrotateを使います。 コードの紹介 出力結果 その他の角度で回転 コードの紹介 # インポート(OpenCVを使うよ、という宣言) import cv2 # 画像ファイルの読み込み img = cv2.imread("Lenna.jpg") # 時計回りに90度回転 img_90 =…

画像処理ライブラリのOpenCVをPythonで使う

今日は画像処理に取り組みます。 ライブラリについて OpenCVのインストール ついでにpipをアップグレード OpenCVで画像を表示してみる。 少し解説 おわりに ライブラリについて Pythonにはいくつものライブラリ(何かの処理をするためのまとまった関数のよう…