Blog que narra la experiencia en la construcción y uso de conceptos de la Realidad Aumentada para favorecer el desarrollo kinestésico y reconocimiento de colores con niños

Instalación de PVRA

REQUISITOS DE INSTALACION

1. Tener instalada una cámara Web (WebCam) de por lo menos 3.0 Mpx. Usando los controladores respectivos ofrecidos por el fabricante.

2. Tener instalado la Máquina Virtual de Java (jre). Esta se encuentra en la dirección web:

http://www.box.net/shared/a1fa9mk2qb o en su defecto en la página del fabricante http://www.java.com/es/download/manual.jsp

 3. Instalar en el siguiente orden: OpenCV_1.0.exe, WinVDIG_101.exe y QuickTimeInstaller.exe. Software que se encuentran en un repositorio acondicionado en la Red. (Reiniciar si está utilizando Windows XP)

OpenCV_1.0.exe. Puede ser descargado de:

  la URL del proyecto

 http://www.box.net/shared/cndyb04x7n

O del Fabricante

 http://sourceforge.net/projects/opencvlibrary/files/opencv-win/1.0/OpenCV_1.0.exe/download

WinVDIG_101.exe. Puede ser descargado de:

http://www.box.net/shared/11dp8vghsr

O del fabricante

http://www.eden.net.nz/7/20071008/ (debe descargar la versión 1.0.1) otras versiones dan problemas con el uso de processing

QuickTimeInstaller.exe. Puede ser descargado de:

http://www.apple.com/es/quicktime/download/

enlace al software Pintura virtual

http://www.ziddu.com/downloadlink/15257488/PinturaVirtual.rar

INSTRUCCIONES DE USO

1. Copie la carpeta PinturaVirtual ofrecida en el enlace de la página WEB del proyecto y ubíquela en el disco C: (C:\PinturaVirtual\) – Esta ubicación no se puede cambiar.

2. Conecte la WebCam (de preferencia una con más de 3Megapixeles)

3. Busque en la carpeta PinturaVirtual el ejecutable llamado setup.exe e inícielo.

4. Siga las Instrucciones del Menú.

Juan Cadillo

Comentarios en: "Instalación de PVRA" (4)

  1. hola,

    soy de colombia (medellin), por favor necesito el codigo fuente o saber como lo hacen para la identificacion del color , ya que necesito hacer un proyecto similar par ami universidad.

    mil gracias,

    • Estimada Laura:

      El fragmento más resaltante e interesante que se desarrolló en este subsistema es el de transformación de un pixel del modelo RGB al CIElab, el código es para el lenguaje processing.
      //definimos la clase
      //declaramos las variables de la clase
      //inicializamos la clase
      class transformaColor
      {
      float x;
      float y;
      float z;
      //Colores RGB
      float rojo;
      float azul;
      float verde;
      //colores lab
      float l;
      float a;
      float b;
      float cab;
      float hab;
      transformaColor(color pixelColor){//inicializacion
      rojo = red(pixelColor);
      azul = blue(pixelColor);
      verde = green(pixelColor);
      }
      void rgbAxyz(){
      float rojo1;
      float azul1;
      float verde1;
      //transformando
      rojo1 = rojo/255;
      azul1 = azul/255;
      verde1 = verde/255;
      if(rojo1>0.04045){
      rojo1 = (rojo1+0.055)/1.055;
      rojo1 = pow(rojo1,2.4);
      }
      else{
      rojo1 = rojo1/12.92;
      }
      if(verde1>0.04045){
      verde1 = (verde1+0.055)/1.055;
      verde1 = pow(verde1,2.4);
      }
      else{
      verde1 = verde1/12.92;
      }
      if(azul1>0.04045){
      azul1 = (azul1 + 0.055)/1.055;
      azul1 = pow(azul1,2.4);
      }
      else{
      azul1 = azul1/12.92;
      }
      azul1 *= 100;
      verde1 *= 100;
      rojo1 *= 100;
      //xyz definidos según estándar
      x = rojo1 * 0.4124 + verde1 * 0.3576 + azul1 * 0.1805;
      y = rojo1 * 0.2126 + verde1 * 0.7152 + azul1 * 0.0722;
      z = rojo1 * 0.0193 + verde1 * 0.1192 + azul1 * 0.9505;
      }
      //transformando a CIElab
      void xyzAlab(){
      float x1 = 0.0;
      float y1= 0.0;
      float z1= 0.0;
      x1 = x/95.047;
      y1 = y/100.0;
      z1 = z/108.883;
      if(x1 > 0.008856){
      x1 = pow(x1,1.0/3);
      }
      else{
      x1 = 7.787 * x1 + 16.0/116;
      }
      if(y1>0.008856){
      y1 = pow(y1,1.0/3);
      }
      else{
      y1 = (7.787*y1) + (16.0/116);
      }
      if(z1>0.008856){
      z1 = pow(z1,1.0/3);
      }
      else{
      z1 = 7.787 * z1 + 16.0/116;
      }
      //los valores lab
      l= 116 * y1 -16;
      a= 500*(x1 -y1);
      b= 200*(y1 – z1);
      println (“lab” + l + ” ” +a+ ” ” + b);
      //calculo la distancia
      cab = sqrt(sq(a)+sq(b));
      println (“cab” + cab);
      //calculado el {ángulo
      float angle = atan2(bra);
      hub = degrees(angle);
      println (“hab” + hab);
      }
      }
      //función para diferenciar colores
      float diferenciaSegun1994 (float[] lab1, float [] lab2){
      float c1,c2,dc,dl,da,dh,db,first,segundos,third;
      c1 = sqrt(lab1[1]*lab1[1]+lab1[2]*lab1[2]);
      c2 = sqrt(lab2[1]*lab2[1]+lab2[2]*lab2[2]);
      dc = c1-c2;
      dl = lab1[0]-lab2[0];
      da = lab1[1]-lab2[1];
      db = lab1[2]-lab2[2];
      dh = sqrt((da*da)+(db*db)-(dc*dc));
      println (“dh” + dh);
      first = dl;
      segundos = dc/(1+0.045*c1);
      println (“segundos” + segundos);
      third = dh/(1+0.015*c1);
      println (“third” + third);
      println(“AQUI” + sqrt(first*first+segundos*segundos+third*third));
      return(sqrt(first*first+segundos*segundos+third*third));
      }

    • La función devuelve un valor que tiene que ser comparado con un patrón que tienes que adaptar según el color que capta la cámara. Saludos.

  2. Educared Perú dijo:

    ¡¡¡ Felicitaciones por ser uno de los ganadores del Concurso Educared 2011 !!!
    Modalidad B – Categoría II – II Premio

    http://www.educared.org/global/premiointernacional/fallo_jurado_2011

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión /  Cambiar )

Google photo

Estás comentando usando tu cuenta de Google. Cerrar sesión /  Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión /  Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión /  Cambiar )

Conectando a %s

A %d blogueros les gusta esto: