实验验证离散余弦变换和简单压缩应用,显示对应的原图,dct图和恢复的图像

  • 离散余弦变换
  • 压缩

离散余弦变换

import cv2
import numpy as np
import matplotlib.pyplot as plt
img=cv2.imread("lena.jpg",0)
img1=img.astype(np.float)
img_dct=cv2.dct(img1)
img_dct_log=np.log(abs(img_dct))
img_idct=cv2.idct(img_dct)
plt.subplot(141)
plt.imshow(img,cmap='gray')
plt.title('original')
plt.axis('off')plt.subplot(142)
plt.imshow(img_dct_log,cmap='gray')
plt.title('dct')
plt.axis('off')plt.subplot(143)
plt.imshow(img_idct,cmap='gray')
plt.title('idct')
plt.axis('off')
plt.show()

压缩


import cv2
import numpy as np
import matplotlib.pyplot as plt
img=cv2.imread("lena.jpg",0)
img1=img.astype(np.float32)
img_dct=cv2.dct(img1)
(rows,cols)=img_dct.shape
for i in range(0,rows):for j in range(0,cols):if i>60 or j>60:img_dct[i,j]=0
img_dct_log=np.log(abs(img_dct))
img_dct=cv2.idct(img_dct)
plt.subplot(141)
plt.imshow(img,cmap='gray')
plt.title('original')
plt.axis('off')plt.subplot(142)
plt.imshow(img_dct_log,cmap='gray')
plt.title('dct')
plt.axis('off')plt.subplot(143)
plt.imshow(img_dct,cmap='gray')
plt.title('idct')
plt.axis('off')
plt.show()

实验验证离散余弦变换和简单压缩应用,显示对应的原图,dct图和恢复的图像相关推荐

  1. 离散余弦变换和C语言实现-win32版本

    离散余弦变换,DCT for Discrete Cosine Transform. 是与傅里叶变换相关的一种变换,它类似于离散傅里叶变换(DFT for Discrete Fourier Transf ...

  2. 离散余弦变换(含源码)

    图像处理中常用的正交变换除了傅里叶变换外,还有其他一些有用的正交变换,其中离散余弦就是一种.离散余弦变换表示为DCT( Discrete Cosine Transformation),常用于图像处理和 ...

  3. 离散余弦变换(C++实现)

    理论部分转载自这篇blog: http://blog.csdn.net/luoweifu/article/details/8214959  该blog给出的是java代码,我用c++将其实现了. 理论 ...

  4. 离散余弦变换java实现_离散余弦变换(含源码)

    图像处理中常用的正交变换除了傅里叶变换外,还有其他一些有用的正交变换,其中离散余弦就是一种.离散余弦变换表示为DCT( Discrete Cosine Transformation),常用于图像处理和 ...

  5. 压缩感知稀疏基之离散余弦变换(DCT)和离散正弦变换(DST)

    题目:压缩感知稀疏基之离散余弦变换(DCT)和离散正弦变换(DST) 在前面一篇<压缩感知的常见稀疏基名称及离散傅里叶变换基>中集结了九篇压缩感知文献中有关稀疏基名称,并且直白地告诉大家稀 ...

  6. JPEG压缩原理与DCT离散余弦变换 量化

    原文网址:http://blog.csdn.net/newchenxf/article/details/51719597 1 前言 JPEG是joint Photographic Experts Gr ...

  7. C语言实现离散余弦变换(DCT)并用MATLAB和Python验证

    概念 离散余弦变换(Discrete Cosine Transform,DCT)是可分离的变换,其变换核为余弦函数.是与傅里叶变换相关的一种变换,它相当于把离散傅里叶变换的虚数部分丢掉,只使用实数.D ...

  8. 数字图像处理100问—40 JPEG 压缩——第四步:YCbCr+离散余弦变换+量化

    提示:内容整理自:https://github.com/gzr2017/ImageProcessing100Wen CV小白从0开始学数字图像处理 40 JPEG 压缩--第四步:YCbCr+离散余弦 ...

  9. 基于离散余弦变换(DCT)傅里叶变换(DFT)小波变换(DWT)的彩色图像数字水印的嵌入、提取简介及MATLAB实现

    一.引言 该篇包括三部分,1)引言.2)图像变化技术简介和代码实现 .3)基于图像变换技术的数字水印技术及代码实现. 数字水印是一种有效的数字产品版权保护和数据安全维护技术, 是信息隐藏领域的一个重要 ...

最新文章

  1. redisson的锁的类型_绝对干货:利用redisson完成分布式锁功能
  2. 有别于BATJ,滴滴的中台数据体系建设怎么另辟蹊径?
  3. 英国《金融时报》:全力加码早期投资,红杉中国在下一盘怎样的棋?
  4. Ubuntu分别用ibus和scim安装五笔
  5. 100个直接可以拿来用的JavaScript实用功能代码片段
  6. springcloud服务网关-gateway
  7. linkin大话面向对象--内部类
  8. Linux 命令(21)—— cd 命令(builtin)
  9. 微信小程序之自定义toast弹窗
  10. python免费领取视频-quot;免费领取Python资源”
  11. [转]MTK android 下载及启动过程
  12. ECLIPSE远程调试TOMCAT.
  13. Unity OnPostprocessTexture 和 OnPreprocessTexture 使用注意事项
  14. ffmpeg使用说明书
  15. 华为网络安全论述题解析(1)
  16. 基于Thinkphp的微信表白墙小程序源码
  17. android 重力模拟,android的模拟器怎样仿真重力感应器
  18. java ean13_【求大神指导】java实现EAN13条形码识别
  19. subst 不小心创建出来虚拟磁盘 在磁盘管理中删不掉 使用subst命令删除 完美解决
  20. Word控件Spire.Doc 转换教程(十二):如何将 Word 转换为 EPub、XPS、Emf

热门文章

  1. tecplot对数坐标轴怎么画_一次更换双速风机接线经历,想通了改变磁极对数原理...
  2. JS Date格式化为yyyy-MM-dd类字符串
  3. Redis详解(六)------ RDB 持久化
  4. Oracle的Rman差异增量备份
  5. 吴恩达深度学习笔记(八) —— ResNets残差网络
  6. Loj #6060. 「2017 山东一轮集训 Day1 / SDWC2018 Day1」Set
  7. JMX 简介 和 实例
  8. Flutter自定义相机,Flutter相册选择照片
  9. Mr.J--HTTP学习笔记(二)-- URL详解
  10. Mr.J--简易的判断输入两次密码是否一致(静态)