在读入图像到NumPy数组后,就可以对它进行任何我们想要的操作了。对图像进行灰度变换便是一个简单的例子。这里给出一些进行灰度变换的例子:
# -*- coding: utf-8 -*-
from PIL import Image
from numpy import *
from pylab import *
im = array(Image.open('C:/pytm/pic/ceshi.jpg').convert('L'))
print int(im.min()), int(im.max())#查看图像中的最小最大像素值
#对图像进行反相处理
im2 = 255 - im
print int(im2.min()),int(im2.max())
figure()
gray()
subplot(1, 3, 1)
axis('off')
imshow(im2)
title(r'$f(x)=255-x$')
#对图像像素值变换到100...200区间
im3 = (100.0/255)*im+100
print int(im3.min()),int(im3.max())
subplot(1, 3, 2)
imshow(im3)
axis('off')
title(r'$f(x)=\frac{100}{255}x+100$')
#对图像像素值求平方后得到的图像
im4 = 255.0*(im/255.0)**2
print int(im4.min()),int(im4.max())
subplot(1, 3, 3)
imshow(im4)
axis('off')
title(r'$f(x)=255(\frac{x}{255})^2$')
show()结果图:
本文通过实例演示如何使用Python和NumPy对图像进行灰度变换,包括反相处理、像素值变换及求平方等操作,并展示了变换后的效果。
520

被折叠的 条评论
为什么被折叠?



