RGB与YUV

FPGA零基础学习:VGA协议驱动设计 VGA(Video Graphics Array)视频图形阵列是 IBM 于1987年提出的一个使用模拟信号的电脑显示标准。VGA具有分辨率高、显示速率快、颜色丰富等优点。VGA 接口不但是CRT 显示设备的标准接口,同样也是 LCD 液晶显示设备的标准接口,具有广泛的应用范围。 VGA接口即电脑采用VGA标准输出数据的专用接口。VGA接口是一种D型接口,上面共有15针孔,分成三排,每排五个。其中比较重要的是3根 RGB 彩色分量信号和2根扫描同步信号 HSYNC 和 VSYNC 针。其母头插座引脚编号图 阅读详情

RGB、BMP、YUV

一、RGB简述

1、RGB指的是R(red)红色、G(green)绿色、B(blue)蓝色,各有256级亮度,用数字表示为从0、1、2…直到255,256级的RGB色彩总共能组合出约1678万

种色彩,即256×256×256=16777216,也被简称为1600万色或千万色,也称为24位色(2的24次方 = 2的8次方 × 3)。

2、以位数分类,大致有以下几种:

1)RGB16 :是16位(2个字节)为一个存储单元,来存储一个RGB像素。可以分为RGB565,RGB555

​ RGB565 :R占比5位,G占比6位,B占比5位(高位->低位RRRRR GGGGGG BBBBB);

​ RGB555 :最高位不使用,R占比5位、G占比5位、B占比5位(高位->低位0 RRRRR GGGGG BBBBB)。

2)RGB24 :是24位(3个字节)为一个存储单元,来存储一个RGB像素,RGB各占8位,注意排序(高位->低位 BBBB BBBB GGGG GGGG RRRR RRRR)

3)RGB32 : 是32位(3个字节)为一个存储单元,来存储一个RGB像素,RGB各占8位,注意排序(高位->低位 BBBB BBBB GGGG GGGG RRRR RRRR 0000 0000)

3、以可表示的颜色数为分类,大致有以下几种:

1)RGB332(3+3+2=8位色) :(23)*(23)(2^2) = 88*4 = 256(256 Color).俗称256色。

2)RGB555(5+5+5=15位色) :(25)*(25)(2^5) = 3232*32 = 32768(32768/1024 = 32,32K Color),俗称32千色。

3)RGB565(5+6+5=16位色 ) :(25)*(26)(2^5) = 3264*32 = 65536(65536/1024 = 64,64K Color),俗称65千色。

4)RGB666(6+6+6=18位色):(26)*(26)(2^6) = 646464 = 262144(262144/1024 = 256, 256K Color).俗称262千色.*

5)RGB888(8+8+8=24位色):(28)*(28)(2^8) = 256256*256 = 16777216(16777216/1024 = 16384,16384K Color ; 16384/1024 = 16 , 16M Color)

称16兆真彩色。

二、BMP格式

1、BMP(全称Bitmap)是Windows操作系统中的标准图像文件格式,可以分成两类:设备相关位图(DDB)和设备无关位图(DIB),使用非常广。它采用位映

射存储格式,除了图像深度可选以外,不采用其他任何压缩,因此,BMP文件所占用的空间很大。BMP文件的图像深度可选1bit、4bit、8bit及24bit。BMP文件存

储数据时,图像的扫描方式是按从左到右、从下到上的顺序。由于BMP文件格式是Windows环境中交换与图有关的数据的一种标准,因此在Windows环境中运行

的图形图像软件都支持BMP图像格式。

2、BMP格式的文件从头到尾依次是如下信息:

1)bmp文件头(bmp file header):共14字节;

bfType:2字节,文件类型,BMP格式的文件这两个字节是0x4D42,10进制就是19778,字符显示就是‘BM’;;

bfSize:4字节,文件大小,这里的是0x0004B436,十进制是308278,也就是301kb,检查文件信息,验证正确;

bfReserved1:2字节,保留,必须设置为0;

bfReserved2:2字节,保留,必须设置为0;

bfOffBits:4字节,从头到位图数据的偏移,表示从文件头到位图数据的偏移,这里是0x00000436,十进制是1078,后面会做验证;

2)位图信息头(bitmap information):共40字节;

biSize:4字节,信息头的大小,即40;

biWidth:4字节,以像素为单位说明图像的宽度;

biHeight:4字节,以像素为单位说明图像的高度,同时如果为正,说明位图倒立(即数据表示从图像的左下角到右上角),如果为负说明正向;

biPlanes:2字节,为目标设备说明颜色平面数,总被设置为1;

biBitCount:2字节,说明比特数/像素数,值有1、2、4、8、16、24、32;

biCompression:4字节,说明图像的压缩类型,最常用的就是0(BI_RGB),表示不压缩;

biSizeImages:4字节,说明位图数据的大小,当用BI_RGB格式时,可以设置为0;

biXPelsPerMeter:表示水平分辨率,单位是像素/米,有符号整数;

biYPelsPerMeter:表示垂直分辨率,单位是像素/米,有符号整数;

biClrUsed:说明位图使用的调色板中的颜色索引数,为0说明使用所有;

biClrImportant:说明对图像显示有重要影响的颜色索引数,为0说明都重要;

3)调色板(color palette):可选;

4)位图数据;

接下来就是位图数据了。由于是8位色图,所以每个像素用1个字节表示,取出每个字节,显示到相应的设备上就可以了。

注意,这里的biHeight为正数,说明图像倒立,从左下角开始到右上角,以行为主序排列。

如果是24位色图,按照BGR的顺序排列,32位色图按照BGRAlpha排列。

位图数据排列还有一个规则,就是对齐。

Windows默认的扫描的最小单位是4字节,如果数据对齐满足这个值的话对于数据的获取速度等都是有很大的增益的。因此,BMP图像顺应了这个要求,要求每行

的数据的长度必须是4的倍数,如果不够需要进行比特填充(以0填充),这样可以达到按行的快速存取。这样的话,位图数据的大小就不一定是宽x高x每像素字节

数了,因为每行还可能有0填充。

BPP是每像素的比特数(Bits Per Pixel)也叫像素位深度,即biBitCount,Width是宽度,单位是像素即bfWidth。

三、YUV

1、YUV是视频、图片、相机等应用中使用的一类图像格式,实际上是所有“YUV”像素格式共有的颜色空间的名称。 与RGB格式(红 - 绿 - 蓝)不同,YUV是用一个

称为Y(相当于灰度)的“亮度”分量和两个“色度”分量表示,分别称为U(蓝色投影)和V(红色投影),由此得名。

YUV也可以称为YCbCr,虽然这些术语意味着略有不同,但它们往往会混淆并可互换使用。

Y表示亮度分量:如果只显示Y的话,图像看起来会是一张黑白照。

U(Cb)表示色度分量:是照片蓝色部分去掉亮度(Y)。

V(Cr)表示色度分量:是照片红色部分去掉亮度(Y)。

2、扫描线

电子枪的扫描线从左上角像素点到右下角像素点顺序移动,喷射电子显像。

RGB与YUV之间的转换 一.RGB模型与YUV模型 1.RGB模型 我们知道物理三基色分别是红(Red)、绿(Green)、蓝(Blue)。现代的显示器技术就是通过组合不同强度的红绿蓝三原色,来达成几乎任何一种可见光的颜色。在图像储存中,通过记录每个像素的红绿蓝强度,来记录图像的方法,称为RGB模型 (RGB Model)。常见的图片格式中,PNG和BMP这两种就是基于RGB模型的。 2.YUV模型 除了RG 阅读详情

相关推荐

YUV数据格式与RGB数据格式

前言:近期有接触到YUV和RGB两种颜色编码格式,稍稍做了个了解,整理了网上的一些资料然后整理了一下,方便自己以后查阅,有描述不正确的地方麻烦大家多多指正。 一、YUV与RGB颜色编码格式     通俗点来理解的话,YUV与RGB都是一种颜色编码方法。当我们采集到图像数据后,一般输出的就是YUV格式的数据流,然后再去进行压缩编码等其他步骤来进行数据传输或保存。而最终显示在我们屏幕面前,通常又是...

go_str的博客 7786

快色排序算法(C语言描述)

快速排序 算法思想 快速排序采用了一种分治策略,学术上称之为分治法(Divide-and-Conquer Method)。 哨兵(如下算法中的key) 每趟排序将哨兵插入到数组的合适位置,使得哨兵左侧的所有元素比哨兵大,右侧所有元素比哨兵小。 然后,哨兵左侧数组继续此操作(递归调用),哨兵右侧数组亦然,迭代此过程,最终使得数组有序。 快速排序算法(c语言描述) 1 void s...

weixin_30687811的博客 7221

rgb到yuv的转换

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 RGB到YUV(4:2:0)的转换实验目标:实验RGB到YUV 的转换一、实验原理二、编程步骤1.读入rgb分量2.由RGB转换得到YUV实验结果实验总结 实验目标:实验RGB到YUV 的转换 一、实验原理 YUV分量由RGB分量合成 在YUV4:2:0的规则下YUV三种分量的关系 1.在数量上Y:U:V=4:1:1 2.在布局上,连续的两个y分量与下一行同一列连续的两个y分量(共四个y分量)对应一个u和v分量 二、编程步骤 1.读入rg

weixin_53118877的博客 8857

Goland 使用指南|界面设置|便捷工具设置|快速写代码技巧

使用Goland打开命令行终端 1、点击Terminal 打开命令行终端(或Alt+F12),默认当前路径为当前项目所在路径 2、点击+即可创建多个cmd窗口

qq_62891967的博客 7652

MATLAB RGB转YUV YUV转RGB

使用Matlab,RGB转YUV,YUV转RGB为什么写这个?RGB转YUVYUV转RGB所有.m文件上传到另一个文章,链接在这里。 为什么写这个? 1,百度上看了很多人的回答,好多人列个公式,就完了。 2,也看了一些博客,好多人的代码逻辑清晰,但是自己运行发现RGB转到YUV,YUV转到RGB色彩不对,不是偏色,是不对。 3,然后自己写了一个,发现还是偏色,好在研究了两个小时找到哪里的问题了。目前RGB转YUV(NV12, NV21 YUV420P, YUV444)都是正常的。可以用yuv viewe

m0_49415938的博客 2213

RGB与YUV格式的转换

一、实验原理: 1.图像数据存储方式 图像中RGB以像素为单位,存储顺序为B、G、R YUV以整幅图为单位,先存Y,亮度分量,再存U、V,色差分量 分别提取rgb图片和yuv图片的RGB与YUV数值,通过转换公式,即可得到另一种图像格式所需数值,再写入新图像,即可转换图像格式。 2.RGB与YUV转换关系 由电视原理可知,亮度和色差信号的构成如下: Y=0.2990R+0.5870G+0.1140...

weixin_46338184的博客 3671

RGB与YUV格式详解

在图像的世界里,一般使用RGB作为存储格式。而在视频的世界里,一般使用YUV作为压缩存储格式。有时候面试官会问:为什么视频使用YUV来压缩存储,而不用RGB?YUV与RGB有什么区别,两者如何转换的?常见的RGB格式有哪些,常见的YUV格式又有哪些?手机摄像头的预览格式是什么,如何转换为YUV420P的?我们带着这些问题,来揭开RGB与YUV格式的面纱。

二爷的博客 5806

【音视频】实操YUV与RGB互转(planar模式 YUV420、YUV422、YUV444与RGB888)

实操YUV与RGB互转(planar模式 YUV420、YUV422、YUV444与RGB888)

LYP_Tom的博客 4160

YUV格式与RGB格式

。。

Stephen 5380

YUV转RGB

文章目录1.前言2.YUV数据格式3.YUV与RGB的计算4.总结 1.前言 YUV图片数据以及YUV转rgb问题 2.YUV数据格式 颜色都可以通过原色 red green blue通过不同的比例混合出来,这种既是RGB数据格式图像;而YUV, Y表示亮度,U V表示色差信息(分别表示blue 和 Red的色差信息),通过YUV三个分量值,可以计算出RGB。 YUV类型数据分为很多的形式,比如YUV444,YUV422或者YUV420,本文主要对YUV420格式数据进行分析。假设图片宽高分别为Width和

qq_37833413的博客 7800

rgb332:自定义统一的 RGB332 调色板

RGB332 自定义统一的 RGB332 调色板。 请参阅rgb332.cpp文件的内部详细信息。 zlib/libpng 许可。 图像比较 莉娜原创 经典伽马校正均匀调色板 经典的网络安全统一调色板 我的自定义统一 RGB332 调色板

YUV与RGB 以及之间的转换

在视频技术中,通常碰到的两种颜色空间RGB和YUV。

9487

RGB332 8bpp 256色 颜色列表

RGB332 8bpp 256色 颜色列表

YUV介绍和YUV与RGB转换

YUV420p 是一种常见的 YUV 格式,特点是色度(Chrominance)分量的采样率较低,因为人类对色度变化的敏感度相对较低。人眼对亮度更敏感:人眼对图像的亮度信息更敏感,而对色彩信息的感知度相对较低。因此,在视频和图像处理中,保留更多的亮度信息而降低色度分量的采样率可以在视觉上获得更好的平衡。有效压缩:YUV420p 通过在水平和垂直方向上对色度分量进行抽样以降低数据量,能够更有效地压缩图像数据。这在数字视频传输和存储中至关重要,尤其是在有限带宽或存储空间下。广泛支持。

u012836015的博客 3921

【数据挖掘】遗传算法原理浅析:什么是遗传算法?遗传算法的工作原理是什么?

遗传算法(Genetic Algorithm,GA),是进化算法的框架和核心。 各种进化算法有什么异同? - 及时物语的回答 - 知乎 https://www.zhihu.com/question/39152390/answer/901070749

纸羊同学的博客 4268

ABB AC500 系列 PLC 与上位机iFix 的通讯配置

在 软件中,有 3 种方式可以进入 IP config tool 的配置界面 双击 IP_settings,点击 IP config tool,即可进入 IP config tool 界面点击菜单栏的 Tool→IP config如果单独安装了 ABB IP Configration,则可以通过开始→程序→ABB→ABB IPConfigration 启动 IP 配置工具启动 IP config tool 后,即可进入 IP 配置界面。

xdpcxq的专栏 4028

YUV与RGB编码

文章目录一、编码介绍1.1 RGB 颜色编码1.2 YUV 颜色编码二、RGB 与 YUV 的互相转换三、采样3.1 YUV 采样格式3.1 YUV 4:4:4 采样3.2 YUV 4:2:2 采样3.3 YUV 4:2:0 采样四、YUV 存储格式4.1 基于 YUV 4:2:2 采样的格式4.1.1 YUYV 格式4.1.2 UYVY 格式4.1.3 YUV 422P 格式4.2 基于 YUV...

呆呆象呆呆的博客 1万+

十一、学生信息管理系统(PyQt5+MySQL+PyMySQL模块实现)

学生信息管理系统(PyQt5+MySQL+PyMySQL模块实现)

ungoing的博客 8991

YUV和RGB的区别(以及YUV444 YUV422 YUV411 YUV420的介绍)

RGB是构成多种颜色的三基色(红绿蓝),也称为加成色。主要是图像的采集和显示。YUV是优化彩色视频信号的编码和传输,和rgb相比,YUV占用的带宽少。 YUV中Y表示的是亮度,是通过RGB输入信号确定的,方法是将RGB信号的特定部分叠加到一起。UV表示的是色度,定义了颜色的两个方面的色度和饱和度,分别使用Cr和Cb表示。其中,Cr是GB输入信号的红色部分和RGB信号的亮度的差异。而Cb反映的是R...

仗劍走天涯 2万+

如何在 R 中使用 Gamma 分布(附示例)

在统计学中,伽马分布通常用于模拟与等待时间相关的概率。我们可以使用以下函数来处理 R 中的 gamma 分布:dgamma(x, shape, rate) – 找到具有特定形状和速率参数的 gamma 分布的密度函数值。 pgamma(q, shape, rate) – 找到具有特定形状和速率参数的伽马分布的累积密度函数值。 qgamma(p, shape, rate) – 找到具有特定形状和速率参数的 gamma 分布的逆累积密度函数值。 rgamma(n, shape, rate) – 生成 n 个随机

Mrrunsen的博客 4415

[AI8051U入门第一步]环境安装和按键控制流水灯

本文介绍了AI8051U单片机的开发环境搭建及GPIO应用。主要内容包括:1)通过ISP软件完成Keil开发环境配置;2)AI8051U特性介绍,包括32位8051内核、浮点运算单元及丰富外设;3)GPIO输入输出模式解析,并附流水灯控制代码;4)提供完整的系统初始化、延时函数及LED控制代码实现。文章配套资源包含完整工程代码,适用于智能硬件及物联网开发。

sinat_58149788的博客 669

YUV与RGB

YUV与RGB YUV,RGB是色彩空间模型,而BMP,PNG,JPEG,GIF是图像的文件存储格式。 RGB(RED GREEN BLUE),我们都知道任何颜色都可以通过原色 red green blue通过不同的比例混合出来,三个色基都为零,混合为黑色, 三个色基都最强,混合为白色.这种简单的色彩空间模型广泛应用与计算机. ...

kunkliu的博客 2952

深度学习实战12(进阶版)-利用Dewarp实现文本扭曲矫正

大家好,我是微学A1, 我们在生活中会看到一些拍摄扭曲的图片,我们在通过OCR识别的时候,因为扭曲的厉害,而无法识别,我们需要对图片进行处理。

微学AI的博客 3156

一文搞懂 RGB 与 YUV

第一个 4 表示每个像素都有一个亮度分量(Y),第二个 4 表示每个像素都有一个 U 色度分量,第三个 4 表示每个像素都有一个 V 色度分量。4:2:0 表示第一个 4 表示每个像素都有一个亮度分量(Y),第二个 2 表示每两个像素共享一个 U 色度分量,第三个 0 表示每四个像素共享一个 V 色度分量(即每两个像素共享一个色度分量)。4:2:2,第一个 4 表示每个像素都有一个亮度分量(Y),第二个 2 表示每两个像素共享一个 U 色度分量,第三个 2 表示每两个像素共享一个 V 色度分量。

Leon_Chenl的博客 3464

基于学术研究于NASA官网GPM卫星数据下载详细教程

基于学术研究于NASA官网GPM卫星数据下载详细教程

珞瑜的博客 8654

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

上一篇: 【C语言:从入坑到入土】第4章:字符串
下一篇: 【数电百问】码制:原码、反码、补码的联系与区别?
&玖月
博客等级 码龄8年 192粉丝 11原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

&玖月

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值