Python3实现取图片中特定的像素替换指定的颜色示例

yipeiwu_com5年前Python基础

本文实例讲述了Python3实现取图片中特定的像素替换指定的颜色。分享给大家供大家参考,具体如下:

1、原始图片

2、修改脚本:

# -*- coding:utf-8 -*-
#! python3
from PIL import Image
i = 1
j = 1
img = Image.open("e:/pic/222.jpg")#读取系统的内照片
print (img.size)#打印图片大小
print (img.getpixel((4,4)))
width = img.size[0]#长度
height = img.size[1]#宽度
for i in range(0,width):#遍历所有长度的点
  for j in range(0,height):#遍历所有宽度的点
    data = (img.getpixel((i,j)))#打印该图片的所有点
    print (data)#打印每个像素点的颜色RGBA的值(r,g,b,alpha)
    print (data[0])#打印RGBA的r值
    if (data[0]>=170 and data[1]>=170 and data[2]>=170):#RGBA的r值大于170,并且g值大于170,并且b值大于170
      img.putpixel((i,j),(234,53,57,255))#则这些像素点的颜色改成大红色
img = img.convert("RGB")#把图片强制转成RGB
img.save("e:/pic/testee1.jpg")#保存修改像素点后的图片

3、运行脚本:

4、图片变化成

更多关于Python相关内容可查看本站专题:《Python数学运算技巧总结》、《Python图片操作技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》及《Python入门与进阶经典教程

希望本文所述对大家Python程序设计有所帮助。

相关文章

Python中的延迟绑定原理详解

直接看下面例子 my_ld = [lambda x:x*i for i in range(3)] my_list = [ld(2) for ld in my_ld] print(my...

利用Python自带PIL库扩展图片大小给图片加文字描述的方法示例

利用Python自带PIL库扩展图片大小给图片加文字描述的方法示例

前言 最近的一个项目中需要在图片上添加文字,使用了OpenCV,结果发现利用opencv给图像添加文字有局限。可利用的字体类型比较少,需要安装Freetype扩展,比较复杂。而且不能用p...

python创建子类的方法分析

本文实例讲述了python创建子类的方法。分享给大家供大家参考,具体如下: 如果你的类没有从任何祖先类派生,可以使用object作为父类的名字。经典类的声明唯一不同之处在于其没有从祖先类...

python实现字符串加密 生成唯一固定长度字符串

背景 有时候爬虫爬过的url需要进行指纹核对,比如Scrapy就是进行指纹核对,如果是指纹重复则不再爬取。当然在入库的时候我还是需要做一次核对,否则如果爬虫有漏掉,进入数据库就不合适了。...

python内存监控工具memory_profiler和guppy的用法详解

python2.7在内存管理上相比python3还是有些坑的,其释放后的内存仍然保留在python的内存池中,不被系统所用。python循环引用的变量不会被回收,这会导致程序越运行,占用...