MinkowskiEngine實用函式和類

2021-10-13 20:51:57 字數 3095 閱讀 3830

minkowskiengine實用函式和類

sparse_quantize

minkowskiengine.utils.sparse_quantize(coords, feats=none, labels=none, ignore_label=- 100, return_index=false, return_inverse=false, quantization_size=none)

給定座標和特徵(optional的標籤),函式將生成量化(體素化)座標。

args:

coords(numpy.ndarray或torch.tensor): n×d矩陣大小 ,其中 n 是點數 ,d是維數空間。

feats(numpy.ndarray或torch.tensor,optional):大小矩陣n×df ,其中 n 是點數, df是特徵的尺寸。必須與coords具有相同的容器(即,如果coords是torch.tensor,則feats 也必須是torch.tensor)。

labels(numpy.ndarray或torch.inttensor,optional):與eah座標關聯的整數標籤。必須與coords具有相同的容器(即,如果coords是torch.tensor,則 標籤也必須是torch.tensor)。對於將一組點對映到乙個標籤的分類,請勿輸入標籤。

ignore_label(int,optional):ignore label的int值。 torch.nn.crossentropyloss(ignore_index=ignore_label)

return_index(bool,optional):如果需要量化座標的索引,則設定true。預設為false。

return_inverse(bool,optional):如果希望索引可以恢復離散化的原始座標,則將其設定為true。預設為false。當return_reverse為true時,return_index必須為true。

例:

unique_map, inverse_map = sparse_quantize(discrete_coords, return_index=true, return_inverse=true)

unique_coords = discrete_coords[unique_map]

print(unique_coords[inverse_map] == discrete_coords) # true

quantization_size(float,list或 numpy.ndarray,optional):網格單元的超矩形各邊的長度。

例:

criterion = torch.nn.crossentropyloss(ignore_index=-100)

coords, feats, labels = minkowskiengine.utils.sparse_quantize(

coords, feats, labels, ignore_label=-100, quantization_size=0.1)

output = net(minkowskiengine.sparsetensor(feats, coords))

loss = criterion(output.f, labels.long())

data_loader = torch.utils.data.dataloader(

dataset,

…,collate_fn=sparsecollation())

for d in iter(data_loader):

print(d)

init(limit_numpoints = -1)

初始化self. see help(type(self))有關準確的簽名。

get_coords_map

minkowskiengine.utils.get_coords_map(x,y)

獲取稀疏張量1和稀疏張量2之間的對映。

args:

x(minkowskiengine.sparsetensor):x.tensor_stride <= y.tensor_stride的稀疏張量 。

y(minkowskiengine.sparsetensor):x.tensor_stride <= y.tensor_stride的稀疏張量 。

返回值:

x_indices(torch.longtensor):x的索引與返回的y索引相對應。

x_indices(torch.longtensor):y的索引,它對應於返回的x的索引。

例:… code-block:: python

sp_tensor = me.sparsetensor(features, coords=coordinates)

out_sp_tensor = stride_2_conv(sp_tensor)

ins, outs = get_coords_map(sp_tensor, out_sp_tensor)

for i, o in zip(ins, outs):

print(f" -> ")

catminkowskiengine.cat(* sparse_tensors)

級聯稀疏張量

連線稀疏張量特徵。所有稀疏張量必須具有相同的 coords_key(相同的座標)。要連線具有不同稀疏性模式的稀疏張量,請使用sparsetensor二進位制運算或 minkowskiengine.minkowskiunion。

例:

import minkowskiengine as me

sin = me.sparsetensor(feats, coords)

sin2 = me.sparsetensor(feats2, coords_key=sin.coords_key, coords_man=sin.coords_man)

sout = unet(sin) # returns an output sparse tensor on the same coordinates

sout2 = me.cat(sin, sin2, sout) # can concatenate multiple sparse tensors

實用函式 define

define 此函式是定義乙個常量。語法 define name,value,case insensitive name 常量名 是必有的函式,用來定義常量名。value 常量的值 是必有的函式,用來指定常量的值。case insensitive 指定常量的名稱是否是不區分大小寫的 可選引數。如果設...

實用內建函式

dir obj 顯示物件的屬性,如果沒有提供引數,則顯示全域性變數的名字 help obj 以一種整齊美觀的形式 顯示物件的文件字串,如果沒有提供任何引數,則會進入互動式幫助。int obj 將乙個物件轉換為整數 len obj 返回物件的長度 open fn,mode 以 mode r 讀,w 寫...

彙編 實用函式

目錄 1.換行 2.輸入字串 3.輸出字串 4.十進位制輸出 5.十六進製制輸出 6.氣泡排序 7.輸出空格 8.延時 9.1.backenter proc near mov dl,0ah 回車換行 mov ah,2 int 21h mov dl,0dh mov ah,2 int 21h retba...