use Pillow instead of PIL