Erosion et dilatation d’une image binaire matlab

L’érosion et la dilatation sont des opérations morphologiques couramment utilisées en traitement d’image pour modifier la forme des objets dans une image binaire. L’érosion consiste à remplacer chaque pixel d’un objet par le pixel le plus sombre de ses voisins immédiats, tandis que la dilatation consiste à remplacer chaque pixel par le pixel le plus clair de ses voisins immédiats. Ces opérations sont généralement effectuées avec un élément structurant, qui est une forme de petite taille utilisée pour déterminer les pixels à remplacer. Voici comment effectuer l’érosion et la dilatation d’une image binaire sous MATLAB :  
% Charger l'image binaire
I = imread('image.bmp');

% Créer un élément structurant de 3x3
se = strel('square', 3);

% Appliquer l'érosion à l'image
Ie = imerode(I, se);

% Appliquer la dilatation à l'image
Id = imdilate(I, se);

% Afficher l'image originale, l'image érodée et l'image dilatée
subplot(1,3,1), imshow(I), title('Original')
subplot(1,3,2), imshow(Ie), title('Erodée')
subplot(1,3,3), imshow(Id), title('Dilatée')
 

Méthodes de liste Python

En Python, les listes sont des structures de données qui permettent de stocker et de manipuler des séquences d’éléments. Les listes en Python sont similaires aux tableaux dans d’autres langages de programmation, mais elles ont la particularité d’être dynamiques et d’accepter des éléments de différents types.

Voici quelques-unes des méthodes couramment utilisées sur les listes en Python :

  • append()

    : ajoute un élément à la fin de la liste

  • insert()

    : insère un élément à un index spécifique dans la liste

  • extend()

    : ajoute plusieurs éléments à la fin de la liste en les étendant

  • remove()

    : supprime un élément de la liste en fonction de sa valeur

  • pop()

    : supprime un élément de la liste en fonction de son index (ou la dernière valeur par défaut)

  • index()

    : retourne l’index d’un élément dans la liste en fonction de sa valeur

  • count()

    : retourne le nombre d’occurrences d’un élément dans la liste

  • sort()

    : trie les éléments de la liste dans l’ordre croissant

  • reverse()

    : inverse l’ordre des éléments de la liste

 

 

 


# Créer une liste vide
ma_liste = []

# Ajouter un élément à la fin de la liste en utilisant la méthode append()
ma_liste.append(10)

# Ajouter plusieurs éléments à la fin de la liste en utilisant la méthode extend()
ma_liste.extend([20, 30, 40])

# Insérer un élément à un index spécifique en utilisant la méthode insert()
ma_liste.insert(1, 15)

# Supprimer un élément en utilisant la méthode remove()
ma_liste.remove(20)

# Trouver l'index d'un élément en utilisant la méthode index()
index = ma_liste.index(30)

# Compter le nombre d'occurrences d'un élément en utilisant la méthode count()
count = ma_liste.count(10)

# Trier une liste en utilisant la méthode sort()
ma_liste.sort()

# Inverser l'ordre des éléments dans une liste en utilisant la méthode reverse()
ma_liste.reverse()
 




# Créer une liste vide 
ma_liste = [] # Ajouter des éléments à la liste 
ma_liste.append('élément 1') 
ma_liste.append('élément 2')
 ma_liste.append('élément 3') 
# Insérer un élément à une position spécifique 
ma_liste.insert(1, 'élément 1.5') 
# Trier les éléments de la liste 
ma_liste.sort() 
# Supprimer un élément de la liste
 ma_liste.remove('élément 1') # Afficher la liste print(ma_liste)

 


 

Il existe bien d’autres méthodes pour les listes en Python, ces exemples sont simplement les plus couramment utilisés. Vous pouvez en apprendre plus sur les listes en Python en consultant la documentation officielle.

 

Supprimer un élément d’une liste python

Pour supprimer un élément d’une liste en Python, vous pouvez utiliser la méthode

remove()

de la liste. Voici un exemple:

 

# Créer une liste avec quelques éléments
ma_liste = ["un", "deux", "trois", "quatre", "cinq"]

# Supprimer l'élément "trois" de la liste
ma_liste.remove("trois")

# Afficher la liste après avoir supprimé l'élément
print(ma_liste)

Ce code imprimera la liste suivante:

["un", "deux", "quatre", "cinq"]

.

Notez que la méthode

remove()

ne fonctionne que si l’élément que vous souhaitez supprimer est présent dans la liste. Si vous essayez de supprimer un élément qui n’est pas dans la liste, vous obtiendrez une erreur. Par exemple:

ma_liste = ["un", "deux", "trois", "quatre", "cinq"]

# Essayer de supprimer l'élément "six"
ma_liste.remove("six")

Ce code générera une erreur de type

ValueError

, car l’élément “six” n’est pas dans la liste. Si vous voulez éviter cette erreur, vous pouvez vérifier si l’élément est dans la liste en utilisant l’instruction

if

avant de l’appeler la méthode

remove()

. Par exemple:

ma_liste = ["un", "deux", "trois", "quatre", "cinq"]

# Vérifier si "six" est dans la liste
if "six" in ma_liste:
    # Si c'est le cas, on peut l'appeler la méthode remove()
    ma_liste.remove("six")

Dans ce cas, la méthode

remove()

ne sera pas appelée, car l’élément “six” n’est pas dans la liste.

l est important de noter que si l’élément à supprimer n’existe pas dans la liste, cette méthode lèvera une exception

ValueError

. Vous pouvez donc vouloir vérifier si l’élément existe dans la liste avant d’essayer de le supprimer, pour éviter d’éventuelles erreurs.

En résumé, la méthode remove() permet de supprimer un élément d’une liste en Python en spécifiant simplement l’élément à supprimer. Cette méthode modifie la liste en place, sans retourner de valeur. Si vous souhaitez conserver une copie de la liste originale, vous devrez en faire une copie avant d’utiliser la méthode remove().

Ajouter des éléments à une liste Python

Il existe plusieurs façons d’ajouter des éléments à une liste en Python. La plus simple consiste à utiliser la méthode

append()

, qui permet d’ajouter un élément à la fin de la liste. Par exemple, si vous avez une liste

my_list

et que vous souhaitez ajouter l’élément

"foo"

à la fin de cette liste, vous pouvez utiliser la syntaxe suivante:

 

my_list = [1, 2, 3]
my_list.append("foo")

Après exécution de ces instructions,

my_list

sera égal à

[1, 2, 3, "foo"]

.

Vous pouvez également utiliser l’opérateur

+

pour concaténer deux listes et créer une nouvelle liste contenant tous les éléments des deux listes d’origine. Par exemple:

 

my_list = [1, 2, 3]
other_list = ["foo", "bar"]
combined_list = my_list + other_list

Après exécution de ces instructions,

combined_list

sera égal à

[1, 2, 3, "foo", "bar"]

.

Enfin, vous pouvez également utiliser la méthode

extend()

pour étendre une liste en lui ajoutant les éléments d’une autre liste. Par exemple:

 

my_list = [1, 2, 3]
other_list = ["foo", "bar"]
my_list.extend(other_list)

Après exécution de ces instructions,

my_list

sera égal à

[1, 2, 3, "foo", "bar"]

. La différence entre

extend()

et l’opérateur

+

est que la méthode

extend()

modifie la liste d’origine en place, tandis que l’opérateur

+

crée une nouvelle liste.

Indexation négative en Python

L’indexation négative en Python est une façon de faire référence à des éléments dans une liste en utilisant des nombres négatifs. Par exemple, si vous avez une liste my_list contenant cinq éléments, vous pouvez accéder au dernier élément de la liste en utilisant l’index -1 comme ceci:

 

last_element = my_list[-1]
second_to_last = my_list[-2]
third_to_last = my_list[-3]

Cela peut être utile lorsque vous voulez accéder rapidement à un élément en fin de liste sans avoir à connaître la longueur exacte de la liste. Vous pouvez également utiliser l’indexation négative pour accéder aux autres éléments de la liste en partant de la fin.

Et ainsi de suite. Gardez à l’esprit que, comme pour toute autre forme d’indexation en Python, l’indexation négative commence à 0 et non à 1. Cela signifie que l’index -1 fait référence au dernier élément de la liste, l’index -2 au second-dernier élément, et ainsi de suite.

Accéder aux éléments de la liste Python

Pour accéder à un élément d’une liste en Python, vous pouvez utiliser l’opérateur d’indexation. L’opérateur d’indexation permet de sélectionner un élément d’une liste en fonction de sa position dans la liste. Par exemple, si vous voulez accéder au premier élément d’une liste, vous pouvez utiliser l’index

0

comme ceci :

 

# déclarez une liste
liste = [1, 2, 3, 4, 5]

# accédez au premier élément de la liste en utilisant l'index 0
premier_element = liste[0]

# affichez le premier élément
print(premier_element)

Le code ci-dessus affichera la valeur

1

, qui est le premier élément de la liste.

Pour accéder à un élément qui se trouve à une position quelconque dans la liste, vous pouvez utiliser l’index de l’élément que vous souhaitez récupérer. Par exemple, si vous souhaitez accéder au troisième élément de la liste, vous pouvez utiliser l’index

2

(car les index des éléments d’une liste en Python commencent à

0

) comme ceci :

 

# déclarez une liste
liste = [1, 2, 3, 4, 5]

# accédez au troisième élément de la liste en utilisant l'index 2
troisieme_element = liste[2]

# affichez le troisième élément
print(troisieme_element)

 

Liste Python

Une liste Python est une structure de données qui permet de stocker une collection d’éléments dans un seul endroit. Vous pouvez considérer une liste comme un conteneur qui contient une séquence d’éléments, qui peuvent être de n’importe quel type de données, y compris des nombres, des chaînes de caractères et d’autres listes.

Voici un exemple de création d’une liste en Python :

 

ma_liste = [1, 2, 3, 4]

Cela crée une liste appelée

ma_liste

qui contient les éléments

1

,

2

,

3

et

4

. Vous pouvez accéder à des éléments individuels de la liste en utilisant leur index, qui est la position de l’élément dans la liste. Par exemple, pour accéder au premier élément de la liste, vous utiliseriez la syntaxe suivante :

 

premier_element = ma_liste[0]

Cela assignerait la valeur

1

à la variable

premier_element

. Notez que en Python, l’index d’une liste commence à 0, donc le premier élément a l’index 0, le deuxième élément a l’index 1, et ainsi de suite.

Les listes sont un type de données puissant et polyvalent en Python, et elles sont utilisées dans de nombreux types de programmes différents. Vous pouvez les utiliser pour stocker une collection de valeurs, comme une liste de nombres, une liste de noms ou une liste de listes. Vous pouvez également les utiliser pour effectuer diverses opérations, comme ajouter, supprimer et trier des éléments dans la liste. Pour plus d’informations sur les listes en Python, vous pouvez consulter la documentation officielle de Python.

 

Voici comment créer une liste en Python :

 

# créez une liste vide
liste = []

# ajoutez des éléments à la liste en utilisant la méthode append()
liste.append(1)
liste.append(2)
liste.append(3)

# vous pouvez également utiliser l'opérateur d'affectation pour ajouter des éléments à la liste
liste += [4, 5]

# affichez la liste
print(liste)

 

Lire une image avec OpenCV en Python

Pour lire une image avec OpenCV en Python, vous pouvez utiliser la fonction

cv2.imread()

. Cette fonction prend en argument le chemin vers l’image que vous souhaitez lire, ainsi que l’option de lecture (si l’image est en niveaux de gris ou en couleur). Voici un exemple de code pour lire une image en couleur avec OpenCV en Python :

 

import cv2

# Chemin vers l'image
image_path = "chemin/vers/image.jpg"

# Lire l'image en couleur
image = cv2.imread(image_path, cv2.IMREAD_COLOR)

Si vous souhaitez lire l’image en niveaux de gris, vous pouvez utiliser l’option

cv2.IMREAD_GRAYSCALE

au lieu de

cv2.IMREAD_COLOR

.

Une fois que vous avez lu l’image avec OpenCV, vous pouvez l’afficher en utilisant la fonction

cv2.imshow()

et attendre que l’utilisateur appuie sur une touche pour fermer l’image en utilisant la fonction

cv2.waitKey()

. Voici un exemple de code pour afficher une image lue avec OpenCV en Python :

 

import cv2

# Chemin vers l'image
image_path = "chemin/vers/image.jpg"

# Lire l'image en couleur
image = cv2.imread(image_path, cv2.IMREAD_COLOR)

# Afficher l'image
cv2.imshow("Image", image)

# Attendre que l'utilisateur appuie sur une touche pour fermer l'image
cv2.waitKey(0)

Dans ce code, nous utilisons d’abord la fonction

cv2.imread()

pour lire l’image à partir du chemin spécifié. Nous spécifions l’option

cv2.IMREAD_COLOR

pour indiquer que nous voulons lire l’image en couleur.

Ensuite, nous utilisons la fonction

cv2.imshow()

pour afficher l’image lue. Nous lui donnons un nom d’affichage (ici, “Image”) et l’image elle-même en tant qu’argument.

Enfin, nous utilisons la fonction

cv2.waitKey()

pour attendre que l’utilisateur appuie sur une touche du clavier pour fermer l’image.

Notez que vous devrez peut-être importer la bibliothèque Numpy pour traiter les données de l’image avec OpenCV. Vous pouvez le faire en ajoutant l’instruction

import numpy as np

au début de votre script Python.

 

 

Manipulation de listes avec Python

En python, Il existe différentes manières d’accéder aux éléments d’une liste.

Pour manipuler des listes en Python, vous pouvez utiliser différentes méthodes et opérateurs.

Voici quelques exemples de ce que vous pouvez faire avec des listes en Python :

  • Créer une liste en utilisant la syntaxe
    liste = [élément1, élément2, ...]
  • Ajouter un élément à la fin d’une liste en utilisant la méthode
    liste.append(élément)
  • Insérer un élément à un index spécifique dans une liste en utilisant la méthode
    liste.insert(index, élément)
  • Modifier un élément d’une liste en utilisant la syntaxe
    liste[index] = nouvel élément
  • Supprimer un élément d’une liste en utilisant la méthode
    liste.remove(élément)

    ou la méthode

    del liste[index]
  • Tri d’une liste en utilisant la méthode
    liste.sort()

Il existe de nombreuses autres méthodes et opérateurs pour manipuler des listes en Python. Vous pouvez en apprendre plus dans la documentation officielle de Python (https://www.python.org/doc/)

Index de la liste

Pour accéder à un élément d’une liste, nous pouvons utiliser l’opérateur d’index []. En Python, les index commencent à 0. Ainsi, une liste de 5 éléments aura un index de 0 à 4. 

Essayer d’accéder à des index autres que ceux-ci déclenchera un IndexError. L’indice doit être un entier. Nous ne pouvons pas utiliser float ou d’autres types, cela se traduira par TypeError.

Les listes imbriquées sont accessibles à l’aide de l’indexation imbriquée.

 

– Le premier terme étant mylist[0], mylist[1] est le deuxième élément.

– mylist[2:] renvoie la liste de mylist[2] jusqu’à la fin.

– mylist[:2] renvoie la liste du début jusqu’à mylist[1].

– mylist[2:4] renvoie la liste de mylist[2] jusqu’à mylist[3]

Pour accéder à un élément d’une liste, il faut utiliser les crochets et préciser l’index de l’élément. On peut utiliser un index négatif. Cela signifie que l’on souhaite partir de la fin de la liste. Ainsi le dernier élément d’une liste est aussi accessible avec l’index -1.

La façon la plus courante de parcourir les éléments d’une liste est avec une boucle for. La syntaxe est la même que pour les chaînes de caractères :

 

On utilise la fonction len() pour compter le nombre d’éléments dans la liste en Python. Les listes en Python peuvent stocker plusieurs éléments de différents types de données. La fonction intégrée len() en Python renvoie le nombre total d’éléments dans une liste, sans aucun égard au type d’éléments qu’elle contient.

Comment parcourir une liste en Python à l’envers ?

Si on veut parcourir une liste dans le sens inverse on peut utiliser  la fonction reversed() pour parcourir une liste dans l’ordre inverse en Python. Nous pouvons parcourir une liste en Python dans l’ordre inverse en utilisant la fonction intégrée reversed() disponible. La fonction reversed() renvoie l’itération inversée de la séquence fournie en entrée.

Création de listes en Python

Contrairement à d’autres langages, Python propose des listes et non des tableaux. Cela a certains avantages :

– pas besoin de déclaration une taille de tableaux

– gestion dynamique de la liste

– des listes hétérogènes de différents types

– des opérations sur les listes (programmation objet).

Création de listes à une dimension

On peut tout d’abord créer une liste vide puis lui ajouter des éléments

[pastacode lang=”python” manual=”liste1%20%3D%20%5B%5D%0Aliste1.append(1)%0Aliste1.append(%E2%80%9Ca%E2%80%9D)%0Aprint(liste1)%0A” message=”” highlight=”” provider=”manual”/]

Pour créer des listes plus longues, on peut utiliser les compréhensions de listes

[pastacode lang=”python” manual=”liste%20%3D%20%5Bi%20for%20i%20in%20range(1%2C10)%5D%C2%A0″ message=”” highlight=”” provider=”manual”/]

Ensuite, on peut créer une liste par copie de liste

[pastacode lang=”python” manual=”liste%20%3D%20%5Bi%20for%20i%20in%20range(1%2C10)%5D%0Aco%3Dliste.copy()%20%23%20copie%20de%20la%20liste%0A%0A” message=”” highlight=”” provider=”manual”/]

On peut aussi utiliser la syntaxe liste[:] au lieu de liste.copy()

[pastacode lang=”python” manual=”liste%20%3D%20%5Bi%20for%20i%20in%20range(1%2C10)%5D%0Aco%3Dliste.copy()%0Aco1%20%3D%20liste%5B%3A%5D%0A” message=”” highlight=”” provider=”manual”/]

Avec les éléments vus plus haut, on peut maintenant facilement créer toutes sortes de listes . Voici quelques exemples

[pastacode lang=”python” manual=”liste1%3D%20%5Bi%20for%20i%20in%20range(10)%5D%20%23%20Liste%20des%20%C3%A9l%C3%A9ments%20allant%20de%200%20%C3%A0%209%0Aliste2%20%3D%20%5Bi**2%20for%20i%20in%20range(10)%5D%20%23%20Liste%20du%20carr%C3%A9%20des%20%C3%A9l%C3%A9ments%20de%200%20%C3%A0%209%0Aliste3%20%3D%20%5B2*x%2B3%20for%20x%20in%20range(10)%5D%20%23%20Liste%20des%20%C3%A9l%C3%A9ments%20prennant%20la%20valeur%20de%20la%20fonction%20affine%202x%20%2B3%20de%20chanque%20%C3%A9l%C3%A9m%C3%A9nt%20de%200%20%C3%A0%209%0A%0Aliste4%20%3D%20%5B%20i%20for%20i%20in%20range(10)%20if%20i%252%3D%3D0%5D%20%23%20Liste%20contenant%20les%20valeurs%20paires%20entre%200%20%C3%A0%209%0A%0Aliste5%20%3D%5B%20i%20for%20i%20in%20range(10)%20if%20i%252%3D%3D1%5D%20%23%20Liste%20contenant%20les%20valeurs%20impairs%20entre%200%20%C3%A0%209%0Aliste6%20%3D%5B%20i%20for%20i%20in%20range(20)%20if%20i%253%3D%3D0%5D%20%23%20Liste%20des%20multiples%20de%203%20entre%200%20et%2019%0A%0A%22%22%22%20%0AOn%20a%20en%20sortie%20sur%20l%E2%80%99%C3%A9cran%20les%20valeurs%20suivantes%3A%0Aliste1%20%3A%20%5B0%2C%201%2C%202%2C%203%2C%204%2C%205%2C%206%2C%207%2C%208%2C%209%5D%0A—————————————%0Aliste2%20%3A%20%5B0%2C%201%2C%204%2C%209%2C%2016%2C%2025%2C%2036%2C%2049%2C%2064%2C%2081%5D%0A—————————————%0Aliste3%20%3A%20%5B3%2C%205%2C%207%2C%209%2C%2011%2C%2013%2C%2015%2C%2017%2C%2019%2C%2021%5D%0A—————————————%0Aliste4%20%3A%20%5B0%2C%202%2C%204%2C%206%2C%208%5D%0A—————————————%0Aliste5%20%3A%20%5B1%2C%203%2C%205%2C%207%2C%209%5D%0A—————————————%0Aliste6%20%3A%20%5B0%2C%203%2C%206%2C%209%2C%2012%2C%2015%2C%2018%5D%0A%0A%22%22%22″ message=”” highlight=”” provider=”manual”/]

Pour savoir comment calculer la somme des éléments dans une liste Somme des éléments d’une liste Python


1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21