/computer-vision-ethz-2022

This repo contains personal solutions to ETHz computer vision course assignment as well as course notes written in markdown.

Primary LanguageJupyter Notebook

ETHz Computer Vision HS2022

Personal notes for ETHz Computer Vision HS2022 written in obsidian flavored but also github flavored markdown. You could also find pdf version but they might not be properly adjusted since I output them directly from my obsidian vault. Using obsidian and topaz theme is mostly recommended.

The notes are mainly adapted from the course slides in a more organized way. Some topics that are not explained in details in the slides are extended in the notes. Materials and papers I used to write these notes are included in the repo and you could find the references in the notes.

You could also find the answer to the assignments.

Pinhole Camera

Camera Calibration

Keypoint Localization

Harris Detector Formulation

Scale Invariant Region Selection

Automatic Scale Selection

Signature Function
  • Laplacian of Gaussian
  • Difference of Gaussian

Local Descriptors

SIFT

Rotation Invariant Descriptors

Problem Setting & Definition

Brightness Constancy Equation

Small Aperture Problem

Lucas-Kanade Optical Flow

Horn-Schunck Optical Flow

Image Classification

Bag of Words

Feature Extraction
  • Regular Grid
  • Interesting Point Detector
  • Others
Dictionary Learning
  • K-means Clustering
Encode
  • Quantization
  • Histogram, TF-IDF
Classify

Specific Object Recognition

Fast Lookup: Inverted Index

Vocabulary Tree

Object Category Detection

  • Specify Object Model
  • Generate Hypotheses/Proposals
  • Score Hypotheses
    • Precision
    • Recall
  • Resolve Detections
    • Non-maximum Suppression
    • Context / Reasoning

Segmentation as Grouping

K-Means Clustering

Mixture of Gaussian

  • Expectation Maximization Algorithm

MEan-Shift

Hough Transform(Edge Based)

Interactive Segmentation with GraphCuts

Learning-based Approach

Traditional Machine Learning

  • KNN
  • Random Forests

Deep Learning Methods

Sliding Window Detection

Viola/Jones Face Detector

  • Image Integral and Feature Extraction
  • AdaBoost Learning
  • Cascade Classifier

Implicit Shape Model

Deep Learning Methods

RCNN

Fast RCNN

Faster RCNN

YOLO

Pixel Tracking

Template Tracking

Lucas-Kanade Template Tracker

Generalized LK Template Tracker

Track by Matching

Track by Detection

Online Learning

Projective Plane

Points and Lines

Conics

2D Transformations

Projective 3D Space

Points and Planes

Quadrics

3D Transformations

The Essential Matrix

The Fundamental Matrix

The Eight-Point Algorithm

The Normalized Eight-Point Algorithm

Recovering Projection Matrices

Triangulation

Affine Structure from Motion

Perspective Structure from Motion

Bundle Adjustment

Stereo Vision

Robust Cost Functions

RANdom SAmple Consensus - RANSAC

Adpative RANSAC