python预处理图片_python图像预处理

这段代码展示了使用Python进行图像预处理的方法,包括降噪、旋转、图像大小调整、膨胀处理、腐蚀处理、图片切割以及霍夫变换来查找图片倾斜度。通过PIL库,实现了对图像的多种操作,例如使用平均法降噪、图像旋转、二值化、腐蚀和膨胀等图像增强技术。
摘要由CSDN通过智能技术生成

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

'''

Created on 2017年8月4日

@author: fengj

'''

import numpy as np

from PIL import Image, ImageFilter

import math

imageWidth=151#图片宽度

imageHeight=112#图片高度

#每个点用他旁边的8个点及自己综合平均

def getPixel(image,x,y):

nearDots = image.getpixel((x,y))+image.getpixel((x - 1,y - 1))+image.getpixel((x - 1,y))+image.getpixel((x - 1,y + 1))

+image.getpixel((x,y - 1))+image.getpixel((x,y + 1))+image.getpixel((x + 1,y - 1))+image.getpixel((x + 1,y))

+image.getpixel((x + 1,y + 1))

return nearDots/8

# 降噪

# Z: Integer 降噪次数

def clearNoise(image,Z,data):

for i in range(Z):

for x in range(1,image.size[0] - 1):

for y in range(1,image.size[1] - 1):

data[y-1,x-1] = getPixel(image,x,y) #图像的宽是矩阵的列数

# 旋转图像

#angle 旋转角度,可以为负数

def imageRotate(angle):

im=im.rotate(angle)

im.show()

'''图片缩小和保存'''

def ImageSave(im):

# 获得图像尺寸:

w, h = im.size

print('Original image size: %sx%s' % (w, h))

# 缩放到50%:

im.thumbnail((w//2, h//2))

print('Resize image to: %sx%s' % (w//2, h//2))

# 把缩放后的图像用jpeg格式保存:

im.save('thumbnail.jpg', 'jpeg')

im.show()

'''#膨胀处理'''

def swell():

newdata=data.copy()#不能用newdata=data,那样相当于指针

for i in range(data.shape[0]-1):#shape相当于MATLAB中的size

for j in range(data.shape[1]-1):#1表示抛弃边缘

if(i==0 or j==0):

continue

for n in range(3):#3表示膨胀系数

if(d

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值