WPF/C#によるOpenCV4プログラミング
リッチなUIと高度な画像処理の融合
著者 | 北山 洋幸 |
---|---|
判型 | B5変型、400頁 |
ISBN | 978-4-87783-526-2 |
価格 | 本体4,200円 |
発行日 | 2023年7月10日(初版 第1刷発行) |
備考 | ダウンロードサービス:学習に使えるサンプルファイル |
本書について
今や定番となった画像処理ライブラリ集であるOpenCVは、一般的な二次元の画像処理、ヒストグラム処理、ポリゴン処理、テンプレートマッチング、オプティカルフロー、および顔認識など多様なアプリケーションを開発できる関数群を用意しています。OpenCVのサイトでは、これらの関数のリファレンス、ならびに大量のサンプルプログラムとともに、それに対する丁寧な説明文まで提供されています。
本書は、OpenCVの高度な画像処理能力とWindowsのユーザーインタフェースを合わせ持つアプリケーションを開発したい方に向けて、そのために必要となる基本的な情報を提供するために執筆されました。
C#とOpenCVを融合させるラッパーとして最も一般的なOpenCvSharpを使用し、C#からOpenCVの機能を使う方法を紹介します。ただ、C#と一口で言っても、Windowsフォームアプリ、コンソールアプリ、WPFアプリケーションなどがあり、これらは.NETまたは.NET Frameworkと組み合わせることができます。本書では、WPFアプリケーションと.NETの組み合わせでOpenCvSharpを使う方法に集中し、学習のしやすさを優先したシンプルなプログラム例を多数提供します。
目次
- 第1章 はじめてのプログラム
- 1.1 OpenCvSharpとは
- 1.2 はじめてのプログラム
- 1.3 コンソールアプリ
- 1.4 Windowsフォームアプリ
- 1.5 WPFアプリケーションで画像ファイル表示
- 1.6 OpenCvSharpのクラスやメソッド
- 第2章 色や輝度の処理
- 2.1 画像の反転
- 2.2 サブメニュー
- 2.3 ハンドラー共通化
- 2.4 辞書とデリゲート
- 2.5 Null許容の警告と解決
- 2.6 OpenCvSharpのクラスやメソッド
- 第3章 グラフィックス
- 3.1 グラフィックス(1)
- 3.2 グラフィックス(2)
- 3.3 OpenCvSharpのクラスやメソッド
- 第4章 フィルター処理
- 4.1 CCvクラス
- 4.2 フィルター
- 4.3 フィルター(2画面対応)
- 4.4 ヒストグラムの表示
- 4.5 OpenCvSharpのクラスやメソッド 9
- 第5章 アフィン変換
- 5.1 フリップ
- 5.2 リサイズ
- 5.3 回転
- 5.4 透視投影
- 5.5 OpenCvSharpのクラスやメソッド
- 第6章 オブジェクト
- 6.1 コーナー検出
- 6.2 矩形の検出
- 6.3 透視投影
- 6.4 ノイズの除去と細線化
- 6.5 OpenCvSharpのクラスやメソッド
- 第7章 マウスでオブジェクト操作
- 7.1 透視投影
- 7.2 オブジェクト除去
- 7.3 オブジェクトのサイズを変更
- 7.4 オブジェクトのサイズを変更・ガウス関数
- 7.5 OpenCvSharpのクラスやメソッド
- 第8章 オブジェクトの検出とサイズ変更
- 8.1 オブジェクト検出
- 8.2 自動でオブジェクトを検出し拡大縮小
- 8.3 自動でオブジェクトを検出し拡大・ガウス関数
- 8.4 テンプレートマッチング
- 8.5 OpenCvSharpのクラスやメソッド
- 第9章 特徴点
- 9.1 特徴点検出
- 9.2 特徴点のマッチング
- 9.3 特徴点のマッチング・双方向
- 9.4 パノラマ
- 9.5 OpenCvSharpのクラスやメソッド
- 第10章 画像合成
- 10.1 画像合成
- 10.2 マスクで画像合成
- 10.3 ROIで画像合成
- 10.4 重みを付けて画像合成
- 10.5 OpenCvSharpのクラスやメソッド
- 第11章 フーリエ変換
- 11.1 離散フーリエ変換
- 11.2 離散フーリエ変換・Grid表示
- 11.3 逆変換
- 11.4 逆変換・Grid表示
- 11.5 逆変換・StackPanel版
- 11.6 逆変換・WrapPanel版
- 11.7 OpenCvSharpのクラスやメソッド
- 第12章 画像比較
- 12.1 似た画像を探す
- 12.2 似た画像を探す・リサイズ版
- 12.3 似た画像を探す・加重比較
- 12.4 ヒストグラムで比較
- 12.5 OpenCvSharpのクラスやメソッド
- 第13章 応用
- 13.1 閾値(1)
- 13.2 閾値(2)
- 13.3 適応閾値
- 13.4 DFT2画面
- 13.5 自動でオブジェクトを検出し拡大縮小・UI改善版
- 13.6 GridSplitterを配置
- 13.7 画像をバインド
- 13.8 OpenCvSharpのクラスやメソッド
- 付 録 Visual Studioのインストール