Skip to content

Commit b081f37

Browse files
committedJun 7, 2022
Mise à jour du README avec les nouveaux résultats
1 parent 23e0f8f commit b081f37

File tree

1 file changed

+6
-4
lines changed

1 file changed

+6
-4
lines changed
 

‎README.md

+6-4
Original file line numberDiff line numberDiff line change
@@ -8,17 +8,19 @@ On retrouve une implémentation de l'algorithme ART dans `src/resolution.py`. To
88
Le coeur du projet consiste à étudier l'influence de différents paramètres de l'algorithme ART, qu'ils concernent la préparation des données de projection ou l'exécution de l'algorithme. Pour ce faire, j'ai successivement fait varié les paramètres ci-dessous, sur deux images : le "Shepp Logan phantom" (SLP), une image de test standard en tomographie, ainsi qu'une photo de mon lapin. Les images cibles sont disponibles dans `exemples/slp/` et `exemples/lapin/`, et les résultats des simulations se trouvent dans `simulations/`.
99

1010
### Nombre de rayons
11-
Le nombre `N_R` de rayons tracés pour reconstituer une image de taille `N_P` doit être de préférence tel que `N_R` > 0.2 * `N_P`. Ce n'est cependant pas forcément possible du fait de la mémoire vive limitée.
11+
Le nombre `N_R` de rayons tracés pour reconstituer une image de taille `N_P` doit être de préférence tel que `N_R` > 0.2 * `N_P`. Ce n'est cependant pas forcément possible du fait de la mémoire vive limitée.
12+
13+
En pratique, de fortes contraintes physiques, notamment la radioactivité des rayons et leur largeur (non nulle), limitent fortement ce nombre de rayons.
1214

1315
### Image initiale utilisée
1416
J'ai considéré quatre images initiales possibles : trois uniformes - une noire, une grise, une blanche - et une "approchée" disponible avec les images cibles (concrètement, l'image initiale est ici l'image cible fortement floutée avec Pillow).
1517

1618
Initialiser l'algorithme avec une image approchée de ce que l'on attend permet d'améliorer la précision de l'image reconstituée.
1719

1820
### Schéma d'accès des rayons
19-
Le schéma d'accès des rayons est l'ordre dans lequel on considère les rayons. J'ai exploré deux options : soit on prend les rayons successivement dans l'ordre dans lequel ils ont été tracés, soit on les prend aléatoirement.
21+
Le schéma d'accès des rayons est l'ordre dans lequel on considère les rayons. J'ai exploré trois options : soit on prend les rayons successivement dans l'ordre dans lequel ils ont été tracés, soit on les prend aléatoirement uniformémement, soit on les prend aléatoirement de manière pondérée (avec une probabilité égale à la norme de la ligne au carré sur la norme de la matrice au carré).
2022

21-
La première simulation, `simu_schema_acces` étudie le comportement asymptotique, après un grand nombre d'itérations de l'algorithme. La deuxième simulation, `simu_vitesse_cv_schema_acces` étudie l'influence du nombre d'itérations en fonction du schéma d'accès : le schéma aléatoire est théoriquement censé converger plus vite que le schéma successif, mais l'on n'observe pas ce phénomène ici.
23+
La première simulation, `simu_schema_acces` étudie le comportement asymptotique, après un grand nombre d'itérations de l'algorithme. La deuxième simulation, `simu_vitesse_cv_schema_acces` étudie l'influence du nombre d'itérations en fonction du schéma d'accès : les schémas aléatoires convergent légèrement plus vite que le schéma successif, mais l'on n'observe aucune différence notable entre le schéma aléatoire et celui aléatoire pondéré (théoriquement meilleur).
2224

2325
### Nombre d'itérations
24-
Il semble qu'itérer l'algorithme continue d'améliorer la précision de l'image reconstituée, même après un grand nombre de cycles réalisés (un cycle = `N_R` itérations de l'algorithme, où `N_R` est le nombre de rayons tracés). Il semblerait qu'il soit très rentable de réaliser au moins 40 cycles.
26+
L'algorithme converge assez rapidement, 10 cycles suffisent largement à atteindre quasiment l'image reconstruite asymptotiquement.

0 commit comments

Comments
 (0)
Please sign in to comment.