• No se han encontrado resultados

Identificar las nubes y relacionar cada nube con la nube correspondiente en el siguiente fotograma, permite calcular el vector de movimiento con un coste de cálculo mínimo.

Como se ha estudiado, no es possible usar la Información Residual para este propósito puesto que los hops necesarios para saltar del frame i al frame i+1 pueden ser muy diferentes de los necesarios para saltar del i+1 al i+2. Todo depende del contenido del frame. En la Figura 51se muestra un ejemplo en el que un bloque se desplaza horizontalmente y la Información Residual que se produce con este movimiento.

127

Figura 52. Información Residual

La pelota blanca hace su aparición en el frame 1. Lo píxeles del fondo coinciden con el color del frame 0, de modo que serán codificados con hops nulos h0. Sin embargo, el área cubierta por la pelota será

codificada con hops positivos que permiten incrementar la luminancia con respecto al frame anterior para alcanzar al color blanco.

En el frame 2, la pelota se ha desplazado. Ahora, en la franja negra que la pelota ha abandonado hay que retornar al color negro y, por lo tanto, hacen falta hops negativos en esa zona que permitan modificar la luminancia con respecto al frame anterior y, así, pasar del blanco al negro. Por el contrario, en la zona negra que la pelota está invadiendo, es necesario codificarla mediante hops positivos para poder pasar del negro al blanco. Por último, en el interior de la pelota hacen falta hops positivos pequeños para terminar de alcanzar el blanco de la pelota que no se alcanzó en la codificación anterior.

En el siguiente frame, los píxeles que retornaron al negro en la codificación anterior con hops negativos, ahora tratan de terminar de ajustarse a dicho tono utilizando hops más pequeños por lo que se crea una estela en la imagen. Además, como en el caso anterior, aparece una franja de píxeles en la que es necesario usar hops negativos para saltar hacia el negro detrás de la pelota y otra en la que es necesario codificar con hops positivos para alcanzar el color blanco en la parte derecha de la pelota. Además, algunos píxeles que en el frame anterior habían sido codificados para permitir el salto desde el negro al

128

blanco tratan de terminar de alcanzar este tono por lo que se codifican con un hop pequeño. En total, esta vez tenemos cuatro nubes de diferentes tipos de hops.

Como se puede observar, las nubes de hops son diferentes en número y en tipo de hop que contienen por lo que compararlas no es suficiente para estimar el movimiento del objeto fácilmente. A medida que la imagen se complica, el número y variedad de nubes aumenta y correlar las nubes de un frame con las del frame anterior se convierte en una tarea ardua y difícil ya que las nubes son diferentes unas de otras y se pierde la relación entre ellas. Por esta razón, no se puede estimar lo que se ha movido la nube de un frame con respecto a su análoga en el anterior y, por tanto, tampoco se puede estimar el movimiento del bloque. Anteriormente, se ha visto un ejemplo sencillo de una bola blanca sobre un fondo negro en la que aún se podría realizar la correlación entre nubes y estimar el movimiento. Sin embargo, si el fondo no fuese negro, las nubes de hops positivos se transformarían en diferentes nubes de hops positivos y de hops negativos, según las luminancias que existen en el fondo. De esta manera, se complica aún más la tarea de correlar las nubes de un frame con las del frame anterior.

Figura 53. Ejemplo de teturas

Para solucionar este problema, es necesario modificar el frame de referencia. De esta forma, en lugar de utilizar el frame anterior, tal y como se ha venido haciendo hasta ahora, se utilizará como referencia un frame imaginario en el que todos los píxeles tienen el valor Y=128. El resultado de aplicar este frame se puede observar en la Figura 53.

129

Figura 54. Hops utilizando frame de referencia Y=128

En esta ocasión, existen dos nubes de hops diferentes en cada frame: una correspondiente a la pelota y la otra correspondiente al fondo. La nube correspondiente a la pelota puede servirnos para estimar el movimiento. Para ello, simplemente debemos realizar la correlación de las nubes, es decir, encontrar su análoga en el frame siguiente y, de esta manera, calcular cómo se desplaza el centro geométrico de dicha nube de hops. Por nube análoga, se entiende una nube de tamaño y forma similar y del mismo tipo de hop que se encuentra en ambos frames.

Una vez calculado el vector de movimiento, se aplica dicho vector al frame i y, a continuación, se codificala Información Residualentre el frame i+1 resultado de aplicar el vector de movimiento al frame i dando lugar a una aproximación del frame i+1y el frame i+1original.

Esta estrategia es mucho más fiable para calcular los vectores. Sin embargo, implica llevar a cabo dos codificaciones: la primera para calcular las nubes y estimar su movimiento y la segunda para codificar la Información Residual final, que enviaremos junto con el vector.

Documento similar