Python之修改图片像素值的方法

yipeiwu_com5年前Python基础

在做语义分割项目时,标注的图片不合标准,而且类型是RGBA型,且是A的部分表示的类别,因此需要将该图片转化为RGB图片

# -*- coding:utf8 -*-
import os
 
from PIL import Image
im = Image.open('123.png')#打开图片
pix = im.load()#导入像素
width = im.size[0]#获取宽度
height = im.size[1]#获取长度
 
for x in range(width):
  for y in range(height):
    r,g,b,a = im.getpixel((x,y))	
    rgba=(r,g,b,a)
    if(a==0):
      im.putpixel((x,y),(0,0,0,0))
    if(a==255):
      im.putpixel((x,y),(255,255,255,255))
 
im = im.convert('RGB')
im.save('456.png')

批量处理的方法

# -*- coding:utf8 -*-
import os
from PIL import Image
 
path = 'SegmentationClass(RGBA)/'
savedpath = 'SegmentationClass/'
filelist = os.listdir(path)
for item in filelist:
  im = Image.open( path + item )#打开图片
  width = im.size[0]#获取宽度
  height = im.size[1]#获取长度
 
  for x in range(width):
    for y in range(height):
      r,g,b,a = im.getpixel((x,y))	
      if(a==0):
        im.putpixel((x,y),(0,0,0,0))
      if(a==255):
        im.putpixel((x,y),(255,255,255,255))
  im = im.convert('RGB')
  im.save(savedpath + item)
  print('item of %s is saved '%(item))
 

以上这篇Python之修改图片像素值的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

解决Python requests 报错方法集锦

python版本和ssl版本都会导致 requests在请求https网站时候会出一些错误,最好使用新版本。 1 Python2.6x use requests 一台老Centos机器上...

利用django-suit模板添加自定义的菜单、页面及设置访问权限

前言 本文主要给大家介绍了利用django-suit模板在管理后台添加自定义的菜单和自定义的页面、设置访问权限的相关内容,分享出来供大家参考学习,下面话不多说了,来随着小编一起看看详细的...

Python读写Redis数据库操作示例

使用Python如何操作Redis呢?下面用实例来说明用Python读写Redis数据库。比如,我们插入一条数据,如下:复制代码 代码如下:import redisclass Datab...

python文件操作的简单方法总结

文件操作1 #文件操作流程:1、打开文件,得到一个文件句柄;通过文件句柄操作文件;关闭文件。 #将文件打开文件赋给file1,test_file为文件名,utf-8为文件编码;fil...

Python3使用PyQt5制作简单的画板/手写板实例

Python3使用PyQt5制作简单的画板/手写板实例

1.前言 版本:Python3.6.1 + PyQt5 写一个程序的时候需要用到画板/手写板,只需要最简单的那种。原以为网上到处都是,结果找了好几天,都没有找到想要的结果。 网上的要么是...