使用python实现图像的简单变换,如灰度变换、直方图均衡化、高斯滤波变换

本文介绍了如何使用Python进行图像处理,包括灰度变换、直方图均衡化和高斯滤波。通过Numpy、OpenCV等工具包,详细讲解了原理、方法及其实现步骤,旨在提升图像的对比度和清晰度。
摘要由CSDN通过智能技术生成

1. 灰度变换

1.1 原理

当一幅rgb图像每一个点的三个彩色分量的值都相等,即R=G=B。我们就可以用其中一维来表示这个图片,因为三个分量都相等。这一个过程就叫做“灰度化”,灰度化以后得到的图片矩阵会从3维降至2维,这张图片看起来也是黑白的。

1.2 Numpy

Numpy是非常有名的Python科学计算工具包,其中包含了大量有用的思想,比如数组对象(用来表示向量、矩阵、图像等)以及线性代数函数。
Numpy中的数组对象几乎贯穿用于基本图像变换的所有例子中。数组对象可以帮助实现数组中的重要操作,比如矩阵乘积、转置、解方程系统、向量乘积和归一化,为图像变形、对变化进行建模、图像分类、图像聚类等提供了基础。
在python基本图像操作中,当载入图像时,通过调用 array() 方法将图像转换成Numpy的数组对象。Numpy 中的数组对象是多维的,可以用来表示向量、矩阵和图像。通过对图像的数组进行直接操作,就可以完成很多图像处理。

安装numpy包:首先进入网站 https://pypi.org/
在这里插入图片描述
输入要查找的包numpy
在这里插入图片描述
选择Download File
在这里插入图片描述根据电脑是32位还是64位选择下载
在这里插入图片描述
下载完成后保存至根目录,打开cmd,输入pip install numpy
在这里插入图片描述
numpy包安装完成

1.3 方法

将图像转换为灰度可以使用平均值法:Gray=(R+G+B)/3;
通过求得Gray后,将原来的RGB(R,G,B)中的R,G,B统一用Gray替换,形成新的颜色RGB(Gray,Gray,Gray),再用它替换原来的RGB(R,G,B)就是灰度图像了。这种方法产生的灰度图像比较柔和。

可以通过使用python的语句convert(‘L’)来获得灰度图

1.4 实现

from PIL import Image
from pylab import *
from matplotlib.font_manager import FontProperties
font = FontProperties(fname=r"c:\windows\fonts\SimSun.ttc", size=14)
figure()
pil_im = Image.open('11.jpg')
gray()
subplot(121)
title(u'原图',fontproperties=font)
axis('off
  • 6
    点赞
  • 33
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值