相关知识
DCT变换在数字图像应用
数字图像处理的主要方法 1
DCT在MATLAB的实现 1
2. 课程设计分析 3
DCT 的根本原理 3
3. 程序 6
4. 仿真结果 7
7
DCT变换三维投影 8
5. 结果分析 9
11
12
DCT变换在数字图像应用
在JPEG各类图像压缩算法中,基于离散余弦变换(DCT ,Discrete Cosine Transform) 的图像压缩编码过程称为根本顺序过程,它应用于绝大多数图像压缩场合, 并且它能在图像的压缩操作中获得较高的压缩比。另外,重构图像与源图像的视觉效果根本相同。DCT变换是在最小均方误差条件下得出的最正确正交变换,且已获得广泛应用, 并成为许多图像编码国际标准的核心。DCT变换的变换核心为余弦函数,计算速度较快, 有利于图像压缩和其他处理。 MATLAB是由美国Math2Works公司推出的用于数值计算和图形处理的科学计算软件, 它集数值分析、矩阵计算、信号处理和图形显示多种功能于一体,构成了一个方便的界面,友好的用户环境。。
数字图像处理的主要方法
空域法和变换域法。
空域法
把图像看作是平面中各个象素组成的集合,然后直接对这个二维函数进行相应的处理。
b. 频域法〔变换域法)
首先对图像进行正交变换,得到变换域系数阵列,然后再实行各种处理,处理后再反变换到空间域,得到处理结果。这类处理包括:滤波、数据压缩和特征提取等。
DCT在MATLAB的实现
第一种方法是使用函数dct2,该函数使用一个基于FFT的快速算法来提高当输入较大的输入方阵时的计算速度。dct2函数的调用格式如下:
dct2 B=(A,[M N])或B=dct2(A,M,N)
其中,A表示要变换的图像,M和N是可选参数,表示填充后的图像矩阵大小。B表示变换后得到的图像矩阵。
第二种方法使用由函数dctmtx返回的DCT变换矩阵,这种方法较适合于较小的输入方阵〔如或方阵〕。dctmtx的调用格式如下:
D=dctmtx(N)
其中,N表示DCT变换矩阵的维数,D为DCT变换矩阵。
2. 课程设计分析
DCT 的根本原理
DCT 变换在图像压缩中有很多应用,它是JPEG,MPEG 等数据压缩标准的重要数学根底。在压缩算法中,先将输入图像划分为 8×8 或 16×16,的图像块,对每个图像块作DCT 变换;然后舍弃高频的系数,并对余下的系数进行量化以进一步减少数据量;最后使用无失真编码来完成压缩任务。解压缩时首先对每个图像块做 DCT 反变换,然后将图像拼接成一副完整的图像。
DCT 的定义 :
DCT 变换利用傅立叶变换的性质,采用图像边界褶翻将图像变换为偶函数形式,然后对图像进行二维傅立叶变换,变换后仅包含余弦项,所以称之为离散余弦变换。
二维离散余弦变换DCT(Discrete Cosine Transform)的定义为,假设矩阵A 的大小为M ×N。
其中, , 称为矩阵A 的DCT 系数。在MATLAB 中,矩阵的下标从1 开始而不是从0 开始的,所以MATLAB 中的矩阵元素A(1,1)和B(1,1)分别对应于上面定义中的值和 ,
依此类推。 DCT 是一种可逆变换,离散反余弦变换定义如下:
上式的含义是任何M×N 的矩阵A 都可以表示为一系列具有下面形式的函数的和:
这些函数称为 DCT 变换的基函数。这样, , 就可以看成是应用于每个基函数的加权。
DCT 的算法 :
离散余弦变换可以由定义式出发进行计算。但这样的计算量太大,在实际应用中很不方便。所以需要寻求一种快速算法。以一维离散余弦变换为列,对快速算法进行推导。
对时域数据向量做如以下延拓:
当x=0,1,2,.........N-1 fe(x) =f(x)
当x=N,N+1,........2N-1时 fe(x)=0
数字图像处理dct变换课程设计 来自淘豆网m.daumloan.com转载请标明出处.