Les pixels sur les écrans sont carrés, mais je ne sais pas pourquoi.
Les deux images pixélisées semblent très mauvaises - mais je ne suis pas sûr qu'il y ait un avantage des carrés aux hexagones ici.
Les hexagones se divisent également en 3 couleurs:
Alors, quel est l'avantage des carrés dans un écran LCD / CRT?
Réponses:
Les pixels sur les écrans sont carrés, mais je ne sais pas pourquoi.
Ils ne sont pas (nécessairement) carrés.
Certains diront qu'ils ne sont jamais carrés ("Un pixel est un échantillon de points. Il n'existe qu'en un point.").
Alors, quel est l'avantage des carrés dans un écran LCD / CRT?
D'autres arrangements (tels que des triangles, des hexagones ou d'autres polygones de remplissage d'espace ) sont plus onéreux en termes de calcul.
Chaque format d'image est basé sur des pixels (quelle que soit leur forme) disposés dans un tableau rectangulaire.
Si nous devions choisir une autre forme ou une autre disposition, il faudrait réécrire de nombreux logiciels.
Toutes les usines fabriquant actuellement des écrans à disposition rectangulaire en pixels devraient être réoutillées pour une autre disposition.
Aspects pratiques de l'utilisation d'un système de coordonnées hexagonal
Problèmes avec les systèmes de coordonnées hexagonales
Systèmes de coordonnées hexagonaux source
At-on essayé une autre forme ou mise en page?
Source OLPC XO
Famille de matrice Source PenTile
Définition simple de pixel
N'importe lequel des très petits points qui ensemble forment l'image sur un écran de télévision, un écran d'ordinateur, etc.
Source http://www.merriam-webster.com/dictionary/pixel
Pixel
...
Source Pixel
Pixel aspect ratio
Ratio d'aspect du pixel source
Un pixel n'est pas un petit carré!
Source Un pixel n'est pas un petit carré! (Mémoire technique Microsoft 6, Alvy Ray Smith, 17 juillet 1995)
la source
J'aimerais proposer une alternative à la réponse bien pensée de David Postill. Dans sa réponse, il aborde la question de la quadrature des pixels, comme le suggère le titre. Cependant, il a fait un commentaire très perspicace dans sa réponse:
Cette position peut en réalité engendrer une réponse totalement différente. Au lieu de se focaliser sur la raison pour laquelle chaque pixel est un carré (ou non), il peut expliquer pourquoi nous avons tendance à organiser ces échantillonnages ponctuels en grilles rectangulaires. En fait, ça n'a pas toujours été comme ça!
Pour faire valoir cet argument, nous allons jouer entre traiter une image comme une donnée abstraite (telle qu'une grille de points) et son implémentation dans du matériel. Parfois, une vue est plus significative que l'autre.
Pour commencer, allons assez loin en arrière. La photographie de film traditionnelle n’avait aucune "grille", ce qui explique en partie pourquoi les images ont toujours été aussi nettes que les images numériques modernes. Au lieu de cela, il avait un "grain" qui était une distribution aléatoire de cristaux sur le film. C'était à peu près uniforme, mais ce n'était pas un joli tableau rectiligne. L’organisation de ces grains découle du processus de fabrication du film, utilisant des propriétés chimiques. En conséquence, le film n'avait vraiment pas de "direction". C'était juste une projection 2D d'informations.
Avance rapide vers le téléviseur, en particulier les anciens tubes cathodiques à balayage. Les tubes cathodiques ont besoin de quelque chose de différent des photos: ils doivent pouvoir représenter leur contenu sous forme de données. En particulier, il devait s'agir de données pouvant être transmises en continu, de manière analogique, sur un fil (généralement sous la forme d'un ensemble de tensions en constante évolution). La photo était en 2D, mais nous avions besoin de la transformer en une structure en 1d afin qu’elle puisse varier d’un dimention (temps). La solution consistait à découper l'image en lignes (et non en pixels!). L'image était encodée ligne par ligne. Chaque ligne était un flux de données analogique et non un échantillonnage numérique, mais les lignes étaient séparées les unes des autres. Ainsi, les données étaient discrètes dans la direction verticale, mais continues dans la direction horizontale.
Les téléviseurs devaient restituer ces données en utilisant des luminophores physiques, et un téléviseur couleur avait besoin d'une grille pour les diviser en pixels. Chaque téléviseur pouvait le faire différemment dans le sens horizontal, offrant plus de pixels ou moins de pixels, mais ils devaient avoir le même nombre de lignes. En théorie, ils auraient pu compenser chaque rangée de pixels, exactement comme vous le suggérez. Cependant, dans la pratique, cela n'était pas nécessaire. En fait, ils sont allés encore plus loin. On s'est vite rendu compte que l'œil humain gérait les mouvements d'une manière qui ne leur permettait d'envoyer que la moitié de l'image par image! Sur une image, ils envoyaient les lignes impaires, et sur l'image suivante, ils envoyaient les lignes paires, et les assemblaient.
Depuis ce temps, la numérisation de ces images entrelacées a été un peu une astuce. Si j'avais une image de 480 lignes, je n'ai en réalité que la moitié des données dans chaque image en raison de l'entrelacement. Le résultat est très visible lorsque vous essayez de voir quelque chose se déplacer rapidement sur l’écran: chaque ligne est décalée temporellement d’ une image à l’autre, créant des traînées horizontales dans les éléments se déplaçant rapidement. Je le mentionne parce que c'est plutôt amusant: votre suggestion décale chaque demi-pixel de la grille de la grille vers la droite, tandis que l'entrelacement décale de moitié toutes les lignes de la grille!
Franchement, il est plus facile de faire ces belles grilles rectangulaires. Sans aucune raison technique de faire mieux que cela, ça a collé. Ensuite, nous sommes passés à l'ère de l'informatique. Les ordinateurs devaient générer ces signaux vidéo, mais ils n’avaient aucune possibilité analogique d’écrire une ligne analogique. La solution était naturelle, les données étaient scindées en pixels. Maintenant, les données étaient discrètes à la fois verticalement et horizontalement. Tout ce qui restait à faire était de choisir comment créer la grille.
Faire une grille rectangulaire était extrêmement naturel. Tout d’abord, chaque téléviseur était déjà en train de le faire! Deuxièmement, le calcul pour tracer des lignes sur une grille rectangulaire est beaucoup plus simple que de les dessiner sur une grille hexagonale. Vous pourriez dire "mais vous pouvez dessiner des lignes lisses dans 3 directions sur une grille hexagonale, mais seulement 2 dans la forme rectangulaire." Cependant, les grilles rectangulaires permettaient de tracer facilement des lignes horizontales et verticales. Les grilles hexagonales ne peuvent être dessinées que pour dessiner l'un ou l'autre. À cette époque, peu de gens utilisaient des formes hexagonales pour leurs efforts non liés à l'informatique (papier rectangulaire, portes rectangulaires, maisons rectangulaires ...). La capacité de rendre lisse horizontale etles lignes verticales surpassent de loin l'intérêt de créer des images en couleur lisses et en couleurs ... surtout compte tenu du fait que les premiers affichages étaient monochromes et qu'il faudrait beaucoup de temps avant que la finesse des images ne joue un rôle majeur dans la réflexion.
De là, vous avez un précédent très fort pour une grille rectangulaire. Le matériel graphique supportait ce que le logiciel faisait (grilles rectangulaires) et le logiciel ciblait le matériel (grilles rectangulaires). En théorie, certains matériels auraient peut-être tenté de créer une grille hexagonale, mais le logiciel ne la récompensait pas et personne ne voulait payer deux fois plus de matériel!
Cela nous fait avancer rapidement à aujourd'hui. Nous voulons toujours de belles lignes horizontales et verticales lisses, mais avec les écrans à rétine haut de gamme, cela devient de plus en plus facile. Cependant, les développeurs sont encore formés pour penser en termes de l’ancienne grille rectangulaire. Nous voyons des nouvelles API prennent en charge « coordonnées logiques » et de faire l' anti-aliasing pour le faire paraître comme il y a un espace 2d continue à jouer avec plein plutôt que d' une grille de pixels 2d rigides, mais son lent. Finalement, nous pourrions voir des grilles hexagonales.
Nous les voyons effectivement, mais pas avec des écrans. En impression, il est très courant d'utiliser une grille hexagonale. L'œil humain accepte la grille hexagonale beaucoup plus rapidement que la grille rectangulaire. Cela a à voir avec les lignes de chemin "alias" dans les différents systèmes. Les grilles hexagonales sont un alias de manière moins dure, avec laquelle l’œil est plus à l’aise (si une grille hexagonale doit monter ou descendre dans une rangée, elle doit le faire en douceur au cours d’une transition diagonale. Les grilles rectangulaires doivent sauter, ce qui crée discontinuité nette)
la source
Deux raisons:
Une forme rectangulaire par rapport à une forme circulaire, triangulaire ou supérieure à 4 côtés présente l’avantage de pouvoir être placée à côté d’autres rectangles avec un minimum d’espace perdu. Cela garantit que toute la zone du pixel contribue à l'image. D'autres formes peuvent «s'emboîter», mais elles seraient probablement plus complexes à fabriquer que de simples carrés ou rectangles, sans toutefois apporter d'avantages supplémentaires.
Un affichage pixellisé à usage général, qui peut être utilisé pour afficher tout type d’information, doit comporter des pixels ne favorisant pas certains types de formes. Les pixels doivent donc être carrés au lieu d’être plus longs ou plus larges dans une direction, et ne doivent être ni cisaillés ni pivotés.
Si les pixels sont plus hauts que larges, l'épaisseur minimale d'une ligne horizontale sera plus large que l'épaisseur minimale d'une ligne verticale, ce qui rendra les lignes horizontales et verticales différentes, pour le même nombre de pixels.
Si les pixels sont pivotés, seules les lignes inclinées correspondant à l'angle de rotation auront une apparence lisse, les autres lignes ayant une apparence irrégulière. La plupart des systèmes d’exploitation et des logiciels de productivité reposent sur des lignes droites, ce qui fait beaucoup de choses frangeantes ou déchiquetées.
Les pixels en cisaillement (losanges) seraient le pire des deux mondes - ni les diagonales ni les horizontales / verticales ne seraient lisses.
Si vous n'êtes pas intéressé par un écran polyvalent, mais orienté vers un objectif spécifique, vous pouvez être plus flexible. Un exemple extrême est la LED à 7 segments. Si vous devez simplement afficher un nombre, 7 pixels non carrés ainsi disposés suffisent. Ou des voyants à 15 segments qui autorisent les lettres.
la source
Les pixels ne sont pas nécessairement carrés!
Dans le passé, les pixels ont des formes rectangulaires . C'est pourquoi, dans tout éditeur professionnel d'images / vidéos comme Photoshop, Premiere, Sony Vegas ... l' option de format d'image est affichée. Seules les normes modernes de télévision et de moniteur de PC comportent des pixels carrés.
Des exemples célèbres:
TV analogique / DVD PAL: 720x576 qui n'est évidemment pas 16: 9 ou 4: 3 mais 5: 4. Cependant, lorsque vous définissez le format d'image correct, vous obtiendrez l'image de sortie non étirée appropriée.
TV analogique / DVD NTSC: 720x480, soit 3: 2. Après avoir réglé le format, il deviendra 16: 9 ou 4: 3 comme PAL ci-dessus. La résolution verticale plus basse explique également pourquoi les DVD NTSC ont une apparence beaucoup moins nette que PAL.
Adobe Premiere Pro - Utilisation des formats d'image
la source
La réponse est: ils doivent être hexagonaux, car le pavage hexagonal fournit une qualité optique optimale, ce sera donc le futur.
Mais je pense qu'il y a deux raisons principales pour lesquelles ils sont toujours carrés:
Mise à jour
Ce sujet est un thriller. Près de 10 000 vues. Les gens veulent maîtriser le pixel :) C'est drôle comment quelqu'un trouve une relation entre la question et la résolution de l'écran ou la "quadrature" d'un quad.
Pour moi, c’est: quel bloc de construction, carré ou hexagone donne de meilleurs résultats optiques ?
Premièrement, nous avons besoin d’un pavage simple, mais qui couvre mieux une zone personnalisée et il s’agit bien d’un pavage hexagonal. Ce qui peut être facilement compris à partir de tests simples. Un test puissant serait ce que l'on appelle un test "en anneau". Pour plus de simplicité, je fais ici une couleur trinaire: 0 - fond, 1 - gris et 2 - noir.
Avec un point, nous allons essayer d’élargir l’anneau, en gardant l’apparence continue ainsi:
Bien sûr, je souhaiterai également dessiner des lignes horizontales / verticales pour de nombreuses tâches, telles que l'interface utilisateur et la conception d'impression, ou un jeu de plateforme. Appelons cela "Bar Test":
Grâce à ce test, je peux choisir le style de ligne qui est meilleur dans les conditions réelles. Avec les lignes verticales, c'est encore plus simple. Pour une tâche spécifique, tout peut être codé en dur. Pour tracer une ligne avec une fonction, il suffit de répéter son segment dans le sens horizontal. Le fait est que l’ approche par pixels carrés et hexagonaux fonctionne, mais si vous essayez le même test avec un mosaïque carrée, vous remarquerez rapidement la différence. Avec une DPI très élevée, ce n'est pas si évident, mais pourquoi essayer de créer plus de DPI au lieu d'essayer une approche plus efficace? Je ne vois pas beaucoup de sens.
Pour les couleurs RVB, cela nécessitera probablement des structures plus complexes. En fait, j'aimerais avoir un appareil en niveaux de gris, comme sur les images ci-dessus. Ce serait bien aussi d'avoir une réponse rapide en pixels pour faire des animations.
Juste pour le plaisir, j'ai composé une structure hexagonale simple, où les pixels peuvent être RVB. Bien sûr, je ne sais pas comment cela pourrait ressembler à un vrai appareil, mais ça a l'air cool quand même.
Une explication-illustration informelle qui pourrait
aider à décrire la situation:
la source
Certaines des réponses touchent déjà cela ... Je pense qu'un tableau non rectangulaire en termes de stockage de données créerait une complexité presque inimaginable et serait extrêmement sujet aux erreurs. J'ai beaucoup d'expérience avec la modélisation de systèmes physiques où la grille n'est pas rectangulaire (grilles décalées - points de données sur des demi-arêtes, etc.). L'indexation est un cauchemar.
Premièrement, il y a le problème de la définition de la limite. Les images sont généralement rectangulaires (encore une fois, il s'agit d'une question d'histoire - si nos écrans étaient hexagonaux, les choses seraient un peu plus faciles). Ainsi, même la limite de l'image n'est pas une ligne droite. Mettez-vous le même nombre de pixels dans chaque ligne? Est-ce que vous alternez pair / impair? Et ... le pixel inférieur gauche est-il à gauche de celui au-dessus ou à droite? Vous obtenez immédiatement près de 10 normes différentes, et les programmeurs doivent se rappeler à chaque fois comment cela se passe (même les différences entre les lignes et les colonnes ou les index ou les différences d'indexation descendant / ascendant sont parfois à l'origine d'erreurs). Cela pose l'immense problème de la conversion paysage / portrait (la transformation naturelle, triviale sur une grille rectangulaire, mais nécessitant une interpolation et constituant presque nécessairement une procédure avec perte sur un hexagone ou une grille différente).
Ensuite, il y a l'instinct naturel des gens avec une disposition rectangulaire. Vous avez des matrices en mathématiques, qui ont la même disposition. De même, un cadre de coordonnées cartésiennes est à peu près le plus facile à utiliser et à comprendre dans la plupart des cas. Obtenir l'index d'un pixel en (x, y) est simplement x + width * y (et non l'inverse - héritage de l'indexation de la ligne de balayage). Si la largeur est un multiple de 2, vous n'avez même pas besoin de multiplier. Travailler avec des angles non-droits entraîne de nombreuses complications issues de l'algèbre vectorielle, lorsque les vecteurs de base ne sont pas orthogonaux: les rotations ne sont plus de simples superpositions cos / sin. La traduction devient étrange. Cela apporte beaucoup de complexité informatique (cela coûterait quelques fois plus cher), et la complexité du code (je me souviens d'avoir codé l'algorithme de Bresenham une fois et je ne voudrais vraiment pas essayer de le faire en hexadécimal).
L'interpolation et l'anticrénelage ont en général de nombreux algorithmes qui dépendent de la grille carrée. Interpolation bilinéaire, par exemple. Toutes les méthodes de traitement à base de Fourier sont également liées à la grille rectangulaire (FFT est très utile pour le traitement des images) ... eh bien, à moins que vous ne fassiez d’abord des transformations coûteuses et avec pertes.
Cela montre que les données dans la mémoire et les formats de fichier doivent être stockés sous forme de grille rectangulaire. La façon dont vous l’affiche dépend du périphérique d’affichage / de l’imprimante, mais c’est probablement le problème du pilote. Les données sont censées être indépendantes du périphérique et ne devraient pas supposer quel matériel vous avez. Comme le montrent les articles ci-dessus, l'utilisation de pixels non rectangulaires présente de nombreux avantages, en raison de la physiologie de l'œil humain et d'autres facteurs plus technologiques: conservez les données sur une grille carrée, ou vous aurez une horde de programmeurs névrosés à qui répondre: )
Malgré tout, je pensais avoir un arrangement de pixels circulaire pour l’intégration dans les cadrans (ce qui rend les mains droites). Quand j'ai commencé à imaginer à quel point il serait difficile de dessiner quelque chose d'aussi simple qu'une ligne droite qui ne passe pas par le centre, j'ai tiré beaucoup des conclusions que j'ai mentionnées ci-dessus.
la source
Les pixels carrés étaient "la chose logique à faire", explique leur inventeur, Russel Kirsch:
http://www.wired.com/2010/06/smoothing-square-pixels/
la source
Cette question concerne davantage l'arrangement que la forme réelle d'un pixel.
Le problème des arrangements hexagonaux est que la traduction d'un site hexagonal en coordonnées cartésiennes et inversement n'est pas anodine.
Soit vous travaillez avec un indice de réseau Bravais primitif
https://en.wikipedia.org/wiki/Bravais_lattice
ou vous travaillez avec une cellule conventionnelle rectangulaire et ajoutez plusieurs "vecteurs de base" internes. (Vous avez besoin de deux vecteurs de base pour le plus petit réseau rectangulaire et environ 16 pour le plus petit réseau carré).
Dans le premier cas, une transformation d'angle est impliquée et dans le second, chaque pixel a besoin d'
x, y
un index de basej
à spécifier.Donc, à la fin, les pixels "carrés" doivent être un sous-produit de notre culture cartésienne.
À propos, ce serait très cool d’avoir cette technologie, mais elle est très incompatible avec le paradigme actuel. En fait, les systèmes biologiques préfèrent les hexagones lors de la production de réseaux pour les systèmes visuels. Pense aux yeux de la mouche. La rétine humaine suit également quelque chose de plus proche de l'hexagonal (que du carré).
Voir ici http://www.kybervision.com/resources/Blog/HumanRetinaMosaic.png et revenir au point des affichages http://www.kybervision.com/Blog/files/AppleRetinaDisplay.html
Je n'ai aucun doute qu'un réseau hexagonal est plus approprié pour la visualisation. Mais vous pouvez le penser de cette manière, chaque fois que les ingénieurs souhaitent améliorer un affichage, ils sont confrontés au dilemme suivant: 1) passer en mode hexagonal, changer de paradigme, réécrire des trillons de lignes de code et de matériel 2) créer des "carrés" plus petits, ajouter de la mémoire, augmenter le nombre deux pour les dimensions d'affichage mesurer en pixels. L'option 2) est toujours moins chère.
Enfin, un mot de l'inventeur du pixel carré http://www.wired.com/2010/06/smoothing-square-pixels
la source
Pour comprendre pourquoi un pixel rectiligne a de la valeur, vous devez comprendre le processus de fabrication des capteurs et des affichages. Les deux sont basés sur la disposition en silicium. Les deux sont dérivés des origines de VLSI.
Pour pouvoir mettre en œuvre un pixel de capteur non rectiligne , vous devez être prêt à:
Pour que vous puissiez implémenter un pixel d' affichage non rectiligne , vous avez besoin de toutes les mêmes choses.
Beaucoup de gens ont essayé de faire la fovéa caméras et écrans (haute-rés au milieu où nos yeux sont mieux, basse résolution sur la périphérie). Le résultat est toujours quelque chose qui est plus coûteux et moins capable qu'un capteur rectiligne.
La réalité de l'efficacité commerciale est que vous pouvez rêver de capteurs / affichages non rectilignes, mais ce n'est pas rentable ou évolutif pour le moment.
la source
Bien qu'ils ne soient pas physiquement carrés. Ils sont représentés de manière abstraite sous la forme d'un carré et, lorsqu'ils sont affichés sur des écrans avec une résolution plus basse, ils sont considérés comme un carré. Principalement en raison de la paresse et de moins de transformation. La mise à l'échelle de formes différentes, telles que les hexagones, nécessite davantage de traitement, car vous croisez une fraction de pixels. Tandis qu'un carré ne fait que multiplier chaque côté par la constante. En essayant également de tracer une grille hexagonale, vous ne pouvez pas simplement faire un emplacement X, Y facile.
la source
Il y a deux façons de répondre à cette question:
Dans les deux cas, il n'est pas nécessaire que les pixels soient carrés, mais ils le sont uniquement par convention. Exemple: les premiers écrans larges utilisaient le même nombre de pixels - matériels et logiciels - que les écrans non grand-écran, mais les pixels étaient conceptuellement rectangulaires (la taille horizontale était supérieure à la taille verticale) plutôt que conceptuellement carrés. la norme. Néanmoins, l’utilisation de formes de pixels qui ne se rapprochent pas d’un carré n’est pas standard et risque de poser d’énormes problèmes de compatibilité, du moins dans l’utilisation courante.
RÉPONSE COURTE:
Les pixels sont traités comme des carrés par convention.
la source
En tant que spectateur, je dirais que c'est parce que l'écran sur lequel vous regardez habituellement est rectangulaire. Un format d'image commun est 1920 par 1080. Une certaine longueur, telle que 720, permet de reconnaître la "haute définition". Cela pourrait très bien être plus difficile à réaliser avec des pixels circulaires ou hexagonaux.
la source