Pré-traitment de l'information
Les bandes spectrales présente par nature un bruit important associer au capteur CCD, ce qui pose des soucis lors de la normalisation. Pour palier à cette effet
- L'image de la déviation standard entre toutes les bandes
- Le gradient par l'utilisation d'un filtre de Sharr sur
noté - Les valeurs propres maximum de la matrice Hessien de
noté - Les valeurs propres minimales de la matrice Hessien de
noté - Le laplacien de
noté
|
|
|
|
|
En effet, ces 5 transformations offrent d'une part une information importante sur le mélange spectral grâce à la déviation standard. Le filtre de Sharr et les valeurs propres maximum donne une information spatiale importante sur la rupture des gradients, donc sur la limite extérieure des objets, ce qui aidera probablement a la convergence. Les valeurs propres minimum, aussi appeler ridge, quant à elle semble détecté facilement les éléments fins tels que les monocotylédones pour des images de végétations.
Indices et forme d’équation
Les indices colorimétriques ont prouvé leur efficacité dans la description des surfaces, ainsi tous les ans différents articles de revue concernant les indices colorimétriques sortent, souvent dans le cadre d'un premier article de thèse appliqué a un domaine d’étude spécifique [Xue Jinru, Çağatay Tanrıverdi, Jiri Mezera]. Nous allons repartir de la base grâce au site www.indexdatabase.de, à partir de cette base de donnée, 89 indices de végétation ont été identifiés comme compatibles avec nos longueurs d'ondes, ils seront ainsi testés. D'autre part, ils seront comparés à nos indices conçus automatiquement. Six formes d'équations simples ont été extraites à partir de l’ensemble des 519 indices de la base de données :
titre | équation | |
1 | une seul bande | |
2 | soustraction de bande | |
3 | différence de 2 bande | |
4 | différence normalisé de 2 bande | |
5 | différence normalisé de 3 bande | |
6 | différence normalisé "cubique" de 2 bande |
En analysant ces différentes équations, nous pouvons définir de nouvelles formes d’équation générique qui les synthétisent, et qui prennent en compte l'ensemble des bandes spectrales ainsi qu'un certain voisinage. Deux autres formes d'équations sont également intéressantes à optimiser, qui sont respectivement les approximations de fonction continue par développement de Taylor, ainsi que les approximations de fonction continue par morceaux grâce aux opérateurs morphologiques. Ces équations seront alors optimisées permettant de définir de nouveaux indices automatiquement, dans la seconde partie. L’ensemble de ces méthodes est développé via tensorflow et les paragraphes suivants présente les différents modèles :
Linéaire : Pour synthétiser les équations 1 et 2, nous pouvons définir une simple équation linéaire telle que
Différence Linéaire : Pour synthétisé les équation 3, 4 et 5, un modèle simple reposant sur une division de deux modèles précédents est possible. De la même façon, cette forme est généralisable au domaine 2D et correspond alors à deux Convolution2D, l'une pour le numérateur, l'autre pour le dénominateur. Nous fixons dans un premier temps la taille des noyaux à
Polynomial : D'après le théorème de Stone–Weierstrass toute fonction continue définie sur un segment peut être approchée uniformément par des fonctions polynomiales. Puisque l'on restreint le segment au domaine
Différence Polynomial : En suivant l'idée de la forme précédente et pour respecter la forme d'équations 6, nous introduisons simplement une différence de polynôme, l'un au numérateur permettant d'optimiser la classe recherché et l'autre au dénominateur jouant le rôle de normalisateur
Approximation Universelle de Fonction : En utilisant les développements de Taylor, nous pouvons décomposer n'importe quelle fonction
https://d2l.ai/chapter_convolutional-modern/densenet.html
Filtre d'entrée : Pour supprimer une partie du signal qui ne serait pas indispensable, nous étudieront l'ajout d'un filtre passe-bande, en amont du réseau. Effectivement, pourquoi prendre en considération l’ensemble des valeurs d'un signal ? Il est très probable que seulement une partie de ce dernier caractérise ce que l'on cherche. Un bon exemple concerne les indices de végétation, seul les valeurs fortes dans le vert et le proche infra-rouge, ainsi que les valeurs faibles dans le rouge et le bleu sont caractéristique de la végétation :
C'est d’ailleurs le principe de l'indice NDVI, en raison des couches spongieuses qui se trouvent sur leur face arrière, les feuilles réfléchissent beaucoup de lumière dans le proche infrarouge, ce qui contraste fortement avec la plupart des objets non-végétaux. Lorsque la plante est déshydratée ou stressée, la couche spongieuse se compresse et les feuilles réfléchissent moins de lumière dans le proche infrarouge, rejoignant les valeurs du rouge, dans le domaine visible. Ainsi, la combinaison mathématique de ces deux signaux peut aider à différencier les plantes des objets non-végétaux et les plantes saines des plantes malades. Cependant cet indice est alors moins intéressant lorsqu'il s’agit de détecter seulement la végétation et est fortement influencé par l’ombrage ou la chaleur.
Nous allons donc ajouter un filtre dans les équations précédentes pour supprimer les valeurs "indésirables" par l'utilisation de deux seuils a et b, qui seront également appris. S'il s’avère que l'ensemble du signal est intéressant, ces deux paramètres ne changeront pas et les valeurs seront a=0 et b=1, dans le cas contraire, a et b changeront. Pour appliquer le premier seuil, on utilise l’équation
Ces deux paramètres permettent aussi de gérer des paramètre extérieurs, en effet lorsque a devient négatif, le paramètre a pour effet de rehausser le signal, ce dernier est alors compris dans l'intervalle
Approximation de fonction par érosion-dilatation : En étendant l'idée de sélection de bandes, nous pouvons non pas en sélectionner une, mais plusieurs, grâce à des opérateurs morphologiques notés
Raffinement spatial de l'indice : Pour prendre en compte différentes échelles dans l'image, nous étudions l'ajout d'une partie en aval du réseau. Appeler "Spatial Pyramide Refinement Block" et consiste en la somme de différentes Convolution2D dont les tailles de noyaux ont été fixé à 1,3,5,7. Le résultat de chaque convolution est concaténé, et le résultat final est donné par une combinaison linéaire de ces différentes échelles modélisées encore une fois par une Convolution2D avec k=1.
Fonction de perte
Dans cette partie, nous présenterons les différentes fonctions de pertes possibles en relation à la classification binaire. Cette partie est inspirée de https://lars76.github.io/neural-networks/object-detection/losses-for-segmentation/. Pour obtenir un indice et faciliter la convergence, on s’intéressera uniquement aux valeurs comprises entre 0 et 1 en sortie de la dernière couche, via une fonction d'activation de type ClippedReLU (
Cross-Entropy : La cross-entropy peu être défini par
Weigthed-Cross-Entropy : C'est une variente de
Balanced-Cross-Entropy : Cette variente est similaire à WCE, ont introduit cependant
Focal Loss : Cette fonction, proche de BCE essaie décrémenté l'influence des éléments "faciles" pour améliorer en priorité les éléments difficilement séparable. Ont utilise alors deux coefficient
Trois autres fonctions de perte sont intéressantes à étudier quand il s'agit de segmentation. Il s'agit de Dice-Loss, TverskyIndex-Loss et IntersectionOverUnion-Loss souvent utilisé dans leurs versions métrique ...
Dice-Loss : La fonction de perte est défini par
IntersectionOverUnion-Loss : Récemment, [Y.Wang et al] ont proposé une solution pour optimisé une approximation de l'intersection sur l'union dans le cas de segmentation binaire. La fonction de perte est défini par
Le choix ce feras donc sur la fonction de perte
Métrique d’évaluation
Lorsque le nombre d'élément entre chaque classe est fortement déséquilibré, beaucoup de métrique standard sont inéficasse et donc inadapté. Par exemple notre vérité terrain sol/végétation comporte
Blanced Accuracy : aussi appelé Youden Statistics pour prendre en compte la ratio des classes, la forme de l'accuracy est transformer afin de calculer séparément les performances de chaque classes et devient donc
Dice : Le coefficient de Dice, également appelé indice de recouvremen, est communément utilisé pour vérifier les performances des algorithmes de segmentation
Mean Intersection Over Union : C'est une autre métrique souvent utiliser pour meusuré les performances de la segmentation, noté
Precision : Correspond à une partie de l'équation de balanced accuracy
Recall : Quelle proportion de vrais positif a été identifiée correctement ?
Metthews correlation : bla bla bla
Comparaison avec les indices standars
Pour effectuer une comparaison juste/equitable il est necessaire d'optimiser chaque indice standar. Pour ce faire un reseaux de neuron minimal est utiliser afin d'apprendre une droite de regression. Le reseaux est donc composé de l'indice spectral, suivit d'une normalisation
Reseaux de neurone simple
AdventicedTransformedSoilAdjustedVI AnthocyaninRefectanceIndex AshburnVegetationIndex AtmosphericallyResistantVegetationIndex2 AtmosphericallyResistantVegetationIndex AverageReflectance750to850 BlueWideDynamicRangeVegetationIndex BrowningReflectanceIndex CanopyChlorophyllContentIndex ChlorophyllAbsorptionRatioIndex2 ChlorophyllAbsorptionRatioIndex ChlorophyllGreen ChlorophyllIndexGreen ChlorophyllIndexRedEdge710 ChlorophyllIndexRedEdge ChlorophyllRedEdge ChlorophyllVegetationIndex ColorationIndex CorrectedTransformedVegetationIndex CRI700 Datt1 Datt4 Datt6 DifferencedVegetationIndexMSS DifferenceNIRGreenVegetationIndex DoubleDifferenceIndex EnhancedVegetationIndex2 EnhancedVegetationIndex3 EnhancedVegetationIndex Gitelson2 |
GlobalEnvironmentMonitoringIndex |
NormNir |