Brevet FR2683966A1 — publié le 19930521

PROCEDE DE SYNCHRONISATION DU CIRCUIT DE BALAYAGE D'UN APPAREIL DE VISUALISATION D'IMAGES DESCRIPTION L'invention concerne un procédé de synchronisation du circuit de balayage d'un appareil de visualisation d'images, lesdites images ayant été acquises par une caméra possédant un circuit de balayage piloté par une horloge d'acquisition donnée. Le procédé s'applique aux appareils de visiophonie, de visioconférence, de télévision et de télésurveillance. Dans une transmission vidéo analogique, des tops de synchronisation sont insérés régulièrement dans le signal image. Ils indiquent les débuts d'images et les débuts de lignes. L'appareil de visualisation ou moniteur dans le cas de la visiophonie, se synchronise sur ces tops de référence, ce qui lui permet d'afficher le début d'image en haut à gauche et les débuts de lignes le long des bords gauches. Un signal vidéo analogique contient donc deux fréquences de référence, la fréquence ligne et la fréquence trame. Toutefois, il a été remarqué dans le cas de la transmission de signaux analogiques sur réseau large bande pour la visiophonie qu'il y avait un défilement d'une ombre se superposant à la scène visualisée. En effet, dans la transmission analogique sur réseau large bande en visiophonie (Fig. 1), le signal vidéo issu de la caméra A parvient sans déformation majeure au moniteur B. De même, pour le signal issu de la caméra B vers le moniteur A. Les circuits de balayage du moni teur B se trouvent donc pilotés par le signal en provenance de la caméra A. Cependant, il n'y a aucune raison pour que les balayages de la caméra B soient identiques à ceux de la caméra A. Or, la caméra et le moniteur B d'un visiophone se trouvent situés très proches l'un de l'autre et les influences par rayonnement de leur circuit de balayage provoquent ce défilement. La vitesse de défilement correspond à l'écart de fréquence entre les deux balayages. Dans le cas d'une transmission vidéo numérique où les signaux ont été comprimés par un codeur pour être transmis, ces fréquences lignes et trames ne sont plus transmises en tant que motifs réguliers périodiques. En éliminant les redondances spatiales et temporelles par des techniques connues de compression d'images, le nombre de bits par image devient variable. Des mots de codes caractérisant les débuts d'images sont bien transmis, mais ils ne sont plus séparés par des durées égales et ne constituent plus un rythme sur lequel l'appareil de réception peut se synchroniser. La synchronisation ligne, elle, peut ne plus être du tout transmise. L'appareil de réception qui va permettre de visualiser ces images comporte un décodeur qui permet de reconstruire les images à l'origine comprimées, de manière à enregistrer ces images entières dans des moyens de mémorisation de visualisation mais à des instants variables qui dépendent du nombre de bits transmis par image et de la puissance du décodeur. Les problèmes de synchronisation du balayage n'ont par conséquent pas été résolus jusqu'à présent de façon efficace. La présente invention permet de résoudre ces problèmes. La présente invention a plus particulièrement pour objet un procédé de synchronisation permettant d'avoir un système de balayage de l'appareil asynchrone, indépendant de la synchronisation des images qu'il reçoit et non perturbé par une base de temps d'un autre système de balayage qui se trouverait à proximité de ce dernier. La présente invention a plus particulièrement pour objet un procédé de synchronisation du circuit de balayage d'un appareil de visualisation d'images acquises par une caméra possédant un circuit de balayage piloté par une horloge d'acquisition donnée, ledit appareil comprenant une mémoire tampon d'entrée, des moyens de traitement permettant de reconstituer chaque image arrivant dans la mémoire tampon, des moyens de mémorisation de visualisation dans lesquels les images sont enregistrées après traitement et des moyens de commande aptes à piloter l'écriture et la lecture des images dans les moyens de mémorisation de visualisation, caractérisé en ce qu'il consiste à appliquer au circuit de balayage un signal d'horloge arbitraire, indépendant de la synchronisation image du signal reçu et à gérer la lecture et l'écriture des moyens de mémorisation de visualisation pour obtenir des répétitions ou des suppressions d'images à la visualisation absorbant ainsi tout retard ou toute avance. Selon une deuxième caractéristique, le procédé consiste à diviser les moyens de mémorisation de visualisation en au moins deux zones de mémorisation, à commander le traitement d'une image I au fur et à mesure que cette image est enregistrée dans la mémoire d'entrée, à commander l'enregistrement de cette image I au fur et à mesure de son traitement dans l'une des zones de mémorisation, puis soit - à n'autoriser la lecture de la zone dans laquelle cette image a été enregistrée que si le traitement d'une nouvelle image est terminé, sinon à commander une nouvelle lecture du contenu de l'autre zone et à n'autoriser le traitement d'une nouvelle image que lorsque le basculement d'une zone à l'autre a été fait ; soit, le traitement d'une image étant terminé - à poursuivre la lecture de l'autre zone contenant une image déjà enregistrée de manière à lire une fois de plus que les autres cette image ; soit - à commander la lecture de cette première zone de manière à visualiser l'image enregistrée qui vient d'être traitée et visualiser une fois de moins que les autres une image précédemment traitée et enregistrée dans l'autre zone. Selon une autre caractéristique, le procédé consiste dans le cas où l'horloge d'acquisition est moins rapide que l'horloge de visualisation, à commander la lecture d'une image enregistrée dans l'une des zones de manière à visualiser cette image plusieurs fois jusqu'à ce que l'image suivante soit traitée et enregistrée dans l'autre zone. Selon une autre caractéristique, le procédé consiste dans le cas où l'horloge d'acquisition est plus rapide que l'horloge de visualisation à choisir des moyens de traitement rapides aptes à traiter les données d'une image au fur et à mesure qu'elles arrivent dans la mémoire tampon d'entrée, à choisir un seuil de remplissage de la mémoire tampon et à supprimer la lecture d'au moins une image, l'image ayant pu être visualisée une ou plusieurs fois ou pas du tout dès que le seuil est dépassé. Lorsque l'appareil est un visiophone à bas débit, une image acquise sur n est seulement transmise et les moyens de commande sont aptes à commander la visualisation de n fois la même image pendant que les moyens de traitement traitent l'image suivante. Le procédé consiste alors, selon une autre caractéristique, à choisir des moyens de traitement aptes à traiter une image pendant la durée de visualisation de p images, p étant inférieur à n, l'image traitée étant alors enregistrée et sa visualisation commandée après visualisation de p fois l'image précédente. Dans le cas d'une application au visiophone, le procédé consiste à prendre comme horloge arbitraire l'horloge de balayage de la caméra proche du moniteur. Lorsque l'appareil est un système de visioconférence ou un poste de télévision ou un visiophone à haut débit, toutes les images acquises sont transmises, le procédé consiste alors à choisir des moyens de traitement aptes à traiter une image pendant la durée de visualisation d'une autre image et dès qu'un seuil prédéterminé de remplissage de la mémoire tampon d'entrée est dépassée par l'arrivée d'une image I, à autoriser le traitement de l'image suivante I+1, l'image I n'étant pas visualisée, la visualisation de l'image I+1 se faisant juste après la visualisation de l'image I-1. Dans le cas d'un système de visioconférence ou d'un poste de télévision ou d'un visiophone à haut débit dans lesquels les moyens de traitement n'ont pas la puissance voulue permettant de traiter une image pendant la durée de visualisation d'une autre image, le procédé consiste alors, dès qu'un seuil prédéterminé de remplissage de la mémoire tampon d'entrée est dépassé par l'arrivée d'une image I, à commander la répétition de la visualisation de l'image I pendant que se fait le traitement de l'image I+k, les k-l images intermédiaires n'étant pas visualisées, et l'image i+k étant visualisée juste après son traitement. D'autres particularités et avantages de la présente invention apparaîtront à la lecture de la description suivante qui est faite à titre indicatif mais non limitatif et en regard des dessins sur lesquels - la figure 1 représente un système de transmission de signaux à partir d'un réseau analogique dans le cadre d'une application visiophonique, - la figure 2 représente le schéma d'un dispositif de traitement et plus particulièrement du décodeur d'images numériques de l'appareil de visualisation MB et transmises par un réseau R, - la figure 3 illustre de façon schématique un système visiophonique permettant de mettre en oeuvre le procédé dans cette application. La figure 1 a déjà été décrite à propos de l'état de la technique. La figure 2 représente le schéma d'un décodeur Dec relié au circuit de balayage BA d'un appareil de visualisation MB. Il est inutile dans ce qui suit de rentrer dans les détails de la description du circuit de balayage BA de l'appareil MB, qu'il s'agisse d'un visiophone ou d'un poste de télévision car ces circuits sont bien connus de l'homme de métier. Il est inutile également de décrire dans le détail le décodeur, en ce qui concerne les moyens de décompression D, les circuits d'accès à la mémoire tampon d'entrée MT et les circuits d' adressages en lecture et écriture de la mémoire de visualisation MV, même si cette dernière a été divisée conformément à l'invention en au moins deux zones d'adressage distinctes, les techniques d'adressage de deux ou plusieurs zones distinctes dans une mémoire relevant de techniques connues. On pourra se reporter aux demandes de brevets EP-A2-0 844 270, EP-A2-0 123 456 et U-4 185 188 pour plus de détails sur les codeurs/décodeurs, et en particulier les décodeurs munis d'un circuit de décompression tel qu'utilisé dans des appareils comme le visiophone ou les circuits de traitement de signaux de télévision. Pour la suite de la description on pourra se reporter aux schémas des figures 2 ou 3. Les images qui arrivent à l'entrée du décodeur Dec par le réseau R arrivent à un débit donné qui est soit de 64 Kbit/s, soit 48 Kbit/s, pour les réseaux à très bas débit de type RNIS ou à d'autres débits, plus élevés, constants ou variables. Le nombre de bits par image est variable du fait des traitements de compression réalisés par un codeur à l'émission. Dès leur arrivée, les informations de chaque image sont enregistrées dans la mémoire tampon MT. Une caractéristique du procédé consiste à vider cette mémoire MT en permamence, de manière à ce que des retards qui pourraient être introduits par le transit des informations dans leur mémoire soit le plus faible possible. En pratique, un seui I de remplissage est défini pour un débit donné. On prendra par exemple un seuil légèrement supérieur à 1200 bits lorsque le débit d'entrée est à 64 Kbit/s, de manière à ce que l'attente entre la fin du traitement d'image et sa visualisation ne dépasse pas la durée d'une image. Ce seuil de remplissage est surveillé par les moyens de commande C du décodeur Dec. Les moyens de commande C pourront être réalisés de façon pratique par un processeur existant du décodeur ou par un processeur que l'on aura rajouté. Le processeur est chargé par le programme mettant en oeuvre les différentes commandes d'adressage en lecture ou en écriture des mémoires et de traitement des informations par le décodeur conformément au procédé décrit. Comme décrit précédemment, les inforamtions lues dans la mémoire MT sont décompressées par le décompresseur D et mémorisées dans une mémoire de visualisation MV. Cette mémoire a été divisée en au moins deux zones de mémorisation distinctes MV1 et MV2 que l'on appelle mémoire dans la suite. Deux mémoires pourraient également être utilisées à cet effet. Chaque zone a au moins la taille d'une image complète. Les mémoires MV1 et MV2 fonctionnent en "flip-flop", c'est-à-dire que l'appareil visualise le contenu de MV1 pendant que le décompresseur remplit MV2 avec l'image suivante puis inversement. Les moyens de commande C permettent de piloter l'adressage en lecture et écriture des deux mémoires MV1 et MV2 de la façon indiquée dans ce qui suit. Les moyens de commande C n'autorisent une lecture de MV2 pour la visualisation que si le décompresseur D a terminé le décodage d'une nouvelle image, sinon il commande une nouvelle lecture du contenu de MV1. Les moyens de commande C n'autorisent le décompresseur D à commencer le décodage d'une nouvelle image (cette étape débutant par la lecture du contenu de la mémoire tampon MT) que lorsqu'il a commandé le basculement de MV1 vers MV2 ou vice versa. On choisit le décompresseur suffisamment puissant pour réaliser les traitements rapidement, afin de ne pas perturber l'ensemble des mécanismes de lecture et écriture, tels que proposés par le procédé. Des décompresseurs permettant d'obtenir la puissance de calcul requise existent sur le marché. Comme cela a été dit, le procédé de synchronisation consiste en premier lieu à prendre une horloge pour le circuit de balayage de l'appareil de visualisation qui soit arbitraire, indépendante des signaux de synchronisation image transmis. Dans les applications visiophoniques, on choisit préférentiellement comme horloge, l'horloge de balayage de la caméra qui se trouve dans l'appareil proche du moniteur de visualisation (Cf. figure 3). Cependant, dans la plupart des cas, l'horloge de la caméra d'acquisition n'a pas exactement la même fréquence que celle de l'horloge de synchronisation de l'appareil. Deux cas se présentent en effet. Ces cas vont être décrits à partir de l'application du procédé à la visiophonie (Fig. 38). 1er CAS : l'horloge de la caméra d'acquisition A est moins rapide que l'horloge de balayage de la caméra B. Dans ce cas, la caméra A produit moins d'images que la caméra B. Le moniteur MB a tendance à vouloir visualiser plus d'images qu'il n'en arrive. La mémoire tampon MT va se vider périodiquement et les moyens de commande vont selon le procédé commander alors la lecture de la mémoire MV1 ou MV2, de manière à visualiser au moins une fois de plus que les autres la même image de façon à laisser aux informations le temps d'arriver dans la mémoire tampon. Dans la séquence d'image restituée, il y aura une image de plus que dans la séquence de départ. En effet, une des images sera répétée deux fois ou une fois de plus que les autres. En pratique, la différence entre les horloges de A et de B sera faible (d'autant plus si les horloges sont fabriquées à partir de quartz). Cette répétition se produit si peu souvent qu'elle n'est pratiquement pas visible. 2ème CAS : l'horloge de la caméra d'acquisition A est plus rapide que l'horloge de balayage de la caméra B. Dans ce cas, symétrique du précédent, la caméra A produit plus d'images que le moniteur B ne peut en visualiser. Cela a pour conséquence une augmentation des informations en attente dans la mémoire tampon MT (côté moniteur B). Comme cette dernière n'est pas de taille infinie, tôt ou tard elle finit par déborder. Pour éviter cela, on pourrait augmenter la taille de la mémoire tampon MT. Cependant, il est préférable de ne pas le faire car cela introduirait un retard supplémentaire pour les informations, retart dû au temps de transit par cette mémoire. C'est pourquoi, pour résoudre ce problème avantageusement, on choisit un décompresseur ayant une puissance de calcul qui permette de décoder une image plus rapidement que nécessaire. On choisit également un seuil de remplissage de la mémoire tampon tel que décrit précédemment et lorsque le seuil est dépassé, le décompresseur traite plus tôt l'image suivante, la précédente sera visualisée un nombre réduit de fois ou ne sera pas visualisée du tout. Deux cas se présentent à nouveau : soit toutes les images sont traitées, soit le système (codeur-décodeur) fonctionne en mode de sous-échantillonnage temporel (c'est le cas pour l'application visiophonique à très bas débit). Mode sous-échantillonné (visiophone à très bas débit) Cela signifie que toutes les images acquises ne sont pas traitées par le codeur. Par exemple, dans un mode de fonctionnement à 10 Hz, une trame sur cinq est codée. Si la suite des nombres représente les images issues de la caméra A 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16.... le codeur A ne compresse que les images 1 6 11 16.. .etc... Le décodeur B ne décompressera également que les images 1, 6, 11, 16 etc. Le système de visualisation répète cinq fois la même image et la séquence visualisée à l'allure suivante : 1 1 1 1 1 6 6 6 6 6 11 Il 11 11 Il 11 16 16 16 16 16...... Dans ce mode de fonctionnement visiophonique, le moniteur B visualise cinq fois l'image 1 (inscrite dans MV1) pendant que le décompresseur décode et écrit le résultat de son décodage (l'image 6) dans MV2. Pour rattraper le retard dû à la lenteur du balayage du moniteur B, on choisit donc un décodeur plus puissant que nécessaire, de manière à ce qu'il permette par exemple d'avoir terminé le décodage de l'image 6 dans un temps correspondant à la visualisation de quatre fois l'image 1. Cela est possible parce que la dérive d'horloge fait que les informations correspondant à l'image 6 se sont accumulées dans la mémoire MT. L'image 1 ne sera alors répétée que quatre fois et la séquence visualisée possèdera une image de moins que la séquence de départ issue de la caméra A 1 1 1 1 6 6 6 6 6 11 11 11 11 11 16 16 16 16 16.... L'opération est répétée dès que le contenu de la mémoire tampon MT réaugmente. Il n'y a pas d'inconvénient de principe à avoir un décodeur très rapide car il s'arrête de toute façon lorsque la mémoire MT est vide. Mode sans sous-échantillonnage temporeL (visioconférence, téLévision, visiophonie à des débits supérieurs) La séquence à visualiser est donc 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16..... La solution idéale consiste à mettre en oeuvre un décompresseur ayant une puissance de calcul deux fois plus rapide que nécessaire. Si l'on admet par exemple que l'image 5 corresponde au moment où la mémoire tampon MT dépasse le seuil limite : le décodeur est autorisé par les moyens de commande à décoder l'image 6 immédiatement. Cette dernière est écrite dans la demi-mémoire qui contenait l'image 5, venant effacer celle-ci. La séquence visualisée est donc 1 2 3 4 6 7 8 9 10 11 12 13 14 15 16.... Le retard est ainsi rattrapé. Dans le cas où la puissance de calcul du décodeur n'atteint pas le double de la valeur normale, des configurations intermédiaires peuvent apparaître 1 2 3 4 4 7 8 9 10 11...... ou 1 2 3 4 4 4 8 9 10 11...... Elles permettent bien de rattraper le retard mais impliquent la répétition de certaines images et la suppression d'autres. Des mémoires annexes en complément de MV1 et MV2 (MV3 non représentée) permettent dans ce cas de ne pas réécrire et donc de ne pas effacer plusieurs images. Une seule image perdue est suffisante. REVENDICATIONS 1. Procédé de synchronisation du circuit de balayage d'un appareil de visualisation d'images acquises par une caméra possédant un circuit de balayage piloté par une horloge d'acquisition donnée, ledit appareil comprenant une mémoire tampon d'entrée, des moyens de traitement permettant de reconstituer chaque image arrivant dans la mémoire tampon, des moyens de mémorisation de visualisation dans lesquels les images sont enregistrées après traitement et des moyens de commande aptes à piloter l'écriture ou la lecture des images dans les moyens de mémorisation de visualisation, caractérisé en ce qu'il consiste à appliquer au circuit de balayage un signal d'horloge arbitraire, indépendant de la synchronisation image du signal reçu et à gérer la lecture et l'écriture des moyens de mémorisation de visualisation pour obtenir des répétitions ou des suppressions d'images à la visualisation absorbant ainsi tout retard ou toute avance. 2. Procédé de synchronisation selon la revendication 1, caractérisé en ce qu'il consiste à diviser les moyens de mémorisation de visualisation en au moins deux zones de mémorisation, à commander le traitement d'une image I au fur et à mesure que cette image est enregistrée dans la mémoire d'entrée, à commander l'enregistrement de cette image I au fur et à mesure de son traitement dans l'une des zones de mémorisation, puis soit - à n'autoriser la lecture de la zone dans Laquelle cette image a été enregistrée que si le traitement d'une nouvelle image est terminé, sinon à commander une nouvelle lecture du contenu de l'autre zone et à n'autoriser le traitement d'une nouvelle image que lorsque le basculement d'une zone à l'autre a été fait ; soit, le traitement d'une image étant terminé : - à poursuivre la lecture de l'autre zone contenant une image déjà enregistrée de manière à lire une fois de plus que les autres cette image ; soit - à commander la lecture de cette première zone de manière à visualiser l'image enregistrée qui vient d'être traitée et visualiser une fois de moins que les autres une image précédemment traitée et enregistrée dans l'autre zone. 3. Procédé de synchronisation selon les revendications 1 ou 2, caractérisé en ce qu'il consiste dans le cas où l'horloge d'acquisition est moins rapide que l'horloge de visualisation, à commander la lecture d'une image enregistrée dans l'une des zones de manière à visualiser cette image plusieurs fois jusqu'à ce que l'image suivante soit traitée et enregistrée dans l'autre zone. 4. Procédé de synchronisation selon les revendications 1 ou 2, caractérisé en ce qu'il consiste dans le cas où l'horloge d'acquisition est plus rapide que l'horloge de visualisation, à choisir des moyens de traitement rapides aptes à traiter les données d'une image au fur et à mesure qu'elles arrivent dans la mémoire tampon d'entrée, à choisir un seuil de remplissage de la mémoire tampon et à supprimer la lecture d'au moins une image, L'image ayant pu être visualisée une ou plusieurs fois ou pas du tout dès que le seuil est dépassé. 5. Procédé de synchronisation selon la revendication 4 dans lequel l'appareil est un visiophone à bas débit, une image acquise sur n étant seulement transmise, les moyens de commande étant aptes à commander la visualisation de n fois la même image pendant que les moyens de traitement traitent l'image suivante, caractérisé en ce qu'il consiste à choisir des moyens de traitement aptes à traiter une image pendant la durée de visualisation de p images, p étant inférieur à n, l'image traitée étant alors enregistrée et sa visualisation commandée après visualisation de p fois l'image précédente. 6. Procédé de synchronisation selon la revendication 5, le visiophone comportant un moniteur de visualisation et une caméra, caractérisé en ce qu'il consiste à prendre comme horloge arbitraire l'horloge de balayage de ladite caméra. 7. Procédé de synchronisation selon la revendication 4 dans lequel l'appareil est un système de visioconférence ou de visiophonie à haut débit ou un poste de télévision, dans lequel toutes les images acquises sont transmises, caractérisé en ce qu'il consiste à choisir des moyens de traitement aptes à traiter une image pendant la durée de visualisation d'une autre image et en ce que dès qu'un seuil prédéterminé de remplissage de La mémoire tampon d'entrée est dépassé par l'arrivée d'une image I, les moyens de commande autorisent le traitement de l'image suivante I+1, l'image I n'étant pas visualisée, La visualisation de l'image I+1 se faisant juste après la visualisation de l'image I-1. 8. Procédé de synchronisation selon la revendication 4 dans lequel l'appareil est un système de visioconférence ou un poste de télévision, dans lequel toutes les images acquises sont transmises, caractérisé en ce que des qu'un seuil prédéterminé de remplissage de la mémoire tampon d'entrée est dépassé par l'arrivée d'une image I, les moyens de commande commandent la répétition de la visualisation de l'image I pendant que se fait le traitement de l'image I+k, les k-l images intermédiaires n'étant pas visualisées et l'image I+k étant visualisée juste après son traitement. 9. Procédé de synchronisation selon l'une quelconque des revendications 4, 7 et 8, caractérisé en ce que le seuil de remplissage est choisi en fonction du débit des informations arrivant à l'entrée du décodeur, de manière à ce que l'attente entre la fin du traitement d'une image et sa visualisation ne dépasse pas la durée d'une image.