from PIL import Image
import numpy
class RGBAPacker(object):
def process(self, output_file, inputs=None):
# -- we assume "inputs" is a dictionary of image files, with the keys corresponding to the channels they want packing in.
inputs = inputs or dict()
r = Image.open(inputs.get('mask1')).convert('L')
g = Image.open(inputs.get('mask2')).convert('L')
# -- our procedurally generated blue channel is the multiplied result of the first and second masks.
# -- This is a super simple operation, but you can make this as complex as you like.
b = numpy.asarray(r) * numpy.asarray(g)
b = Image.fromarray(b)
output = Image.merge('RGB', r, g, b)
output.save(output_file)
Preview:
downloadDownload PNG
downloadDownload JPEG
downloadDownload SVG
Tip: You can change the style, width & colours of the snippet with the inspect tool before clicking Download!
Click to optimize width for Twitter