图像滤波 2: 锐化(Python)

Python012

图像滤波 2: 锐化(Python),第1张

返回目录

内容待完善,请暂时参考如下链接:

参考1. 图像边缘检测 @ CSDN

参考2. OpenCV 中的图像处理(三) 之 19 (Canny)

返回目录

Pillow是Python里的图像处理库(PIL:Python Image Library),提供了了广泛的文件格式支持,强大的图像处理能力,主要包括图像储存、图像显示、格式转换以及基本的图像处理操作等。

1)使用 Image 类

PIL最重要的类是 Image class, 你可以通过多种方法创建这个类的实例;你可以从文件加载图像,或者处理其他图像, 或者从 scratch 创建。

要从文件加载图像,可以使用open( )函数,在Image模块中:

[python] view plain copy

>>> from PIL import Image

>>> im = Image.open("E:/photoshop/1.jpg")

加载成功后,将返回一个Image对象,可以通过使用示例属性查看文件内容:

[python] view plain copy

>>> print(im.format, im.size, im.mode)

('JPEG', (600, 351), 'RGB')

>>>

format 这个属性标识了图像来源。如果图像不是从文件读取它的值就是None。size属性是一个二元tuple,包含width和height(宽度和高度,单位都是px)。 mode 属性定义了图像bands的数量和名称,以及像素类型和深度。常见的modes 有 “L” (luminance) 表示灰度图像, “RGB” 表示真彩色图像, and “CMYK” 表示出版图像。

如果文件打开错误,返回 IOError 错误。

只要你有了 Image 类的实例,你就可以通过类的方法处理图像。比如,下列方法可以显示图像:

[python] view plain copy

im.show()

2)读写图像

PIL 模块支持大量图片格式。使用在 Image 模块的 open() 函数从磁盘读取文件。你不需要知道文件格式就能打开它,这个库能够根据文件内容自动确定文件格式。要保存文件,使用 Image 类的 save() 方法。保存文件的时候文件名变得重要了。除非你指定格式,否则这个库将会以文件名的扩展名作为格式保存。

加载文件,并转化为png格式:

[python] view plain copy

"Python Image Library Test"

from PIL import Image

import os

import sys

for infile in sys.argv[1:]:

f,e = os.path.splitext(infile)

outfile = f +".png"

if infile != outfile:

try:

Image.open(infile).save(outfile)

except IOError:

print("Cannot convert", infile)

save() 方法的第二个参数可以指定文件格式。

3)创建缩略图

缩略图是网络开发或图像软件预览常用的一种基本技术,使用Python的Pillow图像库可以很方便的建立缩略图,如下:

[python] view plain copy

# create thumbnail

size = (128,128)

for infile in glob.glob("E:/photoshop/*.jpg"):

f, ext = os.path.splitext(infile)

img = Image.open(infile)

img.thumbnail(size,Image.ANTIALIAS)

img.save(f+".thumbnail","JPEG")

上段代码对photoshop下的jpg图像文件全部创建缩略图,并保存,glob模块是一种智能化的文件名匹配技术,在批图像处理中经常会用到。

注意:Pillow库不会直接解码或者加载图像栅格数据。当你打开一个文件,只会读取文件头信息用来确定格式,颜色模式,大小等等,文件的剩余部分不会主动处理。这意味着打开一个图像文件的操作十分快速,跟图片大小和压缩方式无关。

4)图像的剪切、粘贴与合并操作

Image 类包含的方法允许你操作图像部分选区,PIL.Image.Image.crop 方法获取图像的一个子矩形选区,如:

[python] view plain copy

# crop, paste and merge

im = Image.open("E:/photoshop/lena.jpg")

box = (100,100,300,300)

region = im.crop(box)

矩形选区有一个4元元组定义,分别表示左、上、右、下的坐标。这个库以左上角为坐标原点,单位是px,所以上诉代码复制了一个 200x200 pixels 的矩形选区。这个选区现在可以被处理并且粘贴到原图。

[python] view plain copy

region = region.transpose(Image.ROTATE_180)

im.paste(region, box)

当你粘贴矩形选区的时候必须保证尺寸一致。此外,矩形选区不能在图像外。然而你不必保证矩形选区和原图的颜色模式一致,因为矩形选区会被自动转换颜色。

5)分离和合并颜色通道

对于多通道图像,有时候在处理时希望能够分别对每个通道处理,处理完成后重新合成多通道,在Pillow中,很简单,如下:

[python] view plain copy

r,g,b = im.split()

im = Image.merge("RGB", (r,g,b))

对于split( )函数,如果是单通道的,则返回其本身,否则,返回各个通道。

6)几何变换

对图像进行几何变换是一种基本处理,在Pillow中包括resize( )和rotate( ),如用法如下:

[python] view plain copy

out = im.resize((128,128))

out = im.rotate(45)  # degree conter-clockwise

其中,resize( )函数的参数是一个新图像大小的元祖,而rotate( )则需要输入顺时针的旋转角度。在Pillow中,对于一些常见的旋转作了专门的定义:

[python] view plain copy

out = im.transpose(Image.FLIP_LEFT_RIGHT)

out = im.transpose(Image.FLIP_TOP_BOTTOM)

out = im.transpose(Image.ROTATE_90)

out = im.transpose(Image.ROTATE_180)

out = im.transpose(Image.ROTATE_270)

7)颜色空间变换

在处理图像时,根据需要进行颜色空间的转换,如将彩色转换为灰度:

[python] view plain copy

cmyk = im.convert("CMYK")

gray = im.convert("L")

8)图像滤波

图像滤波在ImageFilter 模块中,在该模块中,预先定义了很多增强滤波器,可以通过filter( )函数使用,预定义滤波器包括:

BLUR、CONTOUR、DETAIL、EDGE_ENHANCE、EDGE_ENHANCE_MORE、EMBOSS、FIND_EDGES、SMOOTH、SMOOTH_MORE、SHARPEN。其中BLUR就是均值滤波,CONTOUR找轮廓,FIND_EDGES边缘检测,使用该模块时,需先导入,使用方法如下:

[python] view plain copy

from PIL import ImageFilter

imgF = Image.open("E:/photoshop/lena.jpg")

outF = imgF.filter(ImageFilter.DETAIL)

conF = imgF.filter(ImageFilter.CONTOUR)

edgeF = imgF.filter(ImageFilter.FIND_EDGES)

imgF.show()

outF.show()

conF.show()

edgeF.show()

除此以外,ImageFilter模块还包括一些扩展性强的滤波器:

class PIL.ImageFilter.GaussianBlur(radius=2)

Gaussian blur filter.

参数:

radius – Blur radius.    

class PIL.ImageFilter.UnsharpMask(radius=2, percent=150, threshold=3)

Unsharp mask filter.

See Wikipedia’s entry on digital unsharp masking for an explanation of the parameters.

class PIL.ImageFilter.Kernel(size, kernel, scale=None, offset=0)

Create a convolution kernel. The current version only supports 3x3 and 5x5 integer and floating point kernels.

In the current version, kernels can only be applied to “L” and “RGB” images.

参数:

size – Kernel size, given as (width, height). In the current version, this must be (3,3) or (5,5).

kernel – A sequence containing kernel weights.

scale – Scale factor. If given, the result for each pixel is divided by this value. the default is the sum of the kernel weights.

offset – Offset. If given, this value is added to the result, after it has been divided by the scale factor.

class PIL.ImageFilter.RankFilter(size, rank)

Create a rank filter. The rank filter sorts all pixels in a window of the given size, and returns therank‘th value.

参数:

size – The kernel size, in pixels.

rank – What pixel value to pick. Use 0 for a min filter, size * size / 2 for a median filter, size * size - 1 for a max filter, etc.

class PIL.ImageFilter.MedianFilter(size=3)

Create a median filter. Picks the median pixel value in a window with the given size.

参数:

size – The kernel size, in pixels.    

class PIL.ImageFilter.MinFilter(size=3)

Create a min filter. Picks the lowest pixel value in a window with the given size.

参数:

size – The kernel size, in pixels.    

class PIL.ImageFilter.MaxFilter(size=3)

Create a max filter. Picks the largest pixel value in a window with the given size.

参数:

size – The kernel size, in pixels.    

class PIL.ImageFilter.ModeFilter(size=3)

Create a mode filter. Picks the most frequent pixel value in a box with the given size. Pixel values that occur only once or twice are ignoredif no pixel value occurs more than twice, the original pixel value is preserved.

参数:

size – The kernel size, in pixels.    

更多详细内容可以参考:PIL/ImageFilter

9)图像增强

图像增强也是图像预处理中的一个基本技术,Pillow中的图像增强函数主要在ImageEnhance模块下,通过该模块可以调节图像的颜色、对比度和饱和度和锐化等:

[python] view plain copy

from PIL import ImageEnhance

imgE = Image.open("E:/photoshop/lena.jpg")

imgEH = ImageEnhance.Contrast(imgE)

imgEH.enhance(1.3).show("30% more contrast")

图像增强:

class PIL.ImageEnhance.Color(image)

Adjust image color balance.

This class can be used to adjust the colour balance of an image, in a manner similar to the controls on a colour TV set. An enhancement factor of 0.0 gives a black and white image. A factor of 1.0 gives the original image.

class PIL.ImageEnhance.Contrast(image)

Adjust image contrast.

This class can be used to control the contrast of an image, similar to the contrast control on a TV set. An enhancement factor of 0.0 gives a solid grey image. A factor of 1.0 gives the original image.

class PIL.ImageEnhance.Brightness(image)

Adjust image brightness.

This class can be used to control the brighntess of an image. An enhancement factor of 0.0 gives a black image. A factor of 1.0 gives the original image.

class PIL.ImageEnhance.Sharpness(image)

Adjust image sharpness.

This class can be used to adjust the sharpness of an image. An enhancement factor of 0.0 gives a blurred image, a factor of 1.0 gives the original image, and a factor of 2.0 gives a sharpened image.

图像增强的详细内容可以参考:PIL/ImageEnhance

除了以上介绍的内容外,Pillow还有很多强大的功能:

PIL.Image.alpha_composite(im1, im2)

PIL.Image.blend(im1, im2, alpha)

PIL.Image.composite(image1, image2, mask)

PIL.Image.eval(image, *args)

PIL.Image.fromarray(obj, mode=None)

PIL.Image.frombuffer(mode, size, data, decoder_name='raw', *args)

图像处理怎么样用软件处理

要求:首先先看这张图片是否符合证件照的要求,五官清晰 、眉毛 、耳朵是否漏在外面,是否符

合上述要求。

制作:打开专业做图软件(Photoshop)—拖入图片—选择裁剪工具—输入尺寸(一 寸:2.5*3.5、

二寸:3.5*4.5、小二寸:3.3*4.8)进行裁剪,左右轻移使得保留部分居中,键盘 快捷键

ctri+shift+s保存图片,选择格式(证件照一般都是jpg、jpeg)点击保存就可以了。当

然如果还是不明白或是制作过程中有什么问题不明白可以找我1528220511@qq.只

要在线,第一时间回答亲们的疑惑

佳能eos图像处理软件怎么样?

说的是机器带的图像处理软件吗,有很多特殊的功能,如局部影调调整,但功能不够全面,通常都是用PS来修理图片。

用labview图像处理怎么样

图像是哪种图像,如果是类似google,yaohoo之类的验证码图像,那就难了。

如果是清晰的标准图像,比如你在网页上截个屏,上面有几个数字,那种图像就是标准图像,这种图像对于labview来说明是小菜一蝶,用vision的OCR,对于较稳定的图像来说准确率还是不错的,时间也不会超过0.5ms/个。

图像处理怎么样

虽然功能很简单,但是能满足一般修照片的要求,剪切、调整简单的效果、简单的相框等。方便上手。

用python做 图像处理怎么样

只是用python做过简单的图像处理,用PIL这个库,要是想看好处,就看看这个:developer.51cto./art/201003/188186.htm

美图软件(图像处理)

美图秀秀里可能一些边框的素材比较多一点,而且可以做动态的图,光影里可以修改图的色调,一些边框也有,好像没有美图的多一些,可牛,我也没用过了。

怎样选择图像处理软件?

“nEO iMAGING”〖光影魔术手〗是一个对数码照片画质进行改善及效果处理的软件。 简单、易用,不需要任何专业的图象技术,就可以制作出专业胶片摄影的色彩~。

下载地址::download.pchome./design/digipic/download_20642.

“nEO iMAGING”具备以下的基本功能和独特之处:

√ 正片效果:模拟反转片的效果,令照片反差更鲜明,色彩更亮丽

√ 正片负冲:模拟反转负冲的效果,色彩诡异而新奇

√ 黑白效果:模拟多类黑白胶片的效果,在反差、对比方面,和数码相片完全不同

√ 数码补光:对曝光不足的部位进行后期补光,易用、智能,过渡自然

√ 人像褪黄:校正某些肤色偏黄的人像数码照片,一键操作,效果明显

√ 冲印排版:证件照片排版,一张6寸照片上最多排16张1寸身份证照片,一键完成,极为简便

√ 一指键白平衡:修正数码照片的色彩偏差,还原自然色彩,可以手工微调--没有调不准的照片

√ 褪色旧相:模仿老照片的效果,色彩黯淡,怀旧情调

√ 负片效果:模拟负片的高宽容度,增加相片的包容度

√ 晚霞渲染:对天空、朝霞晚霞类明暗跨度较大的相片有特效,色彩艳丽,过渡自然

√ 夜景抑噪:对夜景、大面积暗部的相片进行抑噪处理,去噪效果显著,且不影响锐度

√ 死点修补:对CCD上有死点的相机,一次设定以后,就可以修补它拍摄的所有照片上的死点,极方便有效

√ 自动曝光:智能调整照片的曝光范围,令照片更迎合视觉欣赏

√ 自动白平衡:智能校正白平衡不准确的照片的色调

√ 色阶、曲线:多通道调整,操作同PS,高级用户可以随心所欲

√ 其他调整包括:锐化、模糊、亮度、对比度、gamma调整、反色、去色、RGB色调调整等等

√ 其他操作包括:任意缩放、自由旋转、裁剪

√ 自动动作:可设置一系列动作,一按即自动完成所有操作

√ 所有特效处理,用户可以自由调整参数,以获得满意的效果

√ 批量处理:支持批量缩放、批量正片等,适合大量冲印前处理

√ 轻松制作多种相片边框,如胶卷式、白边式等等

√ 兼容大部分photoWORKS边框,可选择220多种生动有趣的照片边框素材

√ 文字签名:用户可设定3个签名及背景,文字背景还可以任意设定颜色和透明度

√ 图片签名:在照片的任意位置印上自己设计的水印,可设透明度(类似色影无忌的水印效果)和阴影,极富立体感

√ 可以在照片的任意位置上打印EXIF信息内容(如拍摄日期、光圈、快门等)

√ 无限次撤消操作和重做操作

√ 照片的EXIF信息不受损

√ 除了编辑,也可以用做照片浏览器,支持鼠标飞轮、键盘热键,一边浏览一边编辑,简单易用

√ 幻灯式浏览照片,可全屏幕查看

√ 可以查看、编辑PSD、GIF、JPG、PNG、PCX、TIF等30多种常见格式的图象文件

aphoto图像处理软件怎么卸载

点击 开始 设置 控制面板 添加或删除程序 选择aphoto点击卸载即可,或者是使用360强力卸载软件!都可以轻松卸载!

photobie图像处理 中文版这个软件怎么样

Photobie是一个建立在.NET FRAMEWORK基础上的图像处理软件, Photobie软件整合了诸多重要功能与一体.

在具备类似Photoshop多层面处理功能的同时, 更提供了超强的抓图工具, GIF 动画, 图像目录浏览器, 相框制做工具. 官网还提供了无数的免费相框. 支持Photoshop滤镜插件.

图像处理哪种软件好些?

photoshop