海思3559开发常识储备:相关名词全解

海思3559开发常识储备:相关名词全解
https://developer.aliyun.com/article/1143116

图像
(1)图像采集的过程:
光照在成像物体被反射->镜头汇聚->Sensor光电转换->ADC为rawRGB(ADC直接转换得到的原始RGB,RGB由rawRGB经过运算得到的)
(2)sensor上每个像素只采集特定颜色的光的强度,
因此sensor每个像素只能为R或G或B,一般我们常说摄像头多少万像素,指的是sensor上的像素点的数量,一个像素点可以转换出一个模拟信号。
(3)rawRGB和RGB都是用来描述图像的,
图像采集时RGB是由rawRGB计算而来的
(4)图像要素
因为图像颜色本身有一定连贯性,而且人眼是非理想的,因此图像采集和再显示给人这整个构成中有三个要素:分辨率、pitch(像素点之间的距离)、观看距离
(5)如果是视频,质量好坏还要加上帧率framerate
(6)图像的表达、压缩、修整等相关技术,就发生在rawRGB进来以后的各个环节

1、RGB方式表示颜色
(1)RGB有RGB565和RGB888(真彩色),ARGB(A表示透明度)等多种子分类
(2)RGB的本质:
将色度分解为R、G、B三部分,然后记录下各个基色亮度数据(亮度值),RGB这种颜色表示方法并未记录颜色,只是表示了亮度。
(3)RGB的优势:
方便数字化表达,广泛用于数字化彩色显示器,计算机编程等领域。
(4)RGB的劣势:
和传统的灰度图(黑白图像)兼容不好,表达颜色的效率不高
(5)何基于RGB颜色模型的加色色彩空间都属于RGB色彩空间。
RGB色彩空间由红绿蓝三原色的色度定义,借此可以定义出相应的色三角,生成其它颜色。完整的RGB色彩空间定义还需要给出白点的色度和伽玛校正曲线。最常见的RGB色彩空间是sRGB色彩空间。

2、YUV
(1)YUV也是一种色彩空间,
Y表示亮度,U和V表示色度。只有Y就是黑白图像,再加上UV就是彩色图像了。YUV的一个好处就是让彩色系统和传统黑白系统很好的兼容。
(2)YUV和RGB的异同:
相同的是:都是用来表达颜色的数学方法;
不同点是:对颜色的描述思路和方法不同。RGB将一个颜色拆解为3个纯色的亮度组合,YUV将一个颜色分解为一个亮度和2个色度的组合。
(3)RGB和YUV之间可以用数学方法互相换算,
(4)YUV和YCbCr几乎可以看做一个概念,
详细的区分以后再去慢慢体会。YCbCr模型来源于yuv模型,应用于数字视频。
(5)YUV分为packed和planar两种

原始视频产生:镜头(光信号->光信号)和sensor(光信号->电信号)sensor本身直接出来的是一个模拟的电信号,经过AD转换得到数字的电信号(即一系列二进制数据,代表原始图像数据)
名词解释

图像处理:
ISP(image signal processing),如对原始图像进行畸变矫正,处理后的图像仍是原始图像数据,未经过编码及压缩。
视频编码压缩:
如h.264/h.265压缩算法,运算,内置DSP进行压缩运算的(,如果用CPU进行压缩运算,是十分耗费CPU的,需要高性能的CPU
MIPI
“MIPI是MobileIndustry Processor Interface(移动通信行业处理器接口)的缩写。
MIPI协议的提出,旨在解决日益增长的高清图像(视频)传输的高带宽要求与传统接口的低速率之间的矛盾,同时为整个行业提供统一的标准,进而缩短产品的开发周期,增强不同厂商之间产品的兼容性。
换一句话说,MIPI协议是MIPI联盟发起的为移动应用处理器制定的开放标准和一个规范。”

MPP
“MPP” 是海思提供的媒体处理软件平台(Media Process Platform,简称 MPP),可支持应用软件快速开发。
该平台对应用软件屏蔽了芯片相关的复杂的底层处理,并对应用软件直接提供MPI( MPP Programe Interface)接口完成相应功能。
该平台支持应用软件快速开发以下功能:输入视频捕获、 H.265/H.264/MJPEG/JPEG/MPEG4 编码、 H.264/MPEG4/MPEG2解码、视频输出显示、视频图像前处理(包括去噪、增强、锐化、 Deinterlace)、编码码流叠加 OSD、视频侦测分析、智能分析、音频捕获及输出、音频编解码等功能。
海思媒体处理平台的主要内部处理流程如下图,主要分为视频输入( VI)、视频处理( VPSS)、视频编码( VENC)、视频解码( VDEC)、视频输出(VO)、视频侦测分析(VDA)、音频输入(AI)、音频输出(AO)、音频编码( AENC)、音频解码( ADEC)、区域管理( REGION)等模块。

VI 模块捕获视频图像,可对其做剪切、缩放等处理,并输出多路不同分辨率的图
像数据。补充了解:双码流采用一路高码率的码流用于本地高清存储,例如1080P和720P,
一路低码率的码流用于网络传输,同时兼顾本地存储和远程网络传输。
三码流指三种码率。三码流采用一路高码率的码流用于本地高清存储,例如h.264\D1编码,一路低码率的码流用于网络传输,例如D1/CIF编码,另一路超低码流用于3G\网络传输,手机观看,例如QCIF,同时兼顾本地存储和远程网络传输。三码流能实现本地传输和远程传输三种不同的带宽码流需要,本地传输采用高码流可以获得更高的高清录像存储,远程传输采用较低的码流以适应CDMA/ADSL等各种网络而获得更高的图像流畅度。
VDEC解码模块对编码后的视频码流进行解码,并将解析后的图像数据送 VPSS 进行图像处理或直接送 VO 显示。可对 H264/MPEG4/MPEG2 格式的视频码流进行解码。
VPSS 模块接收 VI 和解码模块发送过来的图像,可对图像进行去噪、图像增强、锐化等处理,并实现同源输出多路不同分辨率的图像数据用于编码、预览或抓拍。
VENC编码模块接收 VI 捕获并经 VPSS 处理后输出的图像数据,可叠加用户通过 Region模块设置的 OSD 图像,然后按不同协议进行编码并输出相应码流。
VDA 模块接收 VI 的输出图像,并进行移动侦测和遮挡侦测,最后输出侦测分析结果。
VO 模块接收 VPSS 处理后的输出图像,可进行播放控制等处理,最后按用户配置的输出协议输出给外围视频设备。
AI 模块捕获音频数据,然后 AENC 模块支持按多种音频协议对其进行编码,最后输出音频码流。
用户从网络或外围存储设备获取的音频码流可直接送给 ADEC 模块, ADEC 支持解码多种不同的音频格式码流,解码后数据送给 AO 模块即可播放声音。

VB
(1)视频的本质是多帧图片,图片的本质是RGB或rawRGB数据,要占用一段连续内存
(2)视频的裁剪、缩放、修正处理等各种操作,本质上就是对内存中的数据进行运算
(3)视频缓存池(VB, video buffer)就是一段很大,又被合理划分和管理的内存,用来做视频数据的暂存和运算场地
(4)公共视频缓存池的公共2字,可以理解为全局变量,也就是各个模块都能访问的一段内存
(5)看似视频缓存块在各个模块之间流转,实际上并没有内存复制,而是指针在传递
(6)视频缓存池的内存由MPP来维护,我们在系统启动时就把整个SDRAM分成了2部分:系统部分(由linux kernel来维护管理)和mpp部分(由mpp系统来维护管理)
(7)缓存池需要几个,每个中包含几个缓存块,每个缓存块多大,都是可以由用户程序设置好参数,然后调用MPP的相应API来向MPP申请分配的。
视频缓存池主要向媒体业务提供大块物理内存管理功能,负责内存的分配和回收,充
分发挥内存缓存池的作用,让物理内存资源在各个媒体处理模块中合理使用。一组大小相同、物理地址连续的缓存块组成一个视频缓存池。
视频输入通道需要使用公共视频缓存池。所有的视频输入通道都可以从公共视频缓存
池中获取视频缓存块用于保存采集的图像(如图中所示从公共视频缓存池 A 中获取视频缓
存块 Bm)。由于视频输入通道不提供创建和销毁公共视频缓存池功能,因此,在系统初始
化之前,必须为视频输入通道配置公共视频缓存池。根据业务的不同,公共缓存池的数量、缓存块的大小和数量不同。
图中所示缓存块的生存期是指经过 VPSS 通道传给后续模块的情形( 图实线路径)。如果该缓存块完全没有经过 VPSS 通道传给其他模块,则将在 VPSS 模块处理后被放回公共缓存池( 图虚线路径)

视频输入设备
所有 VI 设备都是相互独立的,支持时序解析。
视频输入 PIPE
VI 的 PIPE 包含了 ISP 的相关处理功能,主要是对图像数据进行流水线处理,输出YUV 图像格式给通道。PIPE 的工作模式请参考“系统控制”章节的“VI 和 VPSS”的
工作模式描述。
视频物理通道
Hi3559AV100ES VI 的一个 PIPE 包含 2 个物理通道,每个物理通道具有裁剪等功能,每个物理通道同时支持 8 个扩展通道。
Hi3559AV100 VI 只有一个物理通道,支持 8 个扩展通道。
Hi3559AV100 物理通道支持的典型分辨率如 7680x4320@30fps、3840x2160@120fps、3840x2160@60fps、3840x2160@30fps、1080p@240fps、
1080p @120fps、1080p @60fps、1080p@30fps 等。
视频扩展通道
扩展通道是物理通道的扩展,扩展通道具备缩放、裁剪、鱼眼矫正功能,它通过绑定物理通道,将物理通道输出作为自己的输入,然后输出用户设置的目标图像。
绑定关系
MIPI 和 DEV 的绑定关系。
Hi3559AV100的 Dev 与 MIPI 绑定关系是固定的,不能动态修改绑定关系。
DEV 和前端时序输入的接口有约束关系。例如 Hi3559AV100 前端需要接入BT.1120,且选择了第 0 组 BT.1120 管脚,PIPE 应该和 DEV5 绑定,才能正常接收数据。
Hi3559AV100 DEV 和时序输入接口的约束关系如表 3-2 所示。

DEV 和 PIPE 的绑定关系。
每个 PIPE 都可以与任意 Dev 绑定,但不能动态修改绑定关系
线性模式(非 WDR 模式)的一条通路应该是一个物理 PIPE 绑定一个 Dev,WDR模式下需要多个物理 PIPE 绑定一个 Dev,例如 2 合 1WDR,我们需要 2 个物理PIPE 绑定到一个 Dev。
且在 WDR 模式下只有绑定到 Dev 的第 1 条物理 PIPE 的通道有数据输出,其他绑定的物理 PIPE 的通道是没有图像数据输出

VPSS (Video Process Sub-System)
视频处理子系统。这个模块功能很多,支持的具体图像处理功能包括
FRC(Frame Rate Control)、CROP(裁剪)、Sharpen(锐化)、3DNR、Scale(缩放)、像素格式转换、LDC、Spread、固定角度旋转、任意角度旋转、鱼眼校正、Cover/Coverex、Overlayex、Mosaic(马赛克)、Mirror/Flip(镜像翻转)、HDR、Aspect Ratio、压缩解压等。我们使用比较单一,大部分都没有用到。
功能上需要注意Hi3559AV100 仅离线模式下支持 semi-planar 422 转 semiplanar 420
这里有2个概念必须理解,那就是group和channel。每个group都有若干channel,分为物理channel和扩展channel。每个group的channel和其它group的channel没有任何关系,所以不同group可以有相同编号的channel。group是输入的概念,一个group必须也只能bind一个输入视频源。Channel是输出的概念。每个group的多个channel可以bind到不同输出。如一个1080p视频源bind到vpss的某一个group,然后channel0输出到venc0,编码1080p-H264-30p,channel1输出到venc1编码720p-H265-25p。注意如果设置多个输出,通道必须设置user模式,auto模式只能bind一个输出。Vpss不设置帧率控制,输入和输出都不管,即输入多少帧率,输出就多少帧率,帧率改变通过其它方式来处理。

VENC(Video Encoding)
编码模块。3559支持多路实时编码,每路独立。当然所有编码通道的编码负载之和要在3559最大编码范围内。
我想看看极限时,编码2路4KP60的时候,偶尔会出现闪烁,按道理说这距离3559的编码最大范围还很远
。先试了试1080和720,并且路数不是很多,所以没有深挖极限。支持H264/H265/jpeg。输入源可以是下面中的一项:

通道接收到图像之后,比较图像尺寸和编码通道尺寸:
1 如果输入图像比编码通道尺寸大,VENC 将按照编码通道尺寸大小,调用 VGS 对源图像进行缩小,然后对缩小之后的图像进行编码。
2 如果输入图像比编码通道尺寸小,VENC 丢弃源图像。VENC 不支持放大输入图像编码。
3 如果输入图像与编码通道尺寸相当,VENC 直接接受源图像,进行编码。
也就是说如果你的输入视频源比编码通道设置的视频尺寸小的话,是没有输出的。码率和gop设置,帧存计算一类,这一块内容量比较大,我没有细究,大部分参考sample默认就可以。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 202,607评论 5 476
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,047评论 2 379
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 149,496评论 0 335
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,405评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,400评论 5 364
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,479评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,883评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,535评论 0 256
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,743评论 1 295
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,544评论 2 319
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,612评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,309评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,881评论 3 306
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,891评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,136评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,783评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,316评论 2 342

推荐阅读更多精彩内容