# Défloutage de projections tomographiques industrielles hautes énergies à l'aide d'un réseau de neurones convolutifs

Maëva MAULIN<fnref n="1" />*, Nicolas ESTRE<fnref n="2" />, David TISSEUR<fnref n="2" />, Grégoire KESSEDJIAN<fnref n="2" />, Alix SARDET<fnref n="2" />, Emmanuel PAYAN<fnref n="2" />, Daniel ECK<fnref n="2" />

<figure><img src="image_1.png" /></figure>

## Résumé

La fabrication additive, métallique en particulier, est en plein essor, mais les pièces ainsi produites peuvent présenter des défauts tels que des anomalies d'impression, de la rétention de poudre ou des fissures. Pour contrôler l'intégrité de ces pièces, la tomographie par transmission haute résolution reste la méthode de référence. Cependant, pour inspecter des pièces massives et fortement absorbantes, la tomographie haute énergie avec un accélérateur linéaire d'électrons est nécessaire. Le Laboratoire de Mesures Nucléaires du CEA IRESNE dispose d'un tomographe haute énergie et a souhaité améliorer la qualité des projections acquises en mettant en place des post-traitements numériques. Afin d'essayer de dépasser les performances des méthodes de restauration classiques, basées sur des algorithmes de déconvolution, une approche de post-traitement novatrice a été étudiée : la déconvolution de flou par réseaux de neurones convolutifs. Pour ce faire, un jeu de données d'images a tout d'abord été généré par simulation. Un réseau de neurones convolutifs, basé sur la structure du réseau SRCNN (Super-Resolution Convolutional Neural Network), a ensuite été adapté, entraîné et évalué. Chaque hyperparamètre du réseau a alors été spécialement optimisé. Enfin, ce réseau a été validé sur des tomographies à 9 MeV d'objets réels afin d'évaluer les performances finales obtenues, mais aussi comprendre les limitations de ce type d'approche. Le réseau de neurones convolutifs ainsi optimisé démontre de bonnes performances de défloutage tout en limitant l'amplification du bruit.

## 1. Introduction

La fabrication additive, métallique en particulier, est en plein essor dans de nombreuses industries et permet la production de pièces de plus en plus complexes. Cependant, les éléments ainsi produits peuvent présenter des défauts comme des anomalies d'impression, de la rétention de poudre ou encore des fissurations. La tomographie par transmission haute résolution reste la méthode de contrôle non destructive de référence pour contrôler l'intégrité de ces pièces. Pour mettre en place ces méthodes, les tubes à rayons X sont les sources de photons les plus courantes, mais leurs énergies maximales, entre 450 et 600 keV, limitent leur utilisation à

l'inspection de pièces ayant des épaisseurs d'acier inférieures à environ 50 mm. Pour l'inspection de pièces plus massives, la tomographie haute énergie avec un accélérateur linéaire d'électrons devient alors une solution incontournable.

Le Laboratoire de Mesures Nucléaires du CEA IRESNE dispose d'un tomographe haute énergie situé sur le centre de Cadarache. Ce dernier est composé d'un accélérateur linéaire d'électrons, permettant des irradiations jusqu'à 17 MeV, ainsi que d'un détecteur à panneau plat NDT 1717HE de chez iRay [1]. Afin de mettre en œuvre une chaîne d'inspection précise de pièces fortement absorbantes, par exemple issues de la fabrication additive, le laboratoire a souhaité améliorer la qualité des projections acquises, notamment en termes de résolution spatiale, via la mise en place de post-traitements numériques.

En imagerie, les méthodes numériques classiques pour le défloutage des projections sont basées sur l'utilisation d'algorithmes de déconvolution, notamment les algorithmes itératifs. Cependant, leurs performances sont très sensibles au bruit dans les images et à la connaissance plus ou moins précise du flou du système (PSF, Point Spread Function). En effet, lors de leur application sur des projections réelles acquises avec le tomographe, ces derniers ont démontré de bonnes performances de défloutage, mais au détriment de la création d'artefacts et d'une certaine amplification du bruit (voir paragraphe 6.). Ainsi, afin d'essayer de dépasser les performances et les limites de ces algorithmes, une approche de post-traitement novatrice est présentée dans cet article, basée sur l'implémentation d'un réseau de neurones convolutifs.

## 2. Réseaux de neurones pour la restauration d'images

L'approche pour le défloutage des projections tomographiques s'apparente à la méthodologie des réseaux réalisant de la super résolution d'images. Ce processus consiste à obtenir des images haute résolution à partir d'images d'entrée basse résolution due, dans le cadre de cette étude, à une dégradation des images par un flou. Diverses méthodes d'apprentissage profond ont été appliquées à la

<footnote n="1">¹CEA, DES, Iresne, Laboratoire de Mesures Nucléaires - CyXplus</footnote>

<footnote n="2">²CEA, DES, Iresne, Laboratoire de Mesures Nucléaires</footnote>

<footnote>*corresponding author, E-mail: maeva.maulin@technipenergies.com</footnote>
super résolution. Les premiers travaux étaient basés sur les réseaux de neurones convolutifs avec notamment le réseau à trois couches SRCNN (Super-Resolution Convolutional Neural Network) [2], [3]. Des structures plus profondes ont également été proposées dans [4], [5]. Plus récemment, de nouvelles approches utilisent les réseaux adverses génératifs comme le réseau SRGAN [6].

Dans le cadre de cette étude, le choix de l'implémentation d'un réseau de neurones à la structure simple et facilement compréhensible a été réalisé. Pour cette raison, l'architecture du réseau SRCNN est particulièrement intéressante. Sa structure est conçue avec un nombre raisonnable de filtres et de couches afin d'avoir un apprentissage rapide tout en étant performant.

### 3. Outils d'évaluation de la qualité des images

Dans la suite de cet article, la qualité des images est évaluée à l'aide des indicateurs suivants :

- l'erreur quadratique moyenne (MSE),

- le rapport signal sur bruit (RSB) défini par :

$$RSB = \frac{\bar{K}}{\sigma_k} \qquad (1)$$

avec $\bar{K}$ l'intensité moyenne du signal et $\sigma_k$ l'écart-type du signal dû aux processus de bruit,

- le rapport contraste sur bruit (CNR, norme EN ISO 15708-1 : 2019), défini entre deux régions ayant des intensités de signal différentes, notées A et B, par :

$$CNR = \frac{|K_A - K_B|}{\sqrt{\sigma_{K_A}^2 + \sigma_{K_B}^2}} \qquad (2)$$

- la résolution spatiale. La norme NF EN ISO 1736-2 :2013 définit la résolution spatiale comme étant la moitié de l'indice de flou de l'image mesuré et la norme ASTME-1695 définit cet indice de flou comme étant la fréquence pour un contraste à 10 % sur les courbes de MTF (Modulation Transfert Function) obtenues expérimentalement. Dans le cadre de cet article, la MTF expérimentale est ajustée via une double fonction gaussienne donnée par :

$$MTF(f) = \frac{n\sigma_1^2e^{-(2\pi\sigma_1f)^2}+(1-n)\sigma_2^2e^{-(2\pi\sigma_2f)^2}}{n\sigma_1^2+(1-n)\sigma_2^2} \qquad (3)$$

avec f la fréquence spatiale, n la norme de la première fonction gaussienne, $\sigma_1$ et $\sigma_2$ les écarts types respectivement de la première et deuxième fonction gaussienne. Les largeurs à mi-hauteur associées sont :

$$FWHM_1 = 2\sqrt{2\ln(2)}\sigma_1 \text{ et } FWHM_2 = 2\sqrt{2\ln(2)}\sigma_2 \qquad (4)$$

La résolution spatiale est alors définie comme étant la moitié de l'inverse de la fréquence pour laquelle la MTF vaut 10 %, notée RS(10 %), et donnée par :

$$RS(10 \%) = \frac{1}{2 \times f(MTF = 10 \%)} \qquad (5)$$

### 4. Implémentation d'un réseau de neurones convolutifs simple

Le réseau de neurones développé dans cette étude a une architecture initiale correspondant à la structure du réseau SRCNN qui sera ensuite optimisée et adaptée aux projections acquises par le tomographe.

#### 4.1. Création du jeu de données

Le jeu de données contient les exemples qui seront fournis au modèle lors de son apprentissage et de ses tests finaux. Ici, le jeu de données est une matrice contenant un grand nombre d'exemples (X,Y). Les cibles notées Y sont les images idéales nettes et les entrées notées X sont les images floues. La plupart des jeux de données de radiographies déjà disponibles sont issus du domaine médical et sont assez éloignés des images acquises avec un tomographe. Le seul jeu de données proposant des images issues de contrôles non-destructifs par radiographie sur des objets est GDXray [6], mais ces images expérimentales sont déjà floues et bruitées. Elles sont plutôt utilisées pour de la reconnaissance d'objets ou de défauts dans les structures radiographiées.

La création d'un nouveau jeu de données représentatif des images acquises avec un tomographe est donc nécessaire. Pour ce faire, un jeu de données est créé par simulation avec le logiciel MODHERATO<fnref n="1" /> [7], [8]. Afin d'avoir des images rendant compte de l'atténuation des objets, 300 fantômes sont générés en tirant aléatoirement :

- le nombre d'objets les composant (entre 100 et 300),

- la forme de chaque objet (cylindrique, cubique ou ellipsoïdale),

- les mensurations de ces objets (centre, rayon, hauteur, angles, ...),

- le matériau affecté à chaque objet (plexiglas, béton, aluminium, zinc, fer, acier, cuivre et plomb).

Les simulations sont réalisées sans flou et sans bruit avec des paramètres correspondant au tomographe expérimental composé d'un source de photons de 9 MeV et d'un détecteur à panneau plat NDT 1717HE de chez iRay [1] ayant des pixels de 100 x 100 µm². Pour chaque fantôme, cinq projections sont acquises à différentes positions angulaires permettant d'avoir au final 1500 projections de 1000 x 1000 pixels.

Pour obtenir les images d'entrée, une copie de ces projections est floutée via un filtre doublement gaussien. Afin d'avoir des projections proches des projections expérimentales, ce filtre est défini d'après la caractérisation du flou global du tomographe (MTF). Ce dernier a été obtenu expérimentalement via la méthode du bord absorbant [9] en imageant un bord parfait. Cette méthode permet de remonter à la fonction de dispersion d'un front (ESF) globale ajustée via une double fonction d'erreur, puis à la MTF globale via :

<footnote n="1">¹ Code de simulation permettant de calculer la transmission photonique entre une source de photons et un détecteur numérique pixelisé en prenant en compte le bruit statistique, l'effet de flou géométrique et la dynamique de détection pour simuler les phénomènes physiques et les comportements électroniques qui dégradent les mesures d'atténuation.</footnote>
$$ MTF(f) = \left| \mathcal{F} \left( \frac{d}{dx} \text{ESF}(x) \right) \right| \qquad (6) $$

avec $|\mathcal{F}|$ la norme de la transformée de Fourier.

Les paramètres d'ajustement de la MTF globale ainsi obtenue, d'après les équations (3), (4) et (6), sont présentés dans le tableau 1. Pour des voxels de 85 µm (grandissement radiographique de 1,17), le filtre doublement gaussien appliqué sur les projections a donc des largeurs à mi-hauteur de 3,9 et 21,5 pixels avec une norme de 0,88, soit une largeur à mi-hauteur globale d'environ 7 pixels.

<table><caption>Tableau 1. Paramètres d'ajustement de le MTF globale du tomographe avec le détecteur NDT 1717HE (pour un grandissement de 1,17 et des voxels de 85 µm).</caption><thead><tr><th>Norme (n)</th><th>0,88 ± 0,06</th></tr></thead><tbody><tr><td>FWHM<sub>1</sub></td><td>330 ± 19 µm</td><td>3,9 pixels</td></tr><tr><td>FWHM<sub>2</sub></td><td>1827 ± 93 µm</td><td>21,5 pixels</td></tr></tbody></table>

Afin de faciliter l'apprentissage et le chargement des données, les images du jeu de données sont découpées en sous-images de 50 x 50 pixels. Les fantômes étant générés aléatoirement, de nombreux objets peuvent se chevaucher, provoquant une atténuation irréaliste par rapport aux images expérimentales. Ainsi, seules les projections ayant un maximum d'atténuation inférieur à l'atténuation obtenue après 25 cm d'acier sont conservées (limite du système).

Au total, 53 000 images nettes et floues sont obtenues pour former le jeu de données. Ces images sont ensuite normalisées en mettant leurs pixels à l'échelle entre 0 et 1. Des exemples d'images du jeu de données ainsi créé sont présentés sur la figure 1.

<figure><img src="image_2.png" /><figcaption>Figure 1. Exemples d'images d'entrées (en haut) et de cibles (en bas) de 50 x 50 pixels du jeu de données créé.</figcaption></figure>

L'ensemble de test est formé à partir de 3000 exemples extraits du jeu de données. Les ensembles d'entraînement et de validation sont composés respectivement de 80 % et de 20 % des exemples restant dans le jeu de données.

## 4.2. Géométrie initiale du réseau

La conception de la structure initiale du réseau de neurones est basée sur l'architecture du réseau SRCNN [3]. C'est un réseau entièrement convolutif peu profond composé de trois couches. Sa structure est représentée sur la figure 2. La fonction de perte utilisée est la MSE (Mean Square Error).

Dans la suite de cet article, comme annoté sur la figure 2, la couche de convolution numéro k d'un réseau sera caractérisée par deux hyperparamètres :

- son nombre de filtres noté $n_k$,

- la taille de ses filtres notée $f_k$.

<figure><img src="image_3.png" /><figcaption>Figure 2. Structure du réseau SRCNN [3].</figcaption></figure>

### 4.2.1. Première couche de convolution : Extraction des caractéristiques

La première couche de convolution du réseau SRCNN vise à extraire un ensemble de cartes de caractéristiques à partir de l'image d'entrée basse résolution. Elle est composée de 64 filtres de 9 x 9 poids, ses hyperparamètres sont donc $n_1 = 64$ et $f_1 = 9$. Une activation de type ReLU est ensuite appliquée sur les résultats des convolutions. La sortie de cette couche est composée de $n_1$ cartes de caractéristiques (représentées en bleu sur la figure 2).

### 4.2.2. Deuxième couche de convolution : Cartographie non linéaire

La deuxième couche de convolution est utilisée pour réaliser une cartographie non linéaire via, entre autres, la réalisation d'un grand nombre de convolutions. Elle est composée de 32 filtres de 1 x 1 poids, ses hyperparamètres sont donc $n_2 = 32$ et $f_2 = 1$. L'utilisation de filtres de 1 x 1 est suggérée dans [10] pour introduire de la non-linéarité tout en réduisant le nombre de paramètres du modèle. Une activation de type ReLU est ensuite appliquée sur les résultats des convolutions. La sortie de cette couche est composée de $n_2$ cartes de caractéristiques (représentées en vert sur la figure 2). En général, les structures plus profondes dérivées du réseau SRCNN introduisent des couches de cartographie non linéaires supplémentaires (avec des filtres de 1 x 1 ou des filtres de plus grandes dimensions) comme présenté au paragraphe 5.4.

### 4.2.3. Troisième couche de convolution : Reconstruction

La troisième couche de convolution n'a pas de fonction d'activation ReLU. Elle est composée d'un filtre de 5 x 5 poids, ses hyperparamètres sont donc $n_3 = 1$ et $f_3 = 5$. Cette couche permet la reconstruction de l'image finale haute résolution. La sortie de cette couche est composée de $n_3 = 1$ carte de caractéristiques correspondant à l'image haute résolution prédite par le modèle (représentées en rouge sur la figure 2).

## 5. Optimisation des hyperparamètres du réseau de neurones convolutifs

À partir de l'architecture initiale du réseau SRCNN présentée au paragraphe précédent, une optimisation unitaire de certains de ses hyperparamètres est réalisée afin d'obtenir les meilleures performances et d'étudier les relations entre performances et hyperparamètres. Pour ce faire, les courbes
d'apprentissage sur l'ensemble de validation pour chaque configuration sont comparées ainsi que la valeur de MSE moyennes calculée après application du réseau formé sur les 3000 exemples de l'ensemble de test.

La MSE moyenne initiale entre les entrées (non défloutées) et les cibles de l'ensemble de test est de $9,1 \times 10^6$<fnref n="2" />, c'est ce qui est appelé « performances sans correction » dans la suite. Les différents hyperparamètres optimisés sont :

- le taux d'apprentissage,

- le nombre de filtres,

- la taille des filtres,

- le nombre de couches de neurones,

- le nombre d'époques.

Pour une comparaison équitable, dans la suite de cette étude, tous les apprentissages sont réalisés avec 250 époques<fnref n="3" /> correspondant à 6,25 x $10^6$ rétropropagations du gradient.

Dans le cadre de cette étude, les réseaux de neurones sont implémentés sous Python via Tensorflow 2.0. Les apprentissages sont réalisés sur une carte graphique Nvidia Quadro RTX 5000 [11].

## 5.1. Variation du taux d'apprentissage

Le taux d'apprentissage est un hyperparamètre important lors de la configuration d'un modèle. Un taux d'apprentissage trop faible entraîne une convergence lente. En revanche, un taux d'apprentissage trop élevé peut aussi empêcher la convergence, du fait d'un apprentissage trop rapide pouvant conduire à une fonction de perte très fluctuante, donc à un processus de formation instable.

Dans cette section, la sensibilité du modèle à différents taux d'apprentissage est examinée. Le taux d'apprentissage varie entre $1 \times 10^{-6}$ et $1 \times 10^{-3}$. Tous les autres hyperparamètres de l'architecture initiale restent inchangés. Pour chaque configuration, la courbe d'apprentissage obtenue pour l'ensemble de validation pour 250 époques est représentée sur la figure 3 et la valeur de MSE moyenne sur l'ensemble de test est reportée dans le tableau 2 avec le temps d'apprentissage associé.

<figure><img src="image_4.png" /><figcaption>Figure 3. Courbes d'apprentissage pour l'ensemble de validation pour différentes valeurs du taux d'apprentissage.</figcaption></figure>

<table><caption>Tableau 2. Temps d'apprentissage et MSE moyennes sur l'ensemble de test en fonction du taux d'apprentissage.</caption><thead><tr><th></th><th>Temps<br>apprentissage</th><th>MSE<br>ensemble de<br>test (x 10<sup>-6</sup>)</th></tr></thead><tbody><tr><td><strong>Performances<br>sans correction</strong></td><td>/</td><td>9,1 ± 0,6</td></tr><tr><td>α = 1 × 10<sup>-3</sup></td><td></td><td>5,5 ± 0,3</td></tr><tr><td>α = 5 × 10<sup>-4</sup></td><td></td><td>5,4 ± 0,2</td></tr><tr><td><strong>Réseau initial</strong></td><td>15 min</td><td>5,6 ± 0,2</td></tr><tr><td>α = 1 × 10<sup>-4</sup></td><td></td><td>6,0 ± 0,3</td></tr><tr><td>α = 5 × 10<sup>-5</sup></td><td></td><td>8,1 ± 0,4</td></tr><tr><td>α = 1 × 10<sup>-5</sup></td><td></td><td>22,9 ± 0,8</td></tr><tr><td>α = 1 × 10<sup>-6</sup></td><td></td><td></td></tr></tbody></table>

Les taux d'apprentissage de $α = 1 \times 10^{-3}$, $α = 5 \times 10^{-4}$ et $α = 1 \times 10^{-4}$ sont trop élevés provoquant de fortes variations des courbes d'apprentissage (courbes bleu-claire, violette et rouge sur la figure 3). Des taux d'apprentissages aux valeurs plus faibles permettent d'avoir des courbes d'apprentissage stables, mais plus la valeur de $α$ diminue moins la convergence est rapide et plus la valeur de MSE moyenne sur l'ensemble de test est élevée. D'après les courbes de la figure 3, la plus grande valeur de $α$ permettant d'avoir une courbe d'apprentissage stable est $α = 5 \times 10^{-5}$ (courbe bleu marine) pour une MSE moyenne sur l'ensemble de test de $6,0 \times 10^6$. Puisque dans la suite de cette étude le modèle va être élargi et approfondi, le choix d'un taux d'apprentissage permettant une bonne stabilité de la convergence pour la structure initiale simple est préférable. **Pour la suite de cette optimisation, le taux d'apprentissage est fixé à $α = 5 \times 10^{-5}$ et correspond au nouveau réseau initial.**

## 5.2. Variation du nombre de filtres

Le réseau initial a des nombres de filtres par couche fixés à $n_1 = 64$, $n_2 = 32$ et $n_3 = 1$ (voir figure 2). Dans cette section, l'influence du nombre de filtres par couche de convolution est évaluée en faisant varier les nombres de filtres de la première et de la deuxième couche. La sortie du réseau étant une image unique, la dernière couche du réseau ne doit comporter qu'un seul filtre (dont la taille pourra en revanche varier). Les hyperparamètres qui varient sont donc $n_1$ et $n_2$. Deux types de test sont réalisés :

- les nombres de filtres sur la première et la deuxième couche varient de 16 à 192 tout en gardant un nombre de filtres décroissant entre les deux couches,

- les nombres de filtres sur la première et la deuxième couche varient de 16 à 192 en fixant le même nombre de filtres pour ces deux couches.

Pour chacun de ces types de test, les courbes d'apprentissage obtenues pour l'ensemble de validation pour 250 époques sont présentées sur la figure 4 et les valeurs de MSE

<footnote n="2">² Valeur non directement interprétable mais utilisée comme valeur de référence à comparer aux valeurs de MSE obtenues après application des différents réseaux de neurones pour rendre compte de leurs performances.</footnote>

<footnote n="3">³ Nombre d'époques permettant d'avoir des temps d'apprentissage raisonnables tout en ayant une bonne idée des tendances de performances des différentes configurations. Le nombre d'époques est optimisé pour la structure finale du réseau au paragraphe 5.6.</footnote>
moyenne sur l'ensemble de test sont reportées dans le tableau 3.

<figure><img src="image_5.png" /><figcaption>Figure 4. Courbes d'apprentissage pour l'ensemble de validation pour différents nombres de filtres par couche avec en a) des nombres de filtres décroissants entre les deux premières couches et en b) les mêmes nombres de filtres sur les deux premières couches.</figcaption></figure>

<table><caption>Tableau 3. Temps d'apprentissage et MSE moyennes sur l'ensemble de test en fonction du nombre de filtres par couche.</caption><thead><tr><th></th><th>Temps<br>apprentissage</th><th>MSE<br>ensemble<br>de test<br>(x 10<sup>-6</sup>)</th></tr></thead><tbody><tr><td><strong>Performances sans<br>correction</strong></td><td>/</td><td>9,1 ± 0,6</td></tr><tr><td>n<sub>1</sub> = 16, n<sub>2</sub> = 16</td><td>11 min</td><td>7,6 ± 0,3</td></tr><tr><td>n<sub>1</sub> = 32, n<sub>2</sub> = 16</td><td>11 min</td><td>6,3 ± 0,3</td></tr><tr><td>n<sub>1</sub> = 32, n<sub>2</sub> = 32</td><td>13 min</td><td>6,3 ± 0,3</td></tr><tr><td><strong>Réseau initial</strong></td><td>15 min</td><td>6,0 ± 0,3</td></tr><tr><td>n<sub>1</sub> = 64, n<sub>2</sub> = 32</td><td>17 min</td><td>5,9 ± 0,3</td></tr><tr><td>n<sub>1</sub> = 64, n<sub>2</sub> = 64</td><td>20 min</td><td>5,8 ± 0,3</td></tr><tr><td>n<sub>1</sub> = 128, n<sub>2</sub> = 64</td><td>25 min</td><td>5,9 ± 0,3</td></tr><tr><td>n<sub>1</sub> = 128, n<sub>2</sub> = 128</td><td>30 min</td><td>5,7 ± 0,3</td></tr><tr><td>n<sub>1</sub> = 192, n<sub>2</sub> = 128</td><td>35 min</td><td>6,0 ± 0,3</td></tr><tr><td>n<sub>1</sub> = 192, n<sub>2</sub> = 192</td><td></td><td></td></tr></tbody></table>

Les courbes d'apprentissage et les valeurs de MSE sur l'ensemble de test montrent que les performances sont moins bonnes pour 16 ou 32 filtres par couche. Utiliser trop peu de filtres par couche est donc limitant. En effet, avec moins de

filtres, moins de motifs peuvent être ciblés et identifiés par chaque couche de convolution. Les performances obtenues avec 128 ou 192 filtres sont assez proches. Cependant, l'utilisation de 192 filtres par couche de convolution rend l'apprentissage plus complexe causant de plus fortes variations dans la courbe d'apprentissage ainsi qu'un temps d'apprentissage multiplié par deux. Il peut être noté que de meilleures performances sont obtenues avec un nombre de filtres par couche décroissant plutôt qu'en conservant le même nombre de filtres sur toutes les couches. Les valeurs de MSE sur l'ensemble de test sont alors plus faibles et les courbes d'apprentissage plus stables.

Les valeurs de MSE moyenne sur l'ensemble de test restent tout de même assez proches quand le nombre de filtres par couche est supérieur à 64. Le nombre de filtres par couche ne semble pas être un hyperparamètre ayant une très forte influence sur les performances du modèle. Afin de conserver une vitesse de restauration rapide et un apprentissage stable, il est donc préférable d'utiliser une taille de réseau intermédiaire. **Des couches composées de maximum 128 filtres semblent être un bon compromis tout en conservant un nombre de filtres par couche décroissant.**

### 5.3. Variation de la taille des filtres

Le réseau initial a des tailles de filtres par couche fixées à $f_1 = 9$, $f_2 = 1$ et $f_3 = 5$ (voir figure 2). Dans cette section, la sensibilité du modèle à différentes tailles de filtre est examinée en faisant varier la taille des filtres des trois couches de convolution. Les hyperparamètres modifiés sont donc $f_1$, $f_2$ et $f_3$. Comme pour l'étude précédente, deux types de test sont réalisés :

- la taille des filtres sur la première, la deuxième et la troisième couche varient de 3 à 21 tout en gardant des filtres ayant une taille décroissante entre les trois couches,

- la taille des filtres sur la première, la deuxième et la troisième couche varient de 3 à 21 en mettant des filtres de même taille dans ces trois couches.

Pour chacun de ces types de test, les courbes d'apprentissage obtenues pour l'ensemble de validation pour 250 époques sont présentées sur la figure 5 et les valeurs de MSE moyenne sur l'ensemble de test sont reportées dans le tableau 4.

Les courbes d'apprentissage de la figure 5 montrent que de plus faibles valeurs de MSE sur l'ensemble de validation après 250 époques sont obtenues pour des tailles de filtres plus grandes, notamment des filtres de dimensions supérieures à 9 x 9. En effet, de plus grands filtres permettent d'identifier des motifs de plus grandes tailles et donc de saisir des informations structurelles plus riches ce qui conduit à de meilleurs résultats. De plus, l'utilisation de filtres de grandes dimensions, par exemple de 21 x 21, permet d'avoir de faibles valeurs de MSE sur l'ensemble de validation après 250 époques, mais des courbes d'apprentissage beaucoup moins stables conduisant à des valeurs de MSE moyenne sur l'ensemble de test élevées.
<figure><img src="image_6.png" /></figure>

<figure><img src="image_7.png" /><figcaption>Figure 5. Courbes d'apprentissage pour l'ensemble de validation pour différentes tailles de filtres par couche avec en a) des tailles des filtres décroissantes entre les trois couches et en b) les mêmes tailles de filtres pour les trois couches.</figcaption></figure>

<table><caption>Tableau 4. Temps d'apprentissage et MSE moyennes sur l'ensemble de test en fonction de la taille des filtres par couche.</caption><thead><tr><th></th><th>Temps<br>apprentissage</th><th>MSE<br>ensemble de<br>test (x 10<sup>-6</sup>)</th></tr></thead><tbody><tr><td><strong>Performances sans<br>correction</strong></td><td>/</td><td>9,1 ± 0,6</td></tr><tr><td>f<sub>1</sub> = 3, f<sub>2</sub> = 3, f<sub>3</sub> = 3</td><td>15 min</td><td>6,3 ± 0,4</td></tr><tr><td>f<sub>1</sub> = 5, f<sub>2</sub> = 3, f<sub>3</sub> = 3</td><td>15 min</td><td>6,1 ± 0,4</td></tr><tr><td>f<sub>1</sub> = 5, f<sub>2</sub> = 5, f<sub>3</sub> = 5</td><td>15 min</td><td>5,6 ± 0,3</td></tr><tr><td><strong>Réseau initial</strong></td><td>15 min</td><td>6,0 ± 0,3</td></tr><tr><td>f<sub>1</sub> = 9, f<sub>2</sub> = 1, f<sub>3</sub> = 5</td><td>20 min</td><td>6,0 ± 0,3</td></tr><tr><td>f<sub>1</sub> = 9, f<sub>2</sub> = 7, f<sub>3</sub> = 5</td><td>20 min</td><td>5,7 ± 0,3</td></tr><tr><td>f<sub>1</sub> = 9, f<sub>2</sub> = 9, f<sub>3</sub> = 9</td><td>20 min</td><td>5,7 ± 0,3</td></tr><tr><td>f<sub>1</sub> = 13, f<sub>2</sub> = 11, f<sub>3</sub> = 9</td><td>20 min</td><td>5,2 ± 0,2</td></tr><tr><td>f<sub>1</sub> = 13, f<sub>2</sub> = 13, f<sub>3</sub> = 13</td><td>20 min</td><td>5,9 ± 0,3</td></tr><tr><td>f<sub>1</sub> = 17, f<sub>2</sub> = 15, f<sub>3</sub> = 13</td><td>25 min</td><td>5,9 ± 0,3</td></tr><tr><td>f<sub>1</sub> = 17, f<sub>2</sub> = 17, f<sub>3</sub> = 17</td><td>45 min</td><td>5,9 ± 0,3</td></tr><tr><td>f<sub>1</sub> = 21, f<sub>2</sub> = 19, f<sub>3</sub> = 17</td><td>45 min</td><td>6,1 ± 0,4</td></tr><tr><td>f<sub>1</sub> = 21, f<sub>2</sub> = 21, f<sub>3</sub> = 21</td><td>55 min</td><td>6,2 ± 0,4</td></tr></tbody></table>

Les réseaux avec une taille de filtre constante entre les trois couches semblent permettre d'obtenir de plus faibles valeurs de MSE moyennes sur l'ensemble de test. Cependant, le nombre d'hyperparamètres du réseau avec trois filtres de 17 x 17 est presque le double de celui du réseau avec trois filtres de 9 x 9 avec un temps d'apprentissage multiplié par deux alors que l'amélioration des performances reste marginale. Par conséquent, le choix de la taille des filtres du réseau est un compromis entre performances, temps d'apprentissage et complexité des modèles.

Dans notre cas, la MSE moyenne sur l'ensemble de test la plus faible est de 5,2 x 10⁻⁶ pour des filtres de dimensions 13 x 13 sur les trois couches du réseau. L'utilisation de filtres d'assez grandes dimensions semble nécessaire afin que chaque couche puisse saisir assez d'informations pour aboutir à un défloutage efficace. En effet, le flou gaussien appliqué aux images d'entrées a une largeur à mi-hauteur d'environ 7 pixels (voir paragraphe 4.1) ce qui correspond à un étalement sur environ 12 pixels. Il semble donc logique que l'utilisation de filtres de dimensions proches de 12 x 12 permet de mieux analyser le processus de flou et donc d'aboutir à de meilleurs résultats. L'utilisation de filtres de dimensions 13 x 13 est donc la plus adaptée ici.

## 5.4. Variation du nombre de couches

Le réseau initial est composé de trois couches de neurones, dont une seule couche de cartographie linéaire (en vert sur la figure 2). Dans cette section, des essais sont réalisés avec des structures de réseaux plus profondes en ajoutant une ou plusieurs couches de cartographie non linéaire. Trois types de test sont réalisés :

- implémentation de réseaux avec deux et cinq couches de cartographie non linéaire ayant 32 filtres de dimensions 1 x 1, soit des réseaux avec au total respectivement 4 couches et 7 couches de neurones,

- implémentation de réseaux avec une, deux et cinq couches de cartographie non linéaire ayant 32 filtres de dimensions 7 x 7, soit des réseaux avec au total respectivement 3 couches, 4 couches et 7 couches de neurones,

- implémentation de réseaux avec deux et cinq couches de cartographie non linéaire ayant 64 filtres de dimensions 9 x 9, soit des réseaux avec au total respectivement 4 couches et 7 couches de neurones.

Pour chaque configuration, la courbe d'apprentissage obtenue pour l'ensemble de validation pour 250 époques est représentée sur la figure 6 et la valeur de MSE moyenne sur l'ensemble de test est reportée dans le tableau 5.
<figure><img src="image_8.png" /><figcaption>Figure 6. Courbes d'apprentissage pour l'ensemble de validation pour différents nombres de couches.</figcaption></figure>

<table><caption>Tableau 5. Temps d'apprentissage et MSE moyennes sur l'ensemble de test en fonction du nombre de couches.</caption><thead><tr><th></th><th>Temps<br>apprentissage</th><th>MSE<br>ensemble de<br>test (x 10<sup>-6</sup>)</th></tr></thead><tbody><tr><td>Performances sans<br>correction</td><td>/</td><td>9,1 ± 0,6</td></tr><tr><td>Réseau initial</td><td></td><td></td></tr><tr><td>1 couche 1 x 1</td><td>15 min</td><td>6,0 ± 0,3</td></tr><tr><td>2 couches 1 x 1</td><td>15 min</td><td>6,4 ± 0,4</td></tr><tr><td>5 couches 1 x 1</td><td>20 min</td><td>6,6 ± 0,4</td></tr><tr><td>1 couche 7 x 7</td><td>20 min</td><td>6,0 ± 0,3</td></tr><tr><td>2 couches 7 x 7</td><td>25 min</td><td>6,1 ± 0,4</td></tr><tr><td>5 couches 7 x 7</td><td>35 min</td><td>6,1 ± 0,4</td></tr><tr><td>2 couches 9 x 9</td><td>30 min</td><td>5,7 ± 0,3</td></tr><tr><td>5 couches 9 x 9</td><td>60 min</td><td>5,4 ± 0,3</td></tr></tbody></table>

Les courbes d'apprentissage des réseaux composés de couches de cartographie non linéaire ayant des filtres de dimensions 1 x 1 (représentées en rouge, bleu et orange sur la figure 6) montrent que dans ce cas des réseaux plus profonds ne donnent pas toujours de meilleures performances. En effet, pour les réseaux avec deux et cinq couches de cartographie non linéaire avec des filtres de 1 x 1, les performances se dégradent (MSE sur l'ensemble de test élevées) et ne parviennent pas à dépasser le réseau initial à trois couches. En revanche, si des couches de cartographie non linéaire avec des filtres plus grands sont utilisées, alors les réseaux plus profonds permettent d'avoir de plus faibles valeurs de MSE sur l'ensemble de validation après 250 époques, mais l'augmentation de profondeur induit de fortes variations dans les courbes d'apprentissage (nécessité de diminuer le taux d'apprentissage). De plus, les réseaux plus profonds donnent des valeurs de MSE moyenne sur l'ensemble de test globalement plus élevées que pour le réseau initial à trois couches.

Les meilleures performances sont obtenues en utilisant des couches de cartographie non linéaire ayant des filtres de plus grandes dimensions, mais aussi avec plus de filtres par couches. La MSE moyenne la plus faible est de 5,4 x 10⁻⁶

pour le réseau avec 5 couches de cartographie non linéaire de 64 filtres de 9 x 9.

Des essais ont aussi été faits avec plus de couches (par exemple 10 couches de cartographie non linéaire) mais l'apprentissage était très instable avec une amélioration marginale des performances. Ces expériences montrent que trop augmenter la profondeur du réseau n'est pas la solution la plus optimale pour la super-résolution. **Pour la suite de cette étude, des réseaux d'au maximum cinq couches, donc avec au maximum trois couches de cartographie non linéaire, sont utilisés.**

## 5.5. Géométrie finale du réseau

Les précédentes optimisations unitaires des différents hyperparamètres du réseau initial permettent de sélectionner les plus adaptés pour le défloutage des radiographies. Les hyperparamètres de la structure optimale conservée sont répertoriés dans le tableau 6 avec pour comparaison les hyperparamètres de la structure initiale du réseau.

<table><caption>Tableau 6. Hyperparamètres des structures du réseau initial et du réseau optimisé.</caption><thead><tr><th></th><th>Réseau initial</th><th>Réseau optimisé</th></tr></thead><tbody><tr><td>Taux d'apprentissage</td><td>1 x 10<sup>-4</sup></td><td>5 x 10<sup>-5</sup></td></tr><tr><td>Couche 1</td><td>n<sub>1</sub> = 64<br>f<sub>1</sub> = 9</td><td>n<sub>1</sub> = 128<br>f<sub>1</sub> = 13</td></tr><tr><td>Couche 2</td><td>n<sub>2</sub> = 32<br>f<sub>2</sub> = 1</td><td>n<sub>2</sub> = 96<br>f<sub>2</sub> = 13</td></tr><tr><td>Couche 3</td><td>n<sub>3</sub> = 1<br>f<sub>3</sub> = 5</td><td>n<sub>3</sub> = 64<br>f<sub>3</sub> = 13</td></tr><tr><td>Couche 4</td><td>/</td><td>n<sub>4</sub> = 1<br>f<sub>4</sub> = 13</td></tr></tbody></table>

## 5.6. Optimisation du nombre d'époques

L'un des hyperparamètres qui n'a pas encore été optimisé est le nombre d'époques. Des apprentissages sont donc réalisés pour différents nombres d'époques avec la structure initiale du réseau et la structure finale optimisée.

Afin de déterminer les performances de défloutage attendues de ces réseaux sur des images réelles, l'optimisation du nombre d'époques est réalisée en les appliquant sur des projections simulées avec et sans bruit d'un fantôme cylindrique comportant de nombreux inserts. Ce fantôme permet de réaliser des mesures de RSB et de résolution spatiale. Dans le cadre de cet article, la résolution spatiale, RS(10 %) (voir paragraphe 3.) est obtenue via la méthode du bord absorbant [9] (ESF, voi paragraphe 4.1) sur le bord d'un des motifs d'une coupe du fantôme.

Pour les projections simulées sans bruit, avec la structure du réseau initial, augmenter le nombre d'époques permet d'améliorer ses performances en termes de résolution spatiale. Mais un trop grand nombre d'époques, ici supérieur à 1000, dégrade à nouveau les performances (« sur apprentissage » ou « over fitting »). Cependant, pour la
structure optimisée, de meilleures performances sont obtenues avec un nombre limité d'époques (10 ou 25).

Pour les projections simulées avec bruit, les valeurs de RSB et de résolution spatiale pour différents nombres d'époques sont reportées dans le tableau 7 et les coupes associées sont présentées la figure 7. La deuxième ligne de ce tableau présente les performances obtenues sans correction avec un rapport signal sur bruit de 35 sur la coupe reconstruite et une résolution spatiale de 312 µm.

La structure initiale du réseau avec 1000 époques, fournissant les meilleures performances sans bruit, n'est pas du tout adaptée aux images ayant du bruit. Elle y est très sensible et va fortement l'amplifier, avec des rapports signal sur bruit très faibles sur les coupes reconstruites et des profils trop bruités pour être ajustés lors des mesures de résolution spatiale. La structure initiale du réseau avec 25 époques permet de limiter cette amplification du bruit avec un rapport signal sur bruit de 60, mais un défloutage plus limité (passage d'une résolution spatiale sans correction de 312 µm à 265 µm). En revanche, le réseau optimisé avec peu d'époques a de bonnes performances de défloutage permettant d'atteindre une résolution spatiale d'environ 220 µm pour 25 époques tout en lissant le bruit ce qui permet d'avoir des coupes reconstruites avec un plus grand rapport signal sur bruit (RSB de 87).

Cela démontre que l'utilisation d'un nombre limité d'époques est un atout permettant d'avoir un réseau qui n'est pas encore parfaitement spécialisé pour le défloutage et donc d'avoir un lissage du bruit. Le réseau optimisé, pourtant formé sur un jeu de données simulé sans bruit, peut donc s'adapter à des projections expérimentales bruitées ayant un rapport signal sur bruit par projection acquise de l'ordre de 130.

Le gain principal de l'optimisation du réseau est en fait la réduction importante du nombre d'époques optimal nécessaire, en passant de 1000 époques à seulement 25 époques avec le réseau optimisé.

<figure><img src="image_9.png" /><figcaption>Figure 7. Coupes reconstruites après application sur les projections simulées, floues et bruitées, du réseau initial pour 1000 époques et du réseau optimisé pour 25 époques.</figcaption></figure>

<table><caption>Tableau 7. Valeurs de RS(10 %) et de RSB sur la coupe reconstruite floue et bruitée simulée pour le réseau initial et le réseau optimisé en fonction du nombre d'époques.</caption><thead><tr><th></th><th>RS(10 %)</th><th>RSB</th></tr></thead><tbody><tr><td><strong>Performances sans correction</strong></td><td>312 ± 02 µm</td><td>35</td></tr><tr><td><strong>Réseau initial</strong><br>1000 époques</td><td>/</td><td>5</td></tr><tr><td><strong>Réseau initial</strong><br>25 époques</td><td>265 ± 7 µm</td><td>60</td></tr><tr><td><strong>Réseau optimisé</strong><br>25 époques</td><td>217 ± 6 µm</td><td>87</td></tr></tbody></table>

## 6. Performances du réseau et comparaison avec certains algorithmes de déconvolution sur des pièces réelles

L'évaluation finale des performances du réseau de neurones optimisé est réalisée sur des tomographies d'objets réels. Des tomographies de deux fantômes en acier inoxydable présentés sur la figure 8 sont réalisées pour une irradiation à 9 MeV et un grandissement radiographique de 1,17 (distance source détecteur de 2522 mm). Les fantômes sont cylindriques de 50 mm de diamètre. Le premier fantôme contient des fentes calibrées ayant des épaisseurs allant de 0,1 mm à 10 mm (fantôme A). Le deuxième contient des perçages calibrés avec des diamètres allant de 0,5 à 7 mm (fantôme B).

<figure><img src="image_10.png" /><figcaption>Figure 8. Photographies, schémas et plans des fantômes en acier inoxydable de 50 mm de diamètre.</figcaption></figure>

Le réseau de neurones optimisé avec la structure présentée au paragraphe 5.5 est appliqué aux projections expérimentales acquises. Pour comparaison, les
performances du détecteur sans correction sont aussi présentées, ainsi que les performances obtenues après application des algorithmes de déconvolution les plus performants sélectionnés dans une précédente étude [12] (HyBR, FISTA et RIF) sur les projections.

Les reconstructions tomographiques sont réalisées avec l'algorithme FDK. Des coupes issues de ces reconstructions sont présentées sur la figure 9. Pour permettre la comparaison visuelle des coupes, ces dernières sont normalisées pour avoir leur niveau de gris moyen à 1 et une dynamique d'image entre 0 et 1,2. La figure 9 présente aussi les ESF ajustées sur la fente du fantôme A permettant de remonter aux résolutions spatiales. Ces valeurs de résolution spatiale sur une coupe reconstruite après 50 mm d'acier sont présentées dans le tableau 8, ainsi que les rapports signal sur bruit et contraste sur bruit. La figure 10 compare des profils extraits des coupes du fantôme A (d'après le profil tracé en rouge sur la figure 9), sans correction et après correction avec l'algorithme HyBR et le réseau optimisé.

<figure><img src="image_11.png" /><figcaption>Figure 9. Coupes issues des reconstructions des tomographies des deux fantômes obtenues sans et avec corrections des projections avec le réseau de neurones optimisé et l'algorithme HyBR.</figcaption></figure>

<table><caption>Tableau 8. Valeurs de RS(10 %), de RSB et de RCB sur les coupes reconstruites du fantôme A pour le réseau optimisé et trois algorithmes de déconvolution.</caption><thead><tr><th></th><th>RS(10 %)<br>fente</th><th>RSB<br>fente</th><th>RCB<br>fente</th></tr></thead><tbody><tr><td>Performances<br>sans correction</td><td>311 ± 16 µm</td><td>45</td><td>12</td></tr><tr><td>HyBR</td><td>158 ± 12 µm</td><td>22</td><td>8</td></tr><tr><td>FISTA</td><td>285 ± 15 µm</td><td>42</td><td>12</td></tr><tr><td>RIF</td><td>310 ± 16 µm</td><td>48</td><td>13</td></tr><tr><td>Réseau<br>optimisé</td><td>174 ± 10 µm</td><td>38</td><td>10</td></tr></tbody></table>

<figure><img src="image_12.png" /><figcaption>Figure 10. Profils extraits des coupes du fantôme A de la figure 9 obtenues après reconstructions des tomographies réalisées sans et avec corrections des projections avec le réseau de neurones optimisé et l'algorithme HyBR.</figcaption></figure>

Le réseau optimisé permet d'atteindre une résolution spatiale de 174 µm, soit une division par 1,8 de la résolution spatiale initiale d'environ 310 µm. Le réseau amplifie légèrement le bruit avec un rapport signal sur bruit dégradé par rapport aux coupes sans correction (RSB de 38 vs RSB de 45 sur la coupe sans correction), induisant des rapports contraste sur bruit aussi dégradés.

De plus, comme le montre les profils de la figure 10, la correction des projections avec le réseau de neurones ne réduit pas le contraste initial, contrairement à la correction avec l'algorithme de déconvolution le plus performant, qu'est l'algorithme HyBR. Enfin, d'après les coupes de la figure 9, il peut être noté que le réseau de neurones crée peu d'artefacts contrairement à l'utilisation de l'algorithme HyBR ce qui se traduit, à gauche et à droite des profils de la figure 10, par de faibles sauts d'intensité au niveau des bords du fantôme (qui sont en revanche importants avec l'algorithme HyBR).

Le réseau de neurones optimisé avec 25 époques permet donc d'avoir des performances de résolution spatiale comparables à celles de l'algorithme HyBR aux incertitudes près (RS(10 %)$_{Réseau}$ = 174 µm et RS(10 %)$_{HyBR}$ = 158 µm) tout en limitant l'amplification du bruit (RSB$_{Réseau}$ = 38 et RSB$_{HyBR}$ = 22) et la création d'artefacts.
## 7. Conclusions

Cette étude présente l'implémentation et l'optimisation d'un réseau de neurones convolutifs permettant le défloutage des projections acquises par tomographie à transmission. Pour ce faire, un réseau de neurones initial, basé sur l'architecture du réseau SRCNN [2], [3] a été optimisé et adapté aux projections acquises par le tomographe. Un jeu de données personnalisé représentatif des projections acquises réelles a tout d'abord été créé par simulation (sans bruit) afin de permettre l'entraînement des réseaux de neurones. Ensuite, les différents hyperparamètres de cette architecture initiale ont été optimisés afin d'améliorer ses performances de défloutage (taux d'apprentissage, nombre de filtres, taille des filtres, nombre de couches de neurones, nombre d'époques).

Les performances du réseau de neurones optimisé ont ensuite été évaluées sur des tomographies d'objets réels. Le réseau de neurones a été appliqué aux projections expérimentales de deux fantômes en acier de 50 mm d'épaisseur. Le réseau de neurones optimisé avec 25 époques permet d'avoir, aux incertitudes près, des performances de résolution spatiale comparables à celles du plus performant des algorithmes de déconvolution testé qu'est l'algorithme HyBR ($RS(10\%)_{Réseau} = 174 \mu m$ et $RS(10\%)_{HYBR} = 158 \mu m$) tout en limitant l'amplification du bruit ($RSB_{Réseau} = 38$ et $RSB_{HYBR} = 22$) et la création d'artefacts.

Ces travaux pourront être complétés afin d'aboutir à de meilleures performances de défloutage. En effet, dans le cadre de cette étude, le choix d'un réseau de neurones avec une structure simple et facilement compréhensible a été fait (quatre couches de neurones). Or, les performances du réseau de neurones optimisé peuvent être limitées en raison de cette structure simple. Pour en améliorer la précision, plusieurs solutions sont envisagées.

Tout d'abord, une optimisation de la fonction de coût du réseau. La MSE, utilisée dans le réseau optimisé, compare les images pixel par pixel, il serait intéressant, par exemple, d'avoir un critère de coût couplant la MSE à un critère de détection des bords comme la MGE (Mean Gradient Error) basée sur un filtre Sobel [13]. Un terme de régularisation pourrait aussi être ajouté à la fonction de coût du réseau, comme une régularisation basée sur la norme L2 des poids implémentée avec « weight decay » ou une régularisation Dropout. De plus, des réseaux plus profonds pourraient être implémentés via, par exemple, l'utilisation d'architectures de réseau plus complexes comme les réseaux de neurones résiduels [14] ou les réseaux adverses [6]. Des techniques de déroulement (unrolling) pourraient aussi être mises en place afin de connecter les méthodes itératives des algorithmes de déconvolution aux réseaux de neurones [15] induisant une meilleure interprétabilité des couches de neurones. Enfin, il serait intéressant d'adapter la structure du réseau de neurones optimisé afin de pouvoir réaliser un apprentissage mixte permettant de déflouter et débruiter les images. En amont, la construction d'un jeu de données plus complet rendant compte du bruit expérimental serait alors nécessaire.

## Références

[1] « IRAY | Global Provider of X-Ray Imaging Component Solutions-Products ».
https://www.iraygroup.com/site/productDetail/290?lang=E
N (consulté le 12 juillet 2022).

[2] C. Dong, C. C. Loy, K. He, et X. Tang, « Image Super-Resolution Using Deep Convolutional Networks », ArXiv150100092 Cs, juill. 2015, Consulté le: 11 mars 2022. [En ligne]. Disponible sur: http://arxiv.org/abs/1501.00092

[3] C. Dong, C. C. Loy, K. He, et X. Tang, « Learning a Deep Convolutional Network for Image Super-Resolution », in Computer Vision – ECCV 2014, D. Fleet, T. Pajdla, B. Schiele, et T. Tuytelaars, Éd., in Lecture Notes in Computer Science, vol. 8692. Cham: Springer International Publishing, 2014. doi: 10.1007/978-3-319-10593-2_13.

[4] J. Kim, J. K. Lee, et K. M. Lee, « Deeply-Recursive Convolutional Network for Image Super-Resolution », ArXiv151104491 Cs, nov. 2016, Consulté le: 11 mars 2022. [En ligne]. Disponible sur: http://arxiv.org/abs/1511.04491

[5] J. Kim, J. K. Lee, et K. M. Lee, « Accurate Image Super-Resolution Using Very Deep Convolutional Networks », ArXiv151104587 Cs, nov. 2016, Consulté le: 11 mars 2022. [En ligne]. Disponible sur: http://arxiv.org/abs/1511.04587

[6] A. Jabbar, X. Li, et B. Omar, « A Survey on Generative Adversarial Networks: Variants, Applications, and Training », ACM Comput. Surv., vol. 54, n° 8, p. 1-49, nov. 2022, doi: 10.1145/3463475.

[7] J.-L. Pettier, D. Eck, et R. Thierry, « High energy X-ray imagery on large or dense objects: Definition and performance studies of measurement devices. », in 2003 3rd International Conference on Emerging Technologies in Non-Destructive Testing, Greece: CRC Press, mai 2003.

[8] L. Berge et al., « Fast High-Energy X-Ray Imaging for Severe Accidents Experiments on the Future PLINIUS-2 Platform », IEEE Trans. Nucl. Sci., vol. 65, n° 9, p. 2573-2581, sept. 2018, doi: 10.1109/TNS.2018.2847460.

[9] E. Samei, M. J. Flynn, et D. A. Reimann, « A method for measuring the presampled MTF of digital radiographic systems using an edge test device », Med. Phys., vol. 25, n° 1, Art. n° 1, 1998, doi: 10.1118/1.598165.

[10] C. Szegedy et al., « Going Deeper with Convolutions », ArXiv14094842 Cs, sept. 2014, Consulté le: 16 mars 2022. [En ligne]. Disponible sur: http://arxiv.org/abs/1409.4842

[11] « Cartes graphiques NVIDIA Quadro de génération précédente pour stations de travail fixes », Consulté le: 19 avril 2022. [En ligne]. Disponible sur: https://www.nvidia.com/fr-fr/design-visualization/previous-quadro-desktop-gpus/

[12] M. Maulin, « Développement d'un système d'imagerie haute énergie et haute résolution », These de doctorat, Université Grenoble Alpes, 2022. Consulté le: 23 mars 2023. [En ligne]. Disponible sur: https://www.theses.fr/2022GRALY063

[13] Z. Lu et Y. Chen, « Single Image Super Resolution based on a Modified U-net with Mixed Gradient Loss », Art. n° arXiv:1911.09428, nov. 2019, doi: 10.48550/arXiv.1911.09428.

[14] K. He, X. Zhang, S. Ren, et J. Sun, « Deep Residual Learning for Image Recognition », in 2016 IEEE Conference on Computer Vision and Pattern Recognition (CVPR), Las Vegas, NV, USA: IEEE, juin 2016, p. 770-778. doi: 10.1109/CVPR.2016.90.

[15] V. Monga, Y. Li, et Y. C. Eldar, « Algorithm Unrolling: Interpretable, Efficient Deep Learning for Signal and Image Processing », Art. n° arXiv:1912.10557, août 2020, doi: 10.48550/arXiv.1912.10557.