Pythonの基本的な知識から応用・実践的な内容へと橋渡しします。
【Python】MacにAnacondaでOpenCVを導入する方法
MacにAnacondaをインストールしてPythonを利用している状況で、画像処理のOpenCVライブラリーをインストールする方法をまとめました。PythonでOpenCVを利用する環境構築が上手く行かない人も多くいるようですので、ここでは一例としての掲載です。
【Anaconda】condaコマンドで仮想環境を構築する方法
Anacondaのcondaコマンドで仮想環境を構築する方法を扱います。Python のバージョンによってはライブラリが対応していないことがあり、バージョンを落として作業する必要がある場合に、この仮想環境を構築しての利用が考えられます。
【Python】Pythonを使って電子メール(Gmail)を送信する方法
Pythonを使って電子メールを送信する方法について扱います。ここで利用する電子メールはGoogleのGmailを使ってメールを送信するという方法を見て行きます。メール送信だけでなく、添付ファイルの送信、ログの記録の送信までやってみます。
【Python】OpenCVのTracking APIを使ったWebカメラでの物体追跡アルゴリズム
OpenCVを使ったPythonでの画像処理について、OpenCVには追跡アルゴリズムがTracking APIとして組み込まれています。ここでは、Boosting、MIL、KCF、TLD、MedianFlowを使って物体追跡を行います。
【Python】OpenCVのMeanShiftとCamShiftによる物体の発見・追跡
OpenCVを使ったPythonでの画像処理について、画像中にある物体を発見・追跡するためのMeanShift、CamShiftアルゴリズムを扱います。MeanShiftは追跡する枠のサイズが固定ですが、CamShiftはサイズ調節します。
【Python】OpenCVの密なオプティカルフロー calcOpticalFlowFarneback()
OpenCVを使ったPythonでの画像処理について、Lucas-Kanade法は「疎」の物体追跡の検出でしたが、ここでは逆に密なオプティカルフローの検出アルゴリズムであるcalcOpticalFlowFarneback()を扱います。
【Python】OpenCVで物体の追跡 – Lucas-Kanade法を使ったOptical Flow
OpenCVを使ったPythonでの画像処理について、物体の追跡(Object Tracking)を扱います。オプティカルフロー(Optical Flow)の概念とWebカメラを使ってのLucas-Kanade法による物体の追跡を行います。
【Python】OpenCVのHaar Cascadesによる顔検出
OpenCVを使ったPythonでの画像処理について、Haar Cascadesという分類器を使って画像からの顔の検出を扱っていきます。顔の検出と顔認識とは違うことに注意しましょう。ここでは画像からの顔検出とwebカメラの顔検出を行います。
【Python】OpenCVのWatershedアルゴリズムに独自のシード設定で動的に領域分割
OpenCVを使ったPythonでの画像処理について、Watershedアルゴリズムで物体のセグメンテーションをすでに行いましたが、多くの作業がマーカーを設定するのに必要でした。ここでは、自分シードを変更して動的に扱う処理をしてみました。
【Python】OpenCVでWatershedアルゴリズムと物体のセグメンテーション
OpenCVを使ったPythonでの画像処理について、Watershedアルゴリズムを扱います。Watershedアルゴリズムは、地形の分水嶺のイメージの概念を使ったアルゴリズムで、画像の中の接触している物体の境界を分離して認識できます。
【Python】OpenCVで特徴量マッチング – ORB, SIFT, FLANN
OpenCVを使ったPythonでの画像処理について、画像認識について特徴量マッチングを扱います。これは二枚目の画像中の特徴点を検出してマッチングする方法です。総当たりマッチングのORB、DIFTとFLANNベースのマッチングを扱います。
【Python】OpenCVで輪郭の検出 – findContours(), drawContours()
OpenCVを使ったPythonでの画像処理について、輪郭の検出(Contour Detection)を扱います。輪郭検出にはfindContours()で目的に合ったRETRモードと近似を、描画にはdrawContours()を使います。
【Python】ロギングのコンフィグで環境設定- fileConfig(), dictConfig()
Pythonを使ったロギングの環境設定(config)について扱います。ロギングの設定ファイルを作り、fileConfig()関数を使って読み込む方法と、設定情報を辞書型で記述し、dictConfig()関数に渡す方法があります。
【Python】ロギングのフィルタで出力するログ記録をフィルタリング
Pythonを使ったロギングの機能について、ここではフィルタ(filter)を扱います。ロギングのフィルタは、ログ出力をする時に、どのログ記録を出力するかをきめ細かく設定するフィルタリング機能です。パスワードをログ出力したくない時などに利用します。
【Python】ロギングのハンドラで要求された処理の実行
Pythonのロギングの機能について、ハンドラ(handler)を扱います。ハンドラは、対応すべき処理要求が発生した時にプログラムの流れを中断して要求された処理を実行します。ここではFileHandler()を使って出力処理をしてみます。
【Python】ロギングのロガーで特定の処理のログ設定を変更する
Pythonを使ったロギングの機能について、ここではロガー(logger)を扱います。basicConfig()を使ってログレベルを設定したあとで、ロガーを使ってログレベルの設定を引き継ぎながら、特定の処理のログレベルの設定を変更します。
【Python】ロギングのフォーマッタで出力レイアウトの指定
Pythonのロギングについて、フォーマッタ(formatter)の属性を変更することで出力レイアウトを指定できます。ここではそのフォーマッタの記入の方法を学び、レイアウトの変更とログの出力(LogRecord)の属性の確認をします。
【Python】ロギングについて – レベルと出力
Pythonを使ってプログラムの実行中に起こった出来事を記録するロギングを扱います。CRITICAL、ERROR、WARNING、NFO、DEBUGのロギングレベルの変更や出力フォーマットの方法、ファイルへの出力について見ていきます。