【Python学习】 - PIL - 各种图像操作

官方文档:http://effbot.org/imagingbook/image.htm

1.打开图像并显示(注意这样show的话,会生成本地文件的):


img=Image.open('1.jpg')img.show()

 

2.转8位灰度图


greyimg=img.convert('L')
greyimg.show()

 

3.获取图片某一像素点的 (R,G,B)值

from PIL import Image  imagepath='1.jpg'  
img = Image.open(imagepath)  
if img.mode not in ('L', 'RGB'):  img = img.convert('RGB')  
r, g, b = img.getpixel((10, 10))  

4.从图像中随机截取一部分

crop() : 从图像中提取出某个矩形大小的图像。它接收一个四元素的元组作为参数,各元素为(left, upper, right, lower),坐标系统的原点(0, 0)是左上角。

leftupx=random.randint(0,img.size[0]-64-1)
leftupy= random.randint(0,img.size[1]-128-1)
img1=img.crop((leftupx,leftupy,leftupx+64,leftupy+128))

5.保存图像

im.save("2.jpg")

 

6.PIL中的Image和numpy中的数组array相互转换

 

image转换成array

img=np.array(image)


array转换成image

注意img必须强转成uint8类型!如果是uint16的矩阵而不转为uint8的话,Image.fromarray这句会报错

from PIL import Imageim_arr = Image.fromarray(np.uint8(img))

7.修改图像大小

im.resize(size, filter) ⇒ image

返回图像的调整大小的副本。size参数以像素为单位给出请求的大小,作为2元组:(宽、高)。

The filter argument can be one of NEAREST (use nearest neighbour), BILINEAR (linear interpolation in a 2x2 environment), BICUBIC (cubic spline interpolation in a 4x4 environment), or ANTIALIAS (a high-quality downsampling filter). If omitted, or if the image has mode “1” or “P”, it is set to NEAREST.

滤波器参数可以是最接近的(使用最近邻)、双线性(在2x2环境中进行线性插值)、双三次样条(在4x4环境中进行三次样条插值)或反锯齿(高质量的下采样滤波器)。如果省略,或者图像模式为“1”或“P”,则将其设置为最接近的模式。


Note that the bilinear and bicubic filters in the current version of PIL are not well-suited for large downsampling ratios (e.g. when creating thumbnails). You should use ANTIALIAS unless speed is much more important than quality.

请注意,当前版本的公益诉讼的双线性和双三次滤波器不适用于大的下采样率(例如,创建缩略图时)。除非速度比质量更重要,否则应该使用反锯齿。

(总之一般情况下第二个参数使用默认就好)

比如要将图片修改成64*64的
im = im.resize(64,64)

8.复制图片

im = Image.open('1.jpg')im2 = im.copy()

9.添加水印,叠加函数,拼接图像

基于keras中的PIL中的paste()函数可以给图片添加水印,也可以叠加函数,拼接图像,做到多张图片结果的可视化。

https://blog.csdn.net/s411081123/article/details/86255688

10.更多操作

https://www.cnblogs.com/meitian/p/3699223.html

 

部分内容选自:传送门

 

https://www.sohu.com/a/328328613_571478

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/439387.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

SharePoint REST API - 确定REST端点URL

SharePoint REST端点URI的结构 在你能够通过REST访问SharePoint资源之前,首先你要做的就是找出对应的URI端点,如果你对Client API熟悉,有些时候也可以参考Client API去猜测构建,例如。 客户端对象模型的方法: List.G…

【机器学习】 - 各种人脸数据集下载地址及说明汇总

1. Olivetti Faces人脸数据集 由40个人组成,共计400张人脸; 每人的人脸图片为10张,包含正脸、侧脸以及不同的表情; 整个数据集就是一张大的人脸组合图片,下载地址:https://cs.nyu.edu/~roweis/data/olivet…

【机器学习】 - 激活函数与交叉熵Sigmoid, Softmax, binary_crossentropy, categorican_crossentropy区别

Content: 为什么需要激活函数;一个神经元在做什么;激活函数 SigmoidSoftmax 4. 交叉熵损失函数 Binary cross-entropyCategorican cross-entropy为什么需要激活函数: Ans: 为了引入非线性变换。 如下图所示的红线和蓝线,在这个…

SharePoint 2013 Farm 安装指南——Least Privilege

写过很多关于SharePoint 2013 安装,这是第四篇。可能你会觉得为什么如此简单的安装至于花那么多精力去折腾吗。我的答案是肯定的。知识的积累不是一蹴而就的,而是循序渐进的去学习,每一个阶段都有独立的思考,于是乎第四篇SharePoi…

【机器学习】 - 关于Keras的深入理解

1.keras中使用相同的loss与metrics,都指定为mse,为什么训练时每轮完成后它们数值不一样? 答: 此时的loss是指完成最后一个batch后得到的这轮epoch的loss的加权平均,权重就是每个batch的样本数,&#xff08…

SharePoint 2013 本地开发解决方案以及远程调试

https://www.cnblogs.com/jianyus/p/3523387.html 在SharePoint开发中,我们需要在部署有SharePoint环境的服务器中开发,这是一件让人很苦恼的事情,毕竟不能一个项目多人开发配备多台服务器,这就需要本地开发。 本来自己以为ShareP…

visual studio 2015 key vs2015密钥

Visual Studio Professional 2015简体中文版(专业版) KEY:HMGNV-WCYXV-X7G9W-YCX63-B98R2 Visual Studio Enterprise 2015中英版(企业版) KEY:HM6NR-QXX7C-DFW2Y-8B82K-WTYJV

【机器学习】 - keras学习 - 图片生成器ImageDataGenerator

函数原型: keras.preprocessing.image.ImageDataGenerator(featurewise_centerFalse,samplewise_centerFalse,featurewise_std_normalizationFalse,samplewise_std_normalizationFalse,zca_whiteningFalse,zca_epsilon1e-6,rotation_range0.,width_shift_range0.,h…

SharePoint 2007 and 2010 的服务器场的端口

由于要把一台SharePoint Server放到外网去,就把IP改到DMZ区了,结果除了系统管理员,其他帐号都无法验证通过,肯定是一些端口没开. 网上一查,SharePoint所需要的端口还真多,不过Client和WFE之间的应该开放80和443就OK了,其余的都是SharePoint Server之间,或者和 公司网络环境的…

【Python学习】 - 使用Anaconda的Spyder查看某些函数的原型的6种方法汇总

1.Ctrl鼠标点击函数名(对应的函数名会加下划线) 或 Ctrlg 2.help(function) 在某些情况下方法1失效,比如TensorFlow中的一些函数tf.constant,他只会跳转到一个init文件,并不会展示函数原型。 所以可以这样help(tf.co…

SharePoint2013 备份还原

你执行的是导出导入操作,用powershell命令吧,backup-spsite,restore-spsite,备份还原和导入导出是不一样的。 备份还原和导入导出的区别: 1、 还原是完全的覆盖操作,就是还原的网站和之前的网站完全一样&a…

【Python学习】 - TensorFlow.keras 不显示epochs进度条的方法

一、概述 在我们使用TensorFlow进行神经网络的搭建时,难免遇到需要训练很多次来拟合数据的情况,假设需要拟合1000次数据,那么可能前800次的拟合效果都不是很好,所以显示进度条就会使得输出面板被填满,输出的信息我们并…

【Python学习】 - 关于函数返回拷贝还是返回视图的几组函数汇总

1.np.flatten() 和 np.ravel() 两者的功能是一致的,将多维数组降为一维,但是两者的区别是返回拷贝还是返回视图。 np.flatten()返回一份拷贝,对拷贝所做修改不会影响原始矩阵,而np.ravel()返回的是视图,修改时会影响…

SharePoint2010开发最佳实践

目 录 第1章 SharePoint Foundation开发基础1 1.1 SharePoint能做什么1 1.2 SharePoint Foundation和SharePoint Server 2010的区别2 1.3 SharePoint Foundation新特性4 1.4 SharePoint 2010基础概念4 1.4.1 服务器场5 1.4.2 Web应用程序6 1.4.3 服务应用程序8 1.4.4 网站集和网…

关于报错:'nvidia-smi' 不是内部或外部命令,也不是可运行的程序 或批处理文件。

使用cmd查看电脑显卡的信息,调用nvidia-smi查看显卡使用情况报错如下: 因为它找不到该命令。这个文件是一个exe文件,一般都在下面这个文件夹中。 C:\Program Files\NVIDIA Corporation\NVSMI 所以想要使用该命令必须要能得到这个文件夹&…

SharePoint网站集备份与恢复

下面是操作过程&#xff1a;尝试三是成功的 尝试一&#xff1a;移动网站集&#xff08;无效&#xff09; 向Web应用程序新增了一个数据库&#xff0c;把网站集迁移到新数据库里&#xff1b; Get-SPSite -ContentDatabase <SourceContentDb> | Move-SPSite -Destination…

【机器学习】 - 使用dlib进行人脸定位,人脸检测,给人脸图片戴口罩

detector dlib.get_frontal_face_detector() 功能&#xff1a;人脸检测画框 参数&#xff1a;无 返回值&#xff1a;默认的人脸检测器 faces detector(img_gray, 0) 功能&#xff1a;对图像画人脸框 参数&#xff1a;img_gray&#xff1a;输入的图片 返回值&#xff1a;人脸…

Sharepoin学习笔记—架构系列—Sharepoint服务(Services)与服务应用程序框架(Service Application Framework) 1

Sharepoin学习笔记—架构系列—Sharepoint服务(Services)与服务应用程序框架(Service Application Framework) 1 Sharepoint服务是Sharepoint的重要组成&#xff0c;可以说Sharepoint的许多网站功能都是基于这些服务构架起来的。这里把Sharepoint服务的相关要点总结一下。 1、…

【机器学习】 - import cv2 opencv安装python

果然不出我所料&#xff0c;直接pip就出了很多奇奇怪怪的错误&#xff0c;还是用清华镜像吧 输入&#xff1a;pip install opencv-python -i https://pypi.tuna.tsinghua.edu.cn/simple 安装完后&#xff0c;重启spyder即可使用。 下载方法2&#xff1a; 下载地址&#xff1a…

Sharepoin学习笔记—架构系列—Sharepoint服务(Services)与服务应用程序框架(Service Application Framework) 2

上一篇我们以问答的方式明确了Sharepoint服务的一些概念&#xff0c;这里我们重点来看两个方面:Sharepoint服务器构架对象模型以及Sharepoint 服务应用程序的某些拓扑结构 一、Sharepoint服务器构架对象模型 二、Sharepoint 服务应用程序的某些拓扑结构 Sharepoint 服务应用程…