Minkowski坐标管理
Minkowski坐标管理
坐标键
classMinkowskiEngine.CoordsKey(D)
init(D)
初始化self. See help(type(self))有关准确的签名。
getKey()
getTensorStride()
isKeySet()
setKey(key)
setTensorStride(tensor_stride)
坐标管理器
Class MinkowskiEngine.CoordsManager(num_threads : int = -1,memory_manager_backend : MinkowskiEngineBackend.MemoryManagerBackend = None,D : int = -1)
init(num_threads : int = -1,memory_manager_backend : MinkowskiEngineBackend.MemoryManagerBackend = None,D : int = -1)
初始化self. See help(type(self))有关准确的签名。
create_coords_key(COORDS : torch.IntTensor,tensor_stride : INT = 1,force_creation : BOOL = False,force_remap : BOOL = False,allow_duplicate_coords : BOOL = False) → MinkowskiCoords.CoordsKey
get_batch_indices()
get_batch_size()
get_coords(coords_key_or_tensor_strides)
get_coords_map(in_key_or_tensor_strides,out_key_or_tensor_strides)
提取映射到输出坐标索引的输入坐标索引。
sp_tensor = ME.SparseTensor(features, coords=coordinates)
out_sp_tensor = stride_2_conv(sp_tensor)
cm = sp_tensor.coords_man
cm = out_sp_tensor.coords_man # doesn’t matter which tensor you pick
ins, outs = cm.get_coords_map(1, # in stride
2) # out stride
for i, o in zip(ins, outs):
print(f"{i} -> {o}")
get_coords_size_by_coords_key(coords_key)
get_kernel_map(in_key_or_tensor_strides,out_key_or_tensor_strides,stride = 1,kernel_size = 3,dilation = 1,region_type = 0,region_offset = None,is_transpose = False,is_pool = False,on_gpu = False)
获取指定坐标键或张量stride的内核出入映射。
get_mapping_by_tensor_strides(in_tensor_strides,out_tensor_strides)
get_row_indices_at(coords_key,batch_index)
返回指定批处理索引的torch.LongTensor行索引
sp_tensor = ME.SparseTensor(features, coords=coordinates)
row_indices = sp_tensor.coords_man.get_row_indices_at(sp_tensor.coords_key, batch_index)
get_row_indices_per_batch(coords_key,out_coords_key =None)
返回每个批次的行索引List。
相应的批处理索引可通过get_batch_indices访问。
sp_tensor = ME.SparseTensor(features, coords=coordinates)
row_indices = sp_tensor.coords_man.get_row_indices_per_batch(sp_tensor.coords_key)
get_union_map(in_keys : List[ MinkowskiCoords.CoordsKey ],out_key : MinkowskiCoords.CoordsKey)
生成坐标集的并集,并将映射从输入集返回到新的输出坐标。
精氨酸:
in_keys (List [CoordsKey]):在其上创建并集的坐标键List。
out_key (CoordsKey):生成的并列坐标散列图的坐标键的占位符。
返回值:
in_maps(List [Tensor [int]]):长张量的List,其中包含从输入到联合输出的映射。请参阅示例以获取更多详细信息。 out_maps(List [Tensor [int]]):长张量的List,其中包含从输入到联合输出的映射。请参阅示例以获取更多详细信息。
例:
Adding two sparse tensors: A, B
out_key = CoordsKey(coords_man.D)
ins, outs = coords_man.get_union_map((A.coords_key, B.coords_key), out_key)
N = coords_man.get_coords_size_by_coords_key(out_key)
out_F = torch.zeros((N, A.F.size(1)), dtype=A.dtype)
out_F[outs[0]] = A.F[ins[0]]
out_F[outs[1]] += B.F[ins[1]]
initialize(COORDS : torch.IntTensor,coords_key : MinkowskiCoords.CoordsKey,force_creation : BOOL = False,force_remap : BOOL = False,allow_duplicate_coords : BOOL = False,return_inverse : BOOL = False) →torch.LongTensor
permute_label(label,max_label,target_tensor_stride,label_tensor_stride = 1)
print_diagnostics(coords_key : MinkowskiCoords.CoordsKey)
reduce()
set_origin_coords_key(coords_key : MinkowskiCoords.CoordsKey)
stride(coords_key : MinkowskiCoords.CoordsKey,stride: Union [ int , collections.abc.Sequence , numpy.ndarray , Torch.Tensor ],force_creation : bool = False)
transposed_stride(coords_key : MinkowskiCoords.CoordsKey,stride: Union [ int , collections.abc.Sequence , numpy.ndarray , torch.Tensor ],kernel_size : Union [ int , collections.abc.Sequence , numpy.ndarray , torch.Tensor ],dilation: Union [ int , collections.abc.Sequence , numpy.ndarray , Torch.Tensor ],force_creation : bool = False)
坐标GPU内存管理器
classMinkowskiEngine.MemoryManagerBackend
Members:
CUDA
PYTORCH
property name
(self: handle) -> str
MinkowskiEngine.MinkowskiCoords.set_memory_manager_backend(backend: MinkowskiEngineBackend.MemoryManagerBackend)
设置GPU内存管理器后端
默认情况下,Minkowski引擎将使用pytorch内存池分配临时GPU内存插槽。这使pytorch后端可以有效地重用pytorch后端和Minkowski引擎之间共享的内存池。给定固定的GPU内存,它倾向于允许以较大的批处理量进行训练。但是,pytorch内存管理器往往比直接使用原始CUDA调用分配GPU慢。
默认情况下,Minkowski引擎 ME.MemoryManagerBackend.PYTORCH用于内存管理。
例:import MinkowskiEngine as ME
Set the GPU memory manager backend to raw CUDA calls
ME.set_memory_manager_backend(ME.MemoryManagerBackend.CUDA)
Set the GPU memory manager backend to the pytorch memory pool
ME.set_memory_manager_backend(ME.MemoryManagerBackend.PYTORCH)
Minkowski坐标管理相关推荐
- 如何在WorkNC中快速建立坐标管理器
点击"刀具路径"下"MACHINE POSITION" 点击"加工坐标系"下"NEW.ucs1"-"新建&qu ...
- allegropcb怎么导出成cad_私藏技巧分享!CAD中的表格坐标快速输出成Excel!
我们在测量放样过程中,会遇到很多点的坐标需要输入到手簿里面,如果坐标文件是Excel表格.txt文本文档.Word或者dat文件都还好说,但如果遇见CAD里面的表格坐标文件就会很麻烦了,如图1所示,相 ...
- 已知坐标求方位角_【干货】RTK视频实操 | 求转换参数详解和七点注意事项!
RTK视频教学,『求转换参数』,技术员结合测量一线实操经验,运用工程之星5.0软件为大家讲解如何求转换参数,以及求转换参数需要注意哪些事项. 求转换参数操作 通常情况下,科力达工程之星直接输出的坐标为 ...
- 南方h5手簿求转换参数_工程之星、 gps操作、RTK求转换参数操作步骤
二.移动站 移动站开机后,接收到基准站电台信号,STA灯和DL灯以发射间隔均匀闪烁. 工程之星操作步骤: 1. 打开工程之星,路径:我的电脑→FLASH DISK→STEUP→工程之星3.0(根据应用 ...
- UE4角色Location远距离时动画抖动问题(float精度不够)解决方案
正题:关于UE4引擎当角色Location超过9999.999后,角色动画更新抖动问题的解决思路. 前提: 1.UE4引擎中距离单位是厘米(cm),也就说我们制作好1.8米的角色在UE4中为180个虚 ...
- oem718d 基准站设置_RTK电台、网络模式作业设置流程
RTK作业的简要流程 仪器架设 完成基准站和移动站硬件架设与配置,搭建作业的硬件环境. 新建工程 创建工程,配置参数.坐标等基础信息,完成作业所需的数据基础. 求转换参数 匹配工程所需平面坐标和默认经 ...
- 5 随窗口改变大小_C4D默认界面两个关于坐标轴的窗口有什么区别
前言 在一开始学习C4D的时候,就有这个疑问,为什么明明物体的属性都有了一个坐标属性的窗口了,还要有一个和坐标相关的窗口在默认的界面呢,后边在使用的过程中才慢慢理解了额外的坐标管理器窗口的作用,这一篇 ...
- Maven入门指南:仓库
转载http://www.cnblogs.com/luotaoyeah/p/3785044.html 1 . 仓库简介 没有 Maven 时,项目用到的 .jar 文件通常需要拷贝到 /lib 目录, ...
- 爱奇艺埋点投递治理实践
9月26日下午,爱奇艺技术产品团队举办了第19期"i技术会",本次技术会的主题是"数据治理探索与应用",来自快手.美团.快看的几位资深专家同大家就相关议题进行了 ...
最新文章
- Algorithm:C++语言实现之图论算法相关(图搜索广度优先BFS、深度优先DFS,最短路径SPF、带负权的最短路径Bellman-ford、拓扑排序)
- 跨域资源共享(CORS)--跨域ajax
- 如何打造组织级敏捷,你想知道的都在这里!
- 求职华为,被问观察者模式,从没有这种体验!!!
- CompletableFuture详解~thenApply
- android音乐进度条设计代码,【Android】Android开发实现进度条效果,SeekBar的简单使用。音量,音乐播放进度,视频播放进度等...
- Careercup - Microsoft面试题 - 5752271719628800
- 【Java】利用Swing实现登录页面
- debian php mysql 安装_debian 安装mysql或者php出问题
- c语言用数字定义字符串,c语言怎么定义数字字符串 c语言怎么把数字字符定义字符串...
- Log4j自定义日志级别
- 【水】java试手—poj 2387
- 正则表达式/Calendar/集合/迭代器
- word页眉页脚,奇偶不同
- 研究生如何写好毕业论文?(上)【中国人民大学龚新奇】
- 网易资深安卓架构师:2021年Android常见面试题,面试必问
- 基于诱捕的软件异常检测综述
- Python如何打印彩色文本,代码瞬间高大上【深度好文,果断收藏】
- 在线Cron表达式解析工具使用说明
- 医院虚拟化系统安全防护解决方案
热门文章
- Java Calendar.add()方法的使用,参数含义。指定时间差。
- 2021-2027年中国透明熔融石英管行业市场全景调查及投资前景分析报告
- iloc loc 区别
- python究竟要不要使用多线程
- LeetCode简单题之三角形的最大周长
- ARM CPU神经网络自动调度
- MinkowskiPooling池化(下)
- AlexeyAB DarkNet YOLOv3框架解析与应用实践(二)
- Could not get unknown property ‘compileSdkVersion‘ for project
- Android TextView 在strings 里面 实现换行