Выполните в методе сохранения
from PIL import Image
class photo(models.Model):
title = models.CharField(max_length=100)
uploader = models.ForeignKey(
settings.AUTH_USER_MODEL, on_delete=models.CASCADE, null=True)
image_url = models.ImageField(upload_to='images/', null=True)
def save(self, *args, **kwargs):
instance = super(photo, self).save(*args, **kwargs)
img = Image.open(instance.image_url.path)
img.save(instance.image_url.path,quality=20,optimize=True)
return instance
Флаг 'оптимизировать' максимально уменьшит его размер.