@@ -169,6 +169,7 @@ class Resampling(IntEnum):
169
169
HAMMING = 5
170
170
BICUBIC = 3
171
171
LANCZOS = 1
172
+ MKS2021 = 6
172
173
173
174
174
175
_filters_support = {
@@ -177,6 +178,7 @@ class Resampling(IntEnum):
177
178
Resampling .HAMMING : 1.0 ,
178
179
Resampling .BICUBIC : 2.0 ,
179
180
Resampling .LANCZOS : 3.0 ,
181
+ Resampling .MKS2021 : 4.5 ,
180
182
}
181
183
182
184
@@ -2242,6 +2244,7 @@ def resize(
2242
2244
Resampling .LANCZOS ,
2243
2245
Resampling .BOX ,
2244
2246
Resampling .HAMMING ,
2247
+ Resampling .MKS2021 ,
2245
2248
):
2246
2249
msg = f"Unknown resampling filter ({ resample } )."
2247
2250
@@ -2254,6 +2257,7 @@ def resize(
2254
2257
(Resampling .BICUBIC , "Image.Resampling.BICUBIC" ),
2255
2258
(Resampling .BOX , "Image.Resampling.BOX" ),
2256
2259
(Resampling .HAMMING , "Image.Resampling.HAMMING" ),
2260
+ (Resampling .MKS2021 , "Image.Resampling.MKS2021" ),
2257
2261
)
2258
2262
]
2259
2263
msg += f" Use { ', ' .join (filters [:- 1 ])} or { filters [- 1 ]} "
@@ -2904,11 +2908,12 @@ def __transformer(
2904
2908
Resampling .BILINEAR ,
2905
2909
Resampling .BICUBIC ,
2906
2910
):
2907
- if resample in (Resampling .BOX , Resampling .HAMMING , Resampling .LANCZOS ):
2911
+ if resample in (Resampling .BOX , Resampling .HAMMING , Resampling .LANCZOS , Resampling . MKS2021 ):
2908
2912
unusable : dict [int , str ] = {
2909
2913
Resampling .BOX : "Image.Resampling.BOX" ,
2910
2914
Resampling .HAMMING : "Image.Resampling.HAMMING" ,
2911
2915
Resampling .LANCZOS : "Image.Resampling.LANCZOS" ,
2916
+ Resampling .MKS2021 : "Image.Resampling.MKS2021" ,
2912
2917
}
2913
2918
msg = unusable [resample ] + f" ({ resample } ) cannot be used."
2914
2919
else :
0 commit comments