python的PLT中的image和skimage处理图片
来源:互联网 发布:2017百万公众网络测试 编辑:程序博客网 时间:2024/05/15 08:39
用PLT比较轻量级,用opencv是比较重量级
import numpy as npfrom PIL import Imageif __name__ == '__main__': image_file = '/Users/mac/Documents/学习文档/机器学习/5.Package/son.png' height = 100 #假定写入图片的高度是100 img = Image.open(image_file) img_width, img_height = img.size #获取img的尺寸 width = 2 * height * img_width // img_height # 假定字符的高度是宽度的2倍,写入图片的高度是宽度的2倍 img = img.resize((width, height), Image.ANTIALIAS) #改变尺寸,将新定的宽度,高度重定img的size赋给img pixels = np.array(img.convert('L')) #转成灰度值喂给array,pixels是个存灰度值的数组 print(pixels.shape) print(pixels) chars = "MNHQ$OC?7>!:-;. " #256色的不同通道浓淡,M代表0-15,N代表16-31 N = len(chars) step = 256 // N print(N) print step result = '' for i in range(height): for j in range(width): result += chars[pixels[i][j] // step] #像素点的值除以step是可以找到step这个像素点的位置,char做素引,是指对应的该 #点的值填充成上面更浓的色,故就显示出来了 result += '\n' with open('text.txt', mode='w') as f: f.write(result)
用PIT详解步骤:
img = Image.open(path)#打开图片
img.getpixel((height, width))#得到(height, width)处的像素值(可能是一个list,3通道)
img.convert("L")#转灰度图
size = (64, 64) img.resize(size, Image.ANTIALIAS)#改变尺寸
box = (10, 10, 100, 100) img.crop(box).show#在img上的box处截图,show显示图片
#shape[0]-1梯度下降的办法取x,y值,再将img_data[x][y][0]x,y处0通道赋255色值img_data = np.array(img) for i in xrange(300): x = random.randint(0, img_data.shape[0]-1) y = random.randint(0, img_data.shape[1]-1) #shape[0]是表几行,shape[1]表示几列,y在列向量上故用shape[1] img_data[x][y][0] = 255 img = Image.fromarray(img_data)#加300个噪音,转来转去麻烦可以直接用skimage度图片就不用转了 img.show()
img.rotate(90)#图片旋转90
img.transpose(Image.FLIP_LEFT_RIGHT)#图片镜像
二、skimage打开的图片img_data:
from skimage import io,transform img_data = io.imread(img_path) transform.resize(img_data, (64, 64))#改变尺寸
transform.rescale(img_data, 0.5)#缩小/放大图片
阅读全文
0 0
- python的PLT中的image和skimage处理图片
- python的Image和skimage处理图片
- python图片处理Image和skimage的不同
- digit image process --- python-skimage
- python-Image处理图片
- python图像处理之skimage
- 【python 图像处理】skimage的子模块介绍
- python命令行plt中imshow无法显示图片的问题
- 用 python skimage做图像处理
- python-skimage
- python PIL 处理图片的模快 Image类
- 【转】python-skimage的边缘与轮廓
- plt.imshow(image)不顯示圖片
- python 使用plt的一些注意事项
- 用matplotlib.plt作散点图的Python代码
- OpenCV、Skimage、PIL图像处理的细节差异
- 【Python】解决使用plt.savefig保存图片时一片空白
- python中plt.imshow(img)显示不了图片
- 事件的绑定和解除
- Android推送中心跳和轮询的区别
- CentOS7.3编译安装NodeJS6.10.0
- CentOS7清除wnTKYg木马
- 反射基础
- python的PLT中的image和skimage处理图片
- Java中的equals和hashCode方法详解
- c++ 正则表达式
- mysql去除重复数据,只保留一条。
- Android View的生命周期
- 网络配线架如何接线打线
- AngularJS之ng-keydown指令
- Java学习 java -- 面向对象
- 见过最好的socket编程基础介绍