Dalam MPEG, ada proses di mana gambar dipecah menjadi blok makro dan vektor gerak dihitung untuk masing-masing blok makro tersebut. Anda kemudian mengirimkan vektor-vektor ini, bersama dengan kesalahan prediksi, untuk merekonstruksi gambar berikutnya dalam urutan video.
Saya mencoba untuk memahami cara kerjanya. Setiap makroblok memiliki vektor gerakan yang terkait dengannya, yang (jika vektor adalah [1,0]), mengatakan all the pixels in this block move 1 in the x direction and 0 in the y direction for the next frame.
Jika semua vektor gerakan tidak sejajar dengan benar, tidakkah ini meninggalkan area gambar yang tidak terhitung (seperti area di mana macroblock itu ada di tempat pertama)?
Sebagai contoh, saya memiliki pertanyaan berikut yang saya temukan.
Pertimbangkan gambar berikut pada waktu t:
7 7 7 7
7 7 5 5
7 5 5 8
8 8 8 8
9 9 9 9
9 9 9 9
Gambar ini dipecah menjadi blok makro 2x2 dan vektor gerakan berikut dikirim bersama untuk membuatnya kembali:
(0,0) (0,0) (0,1) (-1,1) (0,0) (0,0)
Gambar pada langkah waktu sebelumnya, t - 1, tampak seperti ini:
7 7 7 7
7 7 5 4
7 7 7 7
7 5 8 8
8 9 8 9
9 9 9 9
Apa kesalahan yang ditransmisikan?
Bagaimana Anda menyelesaikan ini?