signal modulé--->dérivateur-->redresseur-->fitrepasbas--->elimination composante continu
on élimine la composante continue en descriminant la moyenne du signal
Voici trois codes MATLAB qui permettent de facilement créer des présentation PowerPoint sous MATLAB. Le but étant de sortir ses résultats directement sous ppt pour faire par la suite une présentation.
Tout expérimentateur s'est une fois au moins demandé s'il était justifié ou non de supprimer d'une série de mesures des points manifestements abérants. Quand ces points sont nombreux, et en continuité avec les points normaux, la question devient cornélienne.
Je m'intéresse ici au cas ou les données s'avèrent "bizares" quand elles ont un résidu important par rapport à un modèle (depuis la simple régression linéaire jusqu'au modèle sophistiqué de 10000 lignes de code). Dans ce cas là, on a l'habitude de considérer les résidus (les erreurs au modèle) comme normalement distribués.
La question qui m'intéresse se réduit donc à la détection de valeurs improbables dans une distribution normale.
Il se trouve que le maximum et le minimum d'une série de N tirages dans une loi normale suit la loi de Gumbel. C'est ce que j'exploite pour nettoyer mes séries de données avec le programme MATLAB que voici.
Lancer la fonction sans argument déclenche une série de tests.
Voici deux codes MATLAB pour charger et sauvegarder des images 3D
Ces fonctions se basent sur les fonctions imread et imwrite, de la boîte à outils "Image Processing", qu'il vous faudra donc posséder.
La fonction readstack (ou "charge pile") charge un fichier ou une succession de fichiers. La fonction permet d'importer :
des séries d'images numérotées en ordre croissant (img00.tif, img01.tif...), en général il suffit de donner la première image pour que toute la pile se charge
des images tif multi-page
des images stockées en "raw", dans ce cas il faut spécifier le type de données et la taille du résultat
La fonction savestack, qui sauve un tableau 3D ou 4D dans une série de fichiers. Pour écrire dans une série de fichier, on passe soit par une chaîne de la forme "img%03d.tif", soit par une succession de caractères "#" ou "?", qui seront remplacés par des chiffres.
Les deux fonctions permettent de travailler avec des images en niveaux de gris (les images sont des tableaux 3D Ny-Nx-Nz), ou des images couleurs (dans ce cas les images sont des tableaux 4D Ny-Nx-3-Nz).
Voici un code MATLAB qui imite le fonctionnement de la fonction image de MATLAB mais qui produit des pixels non rectangulaires.
Le premier argument X est le même que pour la fonction IMAGE.
Cela peut être un tableau 2D MxN (image en couleurs indexées) ou 3D MxNx3 (image en couleurs vraies)
Le second argument shape définit la forme des pixels :
rhb' : losange
'oct' : octogone
'hex' : hexagone
L'objet affiché n'est pas de type Image mais de type Patch.
Voici une implémentation en MATLAB d'un algorithme de stéréovision.(adcensus)
Il est très fortement inspiré de ce papier:
http://xing-mei.net/resource/pdf/adcensus.pdf
Il est découpé en plusieurs parties:
- un "matching cost" calculé avec une fenêtre de taille fixe.
- une agrégation de coût qui permet d'obtenir une disparité plus fiable qui se base sur l’homogénéité des régions.(~les changement de disparité importants n'ont lieu que sur les zones de forts gradients.)
- un "disparity refinement" qui permet de "smoother" les résultats avec une méthode d'optimisation semi-globale.
Ce code MATLAB détermine le plus grand commun diviseur (pgcd ou "greatest common divisor" en anglais) entre une liste d'entiers contenus dans deux tableaux à l'aide de l'algorithme de Euclide.