CommencezCommencez gratuitement

Intensité

Dans ce chapitre, nous allons travailler avec une radiographie de la main provenant d'une compétition de la [Radiological Society of North America] de 2017 (http://rsnachallenges.cloudapp.net/competitions/4). L'absorption des rayons X est plus élevée dans les tissus denses comme l'os, donc les intensités résultantes devraient être élevées. Par conséquent, des images comme celle-ci peuvent servir à estimer l'« âge osseux » chez les enfants.

Pour commencer, chargeons l'image et vérifions son étendue d'intensité.

Le type de données de l'image détermine l'intervalle d'intensités possibles : p. ex., les entiers non signés sur 8 bits (uint8) peuvent prendre des valeurs de 0 à 255. Une échelle de couleurs peut aider à faire le lien entre ces valeurs et l'image affichée.

Tous les exercices de ce chapitre utilisent les imports suivants :

import imageio.v2 as imageio
import numpy as np
import matplotlib.pyplot as plt

Cette activité fait partie du cours

Analyse d'images biomédicales en Python

Voir le cours

Instructions de l’exercice

  • Chargez l'image "hand-xray.jpg" avec imageio.
  • Affichez le type de données (dtype), ainsi que l'intensité minimale (min()) et maximale (max()) de l'image.
  • Tracez l'image avec plt.imshow(). Définissez explicitement les valeurs minimale (0) et maximale (255) de la carte de couleurs à l'aide des arguments vmin et vmax.
  • Ajoutez une échelle de couleurs avec plt.colorbar(), puis affichez le graphique à l'aide de la fonction personnalisée format_and_render_plot(). Cela a été fait pour vous.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

# Load the hand radiograph
im = ____
print('Data type:', ____)
print('Min. value:', ____)
print('Max value:', ____)

# Plot the grayscale image
____
plt.colorbar()
format_and_render_plot()
Modifier et exécuter le code