Cinvestav
Computer Science Department

Course: Computer Vision

Prof. Dr. Luis Gerardo de la Fraga
Cuatrimester May-August 2025

Course content.

Course Notes:

  1. 03.07.2025. Autocalibración usando un cuboide.
  2. 01.07.2025. La proyección de un cuboide según el modelo de la cámara oscura.
  3. 29.06.2025. Dos scripts en python y OpenCV para procesar imágenes.
  4. 25.06.2025. Calibración con un patrón de dos círculos concéntricos.
  5. 19.06.2025. Un círculo transformado por una homografía.
  6. 12.06.2025. Ajuste no lineal de elipses usando el método Levenberg-Marquardt.
  7. 03.06.2025. Ajuste lineal de elipses.
  8. 27.05.2025. The Povray script to generate an animated gif with a cube rotating in its main diagonal.
  9. 15.05.2025. The python scripts for the pinhole camera model.
  10. 13.05.2025. Python script using the QR decomposition to calculate a homography.
  11. 08.05.2025. Python script to calculate a homography.

Homeworks:

Tarea 6 Calibración con un patrón de círculos concéntricos
Fecha de entrega: 03.07.2025

  1. Realizar el patrón de dos circulos concéntricos. El diámetro del círculo exterior debe ser de 10 cm y el del círculo interior de 5 cm.
  2. Tomar cinco fotografías del patrón
  3. Procesar las imágenes para extraer el perímetro de las elipses.
  4. Ajustar las elipses con el método lineal. Obtener el valor de f, R y la posición de la cámara.

Tarea 5 Ajuste no lineal de elipses
Fecha de entrega: 19.06.2025

  1. Realizar los ajustes mostrados en la figura 4 del artículo:
    S. J.A, W. Rauh, H-J. Warnecke, Least-squares orthogonal distances fitting of circle, sphere, ellipse, hyperbola, and parabola Pattern Recognition 34 (2001) 2283-2303
  2. Deben usar el método Levenberg-Marquardt del apunte del día 12.06.2025.
  3. Reporten la elipse obtenida y el número de evaluaciones de la función de error que se realizó en cada ajuste.

Homework 4. Transformations in 3D
Delivery date: 05.06.2025

  1. Create an animated gif of a helicopter. The helicopter body will be build with a single box. The helicopter has three propellers.
  2. Build each propeller with a single triangle. One of the triangle vertices must lie in the origin of the local coordinate system.
  3. The propellers must rotate.

Homework 3. Camera self-calibration
Delivery date: 26.05.2025

  1. From the three images taken in Homework 1, take the homographies
  2. Calculate f, R, and vector t from the homographies. Remember that the values for (u0,v0) are the image center coordinates ( u0=(width-1)/2, v0=(heigth-1)/2 ).
  3. Project the 3D cube on the images. The 3D cube must be transformed by the pinhole camera model obtained in the previous item (2).

Homework 2. Verify homographies
Delivery date: 22.05.2025

  1. Generate three images using the pinhole camera model scripts saw in the class on 15.05.2005.
  2. Calculate the homography between the generated images and the plane model
  3. Calculate the homography as lH=KR[e1,e2,-c], this homography and the previous one must be very similar.
  4. Repeat the process with the three images generated in the first item.

Homework 1. Calculation and validation of a homography
Delivery date: 12.05.2025

  1. Draw a fiducial marker. It must be an square of 10 cm each side and 1 cm wide. Print the marker.
  2. Take several photos of the marker. Use no zoom or any processing of the the taken images.
  3. By hand take the coordinates values of the marker vertices.
  4. Calculate the homography with the script viewed in class.
  5. Verify that the homography is correct by drawing the square and a cross tranforming the values on the marker model to the used image.

Última actualización:
01.07.2025
Comentarios: fraga en cs.cinvestav.mx