Download - Facultad de Informátida y Estadística
Facultad de Informátida y Estadística
Grupo de Trabajo 16
Autores:• Manuel Ramón León Jiménez• Javier López Moreno
Facultad de Informátida y Estadística
1.1. IntroducciónIntroducción
2. Metodología2. Metodología
3. Aplicaciones 3. Aplicaciones
5. Bibliograría5. Bibliograría
1. Introducción1. Introducción
• ¿Qué es el OCR?
• Problemas del OCR
• Caracteres mecanografiados
• Caracteres escritos a mano
6. Enlaces6. Enlaces
4. Mejoras4. Mejoras
Facultad de Informátida y Estadística
1.1. IntroducciónIntroducción
2. Metodología2. Metodología
3. Aplicaciones 3. Aplicaciones
5. Bibliograría5. Bibliograría
¿ Qué es el OCR?¿ Qué es el OCR?
El Reconocimiento Óptico de Caracteres (OCR) es un método para reconocer la parte textual de una imagen digitalizada. El resultado de esto es un archivo de texto que puede ser editado y usado como tal por cualquier programa o aplicación que lo necesite.
DefiniciónDefinición
• ProblemasProblemas
6. Enlaces6. Enlaces
4. Mejoras4. Mejoras
Facultad de Informátida y Estadística
1.1. IntroducciónIntroducción
2. Metodología2. Metodología
3. Aplicaciones 3. Aplicaciones
5. Bibliograría5. Bibliograría
Problemas del OCRProblemas del OCR• Caracteres mecanografiados
• Caracteres escritos a mano• La letra no es clara
• No se distingue el fondo
• Caracteres unidos
• Caracteres cortados
Ejemplo
• DefiniciónDefinición
ProblemasProblemas
6. Enlaces6. Enlaces
4. Mejoras4. Mejoras
Facultad de Informátida y Estadística
1.1. IntroducciónIntroducción
2. Metodología2. Metodología
3. Aplicaciones 3. Aplicaciones
5. Bibliograría5. Bibliograría
2. Metodología de trabajo2. Metodología de trabajo
2.1. Binarización
2.2. Fragmentar la imágen
2.3. Adelgazar las componentes
2.4. Código de cadenas
2.5. Comparar con patrones y/o propiedades
6. Enlaces6. Enlaces
4. Mejoras4. Mejoras
Facultad de Informátida y Estadística
1.1. IntroducciónIntroducción
2. Metodología2. Metodología
3. Aplicaciones 3. Aplicaciones
5. Bibliograría5. Bibliograría
FasesFases
6. Enlaces6. Enlaces
4. Mejoras4. Mejoras
Imagen de Imagen de EntradaEntrada
BinarizaciónBinarización Imagen Imagen Binaria Binaria
FragmentadoFragmentadoComponentesComponentes ConexasConexas
AdelgazarAdelgazar
Facultad de Informátida y Estadística
1.1. IntroducciónIntroducción
2. Metodología2. Metodología
3. Aplicaciones 3. Aplicaciones
5. Bibliograría5. Bibliograría
FasesFases
6. Enlaces6. Enlaces
4. Mejoras4. Mejoras ComponentesComponentes AdelgazadasAdelgazadas
Código de Código de CadenasCadenas Códigos deCódigos de
CadenasCadenas
ReconocimientoReconocimiento
InformaciónInformación del del ReconocimientoReconocimiento
CaracteresCaracteresReconocidosReconocidos
Facultad de Informátida y Estadística
1.1. IntroducciónIntroducción
2. Metodología2. Metodología
3. Aplicaciones 3. Aplicaciones
5. Bibliograría5. Bibliograría
2.1. Binarización2.1. Binarización
• Definición
• Implementación
Consiste en pasar una imagen que inicialmente puede estar a color, primero a escala de grises y después a blanco y negro.
BinarizaciónBinarización• FragmentarFragmentar• AdelgazarAdelgazar• Código CadenasCódigo Cadenas• CompararComparar
6. Enlaces6. Enlaces
4. Mejoras4. Mejoras
Facultad de Informátida y Estadística
ImplementaciónImplementación
• Pasar de Color a Grises
• De Grises a Blanco y Negro
• Mediante la banda del verde
• Pasar de RGB a Grises
• Thresholding
1.1. IntroducciónIntroducción
2. Metodología2. Metodología
3. Aplicaciones 3. Aplicaciones
5. Bibliograría5. Bibliograría
BinarizaciónBinarización• FragmentarFragmentar• AdelgazarAdelgazar• Código CadenasCódigo Cadenas• CompararComparar
6. Enlaces6. Enlaces
4. Mejoras4. Mejoras
Facultad de Informátida y Estadística
Pasar de Color a GrisesPasar de Color a Grises• Mediante la banda del verde
Luminacia
1.1. IntroducciónIntroducción
2. Metodología2. Metodología
3. Aplicaciones 3. Aplicaciones
5. Bibliograría5. Bibliograría
BinarizaciónBinarización• FragmentarFragmentar• AdelgazarAdelgazar• Código CadenasCódigo Cadenas• CompararComparar
6. Enlaces6. Enlaces
4. Mejoras4. Mejoras
Una imagen en escala de grises representa la respuesta del ojo a la luminosidad.
Facultad de Informátida y Estadística
Pasar de Color a GrisesPasar de Color a Grises• Pasar de RGB a Grises
Imagen a Color
Matriz de Rojo (R)
Matriz de Verde (G)
Matriz de Azul (B)
+
+
ImagenGris = 0.299*R + 0.587*G + 0.114*B
1.1. IntroducciónIntroducción
2. Metodología2. Metodología
3. Aplicaciones 3. Aplicaciones
5. Bibliograría5. Bibliograría
BinarizaciónBinarización• FragmentarFragmentar
• Código CadenasCódigo Cadenas• CompararComparar
• AdelgazarAdelgazar
6. Enlaces6. Enlaces
4. Mejoras4. Mejoras
Facultad de Informátida y Estadística
De Grises a Blanco y NegroDe Grises a Blanco y Negro• Thresholding
0 64 128 192 255Negro Blanco
Valor Umbral
BlancosNegros
1.1. IntroducciónIntroducción
2. Metodología2. Metodología
3. Aplicaciones 3. Aplicaciones
BinarizaciónBinarización• FragmentarFragmentar
• Código CadenasCódigo Cadenas• CompararComparar
• AdelgazarAdelgazar
5. Bibliograría5. Bibliograría
6. Enlaces6. Enlaces
4. Mejoras4. Mejoras
Facultad de Informátida y Estadística
ImplementaciónImplementación• Pasar de Color a Grises
• De Grises a Blanco y Negro
• Mediante la banda del verde
• Pasar de RGB a Grises
• Thresholding
Ejemplo
Ejemplo
1.1. IntroducciónIntroducción
2. Metodología2. Metodología
3. Aplicaciones 3. Aplicaciones
BinarizaciónBinarización• FragmentarFragmentar
• Código CadenasCódigo Cadenas• CompararComparar
• AdelgazarAdelgazar
5. Bibliograría5. Bibliograría
6. Enlaces6. Enlaces
4. Mejoras4. Mejoras
Facultad de Informátida y Estadística
Pasar de Color a Grises Pasar de Color a Grises
Imagen a Color
Imagen en Grises con la banda del verde
Imagen de RGB a Grises
1.1. IntroducciónIntroducción
2. Metodología2. Metodología
3. Aplicaciones 3. Aplicaciones
BinarizaciónBinarización• FragmentarFragmentar
• Código CadenasCódigo Cadenas• CompararComparar
• AdelgazarAdelgazar
5. Bibliograría5. Bibliograría
6. Enlaces6. Enlaces
4. Mejoras4. Mejoras
Facultad de Informátida y Estadística
De Grises a Blanco y NegroDe Grises a Blanco y Negro
Imagen en Grises
Imagen Blanco y Negro: Umbral 128
Imagen Blanco y Negro: Umbral 225 Histograma
1.1. IntroducciónIntroducción
2. Metodología2. Metodología
3. Aplicaciones 3. Aplicaciones
BinarizaciónBinarización• FragmentarFragmentar
• Código CadenasCódigo Cadenas• CompararComparar
• AdelgazarAdelgazar
5. Bibliograría5. Bibliograría
6. Enlaces6. Enlaces
4. Mejoras4. Mejoras
Facultad de Informátida y Estadística
2.2. Fragmentar la Imagen2.2. Fragmentar la Imagen
• Posibles Implementaciones
Consiste en ir separando componentes conexas, puesto que el reconocimiento de caracteres se realiza componente a componente.
Ejemplo
A) Algoritmo de etiquetado visto en clase
B) Otras implementaciones
1.1. IntroducciónIntroducción
2. Metodología2. Metodología
3. Aplicaciones 3. Aplicaciones
• BinarizaciónBinarización FragmentarFragmentar
• Código CadenasCódigo Cadenas• CompararComparar
• AdelgazarAdelgazar
5. Bibliograría5. Bibliograría
6. Enlaces6. Enlaces
4. Mejoras4. Mejoras
Facultad de Informátida y Estadística
2.2. Fragmentar la Imagen2.2. Fragmentar la ImagenEjemplo
1 0 1 0 ... 1 0 1 0 ...
1 0 1 0 ... 1 0 1 0 ...
1.1. IntroducciónIntroducción
2. Metodología2. Metodología
3. Aplicaciones 3. Aplicaciones
• BinarizaciónBinarización FragmentarFragmentar
• Código CadenasCódigo Cadenas• CompararComparar
• AdelgazarAdelgazar
5. Bibliograría5. Bibliograría
6. Enlaces6. Enlaces
4. Mejoras4. Mejoras
1 1 0 0 0 00 0 1 0 0 0
a a
Facultad de Informátida y Estadística
Posibles ImplementacionesPosibles ImplementacionesA) Algoritmo de etiquetado visto en clase Se va recorriendo la matriz y etiquetando
componentes conexas según los vecinos ya recorridos.
1 1 0 0 0 00 0 1 0 0 0
a a
1.1. IntroducciónIntroducción
2. Metodología2. Metodología
3. Aplicaciones 3. Aplicaciones
• BinarizaciónBinarización FragmentarFragmentar
• Código CadenasCódigo Cadenas• CompararComparar
• AdelgazarAdelgazar
5. Bibliograría5. Bibliograría
6. Enlaces6. Enlaces
4. Mejoras4. Mejoras1 1 0 0 0 00 0 1 0 0 0
a a
a
Facultad de Informátida y Estadística
Posibles ImplementacionesPosibles ImplementacionesB) Otras implementaciones
• Versión Lenta
Recorremos la matriz hasta encontrar un pixel negro. Se hace un algoritmo recursivo para enmarcar esa componente. Se continua por la columna siguiente al marco encontrado. Si se encuentra una componente registrada, no se vuelve a registrar.
Ejemplo
1.1. IntroducciónIntroducción
2. Metodología2. Metodología
3. Aplicaciones 3. Aplicaciones
• BinarizaciónBinarización FragmentarFragmentar
• Código CadenasCódigo Cadenas• CompararComparar
• AdelgazarAdelgazar
5. Bibliograría5. Bibliograría
6. Enlaces6. Enlaces
4. Mejoras4. Mejoras
Facultad de Informátida y Estadística
Versión LentaVersión LentaEjemplo
1.1. IntroducciónIntroducción
2. Metodología2. Metodología
3. Aplicaciones 3. Aplicaciones
• BinarizaciónBinarización FragmentarFragmentar
• Código CadenasCódigo Cadenas• CompararComparar
• AdelgazarAdelgazar
5. Bibliograría5. Bibliograría
6. Enlaces6. Enlaces
4. Mejoras4. Mejoras
Facultad de Informátida y Estadística
Posibles ImplementacionesPosibles Implementaciones
B) Otras implementaciones
• Versión Rápida
Es igual que la anterior, pero en este caso cuandollega a un pixel negro, se comprueba primero si ya está registrado en una componente conexa, evitandoasí realizar el algoritmo recursivo.
1.1. IntroducciónIntroducción
2. Metodología2. Metodología
3. Aplicaciones 3. Aplicaciones
• BinarizaciónBinarización FragmentarFragmentar
• Código CadenasCódigo Cadenas• CompararComparar
• AdelgazarAdelgazar
5. Bibliograría5. Bibliograría
6. Enlaces6. Enlaces
4. Mejoras4. Mejoras
Facultad de Informátida y Estadística
Posibles ImplementacionesPosibles ImplementacionesB) Otras implementaciones
• Versión por Renglones Al registrar la primera componente conexa, se continúa la búsqueda por la fila central del dígito y por la columnasiguiente a dicha componente conexa, además se calcula el salto que se debe dar para pasar a una nueva fila.
Inconvenientes
Los caracteres deben ser del mismo tamaño al primero. Los caracteres deben estar alineados por renglones.
Ejemplo
1.1. IntroducciónIntroducción
2. Metodología2. Metodología
3. Aplicaciones 3. Aplicaciones
• BinarizaciónBinarización FragmentarFragmentar
• Código CadenasCódigo Cadenas• CompararComparar
• AdelgazarAdelgazar
5. Bibliograría5. Bibliograría
6. Enlaces6. Enlaces
4. Mejoras4. Mejoras
Facultad de Informátida y Estadística
Versión por RenglonesVersión por Renglones
3
1.1. IntroducciónIntroducción
2. Metodología2. Metodología
3. Aplicaciones 3. Aplicaciones
• BinarizaciónBinarización FragmentarFragmentar
• Código CadenasCódigo Cadenas• CompararComparar
• AdelgazarAdelgazar
Siguiente Salto5. Bibliograría5. Bibliograría
6. Enlaces6. Enlaces
4. Mejoras4. Mejoras
Altura = 6
Sigo por: (6+1)/2 = 3
Salto = Altura = 6
3
6
Facultad de Informátida y Estadística
Versión por RenglonesVersión por Renglones• Inconvenientes
• Si hay componentes de distintos tamaños puede que no las capte. • Preferiblemente las componentes tienen que estar alineadas en renglones.
Esta componente no la reconoce
1.1. IntroducciónIntroducción
2. Metodología2. Metodología
3. Aplicaciones 3. Aplicaciones
• BinarizaciónBinarización FragmentarFragmentar
• Código CadenasCódigo Cadenas• CompararComparar
• AdelgazarAdelgazar
5. Bibliograría5. Bibliograría
6. Enlaces6. Enlaces
4. Mejoras4. Mejoras
Facultad de Informátida y Estadística
2.3. Adelgazar la Imagen2.3. Adelgazar la Imagen
A) Punto Simple
1.1. IntroducciónIntroducción
2. Metodología2. Metodología
3. Aplicaciones 3. Aplicaciones
• BinarizaciónBinarización• FragmentarFragmentar
• Código CadenasCódigo Cadenas• CompararComparar
AdelgazarAdelgazar
5. Bibliograría5. Bibliograría
6. Enlaces6. Enlaces
4. Mejoras4. Mejoras
• Definiciones
Los 8 vecinos de P forman una sola componenteconexa adyacente a P.
A) Punto Final Solo tiene un vecino negro.
A) Punto Aislado No tiene vecinos negros.
Facultad de Informátida y Estadística
Ejemplo de las DefinicionesEjemplo de las Definiciones1.1. IntroducciónIntroducción
2. Metodología2. Metodología
3. Aplicaciones 3. Aplicaciones
• BinarizaciónBinarización• FragmentarFragmentar
• Código CadenasCódigo Cadenas• CompararComparar
AdelgazarAdelgazar
5. Bibliograría5. Bibliograría
6. Enlaces6. Enlaces
4. Mejoras4. Mejoras
No simpleFinal
AisladoSimple
Facultad de Informátida y Estadística
AlgoritmoAlgoritmo1.1. IntroducciónIntroducción
2. Metodología2. Metodología
3. Aplicaciones 3. Aplicaciones
• BinarizaciónBinarización• FragmentarFragmentar
• Código CadenasCódigo Cadenas• CompararComparar
AdelgazarAdelgazar
5. Bibliograría5. Bibliograría
6. Enlaces6. Enlaces
4. Mejoras4. Mejoras
Consiste en ir barriendo la matriz en las direcciones Norte, Sur, Este y Oeste alternativamente, encontrando en cada barrido los pixeles en negro con su antecesor blanco. Si el pixel es simple y no final se elimina.Se deben eliminar todos a la vez, por lo que antes de eliminarlos se marcarán.El algoritmo para cuando en una iteración no se elimina ningún pixel en ningún barrido (N, S, E, O).
Facultad de Informátida y Estadística
Ejemplo del Algoritmo Ejemplo del Algoritmo 1.1. IntroducciónIntroducción
2. Metodología2. Metodología
3. Aplicaciones 3. Aplicaciones
• BinarizaciónBinarización• FragmentarFragmentar
• Código CadenasCódigo Cadenas• CompararComparar
AdelgazarAdelgazar
5. Bibliograría5. Bibliograría
6. Enlaces6. Enlaces
4. Mejoras4. Mejoras
• Primera Iteración
Norte Sur Este Oeste
Facultad de Informátida y Estadística
Ejemplo del Algoritmo Ejemplo del Algoritmo 1.1. IntroducciónIntroducción
2. Metodología2. Metodología
3. Aplicaciones 3. Aplicaciones
• BinarizaciónBinarización• FragmentarFragmentar
• Código CadenasCódigo Cadenas• CompararComparar
AdelgazarAdelgazar
5. Bibliograría5. Bibliograría
6. Enlaces6. Enlaces
4. Mejoras4. Mejoras
• Segunda Iteración
Norte Sur, Este y Oeste
No se marca ningún punto
En la próxima iteración nose elimina ningún pixel en ningún barrido (N, S, E, O), luego el algoritmo finaliza.
Facultad de Informátida y Estadística
Ejemplo de AdelgazamientoEjemplo de Adelgazamiento A continuación se muestra un ejemplo del adelgazamiento completo de un cero, completando todas las iteraciones necesarias para ello.
1.1. IntroducciónIntroducción
2. Metodología2. Metodología
3. Aplicaciones 3. Aplicaciones
• BinarizaciónBinarización• FragmentarFragmentar
• Código CadenasCódigo Cadenas• CompararComparar
AdelgazarAdelgazar
5. Bibliograría5. Bibliograría
6. Enlaces6. Enlaces
4. Mejoras4. Mejoras
Facultad de Informátida y Estadística
Posibles MejorasPosibles Mejoras1.1. IntroducciónIntroducción
2. Metodología2. Metodología
3. Aplicaciones 3. Aplicaciones
• BinarizaciónBinarización• FragmentarFragmentar
• Código CadenasCódigo Cadenas• CompararComparar
AdelgazarAdelgazar
5. Bibliograría5. Bibliograría
6. Enlaces6. Enlaces
4. Mejoras4. Mejoras
• No escanear los marcos, ya que son blancos. O no hacer necesarios marcos blancos
• No comprobar un pixel en una iteración si en una anterior se había comprobado que no se podía borrar, es decir, marcar los puntos no borrables
Facultad de Informátida y Estadística
2.4. Código de Cadenas2.4. Código de Cadenas
• Se calcula el código de cadenas de cada componente conexa. Solo calculamos el borde externo, porque para reconocer ceros y unos no nos vale de nada calcular el interno, ya que el 1 no tiene y el 0 tiene, pero es igual que el externo, por eso solo calculamos el borde externo.
1.1. IntroducciónIntroducción
2. Metodología2. Metodología
3. Aplicaciones 3. Aplicaciones
• BinarizaciónBinarización• FragmentarFragmentar
Código CadenasCódigo Cadenas• CompararComparar
• AdelgazarAdelgazar
5. Bibliograría5. Bibliograría
6. Enlaces6. Enlaces
4. Mejoras4. Mejoras
Facultad de Informátida y Estadística
AlgoritmoAlgoritmo• La función para buscar el siguiente vecino en el código de cadenas es:
1.1. IntroducciónIntroducción
2. Metodología2. Metodología
3. Aplicaciones 3. Aplicaciones
• BinarizaciónBinarización• FragmentarFragmentar
Código CadenasCódigo Cadenas• CompararComparar
• AdelgazarAdelgazar
5. Bibliograría5. Bibliograría
6. Enlaces6. Enlaces
4. Mejoras4. Mejoras
Cojo la dirección por la que he llegado al pixel actual. A partir de ella, como estoy calculando el código de cadena externo, comienzo a buscar el proximo vecino en dirección contraria a las agujas del reloj.
0 1 24 P 05 6 7
1º2º Venía del 2
Facultad de Informátida y Estadística
Ejemplo de Código de CadenasEjemplo de Código de Cadenas
• Punto inicial: (3, 6)
• Código de Cadenas externo: 5 5 1 1 7 6 6 6 6 2 2 2 2 3
1.1. IntroducciónIntroducción
2. Metodología2. Metodología
3. Aplicaciones 3. Aplicaciones
• BinarizaciónBinarización• FragmentarFragmentar
Código CadenasCódigo Cadenas• CompararComparar
• AdelgazarAdelgazar
5. Bibliograría5. Bibliograría
6. Enlaces6. Enlaces
4. Mejoras4. Mejoras
•Finalmente mostramos un ejemplo donde se muestra un uno, con su único código de cadenas, el externo, así como el punto inicial del mismo
Facultad de Informátida y Estadística
2.5. Comparar con Patrones2.5. Comparar con Patrones Punto fundamental y crítico del OCR.
De que esta fase se realice correctamente depende que el OCR sea adecuado o no a las características exigidas.
• Primera aproximación• Otros métodos
• Otras herramientas
• Nuestro método
1.1. IntroducciónIntroducción
2. Metodología2. Metodología
3. Aplicaciones 3. Aplicaciones
• BinarizaciónBinarización• FragmentarFragmentar
• Código CadenasCódigo Cadenas CompararComparar
• AdelgazarAdelgazar
5. Bibliograría5. Bibliograría
6. Enlaces6. Enlaces
4. Mejoras4. Mejoras
Facultad de Informátida y Estadística
Primera aproximaciónPrimera aproximación Consiste en comparar nuestro código de cadenas con unos patrones predeterminados.
• Inconvenientes
• Si concuerda será igual • Si no concuerda no será igual
Es un reconocedor muy pobre, ya que solo reconoces imágenes exactas a la del patrón, si no coincide en algo, falla. No puede ser ni más grande, ni estar en cursiva, etc.
1.1. IntroducciónIntroducción
2. Metodología2. Metodología
3. Aplicaciones 3. Aplicaciones
• BinarizaciónBinarización• FragmentarFragmentar
• Código CadenasCódigo Cadenas CompararComparar
• AdelgazarAdelgazar
5. Bibliograría5. Bibliograría
6. Enlaces6. Enlaces
4. Mejoras4. Mejoras
Facultad de Informátida y Estadística
Otros MétodosOtros Métodos Comparar características topológicas y morfológicas de la imagen a reconocer con las de nuestros patrones. Esta comparación es más precisa que la anterior, ya que no hace falta que la imagen sea exacta al patrón. En este caso solo se comparan características del carácter.
1.1. IntroducciónIntroducción
2. Metodología2. Metodología
3. Aplicaciones 3. Aplicaciones
• BinarizaciónBinarización• FragmentarFragmentar
• Código CadenasCódigo Cadenas CompararComparar
• AdelgazarAdelgazar
5. Bibliograría5. Bibliograría
6. Enlaces6. Enlaces
4. Mejoras4. Mejoras
Facultad de Informátida y Estadística
Características a tener en cuentaCaracterísticas a tener en cuenta• Nº de Agujeros
1 NO0 1 agujero
• Rectas del carácter
1• Detección de curvas
0• Detección de ángulos
1
1.1. IntroducciónIntroducción
2. Metodología2. Metodología
3. Aplicaciones 3. Aplicaciones
• BinarizaciónBinarización• FragmentarFragmentar
• Código CadenasCódigo Cadenas CompararComparar
• AdelgazarAdelgazar
5. Bibliograría5. Bibliograría
6. Enlaces6. Enlaces
4. Mejoras4. Mejoras
Facultad de Informátida y Estadística
Características a tener en cuentaCaracterísticas a tener en cuenta
• Detección de cambios bruscos en el código de cadenas
1Código de Cadenas: ... 6 6 2 2 ...Código de Diferencias: ...-4...
1.1. IntroducciónIntroducción
2. Metodología2. Metodología
3. Aplicaciones 3. Aplicaciones
• BinarizaciónBinarización• FragmentarFragmentar
• Código CadenasCódigo Cadenas CompararComparar
• AdelgazarAdelgazar
5. Bibliograría5. Bibliograría
6. Enlaces6. Enlaces
4. Mejoras4. Mejoras
Facultad de Informátida y Estadística
Nuestro MétodoNuestro Método Vamos a reconocer el 1 fijándonos en el número de giros de 180º en el código de cadenas. Esto se observa cuando en el código de diferencias sale - 4.
El 1 tiene al menos dos giros de 180º, mientras que el 0 no tiene ninguno.
1 Código de Cadenas: ... 6 6 2 2 ...Código de Diferencias: ... -4 ...
1.1. IntroducciónIntroducción
2. Metodología2. Metodología
3. Aplicaciones 3. Aplicaciones
• BinarizaciónBinarización• FragmentarFragmentar
• Código CadenasCódigo Cadenas CompararComparar
• AdelgazarAdelgazar
5. Bibliograría5. Bibliograría
6. Enlaces6. Enlaces
4. Mejoras4. Mejoras
Facultad de Informátida y Estadística
Nuestro MétodoNuestro Método Además de los cambios bruscos en el código de cadena, nos vamos a fijar que tras el último de estos cambios bruscos si observamos dicho código de cadenas, la dirección 2 va a predominar con respecto al resto de direcciones, en particular va a haber más de un 50% de direcciones 2 hasta el final. El cero, en cambio, no cumple ninguna de estas dos propiedades.
1.1. IntroducciónIntroducción
2. Metodología2. Metodología
3. Aplicaciones 3. Aplicaciones
• BinarizaciónBinarización• FragmentarFragmentar
• Código CadenasCódigo Cadenas CompararComparar
• AdelgazarAdelgazar
5. Bibliograría5. Bibliograría
6. Enlaces6. Enlaces
4. Mejoras4. Mejoras
Ejemplo
Facultad de Informátida y Estadística
Ejemplo Ejemplo 1.1. IntroducciónIntroducción
2. Metodología2. Metodología
3. Aplicaciones 3. Aplicaciones
• BinarizaciónBinarización• FragmentarFragmentar
• Código CadenasCódigo Cadenas CompararComparar
• AdelgazarAdelgazar
5. Bibliograría5. Bibliograría
6. Enlaces6. Enlaces
4. Mejoras4. Mejoras
Punto Final
Giro brusco
Hasta el final queda:
• Codigo de Cadena: ... 2 2 2 2 3
• Número de dirección 2: 4
• Número de direcciónes no 2: 1
• Porcentaje de 2 = 44 + 1
= 0.8
El 80% son 2
Facultad de Informátida y Estadística
VentajasVentajas1.1. IntroducciónIntroducción
2. Metodología2. Metodología
3. Aplicaciones 3. Aplicaciones
• BinarizaciónBinarización• FragmentarFragmentar
• Código CadenasCódigo Cadenas CompararComparar
• AdelgazarAdelgazar
5. Bibliograría5. Bibliograría
6. Enlaces6. Enlaces
4. Mejoras4. Mejoras
• El reconocimento depende del Universo de discurso. Si nos llegan solamente 0 y 1, podríamos reconocerlos viendo simplemente si el carácter a reconocer tiene un agujero. Nuestro reconocedor, sin embargo se fija en otras cosas para no reconocer todo lo que nos llegue como un 0 o un 1. Si nos fijaramos en si tiene o no agujeros entrarían muchas cosas más de las deseadas.
Facultad de Informátida y Estadística
VentajasVentajas1.1. IntroducciónIntroducción
2. Metodología2. Metodología
3. Aplicaciones 3. Aplicaciones
• BinarizaciónBinarización• FragmentarFragmentar
• Código CadenasCódigo Cadenas CompararComparar
• AdelgazarAdelgazar
5. Bibliograría5. Bibliograría
6. Enlaces6. Enlaces
4. Mejoras4. Mejoras
• Nuestro reconocedor es insensible a desplazamientos. Nos pueden llegar caracteres desplazados, que los vamos a reconocer de igual forma.
• Insensible a rotaciones hasta cierto punto. Si nos llega un 1 rotado, lo vamos a reconocer dentro de un determinado ángulo de rotación, si se gira demasiado, ya no lo reconocemos.
Facultad de Informátida y Estadística
1.1. IntroducciónIntroducción
2. Metodología2. Metodología
3. Aplicaciones 3. Aplicaciones
5. Bibliograría5. Bibliograría
3. Aplicaciones del OCR3. Aplicaciones del OCR
• Escaneado de documentos para almacenar
• Detección de Matrículas
• Detección de Códigos Postales
• Etc
6. Enlaces6. Enlaces
4. Mejoras4. Mejoras
Facultad de Informátida y Estadística
1.1. IntroducciónIntroducción
2. Metodología2. Metodología
3. Aplicaciones 3. Aplicaciones
5. Bibliograría5. Bibliograría
4. Futuras Mejoras4. Futuras Mejoras
• Mejorar el Interfaz de Usuario
6. Enlaces6. Enlaces
4. Mejoras4. Mejoras• Añadir funciones no implementadas
• Resolver errores
Facultad de Informátida y Estadística
1.1. IntroducciónIntroducción
2. Metodología2. Metodología
3. Aplicaciones 3. Aplicaciones
5. Bibliograría5. Bibliograría
4. Futuras Mejoras4. Futuras Mejoras• Optimizar Algoritmos
6. Enlaces6. Enlaces
4. Mejoras4. Mejoras
• Si la imagen tiene un margen en blanco, empezar recorridos por (2,2) hasta (N-1,M-1)
• Mejorar clases: Muchas clases incluyen objetos deotras, mejor usar herencia
• Comprobar el uso de la memoria: se ha vigilado poco el uso y liberación de la memoria
• Realizar preprocesado para eliminar el ruido por algún método (como dilatación y erosión).
Facultad de Informátida y Estadística
1.1. IntroducciónIntroducción
2. Metodología2. Metodología
3. Aplicaciones 3. Aplicaciones
5. Bibliografía5. Bibliografía
• Apuntes de Procesamiento de Imágenes Digitales (PID)
• Apuntes de Tratamiento de Voz e Imágenes (TVI) Profesor: Fco. Javier Molina Cantero
• Apuntes de Ingeniería del Software II (ISWII) Profesor: Amador Durán Toro
• Apuntes de Procesadores de Lenguajes II (PLII) Profesores: Rafael Corchuelo Gil
Beatriz Bernárdez Jiménez
Profesor: Pedro Real Jurado
5. Bibliograría5. Bibliograría
6. Enlaces6. Enlaces
4. Mejoras4. Mejoras
Facultad de Informátida y Estadística
1.1. IntroducciónIntroducción
2. Metodología2. Metodología
3. Aplicaciones 3. Aplicaciones
5. Bibliografía5. Bibliografía
• Introducción a la programación: Un enfoque práctico
Autores: Juan Mauel Cordero Valle José Mariano González Romero Rafael Martínez Gasca Rafael Romero Aleta
• Visual C++, Aplicaciones para Win32, 2ª Edición Editorial: Ra-ma Autor: Fco. Javier Ceballos Sierra
Editorial: Algaida
5. Bibliograría5. Bibliograría
6. Enlaces6. Enlaces
4. Mejoras4. Mejoras
Facultad de Informátida y Estadística
1.1. IntroducciónIntroducción
2. Metodología2. Metodología
3. Aplicaciones 3. Aplicaciones
5. Bibliografía5. Bibliografía• Detection of Curved and Straight Segments from Gray Scale Topography
Autores: Li Wang and Theo Pavlidis
• A Model-Based Segmentation Method for Handwritten Numeral Strings
Department of Computer Science, Stony Brook, New York, 1992
Autores: Jianming Hu and Hong YanDepartment of Electrical Engineering, University of Sidney, 1997
• Fast Binary Image Processing Using Binary Decision Diagrams
Autores: L. Robert and G. MalandainINRIA-Sophia Antipolis, France, 1997
5. Bibliograría5. Bibliograría
6. Enlaces6. Enlaces
4. Mejoras4. Mejoras
Facultad de Informátida y Estadística
1.1. IntroducciónIntroducción
2. Metodología2. Metodología
3. Aplicaciones 3. Aplicaciones
5. Enlaces de interés5. Enlaces de interés• documents.cfar.umd.edu
• www.cs.cmu.edu/~cil/vision.html
• www.ocr.com
• www.infaimon.es/industria/software/cvbminos.htm
• www.ucm.es/info/especulo/numero12/artenuev.html
• www.cedar.buffalo.edu/Publications/techreports.html
• www.cedar.buffalo.edu/Publications/TechReps/ /OCRTech84/paper94.html
5. Bibliograría5. Bibliograría
6. Enlaces6. Enlaces
4. Mejoras4. Mejoras
Facultad de Informátida y Estadística
1.1. IntroducciónIntroducción
2. Metodología2. Metodología
3. Aplicaciones 3. Aplicaciones
• www.cc.siue.edu/CVIPtools
• www.dai.ed.ac.uk/HIPR2
• www.mip.sdu.dk/ipl98
• www.leadtools.com
5. Enlaces de interés5. Enlaces de interés
5. Bibliograría5. Bibliograría
6. Enlaces6. Enlaces
4. Mejoras4. Mejoras