在python3下使用OpenCV做离散余弦变换DCT及其反变换IDCT
2024-09-03 23:24:53
对图像处理经常用到DCT, Python下有很多带有DCT算法包, 这里使用OpenCV的DCT做变换, 并简单置0部分数据, 再查看反变换图像的效果.
import numpy as np
import cv2
# from matplotlib import pyplot as plt
y = cv2.imread('window.bmp', 0)
# print(y.shape)
cv2.imshow("gray",y)
y1 = y.astype(np.float32)
# print(y1.dtype)
Y = cv2.dct(y1)
print(Y.shape)
for i in range(0,240):
for j in range(0,320):
if i > 100 or j > 100:
Y[i,j] = 0
cv2.imshow("Dct",Y)
y2 = cv2.idct(Y)
# print(y2.dtype)
cv2.imshow("iDCT",y2.astype(np.uint8))
cv2.waitKey(0)
对于320x240的图像, 在频域对大于100的行和列都置零(相当于低通滤波)后, 反变换后图像有点模糊, 但还能还原大致效果.
最新文章
- app端上传文件至服务器后台,web端上传文件存储到服务器
- mysql操作入门基础之对数据库和表的增删改查
- T-SQL:毕业生出门需知系列(七)
- 从mixin到new和prototype:Javascript原型机制详解
- Request.MapPath和ServerMapPath
- SQL Tune Report–sqltrpt.sql
- location.reload
- jpg 批量压缩工具 v1.0
- 详解iOS7升级细节:引领视觉革命
- 转:AFNetworking 与 UIKit+AFNetworking 详解
- Windows服务的创建、安装、卸载
- 一些实用的JQuery代码片段收集(筛选,搜索,样式,清除默认值,多选等)
- 【BZOJ1040】骑士(动态规划)
- Scala编程快速入门系列(二)
- Selector-背景选择器
- Angular 2 to Angular 4 with Angular Material UI Components
- BootstrapValidator . select 必须选择一个 .callback . select .option
- python 连接 oracle 统计指定表格所有字段的缺失值数
- 锤子科技 Smartisan M1L 咖啡金 真皮背面 高配版 5.7
- jfinal如何查看post还是get请求?
热门文章
- 获取Asset下文本内容和读取图片
- 20分钟成功编写bootstrap响应式页面 就这么简单
- keepalive和脑裂问题
- Docker修改时区
- HDFS编程
- 160317(一)、在非action中获取request
- python--get_data_from_csv_or_txt
- Buns---cf 106C(多重背包)
- MySQL - 查询今天的数据(以及昨天、本月、上个月、今年...) 查询Datetime 时间的数据
- Pycharm建立web2py项目并简单连接MySQL数据库