Prsentation du mode RAW Gilles Clment clemgillclubinternet fr
Présentation du mode RAW Gilles Clément clemgill@club-internet. fr RCE 14 Novembre, La Vilette
Le RAW c’est quoi ? o o RAW (anglais) = Cru, brut, non traité, à vif, foid et humide, inexpérimenté, sauvage, à l’état brut, obscène … Le but = récupérer le signal du capteur d’image le plus directement possible (sans aucun pré-traitement) Niveau d’intensité (luminance) pour chaque pixel (8 bits)256 0 256 Pixel Pixel Pixel N° 1 N° 2 N° 3 N° 4 N° 5 N° 6 N° 7 N° 8 Image d’un point chaud en mode RAW 14 Nov. 2004 0 Le long d’une ligne du capteur Pixel N° 1 Pixel N° 2 Pixel N° 3 Pixel N° 4 Pixel N° 5 Pixel N° 6 Pixel N° 7 Pixel N° 8 Non RAW : empâtement du point, contraste horizontal renforcé ( « yeux de merlan » ), bruit de fond ……… beurk ! Rencontres C&E La Villette 2
A quoi çà sert ? o o Récupérer une image « brute de brute » Travailler avec la quantité maximum d’information n o Contrôler ensuite exactement ce qu’on fait n o Le pré-traitement Webcam dégrade les images le traitement ultérieur des images Améliorer la qualité des images au traitement n n Retrouver les nuances, Ex: voiles des nébuleuses et les petits détails ! Exemple emprunté sur le net 14 Nov. 2004 Rencontres C&E La Villette 3
Le RAW avec une Webcam ? o Le Webcams ne sont pas du tout faites pour l’imagerie astronomique n n But = Faire rapidement des images flatteuses à diffuser sur le Web (petites, sur-traitées, très compressées …) L’œil et le cerveau humain n’aiment pas les images « vraies » d’où les traitements agressifs o o o Mais la Webcam peut être un très bon outil Astro n n n o Préférence pour le « clinquant » Les images contrastées Les verticales aux horizontales (çà nous vient du temps des cavernes …) d’où les yeux de merlan Les couleurs saturées …. 10 à 100 fois moins cher que les vraies caméras Astro !!!! Excellents résultats notamment en planétaire (tout petit pixels donc très bonne résolution) Facilité et confort d’utilisation (USB, vitesse de transfert) Améliorer l’outil Webcam grâce au mode RAW permet alors de décupler les possibilités 14 Nov. 2004 Rencontres C&E La Villette 4
Le RAW : Une Bidouille «Internationale » o L’origine de l’idée n o On a trouvé un stéthoscope ! n o Mémoire EEPROM et bus I 2 C (J. Reed, USA) Dans la jungle des octets n o Il y a une piste dans la doc ! (G. Clément) Mais ou est donc l’octet magique ? (G. Clément , J. Reed, E. Bonduelle) !!!! Çà marche !!!! n Couleur : G. Clément, N&B : E. Bonduelle 14 Nov. 2004 Rencontres C&E La Villette Première image « historique » du RAW couleur (BOF !) le 29 Nov 2003 (encore un pb de sharness) 5
Le RAW : Une Bidouille «Internationale » o La liste TWIRG n o Le passage à l’USB n o Plus besoin de chirurgie avec Wc. Rmac ! (M. Burri, Suisse) La maturité n n o Activité fébrile fin 2003, tout va très vite …. en à peine deux mois tout est dit ! (les mêmes + F. Adelving, JB Butet etc …) Le site du RAW ! (E. Bonduelle) L’adaptation des softs (AVIRAW, IRIS, QCfocus, QASTROCAM, ASTROSNAP … . . . ? 14 Nov. 2004 Rencontres C&E La Villette 6
Qu’y a-t-il dans une Webcam ? o C’est un objet très sophistiqué n n o Les grands volumes de vente permettent de réduire le coût … … mais une Webcam est un vrai concentré de haute technologie ! Ex: la TOUCAM de Phillips n n n Capteur CCD 640 x 480 pixels, (taille 5, 6 µ !) 2 micro-processeurs spécifiques (dont traitement de signal rapide) De nombreux circuits périphériques spécialisés Le tout sub-miniature (composant CMS) Et capable de faire tout passer dans le « tuyau » de l’USB 4 cm 14 Nov. 2004 Rencontres C&E La Villette 7
Qu’y a-t-il dans une Webcam ? o Exemple de difficulté : la question du débit sur le câble USB n Flux image brute: o 640 pixels * 480 pixels * 8 bits * 25 images/sec = n Alors que le débit du bus USB 1. 1 est ~ n n 61 millions de bits/s 1, 5 millions de bits/sec Il faut sérieusement compresser l’image pour passer la pleine vidéo sur la liaison USB Une des raisons de la perte de qualité des images Webcam avec des fréquences image élevées 14 Nov. 2004 Rencontres C&E La Villette 8
Le schéma fonctionnel du logiciel ! 14 Nov. 2004 Rencontres C&E La Villette 9
Le schéma-bloc du micro …. . ! 14 Nov. 2004 Rencontres C&E La Villette 10
Schéma simplifié (ouf !) (2) Capteur d’image (1) Reconstruction des pixels à partir de la matrice de Bayer Pre-Gains + Offset Noir Matrice d’ajustement des couleurs de base (4) Réglages de - Balance couleurs - Gain - Saturation … (5) Renforcement divers des contours o (3) Codage Image (YUV) Algorithme de Compression Séquenceur USB Pour atteindre le « mode RAW » il faut pouvoir n n n (1) (2) (3) (4) (5) Ajuster les pré-gains et supprimer la compensation du noir Supprimer l’interpolation de Bayer, et ajuster coeff. matrice couleur Optimiser les réglages classiques (seuls accessibles sans bidouille) Supprimer les renforcements de l’image Supprimer (ou minimiser) la compression de l’image ……. Çà fait beaucoup … mais nous y sommes arrivés !!!! 14 Nov. 2004 Rencontres C&E La Villette 11
La matrice de Bayer o Un capteur noir-et-blanc c’est simple n n o Chaque site = un pixel Décompose l’intensité lumineuse en niveaux de gris Mais un capteur couleur c’est plein de trous ! n n Il faudrait 3 capteurs (Rouge Vert Bleu) pour chaque site C’est trop cher et trop complexe o o o Un micro-filtre R, V ou B devant chaque pixel On économise et exploite la sensibilité physiologique dans le vert Arrangement des capteurs R V B selon la matrice de Bayer Il faut ensuite remplir les « trous » => par interpolation sur les pixels adjacents! On ne rajoute pas d’information, on bricole !! C’est la reconstruction de l’ image RVB Couche R = 14 Nov. 2004 Couche B Couche V + Rencontres C&E La Villette + 12
La matrice de Bayer (suite) o Ce que voit un capteur « à matrice de Bayer » devant des plages de couleurs unies 14 Nov. 2004 Rencontres C&E La Villette 13
Reconstruction de l’image o o En chaque point il faut reconstruire l’info R+V+B ! Point de l’image qui correspond à un pixel V n n n o Point de l’image qui correspond à un pixel R n n n o R = signal du pixel rouge V = moyenne des signaux des 4 pixels verts voisins B = moyenne des signaux des 4 pixels bleus voisins Point de l’image qui correspond à un pixel B n n n o R = moyenne des signaux des 2 pixels rouges voisins V = signal du pixel vert B = moyenne des signaux des 2 pixels bleus voisins R = moyenne des signaux des 4 pixels rouges voisins V = moyenne des signaux des 4 pixels verts voisins B = signal du pixel bleu L’image «standard » N&B est la moyenne de R+V+B donc n n Moyenne de 5 à 9 pixels voisins => beaucoup d’information est perdue C’est ce qui se passe si on change le capteur couleur par un N&B « sans le dire à la caméra » 14 Nov. 2004 Rencontres C&E La Villette 14
Les « registres » internes o Les microprocesseurs internes communiquent à travers des « registres » n Ce sont des cases mémoire (des octets) qui contiennent les paramètres de la caméra o o o Coefficients de gains et réglage des algorithmes …. Choix des configurations (ex: Led ON ou OFF) Ces registres sont décrits dans la doc (data sheet) de Phillips Registres Processeur de signal n Processeur de séquencement La clef = accéder à ces registres !!!! (mais comment ? ) 14 Nov. 2004 Rencontres C&E La Villette 15
Les « registres » internes (suite) o Le data sheet de Phillips (60 pages !) Mode RAW = bit N° 5 du registre 0 x 01 H 14 Nov. 2004 Rencontres C&E La Villette 16
Mémoire EEPROM et bus I 2 C o Première nouvelle fracassante ! n Une partie des registres est recopiée dans une mémoire externe non volatile (EEPROM) o n En effet lorsqu’on débranche la Webcam les processeurs perdent la mémoire … (C’est Jack qui a trouvé çà !) De plus on peut lire et surtout écrire dans cette mémoire à l’aide du bus I 2 C o o 14 Nov. 2004 I 2 C = Protocole série de Philips qui permet de communiquer très simplement avec un tas de composants Il suffit de souder trois fils ! Rencontres C&E La Villette 17
Mémoire EEPROM et bus I 2 C (suite) o Principe de fonctionnement n n Le processeur de séquencement sauvegarde les données de registres dans l’EEPROM externe et les récupère à la demande On peut intervenir sur le Bus I 2 C simplement à l’aide d’un PC externe + cable parallèle + logiciel ad-hoc Logiciel de dialogue I 2 C (ex: J. Reed) Port // Image capteur Registres Vers l’USB Processeur de signal Processeur de séquencement EEPROM externe Soudure sur Bus I 2 C Processeur spécialisé SAA 8116 14 Nov. 2004 Rencontres C&E La Villette 18
Dans la jungle des octets o Et on obtient çà !. . n n n 512 octets de mémoire Sur deux «pages » Comment retrouver la correspondance avec les registres …. . ? 14 Nov. 2004 Rencontres C&E La Villette 19
Dans la jungle des octets (suite) n A tâton dans la jungle… o o o En modifiant les réglages standard accessibles (luminosité, couleur …) on traque les changements induits dans l’EEPROM On arrive à identifier pas à pas quelques registres … Puis on en déduit ce qui devrait logiquement être l’octet du RAW ? n Et ………… 14 Nov. 2004 Rencontres C&E La Villette 20
Dans la jungle des octets (suite) n Exemple : L’octet 0 x 0 A 0 h correspond au registre « MIRROR_NOISE_CTL » Un seul paramètre est modifié à la fois (ex: «noise » passe de 1 à 0) puis on examine les octets qui changent dans mémoire de l’EEPROM (ici 0 x 0 A 0 h passe de la valeur 05 h à 04 h) 14 Nov. 2004 Rencontres C&E La Villette 21
Çà marche !! o Dernière astuce (une chance !) n En réduisant la vitesse de transmission au minimum (5 images/sec) on arrive à minimiser (supprimer ? ) la compression logicielle ! Si le débit est trop fort, on obtient des bandes aléatoires de compression comme ceci RAW comprimé 14 Nov. 2004 Rencontres C&E La Villette 22
Quel capteur ? o Le N&B c’est l’idéal n n Image RAW directement utilisable Le capteur est très sensible Pas de dégradations dues aux filtres couleur sur pixels Le RAW est indispensable avec un capteur N&B 14 Nov. 2004 Rencontres C&E La Villette 23
Quel capteur ? o C’est aussi très intéressant en couleurs n n Meilleurs résultats que le mode standard Accessible avec une caméra standard (non N&B) o n Permet l’accès du RAW au plus grand nombre Mais il faut « débayeriser » o plusieurs solutions possibles (Astrosnap, AVIRAW, IRIS. . . ) Mode normal 14 Nov. 2004 Mode RAW image brute Rencontres C&E La Villette Mode RAW débayerisé (plus de détails) 24
Quel capteur ? o Le mode couleur « Optimisé » n Etienne Bonduelle (sur une idée de J. B. Butet) a introduit une variante avec le capteur couleur o o n n On conserve l’interpolation de Bayer (étape (2)) Mais on supprime tout le reste Plus simple (image débayerisée directement exploitable) Bons résultats en planétaire (2) Capteur d’image (1) Reconstruction des pixels à partir de la matrice de Bayer Pre-Gains + Offset Noir Matrice d’ajustement des couleurs de base (4) Renforcement divers des contours 14 Nov. 2004 (3) Réglages de - Balance couleurs - Gain - Saturation … (5) Codage Image (YUV) Algorithme de Compression Rencontres C&E La Villette Séquenceur USB 25
La liste TWIRG o Une liste sur Yahoo dédié aux bidouilles RAW des Webcams n o But = ne pas encombrer les autres listes TWIRG = Tweak Webcam Interface Research Group (Groupe de recherche sur la bidouille des webcams) n Détail amusant : au début on s’appelait Tweak Webcam I 2 C Research Group, mais entre temps Martin a trouvé le moyen de se passer de l’I 2 C … 14 Nov. 2004 Rencontres C&E La Villette 26
Passage à l’USB o Dernier coup de Théatre ! n n Martin Burri trouve le moyen de modifier les registres à travers le bus USB ! (qui sert dans l’autre sens à régler la caméra) Même plus besoin de fer à souder …. Reconstruction des pixels à partir de la matrice de Bayer Pre-Gains + Offset Noir Renforcement divers des contours Modification des registres Matrice d’ajustement des couleurs de base Codage Image (YUV) Algorithme de Compression Modification des octets de l’EEPROM Réglages de - Balance couleurs - Gain - Saturation … Séquenceur USB Décodeur USB !! Dans certains cas seulement pour la page 00 !! (au reset ou lors du « restore factory setting » ) 14 Nov. 2004 Rencontres C&E La Villette 27
Passage à l’USB : Wc. Rmac o o Wc. Rmac pour modifier les registres à l’aide de macros Ou bien charger des binaires complets (sauvegardes) n n n C’est Le logiciel standard de M. Burri Extrêmement simple d’emploi Evite de faire des erreurs (ne permet pas l’accès direct aux registres) 14 Nov. 2004 Rencontres C&E La Villette 28
Passage à l’USB : Wc. Rmac o Un formalisme très simple pour les Macros n n o Fichier texte Tout est modifiable ATTENTION n n on peut totalement planter une caméra en envoyant des valeurs d’octets erronées La seule façon de « déplanter » est alors de revenir à l’I 2 C (c’est déjà arrivé plusieurs fois) 14 Nov. 2004 ; SAA 8116 Macro description ; The first character after the = sign is ignored ; to allow leading spaces ; ; Contributors: ; bm 98 astro, Etienne Bonduelle, Gilles Clement, Christian Buil, Francis Adelving. . . and a lot of people of TWIRG !!! ……………………………………………… [M_Set_RAW_B/W_CCD] -1='-968090425 0 ='Set B/W RAW Mode and Special Factory Settings (for B/W CCDs) 1 ='0 x 0 E 0=0 x 04 (Noise Reduction to Zero) 2 ='0 x 0 E 1=0 x 03 (Set auto mode off, Manual White bal. . . ) 3 ='0 x 0 E 3=0 x. F 8 (Shutter speed at 1/25 th sec DSO) 4 ='0 x 0 E 4=0 x 10 (Gain about 30%) 5 ='0 x 0 E 6=0 x 80 (Red bal 50%) 6 ='0 x 0 E 7=0 x 40 (Blue bal 25%) 7 ='0 x 0 EA=0 x 00 (Sharpness to Zero) 8 ='0 x 0 ED=0 x 78 (Luminosity to 45%) 9 ='0 x 0 EE=0 x. E 0 (Gamma to 50%) 10 ='0 x 101=0 x 24 (RAW Mode) 11 ='0 x 102=0 x 00 (Optical Black Level K 1 to Zero) 12 ='0 x 103=0 x 00 (Optical Black Level K 2 to Zero) 13 ='0 x 104=0 x 00 (Optical Black Level K 3 to Zero) 14 ='0 x 105=0 x 00 (Optical Black Level K 4 to Zero) 15 ='0 x 106=0 x 80 (Pre. Matrix K 1 Std) 16 ='0 x 107=0 x 80 (Pre. Matrix K 2 Std) 17 ='0 x 108=0 x 80 (Pre. Matrix K 3 Std) 18 ='0 x 109=0 x 80 (Pre. Matrix K 4 Std) Etc …………. . Rencontres C&E La Villette 29
Passage à l’USB : Wc. RAcc o Wc. RAcc pour Accéder à tous les Registres de l’EEPROM n n n Génial ! Mais attention beaucoup plus dangereux !! For the «Twirggers » only ! 14 Nov. 2004 Rencontres C&E La Villette 30
Le site du RAW http: //www. astrosurf. com/astrobond/ebrawe. htm o Très didactique n o Explique tout ce qu’il fait savoir pour faire bien marcher la modif o Notamment le très important « restaurer usine » EB a développé et longuement testé les réglages qui sont proposés dans les macros n Qui sont toujours bidouillables pour vos besoins propres 14 Nov. 2004 Rencontres C&E La Villette 31
Conclusion o Une bidouille qui marche bien et vraiment utile n o o Intégré en standard dans les caméra Atik N&B Une combinaison étonnante de compétences … et de chance ! Une développement extraordinairement rapide (tout le monde était prêt) Une aventure très excitante ! Il reste encore des zones à explorer n n Fonctionnement des autres registres Le RAW n’est pas encore tout à fait RAW o o Il reste un chouïa de compression …. On peut aller encore plus loin mais … n n Questions de confidentialité industrielle Accord de Phillips nécessaire … 14 Nov. 2004 Rencontres C&E La Villette 32
Bibliographie o o « Le RAW 'facile' pour Webcams Philips et Logitech ; o) » , Etienne Bonduelle (http: //www. astrosurf. com/astrobond/ebrawe. htm) « Mode RAW sur une webcam N&B astronomique » , Philippe Bernascole (http: //www. astrosurf. com/astrobond/Webcam_RAW. pdf) o o « Ultra Mod (I 2 C interface project)» , Jack Reed (http: //www. foley-tax. com/Astro) « Wc. Rmac » , Martin Burri (http: //www. burri-web. org/bm 98/stuff/wcrmac-1. 0. 79. zip) « Avi. Raw - read raw webcam AVIs » , Carsten Arnold (http: //arnholm. org/astro/software/aviraw/) «Astrosnap_Pro» , Axel Canicio (http: //www. astrosnap. com/index_fr. html) 14 Nov. 2004 Rencontres C&E La Villette 33
- Slides: 33