Как сделать координатное отображение в изменении размера изображения PIL (используйте BILINEAR)

Как сделать координатное отображение от изображения a m×n dst до изображения s ×b src в PIL.Image.resize(используйте BILINEAR)?

Я пытался (i,j)->(i*(a/m),j*(b/n)), но его результат сильно отличается от результата PIL.Image.resize

from PIL import Image
import numpy as np

test = np.asarray( [[10,20,30,40],
                    [20,30,40,50],
                    [30,40,50,60],
                    [40,50,60,70]] )
test_img = Image.fromarray(test)
test_img = test_img.convert('L')
test_img_33 = test_img.resize((3,3), resample=Image.BILINEAR)
print(np.asarray(test_img))
print(np.asarray(test_img_33))

Результат

[[10 20 30 40]
 [20 30 40 50]
 [30 40 50 60]
 [40 50 60 70]]
[[16 28 40]
 [28 40 52]
 [40 52 64]]

0 ответов

Другие вопросы по тегам