Ir al contenido principal

Entradas

Código Python para pasar de notación postfija a infija

Este código es un borrador en  Python que convierte una expresión en notación postfija a notación infija ordenada por paréntesis:

Primer Torneo Chileno de Programación

Inscripción de participantes hasta el 28 de julio de 2017 https://icpc.baylor.edu/regionals/finder/tcp-2017

Memorias UCN ofertadas 2013

Listado de memorias ofertadas para el año 2013. 

¿Cómo ignorar un error en Makefile?

Hoy estaba compilando unos documentos con Latex utilizando Makefile pero por un problema que tengo con un paquete de Latex este me arroja un error. Como todos sabemos, si estoy ejecutando un make   y se produce un error en la ejecución del script  automáticamente este se detiene. En mi caso particular, el error no produce problemas en el documento generado por Latex así que lo ideal sería que no se detuviera. Para evitar este problema uno puede indicarle al make que ignore ese error y siga ejecutando el script. Es cierto que es fácil pero a mi se me había olvidado, así que lo dejo en el blog. :D El comando completo es:

I added a gender recognition video on Vimeo

Agregué un video de reconocimiento de género en Vimeo. Gender Recognition from Juan Bekios-Calfa on Vimeo . Más información (More information):  Demos

New videos on maker recognition, SURF and RANSAC

Nuevos videos de reconocimiento de marcas sobre imágenes, SURF and RANSAC. Más información (More information): Demos

Mi portátil y mi viejo monitor VGA

Hace unos meses cambié mi entorno de escritorio Unity (Ubuntu 12.04) a XFCE en mi viejo portátil Lenovo X61. La razón, muy sencilla, desde que lo instalé todo va más rápido. Sin embargo, hoy me he conseguido un viejo monitor VGA y para mi sorpresa la aplicación que viene con XFCE es buena pero bastante limitada. Así que eché mano de la consola y lo configuré con el comando xrandr .

MATE:Descifrar las probabilidades en la vida

Estaba viendo el excelente programa Redes, de la televisión española, que dirige Eduard Punset. El contenido de este programa se resume en: En la mayoría de situaciones de la vida, el sentido común es un buen atajo para solucionar problemas o para tomar decisiones con un resultado positivo para nosotros. Pero en otras circunstancias, la intuición puede fallar. Se los recomiendo. :D http://www.rtve.es/alacarta/videos/redes/redes-descifrar-probabilidades-vida/1404380/

CPRobot: Cómo obtener una secuencia de imágenes .jpg desde un video

Para unos experimentos necesitaba extraer las imágenes (o cada cuadro de la secuencia) de un video que tenía guardado en mi disco duro. A pesar de parecer una tarea fácil con el comando ffmpeg , cuando creaba la numeración de cada frame lo hacía con el un número de secuencia que partía del 1, 2,...,10, etc. lo que no me permitía luego poder juntarlos de manera cómoda. Luego de un rato leyendo di con el siguiente comando que me permitía numerar cara frame como yo quería.

Linux: Crear varios directorios formateando la salida

Nuevamente quería crear varios directorios, y como eran diez, lo hice de la siguiente forma: Primero imprimí la salida para ver si todo esta bien: for ((i=1; i<10; i++));  do  ii=$(printf "%.5d" "$i");  echo "$ii";  done

Linux: Instalar scikit-learn en Ubuntu 11.10

Scikit-learn es un módulo escrito en Python que integra un conjunto de algoritmos clásicos para aprendizaje automático ( Machine learning ). Esta librería esta muy ligada a otros paquetes cientificos escritos en Python tales  como numpy , scipy y matplotlib .

Linux: Ubuntu 11.10 en mi Notebook (Portátil)

Finalmente el disco duro de mi portátil ha tenido algunos problemas así que he decidido formatearlo y aprovechar de instalar la nueva versión de Ubuntu. ( Ubuntu 11.Oneiric Ocelot ) Como ya es normal en las instalaciones de Linux, y sobre todo en las de Ubuntu, está fue muy sencilla de hacer. Sin embargo, la nueva interfaz Unity 3D dejó mi computador más lento que el "caballo del malo" (como diría un amigo :D ). Así que rápidamente instalé la versión Ubuntu Classic que en está versión no está instalada por defecto.

TIPS: Tres algoritmos para convertir una imagen de color a gris en python

Hace un tiempo necesitaba convertir unas imágenes que estaban en color a escalas de grises utilizando python. Buscando en internet encontré un sitio donde explicaban las fórmulas que se utilizan en el GIMP para realizar la conversión.

Linux: Crear varios directorios con nombres secuenciales

A veces es necesario crear varios directorios con nombres diferentes. En linux podemos echar mano del comando for y una lista que contenga los nombres de los directorios que deseamos crear. En el siguiente ejemplo, se muestra como el comando sirve para crear un conjunto de directorios con nombres de números secuenciales.

Linux: Como cambiar los nombres de archivos con letras minúsculas a mayúsculas

Hoy estaba preparando un script en matlab para procesar un conjunto de imágenes en formato .jpg. Al ejecutar el programa me encontré que los archivos del directorio (carpeta) donde se encontraban las imágenes habían sido nombradas con extensiones como '.jpg', '.JPG', '.Jpg', etc. El programa, que por cuestiones de compatibilidad con otros módulos, solo leía archivos con extensiones '.JPG' me obligó a hacer un pequeño script en linux que permitiera renombrar todos los archivos con la extensión en mayúsculas. Por ejemplo: Si el archivo fuente era 01020.jPg lo debía convertir a 01020.JPG . El script escrito fue el siguiente:

CPRobot: Arduniando, el comienzo.

Hace un tiempo me compré un Arduino Uno, y lo primero que me llamó la atención fue su precio (25 euros) considerando que tiene un procesador ATmega328,  14 entradas/salidas digitales, 6 entradas análogas (con una resolución de 10 bits), comunicación serial, dos pins para interrupciones externas, etc. O sea una pasada para los que son informáticos y les gusta "cacharrear" con electrónica. Mi interés final es poder armar un robot (o algo que se mueva en forma autónoma), por ahora estoy trabajando en como manejar unos motores de continua (próximo blog). Para poder entender las herramientas mínimas para programar el Arduino les recomiendo revisar los siguientes links:

Linux: Como buscar un texto en una lista de archivos en Linux

Como me suele ocurrir, después de un tiempo de no usar los cientos de  scripts  de Matlab que he escrito, hoy necesitaba uno pero no lo encontraba. Solo sabía que en el directorio SEPARATION_SUBCLASS estaban los resultados de su última ejecución. Es decir, en algún lado debería haber un script escrito en Matlab que hiciera referencia a ese directorio. :D

TIPS: Algunas herramientas para trabajar en Latex

Aunque en nuestra Universidad no es muy popular escribir textos utilizando LATEX, yo lo utilizo para redactar la mayoría de mis documentos de tipo técnico y científico, además de las presentaciones (cuando el tiempo no apremia o tengo la plantilla lista) :D Es por eso que hoy agregaré tres link sobre los  paquetes de LATEX que pueden mejorar la calidad de nuestras presentaciones y documentos.

La tira cómica de Raulito el Friki

Buscando algunas cosas que necesitaba para comunicar un dispositivo por voip, me encontré en un grupo de interés que hacía referencias al sitio y luego de leer un rato no paré de reírme.

CPRobot: Tutorial INFONOR 2010

El día martes 16 de noviembre realicé una exposición sobre " Programación de Técnicas de Inteligencia Artificial para robótica ". Aunque fue bastante accidentado espero que haya sido de utilidad. Muchas gracias por su asistencia. Las transparencias utilizadas en la exposición de conceptos fueron las siguientes: