Est HSL supérieure de plus d'IHV et de HSV?
Est HSL supérieure de plus d'IHV et de HSV, parce qu'il prend la perception humaine est prise en compte.?
Pour certains algorithmes de traitement d'image ils disent que je peux utiliser l'un de ces espaces de couleurs,
et je ne suis pas sûr de laquelle choisir. Je veux dire, les algorithmes des soins que vous fournissez
avec la teinte et la saturation des canaux, vous pouvez choisir la ou les couleurs de l'espace
- J'ai toujours pensé qu'il y avait tous semblables ou de la Légèreté = Luminosité = Valeur = Intensité. Selon en.wikipedia.org/wiki/HSL_and_HSV ils ne sont pas, mais il semble y avoir confusion sur les transformations et l'utilisation. Peut-être que c'est de ma faute 😉
- Pour chaque question de "ce qui est supérieur", le suivi immédiat serait: "supérieure à quelles fins?"
- Un peu ce que j'essayais de dire avec ma réponse!!!
Vous devez vous connecter pour publier un commentaire.
Qui est le mieux dépend beaucoup de ce que vous utilisez pour. Mais dans mon expérience, HSL (HLS) a un malheureux interaction entre la luminosité et la saturation.
Voici un exemple de la réduction de la luminosité de l'image par 2. Le plus à gauche de l'image est l'original; vient ensuite les résultats à l'aide RVB, TLS, et HSV:
Avis trop vives et saturées spots autour du bord du papillon de HLS, en particulier ce point rouge en bas. C'est le problème de saturation je faisais référence.
Cet exemple a été créé en Python à l'aide de la colorsys module pour les conversions.
Car il n'existe pas encore de réponse, et depuis que j'ai eu à de plus amples recherches pour bien comprendre cela, je vais ajouter mon grain de sel.
Comme d'autres l'ont dit, la réponse de LGV ou HSV est mieux dépend de ce que vous essayez de modèle et de les manipuler.
tl;dr - HSV n'est "mieux" que LGV pour une machine de vision (avec des réserves, lire ci-dessous). "Lab" et autres modèles de couleurs sont beaucoup plus précis (mais gourmand en ressources) et devrait vraiment être utilisé pour plus d'un travail sérieux. LGV est carrément mieux pour "peindre" les applications ou tout autre endroit où vous avez besoin d'un homme à "définir", "entrer" ou autrement comprendre/donner du sens à une valeur de couleur.
Pour plus de détails, lire ci-dessous:
Si vous êtes en essayant de modéliser la façon dont les couleurs sont GÉNÉRÉES, la plus intuitive, ce modèle est HSL, car il correspond presque directement à comment vous pouvez mélanger les peintures pour créer des couleurs. Par exemple, pour créer "dark" jaune, vous auriez du mélange de base de la peinture jaune, avec un peu de noir. Considérant que, pour créer une teinte plus claire de jaune, vous feriez mélanger un peu de blanc.
Valeurs entre 50 et 0 dans le "L" du spectre dans LGV carte à la façon dont beaucoup de "noir" doit être mélangé dans (noir croissante de 0 à 100%, comme L DIMINUE de 50 à 0).
Valeurs entre 50 et 100 carte à la façon dont beaucoup de "blanc" doit être mixte (blanc variant de 0 à 100% que L augmente de 50 à 100%).
50% "L" vous donne les plus "purs" de la forme de la couleur sans la "contamination" de blanc ou de noir.
Des idées à partir des liens ci-dessous:
1. http://forums.getpaint.net/index.php?/topic/22745-hsl-instead-of-hsv/
Le dernier message.
2. http://en.wikipedia.org/wiki/HSL_and_HSV
Inspecter la couleur-espace de cylindre pour la LGV - il donne une idée très claire de la nature de la distribution, j'ai parlé d'.
Plus, si vous avez traité avec des peintures à tout moment, l'explication ci-dessus sera (je l'espère) de faire sens. 🙂
Ainsi la LGV est une façon très intuitive de comprendre comment "générer" une couleur donc c'est un excellent modèle pour les applications de peinture, ou toutes autres applications qui sont destiné à un public utilisé pour la pensée dans "l'ombre"/"ton" conditions pour la couleur.
Maintenant, sur le HSV.
C'est perfide territoire maintenant que nous entrons dans un espace basé sur une théorie que j'AI FORMULÉ pour comprendre le HSV et n'est pas validé ou corroborées par d'autres sources.
De mon point de vue, le "V" dans le HSV cartes à la quantité de lumière renvoyée à un objet, avec l'hypothèse, qu'à zéro la lumière, l'objet serait complètement sombre, et avec 100% de lumière, il serait tout blanc.
Ainsi, dans cette image d'une pomme, le point qui est directement en face de la source de lumière est tout blanc, et le plus probable a un "V" à 100%, alors que le point bas qui est complètement dans l'ombre et épargnée par la lumière, a une valeur "0". (Je n'ai pas vérifié ces valeurs, juste pensé qu'ils seraient utiles pour l'explication).
Ainsi HSV semble de modéliser la façon dont les objets sont éclairés (et par conséquent tenir compte de toute indemnité que vous pourriez avoir à effectuer pour les reflets spéculaires ou dans l'ombre, dans une application de vision industrielle) MIEUX que la LGV.
Mais comme vous pouvez le voir assez clairement, à partir des exemples dans les "inconvénients" de la section dans l'article de Wikipedia je lien, aucune de ces méthodes n'est parfaite. "Lab" et d'autres plus formelles (et coûteuse en ressources informatiques) de la couleur des modèles de faire un bien meilleur travail.
P. S: Espérons que cela aide quelqu'un.
Le seul espace de couleur qui a l'avantage et la perception humaine est prise en compte, c'est LABORATOIRE, dans le sens que la métrique Euclidienne dans elle est corrélée avec l'homme de différenciation de couleur.
Prises directement à partir de Wikipédia:
C'est la raison pour laquelle de nombreux algorithmes de vision par ordinateur, profitant de l'espace de LABORATOIRE
HSV
,HSB
etHSI
n'ont pas cette propriété. Donc la réponse est non,HSL
n'est pas "supérieur" surHSI
etHSV
dans le sens de la perception humaine.Si vous voulez être proche de la perception humaine, essayez
LAB
de l'espace couleur.Je dirais que l'une n'est PAS meilleure que l'autre, chacune est juste une conversion mathématique de l'autre. Différentes représentations PEUVENT faire la manipulation de l'image pour l'effet que vous désirez un peu plus facile. Chaque personne VA percevoir des images un peu différemment, et à l'aide d'IHV ou HSV peut fournir une petite différence dans l'image de sortie.
Même RVB si l'on considère un système (par exemple avec la gamme de pixels) prend en compte la perception humaine. Quand un imageur (avec un bayer de superposition) prend une photo, il y a 2 pixels verts pour tous les rouges et bleus de 1 pixel. Surveille encore sortie RGB (bien que la plupart n'ont qu'une seule pixel vert pour chaque rouge et bleu). Un nouveau moniteur de TÉLÉVISION faite par Sharp a maintenant un jaune pixel de sortie. La raison pour laquelle ils ont fait cela est dû au fait qu'il existe une bande jaune dans le spectre de fréquences, afin de mieux représenter véritablement la couleur, ils ont ajouté une bande jaune (ou pixel).
Toutes ces choses sont basées sur l'œil humain d'avoir une plus grande sensibilité au vert sur toute autre couleur dans le spectre.
Quelle que soit, peu importe l'ampleur de l'utilisation, l'image sera converti en RVB pour être affichés sur l'écran.
http://hyperphysics.phy-astr.gsu.edu/hbase/vision/colcon.html
http://www.physicsclassroom.com/class/light/u12l2b.cfm
En bref, je ne pense pas que l'un est mieux que l'autre, mais seulement des représentations différentes.
http://en.wikipedia.org/wiki/Color
En fait, j'aurais à faire valoir que le HSV comptes mieux pour la perception visuelle humaine aussi longtemps que vous comprenez que dans le HSV, la saturation, c'est la pureté de la couleur et de la valeur de l'intensité de la couleur, pas la luminosité de l'ensemble. Prendre cette image, par exemple...
Voici une cartographie de la LGV saturation (à gauche) et HSL luminance (à droite)...
Notez que la saturation est de 100% jusqu'à ce que vous frappez le blanc tout en haut où elle tombe soudainement. Cette cartographie n'est pas perçue lorsque l'on regarde l'image d'origine. Il en va de même pour la luminosité de la cartographie. Bien qu'il soit plus clair dégradé, il vaguement correspond visuellement. Comparez cela à HSV saturation (à gauche) et HSV valeur (à droite) ci-dessous...
Ici, la saturation, la cartographie peut être vu tomber comme la couleur devient de plus en plus blanc. De même, la valeur de la cartographie peut être clairement vu dans l'image d'origine. Ceci est rendu plus évident lorsque l'on regarde les mappages pour les canaux de couleur de l'image originale (les non-zones noires presque parfaitement correspondre à la valeur de la cartographie, mais ne sont nulle part près de la luminance de la cartographie)...
par cette information, je dois dire que le HSV est mieux pour travailler avec des images réelles (surtout les photos) alors que HSL est peut-être mieux que pour la sélection des couleurs dans un sélecteur de couleurs.
Sur une note de côté, la valeur dans le HSV est l'inverse du noir en CMJN.
Un autre argument pour l'utilisation de HSV plus de la LGV est que le HSV a beaucoup moins de combinaisons de différentes valeurs, ce qui peut entraîner de la même couleur depuis HSL perd environ la moitié de sa résolution à son sommet du cône. Disons que vous avez utilisé octets pour représenter les composants, ce qui fait de donner à chaque composant 256 niveaux uniques. Le nombre maximum de unique de sorties RGB cela donnera dans LGV est 4,372,984 couleurs (26% de la gamme RVB). Dans le HSV cela va jusqu'à 9,830,041 (59% de la gamme RVB)... plus de deux fois. Et permettant à une large gamme de 0 à 359 pour la teinte donnera 11,780,015 pour le HSV encore seulement 5,518,160 pour la LGV.
Imma jeter mon grain de sel ici, étant à la fois un programmeur et aussi un mec qui a très bien réussi la Théorie de la Couleur dans une école d'art avant de passer à l'ingénierie du logiciel de carrière judicieux.
HSL/HSV sont parfaites pour l'écriture programmatique de la fonctionnalité de gestion de la couleur sans traiter une tonne de bord des cas. Ils sont terribles à reproduire la perception humaine de la couleur avec précision.
CMJN est idéal pour le rendu de l'impression des choses, parce que cela se rapproche des pigments que les imprimantes compter. Il est aussi terrible à reproduire la perception humaine de la couleur avec précision (bien que pas parce que c'est mauvais en soi, mais en plus parce que les ordinateurs sont vraiment mauvais en l'affichant sur un écran. Plus sur cela dans une minute).
RVB est la seule couleur de l'utilitaire représenté dans la technologie qui reflète fidèlement la vision humaine de manière efficace. LABORATOIRE est essentiellement la résolution de RVB sous le capot. Il convient également de considérer que le sens littéral de pixels sur votre écran sont des représentations de RVB, ce qui signifie que n'importe quelle autre couleur de l'espace de travail avec toi juste pour obtenir analysé retour en RVB de toute façon quand c'est réellement affiche. Vraiment, il est préférable de couper l'intermédiaire et de l'utiliser dans presque tous les cas.
Le problème avec le RVB dans une programmation de sens, c'est que c'est essentiellement de la représentation, tandis que HSL/HSV à la fois de résoudre dans un rayon de courbure, ce qui le rend beaucoup plus facile de créer une "roue des couleurs" par programmation. RGB est très difficile de le faire avec sans écrire d'énormes tas de code à gérer, parce qu'il résout cubically en termes de représentation des données. Cependant, RVB reflète la vision humaine très bien, et c'est aussi le socle de base de l'équipement d'un moniteur est constitué de.
TLDR; Si vous voulez morts sur la couleur et ne pas l'esprit de la charge de travail supplémentaire, utilisez le mode RVB de tous les temps. Si vous voulez bang une "assez bonne" couleur de l'utilitaire et probablement champ bug billets plus tard que vous ne serez pas en mesure de vraiment faire quelque chose, utilisez HSL/HSV. Si vous faites imprimer, utilisez CMJN, pas parce que c'est bon, mais parce que l'imprimante va s'étouffer si vous ne l'utilisez pas, même si c'est le contraire suce.
En aparté, si vous étiez à l'approche de la Théorie de la Couleur, comme un artiste plutôt que d'un programmeur, vous allez trouver une perception très différente de toutes les spécifications techniques sur la couleur vraiment la donne. Gardez à l'esprit que toute personne travaillant avec une couleur utilitaire que vous créez est fondamentalement va penser le long de ces lignes, au moins si ils ont une solide éducation dans la théorie de la couleur. Voici en gros comment un artiste aborde la notion de la couleur:
Couleur à partir d'un point de vue artistique est essentiellement représenté sur une échelle de cinq avions.
Le problème typique avec représentant de ce paradigme par programme est qu'il n'est pas vraiment une bonne façon de représenter des tons riches. Un matériel d'artiste n'est fondamentalement pas question de le faire avec de la peinture, parce que les subtiles différences de coups de pinceau de permettre à la sous-jacentes de la variance entre les compléments de refléter, dans la composition. De même, la photographie numérique et de la vidéo à la fois aspirer à la cueillette de cette place, mais réelle analogique film à ne pas sucer presque aussi mauvais. Il est plus reflétée dans la photographie et la vidéo de l'informatique graphique, car la texture du tout dans la fenêtre d'affichage de la caméra capte un peu, mais c'est encore beaucoup moins que le fait de regarder la même chose (c'est pourquoi vous ne pouvez jamais prendre une très bonne photo d'un coucher de soleil sans une tonne de post-production pour pirater le littéral regarder de nouveau, par exemple). Cependant, les ordinateurs ne sont pas bonnes à reproduire ces divergences, parce que la couleur est fondamentalement va se résoudre à un uniforme de la matrice de pixels RVB cartographie qui apparaît visuellement à être un plat tonalité régulière. Il n'y a pas de calcul de l'espace couleur qui reflète fidèlement les tons riches, car il n'ya pas de calcul de manière à rendre une couleur légèrement varier en diffus, non-répétition de manière aléatoire dans l'espace et ont encore un seul identifiant unique, et vous ne pouvez pas très bien le stocker en tant que données sans un identifiant unique.
La meilleure approximation que vous pouvez faire cela avec un ordinateur est de créer une sorte de diffusion d'une couleur superposée à une autre couleur, qui ne se résout pas en une valeur unique que vous pouvez représenter comme un code hex ou des trucs dans une seule base de données de la colonne. Même alors, un ordinateur va intrinsèquement reflètent un modèle uniforme, où une vraie richesse sonore s'appuie sur le caractère aléatoire et non-répétition de la texture et de la variance, ce qui vous ne pouvez pas le faire sur une machine sans effort. Toutes les oeuvres d'art que vraiment permet de rendre les couleurs de la pop s'appuie sur ce principe, et il est fondamentalement inaccessible au calcul de la représentation sans une tonne de travail côté de l'émuler (c'est pourquoi nous avons Photoshop et Corel Painter, car ils peuvent s'inspirer de ces choses assez bien avec un peu de travail, mais le coût de la réalisation d'un lot de filtrage qui n'est pas efficace pour l'exécution).
RVB est une assez bonne approximation des quatre autres caractéristiques à partir d'un point de vue artistique. Nous avons assez bien qu'il ne va pas à couvrir les tons riches, et que nous allons avoir à se fissurer une conception utilitaire et purée de partie à la main. Cependant, le problème sous-jacent avec la programmation en RVB, c'est qu'il veut se résoudre à un espace à trois dimensions (parce qu'il est cubique), et vous essayez de le présenter sur un affichage à deux dimensions, ce qui rend très difficile de créer une INTERFACE utilisateur qui est raisonnablement intuitive parce que vous n'avez pas la capacité de représenter la profondeur d'un 3ème axe sur un moniteur d'ordinateur de manière efficace dans une manière qui est plus intuitif à utiliser pour un utilisateur final.
Vous devez également tenir compte de la distinction entre la couleur représentée comme la lumière et la couleur représentée comme pigment. RVB est une représentation de la couleur représentée comme la lumière, et correspond à la primaire de valeurs utilisé pour mélanger de l'éclairage pour représenter les couleurs, et le fait avec un mappage 1:1. CMJN représente le spectre de la pigmentation. La distinction est que quand on mélange de la lumière dans une égale mesure, du blanc, et quand on mélange de pigment dans une égale mesure, vous obtenez noir. Si vous êtes à la programmation de toutes les utilitaire qui utilise un ordinateur, vous travaillez avec de la lumière, parce que les pixels sont intrinsèquement un seul nœud sur un moniteur qui émet de la lumière RVB vagues. La raison j'ai dit que CMJN suce, n'est pas parce qu'il n'est pas précis, c'est parce qu'elle n'est pas exacte, lorsque vous essayez de vous représenter comme la lumière, ce qui est le cas sur tous les écrans d'ordinateur. Si vous utilisez réelle de la peinture, marqueurs, crayons de couleur, etc, il fonctionne très bien. Toutefois représentant CMJN sur un écran a encore à résoudre RVB, parce que c'est comme un moniteur d'ordinateur fonctionne, donc c'est toujours un peu en termes de la façon dont il semble à l'écran.
De ne pas aller sur un gigantesque côté de la tangente, comme c'est un forum de programmation et vous avez posé la question en tant que programmeur. Toutefois, si vous allez pour la précision, il est très "non technique" aspect à considérer dans les conditions de l'efficacité de votre travail sera à la réalisation de son objectif, qui est de résoudre bien à l'encontre de la perception visuelle, ce qui n'est pas particulièrement bien représentés dans la plupart de calcul espaces de couleurs. À la fin de la journée, le but avec toutes les couleurs de l'utilitaire de est de le faire ressembler à droite en termes de perception humaine de la couleur. HSL/HSV deux échouent lamentablement à ce. Ils sont importants parce qu'ils sont faciles à code avec, et seulement pour cette raison. Si vous disposez d'un délai plus court, ils sont de réponses acceptables. Si vous voulez quelque chose qui va vraiment bien travailler, alors vous avez besoin pour faire le gros du travail sur le terrain et d'envisager ce genre de choses, qui est ce que votre public est à considérer lorsqu'ils décident s'ils veulent utiliser votre outil ou pas.
Certains points de référence pour vous (je suis volontairement éviter toute références techniques, comme ils le font uniquement référence au calcul de la perspective, et pas les sous-tendent la perception de la couleur, et vous l'avez probablement lu l'ensemble de ceux qui sont déjà de toute façon):
La Théorie De La Couleur Wiki
Répartition de base de la teinte, de la teinte, de la tonalité, et l'ombre
Des Tons de terre (ou des tons riches, si vous préférez)
Principes de base de schémas de couleurs