对图像处理经常用到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) # p…
在MATLAB中有blkproc (blockproc)对数据处理, 在python下没找到对应的Function, 这里利用numpy 的split(hsplit和vsplit) 对数据分块处理成8x8的小块, 然后在利用OpenCV的dct函数做变换, 同时利用idct 验证数据变换是否正确. import numpy as np import cv2 a = np.arange(256).reshape((16,16)) print("ori data: \n{}".format…
图像的正交变换在数字图像的处理与分析中起着很重要的作用,被广泛应用于图像增强.去噪.压缩编码等众多领域.本文手工实现了二维离散傅里叶变换和二维离散余弦变换算法,并在多个图像样本上进行测试,以探究二者的变换效果. 1. 傅里叶变换 实验原理 对一幅图像进行离散傅里叶变换(DFT),可以得到图像信号的傅里叶频谱.二维 DFT 的变换及逆变换公式如下: DFT 尽管解决了频域离散化的问题,但运算量太大.从公式中可以看到,有两个嵌套的求和符号,显然直接计算的复杂度为 \(O(n^2)\) .为了加快傅里…
本篇是该系列的第六篇,承接上篇IZigZag变换,介绍接下来的一个步骤--逆离散余弦变换,即逆零偏置前的一个步骤. 该步骤比较偏理论,其业务是对IZigZag变换后的数据,再进一步的处理,使其恢复DCT变换前的数据. 需要补充一点说明的是,上面的DCT其实是DCT2,因为jpeg编码下都是对8x8的像素块进行处理. 1. 理论 1.1. 背景 DCT,即离散余弦变换,常用图像压缩算法,步骤如下 1)分割,首先将图像分割成8x8或16x16的小块: 2)DCT变换,对每个小块进行DCT变换: 3)…
在Python3下用使用OpenCV比在C,C++里开发不止快捷一点点, 原型开发的时候蛮有用. 这里用的OpenCV 加载图片, 用的imshow画图 # -*- coding: utf-8 -*-  import cv2 # from matplotlib import pyplot as plt from pylab import * # 添加中文字体支持 from matplotlib.font_manager import FontProperties font = FontPrope…
以下代码为在Python3环境下利用OpenCV 抓取摄像头的实时图像, 通过OpenCV的 calHist函数计算直方图, 并显示在3个不同窗口中. import cv2 import numpy as np from matplotlib import pyplot as plt import time cap  = cv2.VideoCapture(0) for i in range(0, 19):     print(cap.get(i)) while(1):     ret, fram…
Python Imaging Library (PIL)是python下的图像处理模块,支持多种格式,并提供强大的图形与图像处理功能. 目前PIL的官方最新版本为1.1.7,支持的版本为python 2.5, 2.6, 2.7,并不支持python3,但有高手把它重新编译生成python3下可安装的exe了.这一非官方下载地址 http://www.lfd.uci.edu/~gohlke/pythonlibs/#pil 或者直接点下面: PIL-1.1.7.win32-py3.2.‌exe  […
工作中需要对摄像头进行调试, Python平台大大提高调试效率. 从网找到段代码, 可以从摄像头图像中抠出蓝色. import cv2 import numpy as np cap  = cv2.VideoCapture(0) for i in range(0, 19):     print(cap.get(i)) while(1):     ret, frame = cap.read()     hsv = cv2.cvtColor(frame, cv2.COLOR_BGR2HSV) lowe…
Mac-OSX的Python3.5虚拟环境下安装Opencv 1   关键词 关键词:Mac,OSX,Python3.5,Virtualenv,Opencv 2   概述 本文是一篇 环境搭建 的基础文. 为了这个东西让自己折腾了接近2天的时间,各种筛选资料,各种尝试,最后终于找到了相应的资料,然后成功安装. 在整理本文的时候,特别感谢这个作者,他提供了两篇安装opencv的方法,分别是 python2.x [1] 和 python3.x [2] . 笔者按照 3.x 的步骤和线索,再解决掉一些…
吐槽: 这一天我终于记起了这个博客.今天搞python环境下的opencv,又弄了一天,很烦躁.之前配置VS的opencv也是花了好久的时间,然后突然发现之前记录在电脑上的文档都找不到了,于是决定还是写写博客吧,之后应该会把之前做过的一些东西也发上来,以作保存.这篇兴致所作,写的就随意些了. 环境: 直接上环境. 操作系统:win7 64位 语言:python3.6.3 库:opencv-python-3.4.3.18, opencv-contrib-python-3.4.3.18 IDE: P…