HEVC Study Two(基于HM14.0平台)--如何在HEVC中加入背景建模技术(一)

简介: <p><span style="font-size:14px"><span style="white-space:pre"></span><span style="white-space:pre"></span><span style="white-space:pre"></span><span style="white-space:pre"></span>随着AVS的逐步发展,AVS中的

随着AVS的逐步发展,AVS中的一些创新也得到国际上越来越多学者的关注。尤其是AVS中针对监控视频编码的背景建模技术和感兴趣区域提取技术。对于国际同行来说,如何在HEVC的参考软件平台HM上加入这两项技术是一个工作量甚大的事情。本文就本人做的一些工作做简单介绍。


软件平台HM14.0,IDE:VS2010(英文版)


废话了这么多,下面开始真正的内容:

在《HEVC framework before starting encoding(基于HM14.0平台)》中(网址:点击打开链接)讲述了进入编码前的一些准备工作,其实背景建模也是准备工作的一部分。

下面给出大致的流程图,可以看到背景建模应该处于的位置。


要想进行背景建模,必须知道当前帧的像素值和前一帧的像素值。当前帧的像素值可以用以下方法得到(基于HM14.0):

	Pel* PicOrgLumaAdrr=pcPicYuvOrg->getLumaAddr();
	for(int i=0;i<352;i++)
	{

		if(i%16==0) cout<<endl;
		cout<<*(PicOrgLumaAdrr+i)<<" ";
		
	}

	Pel* PicOrgCbAdrr=pcPicYuvOrg->getCbAddr();
	for(int j=0;j<176;j++)
	{

		if(j%8==0) cout<<endl;
		cout<<*(PicOrgCbAdrr+j)<<" ";
		
	}

	Pel* PicOrgCrAdrr=pcPicYuvOrg->getCrAddr();
	for(int k=0;k<176;k++)
	{

		if(k%8==0) cout<<endl;
		cout<<*(PicOrgCrAdrr+k)<<" ";
		
	}
上述代码可以得到当前帧Y、Cb和Cr三个分量的像素值。

目录
相关文章
|
9月前
|
编解码 IDE 测试技术
HEVC编码之HM学习
HM是HEVC的官方标准测试模型,想要对HEVC进行了解,需要对HM源码进行一定解读才能够更加深入。
228 0
|
Web App开发 编解码 测试技术
HEVC和AV1幕后视频编解码器之战
在未来几天的NAB大会上,AOM联盟将展示AV1的性能,多媒体行业全部聚焦于HEVC与AV1比较上。
1807 0
|
编解码
【H.264/AVC视频编解码技术详解】十五、H.264的变换编码(二):H.264整数变换和量化的实现
《H.264/AVC视频编解码技术详解》视频教程已经在“CSDN学院”上线,视频中详述了H.264的背景、标准协议和实现,并通过一个实战工程的形式对H.
2244 0
|
编解码
【H.264/AVC视频编解码技术详解】十四、H.264的变换编码(一)——矩阵运算与正交变换基本概念
《H.264/AVC视频编解码技术详解》视频教程已经在“CSDN学院”上线,视频中详述了H.264的背景、标准协议和实现,并通过一个实战工程的形式对H.
1477 0
|
编解码 算法 索引
【H.264/AVC视频编解码技术详解】十三、熵编码算法(4):H.264使用CAVLC解析宏块的残差数据
《H.264/AVC视频编解码技术详解》视频教程已经在“CSDN学院”上线,视频中详述了H.264的背景、标准协议和实现,并通过一个实战工程的形式对H.
1747 0
|
编解码 算法
【H.264/AVC视频编解码技术详解】十三、熵编码算法(3):CAVLC原理
《H.264/AVC视频编解码技术详解》视频教程已经在“CSDN学院”上线,视频中详述了H.264的背景、标准协议和实现,并通过一个实战工程的形式对H.
1580 0
|
编解码
【H.264/AVC视频编解码技术详解】十二、解析H.264码流的宏块结构(下):H.264帧内编码宏块的预测结构
《H.264/AVC视频编解码技术详解》视频教程已经在“CSDN学院”上线,视频中详述了H.264的背景、标准协议和实现,并通过一个实战工程的形式对H.
1593 0