ISBN 9784065301173
OpenCVによる画像処理入門 改訂第3版
概要
C言語・C++・Pythonで画像処理アルゴリズムを原理から実装まで習得する
想定読者
画像処理を初めて学ぶ理工系学部生・高専生、またはOpenCVを業務で使い始めたいエンジニア
こんな人には向いていない
- すでにOpenCVを実務で活用しており、深層学習や物体検出の応用技術を求めている読者には内容が基礎寄りすぎる
- Python一本で素早くプロトタイプを作りたい実務者には、アルゴリズム原理の解説比重が大きいと感じる可能性がある
- 機械学習・コンピュータビジョンの最新手法(YOLO・Transformerなど)を期待する読者は姉妹書『OpenCVによるコンピュータビジョン・機械学習入門』が適切
読了後にできるようになること
- デジタル画像の構造(サンプリング・量子化・画素配列)とMat型の扱い方を理解できる
- ヒストグラム平坦化・トーンカーブ・ガンマ補正など濃淡変換の原理と実装を習得できる
- 平滑化フィルタ(平均・バイラテラル・メディアン)とエッジ検出フィルタ(Sobel・2次微分)を目的に応じて使い分けられる
- 2値化・モルフォロジー演算・ラベリングといった2値画像処理の基本処理を実装できる
- アルファブレンディング・背景差分・フレーム差分など複数画像を組み合わせる処理を理解できる
- 幾何学変換(アフィン変換・射影変換)と距離画像処理の概念を把握できる
- C言語・C++・Pythonの3言語でOpenCV関数を対比しながら読めるため、言語横断の実装力が身につく
本書のキー概念(章解説)
- 第 1 章 画像処理とOpenCV — 画像処理とコンピュータビジョンの違いを整理する概念章。最初に読んで本書の射程を確認する
- 第 2 章 OpenCVの導入 — Windows 11・macOS・Google Colaboratory の環境構築を詳説。詰まったらトラブルシューティング節を参照
- 第 3 章 画像入力装置と静止画・動画フォーマット — YUV・RGB等の色差方式の基礎。規格知識として参照用途にも使える
- 第 4 章 デジタル画像と配列 — Matクラスの構造を学ぶ核心章。実装時に繰り返し参照する価値が高い
- 第 5 章 色空間 — HSV空間による色抽出など実務で頻出の処理を扱う
- 第 6 章 濃淡変換 — ヒストグラム平坦化・トーンカーブ・疑似カラー処理などコントラスト調整の一通りを網羅
- 第 7 章 フィルタ処理 — 空間フィルタの線形・非線形分類からSobelまで。実務直結度が高く、2章の環境構築後に前倒しで読む価値がある
- 第 8 章 2値画像処理 — モルフォロジー演算とラベリングを扱う。製造検査系の業務では特に重要
- 第 9 章 複数画像の利用 — 背景差分・フレーム差分など動体検知の基礎技術を解説
- 第 10 章 幾何学変換 — アフィン変換・射影変換の行列演算と実装を対比
- 第 11 章 距離画像処理 — ステレオカメラ由来の深度情報を扱う。ロボティクス・3D計測向け読者には重要な章
ハイライト
- 本書はまず画像処理アルゴリズムについて解説し、内部で行われる処理が十分に理解されることに重点を置いている。その後、C言語での実装例を並べて表記し、さらにOpenCVの関数を用いたプログラム(Python、C++言語)も併記する(アルゴリズム原理→C言語実装→OpenCV関数という3段構成が本書の最大の差別化点)
- OSに依存しないGoogle Colaboratoryを用いたプログラム作成方法も加筆した。Windows 11とmacOS上での開発環境の構築について詳細な解説を加筆した(第3版での主要追記点。環境構築コストが高い初学者への配慮が明示されている)
外部からの言及
- 1人のユーザーが1章から9章まで章別の学習ノートを継続投稿しており、各章の要点をまとめながら練習問題にも取り組んでいる。実際に本書を通読する学習者が出ている点で、教科書としての使いやすさを間接的に示している(qiita)
編集メモ
Qiita言及は1ユーザーによる章別学習ノート10件・累計likes約5件のみ。単一ユーザーの継続学習用途記録であり、コミュニティでの広範な引用・議論は確認できなかった。Rakutenランキング情報も取得できていない。講義用教科書として大学・高専向けに販売されている書籍のため、Qiitaへの言及が少ないことは品質の問題ではなくオーディエンス特性による
読む前に押さえておきたいこと
- C言語またはPythonの基本文法(変数・配列・ループ・関数)
- 高校数学レベルの行列演算の概念(幾何学変換章で使用)
- 基本的な微分の概念(エッジ検出フィルタの理解に必要)
学習のコツ
- 環境構築(2章)で詰まりやすい場合はGoogle Colaboratoryの節だけ先に試すと、本論のアルゴリズム学習を即開始できる
- 各章末の練習問題を実際にコーディングしてから次章へ進むと、アルゴリズム理解が定着しやすい。答えを写すだけでなく3言語のうち普段使いの言語で先に実装し、他言語版と対比すると理解が深まる
- フィルタ処理(7章)と2値画像処理(8章)は実務での汎用性が高い。環境構築後にこの2章を優先的に読み、手を動かしてから他の章に戻る方法も有効
- C言語実装列を読む際はポインタ操作とループ構造に注目すると、OpenCV関数が内部で何をしているかの直感が養われる
出版社による内容紹介
◆◆3言語(C言語、C++、Python)対応で、「画像処理の基本」が身につくと、大好評のテキストの改訂版!◆◆ ・OpenCV4.5に対応し、さらにパワーアップ! ・基本アルゴリズムとサンプルプログラムが豊富で、いますぐできる! ・理論と実践のバランスがよく、初学者に最適! ・全編をフルカラー化し、デザインも一新! ・練習問題を解いて理解度アップ! ・Windowsだけでなく、Macでのインストールにも対応! 【「まえがき」より】 本書は,理数科高校生,工業高等専門学校生,大学学部生などを対象とした講義用教科書としての利用を想定し,基本的かつ汎用性の高い画像処理アルゴリズムを選定して解説した.また初学者が独学でも学べるように,開発環境の構築方法,トラブルシューティングなどの詳細な手順を載せている.本書ではまず,画像処理アルゴリズムについて解説し,内部で行われる処理が十分に理解されることに重点を置いている.その後,C言語での実装例を並べて表記し,各アルゴリズムがどのようにコーディングされるのかを解説する.さらに,OpenCVの関数を用いたプログラム(Python,C++言語)も併記し,OpenCVの利用方法を説明する. 今回,第3版に改訂するにあたり,読者からのさまざまなコメントや,我々が本書を用いて講義してきた経験をもとに,内容の理解がより促進されるように章立てを整理し,読者がより興味を惹くような内容に変更した.執筆時点における最新の開発環境に対応するため,OpenCV4系を採用し,Windows11とmacOS上での開発環境の構築について詳細な解説を加筆した.さらに,OSに依存しないGoogle Colaboratoryを用いたプログラム作成方法も加筆した.一方,情報処理技術者試験の試験要綱が2022年4月から更新され,擬似言語の記述形式が大幅に変更され,プログラムの記述方法がC言語と同等になった.そのため,第2版まで記載していた古い記述形式の擬似言語を用いたプログラムは削除することにした. 【おもな内容】 1章 画像処理とOpenCV 2章 OpenCV の導入 3章 画像入力装置と静止画・動画フォーマット 4章 デジタル画像と配列 5章 色空間 6章 濃淡変換 7章 フィルタ処理 8章 2値画像処理 9章 複数画像の利用 10章 幾何学変換 11章 距離画像処理 付録A OpenCVの描画系関数 付録B OpenCVをソースからビルドする 付録C OpenCVメインモジュール概説 姉妹書『OpenCVによるコンピュータビジョン・機械学習入門』も好評発売中!
この本がどの学習段階で役立つかは、 関連する ロードマップ から確認できます。