栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

使用python以及numpy通过直接操作图像数组完成一系列基本的图像处理。

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

使用python以及numpy通过直接操作图像数组完成一系列基本的图像处理。

使用python以及numpy通过直接操作图像数组完成一系列基本的图像处理。其中需用到numpy数组的切片,把红蓝通道交换,结果如下图1所示。最后实现图像的灰度变换。效果如图2所示。

红蓝互换:

# -*- coding: utf-8 -*-

from PIL import Image

from pylab import *

#读取图片并转为数组
im = array(Image.open("./source/test.jpg"))

#红色通道
r = im[:,:,0]

#交换红蓝通道并显示
im[:,:,0] = im[:,:,2]

im[:,:,2] = r

imshow(im)

show()

灰度转换:

# -*- coding: utf-8 -*-

from PIL import Image

from pylab import *

#读取图片,灰度化,并转为数组
im = array(Image.open("./source/test.jpg").convert('L'))

im2 = 255 - im                  # 对图像进行反相处理

im3 = (100.0/255) * im + 100    # 将图像像素值变换到 100...200 区间

im4 = 255.0 * (im/255.0)**2     # 对图像像素值求平方后得到的图像(二次函数变换,使较暗的像素值变得更小)

#2x2显示结果 使用第一个显示原灰度图
subplot(221)

title('f(x) = x')

gray()

imshow(im)

#2x2显示结果 使用第二个显示反相图
subplot(222)

title('f(x) = 255 - x')

gray()

imshow(im2)

#2x2显示结果 使用第三个显示100-200图
subplot(223)

title('f(x) = (100/255)*x + 100')

gray()

imshow(im3)

#2x2显示结果 使用第四个显示二次函数变换图
subplot(224)

title('f(x) =255 *(x/255)^2')

gray()

imshow(im4)



show()

操作细节:将路径和文件名换为自己的,放在创建的.py文件目录内。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/302975.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号