當前位置: 首頁>>編程示例 >>用法及示例精選 >>正文


Python mxnet.ndarray.BilinearSampler用法及代碼示例

用法:

mxnet.ndarray.BilinearSampler(data=None, grid=None, cudnn_off=_Null, out=None, name=None, **kwargs)

參數

  • data(NDArray) - 將數據輸入到 BilinearsamplerOp。
  • grid(NDArray) - BilinearsamplerOp.grid 的輸入網格有兩個通道:x_src、y_src
  • cudnn_off(boolean or None, optional, default=None) - 是否關閉 cudnn
  • out(NDArray, optional) - 輸出 NDArray 來保存結果。

返回

out- 此函數的輸出。

返回類型

NDArray 或 NDArray 列表

將雙線性采樣應用於輸入特征圖。

雙線性采樣是[NIPS2015]“Spatial Transformer Networks”的關鍵。該算子的用法與OpenCV中的remap函數非常相似,隻不過該算子具有向後傳遞函數。

給定 ,則輸出由下式計算

, 枚舉 中的所有空間位置, 表示雙線性插值內核。邊界點將用零填充。輸出的形狀將是(data.shape[0]、data.shape[1]、grid.shape[2]、grid.shape[3])。

操作符假設 具有“NCHW”布局,並且 已標準化為 [-1, 1]。

BilinearSampler經常與GridGenerator配合,為BilinearSampler生成采樣網格。 GridGenerator 支持兩種轉換: affinewarp 。如果用戶想設計一個CustomOp來操作 ,請首先參考GridGenerator的代碼。

示例 1:

## Zoom out data two times
data = array([[[[1, 4, 3, 6],
                [1, 8, 8, 9],
                [0, 4, 1, 5],
                [1, 0, 1, 3]]]])

affine_matrix = array([[2, 0, 0],
                       [0, 2, 0]])

affine_matrix = reshape(affine_matrix, shape=(1, 6))

grid = GridGenerator(data=affine_matrix, transform_type='affine', target_shape=(4, 4))

out = BilinearSampler(data, grid)

out
[[[[ 0,   0,     0,   0],
   [ 0,   3.5,   6.5, 0],
   [ 0,   1.25,  2.5, 0],
   [ 0,   0,     0,   0]]]

示例 2:

## shift data horizontally by -1 pixel

data = array([[[[1, 4, 3, 6],
                [1, 8, 8, 9],
                [0, 4, 1, 5],
                [1, 0, 1, 3]]]])

warp_maxtrix = array([[[[1, 1, 1, 1],
                        [1, 1, 1, 1],
                        [1, 1, 1, 1],
                        [1, 1, 1, 1]],
                       [[0, 0, 0, 0],
                        [0, 0, 0, 0],
                        [0, 0, 0, 0],
                        [0, 0, 0, 0]]]])

grid = GridGenerator(data=warp_matrix, transform_type='warp')
out = BilinearSampler(data, grid)

out
[[[[ 4,  3,  6,  0],
   [ 8,  8,  9,  0],
   [ 4,  1,  5,  0],
   [ 0,  1,  3,  0]]]

相關用法


注:本文由純淨天空篩選整理自apache.org大神的英文原創作品 mxnet.ndarray.BilinearSampler。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。