Décodage de chrominance vidéo analogique - PAL / NTSC
J'implémente un décodeur vidéo analogique sur FPGA. Je trouve quelques difficultés lors du décodage de chrominance. J'apprécie si vous pouvez m'aider. Voici les étapes que je fais:
- Je génère un signal NTSC ColorBar à partir d'un générateur de modèles TV. Je fais l'acquisition via une carte RF avec les paramètres suivants: Oscillateur local = 500 MHz, fréquence d'échantillonnage = 54 MHz (4 * 13,5 MHz), BW = 6 MHz, résolution ADC: 12 bits

- Après avoir inversé le signal, j'implémente une FIR numérique LPF + passe-bande pour séparer la luminance et la chrominance.

- Je génère localling, via un DDS, le signal de sous-porteuse de chrominance (3,579545 MHz (NTSC)). En fait, il s'agit d'un signal SIN + COS codé sur 16 bits.

- Je multiplie, via un IP de Xilinx, le signal de chrominance par COSINUS (V), et par un autre multiplicateur, la même chrominance par SINUS (U) afin de créer une phase à 90 ° entre eux.

- Après cela, j'utilise 2 LPF avec une fréquence de coupure de 500 kHz et 1,3 MHz pour U et V, respectivement. Ensuite, j'obtiens des signaux rouges et bleus comme ci-dessous:


la source
À ce stade, tout va bien.
PROBLÈME: je m'attends à avoir la même sortie sur toutes les lignes vidéo! Ou ce n'est le cas que pour 4 ou 5 lignes successives, alors ça change et ça ne représente pas les niveaux Rouge et Bleu. Voici un extrait de ce que j'obtiens:

Une explication s'il vous plaît? Merci d'avance.
Réponses
Vous devez ajuster la sous-porteuse générée par le DDS pour qu'elle corresponde au signal de référence de couleur réelle. Ils doivent donc être comparés (fréquence et phase) et sur la base du résultat, l'incrément de phase DDS est réglé de sorte que la rafale générée corresponde à la rafale de la vidéo échantillonnée. Comment faire cela, il peut y avoir plusieurs façons, et il existe de nombreux livres sur la technologie vidéo qui décrivent le décodage numérique de vidéo composite échantillonnée.