File size: 505 Bytes
c295391
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
import numpy as np
import torch
"""array_shape (rows, cols)

ind = row * cols + col

"""
def ind2coords(array_shape, ind):
    row = torch.div(ind, array_shape[1], rounding_mode='trunc')
    col = ind % array_shape[1] # or numpy.mod(ind.astype('int'), array_shape[1])
    coords = torch.zeros((1, 1, len(ind), 2), dtype=torch.float32)
    coords[:, :, :, 1] = 2 * row.to(torch.float32) / array_shape[0] - 1
    coords[:, :, :, 0] = 2 * col.to(torch.float32) / array_shape[1] - 1
    return coords