图像表示方法

简介: 图像表示方法

RGB表示


RGB是使用三基色合成的原理,我们看到的彩色图片,都有三个通道,分别为红、绿、蓝通道,如果需要透明度则还有alpha分量. 通常每个通道用8bit表示,8bit能表示256种颜色,所以可以组成 256256256=16777216=1677万种颜色。这里的8bit就是我们讲的位深。一张图片通常RGB的顺序进行排列,也有BGR方式排列。


YUV表示


RGB表示方式是针对三基色的方式,但是人眼睛感知并不能分别出那么细致的色度,因此,允许降低色度的带宽,从而出现了YUV的表示方式。


Y表示明亮度,也就是灰阶值,通过明暗能够描绘图形的轮廓。


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


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


YUV格式可以分为三个分量,即Y、U、V一一对应.


人眼对亮度敏感对色度不敏感,因此亮度分量Y的采样不变,但是色度分量U和V会被降低采样数。


YUV表示图像可以有多种排列方式,分别为:

紧缩格式(packed formats): 将YUV值连续存储,和RGB的方式类似。
平面格式(planar formats): 将YUV的三个分量分别存放在不同的矩阵中。

为了节省带宽起见,大多数YUV格式平均使用每个像素位都少于24位,主要的抽样格式有:


  1. 4:4:4表示完全采样, 三分分量都是8bit, 采样码流为: Y0 U0 V0, Y1 U1 V1, Y2 U2 V2。
  2. 4:2:2表示UV分量是Y分量采样的一半,采样码流为: Y0 U0 V1, Y1 U0 V1, Y2 U2 V3, Y3 U2 V3, 水平方向两个像素共用一对U/V值。
  3. 4:2:0采样,并不是指只采样U分量而不采样V分量,而是指,在每一行扫描时,只扫描一种色度分量(U或者V), 和Y分量按照2:1的方式采样。比如, 第一行扫描时,YU按照2:1的方式采样,那么第二行扫描时,YV分量按照2:1的方式采样。对于每个色度分量来说,它的水平方向和垂直方向的采样和Y分量比都是2:1, 如下图。


假如图片像素为:

[Y0 U0 V0]、[Y1 U1 V1]、 [Y2 U2 V2]、 [Y3 U3 V3] [Y5 U5 V5]、[Y6 U6 V6]、 [Y7 U7 V7] 、[Y8 U8 V8] 


那么采样的码流为:

Y0 U0 Y1 Y2 U2 Y3 Y5 V5 Y6 Y7 V7 Y8
相关文章
|
存储 自然语言处理 数据可视化
【软件设计师备考 专题 】设计数据模型:ER模型和数据模型
【软件设计师备考 专题 】设计数据模型:ER模型和数据模型
820 0
|
2月前
|
机器学习/深度学习 数据采集 人工智能
【机器学习算法篇】K-近邻算法
K近邻(KNN)是一种基于“物以类聚”思想的监督学习算法,通过计算样本间距离,选取最近K个邻居投票决定类别。支持多种距离度量,如欧式、曼哈顿、余弦相似度等,适用于分类与回归任务。结合Scikit-learn可高效实现,需合理选择K值并进行数据预处理,常用于鸢尾花分类等经典案例。(238字)
|
数据可视化 前端开发 JavaScript
可视化工具D3.js
可视化工具D3.js
456 2
|
人工智能 算法 大数据
Linux内核中的调度算法演变:从O(1)到CFS的优化之旅###
本文深入探讨了Linux操作系统内核中进程调度算法的发展历程,聚焦于O(1)调度器向完全公平调度器(CFS)的转变。不同于传统摘要对研究背景、方法、结果和结论的概述,本文创新性地采用“技术演进时间线”的形式,简明扼要地勾勒出这一转变背后的关键技术里程碑,旨在为读者提供一个清晰的历史脉络,引领其深入了解Linux调度机制的革新之路。 ###
|
机器学习/深度学习 编解码 算法
【小样本图像分割-4】nnU-Net: Self-adapting Framework for U-Net-Based Medical Image Segmentation
《nnU-Net: 自适应框架用于基于U-Net的医学图像分割》是一篇2018年的论文,发表在Nature上。该研究提出了一种自适应的医学图像分割框架nnU-Net,能够自动调整模型的超参数以适应不同的数据集。通过2D和3D U-Net及级联U-Net的组合,nnU-Net在10个医学分割数据集上取得了卓越的性能,无需手动调整。该方法强调数据增强、预处理和训练策略等技巧,为医学图像分割提供了一个强大的解决方案。
617 0
【小样本图像分割-4】nnU-Net: Self-adapting Framework for U-Net-Based Medical Image Segmentation
|
存储 关系型数据库 MySQL
【mybatis-plus】Springboot+AOP+自定义注解实现多数据源操作(数据源信息存在数据库)
【mybatis-plus】Springboot+AOP+自定义注解实现多数据源操作(数据源信息存在数据库)
|
机器学习/深度学习 分布式计算 算法
探索数据科学中的模型优化技术
本文旨在深入探讨数据科学领域中的模型优化技术,通过分析模型优化的重要性、常用方法及其在实际应用中的效果,揭示模型优化对于提升数据分析准确性和效率的关键作用。文章首先定义模型优化的概念并阐述其必要性,随后详细介绍了交叉验证、网格搜索等技术手段,并通过案例分析展示这些技术在实际项目中的应用成效。最后,文章讨论了模型优化面临的挑战及未来发展趋势,为数据科学家提供了宝贵的参考信息和实践指导。
|
机器学习/深度学习 数据采集 算法
乳腺癌预测:特征交叉+随机森林=成功公式?
乳腺癌预测:特征交叉+随机森林=成功公式?
416 0
乳腺癌预测:特征交叉+随机森林=成功公式?
|
芯片 异构计算
数电FPGA实验:实验一 基于FPGA的计数器设计 (基本任务:采用原理图法设计一个十进制计数器,完成波形功能仿真和时序仿真。拓展任务1:采用原理图法设计一个六进制计数器,完成波形功能仿真和时序仿真)
数电FPGA实验:实验一 基于FPGA的计数器设计 (基本任务:采用原理图法设计一个十进制计数器,完成波形功能仿真和时序仿真。拓展任务1:采用原理图法设计一个六进制计数器,完成波形功能仿真和时序仿真)
1147 0
数电FPGA实验:实验一 基于FPGA的计数器设计 (基本任务:采用原理图法设计一个十进制计数器,完成波形功能仿真和时序仿真。拓展任务1:采用原理图法设计一个六进制计数器,完成波形功能仿真和时序仿真)
|
存储 C++ 容器
C++中deque的用法(超详细,入门必看)
⭐一、deque的简介 deque是一个双向队列(double-ended queue),可以在队列的两端进行元素的插入和删除操作。deque的全称是double-ended queue,翻译过来就是双端队列,也有人称之为双向队列,这两个名称都可以表示该数据结构。deque是C++STL(标准模板库)中的一种容器,可以用于存储各种类型的元素。deque的特点是可以在队列的两端进行元素的操作,并且可以高效地在队列的任意位置进行元素的插入和删除操作。 可以说deque几乎涵盖了queue(队列)、stack(堆栈)、vector(向量 )等的全部用法,功能非常的强大。
1621 0

热门文章

最新文章