MCPcopy Create free account
hub / github.com/TRI-ML/dd3d / aligned_bilinear

Function aligned_bilinear

tridet/utils/tensor2d.py:28–47  ·  view source on GitHub ↗

Adapted from AdelaiDet: https://github.com/aim-uofa/AdelaiDet/blob/master/adet/utils/comm.py

(tensor, factor, offset="none")

Source from the content-addressed store, hash-verified

26
27
28def aligned_bilinear(tensor, factor, offset="none"):
29 """Adapted from AdelaiDet:
30 https://github.com/aim-uofa/AdelaiDet/blob/master/adet/utils/comm.py
31 """
32 assert tensor.dim() == 4
33 assert factor >= 1
34 assert int(factor) == factor
35
36 if factor == 1:
37 return tensor
38
39 h, w = tensor.size()[2:]
40 tensor = F.pad(tensor, pad=(0, 1, 0, 1), mode="replicate")
41 oh = factor * h + 1
42 ow = factor * w + 1
43 tensor = F.interpolate(tensor, size=(oh, ow), mode='bilinear', align_corners=True)
44 if offset == "half":
45 tensor = F.pad(tensor, pad=(factor // 2, 0, factor // 2, 0), mode="replicate")
46
47 return tensor[:, :, :oh - 1, :ow - 1]

Callers 1

forwardMethod · 0.90

Calls

no outgoing calls

Tested by

no test coverage detected