Exige recortar la imagen a mano y falla al validar palabras clave.
Basta una orientación incorrecta para que el sistema no entienda el texto.
Cada falla se traduce en una llamada más a soporte técnico o procesos inconclusos.
Captura
CNN
OCR
Resultado
Una CNN extrae patrones visuales apilando dos operaciones matemáticas: convolución y pooling.
Aplica el filtro bidimensional sobre los 3 canales RGB sumando el sesgo:
Reduce las dimensiones al quedarse con el valor máximo regional:
34,296
Integrado con 1,057 INE Frontales con data aumentada de 7,992, dando un total de 9,049, y enriquecido con 25,247 imágenes como otras identificaciones, para enseñarle al modelo a rechazar documentos que no son una INE.
82.23%
Train (28,197)9.11%
Test (3,125)8.67%
Validate (2,974)550 × 350 px RGB
RMSprop lr=1e-4
Binary Crossentropy
30
| Capa / Orden | Tipo de capa | Filtros / Neuronas | Kernel | Activación | Formato de salida |
|---|---|---|---|---|---|
| Entrada | Input Tensor | Canales RGB | — | — | 350 × 550 × 3 |
| conv2d | Conv2D | 32 filtros | (3,3) | ReLU | 348 × 548 × 32 |
| max_pooling2d | MaxPooling2D | pool (2,2) | — | — | 174 × 274 × 32 |
| conv2d_1 | Conv2D | 64 filtros | (3,3) | SiLU | 172 × 272 × 64 |
| max_pooling2d_1 | MaxPooling2D | pool (2,2) | — | — | 86 × 136 × 64 |
| conv2d_2 | Conv2D | 128 filtros | (3,3) | ReLU | 84 × 134 × 128 |
| max_pooling2d_2 | MaxPooling2D | pool (2,2) | — | — | 42 × 67 × 128 |
| conv2d_3 | Conv2D | 128 filtros | (3,3) | SiLU | 40 × 65 × 128 |
| max_pooling2d_3 | MaxPooling2D | pool (2,2) | — | — | 20 × 32 × 128 |
| flatten | Flatten (Aplanado) | Vector lineal | — | — | 81,920 elementos |
| dropout | Dropout (Regularización) | rate = 0.05 | — | — | 81,920 elementos |
| dense | Dense | 512 neuronas | — | ReLU | 512 elementos |
| dropout_1 | Dropout (Regularización) | rate = 0.1 | — | — | 512 elementos |
| Salida | Dense (Clasificador binario) | 1 neurona | — | Sigmoide | 1 (Probabilidad de INE) |
Verificación de Identificaciones mediante Redes Neuronales
Pérdida
Precisión
146
5
7
2,816