zoukankan      html  css  js  c++  java
  • 嵌入式视频处理基础(一)

     


    引言:

    作为消费者,我们对于各种形式的视频系统都已经非常熟悉了。但是从嵌入式开发人员的角度来看,视频就好像是一张纷繁复杂的网络,里面充满了各种不同的分辨率、格式、标准与显示等。


    人类视觉感知:

    理解眼睛如何工作将对理解视频和图像技术的发展过程非常重要。正如您所见到的,视频的格式和压缩算法都取决于眼睛对各种不同类型的激励产生什么样的反应。

    人类眼睛结构

    人类眼睛内有两种类型的视觉细胞:视杆细胞和视锥细胞。视杆细胞主要对光的强度比较敏感,而对颜色不敏感,这些细胞是人类具有夜视能力。另一方面,视锥细胞则不会因为光的强度发生而发生调节,但是却对波长范围在400nm(紫色)-700nm(红色)之间的光比较敏感。所以说,视锥细胞是人类对色彩进行感知的基础。

    从紫色到红色


    视锥细胞类型:

    视锥细胞有三种类型,每一种相应于不同的色素,3种细胞分别对红色、绿色和蓝色波长最敏感,尽管这3种细胞对色彩的反应也存在大量的重叠。综合起来看,人类的视锥细胞对绿色区域的反应是最强的,绿色光的波长为555nm。这就是为什么在LCD显示系统上为绿色通道分配比红色和蓝色通道更多比特的原因。

    视杆细胞和视锥细胞

    红绿蓝视锥细胞的发现直接导致了三原色原理的发展,根据该原理,几乎任何颜色都可以用不同比例的单一的红色、绿色和蓝色混合而成。

    RGB三原色

    由于人类眼睛内的视杆细胞要比视锥细胞多的多,所以人类的眼睛对光的强度要比对色彩更加敏感。这样,人类就可以通过对色彩信息进行下采样而节约视频和图像信息占用的带宽。


    人类眼睛感知特点:

    人类眼睛对亮度的感知是对数曲线的,而不是线性的。换句话说,产生大约50%灰度图像(正好在黑色和白色中间)所需的实际光强度仅仅为产生纯白色所需光强度的18%。这一特性对照相机的传感器和显示技术来说是及其重要的,这一点可以在伽马校正(gamma correction)中看到。另外,这一效果还使得对高光强度的量化误差的敏感度降低,许多媒体编码算法都利用这一特点获得自己的优势。

    对数曲线

    另一比较奇特的视觉特点是人类眼睛会根据视野环境自动调节,人类的眼睛总会产生自己的参考白色,即使是在低照明或者人工照明的情况下也是如此。由于照相机的传感器没有这种特性,这就给白平衡控制带来的问题,所谓白平衡就是照相机找到其绝对白色的参考点。

     

    人类眼睛对高频信息的敏感度比低频信息弱。更重要的是,尽管眼睛能够觉察出静态图像中的细微之处和色彩分辨率,但是它对快速移动的图像却没有这种能力。因此,可以利用变换编码(DCT、FFT等)和低通滤波器来降低为表示图像和视频序列所需的总的带宽。

    DCT变换级数

    当图像的刷新频率低于每秒50-60次(即50-60Hz)时,眼睛就能够觉察出图像的“闪烁”。在昏暗的光照条件下,这个刷新会降低到大约24Hz。除此之外,人类的眼睛还倾向于注意大片的纯色区域,而不太注意局部区域。这些特性对于隔行扫描视频和显示技术来说具有在重要影响。


    视频信号:

    从根本上说,视频其实就是一个二维数组,数组内容是按一定的帧速率刷新的亮度和色度数据,以此来表达运动的感觉。在CRT(阴极射线管)电视和显示器上,模拟视频信号控制一个电子束按从上到下、从左到右的顺序照亮屏幕上的荧光粉。

    亮度信号的成分举例

    模拟信号中嵌入的同步信号定义了电子束何时开始在荧光粉上“绘画”,何时电子束无效,这样电子束就可以从右回到左,并准备开始下一行的扫描,或者从下回到上开始准备下一场或者帧的扫描。

    HSYNC、VSYNC和FIELD信号之间的时序关系

    HSYNC是水平同步信号,它规定了一个视频帧中每一视频行(从左到右)的有效起始点。水平消隐(horizontal blanking)是指一段时间间隔,即电子枪从屏幕的右侧返回到下一行的左侧所用的时间。

    VSYNC是垂直同步信号,它定义了一副新视频图像的起始点(从上到下)。垂直消隐(vertical blanking)也是指一段时间间隔,即电子枪从屏幕中图像的右下角返回到左上角所用的时间。

    FIELD信号用于隔行视频,表示当前正在显示的是哪个场。这个信号在逐行扫描视频系统中是不使用的。

    视频信息的传送最初是从黑到白的相对亮度显示开始的,由此就诞生了黑白电视系统。空间中某一点的电压电平直接相关于该点处图像的亮度水平。后来当彩色电视出现的时候,为了向后兼容过的黑白电视系统,就在现有的亮度信号前面增加了彩色同步信息。彩色信息也称作色度。

    色度


    广播电视系统:

    模拟视频在编码亮度和彩色信息时有不同的标准。有两个标准主导的广播电视领域,分别是NTSC和PAL。其中NTSC标准由美国国家电视委员会制定,而PAL标准是作为NTSC的一个分支开发出来的,在色彩失真性能方面有所提高。

    视频分辨率:

    水平分辨率是指图像中每一行中像素的个数,垂直分辨率是指屏幕上显示的一帧图像中有多少个水平的像素行。标清(Standard Definition, SD)的NTSC系统是隔行扫描,具有480行的有效像素,每一行具有720个有效像素(也就是说,总共720*480像素)。帧刷新率大约为30帧/秒(实际为29.97fps),隔行扫描场的刷新率大约为60场/秒(实际为59.94场/秒)。

    高清(High-Definition,HD)系统通常采用逐行扫描方式,比标清(SD)系统具有更高的水平和垂直分辨率。我们将主要讨论标清系统,而不是高清系统,不过我们的讨论大多数也可以推广到高清系统中更高的帧速率和像素速率。

    标清到高清

    当我们说到视频时,一般有两个主要的分支,分别有各自的分辨率和帧速率。这两个分支就是计算机图像格式和广播视频格式。表中各个类别中常见的屏幕分辨率和帧速率。虽然这两个分支产生于两个不同的领域,具有完全不同的要求(例如,计算机图像使用RGB逐行扫描方式,而广播视频则使用YcbCr隔行扫描方式),但是,在今天的嵌入式领域内,这两种格式几乎可以互换。也就是说,VGA格式比较接近于NTSC“D-1”广播格式,而QVGA格式则大体相当于GIF格式。不过应该注意到,尽管D-1是720像素*486行,但通常却将其看作720*480像素(这实际上是应用于DVD和其他数字视频的NTSC“DV”格式中的一种约定)。

    图形与广播准

    由于篇幅,嵌入式视频基础这期内容先分享到这里,下期更精彩。


    版权所有权归卿萃科技,转载请注明出处 

    作者:卿萃科技ALIFPGA  

    原文地址:卿萃科技FPGA极客空间 微信公众号


      扫描二维码关注卿萃科技FPGA极客空间


     

  • 相关阅读:
    记录下首次开通流量主,开心开心
    微信小程序之本地缓存
    在使用ef的情况下,有Migrations文件,想要直接生成数据库
    CSS 设置圆角div和阴影效果
    小程序UI库(UI组件)
    没有找到可以构建的 NPM 包---小程序开发
    php 接口参数对象转数组方法
    tp5框架获取随机n条
    php图片上传base64接口上传
    php如何实现定时任务,php定时任务方法,最佳解决方案,php自动任务处理
  • 原文地址:https://www.cnblogs.com/alifpga/p/7604859.html
Copyright © 2011-2022 走看看