Master data processing, modeling, and deep learning algorithms.
Computer vision is the field of enabling machines to interpret visual information. It starts from a simple truth: to a computer, an image is just a grid of numbers. Everything — classification, detection, segmentation — is built on learning patterns in that grid. This lesson covers how images are represented numerically, the three core vision tasks, and the convolutional neural network (CNN), whose operation you will work through by hand. You will also learn about transfer learning, the challenges of real-world images, and the ethical considerations of vision systems. The convolution TRY_IT is a tiny, self-contained demonstration using nested Python lists — not a complete CNN.
A color image is therefore a 3D array: height × width × 3. Conceptually this is a tensor of numbers.
| Task | Question | Output |
|---|---|---|
| Image classification | What is in this image? | A single label |
| Object detection | What objects are present and where? | Bounding boxes + labels |
| Image segmentation | Which pixels belong to which object? | Pixel-level labels |
Convolution slides a small filter (kernel) over the image, multiplying and summing at each position to produce a feature map. It detects local patterns — edges, corners, textures — wherever they appear.
Slide a 2×2 kernel over a 3×3 image with stride 1 and no padding. The output is 2×2.
The kernel slides right and down, producing one output value per position. The result is a feature map that highlights where the pattern matched.
Early convolutional layers detect low-level patterns (edges); deeper layers compose them into objects. The final layers classify.
A grayscale image is a grid of intensities.
(255 = bright, 0 = dark; the pattern forms a shape)
A simple kernel highlights vertical edges.
(a vertical-edge detector)