# dannyngweekiat/introduction-to-machine-vision architecture

> Architecture diagram of the GitHub repository dannyngweekiat/introduction-to-machine-vision, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-09-28). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/dannyngweekiat/introduction-to-machine-vision
- Repository: https://github.com/dannyngweekiat/introduction-to-machine-vision

## Overview

This repository is a beginner machine-vision course delivered as nine runnable notebooks, not a software library or application. Students work through image fundamentals and classical techniques before exploring AI, then apply those ideas in a mini-project. The README documents Google Colab as the execution environment and notes that some lessons download pre-trained models. Notebook internals were not available, so the graph shows documented lesson capabilities and launch/execution context, not internal code or data-flow details.

Main entry points: [`notebooks/05_image_classification.ipynb`](https://github.com/dannyngweekiat/introduction-to-machine-vision/blob/main/notebooks/05_image_classification.ipynb) (Image Classification), [`notebooks/06_object_detection.ipynb`](https://github.com/dannyngweekiat/introduction-to-machine-vision/blob/main/notebooks/06_object_detection.ipynb) (Object Detection), [`notebooks/08_mini_ai_vision_project.ipynb`](https://github.com/dannyngweekiat/introduction-to-machine-vision/blob/main/notebooks/08_mini_ai_vision_project.ipynb) (Mini AI Project), [`notebooks/01_pixels_and_images.ipynb`](https://github.com/dannyngweekiat/introduction-to-machine-vision/blob/main/notebooks/01_pixels_and_images.ipynb) (Pixels and Images)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_foundations["Image Foundations"]
  node_pixels["Pixels and Images"]
  node_import_picture["Import Picture"]
  node_filters["Filters and Colour"]
  node_shapes["Shapes and Counting"]
end

subgraph group_ai_lessons["AI Lessons"]
  node_ai_basics["AI for Images"]
  node_classification["Image Classification"]
  node_detection["Object Detection"]
  node_digits["Handwritten Digits"]
end

subgraph group_project["Vision Project"]
  node_mini_project["Mini AI Project"]
end

node_student(("Student"))
node_colab["Google Colab"]
node_pretrained_models["Pre-trained Models"]

node_student -->|"opens lessons in"| node_colab
node_student -->|"studies"| node_pixels
node_student -->|"studies"| node_import_picture
node_student -->|"studies"| node_filters
node_student -->|"studies"| node_shapes
node_student -->|"studies"| node_ai_basics
node_student -->|"studies"| node_classification
node_student -->|"studies"| node_detection
node_student -->|"studies"| node_digits
node_student -->|"studies"| node_mini_project
node_colab -->|"runs"| node_pixels
node_colab -->|"runs"| node_import_picture
node_colab -->|"runs"| node_filters
node_colab -->|"runs"| node_shapes
node_colab -->|"runs"| node_ai_basics
node_colab -->|"runs"| node_classification
node_colab -->|"runs"| node_detection
node_colab -->|"runs"| node_digits
node_colab -->|"runs"| node_mini_project
node_classification -.->|"downloads"| node_pretrained_models
node_detection -.->|"downloads"| node_pretrained_models
node_mini_project -.->|"may download"| node_pretrained_models

click node_pixels "https://github.com/dannyngweekiat/introduction-to-machine-vision/blob/main/notebooks/01_pixels_and_images.ipynb"
click node_import_picture "https://github.com/dannyngweekiat/introduction-to-machine-vision/blob/main/notebooks/01_1_import_your_own_picture.ipynb"
click node_filters "https://github.com/dannyngweekiat/introduction-to-machine-vision/blob/main/notebooks/02_filters_and_colour.ipynb"
click node_shapes "https://github.com/dannyngweekiat/introduction-to-machine-vision/blob/main/notebooks/03_shapes_and_counting.ipynb"
click node_ai_basics "https://github.com/dannyngweekiat/introduction-to-machine-vision/blob/main/notebooks/04_ai_for_images.ipynb"
click node_classification "https://github.com/dannyngweekiat/introduction-to-machine-vision/blob/main/notebooks/05_image_classification.ipynb"
click node_detection "https://github.com/dannyngweekiat/introduction-to-machine-vision/blob/main/notebooks/06_object_detection.ipynb"
click node_digits "https://github.com/dannyngweekiat/introduction-to-machine-vision/blob/main/notebooks/07_handwritten_digits.ipynb"
click node_mini_project "https://github.com/dannyngweekiat/introduction-to-machine-vision/blob/main/notebooks/08_mini_ai_vision_project.ipynb"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_pixels,node_import_picture,node_filters,node_shapes toneBlue
class node_ai_basics,node_classification,node_detection,node_digits toneAmber
class node_mini_project toneMint
class node_student,node_colab,node_pretrained_models toneIndigo
```

## Components

### Image Foundations

- [Pixels and Images](https://github.com/dannyngweekiat/introduction-to-machine-vision/blob/main/notebooks/01_pixels_and_images.ipynb): `notebooks/01_pixels_and_images.ipynb`
- [Import Picture](https://github.com/dannyngweekiat/introduction-to-machine-vision/blob/main/notebooks/01_1_import_your_own_picture.ipynb): `notebooks/01_1_import_your_own_picture.ipynb`
- [Filters and Colour](https://github.com/dannyngweekiat/introduction-to-machine-vision/blob/main/notebooks/02_filters_and_colour.ipynb): `notebooks/02_filters_and_colour.ipynb`
- [Shapes and Counting](https://github.com/dannyngweekiat/introduction-to-machine-vision/blob/main/notebooks/03_shapes_and_counting.ipynb): `notebooks/03_shapes_and_counting.ipynb`

### AI Lessons

- [AI for Images](https://github.com/dannyngweekiat/introduction-to-machine-vision/blob/main/notebooks/04_ai_for_images.ipynb): `notebooks/04_ai_for_images.ipynb`
- [Image Classification](https://github.com/dannyngweekiat/introduction-to-machine-vision/blob/main/notebooks/05_image_classification.ipynb): `notebooks/05_image_classification.ipynb`
- [Object Detection](https://github.com/dannyngweekiat/introduction-to-machine-vision/blob/main/notebooks/06_object_detection.ipynb): `notebooks/06_object_detection.ipynb`
- [Handwritten Digits](https://github.com/dannyngweekiat/introduction-to-machine-vision/blob/main/notebooks/07_handwritten_digits.ipynb): `notebooks/07_handwritten_digits.ipynb`

### Vision Project

- [Mini AI Project](https://github.com/dannyngweekiat/introduction-to-machine-vision/blob/main/notebooks/08_mini_ai_vision_project.ipynb): `notebooks/08_mini_ai_vision_project.ipynb`

### Other components

- **Student**
- **Google Colab**
- **Pre-trained Models**

## Connections

- Student → Google Colab: opens lessons in
- Student → Pixels and Images: studies
- Student → Import Picture: studies
- Student → Filters and Colour: studies
- Student → Shapes and Counting: studies
- Student → AI for Images: studies
- Student → Image Classification: studies
- Student → Object Detection: studies
- Student → Handwritten Digits: studies
- Student → Mini AI Project: studies
- Google Colab → Pixels and Images: runs
- Google Colab → Import Picture: runs
- Google Colab → Filters and Colour: runs
- Google Colab → Shapes and Counting: runs
- Google Colab → AI for Images: runs
- Google Colab → Image Classification: runs
- Google Colab → Object Detection: runs
- Google Colab → Handwritten Digits: runs
- Google Colab → Mini AI Project: runs
- Image Classification → Pre-trained Models: downloads
- Object Detection → Pre-trained Models: downloads
- Mini AI Project → Pre-trained Models: may download
