def smoothen_pillow(i: Image, f: int = 4): w, h = i.width, i.height assert w % f == 0 assert h % f == 0 i = i.resize((w // f, h // f), resample=BILINEAR) i = i.resize((w, h), resample=BILINEAR) return i
PIL.Image.Image.resize(..., method=BILINEAR)
F.interpolate(..., align_corners=False, antialias=True)
F.interpolate(..., align_corners=False, antialias=True)
![]() |
|
PIL vs interpolate(no align, AA)
F.interpolate(..., align_corners=True, antialias=True)
F.interpolate(..., align_corners=True, antialias=True)
![]() |
|
F.interpolate(..., align_corners=True, antialias=False)
F.interpolate(..., align_corners=True, antialias=False)
![]() |
|
resize_right.resize
resize_right.resize
![]() |
|
F.interpolate(..., align_corners=False, antialias=True)
PIL.Image.Image.resize(..., method=BILINEAR)
interpolate vs PIL
What does torch
actually use?
HelperInterpLinear::aa_filter
…