20.04.2014 Views

Desarrollo de Soluciones Cliente-Servidor para la Verificación ...

Desarrollo de Soluciones Cliente-Servidor para la Verificación ...

Desarrollo de Soluciones Cliente-Servidor para la Verificación ...

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

44 Capítulo 3. Base Tecnológica<br />

X.509 Certificate Token Profile 1.1<br />

3.4. Procesado <strong>de</strong> Imagen<br />

Como parte <strong>de</strong>l trabajo realizado en esta Tesis se presenta una herramienta <strong>de</strong> monitorización<br />

<strong>de</strong> estudiante que proporciona una medida <strong>de</strong>l tiempo <strong>de</strong> presencia y <strong>de</strong> atención<br />

que éste <strong>de</strong>dica a los contenidos <strong>de</strong> una p<strong>la</strong>taforma <strong>de</strong> E-Learning. Para ello se aplica<br />

un procesado <strong>de</strong> imagen al flujo <strong>de</strong> ví<strong>de</strong>o proce<strong>de</strong>nte <strong>de</strong> <strong>la</strong> cámara web <strong>de</strong>l equipo <strong>de</strong>l<br />

estudiante, don<strong>de</strong> se espera que éste se encuentre. OpenCV es una biblioteca libre <strong>de</strong> visión<br />

artificial originalmente <strong>de</strong>sarrol<strong>la</strong>da por Intel que será utilizada en esta Tesis <strong>para</strong> <strong>la</strong><br />

realización <strong>de</strong> <strong>la</strong>s tareas <strong>de</strong> <strong>de</strong>tección <strong>de</strong> caras frontales, <strong>de</strong>tección y seguimiento <strong>de</strong> rasgos<br />

faciales (ojos, nariz y boca), y seguimiento <strong>de</strong> <strong>la</strong> piel <strong>de</strong>l estudiante. Concretamente,<br />

se partirá <strong>de</strong> <strong>la</strong>s implementaciones existentes <strong>de</strong> los métodos <strong>de</strong> <strong>de</strong>tección Adaboost <strong>de</strong><br />

Vio<strong>la</strong>-Jones, <strong>de</strong>l algoritmo <strong>de</strong> seguimiento basado en flujo óptico <strong>de</strong> Lucas-Kana<strong>de</strong>, y <strong>de</strong><br />

<strong>la</strong> técnica no <strong>para</strong>métrica Camshift, combinándolos <strong>para</strong> crear un módulo <strong>de</strong> seguimiento<br />

<strong>de</strong> estudiante efectivo.<br />

3.4.1. Introducción<br />

Des<strong>de</strong> que apareció su primera versión alfa en el mes <strong>de</strong> enero <strong>de</strong> 1999, OpenCV se<br />

ha utilizado en infinidad <strong>de</strong> aplicaciones. Des<strong>de</strong> sistemas <strong>de</strong> seguridad con <strong>de</strong>tección <strong>de</strong><br />

movimiento, hasta en el control <strong>de</strong> procesos don<strong>de</strong> se requiere reconocimiento <strong>de</strong> objetos.<br />

Esto se <strong>de</strong>be a que su publicación se da bajo licencia BSD, que permite que sea usada<br />

libremente <strong>para</strong> propósitos comerciales y <strong>de</strong> investigación con <strong>la</strong>s condiciones en el<strong>la</strong><br />

expresadas.<br />

OpenCV es multip<strong>la</strong>taforma, existiendo versiones <strong>para</strong> Linux, Mac OS X y Windows.<br />

Contiene mas <strong>de</strong> 500 funciones que abarcan una gran gama <strong>de</strong> áreas en el proceso <strong>de</strong><br />

Visión, como reconocimiento <strong>de</strong> objetos (reconocimiento facial), calibración <strong>de</strong> cámaras,<br />

visión estéreo, etc.<br />

El proyecto preten<strong>de</strong> proveer un Tool-Kit o Marco <strong>de</strong> <strong>de</strong>sarrollo fácil <strong>de</strong> utilizar y altamente<br />

eficiente. Esto se ha logrado, realizando su programación en código C y C++<br />

optimizados, aprovechando a<strong>de</strong>más <strong>la</strong>s capacida<strong>de</strong>s que proveen los procesadores multinúcleo.<br />

A<strong>de</strong>más, OpenCV es compatible con <strong>la</strong>s Primitivas <strong>de</strong> Rendimiento Integradas<br />

<strong>de</strong> Intel, que son un conjunto <strong>de</strong> rutinas <strong>de</strong> bajo nivel específicas <strong>para</strong> procesadores Intel<br />

(IPP) que aumentan su rendimiento.<br />

3.4.2. Algoritmo <strong>de</strong> Vio<strong>la</strong> & Jones<br />

El primer método que vamos a ver <strong>para</strong> realizar tareas <strong>de</strong> <strong>de</strong>tección es el <strong>de</strong>sarrol<strong>la</strong>do<br />

por Paul Vio<strong>la</strong> y Michael Jones [Vio<strong>la</strong> y Jones, 2001]. Este método realiza una <strong>de</strong>tección<br />

<strong>de</strong> <strong>la</strong> posición <strong>de</strong>l objeto buscado. Se ha comprobado que ofrece muy buenos resultados<br />

en <strong>la</strong> <strong>de</strong>tección <strong>de</strong> caras <strong>de</strong> frente. En concreto una mejora <strong>de</strong>l algoritmo realizada por<br />

Lienhart [Lienhart y Maydt, 2002] es uno <strong>de</strong> los métodos más utilizados <strong>para</strong> <strong>la</strong> <strong>de</strong>tección

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!