Brevet FR3070779A1 — publié le 20190308

I ' PROCEDE D'ACQUISITION D'IMAGE PAR UN CAPTEUR D'IMAGE DE TYPE CMOS POUR LA RECONNAISSANCE DE CODE LISIBLE OPTIQUEMENT DOMAINE TECHNIQUE La présente invention concerne un procédé de commande de prise d'image par un capteur de type CMOS, à pixels actifs (structure de pixel à élément photosensible et transistors de commande) pour la reconnaissance 5 de code lisible optiquement. Ces capteurs sont intégrés dans des dispositifs électro-optiques de reconnaissance de code, généralement appelés lecteurs de code barre. Ces lecteurs sont couramment employés dans de nombreux secteurs industriels et commerciaux, comme moyens de collecte de données automatisée, remplaçant la saisie au clavier, pour des applications aussi 10 variées que la vente, la traçabilité (fabrication, distribution), l'expédition de marchandises, les soins de santé, la gestion de stock, le prêt de livres ... Ces codes généralement imprimés (étiquette) ou gravés en surface d'un objet, suivent une symbologie généralement bichromatique qui peut-être monodimensionnelle et linéaire (code barre) ou multidimensionnelle (QR 15 code, PDF 417, Data Matrix ....). Chaque symbole ou motif représente de façon biunivoque une valeur d'information (ou un ensemble de valeurs) qui est associée à l'objet sur lequel est apposé le code, tel qu'un prix et/ou une remise, des données de traçabilité (date, lieu de fabrication, d'expédition, de prélèvement....), etc. Le décodage du code permet d'obtenir de façon fiable 20 la ou les valeurs d'information associée(s) à l'objet concerné. ETAT DE LA TECHNIQUE Un lecteur de code à capteur d'image matriciel de type CMOS comprend un dispositif d'éclairage comportant une source lumineuse (leds 25 et/ou laser par exemple) associée à un ensemble optique (miroirs, lentilles) prévue pour éclairer le code cible à acquérir. Le capteur prend une image de ce code cible et transmet les données d'image obtenues à un système externe de traitement numérique (relié au lecteur par un moyen de communication quelconque, avec ou sans fil) et c'est ce système externe au 30 capteur qui effectue le décodage du code. Ce qui est exigé dans ce type d'application, c'est que le capteur fournisse le plus rapidement possible une image du code qui soit de bonne 2 qualité, c'est-à-dire de qualité suffisante pour en permettre le décodage ou la reconnaissance sans erreur. Plus précisément, l'image fournie par le capteur doit être bien positionnée dans la dynamique utile du capteur, c'est-à-dire ni trop sous-exposée, sinon le rapport signal sur bruit sera trop faible ; ni trop surexposée, pour ne pas perdre trop d'information utile. Une fois la puissance lumineuse de la source d'éclairage interne du lecteur réglée pour l'application, la qualité de l'image obtenue dépend des paramètres de prise de vue du capteur, et notamment du temps d'exposition des pixels. Le temps d'exposition est généralement préréglé en usine ou sur 10 site par un opérateur, à une valeur qui est définie en fonction des conditions d'utilisation opérationnelles : ambiance lumineuse (utilisation en extérieur, en intérieur, sous lumière artificielle) ; puissance de la source lumineuse du lecteur, qui éclaire l'objet/le code ; type de matériau des objets portant les codes ; lecteur fixe ou tenu manuellement. Mais cette valeur préréglée "par 15 défaut" ne permet pas en pratique d'obtenir une image de bonne qualité dès la première prise d'image, car il y a trop de facteurs extérieurs liés à l'ergonomie du lecteur qui empêchent une maitrise complète des conditions réelles de prise de vue. L'ergonomie du lecteur définit comment il va être utilisé. Par exemple, le lecteur peut être fixe, et le code cible est amené 20 manuellement ou mécaniquement devant le lecteur ; ou bien le lecteur est portatif, c'est-à-dire manipulé (à la main) ou porté (au bras, à la tête...) par un opérateur. L'environnement dans lequel le lecteur opère peut être avec un éclairage ambiant naturel ou artificiel. L'objet lui-même (caractère plus ou moins réfléchissant de la surface présentant le code) ou la façon dont il est 25 présenté (distance, angle de présentation) sont autant de facteurs qui peuvent également influer sur la quantité de lumière que pourra recueillir le capteur. Aussi, lorsque le capteur va être déclenché, il va appliquer des paramètres de prise de vue qui ne seront pas nécessairement adaptés aux conditions de la prise de vue du code cible, au moment du déclenchement. 30 Pour ces raisons, une boucle itérative de prise d'images pilotée par le système externe de reconnaissance de code est utilisée dans le but d'adapter les paramètres de prise de vue et spécialement le temps d'exposition des pixels, aux conditions réelles. Cette boucle se déroule ainsi : après déclenchement, le capteur se met à acquérir des images du code 35 cible, périodiquement, qu'il transmet au système externe. Pour chaque prise 3 d'image, il applique les valeurs courantes des paramètres fournies par le registre de prise de vue du capteur, ce qui définit notamment la valeur du temps d'exposition. De son côté, le système reçoit les images, et à chaque image reçue, si il juge sa qualité non satisfaisante pour permettre le 5 décodage du code, c'est-à-dire que l'image n'est pas assez bien exposée, le système externe détermine et transmet une nouvelle valeur de temps d'exposition, qui est mémorisée dans le registre de paramètres de prise de vue du capteur dans le but d'obtenir une nouvelle image, qui devrait être mieux exposée. Cette valeur ne sera prise en compte par le capteur que pour la prochaine prise d'image. Cette boucle itérative d'acquisition et fourniture dure jusqu'à ce que le système valide la qualité de l'image et décode le code avec succès. La détermination d'une nouvelle valeur de temps d'exposition par le système externe utilise un ou des algorithmes qui exploitent l'histogramme de l'image, c'est à dire la répartition des pixels par niveaux de gris de l'image (ou la densité de probabilité, si l'histogramme est normalisé). Si on a 256 niveaux de gris codés dans l'image, l'histogramme indique combien de pixels ont la valeur 0, 1, jusqu'à 255. Le système externe calcule donc l'histogramme de l'image reçue ; en 20 se basant sur la valeur courante du temps d'exposition, et sur le gain de la chaine de lecture des pixels (mais ce gain est généralement fixé à 1 pour ce type d'application), qui sont des valeurs fournies par le capteur avec les données d'image, il détermine le cas échéant une nouvelle valeur de temps d'exposition par comparaison d'une ou plusieurs valeurs caractéristiques de 25 l'histogramme (valeur moyenne, pourcentage de pixels ayant une valeur inférieure à un niveau de gris donné, pourcentage de pixels saturés, etc.) obtenu, à des valeurs de référence. La nouvelle valeur de temps d'exposition ainsi déterminée sera plus faible que la valeur courante, si l'image était surexposée, et au contraire plus grande si l'image était sous-exposée. 30 PROBLEME TECHNIQUE En pratique, compte-tenu des temps d'acquisition et fourniture des images au système externe, du temps de détermination et écriture dans le capteur d'une nouvelle valeur de temps d'exposition, la nouvelle valeur de 35 temps d'exposition imposée par le système externe à partir des données 4 d'une première image fournie par le capteur, ne sera effectivement appliquée qu'au mieux pour la troisième voire la quatrième prise d'image qui suit la première prise d'image ; le système doit encore vérifier la qualité de cette troisième ou quatrième image, et ensuite seulement, si cette qualité est 5 bonne, effectuer le décodage du code. Cette boucle de détermination externe, itérative, d'un temps d'exposition adapté pour l'acquisition du code cible courant induit un temps de réponse du lecteur de code qui est non négligeable, correspondant au temps de réception d'au moins trois ou quatre images. Il s'ensuit un temps de 10 réponse trop lent du lecteur, entre le moment de son déclenchement et le décodage. Cette lenteur, perceptible, dégrade l'ergonomie du lecteur pour l'opérateur et la consommation du système augmente avec le nombre d'images qui sont prises : consommation du capteur, et aussi de la source d'éclairage (nombre de flash des Leds). 15 RESUME DE L'INVENTION L'invention se propose de résoudre ce problème technique de temps de réponse des lecteurs de code à capteur CMOS. La solution technique à la base de la présente invention, est un procédé d'acquisition d'image d'un code cible qui permet au capteur, après déclenchement du lecteur pour l'acquisition du code cible, de déterminer rapidement et en interne ("on-chip"), une valeur souhaitable de temps d'exposition pour la prise d'image de ce code au moyen d'un mode de mesure préalable à la prise d'image nominale, qui effectue une acquisition rapide de données d'image pour au moins deux valeurs différentes de temps d'exposition, et les données d'image obtenues pour ces différentes valeurs de temps d'exposition ne servent qu'au capteur et que pour définir rapidement la valeur souhaitable de temps d'exposition. Cette valeur est alors utilisée pour effectuer une prise d'image nominale, et rimage obtenue est celle délivrée en sortie, pour décodage/reconnaissance de code. Le temps de réponse du lecteur de code utilisant un tel capteur est significativement réduit. Il est principalement égal au temps d'acquisition rapide de données d'image pour la détermination de la valeur de temps souhaitable, ajouté au temps d'acquisition et de fourniture en sortie, d'une unique image nominale. Le procédé de l'invention permet donc d'améliorer 5 de façon perceptible l'ergonomie du lecteur de code et de réduire sa consommation. L'invention concerne donc un procédé d'acquisition d'une image d'un code lisible optiquement par un capteur d'image électronique de type CMOS, 5 le capteur comportant une matrice de pixels arrangés en rangées et colonnes, des moyens de commande des pixels appliquant une valeur courante de temps d'exposition des pixels qui est stockée dans un registre de paramètres de prise de vue, des moyens de conversion analogique numérique permettant pour chaque pixel sélectionné en lecture, d'établir 10 avec une résolution nominale une valeur numérique représentative de la quantité de lumière intégrée par le pixel pendant le temps d'exposition du pixel et des moyens de traitement numérique. Le procédé d'acquisition interne au capteur est activé sur réception par le capteur d'un signal de déclenchement externe et applique successivement deux modes de prise 15 d'image du code cible qui sont les suivants : - un mode de mesure comprenant : - une phase d'acquisition de données numériques d'image pour différentes valeurs de temps d'exposition des pixels, ladite phase d'acquisition comprenant une phase de lecture rapide des pixels qui applique 20 au moins l'une des deux mesures suivantes : - ne sélectionner en lecture qu'une partie des pixels de la matrice, - configurer les moyens de conversion analogique numérique, avec une résolution réduite, et puis 25 - une phase de détermination par lesdits moyens de traitement numérique d'une valeur de temps d'exposition souhaitable pour une acquisition d'image du code cible, par comparaison d'histogrammes calculés sur la base desdites données numériques d'image pour chaque valeur différente de temps d'exposition, et ladite valeur de temps d'exposition 30 souhaitable est écrite comme valeur courante de temps d'exposition, dans ledit registre de paramètres de prise de vue, puis - un mode nominal qui applique aux pixels de la matrice ladite valeur courante de temps d'exposition fournie par le registre de paramètres, et 35 commande une lecture des pixels de la matrice appliquant une résolution 6 nominale des moyens de conversion analogique numérique, pour obtenir une image nominale du code cible de qualité optimale, et cette image nominale est l'image fournie à un système de traitement externe de décodage. De préférence, la phase d'acquisition du mode mesure prévoit une 5 seule prise d'image de mesure. Dans une première mise en oeuvre, chaque pixel est associé à une valeur de temps d'exposition parmi k valeurs différentes, k entier au moins égal à 2. On définit alors un motif de distribution des k valeurs de temps d'exposition sur les pixels de la matrice, en fonction du rang des colonnes de la matrice ou en fonction du rang des 10 rangées. Dans une autre mise en oeuvre, on effectue la prise d'image de mesure en appliquant jusqu'à k lectures à chaque pixel sélectionné en lecture, chaque lecture correspondant à une valeur de temps d'exposition parmi les k. De préférence, on sélectionne alors pour chaque pixel une valeur de donnée d'image correspondant à une condition de non saturation 15 du pixel, définissant une valeur de temps d'exposition associée parmi les k valeurs, avant le calcul des histogrammes. Selon un autre aspect de l'invention, la phase de lecture rapide applique un sous-échantillonnage des pixels de la matrice, selon les rangées dans un rapport 1 sur 16 ou 32, et elle est avantageusement effectuée dans 20 au moins une zone prédéfinie de la matrice. Selon un autre aspect de l'invention, les histogrammes pour les différentes valeurs de temps d'exposition du mode de mesure sont calculés sur un nombre de niveaux de gris inférieur au nombre de niveaux de gris correspondant à la résolution des moyens de conversion analogique 25 numérique en mode de mesure. D'autres caractéristiques et avantages de l'invention sont présentés dans la description suivante, en référence aux dessins annexés dans lesquels : 30 - la figure 1 illustre schématiquement un lecteur de code portable ; - la figure 2 est un schéma simplifié d'une architecture de capteur CMOS d'un lecteur de code de l'état de l'art, adapté à la mise en oeuvre d'un procédé selon l'invention ; - la figure 3 illustre une variante de schéma de commande des pixels de la 35 matrice de la figure 2; 7 - la figure 4 est un organigramme général d'un procédé d'acquisition d'image dans un capteur de lecteur de code barre selon l'invention ; - la figure 5 est un organigramme plus détaillé de l'étape de mesure rapide du procédé d'acquisition selon l'invention ; 5 - la figure 6 représente différents histogrammes d'image, correspondant à différents temps d'exposition des pixels à la lumière; - la figure 7 illustre un exemple de distribution de valeurs de temps d'exposition différentes selon les colonnes de la matrice de pixels ; - la figure 8 illustre un autre exemple de distribution de valeurs de temps 10 d'exposition différentes selon les rangées de la matrice de pixels ; et - les figures 9 à 11 illustrent des exemples de définition de zones d'intérêt dans la matrice pour le mode de mesure ; et - la figure 12 illustre un mode de lecture rapide permettant k lectures par pixel pour k valeurs de temps d'exposition de la phase de mesure. 15 DESCRIPTION DETAILLEE L'invention concerne les lecteurs de code à capteur CMOS, aussi bien ceux qui sont fixes, comme ceux intégrés aux caisses automatiques de supermarché, que ceux qui sont portables et actionnés par un opérateur. Un 20 lecteur de code, dans l'exemple portable est illustré sur la figure 1. Il comprend un capteur électronique de type CMOS 1, à matrice de pixels actifs, une source de lumière 2 pour éclairer la cible (le code apposé sur un objet) à travers une fenêtre de numérisation o ; un système optique 3 prévu pour renvoyer la lumière réfléchie par la cible sur la matrice de pixels du 25 capteur. Dans les systèmes actuels, la source lumineuse utilise généralement des diodes LEDs pour éclairer la cible pour la prise d'image, par flash. Certains systèmes peuvent en outre intégrer une source laser associée à une optique diffractive, dans le but d'aider l'opérateur à centrer le code cible préalablement à la prise d'image, par projection d'un motif 30 particulier (croix, angles,.. .etc.). Cette opération est connue sous le terme anglo-saxon "aimer». Cette source laser est normalement éteinte, avant le flash des LEDs pour la prise d'image. Le lecteur portable est muni d'une gâchette 4 ou d'un mécanisme équivalent, manuel ou non, de déclenchement du lecteur. Lorsque ce 35 mécanisme est activé, un signal de déclenchement Trig sort le lecteur d'un 8 mode de veille basse consommation, la source de lumière est activée et le capteur également, pour acquérir et fournir une image du code cible à un système externe 5 de traitement numérique de données qui assure le décodage du code. L'image est fournie au système de traitement 5 sous 5 forme d'un flux de données (numériques) par un câble de transmission, par exemple un câble USB, ou par un moyen de transmission sans fil. Si le lecteur est fixe, le signal Trig de déclenchement est par exemple généré par un signal un système de détection de présence intégré au lecteur. Le capteur CMOS comprend classiquement, comme représenté à la 10 figure 2, une matrice M de n rangées Rowo à Rown_i et m colonnes Colo à Colm_i de pixels actifs (n, m entiers), un circuit ADC de lecture à convertisseur(s) analogique numérique, un circuit COMP de traitement numérique, apte à effectuer des calculs sur les données d'image fournies par le circuit de lecture et notamment calculer un histogramme et un circuit I/O 15 d'interface pour fournir les données d'image au système externe 5. Ces différents circuits sont pilotés par un circuit de séquencement du capteur, SEQ, qui fournit les différents signaux de commande nécessaires pour réaliser une prise d'image. En particulier le circuit de séquencement fournit les signaux de commande des transistors des pixels actifs. 20 Pour les besoins de la description, rappelons qu'une structure de pixel actif, à transistors, des capteurs CMOS, comprend généralement au moins : - un transistor d'initialisation qui permet d'évacuer toutes les charges accumulées dans l'élément photosensible vers un drain d'évacuation. La fin de l'impulsion d'initialisation fixe le point de départ de la durée d'exposition 25 du pixel : à partir de ce point, l'élément photosensible peut (à nouveau) accumuler les charges générées par la lumière. - un transistor de transfert qui permet de transférer toutes les charges accumulées par l'élément photosensible vers un noeud de stockage, qui peut être le noeud de lecture du pixel ou un noeud de stockage provisoire. La fin 30 de l'impulsion de transfert fixe la fin de la durée d'exposition du pixel, pour la prise d'image en cours. - un transistor de remise à zéro du noeud de lecture du pixel, - un transistor monté en suiveur dont la grille est reliée au noeud de lecture, associé à un transistor de sélection du pixel connecté entre la source du 35 transistor suiveur et un conducteur de colonne qui permettent la conversion 9 des charges stockées dans le noeud de lecture, en un niveau de tension analogique correspondant sur le conducteur de colonne relié à un circuit de conversion analogique numérique. Sans qu'il soit utile pour les besoins de l'invention de rentrer plus dans 5 les détails, on sait bien qu'une structure de pixel actif peut comprendre d'autres transistors que les quatre transistors ci-dessus, selon que sont prévus un noeud de stockage temporaire, distinct du noeud de lecture, ou un étage de gain, etc. Egalement certains transistors peuvent être partagés entre plusieurs pixels. 10 Dans l'invention, on utilise plus spécialement le contrôle électronique du temps d'exposition des pixels actifs, via les transistors (grilles) d'initialisation et transfert, pour mettre en oeuvre dans et par le capteur, un mode de mesure permettant de déterminer une valeur souhaitable de temps d'exposition Topt pour l'acquisition d'une image d'un code cible, en préalable 15 à une prise d'image nominale du code cible effectuée de manière habituelle, mais avec la valeur Topt. Le mode de mesure utilise donc les possibilités de réglage de la durée d'exposition d'un pixel actif, pour appliquer différentes valeurs de temps d'exposition aux pixels. Ceci peut être obtenu en jouant sur la commande (de 20 grille) du transistor d'initialisation qui règle le début de la durée d'exposition et/ou sur la commande (de grille) du transistor de transfert sur le noeud de stockage associé (qui peut être ou pas le noeud de lecture) qui en règle la fin, en tenant compte du ou des modes de capture mis en oeuvre dans le capteur et de la topologie des lignes de commande. On rappelle qu'un capteur Cmos 25 peut proposer un ou deux modes de capture, globale ou en décalé. Dans le mode de capture d'image globale, dit "global shutter" ou "snapshot", tous les pixels intègrent en même temps : la phase d'exposition débute en même temps pour tous les pixels et elle se termine en même temps pour tous les pixels également. La phase de lecture, rangée après rangée, commence 30 ensuite. Dans le mode de capture en décalé dit "rolling shutter", les rangées intègrent successivement de manière décalée : le début de la phase d'exposition est défini pour chaque rangée de pixels et décalé d'une rangée à la suivante et le temps d'exposition dans une rangée de pixels ne débute que lorsque la lecture de la rangée de pixels précédente est terminée. Le mode 35 de capture globale est privilégié pour les applications hautes performances 10 (ex vitesse) car il permet de figer l'image et d'éviter les distorsions inhérentes au mode de capture en décalé qui peut dégrader la qualité d'image en particulier si l'objet bouge. La topologie des lignes de commande répond à différentes contraintes 5 telles que : nombre de transistors, pixels à transistors partagés ou non, mode de capture globale et/ ou en décalé; optimisation du taux d'ouverture des pixels. Par exemple, la topologie des lignes de commandes présentée à la figure 2 qui permet un contrôle de la fin de durée d'exposition par colonne, est adaptée à un mode de capture globale ; tandis que la topologie 10 présentée à la figure 3 qui permet un contrôle du début et de la fin de durée d'exposition par rangée, permet les deux types de capture. Ces topologies seront détaillées plus loin. Dans tous les cas, le circuit de séquencement SEQ permet de générer les signaux de commande des pixels et des autres circuits du capteur 15 (convertisseurs, interface de sortie,...) avec un timing pixel ad hoc pour le ou les modes de capture et la topologie implémentés. Pour plus de détails sur comment un circuit de séquencement peut assurer ce pilotage avec une grande souplesse par programmation mémoire, on pourra par exemple de référer à la demande EP3058719. 20 Ces rappels généraux étant faits, nous allons pouvoir décrire le procédé d'acquisition d'image d'un code cible proposé dans l'invention. Ce procédé, déclenché par l'activation du signal Trig, permet la fourniture par le capteur 1 d'une seule image de qualité nominale directement exploitable par le système 5 de traitement pour décodage/reconnaissance du code, car elle 25 a été obtenue en appliquant à la matrice de pixels une valeur de temps d'exposition, pour l'intégration de la lumière, qui a été déterminée en interne par le capteur lui-même ("on-chip"), dans un mode de mesure activé avant le mode d'acquisition nominale, sur la base d'histogrammes calculés à partir d'au moins une image de mesure de qualité dégradée et pour au moins deux 30 valeurs de temps d'exposition différentes. Par "qualité dégradée", on veut dire que le nombre de pixels de l'image de mesure est inférieur au nombre de pixels de l'image de qualité nominale : autrement dit, on sous-échantillonne la matrice de pixels ; et/ou que la résolution de la mesure (lecture) de la quantité de lumière intégrée par 35 un pixel est inférieure dans le mode de mesure à celle du mode d'acquisition 11 nominale : autrement dit, la conversion analogique numérique des niveaux de lumières lus sur les pixels fournit un résultat qui est codé sur moins de niveaux de gris dans le mode de mesure que dans le mode d'acquisition nominale. Plus précisément, lorsque la résolution nominale du convertisseur 5 est d'au moins 10 bits, le mode de mesure applique une résolution réduite égale ou inférieure à 8 bits. Par exemple si dans la conversion pour l'image nominale est faite sur 10 ou 12 bits, pour l'image de mesure, la conversion est faite de préférence sur 8 bits, voire sur 4 bits. 10 La figure 4 présente un organigramme général d'un procédé d'acquisition d'un code cible selon une première mise en oeuvre de l'invention, avec un mode de mesure Mode_MES par le signal Trig qui prévoit une seule prise d'image de mesure pour laquelle chaque pixel est associé à une valeur de temps d'exposition parmi k valeurs de temps 15 d'exposition différentes Ti à Tk, k entier au moins égal à deux. Le mode de mesure comprend principalement trois phases pilotées par le circuit de séquencement du capteur : une phase 100 d'acquisition, rapide, de données d'image DATA(Ti) pour chacune des k valeurs de temps d'exposition ; puis une phase 110 de détermination par le circuit de traitement numérique 20 COMP du capteur à partir des données d'image DATA(Ti), d'une valeur de temps d'exposition souhaitable Topt pour la prise d'image du code cible concerné : ni trop grande, pour ne pas avdir trop de pixels saturés, ni trop faible, pour ne pas perdre de signal (pixels noirs), suivant des critères de qualité d'image établis pour un décodage efficient du code ; et une phase de 25 stockage 120 de la valeur Topt dans le champ correspondant Tr du registre de paramètres de prise de vue REG du capteur. Le procédé active alors le mode d'acquisition nominale Mode_ACQ, qui utilise les valeurs courantes des paramètres du registre REG, notamment le paramètre Tr. Ce registre peut fixer d'autres paramètres comme une 30 valeur G de gain de conversion, mais dans les applications de lecteur de code pour lesquelles on ne cherche pas à reconstruire une image avec précision, mais à décoder un code, ce gain est généralement fixé à 1. Une image de qualité optimale (pour le décodage de code) est obtenue : les données d'image correspondantes Data-OUT obtenues avec la valeur Tr de 35 temps d'exposition sont lues sur les pixels de la matrice (image complète) et 12 transmises au système externe de traitement 5. Généralement, les valeurs des paramètres du registre REG (Tr, G) sont également fournies avec ces données, auxquelles peuvent également s'ajouter les données de l'histogramme H(Tr) calculées par le circuit de traitement numérique sur ces 5 données DataOUT. Cette phase d'acquisition nominale par le capteur correspond ainsi au mode d'acquisition et fourniture d'une image complète habituel, à l'exception du fait que la valeur de temps d'exposition Tr appliquée, fournie par le registre de paramètres de prise de vue du capteur, est une valeur qui a été autodéterminée par le capteur lui-même lors de la 10 phase de mesure Mode_MES précédente. La phase d'acquisition rapide 100 du mode de mesure est illustrée plus en détail à la figure 5. Il s'agit d'acquérir rapidement des données d'image pour k valeurs de temps d'exposition Ti, et calculer la valeur Topt, 15 dans un temps TmEs inférieur au temps de fourniture d'une image nominale TAcQ, en sorte que le temps total Ttotal du procédé d'acquisition selon l'invention permettant de fournir une image nominale pour décodage au système externe 5, soit inférieure à 2 xTAcc). De préférence on vise à avoir TmEs5.10%TAca 20 Dans la mise en oeuvre envisagée, on fait l'acquisition des données d'image pour les k valeurs Ti en une seule prise, où les k valeurs Ti sont distribuées sur la matrice de pixels. La phase d'acquisition rapide 100 comprend ainsi une phase 101 d'exposition des pixels, qui associe à chaque pixel de la matrice, une valeur de temps d'exposition déterminée, parmi les k 25 valeurs Ti ; suivie d'une phase 102 de lecture rapide des pixels. La définition du motif de distribution des Ti dépend de la façon dont sont implémentées les lignes de commande des transistors (grilles) d'initialisation et de transfert des pixels dans le capteur (aspect topologique) et du ou des modes de capture implémentés dans le capteur. 30 On a déjà expliqué comment les séquences d'exposition et lecture des rangées de pixels de la matrice seront pilotées (différemment) selon le mode de commande de capture d'image choisi (globale ou en décalé). Voyons plus précisément l'aspect topologique. En général, pour limiter le nombre de conducteurs et favoriser l'ouverture des pixels, les commandes 13 des grilles d'initialisation et transfert sont communes aux pixels d'une même rangée ou d'une même colonne. Dans l'exemple illustré à la figure 2, la commande des grilles d'initialisation qui règlent le début de la durée d'exposition, est commune aux 5 pixels d'une même rangée de la matrice ; et la commande des grilles de transfert, qui règlent la fin de la durée d'exposition, est commune aux pixels d'une même colonne de la matrice. Plus précisément la matrice comprend n rangées de pixels Rowo à Rown_i et m colonnes de pixels Colo à Colm_i (n, m entiers) et on a: 10 - n lignes de commande de grille d'initialisation GII, pour I égal de 0 à n-1, chacune s'étendant parallèlement (dans l'exemple horizontalement) à la rangée de pixels correspondante ; - m lignes de commande de grilles de transfert GTi, pour j égal de 0 à m-1, chacune s'étendant parallèlement (dans l'exemple verticalement) à la 15 colonne de pixels correspondante ; et - n lignes de commande de sélection de rangée selri, pour I égal 0 à n1, chacune s'étendant parallèlement (dans l'exemple horizontalement) à la rangée de pixels correspondante pour commander la grille du transistor de sélection des pixels de la rangée. 20 Les lignes de commande des autres transistors des pixels ne sont pas représentées sur la figure 2 pour ne pas surcharger inutilement le dessin. Cette topologie qui prévoit un contrôle de la fin d'exposition des pixels par colonne et une lecture en ligne (par rangée de pixels), permet un mode de capture globale. Elle n'est pas applicable à un mode de capture en 25 décalé, dans lequel la phase d'exposition d'une rangée de pixels ne débute que lorsque la lecture de la rangée de pixels précédente est terminée. La figure 3 illustre une autre topologie qui permet les deux modes de capture : la commande des grilles d'initialisation et la commande des grilles de transfert sont toutes les deux communes aux pixels d'une même rangée 30 de la matrice. Les lignes de commande de transfert GT1, I à 0 à n-1, s'étendent donc parallèlement (dans l'exemple horizontalement) à la rangée de pixels correspondante, comme les lignes de commande d'initialisation GII. D'autres topologies de capteur peuvent appliquer d'autres schémas de commande. Par exemple la commande des grilles d'initialisation de début de 35 temps d'exposition pourrait être commune aux pixels d'une même colonne de 14 la matrice ; la sélection des pixels pour la lecture pourrait se faire par colonne, etc. Selon la topologie, un ou les deux modes de commande (global, en décalé) sont applicables. 5 On va maintenant illustrer par des exemples comment les aspects topologiques et de mode de capture sont pris en compte pour définir des motifs de distribution des valeurs Ti sur la matrice, permettant l'acquisition des données d'image pour les k valeurs Ti de temps d'exposition en une seule prise. Il sera généralement plus simple et avantageux de distribuer les 10 k valeurs Ti selon une seule direction de la matrice, en ne jouant que sur une seule ligne de commande, initialisation ou transfert. Egalement, dans le but d'avoir des informations homogènes sur l'ensemble de la matrice pour les différentes valeurs Ti, la distribution des valeurs Ti est avantageusement périodique. 15 La figure 7 illustre un premier exemple d'un motif de distribution des valeurs Ti, i=1 à k, pour k=4, sur la matrice de pixels pour la topologie de la figure 2 pour un mode de capture globale. Dans ce motif, les valeurs Ti sont distribuées selon les rangs des colonnes, régulièrement (périodiquement) dans l'exemple : Ti sur les colonnes de rang 0, 4, 8, etc., ..., T2 sur les 20 colonnes de rang 1, 5, 9, etc., T3 sur les colonnes de rang 2, 6, 10, etc. et T4 sur les colonnes de rang 3, 7, 11, etc. Une phase d'acquisition des données d'image pour les k valeurs Ti d'exposition se déroule alors comme suit : la phase d'exposition débute pour toutes les rangées de pixels en même temps (signaux GII activés en même temps) et le séquenceur commande les 25 signaux GTi de commande de fin d'exposition en fonction du rang j de la colonne selon le motif défini (Figure 7). La phase de lecture en ligne peut débuter après la fin de la phase d'exposition de la matrice, calée sur la durée d'exposition la plus longue, T4 en l'occurrence. La figure 8 montre un autre motif de distribution applicable à une 30 matrice de pixels ayant la topologie de la figure 3, qui permet au séquenceur de jouer sur le début de la durée d'exposition (lignes de commande GO pour régler la durée d'exposition de chaque rangée et le reste du timing (fin d'exposition, lecture) qui dépend du mode de capture global ou en décalé, n'est pas bousculé par ce "jeu". Plus explicitement, les rangées commandées 35 avec une durée d'exposition plus longue auront leur commande de grille 15 d'initialisation activée relativement plus tôt et les rangées commandées avec une durée d'exposition plus courte auront leur commande de grille d'initialisation activée relativement plus tard. Dans l'exemple de la figure 8 la valeur T1 est appliquée sur les rangées de rang 0, 4, 8,...; la valeur T2, sur 5 les rangées de rang 1, 5, 9,.. .etc. Ainsi, en fonction de la topologie des lignes de commande du capteur considéré, qui peut être celle de la figure 2, de la figure 3, ou une autre topologie, on sait définir un motif de distribution des différents temps d'exposition selon les rangées ou les colonnes de la matrice, de préférence 10 périodique et le circuit de séquencement SEQ du capteur (Figure 2) est configuré (programmé) pour fournir les signaux de commande des pixels correspondant à ce motif et au mode de capture du capteur, pour piloter les différentes phases du mode de mesure. Concernant le nombre k de valeurs Ti de temps d'exposition, il peut 15 être avantageux d'utiliser seulement deux valeurs différentes T1 et T2 (k=2), car on sait implémenter cela de façon simple dans le séquenceur, selon la parité de l'adresse de rangée ou de colonne : pair (Ti) ou impair (T2). Dans ce cas on choisit deux valeurs T1 et T2 assez éloignées, correspondant respectivement à un fort et un faible éclairement, par exemple 100 20 microsecondes et 1 milliseconde. Mais on choisira k au moins égal à 3 ou 4 pour couvrir une large gamme de conditions d'éclairement (faible à fort) et améliorer la fiabilité et l'efficacité de la détermination de la valeur Topt pour des conditions opérationnelles variables, par exemple : en extérieur, avec des objets à 25 analyser très réfléchissants (ex canette métallique) ou très absorbants (papier sombre). Les k valeurs Ti seront alors avantageusement choisies avec un ratio R constant entre une valeur et la suivante, pour faciliter les calculs et avoir les mêmes contraintes sur les histogrammes. Dans un exemple numérique, on choisira par exemple k=4 et T1=8ps, T2=40ps, 30 T3=200ps, T4=1ms avec un ratio constant de 5 entre elles (T2=5.T1, T3=5.T2, T4=5.T3). En pratique les valeurs Ti sont choisies en fonction des contraintes et possibilités du séquenceur. Par exemple un temps de référence habituel des séquenceurs pour la gestion des signaux, est la durée d'un cycle de lecture 35 d'une rangée (appelé temps ligne), en mode nominal (pleine résolution), qui 16 est de l'ordre de 10 microsecondes pour les technologies courantes. Mais les séquenceurs récents permettent de descendre à des temps de référence inférieurs, 1 à 2 microsecondes. On peut prévoir dans le capteur un registre de paramètres REGm (Figure 2) pour le mode de mesure de l'invention, 5 programmable, pour stocker les valeurs de k, du temps d'exposition le plus petit (T1) et du ratio R. Après la phase d'exposition 102 (de chaque rangée, pour le mode de capture décalé, de toutes les rangées, pour le mode de capture globale), il 10 faut lire les pixels, pour obtenir les données d'image correspondantes, pour chacune des différentes valeurs de temps d'exposition. C'est la phase de lecture rapide 102 du mode de mesure (figure 4). Cette phase de lecture rapide répond à la contrainte liée à la résolution du problème technique exposé, à savoir faire rapidement une autodétermination par le capteur lui-15 même de la valeur souhaitable de temps d'exposition Topt, dans un temps inférieur au temps d'acquisition TAcQ d'une image complète, en mode nominal. On vise en pratique de faire cette détermination de Topt, c'est-à-dire l'acquisition de l'image de mesure (exposition aux Ti et lecture, calculs et stockage de Topt) dans un temps de l'ordre de 10% du temps TACQ, et c'est 20 bien la lecture des données d'image, et plus précisément le temps de conversion des données et la quantité de données à acquérir et transmettre au circuit de traitement numérique COMP qui est critique. La phase de lecture rapide 102 utilise l'une et ou l'autre des deux mesures décrites ci-après. 25 La première mesure est de ne pas lire tous les pixels de la matrice. On a pu vérifier que l'on n'avait pas besoin d'histogrammes calculés avec les données de la matrice complète pour déterminer efficacement la valeur Topt, mais les données d'image doivent représenter les différentes valeurs Ti appliquées et permettre une bonne analyse de l'exposition. On propose donc 30 un sous-échantillonnage de la matrice, mais la sélection des pixels à lire doit permettre de couvrir les différentes valeurs de temps d'exposition. C'est-à-dire que la sélection des pixels échantillonnés doit tenir compte à la fois de la façon dont les pixels sont sélectionnés en lecture c'est à dire de la topologie du capteur, et du motif de distribution des Ti sur la matrice. 17 En général, et cela correspond aux figures 2 et 3, la lecture se fait par rangée (lignes de sélection de rangée selri), et simultanément pour les m pixels de la rangée sélectionnée, via les m conducteurs de colonne (cco,...ccm_i) reliés aux moyens de conversion analogique numérique ADC 5 qui fournissent les m valeurs numériques correspondantes. Si on reprend le schéma de la figure 7, qui distribue les différentes valeurs Ti, 1=1 à k en fonction du rang des colonnes, on peut ainsi choisir de n'échantillonner qu'une rangée sur N. La figure 9 montre cela pour N.=4 pour des raisons évidentes de simplicité de représentation, mais N sera de 10 préférence égal à 16 ou 32. Dans chaque rangée, on aura bien des données correspondant à chacune des k valeurs de temps d'exposition appliquées Ti. Au final, comme on connait d'une part comment les valeurs Ti sont distribuées, c'est-à-dire dans l'exemple sur quelles colonnes (ce sont des données de configuration du circuit de séquencement du capteur), pour 15 chaque rangée échantillonnée, on sait associer pour chaque pixel, la donnée lue à une valeur d'exposition Ti. C'est-à-dire que l'on sait constituer pour chaque valeur Ti, l'ensemble de données {DATA(Ti)} qui va permettre de calculer l'histogramme correspondant H(Ti), sur tout ou partie des niveaux de gris codés par le mode de résolution réduite comme expliqué supra. A noter 20 que cet exemple de distribution périodique verticale des valeurs Ti (selon le rang des colonnes) de la figure 7, combiné à un sous-échantillonnage horizontal (1 rangée sur N) permet en pratique d'obtenir des données avec une bonne homogénéité spatiale (sous-échantillonnage) et temporelle (Ti) sur l'image de mesure, pour l'analyse de l'exposition d'image et la 25 détermination de Topt. Pour le motif de distribution des valeurs Ti de la figure 8, en fonction du rang des rangées, il faut appliquer une définition du sous-échantillonnage en ligne différent, car chaque rangée ne peut fournir que des données qui correspondent à une seule valeur de temps d'exposition. Généralement, 30 comme illustré sur la figure 8, les k valeurs Ti seront distribuées selon un motif périodique, pour une bonne homogénéité temporelle sur la matrice. On peut alors prévoit d'échantillonner k rangées consécutives toutes les X rangées, en gardant de préférence, à l'échelle de la matrice, un échantillonnage d'une rangée sur 16 ou 32. La figure 10 illustre cela pour 18 k=3. Cela revient à définir pour la lecture rapide 102, des ensembles de rangées consécutives R010, ROli ...etc. Une autre façon de réaliser le sous-échantillonnage est de cibler une ou des zones d'intérêt dans la matrice, comme par exemple une zone 5 centrale Z012 ou les zones d'angles Z011 Z013, Z014 et Z015 illustrées sur la figure 11. Ces zones couvrent un ensemble de pixels suffisants pour obtenir un ensemble de données spatiales et temporelles suffisant et bien homogène pour analyser l'exposition et déterminer la valeur Topt. Comme le temps de 10 lecture de ces zones dépend de leur nombre de rangées, on peut en outre appliquer un sous-échantillonnage horizontal de ces zones comme décrit précédemment pour réduire le temps de lecture dans le rapport recherché. D'une manière générale, pour une zone d'intérêt couvrant y rangées et z colonnes de la matrice, le circuit de lecture va échantillonner 1 rangée sur P 15 sur la hauteur des y rangées avec P entier égal ou supérieur à 1 ; et pour chaque rangée échantillonnée, le circuit de lecture va conduire m conversions en parallèle, et seules les données d'image fournies par les pixels des z colonnes sont conservées pour être traitées par le circuit de traitement numérique. 20 A noter que l'on peut également définir (en négatif) une ou des zones particulières de la matrice que l'on ne veut pas échantillonner, parce que l'on sait qu'elles peuvent être potentiellement sur-éclairées du fait d'un ciblage (parce que la source laser de ciblage sera restée allumée). Cela revient à définir des rangées (adresses) qui ne seront pas sélectionnées dans la 25 phase de lecture rapide. Ainsi l'analyse de l'exposition de l'image de mesure ne sera pas perturbée par ces zones potentiellement sur-éclairées. En pratique, ces zones potentiellement sur-éclairées par le ciblage peuvent être sur les côtés, et notamment les angles (figure 11) ou bien au centre (dépend du viseur). 30 Dans un exemple pratique combinant les deux approches, avec un ciblage visant les côtés de la matrice, on exclura de préférence les zones d'angles pour ne garder qu'une zone centrale de la matrice définie pour l'analyse de l'exposition d'image du code cible. Dans un exemple numérique correspondant, pour un capteur de 1000x1000 pixels (1Mpixels), on peut 35 définir une telle zone centrale d'intérêt Z012 qui couvre les 250 rangées et 19 250 colonnes centrales. On gagne un facteur 4 sur le temps de lecture (250 rangées à lire sur les 1000 de la matrice complète). En y associant un sous-échantillonnage d'une rangée sur 8, on arrive à un facteur de réduction du temps de lecture de 32 (1/4 x 1/8 = 1/32), avec environ 30 rangées à lire sur 5 les 1000 de la matrice. Si le ciblage vise le centre, on exclura de préférence une zone centrale et on fera de préférence l'acquisition pour l'analyse de l'exposition, dans les zones d'angle. Si dans le capteur, la lecture était faite par colonne, le sous-échantillonnage s'appliquerait de manière similaire à ce qui vient d'être 10 expliqué, mais selon les colonnes (sélection d'une colonne sur N). Une deuxième mesure pour la phase de lecture rapide 102 est la réduction de la résolution de la conversion analogique numérique. Par exemple, en réduisant la résolution de deux bits, on réduit d'un facteur 4 le 15 temps de conversion. Cette mesure est facilement implémentée, au moyen d'un indicateur Set-q positionné par le séquenceur (figure 2) pour fixer la résolution du convertisseur. Dans l'invention, on prévoit que cet indicateur fixe une résolution différente, réduite, en mode de mesure que pour le mode d'acquisition nominale. 20 La phase de lecture rapide 102 peut donc mettre en oeuvre l'une et/ou l'autre des deux mesures décrites : sous-échantillonnage et résolution réduite. Dans un exemple numérique, pour un capteur 10 bits de 2K X 1K (rangées X colonnes) à 100 images/secondes (10ms par image nominale), mettant en oeuvre un mode de mesure pour déterminer Topt selon 25 l'invention, qui combine un sous-échantillonnage d'une rangée sur M=16, à une résolution réduite à 8 bits (donc 2 bits de moins que le mode nominal), on gagne un facteur 16x4=64. Le temps d'acquisition de l'image (dégradée) de mesure passe à 10ms/64=156ps (meilleur que l'objectif de 10% de TAco). Une fois la phase 102 de lecture rapide terminée, le mode de mesure 30 passe dans la phase de détermination 110 de la valeur d'exposition souhaitable Topt pour le code cible concerné. Cette phase 110 est assurée par le circuit de traitement numérique COMP (figure 2) préalablement configuré en mode de mesure par le séquenceur via un signal indicateur de mode (Sel-mode). 20 Le circuit COMP commence par la phase 111 de calcul des histogrammes. Il dispose pour cela, pour chaque valeur de temps d'exposition, d'un ensemble de valeurs numériques {DATA(Ti)} lues sur la matrice. Chaque valeur correspond à un niveau de gris sur la plage de 5 niveaux de gris codée par la conversion. Le calcul d'histogramme sur ces données (ou une partie de ces données correspondant à une sélection de niveaux de gris) donne la répartition des pixels selon les niveaux de gris pour cette valeur de temps d'exposition Ti : on mesure donc la plage de luminosité de l'image du code cible, pour ce temps d'exposition. 10 Pour ces calculs, on peut ne traiter que les données correspondant à une sélection de niveaux de gris déterminée parmi les niveaux de gris correspondant à la résolution du convertisseur en mode de mesure. Par exemple, si le mode de mesure applique une résolution réduite, par exemple 8 bits de résolution codant 256 niveaux de gris, on peut calculer les 15 histogrammes pour seulement 8 ou 16 niveaux de gris (ou bins) sur les 256. On peut alors réduire l'espace mémoire nécessaire (mémoire RAM, registres) pour ces calculs d'histogrammes. A noter que dans ce cas, on aura avantage à combiner un tel calcul d'histogrammes sur 8 ou 16 bins à l'utilisation d'au moins 3 ou 4 valeurs différentes de temps d'exposition, avec 20 un ratio constant R (entier) entre elles qui sera compris entre 5 et 10 (bornes incluses. On combine ainsi tous les avantages en termes de couverture d'ambiance lumineuse, espace mémoire et efficacité de la détermination. Ensuite, on passe à la phase 112 de détermination du temps Topt, à 25 partir des histogrammes calculés pour les différentes temps Ti. On a représenté à la figure 6 différents histogrammes H1 à H5 calculés pour 256 niveaux de gris (256 classes ou bins) correspondant à différentes conditions d'exposition d'une image. Le premier histogramme H1 en haut de la figure correspond à une image trop peu exposée, avec un pourcentage 30 élevé de pixels noirs et une concentration des pixels sur les niveaux de gris les plus faibles. Le dernier histogramme H5 en bas de la figure correspond au contraire à une image trop surexposée avec beaucoup de pixels saturés et une concentration des pixels sur les niveaux de gris les plus forts. Pour un oeil humain, l'histogramme à atteindre est celui du milieu H3, 35 qui est plutôt centré sans ou avec très peu de pixels saturés (sur-exposés) et 21 sans ou avec très peu de pixels noirs (sous-exposés) mais pour un décodage de code par un système de traitement de données d'un lecteur de code, l'histogramme H4 qui montre quelques pixels saturés, est tout à fait convenable. 5 Ainsi, à partir des histogrammes H(Ti) calculés dans la phase 111, on détermine dans la phase 112 une valeur de temps d'exposition Topt qui doit permettre d'obtenir ensuite, dans la phase d'acquisition d'image nominale, un histogramme qui ressemble à ces histogrammes H3 OU H4. Supposons que l'histogramme H5 corresponde à un temps 10 d'exposition T5, Topt aura une valeur inférieure à T5, pour tendre vers une forme d'histogramme telle que H3 OU H4. Si l'histogramme H1 correspond à un temps d'exposition Ti, Topt aura une valeur supérieure à T1. En pratique, le circuit de calcul commence par déterminer dans la phase 112, quel est l'histogramme qui a le plus d'information utile, (quantité 15 de pixels non saturés ni sous-exposés). Il applique pour cela un algorithme de comparaison de valeur(s) caractéristique(s) ou de statistique(s) des k histogrammes H(Ti), tel que valeur moyenne, pourcentage de pixels saturés, ou correspondant à un niveau de gris donné ,etc., puis il estime une valeur de temps souhaitable Topt à partir de l'histogramme retenu. De préférence, 20 pour améliorer la fiabilité de la détermination, le circuit de calcul combine le résultat d'au moins deux algorithmes de comparaison, de préférence l'un basé sur la valeur moyenne et l'autre sur un pourcentage de pixels saturés, pour établir comme valeur souhaitable de temps d'exposition pour la phase d'acquisition nominale suivante, la moyenne des résultats fournis par les 25 algorithmes. Egalement, la détermination de la valeur Topt tient compte des possibilités du séquenceur (temps de référence, temps ligne). Eventuellement, on pourrait prévoir que la valeur de temps d'exposition optimale définie par le mode de mesure est obtenue en utilisant une valeur de gain G différent de 1. Dans ce cas le circuit de calcul vient 30 modifier les deux valeurs correspondantes, temps d'exposition Tr et gain G dans le registre REG de paramètres de prise de vue. L'histogramme final obtenu sur l'image finale sera alors modifié avec un gain total = G x (Topt / Trf), où Tri est le temps d'intégration associé à l'histogramme retenu dans le mode de mesure pour le calcul de Topt. 22 Ces calculs réalisés par le circuit de traitement numérique COMP sont très rapides : en quelques coups d'horloge, c'est à dire en pratique en moins d'une microseconde, la valeur Topt est fournie et stockée dans le registre de paramètres de prise de vue du capteur pour définir la valeur Tr de temps 5 d'exposition des pixels en mode d'acquisition nominale. Le mode de mesure se termine et le mode d'acquisition nominale est activé à la suite : le capteur réalise une nouvelle prise d'image, en mode d'acquisition nominale, utilisant les valeurs courantes du registre de paramètres de prise de vue, dont la valeur Tr=Topt et fournit l'image obtenue au système externe de traitement 10 pour décodage/ reconnaissance du code. Le procédé d'acquisition selon l'invention a été décrit avec une mise en oeuvre du mode de mesure qui prévoit l'acquisition des données d'image Data (Ti) pour k valeurs Ti différentes de temps d'exposition Ti, avec une 15 seule prise d'image de mesure qui "contient" les k différentes valeurs de temps d'exposition, car distribuées sur des pixels différents. D'autres mises en oeuvre sont possibles, bien que plus complexes. On peut notamment prévoir une prise d'image de mesure par valeur de temps d'exposition différente. C'est-à-dire que l'on réalise alors k fois, la 20 phase 100 d'acquisition et lecture rapide du mode de mesure tel que décrit en relation avec la figure 5, mais à chaque fois, pour une seule valeur de temps d'exposition qui est appliquée sur toute la matrice. De préférence, on effectue la lecture rapide en appliquant un sous-échantillonnage (conduit de la même façon pour les k lectures) combiné à une résolution réduite, et pour 25 chaque pixel échantillonné, on va retenir la meilleure valeur, correspondant à une condition de non saturation du pixel. On peut ensuite trier les données d'image en fonction de la valeur de temps d'exposition associée et passer aux phases 111 de calcul des histogrammes et 112 de détermination de Topt. 30 Un autre mode de mesure possible consiste à effectuer une seule prise d'image, mais en "appliquant" les k différentes valeurs de temps d'exposition à chacun des pixels de la matrice et pour chaque pixel sélectionné en lecture, sélectionner une seule valeur de donnée d'image qui correspond à une condition de non saturation du pixel, définissant une valeur 35 de temps d'exposition parmi les k appliquées, avant la phase de 23 détermination 110. Il s'agit alors d'effectuer, pour les pixels sélectionnés dans la matrice (sous-échantillonnage), jusqu'à k lectures rapides (avec résolution réduite, par exemple sur 8 bits) successives à différents moments correspondant aux k différents temps d'exposition, comme illustré sur la 5 figure 12. Les lectures successives peuvent ne pas être destructrices, c'est- à-dire que pour chaque lecture, les charges accumulées entre la précédente lecture et la nouvelle, viennent s'ajoutées dans le noeud de lecture, aux charges déjà lues. Dans ce cas, il est aussi possible de déterminer au niveau du circuit de lecture, par comparaison, quand l'exposition est correcte pour 10 chaque pixel. Il faut alors prévoir de coder et le signal, et le temps d'exposition associé, au niveau du circuit de lecture. Ou bien ces lectures sont destructrices : le noeud de lecture est réinitialisé à chaque lecture, et le résultat pour une valeur Ti donnée est reconstitué pour chaque pixel, à partir des différentes lectures. Selon les possibilités du circuit de lecture, on 15 effectue les k lectures pour tous les pixels, ou bien s'arrêter dès que l'on atteint une valeur correspondant à une condition de non saturation du pixel. Ensuite, avant de calculer les k histogrammes de l'étape 111, on prévoit de manière avantageuse, si cela n'est pas déjà fait au niveau du circuit de lecture (cas lecture non destructrice), de sélectionner pour chacun 20 des pixels lus, la valeur numérique qui correspond à une condition de non saturation du pixel avec une information (quelques bits) identifiant la valeur correspondante de temps d'exposition. Cette information sera codée sur 1 bit, si k = 2, deux bits si k = 3 ou 4, etc. Dans ce cas, les différentes valeurs Ti de temps d'exposition reflètent 25 directement l'exposition de l'image. Les données d'image obtenues peuvent alors être triées en fonction du temps d'exposition associé, pour former les ensembles de données {Data(Ti)} (étape 102 figure 5). On peut ensuite calculer les histogrammes correspondants (étape 111) et déterminer le temps Topt (étape 112). 30 Pour ces deux variantes qui nécessitent plusieurs lectures pour chaque pixel, la distribution des différentes valeurs de temps d'exposition sur la matrice n'est plus prédéfinie, mais reflète directement la situation réelle d'éclairement du code cible. D'ailleurs il est possible qu'au final, il n'y ait pas de données d'image pour une des valeurs Ti, par exemple si l'image est top 35 sous-exposée ou trop sur-exposée. Par ailleurs, dans ce cas, il bien plus 24 intéressant d'effectuer la lecture rapide, avec sous-échantillonnage, dans au moins une zone d'intérêt de la de la matrice, spécialement dans la zone centrale Z012 (figure 11). On aura aussi intérêt à éviter les zones d'angle potentiellement sur-éclairées comme déjà expliqué. 5 Un inconvénient de cette variante est la complexité de la mise en oeuvre des lectures multiples sur des pixels, eu égard notamment à la structure du pixel, au schéma du circuit de lecture, et à la rapidité du convertisseur. 10 L'invention qui vient d'être décrite, applicable à tout capteur CMOS utilisé dans un lecteur de code lisible optiquement, permet d'améliorer considérablement le temps de réponse et la consommation du lecteur, de réduire sa consommation. L'homme du métier saura faire les adaptations nécessaires en fonction du capteur considéré, en particulier en fonction des 15 modes de capture mise en oeuvre dans le capteur, de la topologie des lignes de commande de la matrice de pixels, et de la structure des pixels qui peut être plus ou moins complexe selon qu'elle met en oeuvre des schémas de lecture perfectionnés, à réduction de bruit de lecture (double échantillonnage corrélé), des étages de gain par multiplication de charges, etc. L'homme du 20 métier saura appliquer les phases d'acquisition rapide et détermination du mode de mesure qui ont été décrites, et définir un motif de distribution des différentes valeurs de temps d'exposition le cas échéant, et/ou un schéma de définition de rangées et/ou colonnes de la matrice à échantillonner. La mise en oeuvre du procédé de l'invention dans un capteur se 25 traduit par une configuration/programmation adéquate du séquenceur incluant la programmation en mémoire de tables définissant les schémas de distribution, de sous-échantillonnage, et les différentes valeurs de temps d'exposition REVENDICATIONS1. Procédé d'acquisition d'une image d'un code lisible optiquement par un capteur d'image électronique de type CMOS, le capteur comportant une matrice de pixels arrangés en rangées et colonnes, des moyens de 5 commande des pixels (SEQ) appliquant une valeur courante de temps d'exposition (Tr) des pixels qui est stockée dans un registre de paramètres de prise de vue (REG), des moyens de conversion analogique numérique (ADC) permettant pour chaque pixel sélectionné en lecture, d'établir avec une résolution nominale une valeur numérique représentative de la quantité 10 de lumière intégrée par le pixel pendant le temps d'exposition du pixel et des moyens de traitement numérique (COMP), et le procédé d'acquisition interne au capteur, activé sur réception par le capteur d'un signal de déclenchement externe (Trig) applique successivement deux modes de prise d'image du code cible qui sont les suivants : 15 - un mode de mesure (Mode-Mes) comprenant : - une phase d'acquisition (100) de données numériques d'image (DATA(Ti)) pour différentes valeurs (Ti) de temps d'exposition des pixels, ladite phase d'acquisition comprenant une phase de lecture rapide (102) des pixels qui applique au moins l'une des deux mesures suivantes : 20 - ne sélectionner en lecture qu'une partie des pixels de la matrice, - configurer les moyens de conversion analogique numérique, avec une résolution réduite, et puis - une phase de détermination (110) par lesdits moyens de traitement 25 numérique (COMP) d'une valeur de temps d'exposition souhaitable (Topt) pour une acquisition d'image du code cible, par comparaison d'histogrammes (H(Ti)) calculés sur la base desdites données numériques d'image (DATA(Ti)) pour chaque valeur différente de temps d'exposition, et ladite valeur de temps d'exposition souhaitable (Topt) est écrite comme valeur 30 courante de temps d'exposition (Tr), dans ledit registre de paramètres de prise de vue (REG), puis - un mode nominal (Mode_ACQ) qui applique aux pixels de la matrice ladite valeur courante de temps d'exposition (Tr) fournie par le registre de 26 - paramètres, et commande une lecture des pixels de la matrice appliquant une résolution nominale des moyens de conversion analogique numérique (ADC), pour obtenir une image nominale du code cible de qualité optimale, et cette image nominale est l'image fournie à un système de traitement externe 5 (5) de décodage. 2. Procédé d'acquisition selon la revendication 1, dans lequel la phase d'acquisition (100) du mode de mesure comprend une seule prise d'image de mesure, pour laquelle chaque pixel est associé à une valeur de temps 10 d'exposition parmi k valeurs (Ti) différentes, k entier au moins égal à 2. 3. Procédé d'acquisition selon la revendication 2, appliquant un motif de distribution des k valeurs (Ti) de temps d'exposition sur les pixels de la matrice, en fonction du rang des colonnes de la matrice ou en fonction du 15 rang des rangées. 4. Procédé d'acquisition selon la revendication 3, dans lequel le motif de distribution est périodique. 20 5. Procédé d'acquisition selon la revendication 1, dans lequel la phase d'acquisition (100) du mode de mesure comprend une seule prise d'image pour k différentes valeurs (Ti) de temps d'exposition, k entier au moins égal à 2, telle que la phase de lecture rapide (102) applique jusqu'à k lectures à chaque pixel sélectionné en lecture, chaque lecture correspondant à une 25 valeur de temps d'exposition parmi les k. 6. Procédé d'acquisition selon la revendication 5, comprenant en outre pour chaque pixel sélectionné en lecture, la sélection d'une seule valeur de donnée d'image correspondant à une condition de non saturation du pixel, 30 définissant une valeur de temps d'exposition associée parmi les k valeurs, avant ladite phase de détermination (110). 7. Procédé d'acquisition selon l'une des revendications 1 à 6, dans lequel la phase de lecture rapide applique un sous-échantillonnage des pixels de la 35 matrice. 27 8. Procédé d'acquisition selon la revendication 7, dans lequel ledit sous- échantillonnage est un sous-échantillonnage des rangées, dans un rapport de 1 sur 16 ou 32. 9. Procédé d'acquisition selon l'une des revendications 1 à 8, dans lequel la phase de lecture rapide (102) est effectuée dans au moins une zone prédéfinie de la matrice. 10. Procédé d'acquisition selon l'une quelconque des revendications 1 à 9, excluant pour la phase de lecture rapide (102) une ou des zones prédéfinies de la matrice de pixels. 11. Procédé selon l'une des revendications 1 à 10, dans lequel les moyens 15 de conversion analogique numérique sont configurés avec une résolution nominale d'au moins dix bits, le mode de mesure applique une résolution réduite égale ou inférieure à 8 bits. 12. Procédé d'acquisition selon l'une quelconque des revendications 20 précédentes, dans lequel les histogrammes pour les différentes valeurs de temps d'exposition (Ti, ...Tk) du mode de mesure sont calculés sur un nombre de niveaux de gris inférieur au nombre de niveaux de gris correspondant à la résolution des moyens de conversion analogique numérique dans le mode de mesure. 25 13. Procédé d'acquisition selon l'une quelconque des revendications précédentes, dans lequel la phase (112) de détermination de la valeur souhaitable de temps d'exposition (Topt) applique au moins deux algorithmes de comparaison d'histogrammes, chaque algorithme délivrant en 30 sortie une première valeur, et établit comme valeur souhaitable de temps d'exposition pour la phase d'acquisition nominale suivante, la moyenne desdites premières valeurs. 35