基于自回归超先验的有损图像压缩框架

23979834778bd7948f2f9368b4c4031e.png

文章信息

abf21574201c83e73b5929d048478e55.png

  论文题目为《Joint Autoregressive and Hierarchical Priors for Learned Image Compression》,文章来自NIPS2018谷歌团队,是第一篇端到端图像压缩论文《variational image compression with a scale hyperprior》的改进版本,在《variational image compression with a scale hyperprior》中引入了一个超先验来有效地捕获潜在表征中的空间依赖性。而本文受到概率生成模型中自回归先验的成功的启发,该文研究了自回归,分层和组合先验作为替代方案,在图像压缩的情况下权衡了它们的成本和收益。众所周知,自回归模型会带来很大的计算量损失,就压缩性能而言,自回归和分层先验是互补的,并且与所有先前学习的模型相比,自回归和分层先验在潜伏中的概率结构更好。组合的模型产生了最新的速率失真性能,第一个超过了BPG传统压缩的智能压缩算法。

71cc81a2b23fa23251fb3074a8128c42.png

摘要

b8f537e1835a7865097649dbb6228052.png

   最近的学习图像压缩模型是基于自编码器,它学习从像素到量化潜在表示的近似可逆映射。这些变换与熵模型相结合,熵模型是潜在表示的先验,可以与标准算术编码算法一起使用来生成压缩的比特流。最近,层次熵模型被引入,作为一种比以前的完全分解先验挖掘更多潜在结构的方法,在保持端到端优化的同时提高了压缩性能。受自回归先验在概率生成模型中成功的启发,我们研究了自回归先验、分层先验和组合先验作为替代方案,并在图像压缩的背景下权衡它们的成本和收益。虽然众所周知,自回归模型可能会导致显著的计算损失,但我们发现,在压缩性能方面,自回归和分层先验是互补的,可以结合起来利用潜在的概率结构,比所有以前的学习模型更好。该组合模型产生了最先进的速率失真性能,并且生成的文件比现有方法更小:比基线分层模型减少15.8%的速率,比JPEGJPEG2000BPG分别节省59.8%35%8.4%的速率。据我们所知,我们的模型是第一个在PSNRMS-SSIM失真指标上优于顶级标准图像编解码器(BPG)的基于学习的方法。

31424efc7237a39efbf4b9b44320a416.png

贡献

8978c395d8d69950c7c1eeb8239edfff.png

1)该模型是基于Ballé 2018等人的工作.使用基于噪声的松弛来将梯度下降方法应用于方程式中的损失函数。并引入了层次化的改进熵模型。

2)本文证明了深度神经网络的标准优化方法足以了解边信息的大小与从更精确的熵模型获得的节省之间的有用平衡。与早期的基于学习的方法相比,生成的压缩模型提供了最新的图像压缩结果。

a6935841ad54a751bc8f08cf729594f8.png

问题定义

e4937c8cb5a65e04a6029b146136de42.png

     在图像压缩的变换编码方法中,编码器使用参数分析变换ab952410ea1859054e0b8df2d82b2a5a.png转化为潜在表示y,然后量化形成y ̂。因为y ̂是离散值,它可以使用熵编码技术,如算术编码进行无损压缩,并作为比特序列传输。另一方面,解码器从压缩信号中恢复y ̂,并对其进行参数合成变换b407bd3bcc5bb2708f9404864cbb091b.png恢复重构图像x ̂。在本文中认为变换g_a和g_s是一般的参数化函数,如人工神经网络(ann),而不是传统压缩方法中的线性变换。然后,参数θ_g和φ_g封装了神经元的权重等。因此问题定义如下:

b3dd28a3d224ae3bd50dd18a2f983ecc.png

4a44eae8fffd1b269fe06d19f53f691f.png

方法

7d34c5acf342a55c90832829a8b1bbee.png

 5.1 模型概况

  本文提出的网络架构如下图所示,其中左半边是对图像进行编解码的网络模型,右半边对应超先验模型,AEAD表示算数熵编码器和熵解码器,本文引入了自回归模型来预测隐变量的均值,因此隐变量的均值无需存储传输,大大节约了码率消耗。组合模型共同优化了一个自回归组件,该组件根据其因果上下文(上下文模型)以及超优先级和底层自动编码器来预测隐变量的均值。,然后使用算术编码器(AE)将其压缩为位流,并通过算术解码器(AD)对其进行解压缩。

71ecdf7746dcccf793753ac36260f543.png

5.2 编码器

   对于编码器来说,和变分自编码器的思想一样,对图片111c4439900b629be64c48718151f64a.png所携带的所有特征信息转为隐层向量d5c9b55b85ecd2e8fc446680e8954f2e.png

  和变分自编码器不一样的是:如果是变分自编码器,我们只能假设F的C1个通道里每个通道的先验分布为高斯分布;但是本文的作者对隐层向量F的每一个点的先验分布为高斯分布,这是通过后面的超先验网络实现的(但是变分自编码器也能假设每一个点的先验分布为高斯分布,只要你线性层映射的足够多就可以做到)。 

  变分自编码器需要获得隐层向量中每一个点也好,每一个通道内所有点也好,需要预先假设他们的先验分布(这是为熵编码服务的),但是我们并不知道隐层向量可能的分布,因此在变分自编码器中我们一般假设他们都是标准正态分布,即F~N(0,1);但是对于图像中一些边缘信息,映射到隐层向量中往往离标准正态分布较远(增加了熵编码的成本),因此本文作者提出了一个超先验模型(后面会介绍),和最开始提出的超先验模型不同,该超先验模型不仅得到每一个点的σ,并配合上下文模型预测得到每一个点的均值,预测我们不再假设隐向量的每一个点的均值维0,也就是说超先验模型代替了人为假设隐层向量的分布这一个工作,并且他好像提前知道每一个点可能的分布。

5.3 解码器

  对于解码器来说,从隐层向量acbe71110bb09c15f5a39cd542b4342b.png中,输入到c2556ce9494c009cd1eb0f106b50306f.png重构出样本685efe6551d9ed6aaa1890822f5ed10b.png

5.4 超先验网络

  经过编码器后得到的隐层向量的元素之间存在显著的空间依赖性。值得注意的是,它们的尺度在空间上是耦合的。对一组目标变量之间的依赖关系进行建模的标准方法是引入潜在变量,假设目标变量是独立的。我们引入了一组额外的随机变量来捕获空间依赖性,并建议将模型扩展如下:

2baac362bb76e50250b565ec991e8cdb.png

   每个隐层向量元素现在被建模为具有自己的标准差026520e740d114a6759460d09f9fe7e9.png的零均值高斯,其中标准差通过应用参数变换d789285d98a0b9af3c9fee83e355fc35.png37249cd7495b454408951e2e9ae8ac40.png来预测(如上所述,我们将每个高斯密度与标准均匀度卷积)

5.5 上下文模型

   该自回归组件是通过一层的mask convolution卷积层实现的,具体可参考论文《Pixel Recurrent Neural Networks》,通过对卷积核进行Mask操作,掩盖了未解码点的数值,保证了自回归模型预测的当前的像素点参数仅来自于前面已经解码的点,而不取决于未解码点。通过这种Mask 掩膜,遮蔽卷积核下面和右边的权重,这种卷积核与特征图进行卷积的时候,可以可知卷积得到的结果与“未来”的数据无关。自回归模型的问题在于存在严格是时序关系,只能先得到前面的点才能得到当前点的信息,而前面的点也只能依靠更前面的点得到,即表现为在解码的时候,原始的解码方式具有并行性质,而自回归则是串行顺序。

9db44203a039654f7e7a2aee9375b76d.png

实验

1270133f605fcb2001f13a53ad36aa33.png

   我们通过计算公开可用的柯达图像集的平均率失真(RD)性能来评估我们的广义模型。图2显示了使用峰值信噪比(PSNR)作为图像质量度量的RD曲线。虽然已知PSNR是一个相对较差的感知度量,但它仍然是用于评估图像压缩算法的标准度量,也是用于调整传统编解码器的主要度量。图2左侧的RD图将我们的组合上下文+超先验模型与现有的图像编解码器(标准编解码器和学习模型)进行了比较,并显示该模型优于所有现有的方法,包括BPG,一种基于HEVC帧内编码算法的最先进的编解码器。右边的RD图比较了我们模型的不同版本,并显示了组合模型的性能最好,而上下文模型的性能略差于任何一个层次版本。

e8595193026f193d10a5d71b87583eb6.png

  结果在很大程度上取决于训练过程中损失函数中使用的失真度量。当测量PSNR中的失真时(5,顶部),如果我们的模型针对MS-SSIM进行了优化,则它们的性能都很差。然而,当对平方误差进行优化时,具有因式先验的模型优于现有的传统编解码器,如JPEG,以及其他基于人工神经网络的方法,这些方法已经经过平方误差的训练。请注意,这里没有显示的其他已发表的基于人工神经网络的方法与所显示的方法相比表现不佳,或者没有向我们提供数据。

  我们的因式先验模型并不优于BPG (Bellard, 2014) BPGHEVC(2013)的封装,目标是静止图像压缩。当训练我们的超先验模型的平方误差时,我们得到了接近BPG的性能,在高比特率下比低比特率下有更好的结果,但仍然大大优于所有已发表的基于人工神经网络的方法。

  当使用MS-SSIM(5,底部)测量失真时,JPEGBPG等传统编解码器最终处于性能排名的低端。这并不奇怪,因为这些方法已经针对平方误差进行了优化(手工选择的约束旨在确保平方误差优化不会违背视觉质量)。据我们所知,MS-SSIM压缩性能的最新技术是RippelBourdev(2017)

  令人惊讶的是,它与我们的因式先验模型相匹配(在高比特率下性能更好,在低比特率下性能稍差),尽管他们的模型在概念上要复杂得多(由于其多尺度架构、GAN损失和上下文自适应熵模型)。超先验模型在所有利率扭曲权衡中增加了进一步的收益,始终超过最先进的水平。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/764323.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Java 并发集合:CopyOnWrite 写时复制集合介绍

大家好,我是栗筝i,这篇文章是我的 “栗筝i 的 Java 技术栈” 专栏的第 016 篇文章,在 “栗筝i 的 Java 技术栈” 这个专栏中我会持续为大家更新 Java 技术相关全套技术栈内容。专栏的主要目标是已经有一定 Java 开发经验,并希望进…

【Qwen2部署实战】Qwen2初体验:用Transformers打造智能聊天机器人

系列篇章💥 No.文章1【Qwen部署实战】探索Qwen-7B-Chat:阿里云大型语言模型的对话实践2【Qwen2部署实战】Qwen2初体验:用Transformers打造智能聊天机器人3【Qwen2部署实战】探索Qwen2-7B:通过FastApi框架实现API的部署与调用4【Q…

IIC电平转换电路原理

一、电平转换的必要性 在IIC主从设备连接时,由于主从设备可能存在不同的电源电压(如5V、3.3V、1.8V等),导致需要进行电平转换以确保正常通信。 二、电平转换电路的基本组成 电平转换电路通常包括上拉电阻、MOS管(通常…

C++基础(二):C++入门(一)

C是在C的基础之上,容纳进去了面向对象编程思想,并增加了许多有用的库,以及编程范式 等。熟悉C语言之后,对C学习有一定的帮助,本篇博客主要目标: 1. 补充C语言语法的不足,以及C是如何对C语言设计…

AI与音乐:终极对决,机械混音师将扬弃人类知识!

AI与音乐 一. 引言1.1 AI在音乐创作中的应用1.2 AI在音乐表演与演奏中的应用 二. AI在音乐创作中的应用2.1 AI在音乐创作中的应用技术2.1.1 深度学习2.1.2 遗传算法2.1.3 神经网络 2.2 不同AI算法在音乐创作中的应用2.2.1 使用LSTM神经网络模型生成新的音乐2.2.2 使用基于模板的…

`THREE.LineBasicMaterial` 是 three.js 中用来创建用于绘制线条的基本材质。

demo案例 THREE.LineBasicMaterial 是 three.js 中用来创建用于绘制线条的基本材质。以下是它的入参、出参、方法和属性的详细说明。 入参 (Constructor Parameters) THREE.LineBasicMaterial 构造函数可以接收一个包含多个属性的对象。常用属性如下: const ma…

c++ 构造,析构,拷贝,移动构造函数

文章目录 概述1.构造函数2. 拷贝构造函数3.移动构造函数4.析构函数 例子QTUE4/5 c 小结 概述 对于c来说,最基础的是类。对于一个类来说,主要由以下函数构成。如下: 构造函数拷贝构造函数移动构造函数析构函数 当然,还有一个操作…

做测试/爬虫 selenium 元素定位 谷歌浏览器 插件推荐,提高元素定位效率

注:插件均在谷歌应用商店 下载 1.XPath Helper 插件 作用:用于Html中对目标字段或者属性值进行匹配 快捷启动:ctrl shift x 示例图如下: 2. ChroPath 插件 作用: 提高元素定位效率 启动:谷歌浏览器 按 F12 -&g…

Query Rewriting for Retrieval-Augmented Large Language Models

文章目录 题目摘要方法实验 题目 检索增强大语言模型的查询重写 论文地址:https://arxiv.org/abs/2305.14283 项目地址:https://github.com/xbmxb/RAG-query-rewriting 摘要 大语言模型(LLM)在检索--然后阅读(retriev…

使用 Amazon Bedrock Converse API 简化大语言模型交互

本文将介绍如何使用 Amazon Bedrock 最新推出的 Converse API,来简化与各种大型语言模型的交互。该 API 提供了一致的接口,可以无缝调用各种大型模型,从而消除了需要自己编写复杂辅助功能函数的重复性工作。文中示例将展示它相比于以前针对每…

「ETL趋势」分区支持PostgreSQL、Greenplum、Gauss200, 定时任务支持Kettle

FineDataLink作为一款市场上的顶尖ETL工具,集实时数据同步、ELT/ETL数据处理、数据服务和系统管理于一体的数据集成工具,进行了新的维护迭代。本文把FDL4.1.9最新功能作了介绍,方便大家对比:(产品更新详情:…

学习记录之数学表达式(6)

目录 十二、图与网络12.1 有向图12.2 元组与对象12.3 二元关系与有向图12.4 无向图12.5 有向网络12.6 作业 十三、树13.1 例子13.2 定义13.3 Java代码13.4 作业 十四、 m \mathbf{m} m叉树14.1 预备知识:字符串14.2 m \mathbf{m} m-叉树的定义14.3 Java代码14.4 作…

mysql-sql-第十三周

学习目标: sql 学习内容: 37.查询各科成绩最高分、最低分和平均分: 以如下形式显示:课程 ID,课程 name,最高分,最低分,平均分,及格率,中等率,优良率,优秀率 及格为>60,中等为:70-80,优良为:80-90,优秀…

2024 年江西省研究生数学建模竞赛A题:交通信号灯管理问题分析、实现代码及参考论文

2024 年江西省研究生数学建模竞赛题目交通信号灯管理 1 题目 交通信号灯是指挥车辆通行的重要标志,由红灯、绿灯、 黄灯组成。红灯停、绿灯行,而黄灯则起到警示作用。交通 信号灯分为机动车信号灯、非机动车信号灯、人行横道信号 灯、方向指示灯等。 一…

OpenSSH漏洞扫描(CVE-2024-6387、CVE-2006-5051、CVE-2008-4109)

目录 POC:ssh_poc.py 使用方法 github CVE-2024-6387 漏洞信息 补丁 POC:ssh_poc.py import sys import socket import argparse import threading import queue import os from datetime import datetime from urllib.parse import urlparse from…

LinuxRT启动Veristand项目的配置文件

这里写自定义目录标题 欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants 创建一个自定义列表如何创建一个…

FreeRTOS的任务理论

文章目录 2 FreeRTOS的任务理论2.1 任务及任务优先级2.2 任务状态理论2.2.1 任务状态的转换2.2.2 任务状态改变相关函数2.2.3 调度器相关函数 2.3 FreeRTOS延时2.3.1 vTaskDelay延时2.3.2 vTaskDelayUntil延时2.3.3 pdMS_TO_TICKS(x)宏 2.4 TCB任务控制块…

kafka 实现精确一次性语义实践总结

文章目录 前言幂等生产者幂等生产者的工作原理幂等生产者的局限性如何使用幂等生产者 事务事务的应用场景事务可以解决哪些问题事务是如何保证精确一次性的使用事物 API事物的工作原理 事务的性能 前言 Kafka的精确一次性语义与国际象棋正好相反:要理解它不容易&am…

怎么分区,新买的电脑只有一个C盘

C盘在大多数默认情况下是一台电脑的系统盘,也是创建硬盘分区时,最先被创建的盘。不过在一些特殊情况下,电脑上只有一个C盘。 为什么会出现只有一个C盘这种情况?当我们发现电脑只有一个C盘时,能通过哪些方法去创建其他硬…

Redis 7.x 系列【8】数据类型之哈希(Hash)

有道无术,术尚可求,有术无道,止于术。 本系列Redis 版本 7.2.5 源码地址:https://gitee.com/pearl-organization/study-redis-demo 文章目录 1. 概述2. 常用命令2.1 HSET2.2 HGET2.3 HDEL2.4 HEXISTS2.5 HGETALL2.6 HKEYS2.7 HLE…