免费学习资料领取:加QQ群1141249762

利用PIL和numpy来对图片做简单的处理。

from PIL import Image

import numpy as np

#导入需要用的库

a = np.array(Image.open(

"E:/Pictures/pexels-photo-356378.jpg"))

#读入图片

b = [255,255,255]-a

im = Image.fromarray(b.astype('uint8'))

im.save('E:/Pictures/pexels-photo.jpg.jpg') #保存处理之后的图片

读入的图片是我在pexels上找的美狗。

生成的是反色图片,处理之后的图片是这样的


a = np.array(Image.open(

"E:/Pictures/pexels-photo-356378.jpg").convert('L'))

c = (100/255)*a +150

im = Image.fromarray(c.astype('uint8'))

im.save("E:/Pictures/pexels-photo2.jpg")

这段代码还是读入上面那只狗狗的图片,生成的新图片是这样的


a = np.array(Image.open(

"E:/Pictures/pexels-photo-356378.jpg").convert('L'))

c = 255*(a/255)**2

im = Image.fromarray(c.astype('uint8'))

im.save("E:/Pictures/pexels-photo3.jpg")

还是读入最上面那张美狗图片,生成了下面这张图片


将图片转变成手绘风格的。

a = np.array(Image.open(

'E:/Pictures/m.jpg').convert('L')).astype('float')

depth = 20 #取0-100

grad = np.gradient(a)

grad_x,grad_y = grad

grad_x = grad_x*depth/100

grad_x = grad_x*depth/100

A= np.sqrt(grad_x**2 + grad_y**2 + 1)

uni_x = grad_x/A

uni_y = grad_y/A

uni_z = 1./A

vec_a1 = np.pi/2.2

vec_a2 = np.pi/4.

dx = np.cos(vec_a1)*np.cos(vec_a2)

dy = np.cos(vec_a1)*np.sin(vec_a2)

dz = np.sin(vec_a1)

b = 255 * (dx *uni_x +dy *uni_y+dz *uni_z)

b = b.clip(0,255)

im = Image.fromarray(b.astype('uint8'))

im.save('E:/Pictures/m2.jpg')

上面是原图,下面是处理之后的手绘风格的图片,猫咪的脸看上去不是很清楚,调一下:

a = np.array(Image.open(

"E:/Pictures/m2.jpg").convert('L'))

c = (100/255)*a +150

im = Image.fromarray(c.astype('uint8'))

im.save("E:/Pictures/m3.jpg")

生成的m3图片如下。

猫脸看上去好像是清晰了一些呢。。。。

c++ skia 判断jpg图片是完整的_python处理图片入门级相关推荐

  1. pythonjpg_使用python判断jpeg图片的完整性实例

    用扩展名判断文件格式非常简单,但是有可能是错误的. jpeg文件有固定的文件头,其文件头的格式如下: Start Marker | JFIF Marker | Header Length | Iden ...

  2. 判断远程图片是否存在的JavaScript代码

    代码简介: 用JavaScript判断远程图片是否存在,不存在话则替换指定的图片,指定图片可以是你网站的LOGO或其它图片,或显示提示信息.没想到用JS还能干这种活,以前都是用笨方法,也就是用ASP/ ...

  3. PHP判断远程图片或文件是否存在

    2019独角兽企业重金招聘Python工程师标准>>> PHP判断远程图片或文件是否存在的实现代码. 最简单的方法就是用fopen(),看看文件能否打开,能打就文件当然就存在. &l ...

  4. 判断远程图片是否存在,否则替换成默认图片

    來源:http://www.jscode.cn/jave_img/350603662.htm <html> <head> <meta http-equiv="C ...

  5. php 判断网络图片是否存,PHP判断远程图片或文件或url是否存在-180

    PHP判断远程图片或文件或url是否存在-180 我通常使用curl判断判断远程图片或文件是否存在: /** * @link http://www.phpddt.com */ function url ...

  6. ios ipad里面调用系统相册图片不完整解决方法

    项目里面用到了系统相册,在手机里面取出来是完整的,但是在pad里面取出来就是不完整,只是取到左上角的一部分,开始查资料,最后的解决办法是,在调UIImagePickerController这个类时将这 ...

  7. 图片上传被旋转,golang Exif 判断.jepg图片原始信息Orientation方向,并旋转,

    jepg图片上传后,换取的url在web的image标签上显示被旋转. 实例:iphone6ps竖拍图片原图上传显示 看图软件打开: 图片为正: 上传后,在image标签内显示为逆时针旋转90度. 此 ...

  8. 富文本内图片大小调整,判断有无图片,限制图片大小

    //限制富文本内图片大小,有无图片,限制图片大小const theEle = this.$refs.text; //获取到元素console.log(theEle.value);//获取到富文本内容v ...

  9. html响应式页面图片怎么自适应,自适应设计:自适应图片的完整教程

    原标题:自适应设计:自适应图片的完整教程 在这篇文章中我们将学习关于自适应图片:一种可以在不同的屏幕尺寸和分辨率的设备上都能良好工作以及其他特性的图片,并且看看HTML提供了什么工具来帮助实现它们.自 ...

最新文章

  1. 你不知道的18个Python高效编程技巧
  2. Faiss教程:索引(2)
  3. Cell子刊:粘上你-细菌生长素介导的植物根部细菌定殖
  4. RocketMQ读书笔记7——吞吐量优先的场景
  5. One Day-XML:XPath
  6. python常用库之base64
  7. 字符编码的前世今生--转
  8. B端产品经理思考-软硬产品设计
  9. java的classpath是什么_JAVA初学者classpath设置情况是什么?
  10. linux系统修改系统时间
  11. 幼儿课外活动游戏_幼儿园的户外活动游戏有哪些?
  12. Angular应用的依赖注入调试
  13. 糖豆人维修服务器多长时间,服务器不稳定的《糖豆人》凭啥还这么火?只因做到了这三点...
  14. oracle堆表和MySQL_聚簇索引对比|Oracle vs MySQL
  15. android ——Toolbar
  16. 区块链之比特币的私钥,公钥和地址是什么?
  17. 【批处理】肉鸡扫描脚本
  18. php搭建h5商城,关于PHP的H5商城网站开发方案
  19. 计算机矩阵入门(eigen)0XC000041D
  20. The authentication type 10 is not supported

热门文章

  1. C语言 内存分配 地址 指针 数组 参数 解析
  2. IOS15 SVProgressHUD 报UIWindow 无法识别错误
  3. IOS中的枚举的写法...
  4. IOS swift项目的单例模式.swift5以后的单例模式
  5. IOS考试题3字体变大变小
  6. ios基础之 ARC
  7. c++ 重载 重写_关于C/C++中的++i和i++实现机制的探讨
  8. python爬虫技术路线_爬虫学习——中国大学最好排名(技术路线:requests库和bs4)(来源于北理工Python网络爬虫与信息提取网络公开课)...
  9. python脚本根据cookies自动登录网站_Python爬虫如何使用Cookies登录网站
  10. sql datetime比较大小_SQL做题小技巧