Bewegungsvektoren / Motion Vectors

Mit Hilfe von Bewegungsvektoren kann die Bewegung in einem Bild mathematisch beschrieben werden. Hier ein Beispiel. Die Dame im Vordergrund bewegt sich innerhalb des Bildes nach rechts, die Kamera schwenkt ebenfalls nach rechts, d.h. der Hintergrund wandert nach links.
Bewegungsvektoren werden in diesem Fall für je 16×16 Pixel berechnet und angezeigt.

[FlasHTML5]
useFlashFirst:true,
mobileVideoObject: new HTML5VideoObject(480,192, {“autobuffer”:”autobuffer”,”controls”:”controls”}),
mobileH264: new HTML5VideoAsset(“http://bht.multimediastreaming.info/wp-content/uploads/2010/11/mv.mp4″,”video/mp4”),
mobilePosterImage: new HTML5VideoImage(“/wp-content/uploads/2010/11/motionvectors.png”, 480, 192, “telematics”, “No video playback capabilities.”),
androidPosterImage: new HTML5VideoImage(“/wp-content/uploads/2010/11/motionvectors.png”, 480, 192),
desktopVideoObject: new HTML5VideoObject(480, 390, {“autobuffer”:”autobuffer”,”controls”:”controls”}),
desktopH264: new HTML5VideoAsset(“http://bht.multimediastreaming.info/wp-content/uploads/2010/11/mv.mp4″,”video/mp4”),
desktopAdditionalVideos: [new HTML5VideoAsset(“/wp-content/uploads/2010/11/mv.mp4″,”video/ogg”),
new HTML5VideoAsset(“http://bht.multimediastreaming.info/wp-content/uploads/2010/11/mv.mp4″,”video/webm”)],
desktopFlashObject: new HTML5VideoFlashObject(“http://labs.byhook.com/html5video/player.swf”, 600, 400, {“allowFullScreen”:”true”, “flashvars”:”file=http://bht.multimediastreaming.info/wp-content/uploads/2010/11/mv.mp4&image=/wp-content/uploads/2010/11/motionvectors.png”}),
desktopPosterImage: new HTML5VideoImage(“/wp-content/uploads/2010/11/motionvectors.png”, 600, 400, “nanocosmos”, “No video playback capabilities.”)
[/FlasHTML5]
Das Bild wurde mit avisynth und einem kleinen Skript erzeugt:

#AviSynth script for showing motion vectors in a video
source = AviSource(“j:\tfa.avi”)
source = source.ConvertToYUY2()
# Calculate Motion
mSuper = MSuper(source)
mVector = MAnalyse(mSuper, blksize=16)
# Show Motion
MShow(mSuper, mVector).Trim(25,200)

Abtastung und Quantisierung von Digitalen Bildern


Was ist ein Digitales Bild?
Jedes Video-Bild oder jeder Audio-Ton kann als Signal aufgefasst werden, d.h. als Funktion über physikalische Größen. Bei Bildern ergibt sich eine 2D-Funktion für jeden Ort des Bildes mit jeweils einem Wert für die Intensität des Bildes (Farbe/Helligkeit).
Das Signal kann auf eine eindimensionale Funktion über den Verlauf einer Bildzeile reduziert werden, das für jeden Ort der Zeile eine Helligkeit bzw. die Farbintensität angibt (siehe Video/TV-Signal). Die Grenzen liegen zwischen den Rändern des Bildes sowie dem maximalen Intensitätsbereich der Farbwerte.
In der Analogtechnik ist das Signal kontinuierlich sowohl im Orts- als auch Wertebereich, d.h. es existieren theoretisch unendlich viele Werte innerhalb der Intervalle.
Bei der Digitalisierung wird das Signal in eine feste Anzahl von Diskreten Zahlenwerten eingeteilt.
Die Einteilung der X-Achse wird als Abtastung, die des Wertebereiches (Y-Achse) als Quantisierung bezeichnet.
Beispiel für digitale HDTV-Bilder: Abtastung einer Zeile mit 1920 Spalten, Quantisierung der Farbwerte mit je 256 Stufen (8 Bit).

WordPress Appliance - Powered by TurnKey Linux