Miguel Torres-Torriti, Ph.D. McGill University
Assitant Professor
Department of Electrical Engineering





Computer Vision
Math and Numerical Tools
Microchip PIC
Thesis Templates/Plantillas Tesis PUC en LaTeX


Computer Vision Stereovision 3.0 (c) Jul.1998
  • Description: Stereovision was implemented in MS Visual Studio C++ to compute distance maps from a pair of stereoscopic images. The program provides a GUI implemented using the Win32 SKD in a multithreaded approach. The program includes several basic image processing functions, e.g. gaussian blurring, median fltering, fast mean and convolution computation. Stereovision also includes a routine for panospheric image dewarping.
  • Source and binary files: stereov3.rar

ODVS 1.0 (c) 2007

  • Description: ODVS stands for omnidirectional vision sensor. ODVS provides a routine to dewarp panoramic images captured using hyperbolic mirrors. ODVS is implemented using OpenCV and GSL (see GSL and OpenCV sections within this page.
  • Source and binary files: odvs.rar


GSL GNU Scientific Library (GSL)

Math and Numerical Tools


LTP - Lie Tools Package 1.03 (c) 2002
  • Description: The Lie Tools Package for the symbolic manipulation of Lie algebraic expressions.
    The current version 1.03 - 17.MAR.2002 was implemented in Maple 6/7 in the form
    of a library that can be loaded from the Maple environment. See documentation for further details. Source files and documentation include application examples.

    Among other functionallity the package provides procedures for the:

    * Simplification of expressions containing Lie brackets.
    * Construction of Philip Hall bases.
    * Composition of exponential mappings using the Campbell-Baker-Hausdorff formula.
    * Derivation of the Wei-Norman equations for linear differential system with finite-dimensional Lie algebras.

  • Go to the LTP website.

Numerik Tools version Alpha 0.0 (c) 2002

  • Description: Zip compressed file containing C routines for ODE integration and least squares problems optimization. The methods implemented are the Runge-Kutta (RK45) and the Levenberg-Marquardt modification to the Newton-Raphson algorithm, respectively. These routines have been adapted to handle control system problems in a better way. In these problems one usually has some function f(x,u) of the state x and the control variable u, instead of the typical autonomous version f(x). Details and examples have been included. The routines have been successfully compiled with gcc both under Linux and DOS/djgpp. (Keywords: ODE RK45 C routine, Levenberg-Marquardt Optimization C routine).

    Despite been an alpha version, the routines included in Numerik Tools have been tested to work with the same accuracy as that of similar routines found in Matlab or GSL.
  • Source files: http://www.cim.mcgill.ca/%7Emigueltt/eeeng/downloads/ttest.tar.gz


Microchip Microchip PIC Micro-controller


OpenCV Open Computer Vision Library (OpenCV)
  • Basic Example: ocvs.zip
  • Image Sequence to Video Converter: im2vid
    • Binary: im2vid_bin.zip
    • Source: im2vid_src.zip
    • Note: im2vid allows you to convert a sequence of images to a video. For example, if you want to build a video from some images named im0011.bmp, im0012.bmp, ..., im0173.bmp at 10 frames per second, issue the command: im2vid im -e bmp -sq 11 173 -zp 4 -fps 10
      For further help type: im2vid -h
  • Video to Image Sequence Converter: vid2im
    • Binary: vid2im_bin.zip
    • Source: vid2im_src.zip
    • Note: vid2im does the opposite to what im2vid does, i.e. it extracts the frames of a video and generates a sequence images. For example, if you wish to convert video.avi to a sequence of image, issue the command:vid2im video.avi
      For further help type: vid2im -h
  • Plotting / Data Visualization / Virtual Instruments / GUI Widgets Routines: plot.zip
    • Current implemented widgets include 1D plots (variables vs. sample number), 2D plots (variable Y vs. variable X), level indicators, analog indicators, heading indicators (compasses), attitude indicators (aka. gyro, pitch-roll or artificial horizon indicators). There exist many data visualization routine libraries, as well as GUI widget toolkits and utilities. However, the purpose of this small set of routines is to provide a basis upon which more sophisticated widgets can be built using OpenCV, while keeping functions simple enough for anyone to learn on his own how to implement plots that can display data dynamically (possibly in real-time). It should be possible to easily implement all the functions provided using OpenGL, DirectX or any other advanced computer graphics library.
  • PTZ      C/C++ program code template for computer vision and automation projects
                 Plantilla de programación en C/C++ para proyectos de visión por computador y
    • Full distribution (C/C++ source code and LaTeX documentation): ptz.zip
    • Documentation in PDF: ptz.pdf
Robotics HD Scan Matching for Robot Localization (c) 2008
  • Description: A set of Matlab files to compute scan matching based on the minimization of the Hausdorff distance. These are the core routines employed for robot localization as propossed in:
  • F. Donoso-Aguirre, J. P. Bustos-Salas, M. Torres-Torriti, A. Guesalaga. Mobile robot localization using the Hausdorff distance. Robotica, v. 26, n. 2, March 2008, pp. 129-141.
  • Source files: HD_080209.zip

READ SICK for Visual Studio 2003 (c) 2008

  • Description: C/C++ routine to read Sick laser range scanners via a serial RS232 connection. The project is implemented in Visual Studio 2003 and has been tested successfully with Sick PLS 101 and Sick LMS 295.
  • Source and binary files: READ_SICK.rar

IMU for Visual Studio 2003 (c) 2008

  • Description: C/C++ routine to read Crossbow's inertial measurement unit RGA300CA-100 via a serial RS232 connection. The project is implemented in Visual Studio 2003.
  • Source and binary files: imu.rar

P3AT COMMAND for Visual Studio 2003 (c) 2008

  • Description: C/C++ routine to read the encoders and command the motors of ActivMedia's Pioneer 3 All-Terrain (P3AT) mobile robot. The project is implemented in Visual Studio 2003.
  • Source and binary files: p3at_robot_control.rar

ROBOT CONTROL GUI for Visual Studio 2003 (c) 2008

  • Description: A graphical control interface implemented in C/C++ using OpenGL to monitor and control mobile robots. The GUI displays robot variables such as encoders, heading, velocity acceleration, its motion on a map. In order to be fully functional, the program requires certain sensors and the ARIA library for the P3AT robot. The project is implemented in Visual Studio 2003 and has been released as an example that can be modified to implemented custom robot control GUIs.
  • Binary files: ds_robot_gui_opengl_bin.zip
  • Source files: ds_robot_gui_opengl_src.zip

Tutorial sobre Modelación de la Dinámica y Simulación de Robots
Expositor invitado en la 5ta Escuela Latinoamericana en Robotica, Universidad de Chile
Tutorial on Robot Dynamics Modelling and Simulation
Invited tutorial given at the 5th Latin-American Robotics School, Universidad de Chile

2012/12/14 -- http://www.amtc.cl/escueladeverano/programa.htm
Link a este tutorial
: http://www.ing.puc.cl/~mtorrest/downloads.htm#robotics_tutorial

  • Descripción: Este tutorial explica en castellano como describir la geometría de un robot usando los parámetros de Denavit-Hartenberg, y como obtener sus ecuaciones dinámicas usando el método Recursivo de Newton-Euler. Se incluyen también ejemplos paso a paso en Maple and Matlab. Los ejemplos en Matlab requieren de la versión 8 (Feb. 2009) del Robotics Toolbox de Peter Corke (dispobible en forma gratuita aquí). La versión 8 del toolbox se incluye en esta página en caso de problemas para descargarla de el sitio original.
  • Description: This tutorial explains in Spanish how to describe the geometry of a robot using the Denavit-Hartenberg parameters, and how to obtain its dynamical equations using the Recursive Newton-Euler approach. Step by step examples in Maple and Matlab are also provided. The Matlaba examples require release 8 (Feb. 2009) of Peter Corke's Robotics Toolbox (freely available here). A copy of release 8 is included here, just in case it is not possible to acces the original site.
  • Presentation: pres_robotics_summer_school_111214.pdf
  • Maple Examples: DH_transformations.zip
  • Matlab Examples: robmod_matlab.zip
  • Robotics Toolbox release 8, Feb. 2009: robot_r2008.zip



Thesis Templates / Plantillas Tesis PUC en LaTeX

1. Atención! Las plantillas de postgrado en la página web de postgrado no han sido actualizadas, y tienen problemas de compilación por cambios en las nuevas versiones de apacite.
2. Use las plantillas bajo su propia responsabilidad. Si algo no funciona, se debe a que ha configurado/instalado alguna parte del sistema TeX/LaTeX, o los múltiples editores incorrectamente. Las soluciones se encuentran normalmente en la documentación e información disponible en la red. Si tiene una consulta, me la puede enviar, pero por razones de tiempo solo responderé si los problemas de compilación se deben a cambios en el sistema que requieran que reprograme parte del código en las plantillas.


Contact Info
Short Bio


> Español