Запрос изображения с билинейной интерполяцией, т.е. найти значение RGB в дробных координатах с помощью Pytorch - PullRequest
1 голос
/ 02 апреля 2019

У меня есть вход T1 размера (1,256,256,3), т.е. изображения / сетка размера партии 1. У меня есть другой тензор T2 размера (1, N, 2), т.е. тензор, состоящий из координат, т.е. [[10.5, 200.787][150.568, 190.456],…].Как вычислить функциональные значения (используя билинейную интерполяцию) координат в T2 из данных T1?

Спасибо за любую помощь

Я протестировал ту же функциональность, используя тензор потока с функцией "tf.contrib.resampler.resampler "

1 Ответ

1 голос
/ 03 апреля 2019

попробуйте grid_sample:

torch.nn.functional.grid_sample(input, grid, mode='bilinear', padding_mode='zeros')

С учетом входных данных и сетки поля потока вычисляет выходные данные с использованием входных значений и местоположений в пикселях из сетки.

Для каждого выходного местоположения вывод [n,:, h, w] , вектор размера 2 сетка [n, h, w] определяет местоположения входных пикселей x и y, которые используются для интерполяции выходного выходного значения [n,:, h, w]. mode аргумент указывает метод ближайшей или билинейной интерполяции для выборки входных пикселей.

координата должна находиться в диапазоне [- 1, 1] . Это связано с тем, что положения пикселей нормализуются входными пространственными измерениями.

пример сэмплера git
документация по pytorch

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...