视频基础知识

零散的一些笔记~~~

人眼及显示器对亮度的非线性,gamma校正

人眼对亮度的敏感能力优于色差
YUV,YCbCr可进行色度子采样
YCbCr 4:4:4 4:2:2 4:2:0

分辨率,帧速率:广播电视与计算机图形两条线
计算机 广播电视
          QCIF(176*144)
QVGA(320*240) CIF(352*288)
VGA(640*480) NTSC(720*480)
SVGA(800*600) PAL(720*576)
XGA(1024*768) HDTV(720p)1280*720
SXGA(1280*1024)

NTSC 隔行扫描 30fps
PAL逐行扫描 25fps


为了实现数字视频,NTSC,PAL之间的互操作 
ITU-R BT.601规定了对视频信号进行数字化编码的方法
建议采用4:2:2 YCbCr作为广播视频的首选格式
同时也提供了同步信号(HSYNC,VSYNC,FIELD)
ITU-R BT.656实际定义了实施BT.601所必须的物理接口和数据流

嵌入式数字视频系统

Analog video Camera or CCD---->HW Decode(A/D converter)------> SW Encoder(compression)
                                        |
                          storage media<--------->|
                                        |
   TV or Monitor<--HW Encoder(D/A convertr)<------SW Decoder(uncompression)


CMOS Sensor --> 去隔行(de-interlacing)-->(Scan Rate Conversion)-->pix processing
--->chroma re-sample(4:2:2 to 4:4:4)-->gamma correction,YCbCr to RGB conversion
-->scaling-->display processing-->Output to RGB LCD panel

1去隔行:方法有行倍增,行平均,中值滤波,运动补偿
2扫描速率转换:如电影录制的24fps转换为30fps,可以通过周期化的样式重复各帧来实现
3像素处理
如2d卷积滤波
边界处理:忽略边缘,复制像素,补0
4色度再采样和颜色转换
插值出Cb,Cr:复制,平均值,其它高阶滤波
色度的再采样和到RGB的转换都线性的运算,有可能组合这些步骤,形成单个的运算,从而提高效率
5缩放和裁切
缩减:最简单的方法是裁切,下采样,上采样
增加或减小每行的像素数量
丢弃像素或复制现有像素,线性内插,
增加和减小每帧的行数
丢弃行,复制行,简单垂直平均,更高阶的FIR滤波器或者多比例滤波器
6显示处理
RGB888, RGB666, RGB565
alpha混合,合成操作,色度键控
输出格式化

高效技术:
NTSC:27MB/s, 存储器:133/266MB/s
1视频流接口:FPGA, FIFO, PPI(并行外设接口)
可能的数据流
低分辨率的视频处理和JPEG等图像压缩算法,无需缓冲存储
imagedata and syncs -->PPI --(DMA)--> L1 Memory(processor)--(DMA,compressed video)-->serial port
MPEG2,MPEG4,需要将中间视频帧存储在存储器中,以执行时间域的压缩
videodata -->PPI         L1 Memory(processor)--(DMA,compressed video)-->serial port
&syncs         |         |
           |         |
           --(DMA)-->SDRAM

2视频ALU
1)专门优化的指令
如4重的8bit减法-绝对值-累加(SAA)指令
非常适合于基于块的视频运动估计(目标宏块的最佳匹配)
如4个相邻值平均值的运算指令
2)关于DMA的考虑
2D DMA可以实现视频数据顺序的转换(交织的RGB到分离的RGB)和有选择的传输
平面化和间插式缓冲格式的对比:平面化的缓冲器可能更有效,很多视频算法是依靠
单独的亮度和色度信号工作的;减少SDRAM缺页延迟
3)双重缓冲
对视频显示缓冲区的管理就是这一方法的绝好实例。通常,在系统中,如果各种视频源与最终显示的内容之间存在传输速率差异的话,就应该保证在老的内容和新的视频帧之间实现平滑的切换。这是利用双缓冲管理方法来实现的。一个缓冲区指向目前的视频帧,该帧被以一定的刷新速率送到显示器上。第二个缓冲区则用最新输出的帧来填充。当后一个缓冲器被填满时,DMA发出中断信号,指示现在应该将新的帧发送到显示器上。此时,第一个缓冲区开始填充经过处理的、用于显示的视频信号,而第二个缓冲区则输出当前的显示帧。这两个缓冲区以“乒乓”方式来回切换。


高清电视即高清晰度电视,英文:High Defintion TeleVision, 缩写为HDTV, 高清电视显示屏幕必须至少具备720线逐行(720p)或1080线隔行(1080i)扫描的物理分辨率,屏幕纵横比为16:9, 同时能兼容接收其它较低格式的信号并进行数字化处理重放。
编码方式有H.264, MPEG-4, WMV-HD

转载于:https://my.oschina.net/tofro/blog/1503148

你可能感兴趣的:(嵌入式)