当前课程知识点:刑侦视频图像处理 > 第7章 监控视频高效编码技术 > 7.3 监控视频编码标准 > 7.3 监控视频编码标准
大家好
本节主要讲一下
HM编码器的一个使用
前一节已经讲过
H.265/HEVC
是目前最新的
面向高清视频的国际编码标准
H.265/HEVC标准
他会推荐相应的测试模型
测试模型有时候也叫做参考软件
这个测试模型就是HM
HM就是由视频编码联合协作组
简称为JCT-VC开发的
基于H.265/HEVC标准的测试模型
HM下载网址
见这个网址
HM其实就是由C++语言编写的
符合H.265/HEVC编码技术的
这么一个工程
大家在网址下载之后
就可以把它进行打开
下载HM的时候
HM的网址里边有各个版本
因为H.265/HEVC这个标准
它是经历了几年的一个更新迭代
最后形成一个标准
相应的技术被引进
也有相应的技术被剔除
所以说在更新的过程当中
HM也有相应的版本
大家最好就是下载最新的版本
来进行学习
大家把HM最新版本
下载到电脑之后
可以打开相应的文件夹
然后在bulid这个文件夹里边
再双击进行打开
就可以看到一些
.sln的一些相关链接
因为刚才说过HM是由C++语言
写的一些工程
你要打开的话
就得需要下载
微软开发的VS这个软件
然后这个软件也有相应的版本
比如说我们下载的HM16.7里边
就支持4个VS的相关版本
如果大家下载的vs版本过低的话
也是没法打开HM的
然后大家安装了VS相应的版本
然后双击相应的链接
就可以打开相应的HM这个软件了
如图2
在HM打开的界面里边
它有多个项目
因为我们研究的是编码器
所以说大家就打开相应的编码器
对应的项目
然后鼠标右击
选择设为启动项目
然后再右击
选择调试
然后配置相应的工作目录和配置文件
这样的话
就可以正常的工作了
如果大家对HM编码器里面
的编码技术
不做任何操作的话
就可以直接点击生成编码器
如图2所示的右图
点击生成
然后重新生成解决方案
就可以在他这个工作目录里边
生成相应的编码器
如果大家想修改HM里的
编码技术的话
也可以在HM里边
双击相应的.cpp文件
找到相应的代码
然后进行修改
修改完之后
点击保存
然后再如图2所示的右图
点击生成
就可以生成修改后的一个编码器
然后我们有了HM编码器之后
然后我们就要需要对视频执行
一次编码操作
对视频执行编码操作
需要4个文件
PPT里面列的第二个文件
就是我们前面已经生成的一个
编码器
它的名字是TAppEncoder.exe
他就是一个Windows环境下的
可执行性的文件
另外我们是要对视频进行编码
我们除了编码器之外
还得需要有一个待编码的视频
或者是称为原始视频
目前能够编码的一个视频的格式
主要就是YUV的一个视频格式
YUV是一种颜色空间
他跟RGBHSV等等颜色空间都类似
但是因为YUV颜色空间
有一些他自身的特点
所以说我们在视频编码当中
通常使用YUV的一个视频格式
它有哪些特点呢
主要有两方面
第一方面
在YUV的空间中
他是把亮度信号
放在Y这个里面去
然后UV是表示色度信号
也就是说YUV空间
把亮度信号单独拿出来
成为一路
这样做的一个好处就是
因为视频编码
它最初的一个应用就是广播电视
大家都知道
我们最开始的广播电视
是黑白信号的
然后慢慢的才有了彩色信号
为了同时兼容黑白电视和彩色电视
YUV空间是可以做到这一点的
如果你是一个黑白的
你可以把Y信号直接拿出来
如果你是彩色的
就把UV再加上
其他的颜色空间
比如说RGB空间
它是亮度信号
是混在RGB三个信道里边的
想单独把亮度信号拿出来
是很难的
这是一方面
第二方面
视频编码当中
因为视频编码
是对视频做的一个处理
基于人眼视觉的相关研究
发现人眼对于亮度信号的敏感性
要比色度要更加敏感
也就是说在视频录像当中
我们要对亮度和色度要分开处理
这样可以提高编码的一个性能
要分开处理
首先就是在信号端就要能够分开
刚才讲过
YUV空间
它是把亮度是能够分开的
它能够很简单的
把亮度和色度进行分开
能够分开处理
这样也有效的
可以提升编码器的一个性能
所以说
综上两个原因
在视频编码端
我们通常使用的一个视频格式
是YUV的一个视频格式
另外YUV格式的视频
根据 Y分量
和UV分量的一个比例
有常见的几种子格式
比如说YUV444格式
YUV420格式等等
比如说YUV444格式
就是说一个像素
它既有一个Y分量
也对应一个U和V分量
在YUV420子格式里边
他Y分量都是有的
但是色度分量
会相应的进行减少
前面讲了
我们执行编码
一共有4个文件
前面已经讲了
前2个
第一个需要编码器
第二个需要YUV的一个视频
然后第三个文件是什么
第三个文件就是要配置文件
配置文件
目前在HM里边
它主要有三类的配置文件
三类配置文件
这三类配置文件
主要是面向三种编码结构
这三种编码结构
第一个是All-intra
第二个是Low-delay
第三个是随机接入
这三种编码结构
每一个结构
对应一个配置文件
配置文件是干什么的呢
配置文件就是要对本次编码中
涉及的一些编码参数的取值
要做一个明确的定义
就是说你要用编码器
对我这个YUV视频进行编码
编码器里边
它涉及几十甚至上百的编码参数
在这次编码当中
这些编码参数到底取多大值呢
需要在配置文件里边
一一的配置
一一的配置
你像在配置文件里边
有一个非常重要的参数
是量化参数叫QP
QP的取值显著影响了
视频编码的一个码率和失真
然后QP的备选取值有52个
0-51中间取整数
但是在一次编码的过程当中
它只可以取一个值
然后取多少呢
就需要在配置文件里边
相应的QP参数的后面
把这个值给填上
然后图3所示
就是针对
All-intra的一个配置文件
它部分编码参数的一个实例
你像第一个参数
就需要配置输入的一个
编码视频的一个名字
然后下面还有相应的
比特深度帧率图像的宽高
编码的帧数等等
最后一个需要执行编码的
一个文件叫做批处理文件
他的后缀名字叫.bat文件
bat文件
它的主要的一个作用
就是要告诉Windows系统
我要执行的是什么命令
然后这个图4就是一个
比较标准的一个bat命令行
比如说命令行里边
它分了三部分
首先要给出TAppEncoder.exe
就说我要执行编码了
然后我的编码器
的名字叫什么呢
叫做TAppEncoder.exe
然后这次编码的参数
你在哪里找呢
告诉系统
你在这里边找-C后边就是
配置文件的名字
叫encoder下划线intra下划线main.cfg
系统你编码的时候
你去这个文件里边
把参数拿出来就可以了
然后最后还有个大于等于号
后面是一个点txt的文档
这个就是告诉系统
你编码完之后
你把编码的一些中间的一些信息
存储在这个点txt文档里边去
然后编码者你编码完之后
你要看编码性能
你就去这个文档里边去找就可以了
然后有前面这4个文件之后
这4个文件
都放在同1个文件夹底下
然后你就双击bat文件
然后就会弹出图5所示的
这么一个框
如果能够弹出图5所示的一个框
就说明系统正在执行编码操作
然后他如果执行完了
它这个框就会自动的消失
然后相应的编码后的一些文件
它就会在你这个工作目录下
就会生成
然后你去找相应的文件
去看编码的性能就可以了
然后我们编码后
可以生成哪些文件呢
主要就是三类文件
一个就是.bin文件
我们叫bin文件
这个文件是一个码流文件
这个码流文件其实就是我们在网络中
经过传输的一个视频的码流
也是我们电脑中存储视频的
一个类型
也就是说我们电脑中存储的一个视频
它不是原始视频
也不是重建视频
而是一个码流
大家如果想打开这个视频的话
需要用相应的播放器
来进行打开
播放器在打开视频的时候
它执行的一个主要的操作
就是要解码
解码显示
然后编码生成的第二个文件
叫做重建视频
这个视频就对应的
我们编码后的一个
视频编码后的一个视频
如果我们编码的QP选择比较大的话
编码的视频相比原始视频来说
他会更加的模糊
图像会变得不清楚
然后最后一个编码的生存的文件
就是刚才说过的.txt文档
它主要就是记录编码过程中的
一些编码输出信息的
图5就是我们编码生成的
一个txt文件的一些部分信息
比如说第一行POC对应的就是
编码的相应图像的时候
他记录的一个信息
视频他在编码的时候
它是以图像为单位
来进行编码信息输出的
比如说这幅图像的一个类型
QP的一个选择
编码的一个比特数
相应的YUV三个信号的PSNR等等
这些值都会相应的有输出
另外视频编码完成之后
它还有一个SUMMARY
就是总结
它会把这个视频的
总体的一个性能也进行评价
比如说在SUMMARY里面
有一个比特率
这个比特率就是
衡量视频的总的编码比特率
比特率跟每一个图像编码出来
比特数都有关
另外SUMMARY里面
还有一个YUV三个信号的PSNR
这个PSNR
是整个视频的一个PSNR
比如说对于Y的PSNR
它是视频里边所有图像的
PSNR的一个平均值
当然最后我们的文档里边
还有相应的编码的一个时间
如果你的算法是
来验证这个算法的一个复杂度
或者说提出一个快速方法的话
主要关注一下
编码时间的信息的一个输出
好的
以上就是本节的内容
谢谢大家
-1.1 绪论(上)
--1.1绪论(上)
-1.2 绪论(下)
-第1章测试
-2.1 光照不良图像增强处理(上)
-2.2 光照不良图像增强处理(下)
-第2章习题
-3.1图像超分辨率重建技术概述
-3.2基于插值的图像超分辨率重建
-3.3基于深度学习的图像超分辨率重建之神经网络
-3.4基于深度学习的图像超分辨率重建
-3.5基础知识介绍
-3.6压缩感知与超分辨率重建
-3.7基于压缩感知字典学习的超分方法
-第3章测试一
-第3章测试二
-4.1引言-什么是HDR图像
-4.2 概述-HDR图像处理的研究内容
-4.3HDR图像获取—多曝光融合
-4.4色调映射基础
-第4章测试题
-5.1图像水印技术概述
-5.2图像单水印技术
-5.3图像双水印技术
-第5章测试题
-6.1图像检索概述
-6.2词袋(BOW)特征描述
-6.3VLAD特征编码
-6.4PCA降维
--6.4PCA降维
-7.1 监控视频编码的作用
-7.2 监控视频编码的标准
-7.3 监控视频编码标准
-第7章测试
-8.1运动目标检测
-8.2运动目标跟踪
-第8章测试题
-9.1高光谱图像基础知识
-9.2高光谱图像的应用
-9.3高光谱图像处理
-第9章测试题
-10.1现勘足迹的基本知识
-10.2现勘足迹提取方法
-10.3结构光测量技术概况
-10.4结构光提取原理
-10.5现勘三维现场重建技术
-10.6基于二维图像的三维现场重建
-10.7基于深度信息的三维现场重建
-10.8应用案例
--10.8应用案例
-第10章测试题
-11.1研究背景与意义
-11.2图像预处理技术
-11.3基于LBP纹理的鞋印检索
-11.4基于SIFT特征的鞋印检索
-第11章测试题
-12.1什么是案件的智能串并?
-12.2实现智能串并案的机遇与挑战
-12.3智能串并案的实现策略与方案
-12.4真实案件智能串并的实现
-第12章测试题
-13.1刑侦模拟画像概述
-13.2 刑侦模拟画像计算机辅助系统
-13.3刑侦模拟画像计算机辅助系统:两维三维画像辅助
-第13章测试题