带你走进程序员眼中的“像素”世界,深入理解图显系统中的RGB与YUV
时间:2021-09-26 13:43:51
手机看文章
扫描二维码
随时随地手机看文章
[导读]对所有人而言,像素这个词并不陌生。各大手机厂商新品发布会时高频出现的一个词就是xxx手机像素多少多少,分辨率多高多高。那么这里说的手机像素是什么含义呢?以500万像素为例,其含义是在一英寸的CCD面积上有500万个象素点,500万像素的分辨率是2592*1944或者2560*19...
对所有人而言,
以500万像素为例,其含义是在一英寸的CCD面积上有500万个象素点,500万像素的分辨率是2592*1944或者2560*1920。针对像素格式,介绍和分析其在图显系统中的实现原理和细节。
像素
这个词并不陌生。各大手机厂商新品发布会时高频出现的一个词就是xxx手机像素
多少多少,分辨率多高多高。那么这里说的手机像素是什么含义呢?以500万像素为例,其含义是在一英寸的CCD面积上有500万个象素点,500万像素的分辨率是2592*1944或者2560*1920。针对像素格式,介绍和分析其在图显系统中的实现原理和细节。
像素格式基本概念
像素格式描述了像素数据存储所用的格式,定义了像素在内存中的编码方式。像素表示方式
下图标识了不同应用场景下所看到的像素格式的不同表示方式,虽然说像素格式不同但他们都是为了同一个目的:呈现色彩空间。bpp
bpp这个参数在代码中经常可见。例如libdrm代码中申请创建framebuffer的函数,bpp作为创建framebuffer的一个入参。static struct bo *
bo_create_dumb(int fd, unsigned int width, unsigned int height, unsigned int bpp)
{
...
arg.bpp = bpp;
arg.width = width;
arg.height = height;
ret = drmIoctl(fd, DRM_IOCTL_MODE_CREATE_DUMB,