HEVC Study Two(基于HM14.0平台)--如何在HEVC中加入背景建模技术(一)-阿里云开发者社区

开发者社区> 人工智能> 正文
登录阅读全文

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三个分量的像素值。

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
人工智能
使用钉钉扫一扫加入圈子
+ 订阅

了解行业+人工智能最先进的技术和实践,参与行业+人工智能实践项目

其他文章
最新文章
相关文章