Showing posts with label webcam. Show all posts
Showing posts with label webcam. Show all posts

Saturday, November 22, 2014

Programación lúdica: sobre el desarrollo de software



En estos últimos días he estado trabajando sobre un proyectito simpático, el del Dibujante Electrónico. La idea del software es hacer una especie de sistema que dada una foto, haga una especie de bosquejo de lo que la imagen tiene. Ya expliqué aquí cómo es que el programa reconoce los elementos de la imagen (basándose en el "canny edge detector", un filtro que permite la detección de bordes en una imagen) y del cómo busca general la imagen final.

Sin embargo, una vez que escribí el "punto final" al programa me di cuenta -como ta es costumbre- que el software es ya obsoleto. Es decir, una vez que consideré que tenía una versión razonablemente estable, se me ocurrieron de inmediato nuevas cosas para hacerla más atractiva u como dicen ahora, hacerla una mejor experiencia al usuario.

La primera idea fue incorporar una cámara web que tomara fotos directamente y las pasara al programa para ser directamente procesadas. Alguna vez había intentado manejar videos en mis programas y recuerdo que ni había sido fácil y menos, que fuese posible hacer algo que funcionara para todas las cámaras web que hay en el mercado. De todas maneras me armé de valor y empecé a buscar información. Hallé un par de rutinas que  en principio, podían manejar la imagen. Eran unos componentes para Delphi. Instalé uno y no sirvió. Instalé el segundo y aparentemente las cosas funcionaron mejor. Para esto, tuve que pedir una cámara web prestada porque la mía simplemente la desconoce Windows 7 y el "driver" de la misma no funciona en mi operativo. Me prestaron una cámara de Logitech. Instalé el manejador y listo, todo funcionó correctamente. Mi programa ya podía entonces capturar una imagen para ser procesada por el robot dibujante.

No obstante esto, en algunas pruebas que hice, a veces el manejador de la cámara (que depende de Windows), no hacía correctamente la tarea y se negaba a conectarse, mandándome un error imposible de recuperar. Así, tuve que agregar una advertencia al programa indicando que esta opción era "experimental" y que se usase en esos términos. Hice pruebas en otras máquinas y encontré que con las webcam de Logitech todo funciona correctamente. Probé en mi laptop y a pesar de que el manejador no parece ser el mismo que se usa en Windows 7, las cosas no fallaron. En cambio, en una tablet Iconia, de Acer, con Windows 8, mi programa nunca pudo conectarse con el manejador de la cámara.

Dejando este problema a un lado, le agregué una nueva opción que llamé "herramientas", en donde por lo menos ahora se puede cambiar el color del pincel con el que el programa pinta. Supongo que en la medida que se me vayan ocurriendo nuevas funciones, ahí las pondré. Se me ocurre tener un catálogo de "pinceles" para hacer más flexible la manera de pintar, por ejemplo. Le cambié a todo esto la "piel" a la aplicación y le puse un icono más ad hoc con la idea del software. Ahora se ve mejor el resultado final.

Me faltan cosas, sin embargo. Por ejemplo, no me convence la manera en que el robot dibujante pinta. Me gustaría que pintara más como un dibujante y no "barriendo" la imagen. Eso le daría al usuario elementos para ver a un verdadero robot dibujando. Otra cuestión que he estado pensando y que hay que incorporar en algún momento, es que el programa no pinte exactamente la imagen que ve, sino que se desvié un poco de la misma, haciendo ver "más humano" al programa y no tan perfecto. Esto último sin duda me parece de lo mas atractivo.

Como puede verse, sigue siendo cierta la idea de que todo software acabado es obsoleto. Y aunque no es la última aplicación, la "killer application", me ha enseñado a programar cosas que antes ni idea tenía de cómo hacerlas.

A quien le interese el programa, escríbame a morsa@la-morsa.com y se lo envío a vuelta de correo.

Friday, July 12, 2013

Vivir con miedo

Hoy en día, gracias a que cada vez son más populares los accesos a Internet y que poco a poco la gente va haciéndose de más equipo de cómputo, los temas de seguridad y privacidad están a la orden del día. Si en el pasado nos querían asustar con los malévolos virus (y aún hay correos de amigos con desconocimiento total del tema en donde nos alertan del virus X que destruye todo y no tiene cura). Hoy el tema es la seguridad, la privacidad, el acceso a los datos, por lo que -aparentemente- ahora hay que estar prevenidos hasta de nuestros seres más queridos.

Ahora una fundación sin fines de lucro, Childnet Interrnational, cuya misión es mantener a los niños sin peligro en Internet, ha lanzado una alerta a los usuarios de computadoras: "Los hackers pueden controlar la webcam de sus equipos sin su conocimiento, por lo que es mejor mantener ese dispositivo cubierto cuando no se usa".

Eso, desde luego, sólo puede hacerse cuando un virus, ya sea por un troyano, por ejemplo, el cual se adquiere por entrar a un sitio web peligroso o por abrir archivos adjuntos de desconocidos. Así, los criminales podrían controlar la webcam de su víctima sin que éste siquiera lo sospechara. Según Childnet, este tipo de hackeo se ha convertido en un gran negocio e incluso la BBC ha descubierto una industria completa centrada en comprar y vender acceso a cámaras comprometidas, especialmente aquellas cuyos propietarios son mujeres.

Evidentemente los virus son una amenaza menor actualmente, ya que la mayoría de las computadoras tienen instalado un antivirus moderno. Sin embargo, se pueden tomar otras precauciones adicionales: "apunte la cámara hacia una pared o cubrirla es una buena práctica". explica el CEO de Childnet, Will Gardner. También recomienda tapar el lente de la cámara que aparece en las laptops.

Los expertos en seguridad están indicando que no hay que alarmarse por el reporte, aunque es claro que no está de más ser precavidos. "La idea de tapar el lente de la cámara web es razonablemente común entre los miembros más paranoicos de la comunidad de hackers", indica Josh White, the Oxford Internet Institute, "pero no necesariamente es paranoia. Es útil simplemente estar alertas", agrega.

La realidad me parece, es otra: se busca mantener siempre asustados a todos. Si no es una latente amenaza de un meteorito que destruirá la Tierra en el 2062, entonces es el hecho de que se están matando más abejas en el mundo y eso podría alterar todo el ecosistema y a la postre, acabar con la humanidad, o bien, el cambio climático nos puede sentenciar pronto, si no es que nos envenenamos por tomar demasiada agua o bien, morimos de sed por tomar poca. Dicho de otra manera, esta alerta puede ser sensata, pero en el fondo busca ser sensacionalista, como si los criminales tuviesen control sobre las webcam de los usuarios fácilmente. La idea es pues, que vivamos con miedo y para mí, esto es un ejemplo más de esta actitud.