Capturar imágenes desde una Webcam en C#

Publicado el 16. jun, 2012 ·9

O cómo desarrollar una cámara de fotos en Visual Studio y con nuestra propia Webcam. Es lo que hoy voy a mostraros.

En primer lugar, he creado un formulario como el siguiente:

En él vamos a usar dos PictureBox, un Button para capturas las imágenes, un TextBox donde escribir la ruta de guardado de la imagen, y un Button más para guardarla.

A continuación, vamos a pasar a importar a nuestro proyecto las librerías necesarias para hacer uso del driver de la Webcam. Estas librerías podéis descargarlas desde aquí.

Para hacer la importación, desde el Explorador de soluciones, hacemos clic derecho sobre References y Agregar referencia. Desde la pestaña Examinar buscamos nuestros dos ficheros descargados: AForge.Video.DirectShow.dllAForge.Video.dll Y finalmente los declaramos al inicio del proyecto:

using AForge.Video;
using AForge.Video.DirectShow;

El siguiente paso será iniciar la captura de imágenes desde nuestra Webcam y mostrarlo en el primer PictureBox (pctbox_webcam). Esto lo haremos durante la carga del formulario, en el evento Load:

if (existenDispositivos)
{
	fuenteDeVideo = new VideoCaptureDevice(dispositivosDeVideo[0].MonikerString);
	fuenteDeVideo.NewFrame += new NewFrameEventHandler(MostrarImagen);
	fuenteDeVideo.Start();
}
else
{
	MessageBox.Show("No se encuentra ningún dispositivo de vídeo en el sistema", "Información", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
	CerrarFormulario();
}

Cuando hagamos clic sobre el botón Capturar deberemos usar el siguiente código:

if (fuenteDeVideo != null)
{
	if (fuenteDeVideo.IsRunning)
		pctbox_imagen.Image = pctbox_webcam.Image;
}

Y si queréis conocer cómo guardar dicha imagen en un fichero, pues al hacer clic sobre Guardar usaremos el siguiente fragmento:

// Recorto la imagen conforme lo mostrado (Size del pctbox_webcam)
Rectangle formaRecorte = new Rectangle(0, 0, 300, 300);
Bitmap imagenOrigen = (Bitmap)pctbox_imagen.Image;
Bitmap imagen = imagenOrigen.Clone(formaRecorte, imagenOrigen.PixelFormat);

// Y la guardo
try
{
	String ruta = txbox_ruta.Text.Trim();
	if (!ruta.Substring(ruta.Length - 1).Equals("\\"))
		ruta += "\\";
	ruta += "CapturaWebcam.bmp";
	imagen.Save(ruta);

	MessageBox.Show("Fotografía almacenada", "Información", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
}
catch (Exception exc)
{
	MessageBox.Show(exc.Message, "Información", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
}

El resultado final, con un poco más de código, es el siguiente:

En cualquier caso, si queréis el proyecto completo para verlo funcionando e indagar un poco más el código, os lo dejo para descargar:

Recurso | Proyecto en Visual Studio 2008

Categorías: .NET, C#, Programación · Etiquetas:, ,

HTC One X y su compra en España

Publicado el 23. may, 2012 ·7

Tras llevar un par de meses sin escribir (por falta de tiempo), saco un hueco para exponer mi experiencia con el nuevo HTC One X, del que podéis leer un poco aquí:

Xataka | HTC One X, análisis

Como regalo fin de carrera, mis padres me lo regalaron hace 3 semanas. Lo compraron en eXpansys España, distribuidor oficial de HTC. Cuál fue mi sorpresa al encenderlo por primera vez: los idiomas disponibles eran Español (Irlanda) y Español (Reino Unido). WTF? Tras estar 3 largas semanas detrás de la gente de eXpansys (muy mala experiencia en la devolución como imaginaréis), me devuelven el dinero.

Durante este tiempo, he estado buscando el terminal con el idioma Español (España). He de reconocer que me sentía tonto cuando hablaba por teléfono con alguna tienda.

Tras darme cuenta que las grandes tiendas venden el terminal importado de otros países (generalmente desde Inglaterra o Alemania), me dispuse a contactar con Atención al cliente de HTC, haciendo uso de su servicio de chat en línea.

La operadora que me atendió fue Laura González, a quien expuse la problemática para encontrar el terminal en su versión española, ni tan siquiera en su distribuidor oficial. Su actitud en todo momento fue la de no darme una solución e instarme a que “busque otra vez por si a caso”. Ante esto, pensé: “impresionante estrategia de negocio la de HTC”, y así se lo hice saber.

Si queréis conocer todos los detalles de la conversación, os la dejo a continuación:

Laura Gonzalez: Hola! En qué puedo ayudarle?
Es la primera vez que se pone en contacto con nosotros?
Israel Diéguez: No, no es la primera vez
Israel Diéguez: (facilité mi correo-e)
Israel Diéguez: Llamaba para hacer una consulta al respecto de su terminal: el HTC One X
Israel Diéguez: Hace 3 semanas lo adquirí a través de eXpansys, su distribuidor oficial
Israel Diéguez: Recibí la versión inglesa. El problema no era que el cargador que venía por defecto fuese el de Inglaterra, ni que el idioma al encenderlo (y al intentar cambiarlo posteriormente) fuese Español (Irlanda) o Español (Reino Unido)
Israel Diéguez: El problema vino cuando me percaté que ciertas apps preinstaladas venían en Inglés y sin posibilidad de cambiarlo al español
Israel Diéguez: Devolví el terminal, en 3 días dispondré de mi dinero nuevamente en el banco. Por tanto, estoy buscando el terminal en su versión Español (España)
Laura Gonzalez: ¿Podría indicarme su número del IMEI o número de serie de su terminal para registrar su incidencia?
Israel Diéguez: No dispongo del terminal, ya está en las oficinas de eXpansys (lo devolví, como le he comentado)
Laura Gonzalez: Ah, vale
Laura Gonzalez: De verdad, señor Israel, no podemos verificar el pais del telefono excepto cuando tenegamos el numero del serie o del IMEI
Israel Diéguez: No quiero que lo verifique, ya se lo digo yo: no disponía de Español de España
Israel Diéguez: lo que quiero es comprar un terminal con mi idioma
Laura Gonzalez: No, está disponible , claro
Israel Diéguez: quiere decir que no está disponible en español de España, o que claro que lo está?
Laura Gonzalez: Claro que está
Israel Diéguez: De acuerdo
Laura Gonzalez: Tiene alguna consulta más en que pueda ayudarle?
Israel Diéguez: Podría usted decirme dónde puedo adquirirlo? En vuestro distribuidor oficial no lo venden, y no se dónde adquirirlo
Laura Gonzalez: Como no vendemos telefono, pues ponga en contacto con El corte ingles, Phone House, Carrefour, los operadores
Israel Diéguez: http://www.htcaccessorystore.com/es/htc-one-x/
Israel Diéguez: En esta web, que es de HTC, vendéis el terminal
Laura Gonzalez: a
Laura Gonzalez: Perdon
Laura Gonzalez: Pues simplemente ponga en contacto con los distruidores de HTC?
Israel Diéguez: Pero ellos me dicen que actualmente no venden la versión española
Israel Diéguez: en eXpansys le digo
Laura Gonzalez: Pues intente por favor con los demas
Laura Gonzalez: Vale??
Laura Gonzalez: Tiene alguna consulta más en que pueda ayudarle?
Israel Diéguez: En ningún sitio tienen disponible la versión española
Israel Diéguez: quiero que se den cuenta de que su producto estrella no está llegando al consumidor
Laura Gonzalez: Pues no sabemos lamentablemente
Laura Gonzalez: No vendemos telefonos señor Israel
Israel Diéguez: y por lo que veo, tampoco tienen interés
Laura Gonzalez: Interes de que??
Israel Diéguez: si vosotros sois los interesados en vender los productos y no hacéis el esfuerzo de hacerlo llegar al usuario, de nada sirve, no venderéis entonces un producto
Laura Gonzalez: Lo sentimos mucho por la molestia
Israel Diéguez: y si un cliente como yo, que lleva adquiriendo vuestros terminales durante más de 5 años, os está comentando el problema y la única solución es: lo siento
Israel Diéguez: pues creo que no es una buena estrategia de comercio
Israel Diéguez: porque es cierto que quizás no os dedicáis a vender el producto (que repito, sí lo hacéis por vuestra web), pero si no os preocupáis de que llegue al usuario, no vendéis
Israel Diéguez: mi operadora móvil no me ofrece el terminal porque no lo posee en su catálogo (además de que tengo actualmente permanencia por el anterior HTC Desire)
Israel Diéguez: y si quiero adquirirlo libre, no puedo hacerlo
Israel Diéguez: sé que usted no puede actualmente darme una solución, pero sí puede interesarse en hacer llegar la noticia a sus responsables y solicitarles una solución para a la vez ponerse en contacto conmigo en 2 ó 3 días y ofrecerme la solución
Israel Diéguez: quizás en HTC no seáis consciente de que no está llegando vuestro buque insignia al usuario, pero el día 29 SAMSUNG llega al mercado con su nuevo terminal GALAXY SIII
Israel Diéguez: quizás algunos se hayan decidido ya por dicho terminal ante la imposibilidad de comprar el vuestro. Quizás lo haga yo si no me dais una solución, porque dispongo del dinero para un nuevo terminal
Laura Gonzalez: Pues busque otra vez por si a caso, señor Israel
Israel Diéguez: de acuerdo
Laura Gonzalez: Para finalizar, no se olvide de realizar la encuesta de satisfacción con el servicio del chat, son 4 preguntas y es muy importante para nosotros.
Israel Diéguez: muchas gracias por su ayuda (irónicamente)
Israel Diéguez: difundiré la conversación por Internet para que se sepa la actitud de HTC
Laura Gonzalez: Gracias a usted
Israel Diéguez: Un saludo
Laura Gonzalez: Gracias por contactar con nosotros, que tenga un buen día.

Categorías: Denuncias, Dispositivos · Etiquetas:

La problemática de Movistar y la fibra óptica

Publicado el 05. mar, 2012 ·5

Vamos a hablar sobre una cuestión que muchos ciudadanos, seamos o no amantes de las tecnologías, nos preguntamos:

¿Qué está pasando con Movistar y su servicio de acceso a Internet?

Llevo años escuchando cómo la CMT (Comisión del Mercado de las Telecomunicaciones) no permite que Movistar se mueva con libertad como el resto de compañías de telecomunicaciones.


Movistar, como todos sabemos, nació como una empresa pública (CNTE) que posteriormente se privatizó (1997), lo que debería haber implicado un gran impulso para las telecomunicaciones de nuestro país. Debido al pasado de la compañía, entiendo que la CMT, organismo perteneciente al Estado, pusiese límites en su momento para posibilitar la entrada de otras compañías al mercado español, cosa que ocurrió a finales de los años 90. Esto beneficiaría al usuario, no se permitiría el monopolio.

Sin embargo, de eso hace más de 12 años. En todo este tiempo, el Estado ha estado alargando todas estas restricciones a través de las conocidas “moratorias”. Pero, ¿cuándo van a dar libertad en la comercialización de los productos de Movistar?

Telefónica es la segunda operadora de telecomunicaciones del mundo por capitalización bursátil. Esto nos puede hacer pensar en el poder de innovación que tiene la compañía, donde en otros países está dando servicios de mayores prestaciones, con precios mucho más competitivos.

Y es que la actitud de la CMT no es otra que cortar los brazos a Movistar: imposibilidad de comercialización y lanzamiento de productos con libertad, imposibilidad de duplicación de la velocidad de manera gratuita (de esto hace unos años ya), imposibilidad de eliminar el alta de línea fija,…

¿Sabías que el precio por el que Movistar está obligada a alquilar las líneas al resto de operadores es inferior al precio de su mantenimiento? ¿Y sabías que Movistar ha tenido limitado el despliegue de fibra óptica?

Y es que mientras que Movistar hace inversiones millonarias, el resto de compañías se limitan a hacer su papel de chupasangres.

Seamos claro:

la CMT, durante estos años, ha sido un verdadero cáncer para las telecomunicaciones en nuestro país

 

ACTUALIZACIÓN

He podido leer una entrevista que el pasado 4 de Febrero hizo El País a Luis Miguel Gilpérez, presidente de Telefónica España, y donde se revelan algunas de las ideas que expuse arriba:

“… Telefónica tiene un marco regulatorio en el que no puede ajustar los precios hasta donde quiera.”

 

“Necesitamos un marco estable que garantice la inversión. No puedo hacer inversiones para que otros se aprovechen y se enganchen a nuestra red como sucede con el cobre. A la CMT y al Gobierno le pido racionalidad. Ya hay un alto nivel de competencia en este sector y, a lo mejor, es el momento de replantearse qué tipo de regulación queremos.”

AZETA REM

Publicado el 05. mar, 2012 ·0

AZETA REM was the last project that I presented in the University with my colleges María José, Sonia and Sergio. My carried roles had been:

Project manager, Analyst – Programmer, DBA and Designer

Our project represented a requeriments manager (REM) tool very useful to software development projects. It’s an experimental and Alpha version.

This application is developed in Java, so it run in Windows, Linux and Mac OS. The tool works in two languages: Spanish as base language, and English as second language.

Technologies used along the development were:

NetBeans as IDE, Java and Swing, XML, XSL as style sheet, TopLink in persistence, UML and SVN as version control

And the methodology has been Agile-UP.

If you want see some image captures, you can see the entry in Spanish in my Portfolio or here.

Here we speak English

Publicado el 27. feb, 2012 ·0

If you pay attention, you can see some sections of this blog in English. The reason is that I am interested in go abroad to catch work experience and languages (improve a lot my English and learn German).

If you speak English, you can navigate over top bar:

About me

Contact me

There you can see some interesting information, my career goals and my resumé. Also, you can contact me in English.

So, feel free to navigate!

Categorías: General · Etiquetas:,