「OpenCV(オープンシーブイ)」とは、
画像の処理を手軽に行うことができるライブラリです。
画像処理で必要となる、多くのアルゴリズムが用意されているので、
画像処理を行いたいなら、OpenCVを使うことで、サクッと処理を実装することができます。
「OpenCV」 は、Open Source Computer Vision Library オープンソース コンピュータビジョン ライブラリの略で、
その名の通り、無料(フリー)のオープンソースのソフトライブラリです。
もともとはインテルが開発していて、
その後、オープンソースとして公開された経緯があり、
信頼できるソフトとなっています。
元はC言語やC++で書かれていますが、
現在では、多くの他の言語から使えるように拡張されています。
Python は OpenCV を使える言語の1つで、現在人気のプログラミング言語の1つでもあります。
ディープラーニングなどの人工知能、機械学習技術などで活用されている「画像認識」なども、
OpenCV を使うことで、非常に簡潔に実装可能です。
加えて、Python で OpenCV を使うことで、
Python のその他のライブラリとの連携などがスムーズに行え、
様々なシステム開発を、サクッと完了することもできます。
とはいっても、OpenCV 初心者の方などは
- OpenCV とは?
- OpenCV のダウンロード、インストールなど環境構築は、どうすればいいの?
- ディープラーニングなど、OpenCV の使い方は?
といった疑問を持たれる方も多いかと思います。
そこで本記事では、
- OpenCV とは何かわかる
- OpenCVの環境構築方法がわかる
- ディープラーニングを含めた画像認識や、画像処理、動画処理のプログラミングを学べる
といったおすすめの書籍をご紹介します。
本記事の概要
「OpenCV」 とは?OpenCV で画像認識などにサクッと入門したいあなたにおすすめの本、参考書はこちらです 【OpenCV Python 書籍】
Pythonで始めるOpenCV 4プログラミング
本書の内容は以下の通りです↓
1、開発環境の準備
OpenCV 自体はマルチプラットフォーム対応です。
本書では、Windows 環境での解説が中心になっています。
加えて、Linux環境での環境構築についても、付録にまとめられています。OpenCV を Ubuntu などから使いたいあなたの参考になる内容となっています。
第1章では、Python から OpenCVを使うために、Python 環境の構築から解説があります。
- Anaconda (アナコンダ)のインストールや設定
- Spyder(スパイダー)の起動・使い方
- Python プログラミングの基本事項
- OpenCV のインストール
といった流れで、1つひとつ、画面のキャプチャが示されながら、丁寧に解説されています。
初心者の方も迷子にならずに環境構築ができるかと思います。
2、はじめてのOpenCVプログラム
第2章では、OpenCV の過去のバージョン(OpenCV 1, 2, 3)と、
OpenCV 4 (現在の最新バージョン)との違いがまとめられています。
その後、画像の生成・保存など、OpenCV の基本プログラムが解説されています。
3、グラフィックス
グラフィックスの基本として、線や円の描き方、画像上への図形の書き方などが、サンプルコードとともにわかりやすく解説されています。
4、アフィン変換
アフィン変換は、座標変換の1種です。
画像処理では、画像を反転・回転・拡大縮小、透視投影するなどの処理で活用されますが、その解説が示されています。
5、色の処理など
- 画像の色の変え方(カラーからグレースケースへ)
- 輝度の平滑化
- 閾値処理(スレッショルド処理)
- 色の分離
などの処理が解説されています。
6、フィルタ処理
様々なフィルタ処理の実装と、実行例が示されています。
フィルタってなに?というあなたはこちらの記事もどうぞ↓
『「フィルタ」とは?画像の改善、解析、認識をやりたいあなたのために、空間フィルタリングの方法などをわかりやすくまとめました【画像処理の基礎技術2】』
7、二つの画像合成
画像合成のプログラムが紹介されています。合成といっても、画像と足すだけでなく、引いたり、論理和を取る例なども示されています。
画像の一部(ROI Region of Interest)だけ処理対処にする方法も解説されています。
8、動画処理
- 動画をグレースケールで表示
- 動画の輝度を平滑化する
- 動画のエッジを検出する
などの処理が解説されています。
カメラが認識されない場合など、ノートPCの内蔵カメラとUSBカメラで違う点があり、
そこを調整するようにとのアドバイスもあり役立ちます。
9、オブジェクト検出
オブジェクト検出とは、画像内の物体を検出する技術です。
顔認識などもオブジェクト検出の1つになります。
OpenCV に用意されている様々な学習データの紹介と、それらの活用による検出方法が解説されています。
加えて、
- 特定の「オブジェクトの除去」
- ノイズ除去などに使える「ダメージ補修」
- 画像内の断片を検索する「テンプレートマッチング」
- 機械学習などで役立つ「特徴点の検出」方法
などが解説されています。
10、ディープラーニング(Deep Learning)
まずディープラーニングとは?から、わかりやすく解説があります。
事前準備(ディープラーニングのオープンソースソフトウェアライブラリの「chainer」のインストール)の説明があり、
カメラで撮影した手書き数字の認識の実装方法が示されています。
付録、Linux 環境での使用について
Linux 環境(ここではUbuntu)でOpenCV を動作させるための環境構築方法がまとめられています。
OpenCV4系 だけでなく、OpenCV3系 の環境構築も示されています。
Ubuntu へのAnaconda やOpenCV のインストールのやり方が解説されています。
各章の最後には、それぞれその章で使われた関数の解説があります。
その章の理解の整理や、
その後の開発の際に辞書的にも使えるようにまとめられています。
末長く活用できるよう工夫されているのがうれしいところです。
本書のサンプルコードを打ち込みながら理解していくことで、OpenCV による画像処理のやり方が一通り身につきます。
OpenCV4 をPython から使いたい初学者のあなたにおすすめの1冊となっています↓
Pythonで始めるOpenCV 4プログラミング
というわけで、本記事では、
- OpenCV とは何かわかる
- OpenCVの環境構築方法がわかる(Python Anaconda)
- ディープラーニングを含めた画像認識や、画像処理、動画処理のプログラミングを学べる
おすすめの書籍をご紹介しました。
OpenCV などを使った画像処理や画像認識には多くの書籍が出版されています↓
『画像処理をPythonで学びたいあなたにおすすめの書籍はこちらをどうぞ【aiやopenCVもどうぞ】』
画像処理 1番最初の入門書
ちなみに本書は、Kindle Unlimitedの登録することで、
- 無料で読むことが可能
です。
お試し登録(解約できて無料)をしてみてはいかがでしょうか(初回30日間無料で体験できます)↓
こちらもございます↓
こちらの記事もございます↓
『画像処理をPythonで学びたいあなたにおすすめの書籍はこちらをどうぞ【aiやopenCVもどうぞ】』
『画像処理をサクッと実行できるソフトウェアには何があるの?フリー(無料)ソフトも含めて、サクッとまとめました』
『【画像処理 検定】画像処理エンジニア検定の日程や問題、受験資格、難易度、おすすめの対策本などを知りたいあなたはこちらをどうぞ』
『Pythonを学習し、未経験からバイトや転職に結びつけたいあなたにおすすめの入門書はこちらです』
↓こちら無料です