Project Description
For the lecture “Computer Vision”, I had to solve each week a new task to hand in. All the tasks had to be solved with Matlab, and a report had to be written with the conclusion about the implementation, advantages, disadvantages, and problem cases of the implemented algorithms.
My tasks
- Create a feature detector/descriptor to find matching features between two images. The first task was to implement the Harris corner detector, and in a later step, SIFT features had to be extracted.
- Implementation of the “Direct Linear Transform algorithm” and the “Gold Standard algorithm” to calibrate the camera with intrinsic parameters and to estimate the distortion coefficients of the lens. As we have then the relative position of the camera, we can render objects with the correct transformation on the picture.
- Implementation of the “Monte Carlo Localization using Particle Filter” to help a robot to localize himself in a 2D corridor.
- Estimation of the Fundamental Matrix, Essential Matrix, and Camera Matrix with the help of the RANSAC.
- Reconstruction of a 3D object from multiple calibrated images with a naive silhouette extraction algorithm.
- Image segmentation with the “Mean-Shift Segmentation” and the “EM Segmentation” (Expectation-Maximization).
- Triangulation based on multiple images from an object with different angles to create the structure/model.
- Building a condensation tracker which is based on color histograms. This was applied to various videos with different objects, from which one has been tracked.
- Image Categorization with a bag-of-words image representation.
![[:en]ETH CV – Task 1: Feature Matching[:de]ETH CV – Aufgabe 1: Feature Matching[:] [:en]Feature Matching: Create a feature detector/descriptor to find matching features between two images. The first task was to implement the Harris corner detector, and in a later step, SIFT features had to be extracted.[:de]Feature Matching: Einen "Feature Detector/Descriptor" implementieren, um gemeinsame Features in zwei Bildern abzugleichen. Die erste Aufgabe bestand darin, den Harris Corner Detector Algorithmus zu implementieren. In einem weiteren Schritt mussten die SIFT Features integriert werden.[:]](https://breitmuuufrosch.ch/wp-content/uploads/2019/09/eth_cv_01_feature_matching.jpg)
![[:en]ETH CV – Task 2: Camera calibration[:de]ETH CV – Aufgabe 2: Kamerakalibrierung[:] [:en]Camera calibration: Implementation of the "Direct Linear Transform algorithm" and the "Gold Standard algorithm" to calibrate the camera with intrinsic parameters and to estimate the distortion coefficients of the lens. As we have then the relative position of the camera, we can render objects with the correct transformation on the picture.[:de]Kamerakalibrierung: Implementieren des "Direct Linear Transform Algorithm" und des "Gold Standard Algorithm", um die Kamera mit den intrinsischen Parametern zu kalibrieren und die Verzerrungskoeffizienten der Linse zu berechnen. Somit haben wir dann die relative Position der Kamera und zusätzliche Informationen im 3D Raum können korrekt dargestellt werden.[:]](https://breitmuuufrosch.ch/wp-content/uploads/2019/09/eth_cv_02_camera_calibration.jpg)
![[:en]ETH CV – Task 4: Fundamental Matrix, Essential Matrix, and Camera Matrix[:de]ETH CV – Aufgabe 4: Fundamental-Matrix, Essential-Matrix, und Kamera-Matrix[:] [:en]Estimation of the Fundamental Matrix, Essential Matrix, and Camera Matrix with the help of the RANSAC.[:de]Berechnung der Fundamental-Matrix, der Essential-Matrix, und der Kamera-Matrix mit Hilfe von RANSAC.[:]](https://breitmuuufrosch.ch/wp-content/uploads/2019/09/eth_cv_04_ransac_matrices.jpg)
![[:en]ETH CV – Task 5: Silhouette extraction[:de]ETH CV – Aufgabe 05: Silhouette-Rekonstruktion[:] [:en]Silhouette extraction: Reconstruction of a 3D object from multiple calibrated images with a naive silhouette extraction algorithm.[:de]Silhouette-Rekonstruktion: Rekonstruktion eines 3D-Objektes anhand von mehreren kalibrierten Bildern mit einem naiven "Silhouette extraction"-Algorithmus.[:]](https://breitmuuufrosch.ch/wp-content/uploads/2019/09/eth_cv_05_silhouette_extraction.jpg)
![[:en]ETH CV – Task 6: Image segmentation[:de]ETH CV – Aufgabe 6: Bildsegmentierung[:] [:en]Image segmentation with the "Mean-Shift Segmentation" and the "EM Segmentation" (Expectation-Maximization).[:de]Bildsegmentierung mit der "Mean-Shift"-Segmentierung und der "EM"-Segmentierung (Expectation-Maximization).[:]](https://breitmuuufrosch.ch/wp-content/uploads/2019/09/eth_cv_06_image_segmentation.jpg)
![[:en]ETH CV – Task 7: Structure from motion[:de]ETH CV – Aufgabe 7: Struktur aus Bewegung[:] [:en]Structure from motion: Triangulation based on multiple images from an object with different angles to create the structure/model.[:de]Struktur aus Bewegung: Triangulation anhand von verschiedenen Bildern eines Objektes, um die Struktur/das Model zu berechnen.[:]](https://breitmuuufrosch.ch/wp-content/uploads/2019/09/eth_cv_07_structure_from_motion.jpg)
![[:en]ETH CV – Task 10: Image categorization[:de]ETH CV – Task 10: Bildkategorisierung[:] [:en]Image categorization with a bag-of-words image representation.[:de]Bildkategorisierung mit einer "Bag-of-words" Represenation des Bildes.[:]](https://breitmuuufrosch.ch/wp-content/uploads/2019/09/eth_cv_10_image_categorization.jpg)





