画像認識パート#
✅ 概要#
このリポジトリは大学3年生向けの情報科学演習教材をJupyter Notebook形式でまとめたものです。 ノートブックを順に実行しながら、画像の取り扱い、前処理、基本的な機械学習モデルの実装と評価を学びます。
📚 学習目標#
OpenCVやMatplotlibを使った画像の読み込み・表示・保存・前処理ができる
画像の基本演算(リサイズ・回転・色空間変換・フィルタ処理)を理解する
単純なパーセプトロン/多層パーセプトロン(MLP)を実装して学習・評価ができる
PyTorchを用いたモデル定義・学習ループ・評価(MNISTなど)が行える
📁 ディレクトリ構成#
project_root/
├── intro.md # この概要ページ
├── requirements.txt # pip/condaで使う依存リスト
├── summary.md # まとめページ
├── data/ # データセット(画像や学習データ)
├── notebooks/ # Jupyter Notebook(教材本体)
│ ├── images/ # ノートブック内で使う画像ファイル
│ ├── 00_Setup.ipynb
│ ├── 01_ImageProcessing.ipynb
│ └── 02_MachineLearning_Mnist.ipynb
├── cassava_sample/ # キャッサバの病害分類のサンプルプログラム
│ ├── dataset.py
│ ├── main.py
│ ├── model.py
│ ├── train_eval.py
│ ├── utils.py
│ └── visualize.py
└── util.py # 教材で共通利用するユーティリティ関数
📊 データセット#
ノートブックで利用する小規模な画像ファイルは
data/に配置します。大きなデータは外部から取得するようにしてください。
🚀 学習の進め方#
notebooks/内のノートブックを順に実行してください。まず
00_Setup.ipynbで環境整備(conda環境やPyTorchインストール方法の説明)を確認します。01_ImageProcessing.ipynbで画像処理の基礎と演習を行ってください。02_MachineLearning_Mnist.ipynbで簡単なニューラルネットワーク(MLP/CNN)の実装・学習・評価を試してみましょう。
💻 使用技術#
Python 3.9+
NumPy, pandas, matplotlib, seaborn
OpenCV (cv2)
PyTorch, torchvision
scikit-learn
📝 実行環境#
環境を再現するためには requirements.txt(または environment.yml を使う場合はそちら)を参照し、仮想環境を作成してください。ノートブック内に実行例を記載しています。