Ayuda con OCR

Tus preguntas. Algoritmos o Grupos de Comandos formando Programas Escripts.
Responder
Jonny
Profesional del Autoit
Mensajes: 1042
Registrado: 30 Jun 2008, 20:08

Ayuda con OCR

Mensaje por Jonny »

Hola

Quiero en ratillos libres, hacer un programa tipo RDesc (no se si lo conocereis por aquí, que me imagino que sí), un gestor de descarga de los servidores de almacenamiento como megaupload, rapidshare etc.

Para ello (y es uno de los motivos en parte por el que quiero hacer un programa de este tipo), hay que programar alguna función ocr, que verifique los captchas de estas páginas. No es por nada especial, no tengo intenciones de hacer nada raro en ningún sitio, pero sí de tocar ese tema, que no he tocado nunca y parece que ofrece muchas posibilidades y un gestor de descarga es una de ellas...

Hace tiempo, ya pregunté por aquí sobre el ocr pero no encontré mucha cosa, ni tampoco en el foro inglés donde algunos me digeron algunos post que rebisé.

Hace cosa de un par de días, volví a hechar un vistazo y encontré esto:
http://www.autoitscript.com/forum/index ... ntry675362
Utilizan una aplicación externa con una función escrita en AutoIt, pero no se si funciona o no, porque no se que parámetros hay que pasarle a la función, ni como....
Según he visto directamente en el programa que utiliza la función (disponible en un link del post) hay que pasar algo así como las coordenadas del área a explorar, pero la función tiene más parámetros que no se cuales serán. Entiendo, que alguno debería ser por lo menos la imagen a explorar, pero no tiene pinta y además, hay otro parámetro suelto que no se me ocurre...
También, he visto que ese programa, solo admite un tipo de imágenes, por lo que no serviría del todo, o almenos, no sin convertir primero la imagen que fuera (por ejemplo .gif) en ese formato concreto, lo que me parece que daría bastante trabajo y haría poco eficiente el programa.

¿Alguien sabe como va ese programa, y/o la función que han hecho en el post ese para manejarlo?... ¿Sabeis como verifica RDesc los captchas?, porque no encontré ninguna dll ni nada que me haga sospechar que lo haga.
¿Conoceis alguna dll (mejor que ejecutable) para esto?
Me han hablado de alguna cosilla que hay hecha con las dll de fine reader, pero ese es un software de pago.

Salu2!
Avatar de Usuario
BasicOs
Site Admin
Mensajes: 2085
Registrado: 21 Nov 2006, 19:24
Ubicación: El Internet - (Canarias, España)
Contactar:

Re: Ayuda con OCR

Mensaje por BasicOs »

Jonny escribió: ¿Alguien sabe como va ese programa, y/o la función que han hecho en el post ese para manejarlo?... ¿Sabeis como verifica RDesc los captchas?, porque no encontré ninguna dll ni nada que me haga sospechar que lo haga.
¿Conoceis alguna dll (mejor que ejecutable) para esto?
Me han hablado de alguna cosilla que hay hecha con las dll de fine reader, pero ese es un software de pago.

Salu2!
Hola,
Como te va que hace tiempo que no se sabia de ti. L
o de los captchas está bien pero es una lucha sin fin, verás tu puedes hacer un OCR fantástico con AUTOIT, sin problemas, autoit tiene potencia para eso y más. El problema es que según se utilice este captcha, ellos te lo cambian de nuevo a otra modalidad.
Es como el gato que se persigue la cola, y a menos que quieras perder el tiempo o simplemente por un reto, lo tienes perdido (o si no lo tienes no se si te compensa el esfuerzo de estar detrás del OCR perfecto) El OCR perfecto es el ser humano en si mismo. :smt027
La función que dices te explica ahí mismo como usar, o al menos para que sirve cada parámetro. Deberías estudiar la función e intentar mejorarla para tu idea. :smt030 :smt030
La idea del fine reader está bien, y también el omnipage pro, etc... seguro que hay muchas funciones y programas, se lleva hablando del OCR hace más de 20 años, o sea que hay algoritmos para aburrirte de mirar, y aplicarlo a la función es cosa de sentarse un ratito y escribir código. :smt034 :smt034
Salu2:)
Jonny
Profesional del Autoit
Mensajes: 1042
Registrado: 30 Jun 2008, 20:08

Re: Ayuda con OCR

Mensaje por Jonny »

hola

sí, hace que no entro por aquí, jejejje.
Ando metido en un par de trabajillos en php, que se llevan todo el día y no me dejan tocar casi AutoIt, que me gusta bastante más que php, html, javascript, css....

Es cierto, lo de que el mejor verificador de captchas es el ser humano (esa era la idea del captcha), pero bueno, así como experimento...
En cualquier caso ¿Por qué habría que retocar el programa? No se muy bien como irá el tema del ocr, ando muy pegao todabía en este área, pero entiendo, que al programa que sea le pasas la imagen y él se encarga de extraer el texto ¿no? entiendo, que independientemente de lo que hagan en el captcha...

Cuando dices que autoit tiene potencia para manejar el ocr ¿a que te refieres? ¿a que no hace falta software externo?.

Usar dll's de fine reader etc, tiene que ser complicado, porque no creo que se encuentren así como así las funciones con sus parámetros etc... (quizá en algún foro donde lo hayan hecho)?.

Vaya, tendré que remirar el post, pues no ví donde explicara los parámetros de la función...

Acias.

Salu2!
torni
Mensajes: 11
Registrado: 12 Mar 2010, 18:02

Re: Ayuda con OCR

Mensaje por torni »

Existe un programa para windows, freeOCR basado en el motor OCR open source tesseract patrocinado por google.
Tal vez te pueda servir de punto de partida, ya que desarrollar desde cero un motor OCR es complicado.
En linux es facil controlarlo desde linea de comando.

El problema que veo es que los capchas estan 'sucios' para dificultar los OCR, aunque se que es posible saltarselos porque el jdownload lo hace, lo que no se es que metodo usa, dudo que use OCR, tal vez tiene una base de datos de los capcha y los compara...


saludos.
Avatar de Usuario
Chefito
Profesional del Autoit
Mensajes: 2035
Registrado: 21 Feb 2008, 18:42
Ubicación: Albacete/Cuenca (España)

Re: Ayuda con OCR

Mensaje por Chefito »

torni escribió:El problema que veo es que los capchas estan 'sucios' para dificultar los OCR, aunque se que es posible saltarselos porque el jdownload lo hace, lo que no se es que metodo usa, dudo que use OCR, tal vez tiene una base de datos de los capcha y los compara...
Mmmm....el jdownloader "lo hacía" por ocr. Lo que pasa que empezaron a cambiar los capcha y claro, cada vez que los cambiaban les jodía lo hecho. Y como tu bien dices, hacer un ocr que se adapte a un tipo de capcha tiene que ser complicado. Por esta causa creo que lo dejaron de lado y como dices hicieron una base de datos con los códigos de las imágenes (creo que las reconocen por un número único.....supongo que esté codificado o que se yo, y ellos lo decodifican). Y si no lo hacen así, pues otra opción es cogiendo la imagen y comparala con las que tu tienes. Una vez comparadas, si la encuentra, pues le dices que ahí hay tales letras y ya está.
Si es por el código de la imagen, deben de coger el código de esta imagen y comparalo con los códigos de todas las imagenes que tienen almacenadas, o mejor dicho, que tu tienes almacenadas, ya que este programa se actualiza mucho a causa de los capchas.
Tendrán relacionados los códigos o las imagenes con las letras que aparecen en la imagen y cuando la detectan pues ponen eso.
El procedimiento tiene que ser de alguna de estas formas.
Hay servidores de capchas. Habría que ver donde están, si se pueden acceder a ellos y como.

De todo lo dicho anteriormente no estoy muy seguro :smt005 .

Saludos.
Cita vista en algún lugar de la red: En este mundo hay 10 tipos de personas, los que saben binario y los que no ;).
Jonny
Profesional del Autoit
Mensajes: 1042
Registrado: 30 Jun 2008, 20:08

Re: Ayuda con OCR

Mensaje por Jonny »

Hola

No sé, si el freeOCR será el mismo que ví por el foro inglés de Autoit hace unos días, pero ví un post, en el que usaban un programa externo de google o algo así, pero no me convenció, pues había que instalarlo (no me acaba de convencer eso de tener que instalar aplicaciones para hacer algo con un programa de AutoIt, que quizá no requiera instalarse siquiera).

uf ¿Una base de datos con todos los captchas? ¿No sería eso muuuucho peor que intentar descifrar el captcha con ocr?
Además, no se me ocurre como hacer esa base de datos, porque los captchas pueden ser generados aleatoriamente (los códigos que contienen) por lo que no veo la forma de obtener patrones para comparar...

Por cierto, otro programa, o más bien plugin servicio o como pueda llamarse (jeje) que resuelve captchas y no falla es webvisum para firefox:
http://www.webvisum.com.
Como firefox es libre, no se si habrá algo al respecto de como se lo monta. Yo solo sé, que eliges la opción "Solucionar captcha" del menú contextual y envía el captcha al servidor de webvisum y cuando este lo resuelve, te envía el código que queda copiado en el portapapeles, solo para pegarlo en el campo correspondiente...

Total, que no puede ser muy complicado, almenos resolverlos de una forma concreta (supongo) cuando cada vez hay más aplicaciones que lo hacen, lo único chungo tiene que ser eso de que te los cambien y tener que reprogramar la aplicación...

Yo, llevo bastante tiempo con RDesc por ejemplo y no se si habrán modificado los captchas de megaupload que es de la página que más descargo, porque hace la tira que no entro, pero desde luego, no me da errores nunca cuando pongo enlaces a descargar.

A ver si encuentro almenos el método que utilizan los gestores estos de descarga, y por ahí puedo empezar a hacer algo.

Salu2!
Jonny
Profesional del Autoit
Mensajes: 1042
Registrado: 30 Jun 2008, 20:08

Re: Ayuda con OCR

Mensaje por Jonny »

Hola

Bueno, bueno...
Al principio hace un rato, al leer lo de comparar imágenes y tal, tal y como parece que efectivamente hace jdownloader, no me convenció mucho la idea, entre otras cosas porque pensé que por ejemplo, el programa podría ocupar la tira.
La cosa, es que me he puesto a googlear, a ver que encontraba y buscando un poco de todo relacionado con los captchas, encontré primero, algo interesante, y que me ha dado una pequeña idea para que si al fin consigo hacer una función que resuelva captchas, podría ser más efectiva que algunos programas que ya lo hacen.

Resulta, que aunque ya sabía que hoy en día existen captchas de todo tipo, no solo alfanuméricos, he encontrado el código fuente de uno escrito en php, que se basa en animales en vez de números y letras. Esto (comprobado) es imposible de descifrar por los reconocedores de texto (almenos los que he probado), pero ya ponía en la página donde lo descargué, que era imposible técnicamente.
Pero se me ocurrió, que sería imposible con un ocr, pero no con la solución que me habeis dado por aquí jejeje. ¿Que pasaría, si basara mi programilla en la comparación de imágenes para reconocer un captcha?....

Exacto, podría hacer que la aplicación resolviera también un captcha basado en animales, vehículos etc y la problemática sería la misma, actualizar la base de datos en caso de que la página que implementa ese tipo de captcha lo modificara.

Así pues, con la idea de hacer una función bastante efectiva a la hora de resolver estos desafíos, me he puesto a buscar y buscar y al fin, dí con esto:
http://www.megaupload.com/?d=194OWC60

unas trescientas y pico captchas de megaupload. Ya hay algo para montar una base de datos, aunque por supuesto, queda mucho si es que quiero que funcione decentemente.
Pero no termino de entender, como habeis dicho que podría comparar las imágenes. Leí también algo sobre eso, que hablaba de un id único de cada imagen que al parecer se pasa por ejemplo en megaupload, en el enlace de descarga, pero no se bien como funciona.

Por cierto, que me planteo otra duda
¿Como saber donde está la imagen en el servidor donde se aloja el captcha?

Es decir, como encontrar la ruta en el código fuente de la página de la imagen?. Porque en las páginas suelen haber varias...

Salu2!
torni
Mensajes: 11
Registrado: 12 Mar 2010, 18:02

Re: Ayuda con OCR

Mensaje por torni »

Usan un sistema que reconoce objetos dentro de las imagenes.

http://blog.fili.nl/articles/the-anti-c ... challenge/
Jonny
Profesional del Autoit
Mensajes: 1042
Registrado: 30 Jun 2008, 20:08

Re: Ayuda con OCR

Mensaje por Jonny »

Hola

Gracias. tendré que mirar la página más detenidamente, que mi inglés no es precisamente bueno, por lo que tendré que ponerme a traducirla...

¿Reconocer objetos dentro de las imágenes?
¿Eso no sería casi ocr? jejejeje.
¿Y creeis que eso será efectivo?, porque tengo descargados casi 55.000 captchas solo de megaupload... ¿No tardaría muchísimo con ese sistema? jajaja.

Salu2!
Responder