• Lunes 7 de Julio de 2025, 03:58

Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.


Mensajes - Quicksilver

Páginas: 1 [2] 3 4 5
26
Programación en C / MANEJO DE ENCODER
« en: Sábado 18 de Octubre de 2008, 16:56 »
Un saludo a toso los foreros.

Tengo una duda, espero que sea trivial, hace poco vengo manejando un encoder y he realizado un programa para que el pic me cuente pulsos con el timer1, y mostrarlos por una lcd, sin embargo, me aparece puros caracteres extraños en la lcd, no se que pueda ser, expondré el código mas abajo.

Código: Text
  1. #include <18F4455.h>
  2. #use delay(clock=20000000)
  3. #fuses HS,NOWDT,NOPROTECT
  4. #define use_portb_lcd TRUE
  5. #include <LCD.C>
  6. #include <stdio.h>
  7.  
  8.  
  9.  
  10. void main()
  11. {
  12.    int16 contador_encoder;
  13.    setup_timer_1(T1_EXTERNAL);
  14.    contador_encoder=0;
  15.    while(true)
  16.    {
  17.    contador_encoder=get_timer1();
  18.    lcd_putc("f");
  19.    lcd_gotoxy(1,1);
  20.    if(contador_encoder>504)
  21.    {
  22.       output_high(pin_A5);
  23.  
  24.    }
  25.  
  26.    //printf(LCD_PUTC,"ncontador encoder=%LUn", contador_encoder);
  27.    PRINTF(LCD_PUTC,"contador encoder %lu", contador_encoder);
  28.    }
  29. }
  30.  


Quiero contar pulsos, la variable que me los cuenta es contador_encoder, y quisiera que cuando el contador sea mayor a 504, se me prenda un led ubicado en el pin_A5, aparte de esto, que me muestre la cantidad de pulsos en la lcd, espero que me puedan ayudar.

Muchisimas gracias de antemano.    :good:

27
Programación en C / TECLADO HEXADECIMAL
« en: Domingo 12 de Octubre de 2008, 19:53 »
Cofrades Picmanianos, vengo tal vez, con una duda muy trivial, espero que me puedan ayudar, sería para mi de gran ayuda que pudiera hacerlo, para una mayor comprensión, colocaré el código a continuación y en breve, la explicación de lo que quiero hacer, lo que no me da, y lo que espero hacer mas adelante:

#include <16F877.h>
#use delay(clock=2000000)
#fuses NOWDT,NOPROTECT,NOLVP,NODEBUG
#define use_portb_kbd TRUE
#define use_portb_lcd TRUE
#include <LCD.C>
#include <KBD.C>
 
 
char CLAVE[5];
char k;                   //defino  como caracter
 
 
byte j=16, DIR;  
//DIR;           //defino como byte otra constante, otra forma
 
void main() {
   port_b_pullups(TRUE); // Resistencias de Pull up
   
   lcd_init();
   kbd_init();
   
   delay_ms(300);
   
 
   //es para que se deslice la palabra DIGITADO:
 
   for (j=16; j>=1; --j)
   {
   lcd_gotoxy(j,1);
   (lcd_putc("CONTROL PID      "));
   delay_ms(100);
   lcd_putc("/F");
   }
   delay_ms(1000);
   
   lcd_gotoxy(1,1); //esta el puntero
   (lcd_putc("CONTROLADORES"));
   
   lcd_gotoxy(j,2); //esta el puntero
   
    for (j=16; j>=1; --j)
   {
   lcd_gotoxy(j,2);
   (lcd_putc("1.P  2.PI   3.PID   "));
   delay_ms(100);
   }
   
       while (TRUE)
      {
       k=0;
       k=kbd_getc();
        if( (k!=''))
        {
         
         //  ->CONTROL P
         if ((k='1'));
         {
          printf(lcd_putc,"f" );
         (lcd_putc("INGRSE Kc:     "));
         lcd_gotoxy(12,1);
         
          }
         
          //  ->CONTROL PI
          if ((k='2'));
         {
          printf(lcd_putc,"f" );
         (lcd_putc("INGRSE Kc:     "));
         lcd_gotoxy(12,1);
         
         printf(lcd_putc,"f" );
         (lcd_putc("INGRSE Ti:     "));
         lcd_gotoxy(12,1);
         
         printf(lcd_putc,"f" );
         (lcd_putc("INGRSE Tp:     "));
         lcd_gotoxy(12,1);
          }
         
          if ((k='3'));
         {
          printf(lcd_putc,"f" );
         (lcd_putc("INGRSE Kc:     "));
         lcd_gotoxy(12,1);
         
         printf(lcd_putc,"f" );
         (lcd_putc("INGRSE Ti:     "));
         lcd_gotoxy(12,1);
         
         printf(lcd_putc,"f" );
         (lcd_putc("INGRSE Td:     "));
         lcd_gotoxy(12,1);
         
          printf(lcd_putc,"f" );
         (lcd_putc("INGRSE Tp:     "));
         lcd_gotoxy(12,1);
         
          }
   
        }
 
 
      }
}

Bueno, hasta el momento llevo esto de código, sin embargo falta mucho mas por hacer, lo que quiero que me haga este pequeño programa, es escoger entre los 3 tipos de control (P, PI, PID), estoy leyendo un teclado hexadecimal y necesito que cuando apriete el número "1", me seleccione contro P, pero lo que sucede es que me lleva inmediatamente al último, necesito que me reconozca este número, no se que estoy colocando mal, estoy todavía muy nuevo en esto de programar en c, muchisimas gracias por su ayuda camaradas, espero que me puedan ayudar, sería de gran ayuda.

28
C/C++ / Re: Como Compilo Opencv Desde Chscite?
« en: Lunes 6 de Octubre de 2008, 06:22 »
Bueno, estoy bajando el C++ el cual es gratuito desde internet, vamos a ver que tal sale esta cuestión, aparte de eso ya tengo el OpenCv, pero debo mencionar, que ya hice lo que el cofrade Geo aca dice, incluso ya lo había consultado por la web, y cuando trato de compilar, me dice que "falta error" me dice que el cv.lib no ha sido encontrada, sin embargo, ya he hecho casi que todo, seguiré buscando, o si alguien da con el error, sería fantastico, estoy casi que seguro que muchos hemos tenido este errror, un salduo a todos los cofrades del foro.

29
C/C++ / Re: Captura De Video Programando En C
« en: Sábado 4 de Octubre de 2008, 17:24 »
Muchisimas gracias Eternal Idol, ya tengo OpenCV en mis manos, empiezo a trabajar con el inmediatamente, te lo agradezco mucho...

30
C/C++ / Re: Captura De Video Programando En C
« en: Viernes 3 de Octubre de 2008, 16:15 »
Un saludo cofrades, soy nuevo en esto del openCV, he tenido bastante experiencia con el MatLab, pero apenas empiezo en esto del lenguaje C orientado a imágenes.

Geo, quisiera pedirte un favor, ya que estamos hablando de códigos y de imágenes, y de capturas de video, podrías poner poner el código para capturar video con el OpenCv si no es mucha molestia, sería bastante interesante ver las diferencias que tiene con el Matlab (creo que son muchas).

Un saludo foreros...

¿Alguien sabe si lo puedo bajar de internet, me refiero al OpenCV?

31
Matlab / openCV
« en: Jueves 2 de Octubre de 2008, 04:08 »
Cofrades y camaradas foreros, un saludo desde Colombia, jejejeje...

Vengo por estos lares con la proposición de crear tal vez un subforo para este programa llamado openCV (Open Source Computer Vision Library), coloco el mensaje aca en el foro de "Matlab", pues la mayoría trabajamos imágenes en el Matlab, y he encontrado en este programa una gran herramienta orientada al lenguaje C y la manipulación de imágenes, apenas estoy dando mis primeros paso, pero he encontrado muy interesante el programa, os lo recomiendo, sin embargo, no dejaré al Matlab a un lado, pues me ha sido de gran ayuda.

Espero pues que el que desee información, o apoyen esta moción, dejen un mensaje por aca.  :good:

32
La taberna del BIT / Re: Fotos de Usuarios del Foro
« en: Lunes 18 de Agosto de 2008, 07:34 »
No será que la chicuela nos dice de donde es y que hace...??? será mucho pedir, que rico que fuera de Colombia carajos....

33
Matlab / Matlab 2008
« en: Martes 5 de Agosto de 2008, 06:12 »
Cofrades, es un honor para mi, aunque considero que es un poco tarde, y lo se, espero pues que no me gocen,  :good:   pero apenas pude conseguir el MatLab 2008, y... Quisiera que ustedes mis estimados foreros, me dijeran las nuevas atracciones y accesorios que este juguete nos ofrece a nosotros esta vez.

Un saludo a todos... Exitos

Suerte y Pulso.    :beer:

34
Programación en C / Control de Motor paso a paso a través de un PIC
« en: Miércoles 30 de Julio de 2008, 03:44 »
Compañeros, Picmanianos, mis estimados ratones de programación... vengo por aca con mis dudas, sugerencias y flores para todos los usuarios del foro.

Actualmente me encuentro desarrollando un programita para lo que posiblemente puede ser en el futuro un brazo robotico, esperemos que si, pondré aca el código que he implementado y explicaré mis dudas, espero que os entiendan.

Pienso controlar mi brazo robótico a través de motores paso a paso, en este momento, he hecho el control de un solo motor, a través de 2 pulsadores, que cuando lo mantengo pulsado, el motor gira para un lado y cuando lo suelto, se queda en el paso en el cual se encuentra en ese instante, y si pulso el otro pulsador, pasa exacatamente lo mismo, salvo que gira en el otro sentido; sin embargo, he tenido problema con el manejo del retardo, pues, en mucha parte influye esto, pues, o no alcanza a energizar bien la bobina, o salta a otro paso, espero que me puedan ayudar a mejorar mi programa, para ver como puedo implementarlo de una mejor forma.

Para la salida del pic al motor, tengo un arreglo de transistores DARLINGTON, en un encapsulado, el ULN2803, por ahora no tengo ningún montaje hecho, solo lo he simulado en proteus., y mi código lo estoy haciendo en CCS C.

También he visto que lo puedo hacer a través de Servo motores, o motores paso a paso pero controlados por PWM, sin embargo, considero un poco mas complicado esta parte.

Así mis estimados, os dejo mi código aca abajo, y el circuto hecho en PROTEUS. Acepto sugerencias y reclamos, ah y muchisimas gracias a todos y muchos Exitos con sus proyectos y circuitos.



Código: Text
  1. #include <16F877.h>
  2. #use delay(clock=1000000)
  3. #fuses NOWDT,NOPROTECT,NOLVP,NODEBUG,PUT
  4. int retardo;
  5. void main()
  6. { retardo=300; //CON ESTE VALOR SE CAMBIA LA VELOCIDAD DE GIRO DEL MOTOR
  7. WHILE(input(PIN_C0))  // INICIALIZO LOS PINES EN VALOR BAJO, PARA QUE EL MOTOR NO SE MUEVA
  8.  {
  9.    OUTPUT_LOW(PIN_B0);
  10.    OUTPUT_LOW(PIN_B1);
  11.    OUTPUT_LOW(PIN_B2);
  12.    OUTPUT_LOW(PIN_B3);
  13.  
  14.  }
  15. do{
  16. if(!input(pin_C0)&&(input(pin_c1)))     // GIRO EN UN SENTIDO (GIRO 1)
  17. {
  18.    OUTPUT_LOW(PIN_B0);
  19.    OUTPUT_HIGH(PIN_B1);
  20.    OUTPUT_LOW(PIN_B2);
  21.    OUTPUT_LOW(PIN_B3);
  22.    delay_ms(retardo); }if(!input(pin_C0)&&(input(pin_c1)))  // GIRO EN UN SENTIDO (GIRO 1)
  23. {
  24.    OUTPUT_LOW(PIN_B0);
  25.    OUTPUT_LOW(PIN_B1);
  26.    OUTPUT_HIGH(PIN_B2);
  27.    OUTPUT_LOW(PIN_B3);
  28.    delay_ms(retardo); }if(!input(pin_C0)&&(input(pin_c1)))   // GIRO EN UN SENTIDO (GIRO 1)
  29. {
  30.    OUTPUT_LOW(PIN_B0);
  31.    OUTPUT_LOW(PIN_B1);
  32.    OUTPUT_LOW(PIN_B2);
  33.    OUTPUT_HIGH(PIN_B3);
  34.    delay_ms(retardo); }if(!input(pin_C0)&&(input(pin_c1))) // GIRO EN UN SENTIDO (GIRO 1)
  35. {
  36.    OUTPUT_HIGH(PIN_B0);
  37.    OUTPUT_LOW(PIN_B1);
  38.    OUTPUT_LOW(PIN_B2);
  39.    OUTPUT_LOW(PIN_B3);
  40.    delay_ms(retardo); }if(input(pin_C0)&&(!input(pin_c1)))// GIRO EN UN SENTIDO (GIRO 2)
  41. {
  42.    OUTPUT_HIGH(PIN_B0);
  43.    OUTPUT_LOW(PIN_B1);
  44.    OUTPUT_LOW(PIN_B2);
  45.    OUTPUT_LOW(PIN_B3);
  46.    delay_ms(retardo); }if(input(pin_C0)&&(!input(pin_c1)))  // GIRO EN UN SENTIDO (GIRO 2)
  47. {
  48.    OUTPUT_LOW(PIN_B0);
  49.    OUTPUT_LOW(PIN_B1);
  50.    OUTPUT_LOW(PIN_B2);
  51.    OUTPUT_HIGH(PIN_B3);
  52.    delay_ms(retardo); }if(input(pin_C0)&&(!input(pin_c1)))   // GIRO EN UN SENTIDO (GIRO 2)
  53. {
  54.    OUTPUT_LOW(PIN_B0);
  55.    OUTPUT_LOW(PIN_B1);
  56.    OUTPUT_HIGH(PIN_B2);
  57.    OUTPUT_LOW(PIN_B3);
  58.    delay_ms(retardo); }if(input(pin_C0)&&(!input(pin_c1))) // GIRO EN UN SENTIDO (GIRO 2)
  59. {
  60.    OUTPUT_LOW(PIN_B0);
  61.    OUTPUT_HIGH(PIN_B1);
  62.    OUTPUT_LOW(PIN_B2);
  63.    OUTPUT_LOW(PIN_B3);
  64.    delay_ms(retardo); }}while(true);
  65. }
  66.  

35
Matlab / Re: Reconocimiento De Caracteres
« en: Miércoles 9 de Julio de 2008, 18:12 »
En esta págia podran encontrar algo del reconocimiento de caracteres u OCR, espero que sirva un poco de ayuda, sin embargo, no se nada por ahora de redes neuronales.

www.matpic.com/MATLAB_OCR.html

36
Microcontroladores / Problema con programador Serial
« en: Martes 24 de Junio de 2008, 20:32 »
Estimados cofrades, tengo un problemita con mi programdor, el cual es Serial (si, todavía continuo con él) y aunque ya hay varios en el mercado los cuales son USB, tengo el serial porque es mas económico.

El problema es el siguiente, como no tengo puerto serial en mi computador (ya no los hacen como antes   :hitcomp:  )  compré un cable conversor serial - USB, de la marca Profilic, mas especificamente compré un Profilic USB -to- Serial Cable, instale su respectivo Driver, permitiendome controlar otras cosas, pero a la hora de conectar mi programador Serial, y tratandolo de detectar por WinPic, no me reconoce, me dice  Dispositivo <Desconocido>, traté de configurar el WinPic, puse mi programador en el COM 1, y configué el WinPic para que me reconociera por el COM1, pero sigo sin tener resultados satisfactorios, ahora no se si es que no es compatible, o simplemente no se puede programar a través de este cable.

Espero que alguien tenga la solución a mi respuesta, sería de gran ayuda para mi, un saludo a todos los integrantes del foro y espero que mi duda sirva para todos. :good:

37
Novedades en SoloCodigo / Re: Ya estamos de vuelta :)
« en: Domingo 22 de Junio de 2008, 18:57 »
Excelente la presentación del nuevo foro... mis felicitaciones... saben también a quien tiene parecido???? a Wall E... el de la nueva película de Disney... jaaaaaaaaajajaja... no digan que no, la película es buena... :lol:

38
La taberna del BIT / Re: ¿que Estudias?
« en: Jueves 19 de Junio de 2008, 07:30 »
Yo... estudio Ingeniería Mecatrónica...

39
La taberna del BIT / ¿que Estudias?
« en: Jueves 19 de Junio de 2008, 07:29 »
Jejeje... bueno saber que estudiamos cada uno de los integrantes del Foro... no.

40
Matlab / Matlab Web Server
« en: Miércoles 18 de Junio de 2008, 06:48 »
Increible, no sabia que Matlab contará con esta herramienta.

Estaba buscando si puedo poner por ejemplo un GUI en una página web o algo por el estilo, o publicarlo en internet, para manejarlo desde otro computador, sería de gran ayuda para mi si me pueden dar esta información, he econtrado varias cosas, pero sin exito alguno, pues, no se si es demasiado facil que nadie lo pone, o por el contrario, algo complicado.

Una gran aplicación para muchos de nuestros proyectos, un saludo a todos... :P

41
La taberna del BIT / Re: Fotos de Usuarios del Foro
« en: Jueves 12 de Junio de 2008, 19:25 »
Esta bonita esta mujer, no les parece, pues a mi si... un aplauso para ella

42
La taberna del BIT / Re: De Donde Sos????
« en: Jueves 12 de Junio de 2008, 06:27 »
Cofrades, politíca no, no nos dañemos el foro, por favor

43
La taberna del BIT / Re: Fotos de Usuarios del Foro
« en: Miércoles 11 de Junio de 2008, 07:58 »
Sip cofrades, y jovencitas, ese soy...  :alien:



acepto flores, recados, teléfonos, mails...  :lol:



jaaaaaaaaaaaaaaaaaaaaaaaaaaajajaja.... solo chik's por favor. B)




Un saludo a todos los del foro, que viva Colombia hijuemadre!!!!!!!!!!!!! :whistling:

44
La taberna del BIT / Re: Cuentame Un Chiste
« en: Domingo 8 de Junio de 2008, 18:12 »
Habia una vez un niño tan pero tan pequeño, que no lo assutaba el coco sino un corozo, jaaaaaaaaaaaaaaaaaaaaaaaaaaaajajaja... este es el mejor.

45
Sobre los Foros de SoloCodigo / Re: Sobre los nuevos foros
« en: Domingo 8 de Junio de 2008, 17:55 »
Cofrades, hace poco creé un nuevo post en la sección "Sobre los Foros de SoloCodigo" para la creación de un nuevo subforo para LabView, este programita se ha ganado su espacio, espero que apoyen mi moción, y la idea de mejorar, pues he visto que muchas personas integran este programa con otros, espero que podamos hacerlo, también se aceptan sugerencias, reclamos y flores.

Un saludo a todos los integrantes del Foro.

46
La taberna del BIT / Re: De Donde Sos????
« en: Sábado 7 de Junio de 2008, 18:40 »
JAJAJA, COMO QUE DOMINAMOS LOS COLOMBIANOS, ESTAMOS EN TODO LADO, JEJEJE


QUE VIVA!!!!!!, ciudad de la eterna primavera, de las mujeres bonitas, del guaro, del ron, de las flores, capital de Antioquia.

MEDELLÍN, COLOMBIA

47
Sobre los Foros de SoloCodigo / Sugerencia De Nuevo Foro
« en: Sábado 7 de Junio de 2008, 18:27 »
Cofrades, camaradas, mis estimados ratones de computadora  :comp:  , vengo por aca, queriendo hacer una sugerencia, de la mejor forma posible.  :smartass:

He mirado, que en pocos foros, cuentan con un subforo, que para mi es de suma importancia, y que veo gran utilidad, y es un foro para LABVIEW, sería interesante, que entre todos, aportaramos, y pudieramos colocar otro subforo en "Programación especifica" de LabView, pues este programa, ha demostrado, estar a la altura, para hacer varias aplicaciones, y creo que se merece su espacio, ademas, se pueden hacer muchas cosas en él.

Así que espero que apoyen mi moción, y entre todos, colaboremos.

Un saludo muy especial a todos, espero que podamos hacerlo.

Andrés Felipe  :P

48
Matlab / Re: Componentes De Una Imagen En Matlab
« en: Sábado 7 de Junio de 2008, 18:16 »
:hola:   Creo saber que es lo que quieres hacer, pondré un código mas abajo y lo explicaré.



Código: Text
  1.  
  2. a=imread(strcat(answer{1},'.jpg')); % a sería la variable donde tienes guardada la imágen
  3.  
  4.  
  5. planeR=a( :, :,1)&#59;% Plano Rojo
  6. planeG=a( :, :,2)&#59;% Plano Verde
  7. planeB=a( :, :,3)&#59;% Plano Azul
  8.  
  9.  
  10.  
  11. a(:,:,3)=0; %Hacer el Plano Azul cero
  12.  
  13.  
  14.  

Como sabemos por teoría del color, si quitamos la componente azul de una imágen, y dejamos la componente roja y la verde, nos queda amarilla la imágen, igualmente podremos hacer otros planos iguales a 0, obteniendo la imágen en tonalidades distintas, te invito a que lo hagas, y lo observes,. es sencillo, si cualquier otra duda, puedes volver a preguntar, y con gusto responderemos.

Entonces el problema no sería juntar 2 planos, sino quitar uno de ellos.

Si quieres aprender a preguntar también inteligentemente, creo que el foro, ofrece una ayuda para ello, no recuerdo muy bien donde encontrarla, pero se que se encuentra aca, espero que alguno de nuestros cofrades os ayude.

49
Matlab / Formato Password
« en: Sábado 7 de Junio de 2008, 07:13 »
Cofrades programadores, pensé que era algo muy trivial, pero me di cuenta que no... resulta que es un poco mas complejo, y he encontrado varios códigos, sin embargo, bastante tediosos y largos, para algo que para mi punto de vista, puede ser algo trivial, y fácil de hacer, solo que no se. (lastima no poder, o no saber poner imágenes para una mejor explicación, trataré de hacerlo lo mejor posible).

Estoy tratando de hacer una ventana para el ingreso de datos con la función "inputdlg",(cuando ponga el código, se entenderá mucho mejor), pero quisiera poner uno de los cuadros de textos, que solo aparezcan asteriscos (*), así como ingresando un password, o una contraseña, que sea invisible para los demas, aca abajo pondré el código.



Código: Text
  1.  
  2.  
  3. prompt = {'Número de la imágen','Asignar Password'};
  4. title = 'Nombre de la imágen';
  5. lines = 1;
  6. def = {'1','***'};
  7. password = inputdlg(prompt,title,lines,def);
  8. assignin('base','imfile',password{1});
  9. assignin('base','cmap',password{2});
  10.  
  11.  
  12. nombreArchivo = sprintf(password{1});
  13. save (nombreArchivo, 'password');
  14.  
  15.  
  16.  

Fácil hasta la parte de ingresarlo y guardarlo, pero no se como hacer para que solo aparezcan asteriscos en la parte en la cual ingreso el password, espero que me puedan ayudar, por favor, es de gran importancia para mi, espero que entre todos nos colaboremos, y lleguemos a la solución de este dilema, que no he podido resolver.

Aca pondré unos enlaces que he encontrado en la página de matlab, esperando que sean algo de ayuda, pues la verdad, los considero, un poco complicados, y muy largos.

PASSCODE

PASSWORD

PASSWORD DIALOG

Almenos investigué...  :rolleyes:

50
Matlab / Re: Imágen Matlab
« en: Sábado 7 de Junio de 2008, 06:37 »
Cofrades, camaradas, he logrado hacer el reconocimiento de color... os pondré elcódigo mas abajo, y lo explicaré un poco, espero pues que les sirva.




Código: Text
  1.  
  2.  
  3. canalvideo=videoinput('winvideo',1);
  4. preview(canalvideo);
  5. frame=getsnapshot(canalvideo);
  6. %image(frame);
  7. delete(canalvideo);
  8.  
  9. prompt = {'Nombre:'};
  10. title = 'ANALISIS CORNEAL';
  11. lines = 1;
  12. def = {'mi imagen'};
  13. answer = inputdlg(prompt,title,lines,def);
  14. assignin('base','imfile',answer{1});
  15.  
  16.  
  17. imwrite(frame,strcat(answer{1},'.jpg')); % guarda la imagen , se usa strcat
  18. %porque se van a introducir muchas imagenes, concatena el nombre con la
  19. %extension (primera vez)
  20.  
  21. % %T=dir('*.jpg');
  22. % a=imread(T.name); otra OPCIONNNNNNNNNN
  23.  
  24.  
  25. %a=imread(strcat(answer{1},'.jpg')); % lee
  26.  
  27.  
  28.  
  29.  
  30. % planeR=a( :, :,1)&#59;% reconoce la intensidad del color rojo en la imagen
  31. % planeG=a( :, :,2)&#59;% reconoce la intensidad del color verde en la imagen
  32. % planeB=a( :, :,3)&#59;% reconoce la intensidad del color azul en la imagen
  33. %
  34. % imwrite(planeR,'plano1.jpg');
  35. % imwrite(planeG,'plano2.jpg');
  36.  
  37. % EL COLOR AMARILLO SE OBTIENE ENTRE EL PLANO ROJO Y EL PLANO VERDE,QUE
  38. % CORRESPONDEN AL PLANO1 Y AL PLANO2, POR ESTO DEBEMOS HACER EL PLANO 3
  39. % OSEA EL AZUL EN NEGRO
  40.  
  41. %a(:,:,3)=0;% el plano tres azul lo vuelva negro (hace cambio)}
  42. %imwrite(a,strcat(answer{1},'.jpg')):con esto nos imprime amarillo rgb
  43.  
  44. b=rgb2hsv(frame);%pase a HSV frame
  45. H=b(:,:,1);%en c guaradmos el plano h
  46. amarillo = 0.12;
  47. precision = 0.1;
  48. c = H(:,:,1)&#62;(amarillo-precision) & H(:,:,1)&#60;(amarillo+precision);
  49. c = uint8(c);
  50.  
  51. imgAmarillos(:,:,1) = frame(:,:,1).*c;
  52. imgAmarillos(:,:,2) = frame(:,:,2).*c;
  53. imgAmarillos(:,:,3) = frame(:,:,3).*c;
  54.  
  55.  
  56.  
  57. %b(:,:,2)=0;%el plano H lo volvemos cero
  58. %b(:,:,3)=0;
  59.  
  60. %if (c&#62;=0.2) &  (c&#60;=0.3) %la intensidad
  61.  
  62. %imwrite(c,strcat(answer{1},'1','.jpg'))%guarda plano h en el intervalo de intensidad
  63.  
  64. %end
  65.  
  66.  imwrite(imgAmarillos,strcat(answer{1},'1','.jpg'))
  67.    
  68.    
  69. %imwrite(frame,strcat(answer{1},'.jpg'))%guarda el nuevo cambio
  70.  
  71.  
  72. figure; % la pantalla con las imagenes
  73. subplot(2,2,1);% que lleve una imagen a la primera posicion
  74. imshow(frame);% mostrar la primera foto en esa primera posicion
  75. subplot(2,2,2);%que lleve una imagen a la segunda posicion
  76. imshow(imgAmarillos);%mostrar la imagen amarilla en la segunda posicion
  77.  
  78.  
  79. %imwrite(planeB,'plano3.jpg');
  80.  
  81.  
  82. beep;
  83.  
  84.  
  85.  

No lo he hecho como algunos me sugirieron, pero he logrado un muy buen resultado y tampoco lo he hecho en el plano RGB, pues en este plano, tengo un rango mucho mas grande del color amarillo, lo he logrado en el plano HSV, especificamente en el plano H, espero pues que analicen el código, cualquier duda, será bienvenida, y cualquier sugerencia también.

Páginas: 1 [2] 3 4 5