参考例子: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. js中字符串编码函数escape()、encodeURI()、encodeURIComponent()区别详解

    1 escape()函数 定义和用法 escape() 函数可对字符串进行编码,这样就可以在所有的计算机上读取该字符串. 语法 escape(string) 参数 描述 string 必需.要被转义或 ...

  2. GetModuleHandleW 分析

    首先查询MSDN,可以清楚地看到 位于kernel32 dll 里面. 有目标就好办,找到这个dll,然后,开工,进入IDA. 跳啊 就到下面那块了. 遗憾的是...显然不是这里阿,实际上下一块调用的 ...

  3. SB般的“WE战队”输掉了比赛

    事实再一次证明,对于LOL这种游戏,国服选手是根本就不能有一点期待的, 国服环境太好了,赢了可以吹,输了不能骂,自信心极度膨胀,估计WE俱乐部都没有个心理咨询师, 下岗了还可以再卖卖脸,卖卖饼, 国服 ...

  4. Tomcat7安装和配置以及优化

    安装Tomcat7 下载安装方法一: 直接下载Tomcat7: wget http://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-7/v7.0 ...

  5. vue生态系统之vue-router

    一.vue-router安装与使用 1.安装 进入项目目录中安装vue-router模块 E:\vueProject\webpackProject>cnpm install vue-router ...

  6. leetcood学习笔记-70-爬楼梯

    题目描述: 第一次提交:(超时) class Solution: def climbStairs(self, n: int) -> int: if n == 0 or n == 1 or n = ...

  7. c++ 在类函数后加const的意义

    我们定义的类的成员函数中,常常有一些成员函数不改变类的数据成员,也就是说,这些函数是"只读"函数,而有一些函数要修改类数据成员的值.如果把不改变数据成员的函数都加上const关键字 ...

  8. Delphi 日期函数列表

    引用单元 :DateUtils CompareDate 比较两个日期时间值日期部分的大小CompareDateTime 比较两个日期时间值的大小CompareTime 比较两个日期时间值时间部分的大小 ...

  9. 今天工作整整一个月了,来记录一下(web前端)

    25号,工作整整一个月了,时光飞逝, 这一个月以来,无论是工作上还是生活上,都让我成长了很多,也多了些对人生的思考… 先回顾一下找工作的那段时间吧年前找工作有多辛酸,年后找工作就有多幸运那段日子,我这 ...

  10. NX二次开发-bat脚本文件切换NX的环境变量(NX路径和语言)

    路径环境变量切换到NX9.bat @echo off setx /M UGII_BASE_DIR "D:\Program Files\Siemens\NX 9.0" ------- ...