• Aucun résultat trouvé

Détection de regards de visite sur des images à THRS par une méthode d'apprentissage

N/A
N/A
Protected

Academic year: 2022

Partager "Détection de regards de visite sur des images à THRS par une méthode d'apprentissage"

Copied!
35
0
0

Texte intégral

(1)

Détection de regards de visite sur des images à THRS par une méthode d'apprentissage

COMMANDRE Benjamin, EN-NEJJARY Driss, PIBRE Lionel, CHAUMONT Marc, SUBSOL Gérard, DERUELLE Laurent, DERRAS Mustapha,

DELENNE Carole, CHAHINIAN Nanée

Univ. Montpellier - HydroSciences Montpellier Equipe INRIA Lemon

Lemon

(2)

Projet Cart’Eaux: chercheur d’avenir 2015 2

Récolte et fusion de données hétérogènes pour la cartographie et la modélisation des écoulements dans un réseau d’assainissement urbain.

Nanée Chahinian 1,2 ; Marc Chaumont 3,4 Carole Delenne 1,5 ; Mustapha Derras 6

Laurent Deruelle 6 ; Gérard Subsol 3,7 +

Jean-Stephane Bailly (LISAH);

Sandra Bringay (LIRMM);

Maguelonne Teisseire et Mathieu Roche (TETIS) +

Benjamin Commandré

1

5 2

6 3

4 7

PROJET COFINANCE PAR LE FONDS EUROPEEN DE DEVELOPPEMENT REGIONAL

(3)

Projet Cart’Eaux

Objectifs:

‣ Détection des plaques d’égout sur les images aériennes

‣ Fusion avec d’autres données géographiques (plan, réseau routier…)

‣ Fouille de données pour créer une table attributaire

‣ Cartographies probables du réseau

‣ Simulations hydrauliques (avec analyse de sensibilité aux paramètres)

3

(4)

Données

2 images à 5cm de résolution spatiale

Gigean

‣ Prades-Le-Lez

4

N

Plaque Grille N

(5)

Détection des plaques d’égout

Difficultés:

‣ 80cm seulement => 16 pixels maximum à une résolution de 5cm.

5

40 pixels

(6)

Détection des plaques d’égout

Difficultés:

‣ 80cm seulement => 16 pixels maximum à une résolution de 5cm.

5

40 pixels

‣ Généralement très peu de contraste

(7)

Détection des plaques d’égout

Difficultés:

‣ 80cm seulement => 16 pixels maximum à une résolution de 5cm.

5

40 pixels

‣ Généralement très peu de contraste

‣ De nombreux autres objets circulaires sur l’image.

Ombre de

lampadaire Cheminée ??? Table de

jardin Bouée ?? Parabole?

(8)

Filtre circulaire 6

Calcul sur fenêtre glissante puis seuillage:

‣ Méthode simple et directe (pas d’apprentissage).

‣ Très long (40h pour une image 20000x20000 soit 1km2)

‣ Résultats mitigés: Gigean, jusqu’à 42 plaques sur 100 détectées mais autant faux positifs !

r

2

r r

1

R

1

R

2

S

13

S

11

S

15

S

25

S

16

S

26

S

17

S

27

S

18

S

28

S

21

S

22

S

23

S

24

S

14

S

12

Indices basés sur les distributions radiométriques (nécessite une image en niveaux de gris):

‣ S similitude entre les régions R1 et R2

‣ S8: maximum des similitudes entre R1 et les sous-régions de R2 (évite la détection de linéaires)

‣ U1 et U2: uniformité au sein de chaque région = min de la similitude entre une sous région et les autres.

Résultat = (1-max(S,S8))*U1*U2

[Bartoli et al. 2015, JURSE Lausanne]

(9)

Deep Learning (apprentissage)

Nécessite une base d’apprentissage

‣ Prades-Le-Lez: image RVB, 5cm de résolution spatiale

‣ 605 plaques disponibles pour l’entrainement => augmentation de la base de données (bibliothèque KERAS)

• Rotation

• Translation

• Miroir

‣ Mode de remplissage: réflexion

‣ => 20450 images « plaques » + 509506 images « autres »

7

(10)

Deep Learning (apprentissage)

Nécessite une base d’apprentissage

‣ Prades-Le-Lez: image RVB, 5cm de résolution spatiale

‣ 605 plaques disponibles pour l’entrainement => augmentation de la base de données (bibliothèque KERAS)

• Rotation

• Translation

• Miroir

‣ Mode de remplissage: réflexion

‣ => 20450 images « plaques » + 509506 images « autres »

7

(11)

Convolutional Neural Network

AlexNet + adaptation des paramètres aux petits objets

8

Input Thumbnail

40x40

Convolution 1 96 (7x7), s=2, p=0

Convolution 2 256 (5x5), s=1, p=0

Convolution 3 256 (5x5), s=1, p=0

Convolution 4 256 (5x5), s=1, p=0

Convolution 5 256 (3x3), s=1, p=0

Max Pooling (3x3), s=1, p=0 ReLU Norm

Max Pooling (3x3), s=1, p=0 ReLU Norm

Max Pooling (3x3), s=1, p=0 ReLU Norm

Max Pooling (3x3), s=1, p=0 ReLU Norm

Max Pooling (3x3), s=1, p=0 ReLU Norm

Feature extraction

Classifi cation

Fully connected

Softmax

Manhole Other

(12)

Convolutional Neural Network

AlexNet + adaptation des paramètres aux petits objets

8

Input Thumbnail

40x40

Convolution 1 96 (7x7), s=2, p=0

Convolution 2 256 (5x5), s=1, p=0

Convolution 3 256 (5x5), s=1, p=0

Convolution 4 256 (5x5), s=1, p=0

Convolution 5 256 (3x3), s=1, p=0

Max Pooling (3x3), s=1, p=0 ReLU Norm

Max Pooling (3x3), s=1, p=0 ReLU Norm

Max Pooling (3x3), s=1, p=0 ReLU Norm

Max Pooling (3x3), s=1, p=0 ReLU Norm

Max Pooling (3x3), s=1, p=0 ReLU Norm

Feature extraction

Classifi cation

Fully connected

Softmax

Manhole Other

(13)

Convolutional Neural Network

AlexNet + adaptation des paramètres aux petits objets

8

Input Thumbnail

40x40

Convolution 1 96 (7x7), s=2, p=0

Convolution 2 256 (5x5), s=1, p=0

Convolution 3 256 (5x5), s=1, p=0

Convolution 4 256 (5x5), s=1, p=0

Convolution 5 256 (3x3), s=1, p=0

Max Pooling (3x3), s=1, p=0 ReLU Norm

Max Pooling (3x3), s=1, p=0 ReLU Norm

Max Pooling (3x3), s=1, p=0 ReLU Norm

Max Pooling (3x3), s=1, p=0 ReLU Norm

Max Pooling (3x3), s=1, p=0 ReLU Norm

Feature extraction

Classifi cation

Fully connected

Softmax

Manhole Other

5 couches avec différents paramètres

(14)

Convolutional Neural Network

AlexNet + adaptation des paramètres aux petits objets

8

Input Thumbnail

40x40

Convolution 1 96 (7x7), s=2, p=0

Convolution 2 256 (5x5), s=1, p=0

Convolution 3 256 (5x5), s=1, p=0

Convolution 4 256 (5x5), s=1, p=0

Convolution 5 256 (3x3), s=1, p=0

Max Pooling (3x3), s=1, p=0 ReLU Norm

Max Pooling (3x3), s=1, p=0 ReLU Norm

Max Pooling (3x3), s=1, p=0 ReLU Norm

Max Pooling (3x3), s=1, p=0 ReLU Norm

Max Pooling (3x3), s=1, p=0 ReLU Norm

Feature extraction

Classifi cation

Fully connected

Softmax

Manhole Other

Initialisation aléatoire des valeurs des noyaux

de convolution

5 couches avec différents paramètres

(15)

Convolutional Neural Network

AlexNet + adaptation des paramètres aux petits objets

8

Input Thumbnail

40x40

Convolution 1 96 (7x7), s=2, p=0

Convolution 2 256 (5x5), s=1, p=0

Convolution 3 256 (5x5), s=1, p=0

Convolution 4 256 (5x5), s=1, p=0

Convolution 5 256 (3x3), s=1, p=0

Max Pooling (3x3), s=1, p=0 ReLU Norm

Max Pooling (3x3), s=1, p=0 ReLU Norm

Max Pooling (3x3), s=1, p=0 ReLU Norm

Max Pooling (3x3), s=1, p=0 ReLU Norm

Max Pooling (3x3), s=1, p=0 ReLU Norm

Feature extraction

Classifi cation

Fully connected

Softmax

Manhole Other

Initialisation aléatoire des valeurs des noyaux

de convolution

Sortie de la couche 1

5 couches avec différents paramètres

(16)

Convolutional Neural Network

AlexNet + adaptation des paramètres aux petits objets

8

Input Thumbnail

40x40

Convolution 1 96 (7x7), s=2, p=0

Convolution 2 256 (5x5), s=1, p=0

Convolution 3 256 (5x5), s=1, p=0

Convolution 4 256 (5x5), s=1, p=0

Convolution 5 256 (3x3), s=1, p=0

Max Pooling (3x3), s=1, p=0 ReLU Norm

Max Pooling (3x3), s=1, p=0 ReLU Norm

Max Pooling (3x3), s=1, p=0 ReLU Norm

Max Pooling (3x3), s=1, p=0 ReLU Norm

Max Pooling (3x3), s=1, p=0 ReLU Norm

Feature extraction

Classifi cation

Fully connected

Softmax

Manhole Other

Initialisation aléatoire des valeurs des noyaux

de convolution

Sortie de la couche 1

5 couches avec différents paramètres

Fusion des résultats de chaque couche

Comparaison avec la vérité

(17)

Convolutional Neural Network

AlexNet + adaptation des paramètres aux petits objets

8

Input Thumbnail

40x40

Convolution 1 96 (7x7), s=2, p=0

Convolution 2 256 (5x5), s=1, p=0

Convolution 3 256 (5x5), s=1, p=0

Convolution 4 256 (5x5), s=1, p=0

Convolution 5 256 (3x3), s=1, p=0

Max Pooling (3x3), s=1, p=0 ReLU Norm

Max Pooling (3x3), s=1, p=0 ReLU Norm

Max Pooling (3x3), s=1, p=0 ReLU Norm

Max Pooling (3x3), s=1, p=0 ReLU Norm

Max Pooling (3x3), s=1, p=0 ReLU Norm

Feature extraction

Classifi cation

Fully connected

Softmax

Manhole Other

Initialisation aléatoire des valeurs des noyaux

de convolution

Sortie de la couche 1

5 couches avec différents paramètres

Fusion des résultats de chaque couche Comparaison avec la vérité

Modification

des valeurs des noyaux

de convolution

(18)

Convolutional Neural Network

AlexNet + adaptation des paramètres aux petits objets

8

Input Thumbnail

40x40

Convolution 1 96 (7x7), s=2, p=0

Convolution 2 256 (5x5), s=1, p=0

Convolution 3 256 (5x5), s=1, p=0

Convolution 4 256 (5x5), s=1, p=0

Convolution 5 256 (3x3), s=1, p=0

Max Pooling (3x3), s=1, p=0 ReLU Norm

Max Pooling (3x3), s=1, p=0 ReLU Norm

Max Pooling (3x3), s=1, p=0 ReLU Norm

Max Pooling (3x3), s=1, p=0 ReLU Norm

Max Pooling (3x3), s=1, p=0 ReLU Norm

Feature extraction

Classifi cation

Fully connected

Softmax

Manhole Other

Initialisation aléatoire des valeurs des noyaux

de convolution

Sortie de la couche 1

5 couches avec différents paramètres

Fusion des résultats de chaque couche Comparaison avec la vérité

Modification

des valeurs des noyaux de convolution

Apprentissage

(19)

Convolutional Neural Network

AlexNet + adaptation des paramètres aux petits objets

8

Input Thumbnail

40x40

Convolution 1 96 (7x7), s=2, p=0

Convolution 2 256 (5x5), s=1, p=0

Convolution 3 256 (5x5), s=1, p=0

Convolution 4 256 (5x5), s=1, p=0

Convolution 5 256 (3x3), s=1, p=0

Max Pooling (3x3), s=1, p=0 ReLU Norm

Max Pooling (3x3), s=1, p=0 ReLU Norm

Max Pooling (3x3), s=1, p=0 ReLU Norm

Max Pooling (3x3), s=1, p=0 ReLU Norm

Max Pooling (3x3), s=1, p=0 ReLU Norm

Feature extraction

Classifi cation

Fully connected

Softmax

Manhole Other

Initialisation aléatoire des valeurs des noyaux

de convolution

Sortie de la couche 1

5 couches avec différents paramètres

Fusion des résultats de chaque couche Comparaison avec la vérité

Modification

des valeurs des noyaux de convolution

Proba d’appartenance à la classe plaque Classification (seuillage)

Apprentissage

(20)

Deep Learning: validation

Méthode:

‣ Fenêtre glissante (pas de 4 pixels) sur toute l’image

‣ CNN => probabilité d’appartenance à la classe « plaque »

‣ Seuil sur la probabilité => classification

9

Input Thumbnail

40x40

Convolution 1 96 (7x7), s=2, p=0

Convolution 2 256 (5x5), s=1, p=0

Convolution 3 256 (5x5), s=1, p=0

Convolution 4 256 (5x5), s=1, p=0

Convolution 5 256 (3x3), s=1, p=0

Max Pooling (3x3), s=1, p=0 ReLU Norm

Max Pooling (3x3), s=1, p=0 ReLU Norm

Max Pooling (3x3), s=1, p=0 ReLU Norm

Max Pooling (3x3), s=1, p=0 ReLU Norm

Max Pooling (3x3), s=1, p=0 ReLU Norm

Feature extraction

Classifi cation

Fully connected

Softmax

Manhole Other

(21)

Deep Learning: validation

Méthode:

‣ Fenêtre glissante (pas de 4 pixels) sur toute l’image

‣ CNN => probabilité d’appartenance à la classe « plaque »

‣ Seuil sur la probabilité => classification

9

Input Thumbnail

40x40

Convolution 1 96 (7x7), s=2, p=0

Convolution 2 256 (5x5), s=1, p=0

Convolution 3 256 (5x5), s=1, p=0

Convolution 4 256 (5x5), s=1, p=0

Convolution 5 256 (3x3), s=1, p=0

Max Pooling (3x3), s=1, p=0 ReLU Norm

Max Pooling (3x3), s=1, p=0 ReLU Norm

Max Pooling (3x3), s=1, p=0 ReLU Norm

Max Pooling (3x3), s=1, p=0 ReLU Norm

Max Pooling (3x3), s=1, p=0 ReLU Norm

Feature extraction

Classifi cation

Fully connected

Softmax

Manhole Other

a 0 = area(B \ B t )

area(B [ B t ) B

Détection

B t

Vérité

Comparaison avec la vérité:

(22)

Deep Learning: validation

Méthode:

‣ Fenêtre glissante (pas de 4 pixels) sur toute l’image

‣ CNN => probabilité d’appartenance à la classe « plaque »

‣ Seuil sur la probabilité => classification

9

Input Thumbnail

40x40

Convolution 1 96 (7x7), s=2, p=0

Convolution 2 256 (5x5), s=1, p=0

Convolution 3 256 (5x5), s=1, p=0

Convolution 4 256 (5x5), s=1, p=0

Convolution 5 256 (3x3), s=1, p=0

Max Pooling (3x3), s=1, p=0 ReLU Norm

Max Pooling (3x3), s=1, p=0 ReLU Norm

Max Pooling (3x3), s=1, p=0 ReLU Norm

Max Pooling (3x3), s=1, p=0 ReLU Norm

Max Pooling (3x3), s=1, p=0 ReLU Norm

Feature extraction

Classifi cation

Fully connected

Softmax

Manhole Other

a 0 = area(B \ B t )

area(B [ B t ) B

Détection

B t

Vérité

Comparaison avec la vérité:

Precision = TP

TP + FP Recall = TP TP + FN

Définition précision / rappel:

‣ TP = True Positive = plaque correctement détectée: a 0 >50%

‣ FP = False Positive = imagette incorrectement classée comme « plaque »

‣ FN = False Negative = plaque non détectée

(23)

Deep Learning: validation

Méthode:

‣ Fenêtre glissante (pas de 4 pixels) sur toute l’image

‣ CNN => probabilité d’appartenance à la classe « plaque »

‣ Seuil sur la probabilité => classification

9

Input Thumbnail

40x40

Convolution 1 96 (7x7), s=2, p=0

Convolution 2 256 (5x5), s=1, p=0

Convolution 3 256 (5x5), s=1, p=0

Convolution 4 256 (5x5), s=1, p=0

Convolution 5 256 (3x3), s=1, p=0

Max Pooling (3x3), s=1, p=0 ReLU Norm

Max Pooling (3x3), s=1, p=0 ReLU Norm

Max Pooling (3x3), s=1, p=0 ReLU Norm

Max Pooling (3x3), s=1, p=0 ReLU Norm

Max Pooling (3x3), s=1, p=0 ReLU Norm

Feature extraction

Classifi cation

Fully connected

Softmax

Manhole Other

Total détecté Total vrai

a 0 = area(B \ B t )

area(B [ B t ) B

Détection

B t

Vérité

Comparaison avec la vérité:

Precision = TP

TP + FP Recall = TP TP + FN

Définition précision / rappel:

‣ TP = True Positive = plaque correctement détectée: a 0 >50%

‣ FP = False Positive = imagette incorrectement classée comme « plaque »

‣ FN = False Negative = plaque non détectée

(24)

Deep Learning: validation

Validation:

‣ Gigean: 100 plaques - image RVB acquise avec le même capteur, même résolution

Courbes ROC:

‣ Précision en fonction du rappel pour différents seuils d’acceptation

10

Différentes

améliorations

du réseau

(25)

Analyse des Résultats

Meilleurs taux de détection possible pour un seuil de 0.26

‣ Rappel = 60% — Précision = 47%

Beaucoup de faux positifs:

‣ Certaines plaques ne sont pas dans la base de données (=> autre réseau? Anciennes ou nouvelles plaques?)

‣ Tâches sur le sol 


=> améliorer le contraste?


=> regrouper les détections trop proches?

‣ Beaucoup de Faux en dehors des routes

• Filtre sur les routes => Rappel = 54% — Précision = 70%

11

(26)

Analyse des Résultats

Meilleurs taux de détection possible pour un seuil de 0.26

‣ Rappel = 60% — Précision = 47%

Beaucoup de faux positifs:

‣ Certaines plaques ne sont pas dans la base de données (=> autre réseau? Anciennes ou nouvelles plaques?)

‣ Tâches sur le sol 


=> améliorer le contraste?


=> regrouper les détections trop proches?

‣ Beaucoup de Faux en dehors des routes

• Filtre sur les routes => Rappel = 54% — Précision = 70%

11

(27)

Analyse des Résultats

Meilleurs taux de détection possible pour un seuil de 0.26

‣ Rappel = 60% — Précision = 47%

Beaucoup de faux positifs:

‣ Certaines plaques ne sont pas dans la base de données (=> autre réseau? Anciennes ou nouvelles plaques?)

‣ Tâches sur le sol 


=> améliorer le contraste?


=> regrouper les détections trop proches?

‣ Beaucoup de Faux en dehors des routes

• Filtre sur les routes => Rappel = 54% — Précision = 70%

11

(28)

Analyse des Résultats

Meilleurs taux de détection possible pour un seuil de 0.26

‣ Rappel = 60% — Précision = 47%

Beaucoup de faux positifs:

‣ Certaines plaques ne sont pas dans la base de données (=> autre réseau? Anciennes ou nouvelles plaques?)

‣ Tâches sur le sol 


=> améliorer le contraste?


=> regrouper les détections trop proches?

‣ Beaucoup de Faux en dehors des routes

• Filtre sur les routes => Rappel = 54% — Précision = 70%

11

(29)

Analyse des Résultats

Meilleurs taux de détection possible pour un seuil de 0.26

‣ Rappel = 60% — Précision = 47%

Beaucoup de faux positifs:

‣ Certaines plaques ne sont pas dans la base de données (=> autre réseau? Anciennes ou nouvelles plaques?)

‣ Tâches sur le sol 


=> améliorer le contraste?


=> regrouper les détections trop proches?

‣ Beaucoup de Faux en dehors des routes

• Filtre sur les routes => Rappel = 54% — Précision = 70%

11

(30)

Conclusion et perspectives

60% de plaques détectées sur une image à 5cm

‣ Mieux que les relevés terrain effectués par les entreprises (1 plaque sur 3)

Mais au moins 25% de faux positifs:

‣ Utiliser l’information des routes (ou prétraitement d’image) pour accélérer les calculs et améliorer les résultats

‣ Associer un indice de confiance à la localisation des plaques (utile lors de la cartographie)

12

Fin de Cart’Eaux (fin 2018)

‣ Validation sur des images de Poitier (7,5cm de résolution)

‣ Mise en ligne d’un démonstrateur de la chaine complète (détection, cartographie, fouille de texte)

‣ Ajout d’une couche d’information issue du filtre géométrique dans l’apprentissage

‣ Projet MéDo de fouille de données et analyse de texte

(31)

Conclusion et perspectives

60% de plaques détectées sur une image à 5cm

‣ Mieux que les relevés terrain effectués par les entreprises (1 plaque sur 3)

Mais au moins 25% de faux positifs:

‣ Utiliser l’information des routes (ou prétraitement d’image) pour accélérer les calculs et améliorer les résultats

‣ Associer un indice de confiance à la localisation des plaques (utile lors de la cartographie)

12

Fin de Cart’Eaux (fin 2018)

‣ Validation sur des images de Poitier (7,5cm de résolution)

‣ Mise en ligne d’un démonstrateur de la chaine complète (détection, cartographie, fouille de texte)

‣ Ajout d’une couche d’information issue du filtre géométrique dans l’apprentissage

‣ Projet MéDo de fouille de données et analyse de texte

Plaques

Autres

(32)

Conclusion et perspectives

60% de plaques détectées sur une image à 5cm

‣ Mieux que les relevés terrain effectués par les entreprises (1 plaque sur 3)

Mais au moins 25% de faux positifs:

‣ Utiliser l’information des routes (ou prétraitement d’image) pour accélérer les calculs et améliorer les résultats

‣ Associer un indice de confiance à la localisation des plaques (utile lors de la cartographie)

12

Fin de Cart’Eaux (fin 2018)

‣ Validation sur des images de Poitier (7,5cm de résolution)

‣ Mise en ligne d’un démonstrateur de la chaine complète (détection, cartographie, fouille de texte)

‣ Ajout d’une couche d’information issue du filtre géométrique dans l’apprentissage

‣ Projet MéDo de fouille de données et analyse de texte

Plaques

Autres

(33)

Pour aller plus loin…

Distinction plaques / avaloirs Détection des fossés …

13

(34)

Pour aller plus loin…

Distinction plaques / avaloirs Détection des fossés …

13

(35)

Détection de regards de visite sur des images à THRS par une méthode d'apprentissage

COMMANDRE Benjamin, EN-NEJJARY Driss, PIBRE Lionel, CHAUMONT Marc, SUBSOL Gérard, DERUELLE Laurent, DERRAS Mustapha,

DELENNE Carole, CHAHINIAN Nanée

Univ. Montpellier - HydroSciences Montpellier Equipe INRIA Lemon

Lemon

Références

Documents relatifs

Une technique de réduction de modèles est alors proposée pour diminuer ces temps de calculs tout en conservant les propriétés de convergence de la méthode de Newton d’ordre

 Définition : fracture extra-articulaire avec zone de comminution, fracture articulaire, fracture sur os porotique..  Toutes les fractures du sujet « âgé »

Limites de convergence – formation d’une chaîne volcanique... Subduction sous un plaque continentale – la cordillère des Andes

L’archive ouverte pluridisciplinaire HAL, est destinée au dépôt et à la diffusion de documents scientifiques de niveau recherche, publiés ou non, émanant des

Pour le modèle tridimensionnel et pour celui de Reissner nous allons éta- blir les conditions d’intégrabilité des champs de déformations (ordinaires ou généralisées), d’une

la surface moyenne déformée) ce qui conduit au modèle classique généralement associé au nom de Kirchhoff (mais qui doit également beaucoup aux scientifiques français du

Georges Cailletaud (Centre des Matériaux/UMR 7633 ) Plaques 22 mai 2006 2 / 46... 1 Cinématique, plaque épaisse

Résumé — L’objectif de cet article est de présenter et d’évaluer la méthode CGSM (Certain Generalized Stresses Method) pour prendre en compte la