Analyseur d'imagesAuparavant, j'écrivais un script JSL qui générait une table de données à partir d'une image, appelée ImageToDatatable JSL Depuis lors, j'ai entendu des demandes concernant la possibilité de sélectionner des lignes dans le tableau de données et de refléter la sélection dans l'image. Avec ce script, vous pouvez ouvrir une image et elle sera affichée dans une fenêtre ainsi que créer une table de données à partir de l'image. À partir du tableau de données, vous pouvez effectuer votre analyse, telle qu'une distribution des valeurs d'intensité. Vous pouvez ensuite sélectionner dans la distribution (ou une autre visualisation), dans le tableau de données ou dans l'image et les trois seront mis à jour pour afficher la sélection. La sélection dans l'image est affichée en utilisant la transparence sur les pixels non sélectionnés afin que les pixels sélectionnés apparaissent en surbrillance. Vous pouvez appliquer une couleur d'arrière-plan à la fenêtre d'image afin que les pixels transparents ne s'affichent pas en blanc, mais plutôt comme la couleur d'arrière-plan que vous choisissez.

La sélection des valeurs d'intensité les plus élevées dans la distribution identifie la concentration la plus élevée de fibrine dans les cellules sanguines.
Mise à jour (8 septembre 2015) : Ceci a été initialement publié en tant que script, mais est maintenant emballé en tant que complément afin qu'il puisse apparaître dans le menu des compléments. Il a également été mis à jour pour détecter l'ouverture d'une image en niveaux de gris. Dans ce cas, il ne créera pas de colonnes RVB et HLS, car il n'y a pas de couleur dans l'image. Vous ne verrez qu'une colonne de valeur d'intensité avec les colonnes d'emplacement x,y.
Problème (26 oct. 2015) : Un client a signalé un problème où il obtenait une fenêtre d'alerte lorsqu'il tentait de sélectionner des pixels dans l'image. Après quelques tests, nous avons pu déterminer qu'il s'agissait d'un problème avec la version 11.0.0 uniquement. La mise à niveau vers la version 11.1.0 (ou ultérieure) résoudra le problème.
Mise à jour (15 juillet 2016) : J'ai ajouté de nouvelles fonctionnalités à l'analyseur d'images. Le plus notable est la capacité de gérer des images à plusieurs images. Si vous avez un GIF animé ou un TIFF avec plusieurs images, l'analyseur d'images lira dans toutes les images et créera la table de données comme avant, mais maintenant il inclura une colonne pour le numéro d'image. Il affichera également une zone de texte avec le numéro de l'image actuelle ainsi que les flèches précédente et suivante afin que vous puissiez parcourir les images. Si votre image n'a pas plusieurs cadres, ces contrôles n'apparaîtront pas dans l'interface utilisateur et continueront à fonctionner et à ressembler à ceux de la version précédente. Il y a quelques nouveaux contrôles de sélection - Composite et Delay. Si Composite est activé, une sélection inclura non seulement les pixels de l'image actuelle, mais tous les pixels correspondants dans toutes les images. Ceci n'est disponible que pour les images multi-images. Comme la sélection est parfois lente, surtout pour plusieurs cadres, vous pouvez sélectionner l'option Délai qui affichera le rectangle de sélection mais cela retardera la mise à jour de la sélection (dans le tableau de données et dans l'image) jusqu'à ce que vous relâchiez votre souris. J'ai également ajouté une option pour changer la couleur utilisée pour le rectangle de sélection. J'ai remarqué que c'était un problème lors du changement entre des images vraiment claires et des images sombres. Vous pouvez maintenant modifier la couleur du rectangle de sélection afin qu'il soit toujours visible.
La fonctionnalité multi-images nécessite une fonctionnalité qui a été ajoutée dans la version 13 de JMP. Vous ne verrez donc les commandes pour les images multiples que si vous exécutez JMP 13 (ou une version ultérieure) et si votre image comporte plusieurs images.Cette version du complément peut être installée dans les versions antérieures de JMP, mais elle fonctionnera comme avant, n'ayant accès qu'au premier cadre.
Visualisation de donnéesL'analyse exploratoire des donnéesUtilitairesRe : Analyseur d'images
Quelqu'un peut m'expliquer cela? Je suis nouveau sur jmp.
Re : Analyseur d'imagesJuste une curiosité : est-il possible de développer les codes JSL pour transformer les images dans leurs formes vectorielles (pour effectuer ce qu'on appelle l'incorporation), comme le font les algorithmes, tels que Inception v3, VGG-16 ou VGG-19 ? Merci
Re : Analyseur d'imagesTruc cool. J'y travaille.
Merci beaucoup!.
Re : Analyseur d'imagesOuah. C'est un joli complément ! Merci beaucoup. Comme je ne suis pas un expert dans le domaine des couleurs et que je commence juste avec ce sujet, j'ai une question, ce que "je" signifie dans le tableau généré - juste entre RVB et HLS. Je suppose que ça doit être "Intensité", non ?
Merci!
Re : Analyseur d'imagesQuel merveilleux complément.Je me déplace entre ImageJ (dans son incarnation FIJI) et QGIS (logiciel SIG) et JMP pour l'analyse d'images de télédétection à des fins environnementales, et je concoctais mon propre flux de travail d'exportation/importation avant de trouver cela.Vous m'avez fait gagner des heures et rendu certaines pistes d'analyse à nouveau réalisables.(Et HLS immédiat en parallèle avec RVB est la cerise sur le gâteau.) Très apprécié.
Re : Analyseur d'imagesSalut,
Pouvez-vous faire l'action inverse, en utilisant les données et créer l'image ?
Merci
Re : Analyseur d'images<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Actuellement, la sélection se fait dans le script JSL et c'est toujours un rectangle. Je ne sais pas si je peux utiliser les outils de sélection personnalisés, en tant que complément. Je vais examiner cela. Merci pour la suggestion.
Re : Analyseur d'imagesC'est un excellent outil, merci de l'avoir créé !
Est-il possible d'utiliser l'un des outils de sélection personnalisés pour la sélection de région tels que le lasso ou le pinceau ?Seule la sélection de région rectangulaire semble fonctionner actuellement.
Re : Analyseur d'imagesOh, oui.J'ai totalement supposé qu'ils étaient les mêmes.Merci pour la référence.
Re : Analyseur d'imagesEn regardant votre dernière image (je présume d'ImageJ), elle montre la couleur représentée par HSB (Teinte, Saturation et Luminosité). C'est ce qu'on appelle l'espace colorimétrique HSB ou parfois HSV (où V est la valeur). Dans JMP, nous utilisons l'espace colorimétrique HLS (teinte, luminosité et saturation) ou HSL. Sur la base des noms, vous pourriez vous attendre à ce que la saturation dans les deux espaces colorimétriques soit la même, mais en fait ce n'est pas le cas. Alors que les espaces colorimétriques HSL et HSV sont similaires dans ce qu'ils font, ils sont différents dans la façon dont ils le font. Je m'attendrais à ce que Hue soit la même et il semble qu'elle soit basée sur vos images ci-dessus. Mais la Saturation est calculée différemment dans les deux systèmes, tout comme la Luminosité / Luminosité / Valeur. Voici un lien vers une page qui explique les différences : HSL et HSV - Wikipédia, l'encyclopédie libre
J'espère que ça aide,
JeanP
Re : Analyseur d'imagesBonjour John, j'ai une question concernant la manière dont HLS est traité. J'ai une disparité entre vos chiffres de saturation en utilisant ColortoHLS et ImageJ.
Pour l'image ci-jointe, j'obtiens deux distributions différentes de saturation.


Je comprends si vous n'avez pas travaillé avec ImageJ mais je me demandais s'il y avait une raison à laquelle vous pourriez penser pour le mode à 1 pour vos valeurs de saturation (Autre que "C'est ce que c'est")

Merci pour ce plugin, c'est sympa.
Re : Analyseur d'imagesGrande question ! Le complément crée l'interaction en générant la table de données à partir de l'image. Si vous utilisez le complément pour ouvrir à nouveau l'image (et regénérer la table de données), vous n'aurez pas les colonnes que vous avez ajoutées. Et si vous utilisez JMP pour ouvrir la table de données (avec vos colonnes ajoutées), vous n'aurez pas l'association avec l'image. Il semble que je doive créer une nouvelle version du complément, ou un autre complément, qui va dans l'autre sens - générer une image à partir de la table de données. Si la table de données a été générée à l'origine à partir de l'image, il serait facile de générer l'image à partir de la table de données. Je vais ajouter cela à ma liste d'améliorations pour le complément.
Merci pour la suggestion!
Re : Analyseur d'imagesComplément très utile pour JMP ! Cependant, Je veux juste demander, comment puis-je récupérer l'interaction entre la table de données et l'image une fois que j'ai fermé JMP ? C'est parce que j'ai créé des colonnes supplémentaires dans cette table de données et que je l'ai enregistrée. Mais chaque fois que je la ferme et que je rouvre cette table pour une autre session, je ne trouve pas de moyen de récupérer l'interaction qu'elle a eue avec l'image.
Merci!
Re : Analyseur d'imagesJe n'avais pas vraiment pensé à ça. Dans JMP, à l'aide de JSL, vous pouvez vous connecter à une DLL et appeler des fonctions exposées via la DLL. Voici un lien vers des informations supplémentaires sur la façon de procéder, Bibliothèques de liens dynamiques (DLL) . Je ne sais pas si cela vous aidera avec les programmes externes que vous utilisez. Quelle fonctionnalité utilisez-vous via ces autres programmes ? Quelle fonctionnalité souhaiteriez-vous voir ajoutée à JMP concernant votre travail d'analyse d'images ?
Merci pour les suggestions!
Re : Analyseur d'imagesJohn, ce travail sur l'analyse d'images est très puissant pour JMP, beaucoup de mes analyses impliquent l'utilisation de programmes externes ( ImageJ en particulier) pour produire les données à analyser dans JMP.
Envisagez-vous d'avoir une connexion disponible, similaire à R, etc., dans une future version ou en tant que complément ?
David
Re : Analyseur d'imagesScénario très précieux. J'espère que nous verrons un développement plus poussé des capacités d'analyse d'images dans JMP.
Re : Analyseur d'imagesTrès intéressant!Merci!
Re : Analyseur d'imagesÀ partir du générateur de graphiques (boîte à moustaches), il semble que vous compariez 2 événements (UHAST et UHASTx) à des intervalles de temps différents.
chaque case vous représente 48Hr, 144Hr, 192Hr, 288Hr (catégorie ? étiquette ?).
Mais je ne sais pas quelle est la valeur Y
Pour moi, cette boîte à moustaches peut être affinée pour une meilleure analyse graphique afin de voir la différence entre les événements à chaque intervalle de temps. Vous devriez peut-être empiler l'intervalle de temps dans la table de données.