离散余弦变换

Matlab之图像变换技术(十二)

允我心安 提交于 2020-03-16 18:15:58
图像变换是将图像从空间域变换到变换域。图像变换的目的是根据图像在变换域的某些性质对其进行处理。通常,这些性质在空间城内很难获取。在变换城内处理结束后,将处理结果进行反变换到空间城。 这里将详细介紹图像变换技术,主要包括Radon变换和反变换,傅立叶变换和反变换,离散余弦变换和反变换等。 目录 图像RADON变换 RADON正变换 Radon反变换 图像傅里叶变换 图像离散余弦变换 图像Hadamard变换 图像Hough变换 人类视觉所看到的图像是在空域上的,其信息具有很强的相关性,所以经常将图像信号通过某种数学方法变换到其它正交矢量空间上。一般称原始图像为空间域图像,称变换后的图像为变换域图像,变换域图像可反变换为空间域图像。 图像RADON变换 在进行二维或三维投影数据重建时,图像重建方法虽然很多,但是通常采用Radon变换和Radon反变换作为基础。 RADON正变换 在MATLAB软件中,采用函数radon( )进行图像的Radon变换,该函数的调用格式为: R = radon ( I , theta ) % 该函数对图像I进行Radon变换,theta为角度,函数的返回值R为图像I在theta方向上的变换值。 [ R , xp ] = radon ( . . . ) % 该函数的返回值xp为对应的坐标值。 举个例子 clear all ; close all ; I =

图像的DCT算法

匿名 (未验证) 提交于 2019-12-03 00:37:01
一,背景介绍 DCT,即离散余弦变换,常用图像压缩算法,步骤如下 1)分割,首先将图像分割成8x8或16x16的小块; 2)DCT变换,对每个小块进行DCT变换; 3)舍弃高频系数(AC系数),保留低频信息(DC系数)。高频系数一般保存的是图像的边界、纹理信息,低频信息主要是保存的图像中平坦区域信息。 二,图像 二维DCT变换就是将二维图像从空间域转换到频率域。形象的说,就是计算出图像由哪些二维余弦波构成 F = A f A T F = A f A T A ( i , j ) = c ( i ) c o s [ ( j + 0.5 ) π N i ] A ( i , j ) = c ( i ) c o s [ ( j + 0.5 ) π N i ] 其中F就是变换得到的系数,f是图像的像素值,A是转换矩阵,其中i为二维波的水平方向频率,j为二维波的垂直方向频率,取值范围都是0-(N-1),N是图像块的大小, c ( i ) = 1 N √ , 2 N √ , i = 0 i ≠ 0 c ( i ) = { 1 N , i = 0 2 N , i ≠ 0 三,Matlab实现图像块DCT变换 clc;clear; f = ( rand ( 4 , 4 )* 100 ); % 生成4x4块 for i = 0 : 3 for j = 0 : 3 if i == 0 c = sqrt (

语音信号的梅尔频率倒谱系数(MFCC)的原理讲解及python实现

倾然丶 夕夏残阳落幕 提交于 2019-11-30 05:23:31
梅尔倒谱系数(MFCC)   梅尔倒谱系数(Mel-scale FrequencyCepstral Coefficients,简称MFCC)。依据人的听觉实验结果来分析语音的频谱, MFCC分析依据的听觉机理有两个 第一Mel scale:人耳感知的声音频率和声音的实际频率并不是线性的,有下面公式 $$f_{mel}=2595*\log _{10}(1+\frac{f}{700})$$ $$f = 700 (10^{f_{mel}/2595} - 1)$$ 式中$f_{mel}$是以梅尔(Mel)为单位的感知频域(简称梅尔频域),$f$是以$Hz$为单位的实际语音频率。$f_{mel}$与$f$的关系曲线如下图所示,若能将语音信号的频域变换为感知频域中,能更好的模拟听觉过程的处理。 第二临界带(Critical Band):把进入人耳的声音频率用临界带进行划分,将语音在频域上就被划分成一系列的频率群,组成了滤波器组,即Mel滤波器组。   研究表明 ,人耳对不同频率的声波有不同的听觉敏感度。从200Hz到5000Hz的语音信号对语音的清晰度影响较大。两个响度不等的声音作用于人耳时,则响度较高的频率成分的存在会影响到对响度较低的频率成分的感受,使其变得不易察觉,这种现象称为 掩蔽效应 。   由于频率较低的声音( 低音 )在内耳蜗基底膜上行波 传递距离 大于 频率较高的声音( 高音

MATLAB之图像与音频信号处理

帅比萌擦擦* 提交于 2019-11-29 14:27:41
原理简介 离散傅立叶、离散余弦和离散小波变换是图像、音频信号常用基础操作,时域信号转换到不同变换域以后,会导致不同程度的能量集中,信息隐藏利用这个原理在变换域选择适当位置系数进行修改,嵌入信息,并确保图像、音频信号经处理后感官质量无明显变化。 变换定义 一维离散傅立叶变换对定义: 一维离散余弦变换对定义: 一维连续小波变换对定义: 二维离散傅立叶变换对定义: 二维离散余弦变换对定义: 用离散傅立叶变换分析合成音频和图像 分析合成音频文件包括以下步骤: l 读取音频文件数据 l 一维离散傅立叶变换 l 一维离散傅立叶逆变换 l 观察结果 第一步:读取音频文件数据 新建一个 m 文件,另存为 example11.m,输入以下命令: clc; clear; len = 40000; [fn, pn] = uigetfile('*.wav', '请选择音频文件'); [x, fs] = wavread(strcat(pn, fn), len); uigetfile 是文件对话框函数,提供图形界面供用户选择所需文件,返回目标的目录名和文件名。 函数原型:y= wavread (FILE) 功能:读取微软音频格式(wav)文件内容 输入参数:file 表示音频文件名,字符串 返回参数:y 表示音频样点,浮点型 第二步:一维离散傅立叶变换 新建一个 m 文件,另存为 example12.m

about DCT---转载

浪子不回头ぞ 提交于 2019-11-27 23:21:20
about DCT......... MPEG采用了Ahmed(一个巨牛的数学家) 等人于70年代提出的离散余弦变换(DCT-Discrete Cosine Transform)压缩算法,降低视频信号的空间冗余度。 DCT将运动补偿误差或原画面信息块转换成代表不同频率分量的系数集,这有两个优点:其一,信号常将其能量的大部分集中于频率域的1个小范围内,这样一来,描述不重要的分量只需要很少的比特数;其二,频率域分解映射了人类视觉系统的处理过程,并允许后继的 量化过程满足其灵敏度的要求。 关于这一点在我手头的教程中有详尽的描述,让我直接引用: 视频信号的频谱线在0-6MHz范围内,而且1幅视频图像内包含的大多数为低频频谱线,只在占图像区域比例很低的图像边缘的视频信号中才含有高频的谱线。因此,在视频信号数字处理时,可根据频谱因素分配比特数:对包含信息量大的低频谱区域分配较多的比特数,对包含信息量低的高频 谱区域分配较少的比特数,而图像质量并没有可察觉的损伤,达到码率压缩的目的。然而,这一切要在低熵(Entropy)值的情况下,才能达到有效的编码。能否对一串数据进行有效的编码,取决于每个数据出现的概率。每个数据出现的概率差别大,就表明熵值低, 可以对该串数据进行高效编码。反之,出现的概率差别小,熵值高,则不能进行高效编码。视频信号的数字化是在规定的取样频率下由A/D转换器对视频电平转换而来的

基于的DCT水印算法实现

久未见 提交于 2019-11-27 23:20:57
上学期帮同校本科的同学做了毕业设计的实验部分,用MATLAB实现DCT水印算法,并且包含了攻击测试。先讲一个大体概念,然后放出具体代码。 一、DCT DCT(离散余弦变换),这里只以二维DCT为例。 信号经过DCT后,从空间域变换到频域。是一种正交变换的方法。是图像处理中应用即为广泛的傅氏变换中一种特殊的情况(被展开函数是实偶函数,再离散化,即为离散余弦变换)。 同傅氏变换一样,有正反两种变换。 正DCT:从空间域变为频域。反DCT:从频域变为空间域。具体公式如下。 正DCT: 其中: 反DCT *f(x,y)是空间采样值,简单说,就是点(x,y)的像素值。F(u,v)是频域采样值。* 二、水印算法 水印,就好像给图片盖章,注明所有权。 具体的概念不多讲,若是想深入了解,可以自行百度。 %图片加水印,提取出水印 %林多 %%% %%% %%% %%% % M = 256 ; %原图像长度 N = 32 ; %水印图像长度 K = 8 ; % 8 x8的分块 I =zeros( M , M );%创建一个 MxM 矩阵,元素全是 0 J =zeros( N , N ); BLOCK = zeros( K , K ); %显示原图像 subplot( 5 , 2 , 1 );%显示多幅图像,在第一个位置显示 I =imread( '23.bmp' );%将 23 .bmp读入 I 中

基于DCT离散余弦变换的数字水印算法 matlab源码

旧时模样 提交于 2019-11-27 23:17:32
DCT离散余弦变换实现数字水印算法 在进行水印嵌入时,先对水印用了Arnold变换 包含了几种不同的水印攻击: 白噪声 部分剪切 小波压缩 几何旋转 计算图像的峰值信噪比 计算归一化相关系数的 程序自带了界面,直接拖到matlab即可运行。 下面是效果展示: matlab代码分享 来源: CSDN 作者: 尾随大叔 链接: https://blog.csdn.net/qq_28697571/article/details/84314860

基于 DCT 过完备字典和 K-SVD 的图像稀疏去噪方法

老子叫甜甜 提交于 2019-11-27 23:16:00
  本文主要介绍基于DCTDCT 过完备字典和 K-SVD 的图像稀疏去噪方法。在实现这个功能之前需要了解下面的一些知识:   1. 《离散余弦变换(DCT)的来龙去脉》   2. 《构建DCT过完备字典》   3. 《稀疏表示》   4. 《K-SVD的原理及实现方法》 1. 稀疏去噪的原理   基于稀疏分解的图像去噪按照是否是图像中的稀疏成分把图像中的信息和噪声分开。一个原子是有特殊结构的,图像中有一定结构的成分构成有用信息,是能够用原子来表示的。但图像中的噪声是没有结构的,所以不能用原子来表示。这样就可以将图像和噪声区别开来,已达到去噪的目的。   基于稀疏分解的图像去噪方法是先从含有噪声的图像中提取稀疏成分,然后利用提取出的图像稀疏成分重建图像,则重建的图像即为去噪后的图像。 2. 图像稀疏去噪算法描述 选择字典作为过完备字典 ,参考 《构建DCT过完备字典》 构建一个64×256的字典。 将含噪图像矩阵以 8 × 8 为一块,依次按列和行的方式,并将每一个子图象转换为一个 64× 1 的列向量。生成新的矩阵Blocks,Blocks中位于同一列的元素都减去该列所在的均值(按列归一化,字典初始化的过程也是按列归一化的)。 使用噪声图像,利用 K-SVD 的方法训练字典 再将噪声图像在训练好的字典上分解,重构原始信号,加上去掉的均值完成去噪。 来源: CSDN 作者: