
本书在介绍新一代视频编码标准HEVC基本原理的基础上,重点介绍作者科研团队在低复杂度视频编码、感知视频编码、基于深度学习的视频编码,以及视频编码超大规模集成电路架构设计等方面的最新研究成果。全书分为9章。第1章概述了视频编码国际标准和HEVC的发展历程,介绍了HEVC的特色技术、感知视频编码技术和视频编码芯片实现。第2~8章介绍了HEVC视频编码关键模块包括:帧间预测、帧内预测、变换与量化、熵编码、环路滤波、率失真优化与码率控制、参考帧存储压缩等编码模块的低复杂度优化方法、基于视觉感知的视频编码方法、基于深度学习的视频编码方法,以及高效的超大规模集成电路架构的设计与实现。第9章总结,介绍了主要结论和研究展望。
前 言 视觉是人类从外部获取信息的最主要的途径,与听觉、嗅觉和味觉等其他感觉相比,视觉可以通过感知光学信号的光线和色彩变化来获得更为直观和丰富的信息。人类接收的信息大约有70%来自视觉,与文字信息相比,图像或视频信息更直观,更能被大多数人接受。 随着互联网技术和多媒体技术的发展,视频信息已广泛存在于人们的生活和学习中。根据调查显示,在互联网流量中,网络视频约占90%。随着时间的推移,人们对于视频质量的要求也在不断提高,视频从最初的CIF分辨率发展到高分辨率1080P,传统的VCD、DVD及CRT显像管电视等播放设备逐渐被可以为消费者提供1080P高清视频的播放设备取代。目前,1080P分辨率的视频已经不能满足广大消费者的使用需求,取而代之的是分辨率高达4K(3840×2160)和8K(7680×4320)的超高清视频。与此同时,视频的帧率也在不断提高,从传统的30帧/秒(fps)发展到60fps,再发展到120fps,甚至更高。 数字视频具有直观性、确定性、广泛性等一系列的优点,但随着视频分辨率的提高,数字视频信息量大和实时性要求高的特点使得视频信息传输和存储的成本成倍增加,成为阻碍人们享受数字视频的瓶颈。因此,研究有效的数字视频编码技术,以压缩的形式传输和存储视频信息成为急需解决的问题。 随着互联网和多媒体技术的发展,视频编码技术广泛应用于计算机、通信、广播电视等领域。针对视频应用不断向高清晰度、高帧率、高压缩率方向发展的趋势,原有的H.264/AVC视频编码标准的局限性逐渐显现。因此,新一代高效视频编码(High Efficiency Video Coding,HEVC)标准应运而生。HEVC标准沿用了上一代视频编码标准H.264/AVC的混合编码框架,保留了其中的先进技术,同时对一些已经不适应当前视频发展趋势的技术加以改进或剔除。HEVC标准通过应用各种先进技术提高了视频编码的效率,在达到同等编码效果的前提下,HEVC标准比H.264/AVC标准的编码性能提高了近一倍。但众多的先进编码工具在提高编码效率的同时也极大地增加了HEVC编码器的复杂度,特别是当视频分辨率进入超高清阶段后,其实现的复杂度也急剧增加,同时给HEVC编码芯片的设计与实现带来了巨大的挑战。我们通过研究发现,在几乎不影响编码效率的前提下,将深度学习、视觉感知等计算机视觉方法与视频编码有机融合可以显著降低HEVC标准的编码计算的复杂度。因此,研究高效的HEVC视频编码方法和芯片实现架构具有重要的理论意义和应用前景。 全书共8章。第1章概述了视频编码国际标准和HEVC标准的发展历程,并且介绍了HEVC关键技术、感知视频编码和视频编码器芯片设计。第2~8章介绍了HEVC视频编码的关键模块,包括帧间预测、帧内预测、变换与量化、熵编码、环路滤波、率失真优化与码率控制、参考帧存储压缩等编码模块的低复杂度优化方法、基于视觉感知的视频编码优化方法、基于深度学习的视频编码优化方法,以及高效VLSI架构设计与实现。 本书获得了国家自然科学基金(61602383,61772424,61702418)、陕西省自然科学基础研究计划(2018JQ6016,2017JQ6019)等的资助,在此表示感谢! 视频编码算法的优化及其超大规模集成电路的设计与实现有大量问题尚待研究与解决,由于作者学识水平有限,书中难免有不妥之处,敬请广大读者批评指正。 作 者 2019年1月于西安
目 录 第1章 绪论 1 1.1 引言 1 1.2 视频编码 2 1.2.1 视频表达 2 1.2.2 视频中的冗余 5 1.2.3 视频编码过程 6 1.3 视频编码标准 7 1.3.1 视频编码标准的发展 7 1.3.2 MPEG系列标准 8 1.3.3 H.26X系列标准 9 1.3.4 HEVC的标准化 9 1.4 新一代视频编码标准HEVC 10 1.4.1 HEVC中的基本概念 10 1.4.2 HEVC框架 12 1.4.3 HEVC关键技术 13 1.5 感知视频编码 15 1.6 视频编码器芯片设计 17 参考文献 18 第2章 帧间预测 21 2.1 HEVC中的帧间预测方法 21 2.1.1 SKIP/merge模式 21 2.1.2 AMVP模式 23 2.1.3 运动估计 24 2.1.4 四叉树划分 28 2.1.5 帧间预测单元划分流程 30 2.2 低复杂度HEVC帧间预测算法优化 31 2.2.1 算法的思想 32 2.2.2 模型的建立 32 2.2.3 单元划分算法的流程 35 2.2.4 实验结果与分析 36 2.3 基于深度学习的HEVC内插值滤波算法优化 45 2.3.1 HEVC中的分数像素插值滤波算法 45 2.3.2 基于卷积神经网络的分数像素插值滤波算法 48 2.3.3 实验结果与分析 55 2.4 HEVC内插值滤波器的高效VLSI架构设计与实现 58 2.4.1 快速内插值滤波算法 58 2.4.2 高效插值滤波器VLSI架构 60 2.4.3 实验结果与分析 65 参考文献 66 第3章 帧内预测 69 3.1 HEVC中的帧内预测方法 69 3.1.1 帧内预测 69 3.1.2 HEVC帧内预测模式的决策过程 73 3.1.3 帧内预测CU的划分和选取 75 3.2 低复杂度HEVC帧内预测算法优化 76 3.3 基于视觉感知的HEVC帧内预测算法优化 82 3.3.1 视觉显著性模型的实现 83 3.3.2 基于图像显著性的深度标记 85 3.3.3 算法流程及算法分析 88 3.3.4 实验结果与分析 89 3.4 基于深度学习的HEVC帧内预测角度预测模式选择算法优化 92 3.4.1 基于深度学习的HEVC帧内预测角度预测模式选择算法研究 92 3.4.2 基于深度学习的HEVC帧内预测编码单元划分算法研究 103 3.4.3 两种改进算法相结合的编码性能分析 118 3.5 HEVC帧内预测的高效VLSI架构设计与实现 120 3.5.1 整体架构设计 120 3.5.2 自适应参考像素平滑滤波器的架构设计 122 3.5.3 可重构的角度预测模块的架构设计 124 3.5.4 累加架构的Planar预测模块架构设计 127 3.5.5 复用结构的DC预测模块架构设计 128 3.5.6 实验结果与分析 129 参考文献 133 第4章 变换与量化 135 4.1 HEVC中的变换与量化方法 135 4.1.1 DCT与视频编码 135 4.1.2 整数DCT算法的研究 140 4.1.3 整数DCT算法的优化 145 4.1.4 HEVC中的其他残差处理方法 147 4.1.5 HEVC中的量化 149 4.2 低复杂度HEVC变换与量化算法优化 154 4.2.1 全零块检测基本原理 154 4.2.2 全零块检测算法 158 4.2.3 实验结果与分析 166 4.2.4 量化与系数编码 168 4.3 快速TU划分算法研究 172 4.3.1 HM中的TU划分方法 172 4.3.2 快速TU划分算法 174 4.3.3 实验结果与分析 181 4.4 HEVC变换与量化的高效VLSI架构设计与实现 182 4.4.1 整数DCT的VLSI实现 182 4.4.2 实验结果与分析 192 4.4.3 整数DST的VLSI实现 195 4.4.4 实验结果与分析 197 4.4.5 量化算法的VLSI实现 198 4.4.6 实验结果与分析 200 参考文献 200 第5章 熵编码 203 5.1 HEVC中的熵编码方法 203 5.1.1 二进制化 203 5.1.2 上下文建模 203 5.1.3 二进制算术编码 204 5.2 低复杂度HEVC熵编码算法优化 204 5.2.1 变换系数熵编码优化算法的思想 204 5.2.2 变换系数熵编码优化算法的流程 207 5.2.3 实验结果与分析 208 5.3 哥伦布及等概率编码优化 210 5.3.1 哥伦布-莱斯码 210 5.3.2 哥伦布编码估计 212 5.3.3 等概率编码过程的简化 213 5.3.4 实验结果与分析 214 参考文献 215 第6章 环路滤波 217 6.1 HEVC中的环路滤波方法 217 6.1.1 去块效应滤波 217 6.1.2 样点自适应补偿 218 6.1.3 去块效应滤波的标准算法 218 6.1.4 样点自适应补偿的标准算法 222 6.2 基于视觉感知的HEVC环路滤波算法优化 226 6.2.1 算法的思想 226 6.2.2 算法的流程 227 6.2.3 实验结果与分析 228 6.3 基于深度学习的HEVC环路滤波算法优化 230 6.3.1 基于卷积神经网络的样点自适应补偿算法 230 6.3.2 实验结果与分析 237 6.4 HEVC环路滤波的高效VLSI架构设计与实现 239 6.4.1 易于硬件实现的快速边界判定算法 239 6.4.2 样点自适应补偿中的快速编码比特数预测算法 244 6.4.3 实验结果与分析 250 6.4.4 HEVC中环路滤波整体架构设计 252 6.4.5 环路滤波架构的并行设计 253 6.4.6 去块效应滤波的VLSI架构设计 257 6.4.7 样点自适应补偿的VLSI架构设计 261 6.4.8 环路滤波器的流水线设计 267 6.4.9 存储器设计 269 6.4.10 实验结果与分析 270 参考文献 272 第7章 率失真优化与码率控制 274 7.1 HEVC中的率失真优化与码率控制方法 274 7.1.1 率失真优化 274 7.1.2 码率控制 274 7.2 基于视觉感知的HEVC率失真优化与码率控制算法优化 277 7.2.1 算法框架 277 7.2.2 视觉显著性模型 278 7.2.3 失真模型 280 7.2.4 基于视觉显著性的加权失真 282 7.2.5 感知码率控制算法 283 7.2.6 实验结果与分析 286 7.3 快速码率估计算法 291 7.3.1 语法元素编码结构 291 7.3.2 码率计算的标准过程 292 7.3.3 码率计算过程的简化 294 7.3.4 实验结果与分析 301 参考文献 303 第8章 参考帧存储压缩 305 8.1 参考帧存储压缩基本概念 305 8.1.1 简述 305 8.1.2 常见的参考帧压缩方法 305 8.2 无损参考帧存储压缩系统 309 8.2.1 基于像素纹理的无损参考帧压缩算法研究 309 8.2.2 DRAM存储系统的研究 318 8.2.3 并行流水无损参考帧压缩架构 320 8.2.4 实验结果与分析 325 8.3 有损参考帧存储压缩系统 329 8.3.1 人类视觉系统 329 8.3.2 率失真理论 330 8.3.3 有损参考帧压缩算法 333 8.3.4 并行流水有损参考帧压缩VLSI架构 344 8.3.5 实验结果与分析 349 参考文献 357