La tâche
L’électrocautérisation remplit de fumée l’image laparoscopique. La tâche consiste à restituer l’image nette à partir d’une image enfumée. On ne peut pas filmer le même instant avec et sans fumée, donc nous entraînons sur des paires synthétiques : de la fumée simulée dans Blender est superposée à des images nettes du jeu de données public CholecT50, issu de cholécystectomies laparoscopiques.
- Entraînement : 5 882 images nettes issues de 35 vidéos, avec une nouvelle fumée à chaque époque.
- Validation : 518 paires fixes issues de 5 autres vidéos.
- Partition : par vidéo, si bien qu’aucune opération ne se retrouve des deux côtés.
Chaque modèle est comparé à la référence sans traitement : l’image enfumée telle quelle. Un modèle qui ne fait pas mieux que ne rien faire n’a aucune utilité.
Résultats
Les trois modèles ont été entraînés lors d’une session sur un GPU A40 loué, à raison de 15 époques chacun sur des images entières de 854×480 et une seule graine. Le tableau donne le PSNR en dB sur les paires de validation, avec l’écart par rapport à la référence sans traitement entre parenthèses.
| Modèle | Toutes les images | Fumée légère | Fumée moyenne | Fumée dense |
|---|---|---|---|---|
| Residual U-Net | 33,08 (+4,09) | 41,05 (+2,54) | 34,47 (+5,42) | 28,27 (+3,89) |
| Pix2Pix | 27,85 (−1,14) | 32,97 (−5,54) | 29,00 (−0,05) | 24,57 (+0,19) |
| SRGAN | n’a pas convergé | – | – | – |
| Sans traitement | 28,99 | 38,51 | 29,05 | 24,38 |
La residual U-Net prédit une correction de l’entrée plutôt qu’une nouvelle image. Elle améliore l’entrée à toutes les densités de fumée, surtout pour une fumée moyenne.
Pix2Pix, un GAN, modifie à peine les fumées moyenne et dense et dégrade les images à fumée légère : son générateur peint une texture plausible même là où l’image était presque nette. C’est pourquoi la sortie d’un GAN ne doit jamais être lue comme ce que la fumée cachait.
Ce qui n’a pas fonctionné, et pourquoi
- Recadrages. La U-Net a d’abord été entraînée sur des recadrages de 256×256, un réglage par défaut courant.
- Après 11 époques, elle restait sous l’entrée : 28,75 contre 28,99 dB.
- Les recadrages diluent la fumée et ne montrent jamais le bord sombre de l’image de l’endoscope.
- Sur des images entières, le même réseau dépassait l’entrée de 2,4 dB après 5 époques.
- SRGAN, trois tentatives.
- Pendant l’entraînement, la sortie était bornée à la plage valide ; les pixels qui en sortaient perdaient donc le gradient qui aurait pu les y ramener. En une époque, tous les pixels sont devenus rouge pur, et le PSNR est tombé à 6,3 dB.
- Après la correction, une exécution a utilisé par erreur l’ancien code et a reproduit l’échec.
- Lors de la troisième tentative, le générateur s’entraîne d’abord sur la seule erreur par pixel, comme dans l’article d’origine, et il a pourtant dégradé les images par rapport à l’entrée : 25,4 dB. La cause la plus probable est le réglage de l’optimiseur repris de Pix2Pix ; l’article en utilisait un autre. Nous nous sommes arrêtés là plutôt que de dépenser davantage d’heures GPU.
- Exploitation. Un processus oublié s’est entraîné à côté de l’exécution principale pendant 2,5 heures et a divisé sa vitesse par deux. Les vérifications correspondantes font désormais partie de la procédure d’entraînement.
Ce que ces chiffres ne sont pas
- Pas une série terminée. Ce sont les résultats d’une graine sur la partition de validation. Nous n’annonçons une amélioration qu’à partir d’au moins trois graines dont les intervalles de confiance ne se recouvrent pas ; cette série est donc inachevée. La partition de test réservée n’a pas été utilisée.
- Pas de la vraie fumée. La fumée est synthétique, et aucun clinicien ne l’a validée par rapport à une fumée réelle. Les images avec de la vraie fumée ne sont pas encore annotées.
- Pas une évaluation complète. La vitesse, les reflets, le sang et le flou n’ont pas été mesurés.
- Pas une publication. Aucun modèle n’est publié.
RESEARCH USE ONLY – NOT FOR CLINICAL USE (recherche uniquement, pas d’usage clinique). Les images restaurées ne doivent jamais être montrées à un chirurgien pendant une opération.
Prochaines étapes possibles
- Deux graines de plus pour la U-Net, puis une seule vérification, consignée, sur la partition de test.
- Annoter des images avec de la vraie fumée, pour pouvoir aussi y vérifier les modèles.
- Une nouvelle tentative avec SRGAN, avec le réglage d’optimiseur de l’article.
La fiche complète du modèle, avec les identifiants d’exécution, se trouve dans le dépôt du projet. Voir aussi le journal des expériences et pourquoi les résultats négatifs comptent.