Jet palette de niveaux de gris
J'ai un jet palette de couleurs:
et je voudrais savoir s'il existe un moyen de convertir en niveaux de gris. Je ne peux pas utiliser la moyenne en raison maximale et la valeur minimale passe de la même couleur grise. Ou si il y a une certaine façon de se convertir à une autre palette de couleurs.
Je ne peux pas trouver sur Google une fonction pour convertir. MATLAB utilise quelque chose qui s'appelle rgb2ind
mais j'aimerais connaître la formule.
Jet est unanimement considéré comme l'un des pires carte des couleurs disponibles, en dépit de sa popularité...
OriginalL'auteur PerroNoob | 2011-09-16
Vous devez vous connecter pour publier un commentaire.
Permettez-moi d'abord de créer une image indexée à l'aide de la Jet palette de couleurs:
À la simplicité de la conversion à l'aide d'IND2GRAY produit est le suivant:
Que vous avez exprimé, le min/max convergent vers la même valeur. De ce que j'ai compris, vous êtes à la recherche à la carte le jet palette de couleurs à linéairement passer de l'obscurité à la lumière des nuances de gris. Pour cela, on peut réorganiser l'aide de la valeur de la teinte de laquelle nous avons, avec le RGB2HSV fonction. Comparez les points suivants à l'encontre de l'original de la carte des couleurs:
OriginalL'auteur Amro
créer l'image dans MATLAB
enregistrer l'image au format tiff, rogner les bords avec un Pinceau et de l'enregistrer en tant que '\directorypath\jetmage.tiff'.
charger l'image dans MATLAB
obtenir la taille de l'image
obtenir une ligne de l'image pour chaque couleur, le rouge, le vert et le bleu.
tracer le profil d'intensité de chaque couleur pour cette ligne.
La parcelle doit être quelque chose comme:
vous pouvez utiliser la matrice de
[r,g,b]
que le look-up-table ou sur la base de cettetrouver un moyen d'obtenir la "formule" de la matrice
[r,g,b]
OriginalL'auteur teng
rgb2ind
convertit les valeurs RVB de chaque pixel dans les indices à l'intérieur d'une carte de la couleur. Si vous utilisez les 2 entrées de la version avec une carte de la couleur d'entrée, puis il va chercher la couleur la plus proche dans la carte de la couleur qui correspond à chaque pixel. Ce sera essentiellement vous donner un numéro unique pour chaque pixel, plutôt que d'une valeur RVB.Par exemple, si vous chargez votre image
puis, depuis le Jet de la couleur de la carte retournée par
jet
, alors vous pouvez obtenir les données indexées à l'aide deVous pouvez afficher l'image à l'aide de n'importe quelle couleur de la carte
Ne pas utiliser imagesc parce qu'il peut s'étendre la plage dynamique de votre image de façon inacceptable.
OriginalL'auteur Nzbuu
Python de mise en œuvre de la réponse donnée par teng (en supposant un défaut matplotlib jetmap).
OriginalL'auteur trienko