画像処理

科目基礎情報

学校 一関工業高等専門学校 開講年度 令和04年度 (2022年度)
授業科目 画像処理
科目番号 0022 科目区分 専門 / 選択
授業形態 講義 単位の種別と単位数 学修単位: 2
開設学科 未来創造工学科(情報・ソフトウェア系) 対象学年 4
開設期 後期 週時間数 2
教科書/教材 【教科書】使用しない(moodleに資料を掲載する)
担当教員 小林 健一

到達目標

①ピクセル単位での演算を組み合わせた、基本的な画像処理技術に関する知識を習得する
②基礎的な画像処理アルゴリズムを、C言語のプログラムとして実装できる
【教育目標】D
【学習・教育到達目標】D-1
【キーワード】画像処理、アルゴリズム、データ構造、プログラミング

ルーブリック

理想的な到達レベルの目安標準的な到達レベルの目安未到達レベルの目安
①C言語の基本C言語による基本的なプログラミングが十分にできる雛形を修正する形であれば、C言語による基本的なプログラミングができるC言語による基本的なプログラミングが出来ず、書かれているコードを理解できない
②グレイスケール画像とカラー画像グレイスケール画像とカラー画像の扱いがわかり、プログラムから扱うことができるグレイスケール画像とカラー画像についてわかるグレイスケール画像とカラー画像の扱いについて理解できない
③濃度変換様々な濃度変換手法について理解し、実装できる様々な濃度変換手法について理解できる濃度変換について理解できない
④近傍演算近傍演算を用いた各種フィルタや、輪郭抽出手法について理解し、実装できる近傍演算を用いた各種フィルタや、輪郭抽出手法について理解できる近傍演算について理解できない
⑤ヒストグラムと画像統計量ヒストグラムや画像統計量を求めることができ、これらから画像の性質を理解することができるヒストグラムや画像統計量から、画像の性質を理解することができるヒストグラムや画像統計量について理解できない

学科の到達目標項目との関係

教育方法等

概要:
プログラムを用いた画像データの生成や、ピクセル単位での基本的な演算を組み合わせた画像処理アルゴリズムの実装を通して、画像データの取り扱いや、画像処理に関する実用的なスキルを習得することを目的とする。具体的には、用意したプログラムコードの修正・追加により、画像処理に関する課題が達成できることを目標とする。
授業の進め方・方法:
授業の前半では、主にスライドを用いた解説を行う。残りの時間は、演習を行う。
演習では、あらかじめ用意しているプログラムを元に、基本的な考え方や理論をコードの修正・追加等により実装することで、各種画像処理を行う。画像ファイルの読み込みや画像データの表示には、既存のソフトウェアやライブラリを用いるが、画像処理に関わる部分は、ピクセル単位の低レベルの操作のみで実装する。
なお、C言語を十分に扱える必要があるため、最初の方の授業にてC言語の復習も行う。
注意点:
【事前学習】演習では、個々のピクセルの値を直接プログラムから操作することで、画像処理を行う。これまでに学んだプログラミ
ング言語について、十分に復習しておくこと。授業ではC言語をベースに解説を行う。

【評価方法・評価基準】課題(50%)と期末試験(50%)で評価する。詳細は第1回目の授業で告知する。課題等を課すので自学自習をしてレポート等を提出すること。必要な自己学習時間相当分のレポートの未提出が4分の1を超えた場合は、評価を60点未満とする。デジタル画像の扱いや、基本的な画像処理アルゴリズムの理解の程度と、それをC言語で記述できるスキルを評価する。総合成績60点以上を単位修得とする。

授業の属性・履修上の区分

アクティブラーニング
ICT 利用
遠隔授業対応
実務経験のある教員による授業
必履修

授業計画

授業内容 週ごとの到達目標
後期
3rdQ
1週 導入
C言語の復習(1) ~基本構文(コメント、演算子、マクロ、main()、スコープ)~
C言語の基本構文がわかる。
2週 C言語の復習(2) ~変数の型、型変換、定数、配列、真偽値、比較演算子、if、switch、三項演算子~ C言語における変数の型、配列、条件分岐を理解し、扱うことができる。
3週 C言語の復習(3) ~関数、標準ライブラリ関数の利用~ C言語における関数の記述方法がわかり、基本的な標準ライブラリ関数が利用できる。
4週 C言語の復習(4) ~ポインタ、ポインタと配列、構造体、typedef~ C言語におけるポインタを理解し、配列との関係がわかる。また構造体について理解し、typedefと組み合わせて利用できる。
5週 C言語の復習(5) ~動的配列、malloc()、free()~
OpenCV環境のセットアップ
C言語における動的メモリの確保について理解し、ポインタと組み合わせて利用できる。
C言語からOpenCVを利用できる。
6週 デジタル画像とは
OpenCVを用いた画像ファイルの入出力
デジタル画像についての基本がわかる。
OpenCVを用いて、画像データの入出力ができる。
7週 画像ファイルの種類
グレイスケール画像とカラー画像
ラスタ画像とベクタ画像、可逆圧縮と非可逆圧縮の違いがわかる。デジタル画像におけるカラーの表現方法がわかる。
8週 グレイスケール化
二値化
カラー画像のグレイスケール化、大津の方法による二値化についてわかる。
4thQ
9週 濃度変換(1) ~明るさ/コントラスト/ガンマ変換、疑似カラー~ 画素値の演算による濃度変換がわかる。
10週 ヒストグラム、画像統計値
濃度変換(2) ~ヒストグラム平坦化~
ヒストグラムと基本的な画像統計値が計算でき、その意味が理解できる。ヒストグラム平坦化についてわかる。
11週 近傍演算(1) ~平滑化(平均、ガウシアン)、先鋭化~ 近傍演算を用いた平滑化、平滑化結果を用いた先鋭化ができる。
12週 近傍演算(2) ~メディアンフィルタ~
ごま塩ノイズと白色ノイズ
メディアンフィルタがわかる。ごま塩ノイズや白色ノイズに対するノイズ除去についてわかる。
13週 近傍演算(3) ~輪郭抽出(Laplacian、Sobel、Prewitt)~ 近傍演算を用いた輪郭抽出ができる。
14週 動画像処理 OpenCVを用いて取り込んだ動画像について、リアルタイムで画像処理を適用する事ができる。
15週 期末試験解説
16週 期末試験解説
画像処理のまとめ
期末試験で分からなかった部分が理解できる。

モデルコアカリキュラムの学習内容と到達目標

分類分野学習内容学習内容の到達目標到達レベル授業週

評価割合

試験課題合計
総合評価割合5050100
①C言語の基本101020
②グレイスケール画像とカラー画像101020
③濃度変換101020
④近傍演算101020
⑤ヒストグラムと画像統計量101020