Delete 2-Colour-converter.py
This commit is contained in:
parent
d25e5bc800
commit
8a9fb1dc91
1 changed files with 0 additions and 104 deletions
|
@ -1,104 +0,0 @@
|
|||
#!/usr/bin/python
|
||||
# -*- coding: utf-8 -*-
|
||||
import glob, os, errno
|
||||
from PIL import Image
|
||||
import PIL.ImageOps
|
||||
|
||||
"""
|
||||
Python converter for converting png, jpeg and bmp to usable .bmp files which
|
||||
can be used by the E-Paper display. Currently, any image will be converted
|
||||
to pure white and pure black pixels, without any shades of grey, just as the
|
||||
displays expects them to be.
|
||||
|
||||
Tested and confired to work
|
||||
|
||||
Copyright by Ace-Laboratory
|
||||
"""
|
||||
#--------------only change the following two lines-----------------#
|
||||
input_folder = '/home/pi/conversion/input/'
|
||||
output_folder = '/home/pi/conversion/output/'
|
||||
#-----------------no need to change anything below----------------#
|
||||
|
||||
os.chdir(input_folder)
|
||||
|
||||
""" Creating lists with filenames first"""
|
||||
|
||||
pngs = []
|
||||
for files in glob.glob("*.png"):
|
||||
print('found this png: '+ os.path.splitext(os.path.basename(files))[0])
|
||||
pngs.append(os.path.splitext(os.path.basename(files))[0])
|
||||
|
||||
bmps = []
|
||||
for files in glob.glob("*.bmp"):
|
||||
print('found this bmp: ' files)
|
||||
bmps.append(files)
|
||||
|
||||
jpegs= []
|
||||
for files in glob.glob("*.jpeg"):
|
||||
print('found this jpeg: '+ os.path.splitext(os.path.basename(files))[0])
|
||||
jpegs.append(os.path.splitext(os.path.basename(files))[0])
|
||||
|
||||
print('converting the images now')
|
||||
|
||||
|
||||
"""Some variables first. It's required for reducing colours"""
|
||||
thresh = 126 # any value below 127 works.
|
||||
fn = lambda x : 255 if x > thresh else 0
|
||||
|
||||
""" Conversion is done in two steps:
|
||||
1) Converting the file from .png or .jpeg .bmp to a greyscale .bmp
|
||||
2) Inverting the colours and rotating the image 90° anticlockwise
|
||||
"""
|
||||
|
||||
|
||||
""" Step 1 conversion for png files"""
|
||||
if not os.path.exists(input_folder+'pngs/'):
|
||||
print('temporary png folder does not exist, creating now...')
|
||||
os.makedirs(input_folder+'pngs/')
|
||||
|
||||
print("attempting to convert pngs now...")
|
||||
for files in pngs:
|
||||
png=Image.open(input_folder+files+".png")
|
||||
png.load()
|
||||
background = Image.new("RGB", png.size, (255, 255, 255)) #removing alpha channel
|
||||
background.paste(png, mask=png.split()[3]) #removing alpha channel
|
||||
background.convert('L').point(fn, mode='1').save((input_folder+'pngs/'+files+'.bmp'), 'BMP', quality=90)
|
||||
|
||||
""" Step 2 conversion for png files"""
|
||||
png_bmp = []
|
||||
os.chdir(input_folder+'pngs/')
|
||||
for files in glob.glob("*.bmp"):
|
||||
png_bmp.append(files)
|
||||
for files in png_bmp:
|
||||
(PIL.ImageOps.invert((Image.open(input_folder+'pngs/'+files).rotate(-90, expand=True)).convert('L'))).save(output_folder+files)
|
||||
print("All png files have been converted.")
|
||||
|
||||
|
||||
os.chdir(input_folder)
|
||||
|
||||
""" Step 1 conversion for jpeg files"""
|
||||
if not os.path.exists(input_folder+'jpegs/'):
|
||||
print('temporary jpeg folder does not exist, creating now...')
|
||||
os.makedirs(input_folder+'jpegs/')
|
||||
|
||||
print("attempting to convert jpeg now...")
|
||||
|
||||
for files in jpegs:
|
||||
(Image.open(input_folder+files+".jpeg").convert('L').point(fn, mode='1').save((input_folder+'jpegs/'+files+".bmp"), 'BMP', quality=90))
|
||||
|
||||
""" Step 2 conversion for jpeg files"""
|
||||
|
||||
jpeg_bmp = []
|
||||
os.chdir(input_folder+'jpegs/')
|
||||
for files in glob.glob("*.bmp"):
|
||||
print('These :'+files)
|
||||
jpeg_bmp.append(files)
|
||||
for files in jpeg_bmp:
|
||||
(PIL.ImageOps.invert((Image.open(input_folder+'jpegs/'+files).rotate(-90, expand=True)).convert('L'))).save(output_folder+files)
|
||||
|
||||
|
||||
""" Step 1 & 2 conversion for bmp files"""
|
||||
for files in bmps:
|
||||
PIL.ImageOps.invert(Image.open(input_folder+files+".bmp").convert('L').point(fn, mode='1')).rotate(-90, expand=True).save((output_folder+files), 'BMP', quality=90)
|
||||
|
||||
print('All done')
|
Loading…
Reference in a new issue