为什么像素为正方形?


207

屏幕上的像素是正方形的,但我不确定为什么。

两个像素化的图像看起来都非常糟糕-但我不确定方形比六角形有什么优势。

六边形也很好地分为3种颜色:

那么LCD / CRT显示器中正方形的优势是什么?


20
请澄清上下文。您是指显示器,图像格式还是印刷品?即使到那时,这个问题也可能太广泛了。
Daniel B

66
像素是无量纲的逻辑单位,实际上并不是正方形,正如@DanielB建议的那样,每个光栅化器对像素的处理方式都不相同。例如,“屏幕像素”的Google图片。
Yorik

5
这个问题也许应该移植到“ 用户体验”或“ 电气工程”上
curiousdannii


13
我不明白 为什么要全力以赴,为什么不将其迁移到机械工程论坛?
Carl Witthoft

Answers:


264

屏幕上的像素是正方形的,但我不确定为什么。

它们不是(不一定)正方形。

有人会说它们从来都不是正方形的(“像素是点样本。它仅存在于一个点。”)。


那么LCD / CRT显示器中正方形的优势是什么?

  • 其他布置(例如三角形,六边形或其他空间填充多边形)在计算上更加昂贵。

  • 每种图像格式都基于以矩形阵列排列的像素(无论它们是什么形状)。

  • 如果我们选择其他形状或布局,则必须重新编写许多软件。

  • 当前所有制造具有矩形像素布局的显示器的工厂都必须重新调整为其他布局。


使用六角坐标系的实用性

使用六边形坐标系时,通常必须考虑以下四个主要方面:

  • 图像转换–能够将真实世界中的图像直接捕获到六边形格子上的硬件非常专业,因此通常不可用。因此,在执行任何处理之前,需要一种有效的方法将标准方格图像转换为六边形图像。
  • 寻址和存储–对图像执行的任何操作都必须能够索引和访问单个像素(在这种情况下为六边形而不是正方形),并且六边形形式的任何图像都应以六边形形式存储(否则必须对每个图像进行转换)访问图像的时间)。而且,易于遵循并使得某些函数的算术更简单的索引系统将非常有价值。
  • 图像处理操作–为了有效利用六边形坐标系,必须设计或转换操作,以充分利用系统的优势,尤其是用于索引和存储的寻址系统的优势。
  • 图像显示–与首先获取图像一样,显示设备通常不使用六边形格子。因此,转换后的图像必须返回到可以发送到输出设备(无论是显示器,打印机还是其他实体)的形式,并且显示结果以自然比例和比例显示。这种转换的确切性质取决于所使用的索引方法。这可以是原始转换过程的简单还原,也可以是更大的卷积。

六角坐标系的问题

但是,六角坐标系存在一些问题。一个问题是人们非常习惯于传统的方格。

十六进制的推理似乎是不自然的,因此有些困难。尽管可以说人们可以习惯于这种习惯,但默认情况下,他们自然会倾向于使用传统的笛卡尔坐标系进行推理,而六角形系统只是次要选择。

缺少映射到六边形格子的输入设备,以及缺少如此显示的输出设备,这也是一个障碍:

  • 从正方形转换为六边形并再次返回的必要性降低了在六边形格子上进行操作的有用性。

  • 由于此类晶格比相同外观尺寸的等效正方形晶格更密集,除非以故意高于要操作的分辨率馈送图像,否则转换后的图像必须外推某些像素位置(通常不如拥有所有像素位置那样理想)直接从来源提供的像素)。

  • 转换回正方形晶格会使某些像素位置相互折叠,从而导致明显的细节损失(这可能导致图像质量低于最初输入的图像)。

如果要在自己的视觉工作中使用六边形坐标系,那么他们应该首先确定这些问题是否被六边形操作的固有优势所抵消。

六角坐标系


是否尝试过其他形状或布局?

XO-1显示屏为每个像素提供一种颜色。颜色沿从右上角到左下角的对角线对齐。为了减少由这种像素几何形状引起的颜色伪影,当图像发送到屏幕时,显示控制器会模糊图像的颜色分量。

XO-1显示器(左)与典型液晶显示器(LCD)的比较。图像显示每个屏幕1×1毫米。典型的LCD将3个位置的组作为像素进行寻​​址。OLPC XO LCD将每个位置作为一个单独的像素寻址:

在此处输入图片说明

来源OLPC XO

其他显示器(尤其是OLED)采用不同的布局-例如PenTile

在此处输入图片说明

布局由梅花形组成,在每个单位单元中包括两个红色子像素,两个绿色子像素和一个中心蓝色子像素。

它的灵感来自于人类视网膜的仿生,该仿生具有几乎相同数量的L型和M型视锥细胞,但S视锥细胞却少得多。由于S锥体主要负责感知蓝色,而蓝色不会明显影响亮度的感知,因此相对于显示器中的红色和绿色子像素而言,减少蓝色子像素的数量不会降低图像质量。

此版面经过专门设计,可与子像素渲染配合使用,并取决于该子像素渲染,平均每个像素仅使用一个像素和四分之一的子像素来渲染图像。也就是说,任何给定的输入像素都映射到以红色为中心的逻辑像素或以绿色为中心的逻辑像素。

来源PenTile矩阵系列


像素的简单定义

可以在电视屏幕,计算机显示器等上共同形成图片的任何很小的

来源http://www.merriam-webster.com/dictionary/pixel


像素点

在数字成像中,像素,像素或图片元素是光栅图像中的物理,或者是所有点可寻址显示设备中最小的可寻址元素;因此,它是屏幕上所显示图片的最小可控元素。

...

像素不需要渲染为小正方形。此图像显示了使用点,线或平滑滤波从一组像素值重建图像的替代方法。

在此处输入图片说明

像素


像素长宽比

大多数数字成像系统将图像显示为微小的正方形像素的网格。然而,一些成像系统,特别是那些必须与标准清晰度电视电影兼容的成像系统将图像显示为矩形像素的网格,其中像素的宽度和高度不同。像素宽高比描述了这种差异。

像素长宽比


像素不是小方块!

像素是点样本。它仅存在于某个点。

对于彩色图片,一个像素实际上可能包含三个样本,每个原色在采样点上为图片贡献一个样本。我们仍然可以将其视为颜色的点样本。但是我们不能将像素视为正方形或除点以外的任何东西。

在某些情况下,对像素的贡献可以以低阶方式用一个小正方形来建模,但对像素本身却不能。

像素不是一个小方块!(Microsoft技术备忘录6 Alvy Ray Smith,1995年7月17日)


5
需要在“计算上更昂贵”的点上引用。理想地链接到考虑六边形棋盘格化和计算分析的研究论文。听起来好像您只是在命名一些听起来合理的解释。
djechlin

4
此外,作为改进的一部分,我们始终会重写许多软件。我不确定你的意思。
djechlin

5
@djechlin当前,所有视频/图像规格均基于矩形像素阵列。任何视频或图像的显示都需要从直角(直角坐标)坐标系转换为六边形坐标系。在直角坐标系上绘制线的计算比在六边形坐标系上绘制的计算简单(这是基本数学)。我需要进一步解释吗?
DavidPostill

2
@djechlin答案已更新且包括引文
DavidPostill

4
+1为您的Microsoft技术备忘录来源。很棒的答案。
shock_gone_wild

71

我想提供一种替代David Postill的深思熟虑的答案。正如标题所暗示的那样,他在回答中提出了像素为正方形的问题。但是,他在回答中发表了非常有见地的评论:

有人会说它们从来都不是正方形的(“像素是点样本。它仅存在于一个点。”)。

这个职位实际上可以产生一个完全不同的答案。与其关注每个像素为什么不是正方形,还可以关注为什么我们倾向于将这些点采样组织成矩形网格。实际上并非总是这样!

为了说明这一点,我们将在将图像视为抽象数据(例如点网格)与其在硬件中的实现之间来回播放。有时,一种观点比另一种观点更有意义。

首先,让我们回到很远的地方。传统的胶片摄影根本没有“网格”,这就是为什么与现代数码摄影相比,摄影总是看上去如此清晰的原因之一。相反,它具有“晶粒”,该晶粒是晶体在薄膜上的随机分布。它大致是均匀的,但不是很好的直线阵列。这些晶粒的组织来自薄膜的生产过程,利用化学性质。结果,电影真的没有“方向”。这只是信息的二维散布。

快进电视,特别是旧的扫描CRT。CRT需要不同于照片的东西:它们需要能够将其内容表示为数据。特别是,它必须是可以通过电线以模拟方式流化的数据(通常是一组不断变化的电压)。照片为2d,但我们需要将其转换为1d结构,以便它可以在一维(时间)中变化。解决方案是按行(而不是像素!)将图像切成薄片。图像逐行编码。每条线都是模拟数据流,而不是数字采样,但线彼此分开。因此,数据在垂直方向上是离散的,但在水平方向上是连续的。

电视必须使用物理荧光粉渲染这些数据,而彩色电视则需要一个网格将其划分为像素。每台电视在水平方向上的处理方式可能不同,提供更多或更少的像素,但是它们必须具有相同的行数。从理论上讲,它们完全可以按照您的建议使每隔一行像素偏移一次。但是,实际上并不需要。实际上,他们走得更远。很快意识到,人眼以某种方式处理运动,使他们实际上每帧只发送一半的图像!在一个帧上,他们发送奇数行,在下一帧上,他们发送偶数行,并将它们缝合在一起。

从那时起,将这些隔行扫描的图像数字化一直是一个小技巧。如果我有480线图像,由于隔行扫描,实际上每帧中只有一半的数据。当您尝试查看某个物体在屏幕上快速移动时,此结果非常明显:每条线在时间上彼此偏移1帧,从而在快速移动的物体中产生水平条纹。我之所以这样说是因为它很有趣:您的建议会将网格中的其他每一行向右偏移半个像素,而隔行扫描会将网格中的其他每一行偏移一半的时间!

坦白说,将这些漂亮的矩形网格用于事物变得容易。没有任何技术上的理由可以做得更好,所以它停滞了。然后我们进入了计算机时代。计算机需要生成这些视频信号,但是它们没有模拟功能来写出模拟线路。解决方案是自然的,将数据拆分为像素。现在,数据在垂直和水平方向都是离散的。剩下的就是选择如何制作网格。

制作矩形网格非常自然。首先,那里的每台电视都已经在做!其次,在矩形网格上绘制线条算算是多少比绘制他们的六角形一个简单的。您可能会说“但是您可以在六边形网格上的3个方向上绘制平滑线,而在矩形网格上只能绘制2条”。但是,矩形网格使绘制水平线和垂直线变得容易。六角形网格只能绘制一个另一个。在那个时代,很少有人将六角形用于非计算性工作(矩形纸,矩形门,矩形房屋...)。使水平垂直方向平滑的能力垂直线远远超过了制作平滑的全彩色图像的价值……尤其是考虑到第一个显示器是单色的,而且图像的平滑度在思考中起着重要作用还需要很长时间

从那里开始,您对于矩形网格具有非常强的先例。图形硬件支持软件的工作(矩形网格),软件针对硬件(矩形网格)。从理论上讲,某些硬件可能会尝试制作一个六边形网格,但是该软件并没有给予奖励,没有人愿意为两倍的硬件付出代价!

这很快将我们带到了今天。我们仍然需要水平和垂直线条流畅,但是使用高端视网膜显示器,这一点变得越来越容易。但是,开发人员仍受过训练,可以根据旧的矩形网格进行思考。我们看到一些新的API支持“逻辑坐标”,并进行了抗锯齿处理,以使其看起来好像有一个完整的连续2d空间,而不是刚性2d像素的网格,但是速度较慢。最终,我们可能会看到六边形网格。

实际上,我们确实看到了它们,只是没有屏幕。在印刷中,使用六角形网格非常普遍。人眼接受六角形网格的速​​度比接受矩形网格的速​​度快得多。它与不同系统中“混叠”线的方式有关。六角形网格以不太苛刻的方式混叠,使眼睛更舒适(如果六角形网格需要上下移动一排,则它们可以在对角线过渡上平稳地进行操作。矩形网格必须跳过,从而创建非常明显的不连续性)


2
非常适合解释电视的出现:模拟流。该标准已经存在了70年,并且以与黑白兼容的方式添加了颜色,这些天来努力实现!现在有几种视频格式?

3
“”“电视必须使用物理荧光粉渲染数据,并使用网格将其划分为像素。”“”-黑白电视是否如此?我的理解是,彩色电视附带了离散的“物理荧光粉”(它仍然从未对应于数据流中的任何像素样项),而单色CRT仅具有连续的荧光粉涂层。
Random832 '16

我喜欢历史,但是对于向现代设备的过渡却持不同意见。尽管传统显示是直线的,但实际上,电视在水平方向上是模拟的,直到您查看电视上的彩色荧光粉为止。它实际上是六角形的!我建议我们采用直线型的真正原因是VLSI的布局比直线型更容易,而不是六角形排列。
user3533030'1

1
在黑白电视中,为什么不只将磷光体涂抹在表面上,而让电子流变得更强或更弱,使它们以完全模拟的方式发出更多/更少的光?简而言之,为什么根本没有(水平)像素?一旦有了颜色,事情就会变得棘手。但是即使这样,如果我没记错的话,彩色信号也不会按像素定义。对于水平样本,从均匀强度样本重构信号所需的样本数量是频率带宽的函数,而半“样本”偏移量对此没有改善。
Yakk

2
@Yakk大多数黑白CRT的制作都完全一样-早期的BW电视CRT源自雷达/示波器CRT,这些CRT通常以模拟X / Y或极坐标方式进行控制,而没有光栅。电视仍然使用逐行扫描,因为这与信号的编码方式相对应,但是线路上没有像素。一些特殊的显示器(主要用于飞机驾驶舱)甚至使用了磷光体,它们的颜色会根据电子束受到的撞击程度而改变颜色(这种显示器称为penetron)。
rackandboneman

21

两个原因:

  • 相对于圆形,三角形或四边形以上的矩形,其优点是可以在“浪费空间”最少的情况下与其他矩形相邻放置。这确保了像素的整个区域都对图像有所贡献。可以存在“装配在一起”的其他形状,但是它们的制造可能比简单的正方形或矩形更复杂,但不会带来任何其他优点。

  • 通用像素化显示器-可能用于显示任何类型信息的显示器都需要具有不支持某些类型的形状的像素。因此,像素应为正方形,而不是在一个方向上更长或更宽,并且不得以任何方式剪切或旋转。

    • 如果像素比宽高,则对于相同数量的像素,水平线的最小粗度将大于垂直线的最小粗度,从而使水平线和垂直线看起来不同。

    • 如果像素旋转,则只有与旋转角度匹配的倾斜线才会看起来很平滑,其他任何线都会看起来参差不齐。大多数操作系统和生产力软件都依赖于直线,因此会出现很多边缘或锯齿状的现象。

    • 剪切像素(菱形)将是两个世界中最糟糕的-对角线或水平/垂直线都不会平滑。

如果您对通用显示器不感兴趣,而对特定用途感兴趣,那么您可以更加灵活。一个极端的例子是7段LED,如果您只需要显示一个数字,则只需要以这种方式排列7个非正方形像素即可。或15段LED允许字母。


嗯,我不确定cost参数是否适用于六边形(我可能错了)。
蒂姆(Tim)

@Tim-您应该对此主题进行一些研究。如果六边形在技术上有优势,那么显示器制造商将使用它们,这是因为它们没有被使用,这表明它们在成本或性能上没有任何优势。
Ramhound

2
@Ramhound是的,知道了。我需要进行更多研究-这个问题我的研究。我要问的原因为什么不是六角形-不是为什么正方形(以及一些成本比较的链接会很好-idk,如果有人做过)
蒂姆

2
“它们制造起来可能比简单的正方形或矩形要复杂得多” –需要引用。“还没有引入任何其他优势”-需要引用。
拉斐尔2015年

1
@Raphael好吧,您实际上并不需要引用-在CRT上,“像素”不是正方形或矩形。它们具有良好的颜色分布,并且需要较少的子像素渲染“技巧”。当LCD出现时,它们简直无法比拟-技术是非常矩形的,因此更传统的布局或多或少是不可能的。当然,现代“ LCD”实际上不一定是LCD-例如,您不会在OLED中找到任何“液晶”。最后,六边形(或老式的CRT,类似)对于图片和电影非常适用,但对UI则无效。
a安

15

像素不一定是正方形的!

在过去,像素具有矩形形状。这就是为什么在任何专业的图像/视频编辑器(例如Photoshop,Premiere,Sony Vegas)中都会看到像素长宽比选项的原因。仅现代电视和PC监视器标准具有正方形像素。

Photoshop像素长宽比

著名的例子:

  • PAL模拟电视/ DVD:720x576,显然不是16:9或4:3,而是5:4。但是,当设置正确的像素长宽比时,它将产生正确的未拉伸输出图像

  • NTSC模拟电视/ DVD:720x480,即3:2。设置长宽比后,它将变为16:9或4:3,就像上面的PAL一样。较低的垂直分辨率也可以解释为什么NTSC DVD的清晰度不如PAL

  • VCD:PAL 352x288,NTSC 352x240。两者都使用4:3屏幕长宽比
  • SVCD480x480,毫不奇怪,它不会产生方形输出
  • DV1440x1080 16:9全高清分辨率
  • CGA:4:3的320x200640x200(是的,较旧的计算机屏幕确实具有矩形像素)
  • 除320x200和640x200外,EGA还支持4:3屏幕的640x350

Adobe Premiere Pro-使用宽高比


7
可以通过更多地解释纵横比(而不只是链接)来改善此答案。本身还不清楚为什么特定的屏幕分辨率不能具有正方形像素。
乔恩·本特利

1
我不了解方形像素和分辨率之间的联系。
AL

正如我上面已经说过的@AL。720:576为5:4,如果像素为正方形,则宽高比为5:4。但是,如果像素宽高比设置为不同于1的值,则会产生不同的宽高比。但是我在这里对分辨率说什么呢?我刚刚说过纵横比
phuclv

3
@AL:此答案证明并非屏幕(或文件)中的所有像素都是正方形:有些是矩形。
slebetman '16

1
Atari 8位计算机具有某些图形模式,分辨率为80x192,从而产生非常非正方形的虚线像素。
DaveP

10

答案是:它们应该是六边形的,因为六边形拼贴提供了最佳的光学质量,所以它将是未来。
但我认为它们仍然是方形的有两个主要原因:

  • 将位图图像数据表示为2d数组在正方形网格上比较容易(为了简化硬件和人类)
  • 由于历史原因,这是有历史的,所以由于#1的原因,这种情况会持续一段时间。

更新资料

这个主题是惊悚片。几乎有1万次观看。人们想掌握像素:)有趣的是,有人发现问题与屏幕分辨率或四边形的“四边形”有关。
对我来说是:哪种积木,正方形或六边形可提供更好的光学效果

首先,我们需要一个简单的平铺,但是它可以更好地覆盖自定义区域,并且确实是六角形平铺。从简单的测试中可以很容易理解。强大的测试称为“环”测试。为了简单起见,在此我将三元颜色设为:0-背景,1-灰色和2-黑色。

盯着圆点,我们将尝试扩大戒指,使其看起来像这样连续:

在此处输入图片说明

当然,我还要绘制水平/垂直线,以完成许多任务,例如UI和印刷设计或平台游戏。我们称其为“ Bar Test”:

在此处输入图片说明

通过此测试,我可以选择在实际条件下看起来更好的线条样式。使用垂直线,它甚至更简单。对于特定的任务显示,所有内容都可以进行硬编码,因此要绘制带有功能的线,我们只需在水平方向上重复其段即可。问题是,这两个正方形和正六边形像素方法有效,但如果你试图用方形瓦片同样的测试,你很快就会发现其中的差别。DPI很高时,它并不是那么引人注目,但是为什么要尝试制作更多的DPI而不是尝试更有效的方法呢?我没什么感觉。


对于RGB颜色,这可能需要更复杂的结构。实际上,我想要一个灰度设备,如上图所示。具有快速的像素响应以制作动画也很酷。

为了好玩,我制作了简单的六边形结构,其中像素可以是RGB。当然,我不知道在实际的设备上怎么看,但是看起来仍然很酷。

在此处输入图片说明


非正式的解释说明,可以
帮助描述这种情况:

在此处输入图片说明


1
我部分不同意1的两个部分,因为a)3dmdesign.com/development/hexmap-coordinates-the-easy-way(尽管确定可能会更难设置,但将坐标映射到它们并不困难) b)从什么时候开始考虑人为设计的计算机的细节。
蒂姆(Tim)

@Tim没有计算机的详细信息,但是人的自我倾向于以“矩形”方式对待信息,从而导致奇怪的设计。有很多例子,例如这个机器人 。为什么要让机器人看起来像人呢?从人体工程学的角度来看,该机器人应该更像章鱼,但人是人。
Mikhail V

1
@MikhailV使机器人像人一样,允许它使用为人制造的东西。否则,一切都必须针对机器人进行特殊制作。
托尔比约恩Ravn的安德森

@ThorbjørnRavnAndersen是的,就像一件T恤和太阳镜:)
Mikhail V

1
三角形是否可以胜过六边形?
Raynet'1

9

一些答案已经触及了这一点...我认为就数据存储而言,非矩形阵列将产生几乎无法想象的复杂性,并且极易出错。我在网格不是矩形的物理系统(交错网格-数据点位于半边等)上建模方面具有丰富的经验。索引是一场噩梦。

首先,存在如何定义边界的问题。图像通常是矩形的(同样,这是历史的问题-如果我们的屏幕是六角形的,事情会容易一些)。因此,即使图像边界也不是直线。您是否在每行中放置相同数量的像素?您是否交替使用奇/偶?并且...左下像素是左上像素还是右上像素?您会立即获得几乎10种不同的标准,并且程序员每次都要记住它的运行方式(即使行主要和列主要差异或自上而下/自下而上的索引差异有时也会导致错误)。这带来了转换景观/人像的巨大问题(自然转换,在矩形网格上是微不足道的,但是需要插值,并且在十六进制或不同网格上几乎必然是有损过程)。

然后是人们具有矩形布局的自然本能。您的数学矩阵具有相同的布局。同样,在大多数情况下,笛卡尔坐标系几乎是最容易使用和理解的。在(x,y)处获取像素的索引仅仅是x + width * y(而不是相反-扫描线索引的遗留物)。如果width是2的倍数,则您甚至不需要乘法。当基向量不正交时,使用非直角工作会产生许多复杂性,这些复杂性源于向量代数:旋转不再是简单的cos / sin叠加。翻译变得很奇怪。这带来了很多计算复杂性(计算成本将高出几倍),并且 代码复杂度(我记得曾经对Bresenham算法进行过编码,我真的不希望尝试以十六进制形式进行编码)。

通常,插值和抗锯齿有很多算法依赖于正方形网格。例如,双线性插值。所有基于傅立叶的处理方法也都与矩形网格相关(FFT在图像处理中非常有用)……好吧,除非您先进行一些昂贵且有损的变换。

所有示出的数据在存储器和文件格式应当存储为矩形网格。显示方式取决于显示设备/打印机,但这应该是驱动程序的问题。数据应该与设备无关,并且不应假定您拥有什么硬件。如上面的帖子中所示,由于人眼的生理状况和其他更多技术因素,使用非矩形像素有很多优势-只需将数据保存在正方形网格中,否则您将大批神经质程序员来回答: )

尽管如此,我实际上还是想过要采用圆形像素排列以整合到表盘上(使指针呈直线)。当我开始想象使像没有穿过中心的直线这样简单的事情变得多么困难时,我得出了我上面提到的许多结论。


“这带来了转换风景/人像的巨大问题” <...>“这甚至对于矩形像素也是一个问题”-Oxymoron?我个人没有习惯旋转显示器,所以为什么要旋转90 *图像。
Mikhail V

您可以看到很多垂直屏幕(某些火车站的进/出站屏幕,各种广告面板等)实际上只是旋转了90度的常规屏幕。观察:img.worsethanfailure.com/images/200710/error'd/…–
Orion

这被称为“设备的不当使用”。顺便说一下,可以轻松解决六角网格上任意点的画线算法。我从没做过,所以我尝试说服力,结果可能会比方形网格更加优雅。
Mikhail V

另一个例子是手机,例如平板电脑,它们可以始终动态地旋转图像。为此,数据(文件格式)和屏幕都必须具有逻辑上正方形的像素(无论硬件实际执行了什么操作)。线条绘制算法在定义上存在问题:Bresenham确保线条在水平或垂直方向(取决于斜率)的宽度精确为一个像素。十六进制网格中每隔一行的半角偏移使“一个像素厚”的含义变得模棱两可。当然可以,但是您首先需要重新定义和推导该算法。
Orion

“需要具有正方形像素”这就是问题所在。切勿在生产显示设备时考虑到有人要旋转显示设备。这只是一个误解,还会导致软件误解和冗余抽象层。至于计算:特别是在计算机视觉中,许多有效的解决方案本质上都是双向的,如果您要执行此类操作,则极坐标会很有帮助。
米哈伊尔五世


7

这个问题更多的是关于排列,而不是像素的实际形状。

六角形排列的问题在于将六角形位置转换为笛卡尔坐标,反之亦然。

您可以使用原始的Bravais晶格索引

https://zh.wikipedia.org/wiki/Bravais_lattice

或者您使用矩形的常规单元格并添加多个内部“基本矢量”。(对于最小的矩形晶格,您需要两个基向量;对于最小的正方形晶格,您需要大约16个基向量)。

在第一种情况下,涉及角度变换,在第二种情况下,需要每个像素x, y并指定基本索引j

因此,最后,“正方形”像素必须是我们笛卡尔文化的副产品。

顺便说一句,拥有这项技术会很酷,但是与当前的范例非常不兼容。实际上,在为视觉系统生成晶格时,生物系统更喜欢六角形。想想苍蝇的眼睛。人体视网膜也跟随更接近六边形(而不是正方形)的位置。

参见此处http://www.kybervision.com/resources/Blog/HumanRetinaMosaic.png并返回显示页面http://www.kybervision.com/Blog/files/AppleRetinaDisplay.html

毫无疑问,六角形格子更适合可视化。但是您可以这样想,每次工程师想要改善显示效果时,他们都会面临以下难题:1)切换为六边形,更改范例,重写代码行和硬件行列2)使“正方形”变小,添加内存,增加两个数字以像素为单位显示尺寸。选项2)总是更便宜。

最后,来自方形像素发明者的一句话http://www.wired.com/2010/06/smoothing-square-pixels

方形像素的发明者Russell Kirsch可以追溯到绘图板上。在1950年代,他是开发方形像素的团队的成员。“对方来说,这样做是合乎逻辑的,”基尔施说。“当然,合乎逻辑的事情不是唯一的可能性,而是我们使用正方形。从那时起,世界上每个人都一直在遭受痛苦,这是非常愚蠢的。” 现在已退休并居住在俄勒冈州波特兰市的基尔希(Kirsch)最近开始着手进行补偿,受古代马赛克建造者的启发,他们用砖块构成了令人惊叹的细节场景,基尔希(Kirsch)编写了一个程序,该程序可以使数字化的笨重,笨拙的正方形变成现实。图像变成由形状各异的像素组成的更平滑的图片。”



是的(好点),但是该坐标系仍然不是笛卡尔坐标系。例如,“ 3x3”的表面“ hexmap”区域不是9(甚至不近似)。这不是角度问题,而是公制问题,六边形晶格不是旋转的矩形(或正方形)晶格。
alfC

公平点-但是不需要笛卡尔吗?
蒂姆(Tim)

1
正如我所说,从原则上讲,我认为这更多是一个范式问题。(文化偏向技术和技术是黏性的,技术很难孤立地改变)。
alfC

我不同意这是范式的重大变化。对于纯数字格式的情况,它的地址更改非常简单。实际上,您需要一个相同的离散集,以便“ blit”功能可以知道将数据写入何处。至于来自矩形源的图像数据,是的,存在问题。并且为十六进制显示创建字体将比在正方形上更为简单(因倾斜而引起的头痛更少)。
米哈伊尔五世

7

要了解为什么直线像素具有价值,您需要了解传感器和显示器的制造过程。两者均基于硅布局。两者均源于VLSI的起源。

为了实现非直线 传感器像素,您需要准备:

  1. 以非直线方式布置光敏元件(例如,六边形圆圈)。
  2. 以非直线方式布置收集电荷的导线(例如CMOS / CCD)
  3. 将该布局扩展为>> 1M x 1M,以满足市场需求
  4. 将信息匹配(或内插)到直线显示

为了实现非直线显示像素,您需要所有相同的东西。

许多人试图制作中央凹相机和显示器(中间最好的是中间位置的高分辨率,而周围最好的是低分辨率)。结果总是比线性传感器更昂贵,功能更弱。

商业效率的现实是您可以梦想使用非直线传感器/显示器,但目前尚不具有成本效益或可扩展性。


如果在变形镜头后面使用,传统的正方形像素像素传感器将变成带有矩形像素的像素传感器。正如散景变成椭圆形。
JDługosz

4

虽然它们在物理上可能不是正方形。它们抽象地表示为正方形,当以较低的分辨率显示在显示器上时,它们被视为正方形。主要是由于懒惰和较少的处理。缩放像六边形之类的不同形状需要更多的处理,因为您跨过像素的一部分。而Square只是将常数乘以每一边。此外,尝试绘制一个十六进制网格,您不仅可以做一个简单的X,Y位置。


您将+ x 100%绘制为完整行。然后,下一行偏移+ 50%,向下移动75%。第三行与第二行的偏移量为-50%(或第一行的偏移量为0%)。尽管这更加复杂,但我认为它仍然很容易-与标准的笛卡尔相对,存在十六进制坐标系-将Y倾斜30° 3dmdesign.com/development/hexmap-coordinates-the-easy-way
蒂姆(Tim)

4

有两种方法可以回答这个问题:

  1. 在硬件中,像素不一定在物理上是正方形的,而是可以是显示设备制造商认为合适的任何形状或布置。实际上,它们通常不是正方形的。
  2. 在软件中,像素被认为是“正方形”,因为它们被认为代表着相同宽度和高度的区域。这并不意味着在进行渲染(例如放大)时,必须将它们绘制为正方形,但是它们必须代表具有正方形比例的图像区域的数据,否则图像将以一种或另一种方式拉伸。这纯粹是按照惯例。

在这两种情况下,像素都不必是正方形的,但纯粹是按照惯例。恰当的例子:早期的宽屏显示器在硬件和软件上使用的像素数与非宽屏显示器相同,但是从概念上讲像素是矩形的(水平尺寸大于垂直尺寸),而不是正方形的像素。标准。然而,使用不近似正方形的像素形状是非标准的,并且至少在日常使用中可能会引起严重的兼容性问题。

简短答案:

按照惯例,像素被视为正方形。


-1

从旁观者的视角来看,我不得不说这是因为您通常无论如何观看的屏幕都是矩形的。常见的宽高比是1920 x1080。超过一定的长度(例如720)可以识别“高清”。用圆形或六边形像素很难做到这一点。


3
圆形不会细分,但是我不明白为什么不能只缩小六边形。看到我用汽车制成的图像-可以容纳更多吗?
蒂姆(Tim)

这些长宽比是很好的矩形,因为形状像素以...网格布局。
2016年

1
@Tim,一旦您放弃笛卡尔坐标或常规索引,从“用户”的角度来看,镶嵌可能并不那么重要。视网膜未镶嵌(完美),并且可能会更最优的(例如,以避免莫尔en.wikipedia.org/wiki/Moir%C3%A9_pattern或光衍射伪像)。
alfC
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.