# Proyecto de reconocimiento visual con sensor de imagen CMOS de una webcam



## Zettaextremo (Sep 6, 2009)

Disculpen pero de casualidad alguien sabe el funcionamiento de un sensor CMos que viene en una camara web microsoft vx 1000, esta es la única manera de como yo podria conseguir ese sensor y se que cuando lo tenga vendrá con un motán de circuitos, pero ando buscando los datasheet o especificaciones de ese sensor, quiero saber como conectarlo y como extraerle la información de cada pixel. 
Ya tengo una idea de como funciona un sensor Cmos y la diferencia que existe con uno de cCd pero aun asi no se como conectarlo ni nada. 
Si alguien ya ha trabajado con este tipo de webcam y conoce algún datasheet de ese sensor sería de gran ayuda para mi que me los mandara. 
Desconozco la marca del sensor debido a que aún no he podido comprar la webcam.
El fin de esto es de realizar un simple programa, como inicio de un gran proyecto, del reconocimiento de cinco figuras negras sobre una superficie blanca, pero atra ves de un sensor de imagen.
Gracias por su atención. Espero puedan darme la mano.


----------



## tecnogirl (Sep 10, 2009)

La mayoria de las Webcam emplean la tecnologia CCD para el sensor de imagen pero, recientemente ha aparecido una nueva tecnologia, la CMOS VGA que tiene importantes ventajas sobre la primera. Si quieres profundizar sobre el tema busca CMOS VGA en Google. Salu2


----------



## Zettaextremo (Sep 10, 2009)

aa okei n.n mm me konsegui una ewbcam veo 303vc26x que segun me han comentado trae un sensor cmos, le hare pruebas con un osciloscopio y otros instrumentos para saber su funcionamiento, gracias n.n


----------



## Zettaextremo (Sep 10, 2009)

Hola

bueno abri una webcam veo 303, pero no le entendi bien al circuito que tiene, lo que me temia. 
Aqui unas imagenes sin zoom de la tablilla de la webcam.

http://metroflog.com/aRtUr0oo0xxTreMe

Por cierto como puedo distinguir fisicamente si se trata de uns sensor CMOS o CCD?

La resolucion de la Webcam es muy poca lo que me parece genial.
Lo siguiente es de que voy a dibujar el circuito, para ver de que modo voy a analizar las señales de cada pixel, hare un analisis electronico de todo el sistema hasta donde pueda.
Se cuenta con 8 pines por cada lado y aunque e visto el funcionamiento de los sensores CMOS y CCD en youtube, no explican bien como se alimenta el sensor de imagen, ni como extraer la señal de cada linea, ni nada, solo algo superficial del sensor, espero que alguien me pueda dar la mano en esto. 
Me pregunto como puede decirse que tiene una matriz de 680x460 si solo se kuenta kon 32 pines :S que confuso jojo.
Seguire buscando en internet para ver si encuentro una guia para comprender perfectamente el funcionamiento de estos sensores.
Gracias por su atensión. Hasta luego n.n.


----------



## Chico3001 (Sep 11, 2009)

Para que no te hagas bolas, considera que todos los CCD son CMOS, la diferencia entre una camara y otra es el tamaño de la pantalla que captura (me parece que VGA es 640x480) ya despues te aclaras las diferencias

De todos modos todas las camaras funcionan de la misma manera general, envian la información serialmente hacia el microcontrolador y por eso tu camara solo tiene 8 pines, sin embargo no es solo conectarla y usarla, necesitas encontrar el manual del chip para saber los comandos que acepta y que formato de envio de datos maneja... 

http://www.microscopyu.com/tutorials/java/digitalimaging/ccd/fullframe/


----------



## Tomasito (Sep 11, 2009)

Yo te diría que de poder usar la webcam con una PC lo hagas. En ese caso te podría recomendar el software Roborealm.

De todas formas, si querés interactuar directamente con el sensor CCD no necesitás andar midiendo nada con el osciloscopio, toda la información que necesitás va a estar en la hoja de datos del sensor CCD.

Igual los CCD por lo que vi son todo un mundo, estuve revisando hace un tiempo la hoja de datos de un sensor CCD paralelo (no serial) que saqué de un scanner para ver cómo funcionaba, y no era tan simple como pensaba (o mejor dicho, era más complicado de lo que pensaba), fijate antes de adentrarte más.
Los que si son más simples son los de los mouses ópticos, pero no creo que te sirva de mucho un sensor CCD de 8x8 pixels   



Saludos.


----------



## tecnogirl (Sep 11, 2009)

Zettaextremo: Por favor revisa el modelo de tu webcam pues no la encuentro en Internet... (y eso son palabras mayores)...

Si nos comentas Qué proyecto tienes en mente que necesitas un sensor de imagen quiza te podamos recomendar tecnologias alternativas.

De por si, una webcam, sin tener que extraerle el sensor de imagen puede servir para muchos proyectos interesantes. Salu2.


----------



## Zettaextremo (Sep 11, 2009)

Bueno gracias por contestar, y pues sip lo que quiero es interactuar directamente con el sensor con algun pequeño microcontrolador, como los 16f...sin ayuda de la compu.

Primero quiero empezar asi leve, imaginen solamente un punto pequeñito pequeñito muy negro sobre una superficie blanca. El primer programa que quiero hacer es que al poner enfrente del sensor una hoja blanca con el punto o sin el, este dispositivo me pueda indicar si existe un punto o no, ya saben para ir empezando a calentar motores en esto de la vision artificial.

Lo siguiente es incrementar el nivel de dificultad de cada programa pero por mientras me basta que solo haga eso.

El objetivo final es crear una pequeña cabezia que pueda reconocer diferentes objetos alrededor de el, para que pueda manipularlos con un pequeño brazo robotico y los acomode en algun lugar( si vieran mi escritorio jojo).

Será hobby quizas pero con mucha seriedad creo jaja no si mm de hecho ahora fui con un buen maestro de electronica de mi tecnologico pero lamentablemente no me pudo ayudar en mucho, aunque otro amablemente ofrecio ayudarme en lo que se podia. A pues acabo de recordar de que ahora me tope en mi laptop con una información que ni sabia que tenia jaja, un libro pirateado de sensores cmos, y lo mas importante que entendi es que cada pixel tiene su capacitor y su transistor, ademas de un reset, pero mi pregunta es esta, si se tienen 307 200 pixeles acaso se tendran 307 200 transistores, se me ocurrio una absurda idea del funcionamiento de esto debido a que el libro ya no profundizo en mas:

Aqui empieza mi teoria que esta erronoa por cierto.

Primero el portasensor tiene 32 pines, ocho en cada lado( se muestra en la imagen de arriba.
Me imagine que un controlador pues manda una señal a un pequeño decodificador que quizas este cercas del sensor atraves de quizas 15 pines de entrada, me imagine que ese decodificador pues le mandaba una señal a un respectivo transitor de un pixel y asi se descargaba el capacitor del pixel correspondiente.
Esa señal regresaba al decodificador y este mandaba ese valor como un codigo en los 15 pines restantes, y asi continuaria con los demas pixeles, y pues imagine que tierra y Vcc completarian los 32 pines, aqui solo intente explicarme porque solo hay esos pines, obviamente asi no funciona el circuito, aparte como un decodificador podria tener 307200 patas jojo para cada transistor.
En los CCD lei que se descarga toda la linea completa pero acaso se descargaran las lineas horizontales y tambien las verticales? esto serian mmm 480 lineas y 640 mas mmmm pero solo hay 32 pines mmm si me consigo otra cam igual creo que le quitare el protector al sensor para ver a que se conecta y si lo daño pues tendre el otro.​ 
mmm miren la camara si es​ 
veo 303vs26x​ 
mm de hecho no sale en google mas que errores con ese producto y drivers de este mmm casi nada, pero actualmente es el unico sensor cmos que tengo.
tengo uno que solo detecta blancos y negros y escala de grises pero amm es de mi telescopio y amm no pss no ese no jojoj.​ 
Aqui les dejo la primera etapa de mi proyecto.​ 
o0 raios no encontre la hoja mmm haber si lo rcuerdo bien.​ 
Proyecto 1: Reconocimiento de cuatro figuras circulo, triangulo, cuadrado, estrella. En movimiento, estaticas, muchas, pocas, de diferente color.​ 
1ª etapa. Reconocimiento de un punto grande o pequeño en un espacio tridimensional.​ 
a. Deteccion de si existe un punto negro o no sobre una superficie blanca. Si hay exito intentar con varias combinaciones de colores.​ 
b. Con dos pequeños servos: Centrar el punto. Si a primera vista no se ve nada de punto, mover los servos para ver si el punto esta en otra parte de su rango periferico. Intentarlo con varias combinaciones de colores.​ 
c. Centrar un punto en movimiento, lograr predecir su trayectoria, velocidad y aceleracion.​ 
d. Con puntos de mayor tamaño el sensor debe ser capaz de encontrar el punto medio de todo el punto grande. Vaya como si se tratara del centroide de un circulo negro.​ 
e. Contar el numero de puntos estaticos que hay en un espacio grande.​ 
f. Contar cuantos puntos en movimiento hay en un espacio grande.​ 
g. En esta fase usar mas de dos colores en su entorno y en el punto y repetir las pruebas anteriores.​ 
Fin de la primera etapa.​ 
Como ven por eso necesito el sensor, lo del mouse se oie interesante pero hay muy pocos pixeles aun asi me pondre a investigar su funcionamiento quizas y de con algo para usar con el CMOS.
Este proyecto lo hago porque siempre e querido construir un robot muy independiente, desde pequeño me ha intersado la construccion de estos, y ahora estudio mecatronica 5 semestre, si bien ya puedo realizar un buen diseño fisico o de perdido estable y de buena presentacion, lo mas importante viene siendo como reconocer su entorno, y no aguanto las ganas por construirlo. 
Muchos me dicen que pa que lo hago y toy pensando en eso si ya hay en japon pero a mi no me quita mucho tiempo investigar y construir, lo que respondo es que es cooo aquel que se construye su propia moto aaa nada mejor que asi, prefieren la aventura de construirlo por sus propias manos que irla a comprar. O tambien me pongo de ejemplo, soy musico cantante y toco covers de todo tipo, si tuviera su mentalidad diria no pues pa que tocar covers en mi guitarra si podemos poner solo el disco con la musica orginal pero en verdad se siente mas chido tocar por ti mismo esas rolas y claro que tengo mis propias rolas mmm pero bueno volviendo al tema del sensor CMOS pues les agradesco nuevamente por todo y espero su respuesta con agrado.​ 
Se despide su servidor Arturo Gallardo que se va a matar neuronas con el alcohol jojo san viernes n.n, hasta luego.​ 

 mirar el mensaje grande

amm mirar el mensaje grande jaja es que no se como funciona estoo mm si oprimo responder en cada mensaje se que te mandan una notificacion mmm pero si le pico a responder el que esta mas abajo sepala si lleguen las notificaciones a ustedes jojo mmm bueno mirar el mensaje grande jojo aaa mmm es escencial no usar la compu de escritoio o laptop para controlar el sensor, este debe funcionar con su propio dispositivo sin dependencia de la gran o diosa compu

PD: jaja acabo de ver que si tenia anotado mal el nombre jajaj sorry mm weno al roll wiiii i olvidar la eskuela n.n


----------



## tecnogirl (Sep 12, 2009)

Zettaextremo: Para que sigas aprendiendo sobre los sensores de imagen, mira en:
http://www.shortcourses.com/sensors/sensors0-1.html. 

Y lo que describes como proyectos tambien se pueden hacer con la webcam sin tener que desarmarla. Salu2.


----------



## Zettaextremo (Sep 12, 2009)

jojo aaa okei n.n eso estaria mejor ammm me dare una vuelta por la pagina, gracias 


osu ya mire la pagina wooowww no sabia que se al descargarse una linea todas las demás se recorrian hacia abajo wow jojo genial  algo nuevo aprendi el dia de oi n.n mmm ahora el porque y como? mmmm seguire viendo la pagina jaj aki tengo tambien un sensor ccd jaja vere cual le entiendo mas joj

mmm acavo de revisar un link anterior y me tope con el mismo funcionamiento mmm me pregunto si la señal de todas las lineas saldra solo por ese mismo pin mmm ahorita estuve checando y e visto que varios pines estan deshabilitados, mmm y otros se juntan, si el funcionamiento que me fue mostrado es correcto entonces los otros pines seran los encargados de mover las cargas acumuladas y tambien de resetear el pixel en si. 

Mmm se me esta ocurriendo una nueva idea de como funciona esto pero seguire viendo


----------



## Tomasito (Sep 12, 2009)

*Pregunta fundamental:*

¿No podrías usar la webcam conectada a la PC?


----------



## Zettaextremo (Sep 12, 2009)

:s el objetivo del proyecto es de ke nop :s u.u mmm se me okurrio algo pero naa mejor no jaja komo kiera aki lo anoto:

comprarme una minilaptop de las que no le entran los cds, y pues good bye a la pantalla o removerla y ponerla en otra parte y quitar todo lo exterior para dejar solo los circuitos al aire libre mmm asi para poderlos acomodar todo de manera que ocupe el menos espacio posible.

creen que funcione eso?

mmm pensandolo vien esa idea me esta gustando mas, porque otro de mis proyectos es reconocimiento de señales audibles, y a la vez responder de forma hablada.

Pero no se jajaj preferiria hacerme de todos los circuitos yo mismo mmm sin depender del computador.


PD. bueno lo del probador de dedos jajajaja


----------



## Tomasito (Sep 12, 2009)

Te recomiendo que te busques algún micro ARM de 32 bits con host USB. Podrías facilmente instalarle Linux y manejar la webcam como webcam por el puerto USB. Y se te facilitaría bastante la programación.

A algo así me refiero:








Esa por ejemplo es una placa para prototipado en ARM7 que tiene, entre otras cosas: Dos puertos RS232, USB, VGA, SD card slot, piezo buzzer, JTAG, audio out, conector para teclado PS2, display LCD de dos lineas. Usa el micro LPC2148 y es baratísima, sale 40 dolares.
Ese tipo de microprocesadores son de la misma familia que los que usan los iPod o las nintendo DS por darte ejemplos.

Otra opción más barata y facil de conseguir sería un router con USB host y con posibilidades de instalarle Linux. Sería más o menos parecido pero más facil y barato de conseguir.
Otra opción (un poco más cara pero más simple), ya llendonós a una arquitectura x86 sería una mother nanoITX (sería parecido a lo de desarmar la mininotebook, pero sin desperdiciar un montón de cosas, simplemente comprás una mother con micro realmente chicos -en tamaño-).




Saludos.


----------



## h3ct0r (Nov 18, 2009)

buenas amigo disculpae el offtopic pero cual seria el nombre comercial de esa placa prototipada en arm7???


----------

