3.1を使って画像処理を行います。対象となる画像をグレースケールに変換し、閾値処理により画像セグメンテーションを行います。6行目のimreadメソッドで画像を読み込みます。OpenCVでは、画像は3次元のNumPy配列で表されています。1つ1つの画像は、ピクセルの行列で構成され、各ピクセルはその色を表す値の配列によって表現します。OpenCVの場合、画像はBGRフォーマットで読み込まれる初期設定となっていますが、Matplotlibの場合はRGBで読み込まれます。9行目のcvtColorメソッドで画像をグレースケールに変換します。グレースケール画像は、最も暗い色(黒)を表す0、最も明るい色(白)を表す255により、ピクセルの明るさを表現する256階調のスケールで、1つの色チャンネルしか持っていない2次元の配列で示します。12行目のthresholdメソッドで、ピクセルのチャンネル値がある閾値を超えた場合は、画像の各ピクセルを白いピクセルに、超えなかった場合は、黒いピクセルに置き換える閾値処理を実行します。閾値処理は画像セグメンテーションの一番簡単な方法で、興味のある特徴ごとに分割し、画像情報を集め、分析を容易にします。15行目のimwriteメソッドで、作成した画像を保存します。作成した画像処理プログラム「imgproc.py」を次のコマンドで実行します。imgproc.py元の画像を次に示します。画像処理プログラム「imgproc.py」を使って、画像処理した画像を次に示します。