参考例子:https://www.grc.com/ctwhat.htm

https://en.wikipedia.org/wiki/Subpixel_rendering

http://archernzy.blogspot.com/2017/03/sub-pixel-rendering.html

1, SPR的一些缺点

(1)只能用在LCD上,不可用在CRT上

这是显而易见的,因为SPR基于子像素重新排列,而CRT是不能以子像素为单位操作的

(2)黑色或白色,即强对比度的时候效果最好

(3)仅在水平方向起作用

因为SPR使用相邻子像素扩展当前Pattern

(4)对子像素顺序敏感

需判断子像素是RGB还是BGR,否则可能把R/B判断混乱

2, SPR基本思想

The idea behind sub-pixel rendering is to use an LCD display's directly addressable sub-pixels to triple the effective horizontal resolution of the display.

3, SPR的来源

每个像素一般情况下是由RGB三原色组成,每个像素上的每种颜色叫一个"子像素"。 子像素
在家用电视上我们常常说到"真4K"和"假4K"。其中"真4K"采用的面板一般是3840x2160x3个子像素。从前面介绍LCD我们知道面板上通常采用CF(Color Filter)得到不同颜色的光,因此一种想法就是构造RGBW这样的4色子像素结构,即2880*2160*4。这样从色彩的角度来看,每个颜色的分量都减少了1/4,但是亮度上来说,由于增加了一份W,因此RGBW整体效果看起来会明亮很多。由于颜色分量的减少,因此为了

由于人们对子像素的深入了解,这里主要的研究算法为:

基于色彩转换的RGB<-->RGBW,由于颜色分量的减少,为了正确显示颜色,就需要有RGBW算法。

基于子像素减少的Sub pixel Rendering,为了弥补像素的减少,让3个子像素表示原有4个像素的效果。

4, RGB, EGBW, Pentile RGBG, RGB Delta子像素排列

(1) RGB

(2) RGBW

RGBW主要是增加了W子像素,不仅可以提高面板的整体亮度表现,同时也可以达到节约成本的目的。主推RGBW面板的包含韩国的LGD的M+以及日本JDI的WhiteMagic。

(3) Pentile RGBG

Pentile RGBG是由Samsung所主导的在AMOLED上的Pentile排布中的一种,由于专利问题,目前国内的各大厂商都无法生产RGBG排布的面板。

(4) RGB Delta

由于专利问题,目前国内各大厂商只能生产RGB delta排布的面板。

(5) Pentile RGBG vs. RGB Delta

同样表示2行3列共6个像素
  • 采用RGBdelta结构,一共使用了4个完整的RGB单元,相当于节省了1/3的子像素,共12个子像素;
  • 采用RGBG的结构,一共使用了6个不完整的RGB单元,每个单元分别包含RG或者BG2分量的子像素,子像素个数为12个;
可见,RGBG针对不同的分量的取舍不一样,更多的保留了G子像素,人眼对G分量最敏感,因此从这个角度上来看RGBG似乎是一种更优的结构。

SPR, subpixel rendering的更多相关文章

  1. CSS Animation triggers text rendering change in Safari

    薄荷新首页上周五内测,花哥反馈在 MacBook Safari 浏览器下 鼠标移动到第一个商品的时候后面几个商品的文字会加粗.这是什么鬼??? 待我回到家打开笔记本,鼠标蹭蹭蹭的发现问题远不止如此: ...

  2. #IrrlichtEngine# Example1 HelloWorld

    配置IDE环境来使用irrlicht引擎: (VS2012下)菜单栏项目 -> 项目属性窗口下 C/C++ -> 常规 -> 附加包含目录中添加irrlicnt引擎文件目录下incl ...

  3. Perfect smooth scrolling in UITableViews

    https://medium.com/ios-os-x-development/perfect-smooth-scrolling-in-uitableviews-fd609d5275a5 Diffic ...

  4. 提高HTML5 canvas性能的几种方法

    简介 HTML5 canvas 最初起源于苹果(Apple)的一项实验,现在已经成为了web中受到广泛支持的2D快速模式绘图(2Dimmediate mode graphic)的标准.许多开发者现在利 ...

  5. 〖Linux〗Kubuntu14.04 平滑字体的设置

    有没有感觉终端的字体锯齿感觉非常强? 经过搜索后发现可以平滑字体显示得更漂亮一点: System Settings > Application Appearance > Fonts I e ...

  6. Real Time Rendering 2

    [Real Time Rendering 2] 1.The light vector l is usually defined pointing in a direction opposite to ...

  7. Method for sub-pixel texture mapping and filtering

    BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a method for ...

  8. 【原】实时渲染中常用的几种Rendering Path

    [原]实时渲染中常用的几种Rendering Path 本文转载请注明出处 —— polobymulberry-博客园 本文为我的图形学大作业的论文部分,介绍了一些Rendering Path,比较简 ...

  9. Forward+ Rendering Framework

    近几天啃各种新技术时又一个蛋疼的副产品...额,算是把AMD的Forward+ Sample抄了一遍吧. 其实个人感觉这个AMD大肆宣传的Forward+跟Intel很早之前提的Tiled-Based ...

随机推荐

  1. 简单三层BP神经网络学习算法的推导

    博客园不支持数学公式orz,我也很绝望啊!

  2. 从零开始搭建系统1.4——MySql安装及配置

    安装环境:CentOS7 64位 ,安装MySQL5.7 1.创建mysql目录 2.在MySQL官网中下载YUM源rpm安装包:http://dev.mysql.com/downloads/repo ...

  3. loj2000[SDOI2017]数字表格

    题意:f为Fibnacci数列.求$\prod_{1<=i<=n,1<=j<=m} f[gcd(i,j)]$. n,m<=1e6. 标程: #include<bit ...

  4. prufer序列的性质及相关结论

  5. __str__方法

    """str()就是可以自定义输出返回值,必须是str字符串""" class Dog: def __init__(self, name): ...

  6. CSS盒模型及应用

    其实,CSS就三个大模块: 盒子模型 . 浮动 . 定位,其余的都是细节.要求这三部分,无论如何也要学的非常精通. 所谓盒子模型就是把HTML页面中的元素看作是一个矩形的盒子,也就是一个盛装内容的容器 ...

  7. Openssl命令的使用

    用途: pkcs8格式的私钥转换工具.它处理在PKCS#8格式中的私钥文件.它可以用多样的PKCS#5 (v1.5 and v2.0)和 PKCS#12算法来处理没有解密的PKCS#8 Private ...

  8. SPOJ:[DIVCNT3]Counting Divisors

    题目大意:求1~N的每个数因子数的立方和. 题解:由于N过大,我们不能直接通过线性筛求解.我们可以采用洲阁筛. 洲阁筛的式子可以写成: 对于F(1~√n),可以直接线性筛求解. 对于,我们进行以下DP ...

  9. Delphi exe实例之间传递cmd参数

    {Unit1.pas} 通过这个单元的Button,调用另一个实例: procedure TForm1.Button1Click(Sender: TObject); begin ShellExecut ...

  10. NX二次开发-UFUN计算两点距离UF_VEC3_distance

    NX11+VS2013 #include <uf.h> #include <uf_curve.h> #include <uf_vec.h> UF_initializ ...