图像压缩(2)《数字图像处理》第八章 8.1节 基础知识

news2024/9/30 13:30:20

图像压缩(1)《数字图像处理》第八章8.1节基础知识

  • 一. 前言
  • 二.引言
  • 三.基础知识
  • 8.1.1 编码冗余
  • 8.1.2 空间冗余和时间冗余
  • 8.1.3 不相关的信息
  • 8.1.4图像信息的度量
  • 8.1.5保真度准则
  • 8.1.6 图像压缩模型
  • 8.1.7 图像格式、容器和压缩标准
  • 四. 小结

一. 前言

始于那本深蓝色的大块头,冈萨勒斯的《数字图像处理》,从此走上了图像信号处理的不归路,大神的书块头很大,应该是在2013还是2014年的样子,学校发的教材是纯外文的,当时网络还没这么发达,自己是查到在长沙有店里有这本书的汉译版,所以就赶紧联系了自己在中南的高中同学,帮忙拿下,随后直接快递到学校,第一眼看到这部大块头,心下只是徒生悲凉,因为喜欢保存教材,这本书便开始了和我走南闯北的日子,从北到南。

这次重新温故知新,是因为工作中需要涉及到图像压缩相关的知识,偶尔从书橱里翻出这本译本,正好第八章有图像压缩的内容,索性就直接拿过来啃一啃,算是好好复习一下。记得研究生时,正好有一门课是数字图像处理,彼时代课老师因为出国精进,所以委托自己已经毕业的同门大师兄前来代课,记得第一节课,师兄就说当时他研究生入学的时候,立志要把这本书啃下来,因为这本图像的开山之作,博大而精深,能把这本书全部拿下,在图像处理这个领域也基本上可以算是入了门了。想来又是寒来暑往几度春秋,师兄还在学校传道受业,自己也已经在职场摸爬滚打了五年了,今年有机会回一趟师门,一定和师兄好好叙叙旧。闲言少叙,本文的各章节中尽量从原文开始表述,同时也会加入自己多年来图像处理相关的理解与实用技巧,欢迎同学们一起学习交流。
在这里插入图片描述

二.引言

在这里插入图片描述
在这里插入图片描述

由此可知,图像压缩其实就是数据压缩的一种,由于互联网数字化的迅猛发展,大数据,云计算等等新技术层出不穷,如今我们每天产生的数据无计其数,其中有许多数据是没有价值的,只要保留其有价值的部分,将那些当前有价值或者未来可能有价值的数据进行备份存储,数据压缩也就由此产生了巨大的需求,因为数据的传输和存储都是需要媒介和信道的,而这些传输与存储的成本也就决定了,必定要舍弃一些无价值无意义的数据。

三.基础知识

在这里插入图片描述

本书的汉译版有些地方翻译得比较生硬,比如这一小节,涉及到《信息论》的相关基础知识,而信息论又涉及到一些数学的概率论相关的内容,这里如果大家有时间,可以扩展一下,去了解学习一下香农定律相关的知识,香农定理之于通信,等价于牛顿万有引力之于物理学,一点也不为过。

香农在二十世纪四十年代初奠定了通信的数字理论基础。同时香农三大定律是信息论的基础,虽然没有提出具体的编码实现方法,但是为通信信息的研究指明了方向。他的“信道容量定理”指出,可以找到这样一种技术,当数据传输速率不大于某个最大传输的速率时,通过它可以以任意小的错误概率传输信号。同时香农也给出了有噪声信道的最大传输速率与宽带的关系。

香农三大定理是信息论的基础理论,是存在性定理,虽然并没有提供具体的编码实现方法,但为通信信息的研究指明了方向。可变长无失真信源编码定理,采用无失真最佳信源编码可使得用于每个信源符号的编码位数尽可能地小,但它的极限是原始信源的熵值,但是超过了这一极限就不可能实现无失真的译码。有噪信道编码定理,是当信道的信息传输率不超过信道容量时,采用合适的信道编码方法,可以实现任意高的传输可靠性,但是若信息传输率超过了信道容量,就不可能实现可靠的传输。而保真度准则下的信源编码定理,或称有损信源编码定理,只要码长足够长,总可以找到一种信源编码,使编码后的信息传输率略大于率失真函数,而码的平均失真度不大于给定的允许失真度。

香农三大定律结合起来就构成了现代信息论的基础理论,三大理论之间相辅相成,相互联系,为现代通信数字理论的发展做出了巨大的贡献。

8.1.1 编码冗余

在这里插入图片描述
在这里插入图片描述
编码冗余在实际压缩编码时不可避免的存在,其中最主要的关键因素:数据本身和压缩比;因为数据的不可知性,对简单图像数据进行压缩时,可能可以采用非常简单的压缩编码方式,但在图像数据的某些纹理分布中,必须进行较为复杂的编码,才能尽可能的保证数据的误差最小,所以由此带来压缩编码的关键问题:有损编码与无损编码。根据不同的应用,需要设计不同的编码方式,不同的编码方式,也就势必带来不同的编码冗余。

8.1.2 空间冗余和时间冗余

在这里插入图片描述
这里稍微解释一下,时空间冗余主要是与数据相关的,单张图片主要就是空间的冗余,因为它存在各种各样不同的纹理分布,视频序列就可能会产生时间上的冗余,因为它与时间相关,不同的时刻不同帧的数据可能不同,可能变化较小,也可能变化较大。

8.1.3 不相关的信息

在这里插入图片描述
在这里插入图片描述

8.1.4图像信息的度量


在这里插入图片描述
在这里插入图片描述

8.1.5保真度准则

在这里插入图片描述
在这里插入图片描述

8.1.6 图像压缩模型

在这里插入图片描述
在这里插入图片描述

8.1.7 图像格式、容器和压缩标准

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

四. 小结

图像数据压缩的基础知识,也就是书中的第一节在这里简单作个笔记介绍,后续有机会再补充一些内容,后期可能会用到,这里做个笔记。每天学一个图像压缩小知识,大家一起来学习进步吧!

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Linux阻塞IO(高级字符设备二)

阻塞IO属于同步 IO,阻塞IO在Linux内核中是非常常用的 IO 模型,所依赖的机制是等待队列。 一、等待队列介绍 在 Linux 驱动程序中,阻塞进程可以使用等待队列来实现。等待队列是内核实现阻塞和唤醒的内核机制,以双循环链表为基础结…

【嵌入式开源库】timeslice的使用,完全解耦的时间片轮询框架构

完全解耦的时间片轮询框架构 简介项目代码timeslice.htimeslice.clist.hlist.c 创建工程移植代码实验函数说明timeslice_task_inittimeslice_task_addtimeslice_tak_deltimeslice_get_task_num 结尾 简介 timeslice是一个时间片轮询框架,他是一个完全解耦的时间片轮…

力扣刷题 day54:10-24

1.十进制整数的反码 每个非负整数 N 都有其二进制表示。例如, 5 可以被表示为二进制 "101",11 可以用二进制 "1011" 表示,依此类推。注意,除 N 0 外,任何二进制表示中都不含前导零。 二进制的反…

【Java 进阶篇】使用 Java 和 Jsoup 进行 XML 处理

XML(可扩展标记语言)是一种常用的数据交换格式,它被广泛用于在不同系统之间传递和存储数据。Java作为一种强大的编程语言,提供了多种方式来处理XML数据。其中,Jsoup 是一个流行的Java库,用于解析和操作XML文…

【数据结构练习题】消失的数字 --- 三种解法超详解

✨博客主页:小钱编程成长记 🎈博客专栏:数据结构练习题 🎈相关博文:添加逗号 消失的数字 1. 🎈题目2. 🎈解题思路✨方法一:先排序,再找缺失的值✨方法二:按位…

怎么禁止员工上班追剧

怎么禁止员工上班追剧 安企神终端安全管理软件下载使用 说到员工上班追究打游戏摸鱼,其实是一种不负责任的行为,这样的行为不仅会影响到工作效率,还会给周围的同事带来不好的工作氛围,会造成恶性循环,所以&#xff0…

windows下安装配置CGAL

一、下载安装Boost、CGAL 下载地址:https://sourceforge.net/projects/boost/files/boost-binaries/ Boost是CGAL的强制依赖项。SourceForge上提供了Boost的二进制版本(此版本无须编译,可直接使用)。Boost安装程序会同时安装Boos…

30天精通Nodejs--第二天:模块系统与npm

深入了解Node.js:模块系统与npm Node.js作为一款强大的服务器端JavaScript运行环境,模块系统和npm(Node Package Manager)是其成功的重要组成部分。为我们平时提供了便捷的工具和资源,使得在Node.js平台上构建应用变得…

五、Qt中的常用类

1. QString 字符串类 QString是Qt中的字符串类,与C/C不同的是,不再使用ASCII编码,而使用Unicode编码。因此一个字符不是8位的char,而是16位的QChar,这就是为什么之前一个汉字占用一个字符的原因。、 QString几乎向前兼…

使用jdbc技术连接数据库

连接数据库 <dependencies><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>8.0.28</version><scope>compile</scope></dependency> </dependencies> g…

腾讯云阿里云服务器mongdb数据库设置密码

避坑点 数据库绑定ip一定要设置0.0.0.0 设置超级管理员账号密码 1、可以使用navicat15连接mongodb数据库&#xff0c;进入命令行界面&#xff0c;输入以下命令 如出现找不到MongoDB shell为可执行文件&#xff0c;选择设置路径&#xff0c;路径为&#xff1a;MongoDB shell是…

【底层服务/编程功底系列】「网络通信体系」深入探索和分析TCP协议的运输连接管理的核心原理和技术要点

【底层服务/编程功底系列】「网络通信体系」深入探索和分析TCP协议的运输连接管理的核心原理和技术要点 TCP的运输连接管理TCP三次握手三次握手流程分析注意要点 TCP四次挥手TCP之保活计时器&#xff08;keepalive timer&#xff09;保活计时器&#xff08;keepalive timer&…

入门人工智能 —— 学习数据持久化、使用 Python 将数据保存到mysql(7)

入门人工智能 —— 学习数据持久化、使用 Python 将数据保存到mysql 什么是数据持久化&#xff1f;使用 Python 进行数据持久化步骤 1: 安装 MySQL步骤 2: 安装必要的 Python 库步骤 3: 连接到 MySQL 数据库步骤 4: 创建数据表步骤 5: 插入数据步骤 6: 查询数据步骤 7: 关闭连接…

管理类联考——英语二——翻译篇——定语从句的翻译方法

第三节 定语从句的翻译方法 定语从句的翻译主要分为限制性定语从句和非限制性定语从句的翻译。主要可以分为三种方法&#xff1a;合译法、分译法和转译法。 一、限制性定语从句的翻译方法 限制性定语从句所修饰的先行词自身意义不明确&#xff0c;被定语从句修饰限定后其意…

很多技术人就是会存在自己技术能力不错但是是茶壶里煮饺子倒不出来,如何解决?可以用笔和纸去画一画?

所描述的情况通常指的是一些技术人员虽然拥有丰富的技术知识和实践经验&#xff0c;但在表达和沟通方面存在困难&#xff0c;无法有效地将自己的思考和解决方案传达给他人。这种情况在技术领域相对常见&#xff0c;因为技术人员往往更注重技术深度而非沟通技巧。为了解决这个问…

Azure - 机器学习企业级服务概述与介绍

目录 一、什么是 Azure 机器学习&#xff1f;大规模生成业务关键型机器学习模型 二、Azure 机器学习适合哪些人群&#xff1f;三、Azure 机器学习的价值点加快价值实现速度协作并简化 MLOps信心十足地开发负责任地设计 四、端到端机器学习生命周期的支持准备数据生成和训练模型…

基于LiteOS的智慧农业案例实验分享

最近在指导一位读者朋友做毕业设计&#xff0c;该毕设是关于端云互通的&#xff0c;基于小熊派LiteOS华为云。 在指导他的过程中我也学到了不少东西&#xff0c;这里通过一个案例实验&#xff08;智慧农业&#xff09;给大家分享一些知识。 实验框图 相关模块简介 1、STM32L4…

管理类联考——英语二——翻译篇——名词性从句的译法

第四节 名词性从句的译法 英语的名词性从句有四种&#xff0c;分别是主语从句&#xff0c;宾语从句&#xff0c;表语从句和同位语从句。整体而言&#xff0c;名词性从句的理解和中文语序的理解大致相同&#xff0c;因此在英译汉时&#xff0c;它无须作太大的调整&#xff08;…

Centos安装gitlabce

服务器配置要求&#xff08;2c4g&#xff09; 1、 安装其他组件 yum install -y curl policycoreutils-python openssh perl2、 安装Postfix服务以发送电子邮件通知&#xff0c;启动服务并自启 yum -y install postfix systemctl enable postfix --now3、 安装gitlab&#xf…

Linux C语言开发-D5常量

指数形式的实数一般由尾数部分、字母e或E和指数部分组成。格式如下&#xff1a; 字符常量 常见的字符常量的ASCII码的值为&#xff1a; A&#xff1a;65&#xff1b;Z&#xff1a;90&#xff1b; &#xff1a;32&#xff1b;0&#xff1a;48&#xff1b; a&#xff1a;97&…