lunes, 29 de octubre de 2012

TRANSFOMADA HOUGH



Resumen



La transformada Hough fue inventada en 1972 por Richard Duda y Hart Peter, el cual  la denomino como ‘Generalizada transformada Hough ’, debido a que se había basado de la  patente de Paul Hough en el año de 1962. Esta trasformada se popularizo  debido a un artículo de revista en año 1981, ya que tenía una visión por computador.



¿Pero cuál es la funcionalidad de la trasformada Hough?



La transformada Hough es un algoritmo empleado en reconocimiento de patrones de una imagen, la cual permite encontrar formas como círculos, líneas, entre otras, dentro de la imagen. La versión más sencilla consiste en encontrar líneas, pero de acuerdo a la imagen  y problema que se tenga se puede modificar  para encontrar otro tipo de formas. El modo de funcionamiento es estadístico y de acuerdo a los puntos que se tengan se debe averiguar las posibles líneas en las que puede estar  el punto, lo cual se logra por medio de una operación que es aplicada a cada línea en un rango determinado. La trasformada Hough utiliza dentro de su funcionamiento una representación paramétricas de forma geométrica, es decir, que si se tiene una recta, esta se representaría con los parámetros  r y θ, donde  r es la distancia entre a línea y el origen, y θ es el ángulo del vector desde el origen al punto más cercano. Por medio de la parametrización la ecuación de la recta se podría escribir de la siguiente manera 




Figura#1.Tomada de Wikipedia




Figura#2: Tomada de Wikipedia


Una de las características que posee la trasformada es que  si se representan en un plano cartesiano la recta quedaría representada mediante las coordenadas ( r ,θ), y el punto  se representaría como una función senoidal. Por tal motivo si se tienes dos puntos, estos se simbolizarían por medio de dos senoides desfasadas alfa grados de acuerdo a las coordenadas de los puntos, pero si los dos puntos compartes la misma recta las  dos senoides se  terminaran cruzando cada 180 grados ya que la función senoidal representa el conjunto de  las infinitas rectas que pasan por el punto, tal y como se observa en la Figuras:


Figura#4: Tomada de Wikipedia



Figura#5: Tomada de Wikipedia


Variaciones y extensiones realizadas la trasformada Hough


Dentro las variaciones y extensiones que se han implementado a la trasformada  se describirán las más importantes.



Kernel trasformada Hough


La modificación realizada por Fernandes y oliveira a la transformada Hough consistió en la implementación de un software que permitiera conseguir un rendimiento en tiempo real para  todas las imágenes, incluso las más grandes. A pesar del arreglo realizado la trasformada seguía utilizando las mismas coordenadas de parametrización  propuestas por Duda y Hart, pero con la diferencia en que mejora significativamente el rendimiento del esquema de selección y el acumulador a trasformar, ya que este es más robusto para la detección de líneas erróneas.


Detección de objetos 3D (Planos y cilindros)


La trasformada Hough también es utilizada para la detención de objetos en 3D, lo cual  ha permitido que se implemente en la detección de aviones en las nubes, ya que el avión se puede parametrizar por su vector y su distancia de origen por el espacio tridimensional Hough. La intersección de las superficies sinusoidales indica la presencia del avión en el aire.


Hough transformación de curvas


Inicialmente se ha definido la transformada Hough para la búsqueda de líneas rectas, pero también esta se puede utilizar para la búsqueda de cualquier forma,  la cual  se puede representar por un conjunto de parámetros. Un círculo se puede representar en un conjunto de 3 parámetros, definidos como  su centro y radio, de tal forma que con el espacio Hough se convierta en 3 dimensiones; lo cual permite que una elipse o curvas arbitrarias se puedan encontrar de  misma forma por medio de un conjunto de parámetros.  







La información adquirida de la  pagina web de Wikipedia.










domingo, 28 de octubre de 2012

CURSO DE INFORMATICA AUTO-ORGANIZADA





RESUMEN Y CRITICA




Todo inicia con la vida señor Salman Schocken, (abuelo de Shimon Schocken), un hombre que por cosas de las vida se ve obligado a suspender sus estudios para poder conseguir el pan a su familia; sin embargo era una persona autodidacta que a pesar de las circunstancia iba creado un imperio por medio de los grandes almacenes que conseguía, los cuales llamaban mucho la atención debido a su arquitectura y  lujos. Pero a finales de los años 30 se ve obligado a irse de Alemania con su familia, sus almacenes son confiscados y tiene que dejar a atrás lo obtenido. Sin embargo pasa toda su vida buscando el arte y la cultura, consiguiendo ser el cofundador y primer director de la universidad Hebrea de Jerusalén y fundador de la editorial Schocken Books.



Los padres de Shimon Schocken no tuvieron la oportunidad de ir a una universidad debido a que tenían que construir una familia y de paso a su país, pero esta situación logro que Shimon pudiera mirar las cosas de una forma sencilla por medio de esa capacidad autodidacta que tanto sus padres y su abuelo habían lograron manejar para  poder sobrevivir. Schocken se dio cuenta que los profesores no necesariamente debían de enseñar todos sus temas de forma continua, ellos debían de aportar recursos y entornos de estudio en donde los estudiantes pudieran explorar y dotarse por sí mismos del tema en especial, por tanto a partir de este principio se encontró en una situación en la cual la tuvo que aplicar, ya que siendo profesor de informática los estudiantes no podían entender muy bien el funcionamiento de las computadoras de hace 12 años, ya que estas iban avanzando y se volvían más complejas, así que con ayuda de su colega Noam Nisan, tuvieron que crear un método en el cual los estudiantes pudieran entender mejor el funcionamiento de las maquinas por medio de la construcción de hardware y software, y que estos funcionaran con un uso general para los principios fundamentales del mismo.


Su principal aporte fue resumir toda su idea en una compuerta lógica NAND, la cual posee  cuatro estados de entrada y de salida. A partir de la compuerta NAND se guio a los estudiantes para que por medio de una secuencia de proyectos  se construyeran unos chips, una plataforma de software, un ensamblador, una maquina virtual, un sistema operativo básico y un compilador de un lenguaje simple tipo Java que le llamaron JACK (Figura#2). Cuando los estudiantes terminaron de construir el proyecto, no podían creer que por sí mismos tuvieran la facilidad  escribir en JACK  un juego como Tetris, Snaks o Pongs, y que todo se hubiera  hecho por medio de la compilación en lenguaje de máquina  en el compilador que el mismo estudiante construyo.




Los dos creadores (Schockeny Nisan), de este método informático trabajaron por 5 años en facilitar las herramientas e infraestructuras del proyecto, de tal forma que no solo a estudiantes pudieran conseguir los módulos de construcción, sino  también cualquier persona, debido a que la información es libre en la web. Lo cual  ha generado que cualquier persona en el mundo pueda elaborar este proyecto e incluso mejorarlo por medio de la creación organizada de nuevos módulos y elementos de construcción informática.


En la actualidad el señor Schockeny sigue implementado su principio autodidacta, el cual le ha permitido crear un programa de aprendizaje secuencial de matemáticas, por medio de la interacción de los niños con una tabla digital, en la cual se puede ir aumentado el nivel de complejidad a medida que avanza en las pruebas.







APRENDIENDO A PROGRAMAR EN 10 AÑOS

RESUMEN Y CRITICAS


En la web es muy común encontrarse con sitios que proporcionan cursos de aprendizaje para  manejar cualquier  programa que se tenga en un computador; pero lo que más llama la atención de los anuncios, es que usted puede finalizar el curso siendo un experto de la programación en tan solo unos  días o semanas.

La cantidad de libros y cursos que se pueden obtener en la web con solo colocar la expresión ‘aprendiendo usted mismo’ en la página de Amazon.com, son demasiadas, en donde  las principal opción que aparece de cursos y libros son las de computación,  lo que causa gran curiosidad es que ofrezcan tutoriales en tan pocas horas de aprendizaje. Si usted a través de cualquier curso de enseñanza   puede llegar a manejar las estructuras y a su vez conocer las características  del programa,  no quiere decir que ya usted sea un experto programando, debido a que en tan pocas horas o días, no se adquiere la capacidad de avanzar progresivamente hasta obtener un programa de alto nivel; por tanto usted en ese pequeño curso de programación solo interactuaría con las funciones del programa, pero no se  conocería todo el alcance que tiene el programa al ser manejando más a fondo.

Muchos expertos a través de sus estudios han descubierto que aprender a dominar un arte o área de trabajo requiere mucho tiempo de dedicación, ya sea desde un juego de ajedrez, tocar el piano, como la topología, las cuales requieren en promedio  10 años de estudio y practica para poder alcanzar pericia y dominio de esa actividad. Un ejemplo muy claro es lo ocurrido con  Mozart, que era un prodigio musical desde los 4 años pero tardo 13 años en producir música de clase mundial, al igual que los Beatles que habían tocado desde 1957 en pequeños club de Liverpool pero alcanzaron su éxito en 1967. Por tanto pintor experto no se puede crear a través del estudio de pinceles y pigmentos, se debe generar a través de la práctica. De igual forma un programador no se puede formar por medio de libros de computación, él debe poner en practica lo que ha aprendido por medio de la generación de programas en los cuales el pueda aprender de los errores y a su vez realizar  cambios para optimizar el programa.                            
En el tiempo en que se creen y se produzcan programas para poder aumentar el conocimiento de los mismos se debe ir subiendo el nivel de complejidad para poder así alcanzar un dominio de todas estructuras y herramientas del programa.

En un estudio realizado a la academia de Música de Berlín se les pregunto a los estudiantes el número de horas en las que había practicado, y en su totalidad los estudiantes respondieron que habían aumentado el número de horas de practica a la semana de acuerdo como aumentara su edad, lo cual genero que los estudiantes de música de élite a sus 20 años tuvieran 10.000 horas de practica, los estudiantes simplemente buenos tuvieran 8.000 y los futuros profesores de música  tuvieran un poco mas de 4.000 horas.

Así que para poder alcanzar la excelencia de cualquier área o arte en específico, se deben obtener 10.000 horas de práctica y estudio sobre el tema. Por tanto el buen programador deberá haber alcanzado un número mayor o igual a las 10 mil horas de  práctica y estudio, de tal forma que pueda  ser el líder de grandes proyectos de programación en donde pueda aportar toda su experiencia y pericia para resolver las dificultades e inspirar a otros con su visión; como también ser el peor en otros proyectos y así poder aprender más del conocimiento de los líderes del proyecto ejecutado. También deberá entender los programas escritos por otra persona para poder corregirlos o arreglarlos cuando los programadores no estén presentes.

La constante práctica de una persona  en la programación le proporciona tanto una inventiva a la hora de solucionar un problema, como también la capacidad de conocer más a fondo los comandos y estructuras del programa. Lo que conlleva que una persona no se puede conseguir ser programador experto en tan solo 3 días.

domingo, 21 de octubre de 2012

Resumen y Criticas


Reconocimiento de imágenes que llevan a una realidad aumentada


Con el avance que ha teniendo la tecnología en los últimos 2 años, ha permitido traer consigo miles de aplicaciones a dispositivos que en la actualidad son  necesarios para una persona;  como es el caso del Smartphone, que no solo es un dispositivo de comunicación celular, también un equipo de adquisición de información por la web, entre otras.


Hoy en día lo que parecía ciencia ficción es una realidad, ya que a través de una fotografía de un dispositivo móvil o Smartphone se pueden conocer las características del elemento que se está enfocando. Un ejemplo muy sencillo fue el realizado por Matt Mills en la ponencia del reconocimiento de imágenes(reconocimiento de una imagen desencadena la realidad aumentada),  en ella se podía observar la versatilidad que tiene la aplicación para reconocer cierta imagen, y así suministrar información o detalles de la misma. En el ejercicio mostrado se presento un cuadro del poeta Rabbie Burns, y por medio del celular se capturo la imagen del mismo y en segundos reconoció la imagen por la web, la cual suministro los movimientos del poeta en la imagen como si la pintura cobrara vida por medio de la aplicación que tenía el celular en ese momento. Sin importar que el cuadro se moviera la imagen o información se iba superponer en la pintura del poeta y  seguiría realizando sus movimientos y escuchando su vos (tal y como se muestra en las siguientes fotografías):


                           
Figura#1


Figura#2

 Figura#3

Pero no solo esta aplicación podía suministrar o recrear la historia del arte; por medio del Smartphone también se capturo la parte inferior de conexión de un Router o dispositivo de comunicación a internet,  y luego de algunos segundos la imagen fue reconocida por la web, y al instante se visualizo el proceso de conexión de cada una de las entradas que tiene el dispositivo, con una reproducción de vos que iba indicando e informando lo que tendría que hacer para poder conseguir  que el dispositivo  se conectara correctamente (Figura#4 Figura#5).

                          
Figura#4


                          

Figura#5

Esta tecnología en un futuro inmediato, permitiría obtener más información de algún suceso, eventualidad o noticia, con el simple hecho de capturar la imagen, ya sea de una pared de anuncios o el periódico, y así poder visualizar el desarrollo de la noticia publicada (Figura#6). 



Figura#6

Esto causaría un avance importante en cuanto a obtención de información, ya sea para solucionar un problema, para enfatizar sobre temas de conocimiento, e incluso para divertirse, debido a la gran velocidad que han tenido los móviles actuales para descargar archivos por la web, lo que causaría  una reproducción de objetos inanimados, tales como un dinosaurio, por medio de la captura de una imagen (Figura#7).


                             
Figura#7

También se podrían hacer cosas sencillas con la aplicación, como es el caso de mandar postales  con una simple fotografía y expresar con ella  lo deseado debido a que  al capturar la imagen con el Smartphone se podría visualizar un corto video de las personas deseándote una feliz navidad o cumpleaños, o simplemente un recuerdo más de algún hecho importante. 


La aplicación de imagen para Smartphone creada en Cambridge Inglaterra, pienso  que con un buen uso del mismo nos permitirá ser más versátiles a la hora de solucionar algún problema o entender algún tema en especial, debido a que con una simple fotografía se podrá obtener información de cómo llegar a lo deseado. Un ejemplo seria, como llegar a una  dirección de algún edificio o casa, sin necesidad de tener GPS, y que con solo capturar la fotografía de la casa deseada nos permitiera desplegar las rutas más cortas y los medios de trasporte a utilizar. Otra forma de implementar esta aplicación seria enviar solo una fotografía como  hoja de vida a la empresa en donde se quiere obtener trabajo,  y por medio de la  captura de la imagen del personal, se podría analizar las características y condiciones de cada una  de las personas por medio del Smartphone, el cual le permitiría verificar las empresas en donde ha trabajado, o en otro caso conocer las actividades y el promedio alcanzado en su nivel de formación profesional.
Son diversas las funciones que podría realizar, incluso hasta en el área de seguridad, pero existe la posibilidad de que esta aplicación pueda ser utilizada para cambiar la información de una persona o incluso cambiar hechos de algún actividad para el beneficio de otras personas.




lunes, 1 de octubre de 2012



IMAGEN EN UN BILLÓN DE CUADROS POR  SEGUNDO





La humanidad siempre ha  estado interesada en descubrir y describir el comportamiento físico de un objeto en el ambiente, por tal motivo dentro de su  análisis, se ha implementado el uso de la fotografía, para observar mejor las acciones de un elemento ante una reacción física. Un ejemplo sencillo seria en comportamiento de una bala atravesando una manzana, la cual se puede examinar mejor por medio de la adquisición de imágenes de una cámara en un instante de millonésima por segundo.


Pero a medida que avanza la tecnología, se han venido obteniendo mejoras con respecto a la adquisición de imágenes fotográficas, como es en el caso de la femtofotografia, que es una técnica enfatizada en la creación de vídeos de cámara lenta, con el fin de obtener el comportamiento de los rayos de luz en movimiento.

La femtofotografia ha permitido analizar comportamiento de la luz por medio del choque y dispersión de la misma. Esto ha originado un desarrollo con respecto a la creación de cámaras  fotográficas, ya que a través de las pruebas realizadas en laboratorios se ha permitido obtener un alcance mayor a la de línea de vista. Las cámaras que se utilizaron inicialmente para analizar el choque de una bala, en este momento han alcanzado un nivel superior, debido a que la información capturada puede reproducirse 10 mil millones de veces más lento, con el fin de analizar los eventos que ocurren en tiempos menores a los nanosegundos. 

En las siguientes fotografías se muestra una de las partes del vídeo obtenido de una cámara femtofotografia; en ella se observa un rayo de luz atravesando una botella de Coca-Cola llena de agua, la cual muestra el comportamiento de de la misma ante el choque y dispersión de los fotones cuando la tapa de la botella les impide seguir su curso. En ella se puede observar que parte de la luz se fuga por las diferentes zonas y se empiezan a ver ondulación hasta tal punto que esa energía empieza a dispersarse hasta desaparecer.

  







Si la luz se empieza a analizar, de tal forma que se le aplique a elementos físicos y  de la naturaleza, con el fin obtener información para facilitar o solucionar algún problema, se podría estar pensando en un gran avance tecnológico por medio de una cámara. Una prueba muy curiosa que se realizo a un tomate por medio de un rayo de luz, se pudo identificar que la luz permanecía mayor tiempo después del barrido de luz, cuando la hortaliza estaba madura.






En otra prueba realizada en el laboratorio, se pudo conocer que a través de un rayo de luz que chocara en la puerta de una habitación abierta, se podía identificar el objeto o individuo que permanecía oculto en la habitación, debido a la reflexión de la luz al pegar con el objeto,  ya que los fotones se reflejarían, y nuevamente se chocarían con la puerta hasta regresar al lente de la femtocamara. De esta manera la cámara permitiría identificar las distancias de fotones hasta la cámara, y a partir de las muestras adquiridas se podría reconstruir el objeto oculto en la habitación.





 





Las características que posee hasta el momento la femtocamara, no solo se pueden aplicar en condiciones de prevención de accidentes o colisiones de autos, para estas circunstancias ya existen dispositivos  encaminados en solucionar esas situaciones. Las femtocamaras tienen un propósito distinto, están enfatizadas en facilitar el entorno de investigación militar, con el fin de identificar cualquier amenaza sin que sean percibidos por el mismo. Actualmente toda unidad militar posee un sitio donde resguardarse del peligro, lo que imposibilita  el ataque enemigo, por tanto la mejor vía de análisis a un escenario militar era por medio de un rayo de luz ya que es muy rápida en cuanto a su velocidad y es muy fácil de controlar para que no sea percibida por los atacantes.   




martes, 7 de agosto de 2012

Brillo y contraste- Gamma


Introducción

Con  el desarrollo y avance que ha tenido la tecnología hoy en día, se ha facilitado trasformar o adecuar las imágenes obtenidas por medio de la cámara. En lo general  las modificaciones o retoques  que se le realizan a las imágenes manejan mucho en publicidad, con fin de obtener una mejor calidad o realismo del producto, sin embargo cualquier persona puede realizar  adecuaciones a las imágenes o fotografías que se hayan obtenido en algún evento.
Dentro de los ajustes o retoques  más utilizados a las imágenes están el brillo y contraste y corrección de gama:

Ajuste de Brillo y Contraste
Es uno de los filtros de imágenes más utilizados debido a que permite disminuir algunas irregularidades en cuanto partes muy claras y oscuras que presente la misma por problemas de iluminación. También permite realzar los colores las imágenes mediante el contraste lo cual de un efecto de dramatismo en algunas fotografías.



       




             



             
                           

Corrección de Gamma
El termino Gamma (Y) se genero debido a que los primeros equipos de televisión, construidos con el sistema de tubos catódicos, no producen la intensidad de luz en proporción directa con el voltaje de entrada. Debido a que el comportamiento  es no-lineal, el receptor del televisor corrige la distorsión por medio de la siguiente ecuación:




Vd= Tensión de la imagen trasmitida.
Vc= Tensión a la salida de la cámara.
Yc= Factor gamma de la cámara
Yd= Factor gamma de receptor



Se podría decir que es el ajuste de intensidad de una imagen con el objetivo de compensar las variaciones del dispositivo de salida.





Al relacionar una imagen con el factor Gamma, se está hablando del espectro de  colores  que reúne los colores del arcoíris, la cual consta de las diferentes tonalidades de un color.




Las cámaras no tienen la misma capacidad de obtener los colores de una forma suave en gama de colores como lo hacen nuestros ojos, la cámara lo percibe de una forma lineal, como si se tratara de un  degradado de negro a blanco, para luego almacenar en modo de la gama, por tal motivo la imagen cuando es captada se debe almacenar en un escala de tonos gamma para que  estas puedan acercarse a la forma de cómo percibimos lo niveles de degradado de tonos.


    






         

lunes, 23 de julio de 2012

El formato BMP

El formato BMP es uno de los más simples. Fue desarrollado por Microsoft e IBM en forma conjunta, lo que explica su uso particularmente amplio en plataformas Windows y OS/2. Un archivo BMP es un archivo de mapa de bits, es decir, un archivo de imagen de gráficos, con píxeles almacenados en forma de tabla de puntos que administra los colores como colores reales o usando una paleta indexada. El formato BMP ha sido estudiado de manera tal que permite obtener un mapa de bits independiente del dispositivo de visualización periférico (DIB, Mapa de bits independiente del dispositivo).
La estructura de un mapa de bits es la siguiente:

Encabezado del archivo

El encabezado del archivo proporciona información acerca del tipo de archivo (mapa de bits) y su tamaño, así como también indica dónde comienza realmente la información de la imagen.
El encabezado comprende cuatro campos:
  • La firma (en 2 bytes), que indica que se trata de un archivo BMP con dos caracteres
    • BM, 424D en hexadecimal, que indica que se trata de un mapa de bits de Windows
    • BA que indica que se trata de un mapa de bits OS/2
    • CI que indica que se trata de un icono de color de OS/2
    • CP indica que es un puntero de color de OS/2
    • IC indica que es un icono de OS/2
    • PT indica que es un puntero de OS/2
  • El tamaño total del archivo en bytes (codificado en 4 bytes)
  • Un campo reservado (en 4 bytes)
  • El desajuste de la imagen (en 4 bytes), es decir, la ubicación del comienzo de la información de la imagen en relación con el comienzo del archivo

Encabezado de información del mapa de bits

El encabezado de información del mapa de bits proporciona información acerca de la imagen, en especial las dimensiones y los colores.
La información del mapa de bits comprende cuatro campos:
  • El tamaño del encabezado de información del mapa de bits en bytes (codificado en 4 bytes). Los siguientes valores hexadecimales son posibles según el tipo de formato BMP:
    • 28 para Windows 3.1x, 95, NT
    • 0C para OS/2 1.x
    • F0 para OS/2 2.x
  • El ancho de la imagen (en 4 bytes), es decir, el número de píxeles contados de forma horizontal
  • La altura de la imagen (en 4 bytes), es decir, el número de píxeles contados de forma vertical
  • El número de planos (en 2 bytes). Este valor es siempre 1
  • La profundidad del modelo de color (en 2 bytes), es decir, el número de bits usados para codificar el color. Este valor puede ser equivalente a 1, 4, 8, 16, 24 ó 32
  • El método de compresión (en 4 bytes). Este valor es 0 cuando la imagen no está comprimida o 1, 2 ó 3 según el tipo de compresión usado:
    • 1 para la codificación RLE de 8 bits por píxel
    • 2 para la codificación RLE de 4 bits por píxel
    • 3 para la codificación de campo de bits, lo que significa que el color fue codificado por una máscara triple representada por la paleta
  • El tamaño total de la imagen en bytes (en 4 bytes).
  • La resolución horizontal (en 4 bytes), es decir, el número de píxeles por metro contado de forma horizontal
  • La resolución vertical (en 4 bytes), es decir, el número de píxeles por metro contado de forma vertical
  • El número de colores de la paleta (en 4 bytes)
  • El número de colores importantes de la paleta (en 4 bytes). Este campo puede equivaler a 0 cuando todos los colores son importantes.

Paleta de imágenes

La paleta es opcional. Cuando se define la paleta, ésta contiene 4 bytes de forma sucesiva para cada una de las entradas, que representan:
  • El componente azul (en un byte)
  • El componente verde (en un byte)
  • El componente rojo (en un byte)
  • Un campo reservado (en un byte)

Codificación de imágenes

La codificación de imágenes se realiza escribiendo en forma sucesiva los bits que corresponden a cada píxel, línea por línea, comenzando por el píxel del extremo inferior izquierdo.
  • Las imágenes de 2 colores usan 1 bit por píxel, lo que significa que un byte permite codificar 8 píxeles
  • Las imágenes de 16 colores usan 4 bits por píxel, lo que significa que un byte permite codificar 2 píxeles
  • Las imágenes de 256 colores usan 8 bits por píxel, lo que significa que se necesita un byte para codificar cada píxel
  • Las imágenes de colores reales usan 24 bits por píxel, lo que significa que se necesitan 3 bytes para codificar cada píxel, respetando la alternancia del orden de los colores para el azul, el verde y el rojo.
Cada línea de la imagen debe comprender un número total de bytes que sea múltiplo de 4; si este esquema no se cumple, la línea se debe completar con todos los 0 necesarios para respetar el criterio. 

 Esta informacion fue adquirida de la pagina  http://es.kioskea.net/s/formato+bmp?qlc#k=c1c6152cf9bf379726de81aafb31842e