冈萨雷斯DIP第7章知识点

news2024/11/29 22:52:06

文章目录

    • 7.3 相关
    • 7.5 基图像
    • 7.6 傅里叶相关变换
      • 7.6.1 离散哈特利变换
      • 7.6.3 离散正弦变换

DIP的其他章节都好复习,唯独就这个第7章小波变换。复习起来十分头大,所以我开始写他的课后题,雾。

7.3 相关

已知两个连续函数 f ( x ) f(x) f(x) g ( x ) g(x) g(x) f f f g g g 的相关(当 f ( x ) ≠ g ( x ) f(x)≠g(x) f(x)=g(x) 时,称为互相关;当 f ( x ) = g ( x ) f(x)=g(x) f(x)=g(x) 时,称为自相关)定义为

f ⋆ g ( Δ x ) = ∫ − ∞ ∞ f ∗ ( x ) g ( x + Δ x ) d x = ⟨ f ( x ) , g ( x + Δ x ) ⟩ f \star g(\Delta x)=\int_{-\infty}^{\infty} f^{*}(x) g(x+\Delta x) \mathrm{d} x=\langle f(x), g(x+\Delta x)\rangle fg(Δx)=f(x)g(x+Δx)dx=f(x),g(x+Δx)⟩

相关有时称为 f f f g g g滑动内积,度量的是 f ( x ) f(x) f(x) g ( x ) g(x) g(x) 的相似性,是它们相对位移 Δ x Δx Δx 的函数。若 Δ x = 0 Δx=0 Δx=0,则有

f ⋆ g ( 0 ) = ⟨ f ( x ) , g ( x ) ⟩ f \star g(0)=\langle f(x), g(x)\rangle fg(0)=f(x),g(x)⟩

基函数 h h h 的能量,在时间-频率平面上集中于点 ( μ t , μ f ) (μ_t, μ_f) (μt,μf) 处。大部分能量,落在面积为 4 σ t σ f 4σ_tσ_f 4σtσf 的一个矩形区域(称为海森堡盒或单元),

σ t 2 σ f 2 ≥ 1 16 π 2 \sigma_{t}^{2} \sigma_{f}^{2} \geq \frac{1}{16 \pi^{2}} σt2σf216π21

因为函数的支撑集定义为函数非零的点的集合,由海森堡测不准原理知,函数在时间和频率上都存在有限支撑集是不可能的。

7.5 基图像

注意:最大频率的DFT、DHT 基图像,出现在 u = 4 u=4 u=4 v = 4 v=4 v=4 时。离散余弦变换、离散正弦变换出现在 u = 7 , v = 7 u=7,v=7 u=7,v=7 时。

7.6 傅里叶相关变换

7.6.1 离散哈特利变换

s ( x , u ) = 1 N cas ⁡ 2 π u x N = 1 N ( cos ⁡ 2 π u x N + sin ⁡ 2 π u x N ) s(x, u)=\frac{1}{\sqrt{N}} \operatorname{cas} \frac{2 \pi u x}{N}=\frac{1}{\sqrt{N}}\left(\cos \frac{2 \pi u x}{N}+\sin \frac{2 \pi u x}{N}\right) s(x,u)=N 1casN2πux=N 1(cosN2πux+sinN2πux)

7.6.3 离散正弦变换

类似于DCT,DST具有与DFT大致相同的频率范围,但频率分辨率是后者的2倍。注意:与DCT和DFT的不同之处,DST没有直流(u=0)分量。

s ( x , u ) = 2 N + 1 sin ⁡ ( x + 1 ) ( u + 1 ) π N + 1 s(x, u)=\sqrt{\frac{2}{N+1}} \sin \frac{(x+1)(u+1) \pi}{N+1} s(x,u)=N+12 sinN+1(x+1)(u+1)π

close all; clear all; clc;
A = dctmtx(8);
B = A';
C = zeros(8, 8, 64);
m = 0;
for i = 1:8
    for j = 1:8
        m = m+1;
        C(:, :, m) = B(:, i)*A(j, :);
    end
end
minvalue = min(min(min(C)));
maxvalue = max(max(max(C)));
figure,
%显示灰度图像的范围,指定为 [low high] 形式的二元素向量。
% imshow 函数将值 low(以及任何小于 low 的值)显示为黑色,并将值 high(以及任何大于 high 的值)显示为白色。
for k = 1:64
    subplot(8, 8, k), imshow(C(:, :, k), [minvalue, maxvalue]);
end

在这里插入图片描述
对于长度为 N = 2 J N=2^J N=2J 的输入序列, FWT: O ( N ) O(N) O(N); FFT: O ( N log ⁡ 2 N ) O(N\log_2N) O(Nlog2N)

为更好地控制时间-频率平面的划分(即得到更小的高频带宽), 必须将 FWT 推广到称为 小波包 的更灵活的分解。这一推广的代价是,计算复杂度:从FWT的 O ( N ) O(N) O(N) 增加到小波包的 O ( N log ⁡ 2 N ) O(N\log_2N) O(Nlog2N),与FFT相同。

7.35 推导公式(7.140)

d j ( k ) = ∑ n h ψ ( n − 2 k ) c j + 1 ( n ) (7.140) d_{j}(k)=\sum_{n} h_{\psi}(n-2 k) c_{j+1}(n)\tag{7.140} dj(k)=nhψ(n2k)cj+1(n)(7.140)

这个公式是快速小波变换中的,大概的含义就是小波空间 W j W_j Wj 中的函数可以由尺度空间 V j + 1 V_{j+1} Vj+1 中的函数来表示。这个是方便理解的,我们可以看书上的这张图。

在这里插入图片描述
根据式(7.135)
d j = ⟨ f ( x ) , ψ j , k ( x ) ⟩ (7.135) d_{j}=\left\langle f(x), \psi_{j, k}(x)\right\rangle\tag{7.135} dj=f(x),ψj,k(x)(7.135)

我们可以得到:

d j ( k ) = ∫ f ( x ) 2 j / 2 ψ ( 2 j x − k ) d x d_{j}(k)=\int f(x) 2^{j / 2} \psi\left(2^{j} x-k\right) d x dj(k)=f(x)2j/2ψ(2jxk)dx

但是这里我们要推导的是细节系数和尺度系数之间的关系,所以需要将 ψ ( 2 j x − k ) \psi\left(2^{j} x-k\right) ψ(2jxk) 替换掉。我们观察到(7.130)就是小波函数关于尺度函数加权和的形式,

ψ ( x ) = ∑ k ∈ Z h ψ ( k ) 2 φ ( 2 x − k ) (7.130) \psi(x)=\sum_{k\in\mathbf{Z}} h_{\psi}(k) \sqrt{2} \varphi(2 x-k)\tag{7.130} ψ(x)=kZhψ(k)2 φ(2xk)(7.130)

ψ ( 2 j x − k ) = ∑ m h ψ ( m − 2 k ) 2 φ ( 2 j + 1 x − m ) \psi\left(2^{j} x-k\right)=\sum_{m} h_{\psi}(m-2 k) \sqrt{2} \varphi\left(2^{j+1} x-m\right) ψ(2jxk)=mhψ(m2k)2 φ(2j+1xm)

其中, m ∈ Z m\in Z mZ,于是我们可以得到

d j ( k ) = ∫ f ( x ) 2 j / 2 [ ∑ m h ψ ( m − 2 k ) 2 φ ( 2 j + 1 x − m ) ] d x d_{j}(k)=\int f(x) 2^{j / 2}\left[\sum_{m} h_{\psi}(m-2 k) \sqrt{2} \varphi\left(2^{j+1} x-m\right)\right] d x dj(k)=f(x)2j/2[mhψ(m2k)2 φ(2j+1xm)]dx

交换积分和求和的次序,可以得到

d j ( k ) = ∑ m h ψ ( m − 2 k ) ∫ f ( x ) 2 ( j + 1 ) / 2 φ ( 2 j + 1 x − m ) d x = ∑ m h ψ ( m − 2 k ) c j + 1 ( m ) \begin{aligned} d_{j}(k)&=\sum_{m} h_{\psi}(m-2 k) \int f(x) 2^{(j+1) / 2} \varphi\left(2^{j+1} x-m\right) d x\\ &=\sum_{m} h_{\psi}(m-2 k) c_{j+1}(m) \end{aligned} dj(k)=mhψ(m2k)f(x)2(j+1)/2φ(2j+1xm)dx=mhψ(m2k)cj+1(m)

clc; clear all; close all; 
f=imread('4.一幅512×512的图像.tif'); 
f=im2double(f); 
[cA,cH,cV,cD]=dwt2(f, 'haar'); 
cA=mat2gray(cA); 
cH=mat2gray(cH); 
cV=mat2gray(cV); 
cD=mat2gray(cD); 
w=[cA,cH;cV,cD];
figure; imshow(w); 

在这里插入图片描述

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

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

相关文章

单链表【数据结构、数组模拟】

不采用动态链表 一般情况下,都是直接使用下面的代码进行模拟的 struct Node{int val;Node *next; }然后当我们需要进行创建一个新的节点时,都需要使用new Node(),非常慢!!! 数据规模一般都是10w~100w的数…

Android性能分析工具:Perfetto介绍及用法

本文字数:8409字 预计阅读时间:22分钟 概念 什么是Perfetto?Perfetto是Android 10中引入的全新平台级跟踪工具。这是适用于Android、Linux和Chrome的更加通用和复杂的开源跟踪项目。与Systrace不同,它提供数据源超集,可让您以pro…

【6.09 代随_52day】 最长递增子序列、最长连续递增序列、最长重复子数组

最长递增子序列、最长连续递增序列、最长重复子数组 最长递增子序列1.方法图解步骤递归代码 最长连续递增序列1.动态规划的方法图解步骤代码 最长重复子数组图解步骤代码 最长递增子序列 力扣连接:300. 最长递增子序列(中等) 1.方法 dp[i]…

开源 Golang 微服务入门三:ORM 框架 GORM

前言 前两篇笔记分别介绍了 Golang 微服务 HTTP 框架 Hertz 和 Golang 微服务 RPC 框架 Kitex,本文将要介绍面向ORM(持久层)框架 GORM。 官方文档 GORM 是面向 Golang 语言的一种 ORM(持久层)框架,支持多种数据库的接入,例如 MySQL&#x…

【TCP/IP】多进程服务器的实现(进阶) - 僵尸进程及wait、waitpid函数

目录 僵尸(Zombie)进程 僵尸进程的产生机制 僵尸进程的危害 僵尸进程的销毁 wait函数 waitpid函数 进程管理在网络编程中十分重要,如果未处理好,将会导致出现“僵尸进程”,进而影响服务器端对进程的管控。 僵尸(Zombie)进程 第一次听到…

继万物分割SAM之后,万物识别模型RAM来了!

Recognize Anything: A Strong Image Tagging Model 提出“识别万物模型”(Recognize Anything Model,RAM),用于图像打标签。RAM 可以高精度地识别任何常见类别。RAM 引入了图像打标签的一个新范式,利用大规模的图像-文…

如何在RPC和RESTful之间做选择?

不同软件系统之间的通信可以通过RPC(远程过程调用)或RESTful(表现层状态转移)协议来建立,这些协议允许多个系统在分布式计算中协同工作。 这两种协议在设计哲学上有所区别。RPC使得可以像调用本地过程一样调用服务器上…

AI时代已经到来,不想被抛弃,特别是传统产业的你,怎么办?

由于ChatGTP的惊人表现,本来已经趋于平淡的AI,又火爆起来。毫无疑问,人类已经进入了AI时代,AI将渗入到各行各业,渗入到生活与工作的每个方面。这是一场新的工业革命,很多工作都将消失,但也会产生…

【Python】Python进阶系列教程-- Python3 MySQL - mysql-connector 驱动(三)

文章目录 前言创建数据库连接创建数据库创建数据表主键设置 插入数据批量插入查询数据where 条件语句排序Limit删除记录更新表数据删除表 前言 往期回顾: Python进阶系列教程-- Python3 正则表达式(一)Python进阶系列教程-- Python3 CGI编程…

记录--7 个沙雕又带有陷阱的 JS 面试题

这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助 为了保证的可读性,本文采用意译而非直译。 在 JS 面试中,经常会看到一些简单而又沙雕的题目,这些题目包含一些陷阱,但这些在我们规范的编码下或者业务中…

基于BP神经网络的轨迹跟踪研究(Matlab代码实现)

💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…

NLP(1):Introduction

文章目录 Why process textChallengesText processingword, sentence, document, corpus, tokenProcessing stepsSentence segmentationWord TokenizationMaxMatch AlgorithmSubword Tokenization (BPE)BPE 算法 Word NormalizationStop Words Remove Wh…

数据分析第17课seaborn绘图

关系型绘图 seaborn.relplot() 这个函数功能非常强大,可以用来表示多个变量之间的关联关系。默认情况下是绘制散点图(散点图是看到变量与变量之间相关性最优的一个图形),也可以绘制线性图,具体绘制什么图形是通过kind参数来决定的。实际上以下两个函数就是relplot的特例…

Vue2 事件的默认和传播行为、事件修饰符

前言 在学习vue2时,学到了 事件修饰符,但是对事件的默认行为和传播行为不太理解,所以也就是不知道为啥要使用事件修饰符,所以找了一些资料,在此记录一下。 Vue2官方文档 事件处理 — Vue.js (vuejs.org)https://v2.…

【 Python 全栈开发 - WEB开发篇 - 29 】MySQL初步

文章目录 一、MySQL介绍二、SQL语言三、MySQL安装与配置第一步:下载压缩文件第二步:解压第三步:配置第四步:登录 一、MySQL介绍 MySQL 是一个开源的关系型数据库管理系统,它使用 Structured Query Language&#xff0…

JDBC的增删改查

文章目录 前言创建数据库基础版JDBC实例添加JDBC实例删除JDBC实例修改JDBC实例查询 高级版JDBC实例添加JDBC实例删除JDBC实例修改JDBC实例查询 前言 JDBC编程步骤: 加载数据库驱动程序创建数据库连接对象创建Statement语句对象(createStatement、prepa…

谈谈聚簇索引与非聚簇索引

技术主题 聚簇索引是一种数据的存储方式,它的数据行只存放在索引(B+树)的叶子上,内部节点不存放数据。 聚簇索引 聚簇索引默认是主键,如果没有定义主键,innodb会选择一个唯一的非空索引代替。如果没有这种索引,innodb会隐式定义一个主键作为聚簇索引。 非聚簇索引 非…

百度出品,Nature重磅 -- 优化的mRNA设计算法可改善mRNA的稳定性和免疫原性

摘要 尽管mRNA疫苗已用于COVID-19的预防,但仍然面临不稳定和易降解的风险,这是mRNA疫苗存储、配送、效价等面临的重要障碍。先前的研究已表明,增加二级结构可延长mRNA的半衰期,再加上选择优化的密码子,可改善蛋白表达。…

Django实现接口自动化平台(五)httprunner(2.x)基本使用【持续更新中】

上一章: Django实现接口自动化平台(四)解决跨域问题【持续更新中】_做测试的喵酱的博客-CSDN博客 下一章: 一、参考地址: 使用说明_httprunner2.0 概述及使用说明 二、介绍 HttpRunner是一款面向 HTTP(S) 协议的通…

一文带你了解MySQL之锁

目录 一、解决并发事务带来问题的两种基本方式1.1 一致性读(Consistent Reads)1.2 锁定读(Locking Reads)1.2.1 共享锁和独占锁1.2.2 锁定读的语句 1.3 写操作 二、多粒度锁三、MySQL中的行锁和表锁3.1 其他存储引擎中的锁3.2 Inn…