Version 0.16#

DataLab Version 0.16.4 (09/07/2024)#

Cette version concerne une maintenance mineure.

🛠️ Correctifs :

  • PlotPy v2.4.1 ou ultĂ©rieur est requis pour corriger les problèmes suivants liĂ©s Ă  la fonction d’ajustement de contraste :

    • Une rĂ©gression a Ă©tĂ© introduite dans une version antĂ©rieure de PlotPy : l’histogramme des niveaux n’était plus supprimĂ© du panneau d’ajustement de contraste lorsque l’image associĂ©e Ă©tait supprimĂ©e du graphique

    • Cela est maintenant corrigĂ© : lorsque une image est supprimĂ©e, l’histogramme est Ă©galement supprimĂ© et le panneau de contraste est rafraĂ®chi (ce qui n’était pas le cas mĂŞme avant la rĂ©gression)

  • Ignorer AssertionError dans config_unit_test.py lors de l’exĂ©cution de la suite de tests sur WSL

📚 Documentation :

  • Correction de la rĂ©fĂ©rence de classe dans la documentation de Wrap11Func

DataLab Version 0.16.3 (03/07/2024)#

🛠️ Correctifs :

  • Correction de l”Issue #84 - Problèmes de construction avec V0.16.1 : conflit de nom signal, …

    • Ce problème devait ĂŞtre corrigĂ© dans la version 0.16.2, mais la correction n’était pas suffisante

    • Merci Ă  @rolandmas pour avoir signalĂ© le problème et pour l’aide apportĂ©e dans l’investigation du problème et le test de la correction

  • Correction de l”Issue #85 - Les chemins des donnĂ©es de test peuvent ĂŞtre ajoutĂ©s plusieurs fois Ă  datalab.utils.tests.TST_PATH

    • Ce problème est liĂ© Ă  l”Issue #84

    • Ajouter les chemins des donnĂ©es de test plusieurs fois Ă  datalab.utils.tests.TST_PATH entraĂ®nait le chargement multiple des donnĂ©es de test, ce qui a conduit Ă  l’échec de certains tests (une solution de contournement simple a Ă©tĂ© ajoutĂ©e Ă  V0.16.2 : ce problème est maintenant corrigĂ©)

    • Merci encore Ă  @rolandmas pour avoir signalĂ© le problème dans le contexte de l’emballage Debian

  • Correction de l”Issue #86 - La moyenne de N images entières dĂ©passe le type de donnĂ©es

  • Correction de l”Issue #87 - Extraction du profil moyen de l’image : AttributeError lors de la tentative de modification des paramètres du profil

  • Correction de l”Issue #88 - Profil de segment d’image : inversion des coordonnĂ©es des points

DataLab Version 0.16.2 (01/07/2024)#

Cette version nécessite PlotPy v2.4.0 ou ultérieure, qui apporte les corrections de bugs et les nouvelles fonctionnalités suivantes :

  • Nouvelles fonctionnalitĂ©s d’ajustement de contraste et corrections de bugs :

    • Nouvelle disposition : la barre d’outils verticale (qui Ă©tait contrainte dans une petite zone sur le cĂ´tĂ© droit du panneau) est dĂ©sormais une barre d’outils horizontale en haut du panneau, Ă  cĂ´tĂ© du titre

    • Nouveau bouton « DĂ©finir l’échelle » : permet Ă  l’utilisateur de dĂ©finir manuellement les valeurs minimale et maximale de la plage de l’histogramme

    • Correction des problèmes de mise Ă  jour de l’histogramme lorsque aucune image n’était actuellement sĂ©lectionnĂ©e (mĂŞme si une image Ă©tait affichĂ©e et sĂ©lectionnĂ©e auparavant)

    • La plage de l’histogramme n’était pas mise Ă  jour lorsque la valeur minimale ou maximale Ă©tait dĂ©finie Ă  l’aide des boutons « Valeur minimale » ou « Valeur maximale » (qui ont Ă©tĂ© renommĂ©s en « Min. » et « Max. » dans cette version)

    • La plage de l’histogramme n’était pas mise Ă  jour lorsque le bouton « DĂ©finir la plage complète » Ă©tait cliquĂ©, ou lorsque la plage de LUT Ă©tait modifiĂ©e Ă  l’aide du formulaire « Échelles / Plage de LUT » dans le groupe « PropriĂ©tĂ©s »

  • Menu contextuel de la Vue Image : nouvelle fonctionnalitĂ© « Inverser l’axe X »

ℹ️ Nouvelles fonctionnalités mineures et améliorations :

  • Types de fichiers image :

    • Ajout de la prise en charge native de la lecture des fichiers image .SPE, .GEL, .NDPI et .REC

    • Ajout de la prise en charge de tout format de fichier pris en charge par imageio via le fichier de configuration (l’entrĂ©e imageio_formats peut ĂŞtre personnalisĂ©e pour complĂ©ter la liste par dĂ©faut des formats pris en charge : voir la documentation pour plus de dĂ©tails)

🛠️ Correctifs :

  • Analyse de Fourier des images :

    • Correction de l’échelle logarithmique pour le spectre de magnitude (calcul en dB au lieu du logarithme naturel)

    • Correction du calcul de la DSP avec une Ă©chelle logarithmique (calcul en dB au lieu du logarithme naturel)

    • Mise Ă  jour de la documentation pour mentionner explicitement que l’échelle logarithmique est en dB

  • Correction de l”Issue #82 - Les macros ne sont pas renommĂ©es dans DataLab après les avoir exportĂ©es vers des scripts Python

  • L’objet ResultProperties peut dĂ©sormais ĂŞtre ajoutĂ© aux mĂ©tadonnĂ©es de SignalObj ou ImageObj mĂŞme en dehors d’une boucle d’évĂ©nements Qt (car l’élĂ©ment d’étiquette n’est plus créé immĂ©diatement)

  • La barre de progression est dĂ©sormais automatiquement fermĂ©e en cas d’erreur lors d’une opĂ©ration longue (par exemple, lors de l’ouverture d’un fichier)

  • Soustraction, division… : la boĂ®te de dialogue pour la sĂ©lection du second opĂ©rande permettait de sĂ©lectionner un groupe (seul un signal ou une image devrait ĂŞtre sĂ©lectionnĂ©)

  • Lorsqu’une opĂ©ration implique un objet (signal ou image) ayant un numĂ©ro d’ordre supĂ©rieur Ă  l’objet actuel (par exemple, lors de la soustraction d’une image avec une image d’un groupe en dessous de l’image actuelle), le titre de l’objet rĂ©sultant fait dĂ©sormais correctement rĂ©fĂ©rence aux numĂ©ros d’ordre des objets impliquĂ©s dans l’opĂ©ration (par exemple, pour continuer avec l’exemple de soustraction mentionnĂ© ci-dessus, le titre de l’objet rĂ©sultant faisait prĂ©cĂ©demment rĂ©fĂ©rence au numĂ©ro d’ordre avant l’insertion de l’image rĂ©sultante)

  • Ajout de la prise en charge d’un dossier de donnĂ©es de test supplĂ©mentaire grâce Ă  la variable d’environnement DATALAB_DATA (utile Ă  des fins de test, et notamment dans le contexte de la prĂ©paration du paquet Debian de DataLab)

DataLab Version 0.16.1 (21/06/2024)#

Depuis la version 0.16.0, de nombreuses fonctions de validation ont été ajoutées à la suite de tests. Le pourcentage de fonctions de calcul validées est passé de 37 % à 84 % dans cette version.

La prise en charge de NumPy 2.0 a été ajoutée avec cette version.

ℹ️ Nouvelles fonctionnalités mineures et améliorations :

  • Filtres moyenne mobile et mĂ©diane pour les signaux et les images :

    • Ajout du paramètre « Mode » pour choisir le mode du filtre (par exemple « reflect », « constant », « nearest », « mirror », « wrap »)

    • Le mode par dĂ©faut est « reflect » pour la moyenne mobile et « nearest » pour la mĂ©diane mobile

    • Cela permet de gĂ©rer les effets de bord lors du filtrage des signaux et des images

🛠️ Correctifs :

  • Correction de la dĂ©tection de bord de Canny pour renvoyer une image binaire en uint8 au lieu de bool (par soucis de cohĂ©rence avec les autres fonctionnalitĂ©s de traitement d’image)

  • Correction de la normalisation d’image : la borne infĂ©rieure Ă©tait mal dĂ©finie pour la mĂ©thode maximum

  • Correction de l’erreur ValueError lors du calcul de la DSP avec une Ă©chelle logarithmique

  • Correction de l’algorithme de dĂ©rivation d’un signal : utilisation de numpy.gradient au lieu d’une implĂ©mentation personnalisĂ©e

  • Correction de l’obsolescence de cumtrapz de SciPy : utilisation de cumulative_trapezoid Ă  la place

  • La sĂ©lection de courbe affiche dĂ©sormais les points individuels de la courbe (auparavant, seule la largeur de la ligne de la courbe Ă©tait Ă©largie)

  • Installeur Windows : ajout de la prise en charge des versions instables (par exemple, 0.16.1.dev0), permettant ainsi d’installer facilement la dernière version de dĂ©veloppement de DataLab sur Windows

  • Correction de l”Issue #81 - Lors de l’ouverture de fichiers, afficher la boĂ®te de dialogue de progression uniquement si nĂ©cessaire

  • Correction de l”Issue #80 - TracĂ© des rĂ©sultats : prise en charge de deux cas d’utilisation

    • Les fonctionnalitĂ©s du menu Analyse » produisent des rĂ©sultats (scalaires) : dĂ©tection de taches (coordonnĂ©es de cercle), dĂ©tection de pics 2D (coordonnĂ©es de points), etc. Selon la fonctionnalitĂ©, des tables de rĂ©sultats sont affichĂ©es dans la boĂ®te de dialogue « RĂ©sultats », et les rĂ©sultats sont Ă©galement stockĂ©s dans les mĂ©tadonnĂ©es du signal ou de l’image : chaque ligne de la table de rĂ©sultats est un rĂ©sultat individuel, et chaque colonne est une propriĂ©tĂ© du rĂ©sultat - certains rĂ©sultats peuvent ne consister qu’en un seul rĂ©sultat individuel (par exemple, le centroĂŻde de l’image ou la FWHM de la courbe), tandis que d’autres peuvent consister en plusieurs rĂ©sultats individuels (par exemple, dĂ©tection de taches, dĂ©tection de contours, etc.).

    • Avant ce changement, la fonctionnalitĂ© « Tracer les rĂ©sultats » ne prenait en charge que le tracĂ© du premier rĂ©sultat individuel d’une table de rĂ©sultats, en fonction de l’index (des objets de signal ou d’image) ou de l’une des colonnes de la table de rĂ©sultats. Cela n’était pas suffisant pour certains cas d’utilisation, oĂą l’utilisateur souhaitait tracer plusieurs rĂ©sultats individuels d’une table de rĂ©sultats.

    • A prĂ©sent, la fonctionnalitĂ© « Tracer les rĂ©sultats » prend en charge deux cas d’utilisation :

      • « Une courbe par titre de rĂ©sultat » : Tracer le premier rĂ©sultat individuel d’une table de rĂ©sultats, comme auparavant

      • « Une courbe par objet (ou ROI) et par titre de rĂ©sultat » : Tracer tous les rĂ©sultats individuels d’une table de rĂ©sultats, en fonction de l’index (des objets de signal ou d’image) ou de l’une des colonnes de la table de rĂ©sultats

    • La sĂ©lection du cas d’utilisation se fait dans la boĂ®te de dialogue « Tracer les rĂ©sultats »

    • Le cas d’utilisation par dĂ©faut est « Une courbe par titre de rĂ©sultat » si la table de rĂ©sultats ne comporte qu’une seule ligne, et « Une courbe par objet (ou ROI) et par titre de rĂ©sultat » dans les autres cas

DataLab Version 0.16.0 (13/06/2024)#

💥 Nouvelles fonctionnalités et améliorations :

  • Refonte majeure de l’interface utilisateur :

    • La barre de menu et les barres d’outils ont Ă©tĂ© rĂ©organisĂ©es pour rendre l’application plus intuitive et plus facile Ă  utiliser

    • Les fonctionnalitĂ©s d’opĂ©rations et de traitement ont Ă©tĂ© regroupĂ©es dans des sous-menus

    • Toutes les actions liĂ©es Ă  la visualisation sont dĂ©sormais regroupĂ©es dans la barre d’outils verticale du panneau de visualisation

    • Clarification de la gestion des « Annotations » (nouveaux boutons, action de la barre d’outils…)

  • Nouveau processus de validation pour les fonctionnalitĂ©s de traitement du signal et de l’image :

    • Avant cette version, le processus de validation de DataLab Ă©tait exclusivement effectuĂ© du point de vue du programmeur, en Ă©crivant des tests unitaires et des tests d’intĂ©gration, garantissant ainsi que le code fonctionnait comme prĂ©vu (c’est-Ă -dire qu’aucune exception n’était levĂ©e et que le comportement Ă©tait correct)

    • Avec cette version, un nouveau processus de validation a Ă©tĂ© introduit, du point de vue de l’utilisateur, en ajoutant de nouvelles fonctions de validation (marquĂ©es avec le dĂ©corateur @pytest.mark.validation) dans la suite de tests

    • Une nouvelle section « Validation » dans la documentation explique comment la validation est effectuĂ©e et contient une liste de toutes les fonctions de validation avec les statistiques du processus de validation (gĂ©nĂ©rĂ©es Ă  partir de la suite de tests)

    • Le processus de validation est en cours et sera amĂ©liorĂ© dans les versions futures

  • Groupe « PropriĂ©tĂ©s » :

    • Ajout de l’onglet « Échelles », pour afficher et dĂ©finir les Ă©chelles du graphique :

      • X, Y pour les signaux

      • X, Y, Z (plage de LUT) pour les images

  • Options d’affichage :

    • Nouvelle option « Afficher uniquement le premier » dans le menu « Affichage », pour afficher uniquement la première courbe (ou image) lorsque plusieurs courbes (ou images) sont affichĂ©es dans la vue du graphique

    • Nouvelle Ă©tiquette (dĂ©plaçable) pour les calculs de FWHM, en plus de l’annotation de segment existante

  • FonctionnalitĂ©s d’E/S :

    • Ajout de la prise en charge de la lecture et de l’écriture des fichiers .MAT (format MATLAB)

    • CrĂ©ation d’un nouveau groupe lors de l’ouverture d’un fichier contenant plusieurs signaux ou images (par exemple, un fichier CSV avec plusieurs courbes)

  • Ajout de la prise en charge des images binaires

  • Extraction de ROI de signal : ajout d’une nouvelle boĂ®te de dialogue pour Ă©diter manuellement les bornes infĂ©rieure et supĂ©rieure du ROI après avoir dĂ©fini le ROI graphiquement

ℹ️ Nouvelles fonctionnalités de traitement des Signaux :

Menu

Sous-menu

Fonctionnalités

Nouveau

Nouveau signal

Exponentielle, impulsion, polynomiale, personnalisé (entrée manuelle)

Opérations

Exponentielle, Racine carrée, Puissance

Opérations

Opérations avec une constante

+, -, *, /

Traitement

Transformation des axes

Inverser l’axe X

Traitement

Ajustement du niveau

Correction d’offset

Traitement

Analyse de Fourier

Spectre de puissance, Spectre de phase, Spectre de magnitude, Densité spectrale de puissance

Traitement

Filtres fréquentiels

Passe-bas, Passe-haut, Passe-bande, Coupure de bande

Traitement

Fenêtrage (Hanning, Hamming, Blackman, Blackman-Harris, Nuttall, Flat-top…)

Traitement

Ajustement

Ajustement linéaire, Ajustement sinusoïdal, Ajustement exponentiel, Ajustement CDF

Analyse

LMH (Méthode du zéro-crossing), Valeur X @ min/max, Période/fréquence d’échantillonnage, Paramètres dynamiques (ENOB, SNR, SINAD, THD, SFDR), Largeur de bande -3dB, Contraste

ℹ️ Nouvelles fonctionnalités de traitement des Images :

Menu

Sous-menu

Fonctionnalités

Opérations

Exponentielle

Opérations

Profils d’intensité

Profil le long d’un segment

Opérations

Opérations avec une constante

+, -, *, /

Traitement

Ajustement du niveau

Normalisation, Recadrage, Correction d’offset

Traitement

Analyse de Fourier

Spectre de puissance, Spectre de phase, Spectre de magnitude, Densité spectrale de puissance

Traitement

Seuillage

Paramétrique, ISODATA, Li, Moyenne, Minimum, Otsu, Triangle, Yen

🛠️ Correctifs :

  • Correction d’un problème de performance dĂ» Ă  un rafraĂ®chissement inutile de la vue du graphique lors de l’ajout d’un nouveau signal ou d’une nouvelle image

  • Correction de l”Issue #77 - Profils d’intensitĂ© : impossible d’accepter la boĂ®te de dialogue la deuxième fois

  • Correction de l”Issue #75 - Afficher dans une nouvelle fenĂŞtre : l’anti-crĂ©nelage de la courbe n’est pas activĂ© par dĂ©faut

  • La visibilitĂ© des annotations est dĂ©sormais correctement sauvegardĂ©e et restaurĂ©e :

    • Avant cette version, lorsque la visibilitĂ© des annotations Ă©tait modifiĂ©e dans la vue du graphique sĂ©parĂ©e, elle n’était pas sauvegardĂ©e et restaurĂ©e lors de la rĂ©ouverture de la vue du graphique

    • Cela a Ă©tĂ© corrigĂ© en amont dans PlotPy (v2.3.3)