冈萨雷斯DIP第8章知识点

news2024/11/23 22:46:18

8.1 基础

图像中的冗余

  1. 编码冗余:用于表示灰度的8比特编码所包含的比特数,要比表示该灰度所需要的比特数多。可通过变长编码来解决。

  2. 空间和时间冗余:与相邻像素相似(图像);时间:相邻帧中的像素(视频)。可以使用行程长度或者相邻像素的差。

  3. 无关信息:被人类视觉系统忽略或与用途无关的信息,从未被利用的角度看,它是冗余的。消除冗余信息,量化。

度量图像信息

我们可以通过观察图像的直方图来估计该信源的符号概率。灰度信源的熵变为(可以达到的压缩的下界)

H ~ = − ∑ k = 0 L − 1 p r ( r k ) log ⁡ 2 p r ( r k ) \tilde{H}=-\sum_{k=0}^{L-1} p_{r}\left(r_{k}\right) \log _{2} p_{r}\left(r_{k}\right) H~=k=0L1pr(rk)log2pr(rk)

保真度准则

均方根误差(root-mean-square error) e r m s e_{rms} erms是整 M × N M×N M×N 阵列的平均均方误差的平方根,即:

e r m s = [ 1 M N ∑ x = 0 M − 1 ∑ y = 0 N − 1 [ f ^ ( x , y ) − f ( x , y ) ] 2 ] 1 / 2 e_{\mathrm{rms}}=\left[\frac{1}{M N} \sum_{x=0}^{M-1} \sum_{y=0}^{N-1}[\hat{f}(x, y)-f(x, y)]^{2}\right]^{1 / 2} erms=[MN1x=0M1y=0N1[f^(x,y)f(x,y)]2]1/2

均方信噪比(mean square Signal-to-Noise Ratio, SNR) S N R m s \mathrm{SNR}_{ms} SNRms

S N R m s = ∑ x = 0 M − 1 ∑ y = 0 N − 1 [ f ^ ( x , y ) ] 2 ∑ x = 0 M − 1 ∑ y = 0 N − 1 [ f ^ ( x , y ) − f ( x , y ) ] 2 \mathrm{SNR}_{\mathrm{ms}}=\frac{\sum_{x=0}^{M-1} \sum_{y=0}^{N-1}[\hat{f}(x, y)]^{2}}{\sum_{x=0}^{M-1} \sum_{y=0}^{N-1}[\hat{f}(x, y)-f(x, y)]^{2}} SNRms=x=0M1y=0N1[f^(x,y)f(x,y)]2x=0M1y=0N1[f^(x,y)]2

8比特灰度图像,峰值信噪比(Peak Signal-to-Noise Ratio, P S N R \mathrm{PSNR} PSNR)定义为:

P S N R = 10 log ⁡ 10 25 5 2 M S E ( d B ) \mathrm{PSNR}=10 \log _{10} \frac{255^{2}}{\mathrm{MSE}}(\mathrm{dB}) PSNR=10log10MSE2552(dB)

一般情况下,若输出图像的 PSNR>35dB,则肉眼无差别。

尽管客观保真度准则能够简单且方便地评价信息损失,但解压缩图像最终还得由人来观察;因此,根据人的主观评价来度量图像的质量通常更为合适。

通用图像压缩功能框图
在这里插入图片描述
图像格式、压缩标准

算术编码 AC 最早在二值图像压缩标准 JBIG1、JBIG2(Joint Bi-level Image Experts Group)中使用,他受到美国专利保护。后来在最新的JPEG-2000、H.264、 MPEG4、AVC中使用。

H.264是视频会议、流媒体的编码标准,和 MPEG4、AVC是完全相同的。

JPEG中使用了块变换编码、霍夫曼编码、行程编码、DCT变换。

JPEG-2000中使用了算术编码和DWT编码,极大的提高了压缩性能。

HEVC(High Efficiency Video Coding)是最新的编码方案,又称H.265,用于4K视频应用。

MPEG-1 类似于H.261,但是它第一次提出了B帧,可以根据前后帧进行编码。



8.9 块变换编码

在这里插入图片描述
编码器执行 4 种相对简单的操作:子图像分解、变换、量化和编码 。

8.9.1 变换的选择

DCT的信息打包能力要强于DFT和WHT(Walsh-Hadamard变换)。

在这里插入图片描述
在信息打包方面的最佳变换是Karhunen-Loéve变换(KLT)。由于KLT是数据相关的,所以计算每幅子图像的KLT基图像并不容易。由于这个原因,实际上很少使用KLT来压缩图像。

DCT变换的优点:能用单片集成电路实现 可将最多信息打包到最少的系数中 对大多数图像而言 并且在子图像间的边界变得明显时 使出现的 块状外观 块伪影 块效应 blocking artifacts) 最小。

8.9.2 子图像尺寸选择

在这里插入图片描述
16 × 16 16\times 16 16×16 是最佳的,但是因为历史原因,当时硬件显示,以前选择是 8 × 8 8\times 8 8×8

8.9.3 比特分配

截断、量化和编码变换后子图像的系数的整个过程 通常称为比特分配 。



8.12 数字图像水印

鲁棒水印用于版权保护;脆弱水印用于篡改检测;半脆弱水印用于区分普通的图像处理和恶意篡改。

不可见性是通过将水印作为视觉上的冗余信息插入到图像中来保证的 。

相关系数度量水印的相似性

γ = ∑ i = 1 K ( ω ^ i − ω ^ ‾ ) ( ω i − ω ˉ ) ∑ i = 1 K ( ω ^ i − ω ^ ‾ ) 2 ⋅ ∑ i = 1 K ( ω i − ω ˉ ) 2 \gamma=\frac{\sum_{i=1}^{K}\left(\hat{\omega}_{i}-\overline{\hat{\omega}}\right)\left(\omega_{i}-\bar{\omega}\right)}{\sqrt{\sum_{i=1}^{K}\left(\hat{\omega}_{i}-\overline{\hat{\omega}}\right)^{2} \cdot \sum_{i=1}^{K}\left(\omega_{i}-\bar{\omega}\right)^{2}}} γ=i=1K(ω^iω^)2i=1K(ωiωˉ)2 i=1K(ω^iω^)(ωiωˉ)

水印容量、鲁棒性、不可见性质的矛盾

水印容量:水印容量指的是在一个数字媒体中可以嵌入的水印数据的量。较高的水印容量意味着可以嵌入更多的信息,从而提供更多的特定功能或实现更高的安全性,提高了水印的鲁棒性。然而,增加水印容量可能会对不可见性产生负面影响。

不可见性:不可见性是指数字水印在媒体中的视觉或感知影响。理想情况下,水印应该是不可察觉的,即嵌入的水印对媒体的质量或外观没有明显的影响。然而,提高不可见性可能会限制水印容量或降低鲁棒性。

鲁棒性:鲁棒性是指数字水印系统对一系列攻击或失真的抵抗能力。鲁棒性较高的水印能够在各种操作和攻击下仍然可靠地提取出来,而不会受到失真或恶意攻击的影响。然而,增加鲁棒性可能会需要增加水印容量同时降低不可见性。

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

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

相关文章

缺陷管理利器推荐:介绍几款好用的缺陷管理工具

缺陷管理是项目管理工作中的重要环节。Excel表格是国内团队常用的缺陷管理工具,具备上手容易,免费的优点,不过也存在协同不便,不易管理,效率低的不足之处。 一套缺陷管理工具可以帮助我们进行规范化自动化的缺陷管理&a…

LearnOpenGL-高级OpenGL-8.高级GLSL

本人初学者,文中定有代码、术语等错误,欢迎指正 文章目录 高级GLSLGLSL的内建变量在顶点着色器的内建变量gl_PointSizegl_VertexID 在片段着色器的内建变量gl_FragCoordgl_FrontFacinggl_FragDepth 接口块Uniform缓冲对象Uniform块布局使用Uniform缓冲简…

关于惠普M277打印机手动双面打印和自动双面打印设置

一.手动双面打印设置​​​​​​​ 1.键盘WINR,在运行框输入“control”,回车或者点击确定。 ​​​​​​​ 2.在控制面板找到设备和打印机,点击进去。 3.找到HP M277字样的打印机,右键选择打印机属性。 4.点击设…

有关部门信息表与员工信息表的常用SQL应用语句实现汇总

背景条件 已知有员工信息表(emp)和部门信息表(dept),具体表的信息如下: 员工信息表emp: 列名类型其他备注empnoDECIMAL(4)主键员工编号enameVARCHAR2(10)员工姓名jobVARCHAR2(9)工种mgrDECIM…

实现第一个内核程序的Hello World

背景 在内核的开发中,总要先入个门。那么就要来编写第一个内核程序 入门 一个 module_init 程序是Linux内核模块的一部分,通过module_init 方法就能将程序载入内核。 module_init 方法需要以下步骤 编写module_init 的代码,并将其保存为…

异常值检验、方差分析

异常值检验 T-test 参考:1.ttest和ttest2 区别 2. ttest在 matlab 3.T test分布表 方差分析(ANOVA) Def: 方差分析(analysis of variance, ANOVA)是一种统计检验,用于检验两组或更多组样本的均值是否相…

Allegro如何关闭出线自动拐弯功能操作指导

Allegro如何关闭出线自动拐弯功能操作指导 在用Allegro进行PCB设计的时候,对单个pin进行出线的时候,会遇到走线一出pin就会自动拐弯,并不会按照鼠标轨迹来设计,如下图 期望的效果如下图 如何关闭走线自动拐弯功能,具体操作如下 点击Route

django-vue-admin使用

一、源码地址 注意,一定要使用这个地址。(使用其他地址下载下来的感觉代码缺失,踩了大坑) django-vue-admin: 基于RBAC模型的权限控制的一整套基础开发平台,前后端分离,后端采用 djangodjango-rest-frame…

QT实现 WebsocketServer端与WebsocketClient 端通信

概 述 WebSockets 是一种通过单个 TCP 连接提供全双工通信信道的 web 技术。2011年,IETF 将 WebSocket 协议标准化为 RFC 6455 。Qt 提供的 QWebSocket 既可以用于客户端应用程序,也可以用于服务端应用程序,接口大部分和 QTcpSocket 一致。 …

R语言机器学习方法在生态经济学领域中的应用

近年来,人工智能领域已经取得突破性进展,对经济社会各个领域都产生了重大影响,结合了统计学、数据科学和计算机科学的机器学习是人工智能的主流方向之一,目前也在飞快的融入计量经济学研究。表面上机器学习通常使用大数据&#xf…

MoviePy介绍

MoivePy是一个用于视频编辑的Python库,可以:剪切、拼接、标题插入、视频合成、视频处理和创建自定义效果。它支持Windows、Linux、Mac,源码地址:https://github.com/Zulko/moviepy,最新发布版本v1.0.3,lice…

Qt(C++)开发一款图片防盗用水印制作小工具

一、前言 文本水印是一种常用的防盗用手段,可以将文本信息嵌入到图片、视频等文件中,用于识别和证明文件的版权归属。在数字化和网络化的时代,大量的原创作品容易被不法分子盗用或侵犯版权,因此加入文本水印成为了保护原创作品和维护知识产权的必要手段。 通常情况下,文…

[小白教程] Javascript Callback以及Promise/async/await 一文通

一、最初 一切从 Javascript 是一门异步编程语言说起,比如这种最简单的: let n 0function f1() {setTimeout(function () {n}, 1000)}f1()console.log(n)可能直觉上会觉得最终n1,但实际上打印出来的是0,因为尽管调用了f1函数&am…

vue笔记——实现打印功能1

第一步:安装vue-print-nb,打开项目终端输入 npm install vue-print-nb --save 第二步:打开package.json文件,在dependencies中出现vue-print-nb,说明安装成功,如下图所示。 第三步: 方法一:全…

电子科技大学计算机系统结构复习笔记(二):指令系统

目录 前言 重点一览 指令集系统结构(ISA)的分类 分类依据 存储结构 区别 图示 通用寄存器系统结构分类 存储器寻址 概述 寻址方式 MIPS寻址模式 小结 操作数类型 指令操作 与指令编码 常用操作数类型 常用指令系统的操作 常用指令系统编…

【Pytorch基础教程40】DLRM推荐算法模型部署

note 文章目录 note一、DLRM模型1. 特征工程和embedding层2. butterfly shuffle3. 模型结构 二、模型部署Reference 一、DLRM模型 DLRM是2020年meta提出的工业界推荐算法模型,模型结构非常简单,也没用到什么attention机制等的东西,更多是注重…

权限维持-关于影子用户

前言 影子用户相信大家都是比较熟悉,是一种权限维持的好方法。 注:单机和域环境都可以使用,但是域中可能没有那么好用。 复现 一.本地 1. 正常的影子用户 我们在cmd命令中在生成用户时,在用户名后面加上$就可以 net user test$ …

【cfeng work】什么是SaaS? SaaS详细介绍

WorkProj 内容管理 SaaSSaaS的优势SaaS的注意项SaaS产品核心组件cfeng结合work理解SaaS 本文introduce SaaS的相关内容 昨天cfeng已经介绍过云原生了,其实就是应用在设计上就要围绕Cloud,代表技术就是容器化和微服务、DevOps和区别于传统瀑布模型的持续更…

【Linux】——多线程

目录 Linux线程概念 二级页表 线程的优点 线程的缺点 线程异常 线程的用途 Linux中的线程和进程 进程和线程 进程的多个线程共享 进程和线程的关系 Linux线程控制 POSIX线程库 线程创建 线程ID及地址空间布局 线程等待 线程终止 Linux线程概念 什…

华为OD机试真题 Java 实现【找终点】【2023 B卷 100分】,附详细解题思路

一、题目描述 给定一个正整数数组&#xff0c;设为nums&#xff0c;最大为100个成员&#xff0c;求从第一个成员开始&#xff0c;正好走到数组最后一个成员&#xff0c;所使用的最少步骤数。 要求&#xff1a; 第一步必须从第一元素开始&#xff0c;且1 < 第一步的步长 &…