src/platform/python/cinema/__init__.py (view raw)
1from PIL.ImageChops import difference
2from PIL.ImageOps import autocontrast
3from PIL.Image import open as PIOpen
4
5
6class VideoFrame(object):
7 def __init__(self, pil_image):
8 self.image = pil_image.convert('RGB')
9
10 @staticmethod
11 def diff(a, b):
12 diff = difference(a.image, b.image)
13 diff_normalized = autocontrast(diff)
14 return (VideoFrame(diff), VideoFrame(diff_normalized))
15
16 @staticmethod
17 def load(path):
18 with open(path, 'rb') as f:
19 image = PIOpen(f)
20 image.load()
21 return VideoFrame(image)
22
23 def save(self, path):
24 return self.image.save(path)