【转载】CU、PU、TU划分显示代码
转载自 http://blog.sina.com.cn/s/blog_7b7ddaf90101ftvl.html
相信只要是做算法改进的,首先都会遇到这么一个问题:CU,PU及TU这几个在HM中该如何打印出它们最终的划分情况呢?也经常有人来问我这个问题,一般来说,因为问我的时候我一般手头都没有现成的代码可以提供,另一方面,也没空把vs打开写上一段,所以只能是告诉他们大概的思路,其实我很早之前的一篇博客已经进行了介绍,只是当时没有把代码附上,后来也找不到了,就不了了之了。本文算是把这个遗憾给补上吧。直接附上代码,由于功能简单,就不注释了~
- printf("\n---------------CTU Address(Raster Scan): %d-----------------\n", pcCU->getAddr());
- printf("\n---------------CU starts--------------\n");
- int iCount = 0;
- int iWidthInPart = g_uiMaxCUWidth >> 2;
- for (int i = 0; i <</span> pcCU->getTotalNumPart(); i++)
- {
- if ( (iCount & (iWidthInPart - 1)) == 0)
- printf("\n");
- printf("%d ", pcCU->getDepth(g_auiRasterToZscan[i]));
- iCount++;
- }
- printf("\n---------------CU ends--------------\n");
- printf("\n---------------TU starts--------------\n");
- iCount = 0;
- for (int i = 0; i <</span> pcCU->getTotalNumPart(); i++)
- {
- if ( (iCount & (iWidthInPart - 1)) == 0)
- printf("\n");
- printf("%d ", pcCU->getTransformIdx(g_auiRasterToZscan[i]) + pcCU->getDepth(g_auiRasterToZscan[i]));
- iCount++;
- }
- printf("\n---------------TU ends--------------\n");
上面这一段程序,以4x4块为单位进行打印,数字范围0~4, 0表示不划分,1表示处于深度1,依此类推。其实,只要认真研究下TComDataCU这个类,基本上你需要的那些统计信息都可以通过类似以上方法进行统计。如果想做成类似H264visa这样的分析工具,那么基于这些信息,剩下的就是图形化界面的工作了。
【转载】CU、PU、TU划分显示代码相关推荐
- 每一步详细介绍—在HM中进行CU PU TU划分以及PU最佳预测模式选择
CU PU TU划分以及PU最佳预测模式选择 在HM对CU进行划分(CU模式判别).PU模式选择(划分).以及PU预测模式划分的过程总算有点理解,现对整个过程进行详细介绍. HM进行块划分和模式选择主 ...
- HEVC预测块(PU)模式划分显示
转自:http://blog.csdn.net/pc__wang/article/details/27225443#L316 1. PU模式划分显示效果图 2. HEVC decoder 代码修改 该 ...
- HEVC区域划分Slice Tile CTU CU PU TU
Slice Slice是可以不依赖同一张图片其他Slice独立编码的数据结构,包括信号预测.残差信号重建和熵编码.一张图片可以分为一个活多个Slice.Slice包含一个或多个Slice segmen ...
- HEVC标准中的图像分割(2),slice,tile,CTU,CU,PU,TU等
接着来说HEVC的图像分割. HEVC的标准中有这么一段话,翻译过来就是: 图像分成分量(Y,Cb,Cr). 分量分成coding tree blocks 图像分成tile列 图像分成tile行 Ti ...
- 浅谈HEVC中的CTU CU PU TU
从今天开始会陆续写一些对HEVC的认识的文章,小弟初来乍到,希望大家能够多多指点. 这两天看了block partitioning structure in the HEVC standard这篇论文 ...
- HEVC里面CU与TU打印到屏幕及提取到txt文本
测试模型为HM16.5 在解决方案资源管理器里面找到项目TlibEncoder,会看到里面有个源文件TencCU.cpp (1)打印到屏幕 (在TencCU.cpp的xCompressCU函数(237 ...
- 【转载】LCU的划分
转载自 http://blog.sina.com.cn/s/blog_7b7ddaf90101edj2.html 首先,对于四叉树的分割形式,大家想必都已经了解了,这里就不进行过多的赘述,下面是常见的 ...
- 改进博客园Markdown显示功能(加代码行号、显示代码所用编程语言)
博客园的markdown模式下的代码高亮功能使用的是highlight.js,没有行号和显示相应编程语言的功能,只好自己将其改造了一下(将这两种功能一并实现了)~ 先看一下效果,再详细介绍方法~ 查看 ...
- 快速显示代码信息工具 Tokei
2019独角兽企业重金招聘Python工程师标准>>> 原文:https://www.oschina.net/p/tokei 前言 Tokei 是一个显示代码信息的统计程序,它会显示 ...
最新文章
- laya zip更新方案
- 如何通过redisTemplate获得key的过期时间
- php url 合法字符串_PHP函数补完:http_build_query()构造URL字符串
- Java面试题:热情盛夏,分享Java大厂面试百题
- 聊聊手游的那些惊喜与惊吓
- vue自学入门-2(vue创建项目)
- 获取电话名录的九种方法
- workbench谐响应
- 如何将pdf转换成word的3种免费方法
- 数据科学家:大器晚成,是软件工程师成功的唯一捷径
- 各类型液晶电视面板解析
- signature=e7b038f264f5a1cf5b8e81732b377b41,不同养生功法对2型糖尿病伴失眠患者抑郁,焦虑和睡眠质量的影响...
- 【Java习题程序】将int整数转化为int数组,不用转String。
- 用iOS/Android实现家庭自动化远程控制
- java 模板函数_重温Java中的模板方法设计模式
- 项目编译不成功原因之一的引用jar包问题
- c语言可乐,★★PC可乐吧系列教程之 -- QQ用户小心!C语言实现QQ密码大盗★★
- Lawliet|C语言学习笔记4——选择结构
- Logic Pro X for Mac(专业音频编辑制作工具)
- 市场调研-全球与中国Mini-USB数据线市场现状及未来发展趋势
热门文章
- LVM(logical volume manager) 逻辑卷管理器
- 从Arduino IDE安装到成功控制LED灯光的开发过程|阿里云远程控制灯光案例|Arduino编译缺少python27.dll问题|玉念聿辉
- vue3 关于子组件给父组件传值,详解
- 开发到上线仅 16 天,海外党研发微信小程序全攻略
- 单独安装OneNote
- NAT ,BFD ,NQA 实验
- 软件考试:89个系统相关的基本概念
- Lua利用自定义函数打印_G内容
- skywalking和jpa冲突
- 美学心得(第二百三十四集) 罗国正