Introduction to Computer Vision

Introduction to Computer Vision

  • Definition: The process and techniques involved in using computers to extract information from images and videos.
  • Applications: Autonomous vehicles, quality assurance in manufacturing, facial recognition, etc.
  • Significance: More companies are employing computer vision for product improvement and innovation.

Course Overview

  • The course is segmented into units, each dealing with specific topics in computer vision.
  • Learning Objectives:
    • Understand human visual systems and their computational parallels.
    • Gain expertise in image acquisition and processing techniques.
    • Learn about filtering, low-level features, deep learning in high-level tasks, and video processing.

Unit 1: Vision Fundamentals

Study Goals
  • Understand how the human visual system functions.
  • Learn how cameras capture scenes into images.
  • Represent scenes in digital images using numbers.
1.1 The Human Visual System
  • Components: Cornea, pupil, lens, retina, optic nerves, visual cortex.
  • Functionality: Processes visual information and allows for vision.
1.2 Camera Types
  • Pinhole Camera: Simple; does not use lenses, images are inverted.
  • Lens Cameras: More complex; capture images through lenses.
1.3 Image Sensors
  • Types: Charge-Coupled Devices (CCD) and Complementary Metal-Oxide-Semiconductors (CMOS).
  • Working: Convert light into electrical signals, use a RGB Bayer filter to produce color images.
  • RGB Representation: Each pixel has a value representing its intensity (0 for black and 255 for white).

Unit 2: Image Filtering

Study Goals
  • Grasp the importance of image filtering techniques.
  • Comprehend basic filtering methods and their applications.
Key Topics
  • Convolution: A fundamental operation for filtering; combines input pixels' values to produce output.
  • Linear vs Non-linear Filters: Linear filters apply convolution; non-linear filters can retain edges while reducing noise.
  • Common Filters:
    • Median Filter: Effective against salt-and-pepper noise.
    • Gaussian Filter: Blurs images using Gaussian distribution.

Unit 3: Low-Level Vision

Study Goals
  • Understand low-level vision's essential techniques.
  • Define what constitutes a feature in computer vision.
Concepts
  • Blobs: Regions in an image significantly different in intensity from the background, used for object detection.
  • Edge Detection: Identifying boundaries between objects based on changes in intensity.
  • Feature Detectors: Algorithms like LoG (Laplacian of Gaussian), DoH (Determinant of Hessian) help in blob detection.

Unit 4: High-Level Vision

Study Goals
  • Comprehend the composition of deep learning models.
  • Understand the application of CNNs in computer vision.
Key Topics
  • Deep Learning: Involves using ANN (Artificial Neural Networks) for tasks like image recognition.
  • Convolutional Neural Networks (CNN): Specialized architecture for processing grid-like data such as images.
  • Object Recognition Techniques:
    • YOLO (You Only Look Once): Real-time object detection model.
    • R-CNN (Region-based Convolutional Neural Network): Uses region proposals for object localization.

Unit 5: Video

Study Goals
  • Relate video processing to image analysis.
  • Understand object tracking and action classification techniques.
Concepts
  • Motion Detection: Identifying changes between successive video frames.
  • Optical Flow: Estimates motion based on changes in brightness patterns across frames.
  • Object Tracking: Following a moving object across video frames using algorithms to maintain continuity.
  • Action Recognition: Identifying human activities through video analysis.

Additional Resources

  • Basic and further reading materials mentioned for deeper understanding.
  • Course structure includes self-checking questions and knowledge tests for evaluation.
  • Access additional material through the learning platform for enriched learning experience.