转载自  http://blog.sina.com.cn/s/blog_7b7ddaf90101ftvl.html

相信只要是做算法改进的,首先都会遇到这么一个问题:CU,PU及TU这几个在HM中该如何打印出它们最终的划分情况呢?也经常有人来问我这个问题,一般来说,因为问我的时候我一般手头都没有现成的代码可以提供,另一方面,也没空把vs打开写上一段,所以只能是告诉他们大概的思路,其实我很早之前的一篇博客已经进行了介绍,只是当时没有把代码附上,后来也找不到了,就不了了之了。本文算是把这个遗憾给补上吧。直接附上代码,由于功能简单,就不注释了~

[html] view plaincopy
  1. printf("\n---------------CTU Address(Raster Scan): %d-----------------\n", pcCU->getAddr());
  2. printf("\n---------------CU starts--------------\n");
  3. int iCount = 0;
  4. int iWidthInPart = g_uiMaxCUWidth >> 2;
  5. for (int i = 0; i <</span> pcCU->getTotalNumPart(); i++)  
  6. {
  7. if ( (iCount & (iWidthInPart - 1)) == 0)
  8. printf("\n");
  9. printf("%d ", pcCU->getDepth(g_auiRasterToZscan[i]));
  10. iCount++;
  11. }
  12. printf("\n---------------CU ends--------------\n");
  13. printf("\n---------------TU starts--------------\n");
  14. iCount = 0;
  15. for (int i = 0; i <</span> pcCU->getTotalNumPart(); i++)  
  16. {
  17. if ( (iCount & (iWidthInPart - 1)) == 0)
  18. printf("\n");
  19. printf("%d ", pcCU->getTransformIdx(g_auiRasterToZscan[i]) + pcCU->getDepth(g_auiRasterToZscan[i]));
  20. iCount++;
  21. }
  22. printf("\n---------------TU ends--------------\n");

上面这一段程序,以4x4块为单位进行打印,数字范围0~4, 0表示不划分,1表示处于深度1,依此类推。其实,只要认真研究下TComDataCU这个类,基本上你需要的那些统计信息都可以通过类似以上方法进行统计。如果想做成类似H264visa这样的分析工具,那么基于这些信息,剩下的就是图形化界面的工作了。

【转载】CU、PU、TU划分显示代码相关推荐

  1. 每一步详细介绍—在HM中进行CU PU TU划分以及PU最佳预测模式选择

    CU PU TU划分以及PU最佳预测模式选择 在HM对CU进行划分(CU模式判别).PU模式选择(划分).以及PU预测模式划分的过程总算有点理解,现对整个过程进行详细介绍. HM进行块划分和模式选择主 ...

  2. HEVC预测块(PU)模式划分显示

    转自:http://blog.csdn.net/pc__wang/article/details/27225443#L316 1. PU模式划分显示效果图 2. HEVC decoder 代码修改 该 ...

  3. HEVC区域划分Slice Tile CTU CU PU TU

    Slice Slice是可以不依赖同一张图片其他Slice独立编码的数据结构,包括信号预测.残差信号重建和熵编码.一张图片可以分为一个活多个Slice.Slice包含一个或多个Slice segmen ...

  4. HEVC标准中的图像分割(2),slice,tile,CTU,CU,PU,TU等

    接着来说HEVC的图像分割. HEVC的标准中有这么一段话,翻译过来就是: 图像分成分量(Y,Cb,Cr). 分量分成coding tree blocks 图像分成tile列 图像分成tile行 Ti ...

  5. 浅谈HEVC中的CTU CU PU TU

    从今天开始会陆续写一些对HEVC的认识的文章,小弟初来乍到,希望大家能够多多指点. 这两天看了block partitioning structure in the HEVC standard这篇论文 ...

  6. HEVC里面CU与TU打印到屏幕及提取到txt文本

    测试模型为HM16.5 在解决方案资源管理器里面找到项目TlibEncoder,会看到里面有个源文件TencCU.cpp (1)打印到屏幕 (在TencCU.cpp的xCompressCU函数(237 ...

  7. 【转载】LCU的划分

    转载自 http://blog.sina.com.cn/s/blog_7b7ddaf90101edj2.html 首先,对于四叉树的分割形式,大家想必都已经了解了,这里就不进行过多的赘述,下面是常见的 ...

  8. 改进博客园Markdown显示功能(加代码行号、显示代码所用编程语言)

    博客园的markdown模式下的代码高亮功能使用的是highlight.js,没有行号和显示相应编程语言的功能,只好自己将其改造了一下(将这两种功能一并实现了)~ 先看一下效果,再详细介绍方法~ 查看 ...

  9. 快速显示代码信息工具 Tokei

    2019独角兽企业重金招聘Python工程师标准>>> 原文:https://www.oschina.net/p/tokei 前言 Tokei 是一个显示代码信息的统计程序,它会显示 ...

最新文章

  1. laya zip更新方案
  2. 如何通过redisTemplate获得key的过期时间
  3. php url 合法字符串_PHP函数补完:http_build_query()构造URL字符串
  4. Java面试题:热情盛夏,分享Java大厂面试百题
  5. 聊聊手游的那些惊喜与惊吓
  6. vue自学入门-2(vue创建项目)
  7. 获取电话名录的九种方法
  8. workbench谐响应
  9. 如何将pdf转换成word的3种免费方法
  10. 数据科学家:大器晚成,是软件工程师成功的唯一捷径
  11. 各类型液晶电视面板解析
  12. signature=e7b038f264f5a1cf5b8e81732b377b41,不同养生功法对2型糖尿病伴失眠患者抑郁,焦虑和睡眠质量的影响...
  13. 【Java习题程序】将int整数转化为int数组,不用转String。
  14. 用iOS/Android实现家庭自动化远程控制
  15. java 模板函数_重温Java中的模板方法设计模式
  16. 项目编译不成功原因之一的引用jar包问题
  17. c语言可乐,★★PC可乐吧系列教程之 -- QQ用户小心!C语言实现QQ密码大盗★★
  18. Lawliet|C语言学习笔记4——选择结构
  19. Logic Pro X for Mac(专业音频编辑制作工具)
  20. 市场调研-全球与中国Mini-USB数据线市场现状及未来发展趋势

热门文章

  1. LVM(logical volume manager) 逻辑卷管理器
  2. 从Arduino IDE安装到成功控制LED灯光的开发过程|阿里云远程控制灯光案例|Arduino编译缺少python27.dll问题|玉念聿辉
  3. vue3 关于子组件给父组件传值,详解
  4. 开发到上线仅 16 天,海外党研发微信小程序全攻略
  5. 单独安装OneNote
  6. NAT ,BFD ,NQA 实验
  7. 软件考试:89个系统相关的基本概念
  8. Lua利用自定义函数打印_G内容
  9. skywalking和jpa冲突
  10. 美学心得(第二百三十四集) 罗国正