Si además quieres enviarnos un Artículo para el Blog y redes sociales, pulsa el siguiente botón:
Como ya estoy de medio vacaciones, pero a la vez no tengo demasiados medios técnicos, me dedico a recopilar datos y a procesarlos como puedo en mi cabecilla, para poder hacer cosas en verano.
Como sabeis estoy con el tema del Bluetooth... a falta de hacer algunas pruebas con otro ordenador, el tema del TouchPad... necesito más medios que mi portatil... y... ahora viene el proyecto guapi guapi... Visión artificial con una simple webcam, entonces aqui vienen mis preguntas y aclaraciones:
·Sé que es posible, porque si no me equivoco Golfus Hispanicus lo emplea, asi como otros proyectos como los de esta chiquita tan maja: Mavis
·¿Cómo se empieza en este mundito?
·¿Qué librerías usais para obtener imágenes de la webcam?
·¿Qué librerías usais para procesar la imagen?
·¿Es imprescindible programar el sistema en C?
·¿Tenemos algun proyecto de ejemplo?
Yo estoy comenzando con la librería WebCam.dll, pero me temo que es muy incompleta, y además consume demasiados recursos comparándolo con el proyecto de Mavis. Aun así, tengo un programa hecho que lo único que tiene es un botón, con el que al pulsarlo, se copia la imágen de la webcam en un control PictureBox... me imagino que es un primer paso en este mundo, y que me quedan miles de caminos que recorrer, pero esta librería no sé si da mucho más de si, de modo que me gustaría que alguno que haya trabajado con esto me eche un cablecillo.
Seguiré informando. Muchas gracias por la ayuda.
Ángel
Hola,
Repasemos un poco... Si lo que quereis conseguir es alta velocidad en el PC necesitais o bien USB 2.0 (1.5/12/480 Mb/s) o bien FireWire (400/800 Mb/s). Sin embargo el USB 2.0 queda descartado para las videocamaras.
Haced el cálculo: resolución * profundidad de color * fps < 400Mb/s
Para más velocidad debereis tener una tarjeta capturadora PCI que pase a un formato comprimido (MPEG2, MPEG4, ...)
S2
Ranganok Schahzaman
furri, Te contesto primero a ti, por ir en orden:
La unica ventaja que supone el ARGB frente al RGB es que trabajas con un solo dato que comprende los tres colores, es decir, trabajas con tablas de color
http://en.wikipedia.org/wiki/HTML_COLOR ... exadecimal
la composicion de un dato ARGB es entonces
¦ A ¦ R ¦ G ¦ B ¦
XX XX XX XX
por ejemplo el negro sera 000000, el azul puro sera 0000FF, el blanco puro sera FFFFFF, me explico?
Bien, pues al trabajar con un dato que tenga ese aspecto puedo evitar el sistema que ingenie para preguntar si el azul estaba entre unos limites comprobando los componentes R y V con el componente B... Se que es algo complicado de entender, entre otras cosas porque ni yo tengo las ideas claras aun, pero creo al trabajar con los tres colores puedo decir "Busca un color que este entre 0000FF y 87CEEB", aparentemente no tienen sentido, pero le estoy diciendo busca un color que este entre azul puro y azul cielo... lo veis ahora?
Bien, en cuanto a lo de los algoritmos geneticos... a mi tb me sorprendio... lo que hace saberse los nombrecitos eh? pero bueno furri, te podemos considerar el reinventor de estos algoritmos, porque seguro que la mayoria de la gente que conoce el nombre no se le ocurre como aplicarlo, y tu en cambio, sin saber nada de ellos, los has inventado y puesto en practica, solo que si no me equivoco, lo que tu usabas era como lo que uso yo, buscabas pixeles en orden, no? la gracia es hacerlo en random, y que cuando encuentre uno "explote" y haga esa reaccion en cadena con los cercanos a un radio de 2px, por ejemplo.
Bien, despues de esa parrafada, Ranganok, si no me equivoco tu conclusion es como la de furri... me temo que tienes razon, y que esas tarjetas no son tan baratas como las de 20€ que dije, pero ayer estuve mirando en ebay, y encontre capturadoras usb que entregaban 25 y 30 fps... crees entonces que este dato puede estar condicionado o algo asi? que no sea real del todo? lo mas facil seria que alguien que tenga estos cacharros me lo confirme, porque seria muy interesante saberlo antes de comprar nada.
Lo unico que tenemos claro entonces es que una camara que entrega PAL realmente esta dando "directo" en 25fps. Esto lo he ido preguntando a varias personas para confirmarlo, y la respuesta mas convincente me ha llegado por mail desde España, un excelente profesor de electronica que tuve me contesto esto:
Parece que mis clases sirvieron de algo!!. Correcto. Cada estandar de sistema de imagen (las tres analógicas son PAL, NTSC y SECAM) tiene un número definido de campos (fields) y cuadros (frames) por segundo. En PAL es fijo y siempre son 50 Hz ( o 50 semiimagenes por segundo) que corresponden a 20 ms por campo (¿recuerdas 1 cuadro=2 campos?), con lo cual tienes 25 frames por segundo, no 50.
El NTSC americano da 60 Hz, y si quieres más te tienes que ir a sistemas profesionales o semiprofesionales digitales.
Espero que te haya servido. Si quieres cualquier otra cosa, por aquí estamos.
Lo digo solo para que nos quede claro que de si algo nos podemos fiar es de esas camaras, otra cosa ya sera la capturadora... tema que he de investigar, no solo en el aspecto de la cantidad de fps que entrega sino que debo aprender como sacar imagen de un cacharro que no es una webcam. Una vez lei que Windows las trataba igual que una webcam, pero no lo tengo claro, alguien sabe resolverme esto?
Siento la parrafada, es lo que pasa despues de soñar con tus programas... ja ja ja
Ranganok, me acabo de dar cuenta al contestar al profesor que me escribio que tu formula si que permite usar un usb 2.0 porque:
resolución * profundidad de color * fps =
= 25fps * 628px x 582px *24bits por pixel = 219.297.600bps, o lo que es lo mismo unos 219Mps cuando un usb 2.0 soporta hasta 480 Mbps
Es esto correcto o se me escapa algo?
Es correcto, sin embargo con las videocamaras hay problemas de compatibilidad. Ademas si utilizas 32 bits te sale por 292.396.800bps con lo cual sigues pudiento utilizar USB 2.0.
Yo tengo una webcamp con esa resolución y me costo unos 30€ las navidades pasadas asi que...
S2
Ranganok Schahzaman
Ranganok, a que te refieres con problemas de compatibilidad?
Cuando dices que es correcto quieres decir que estoy en lo cierto al afirmar que podria utilizar una capturadora usb de 20€... ahora no tengo ningun modelo, pero lo mirare.
que fps sirve tu camara? creo que tengo una (bueno, mi hermana) que me da 30fps, cosa que es mucho mas razonable que mis 15, pero no se si seran reales, o tendran algun truco. De momento sigo usanbdo WebCam, porque es lo que se programar, pero pretendo usar una inalambrica para no tener que ponerle ruedas al portatil (Ayer María me pregunto si era de coña... pero lo digo absolutamnete en serio, como no aprenda a manejar otras entradas de video, recurrire a ponerle ruedas a mi queridisimo portatil, pero preferiria no tener que hacerlo)
