関連サイト
本書の関連ページが用意されています。
内容紹介
本書は数値計算アルゴリズム、電気・電子回路の動作確認、画像処理・画像認識のC#プログラミングを紹介していきます。Windowsフォームアプリケーションのつくり方にあわせ、画像処理・数値計算が学べます。
<本書「はじめに」より >
筆者は、2000年ごろから、ウェブサイト「Visual C++の勉強部屋」で、代表的な数値計算アルゴリズムを体験してみたり、電気回路や電子回路の動作を確認してみたり、興味ある図形を描いてみたりと電気・情報系の学生、若手技術者に、楽しみながらプログラムに親しんでもらう記事を公開してきた。
やがて画像処理や画像認識に範囲を広げていったが、原理を理解し楽しんでもらうことを目的に紹介してきた。その結果、余り難解でない入門用として広く親しまれてきた。
なぜ画像処理なのか
クルマの自動運転が話題になっている。衝突防止装置や道路標識認識システムも、実用化されつつある。犯罪捜査では監視カメラが活躍し、医療ではMRIやCTなどによる画像診断が必須である。銀行ATMも、入出国管理も、生体認証技術が利用されている。
これらは、すべて画像認識技術の応用であり、この前段階としての画像補正や特徴抽出には、高度な画像処理が使用されている。すなわち、情報処理技術の応用分野において、画像処理の比重は非常に高くなっているのである。
個人レベルで画像処理を見ると、自分がデジカメで撮影した画像を、自分で作成したプログラムで独自に加工する、いわば、手作りの楽しみを味わうことができる。
数値計算が面白い
数値計算の歴史は古い。多くは、精度向上と計算時間短縮の相反する目標との戦いであり、難解なアルゴリズムも増えた。しかし、最近の高速CPUの出現により、直接的で理解しやすいプログラムでも、十分使用に耐える結果を得られるようになった。
数値計算は、現在では特別な技巧を要さず、直感的な結果が容易に得られる便利なツールに生まれ変わったのである。したがって、実験データの整理や、電気回路の動作理解に、気軽に数値計算を活用して欲しい。見違えるような論文やレポートになることは間違いない。
基礎もしっかりと、その他への応用も
Visual Studio Express 2013は、非常に優れた開発環境である。入門者が必ず通るコンソールアプリケーション作成、Visual C#が得意とするWindowsフォームアプリケーションの基礎を紹介する。
主なコントロール部品の使い方を、理工系技術者が興味を持てる内容で解説しているので、「Visual C++の勉強部屋」と併せて利用していただければ、その他の応用にも、十分お役に立てると思われる。
本書が、皆さんにとって、易しい読み物であることを願う。
※開発環境:Windows 8.1上にてVisual Studio Express 2013 for Windows Desktopを用いて行いました。
書誌情報
- 著者: 石立 喬
- 発行日: 2014-09-17 (紙書籍版発行日: 2014-09-17)
- 最終更新日: 2014-09-17
- バージョン: 1.0.0
- ページ数: 266ページ(PDF版換算)
- 対応フォーマット: PDF
- 出版社: マイナビ出版
対象読者
著者について
石立 喬
1955年東京工業大学卒。同年、日本電気株式会社へ入社し、NEC初のコンピュータの開発に参画。磁気メモリ、半導体メモリの開発、LSI設計などを経て、1989年帝京大学理工学部教授。情報、通信、電子関係の教育を担当。2002年定年により退職し現在に至る。2000年より、Webサイト「Visual C++の勉強部屋」を公開。情報処理技術者一種、特種、工学博士。
Visual C++の勉強部屋: http://homepage3.nifty.com/ishidate/vcpp.htm
目次
Chapter 1 入門 編
- 1.1 コンソールアプリケーションを始める
- 1.2 コンソールに文字を表示しファイルに出力する
- 1.3 Windowsフォームに文字を表示する
Chapter 2 基礎 編
- 2.1 Windowsフォームにグラフを描く
- 2.2 Windowsフォームでテキストボックスとラベルを使う
- 2.3 Windowsフォームで子フォームを用いる
- 2.4 Windowsフォームでスピンボタンとスクロールバーを使う
- 2.5 Windowsフォームでマウス操作を受け取る
Chapter 3 画像処理 編
- 3.1 画像ファイルを読み込み・モノクロ化・色反転を行う
- 3.2 トーンカーブでコントラストを補正する
- 3.3 ヒストグラムを変えてコントラストを補正する
- 3.4 HSV表色系に変換して色相を補正する
- 3.5 コンボリューションを用いて平滑化、鮮鋭化を行う
- 3.6 コンボリューションを用いてエッジを検出する
- 3.7 グローバルしきい値とローカルしきい値で二値化する
- 3.8 シンプルな方法で二値画像を細線化する
Chapter 4 数値計算 編
- 4.1 最小二乗法で曲線あてはめ(Curve Fitting)を行う
- 4.2 Complex構造体を使って回路特性を求める
- 4.3 Complex構造体で等角写像を試みる
- 4.4 RungeKutta法で微分方程式を解き電気回路の過渡特性を求める
- 4.5 DCT(離散コサイン変換)とIDCT(逆DCT)を使ってみる