Pengkodean chrominance video analog - PAL / NTSC

Aug 18 2020

Saya menerapkan decoder video analog pada FPGA. Saya menemukan beberapa kesulitan selama decoding chrominance. Saya menghargai jika Anda dapat membantu saya. Ini adalah langkah-langkah yang saya lakukan:

  1. Saya menghasilkan sinyal NTSC ColorBar dari Generator pola TV. Saya melakukan akuisisi melalui papan RF dengan parameter berikut :: Osilator Lokal = 500 MHz, Frekuensi pengambilan sampel = 54 MHz (4 * 13,5 MHz), BW = 6 MHz, resolusi ADC: 12 bit

  1. Setelah membalikkan sinyal, saya mengimplementasikan LPF + bandpass FIR digital untuk memisahkan luma dan chroma.

  1. Saya menghasilkan localling, melalui DDS, sinyal subcarrier chroma (3,579545 MHz (NTSC)). Sebenarnya, ini adalah sinyal SIN + COS yang dikodekan pada 16 bit.

  1. Saya mengalikan, melalui IP dari Xilinx, sinyal chrominance oleh COSINUS (V), dan dengan pengganda lain, chrominance yang sama dengan SINUS (U) untuk membuat fase 90 ° di antara mereka.

  1. Setelah itu, saya menggunakan 2 LPF dengan frekuensi cutoff 500 kHz dan 1,3 MHz untuk U dan V. Kemudian, saya mendapatkan sinyal Merah dan Biru seperti di bawah ini:

sumber

Pada tahap ini, tidak apa-apa.

MASALAH: Saya mengharapkan hasil yang sama di semua lini video! Atau hanya kasus untuk 4 atau 5 baris berturut-turut, kemudian, itu berubah dan itu tidak mewakili level Merah dan Biru. Ini adalah kutipan dari apa yang saya dapatkan:

Ada penjelasan? Terima kasih sebelumnya.

Jawaban

2 Justme Aug 18 2020 at 22:46

Anda perlu menyesuaikan subcarrier yang dihasilkan DDS agar sesuai dengan sinyal referensi colorburst yang sebenarnya. Jadi mereka harus dibandingkan (frekuensi dan fase) dan berdasarkan hasil peningkatan fase DDS disetel sehingga burst match yang dihasilkan dari video sampel cocok. Bagaimana sebenarnya melakukan itu, mungkin ada banyak cara, dan ada banyak buku teknologi video yang menjelaskan decoding digital dari video komposit sampel.