当前位置: 首页 > news >正文

windows11环境配置torch-points-kernels库编译安装详细教程

windows11环境配置torch-points-kernels库编译安装详细教程

文章目录

  • windows11环境配置torch-points-kernels库编译安装详细教程
  • 前言
  • 确定版本对应关系
  • 编译安装torch-points-kernels
  • 总结


前言

torch-points-kernels是一个专注于处理3D点云数据的 Python 库,特别是为PyTorch提供了高效的CPU和CUDA内核来执行空间搜索和插值操作:提供用 CUDA 编写的、高度优化的核心点云操作(主要是 FPS 和邻居搜索)的实现;作为底层引擎,显著加速点云深度学习模型中计算密集型的采样和邻域查询步骤,为构建更复杂、高效的点云深度学习框架(如 torch-points3d)提供基础支持。

加速关键点云操作:
最远点采样: 这是点云下采样中最常用且有效的算法之一;
邻居搜索:球查询给定一个查询点和半径,查找该半径球体内的所有邻居点;K 最近邻搜索查找距离查询点最近的 K 个邻居点。


确定版本对应关系

环境版本要求保持一致,本人的安装版本为:

VC2019+python 3.9 + pytorch 2.1.2 + cuda 11.8/cudnn 8.9.7.29

1.安装 生成工具2019
【Visual Studio安装配置教程】
MSVC v142 - VS 2029 C++ x86/64 生成工具(最新)
Windows 10 SDK

2.安装 CUDA Toolkit
【CUDA Toolkit安装配置教程】

 nvcc -V


假设已经在真实的物理机安装了其他版本的cuda和对应的cudnn,可以参考博主的博文【Windows下多版本CUD配置教程】。

3.anaconda虚拟环境配置
这个torch-points-kernels点云库需要安装许多库,如果在原来的环境进行的话会覆盖掉,所以最好新建一个环境。python最好选择3.7及以上,使用anaconda新建torch-points-kernels虚拟环境:

conda create -n torch-points-kernels python=3.9
activate torch-points-kernels

GPU版本torch官网,安装pytorch相关系列包以及其他第三方包:

# 分别安装pytorch和torchvision
pip install torch==2.1.2 torchvision==0.16.2 torchaudio==2.1.2 --index-url https://download.pytorch.org/whl/cu118# 通过阿里源安装,安装第三方包
pip install -i https://mirrors.aliyun.com/pypi/simple/ numba scikit-learn

注意:这里的Pytorch cuda版本与真实的物理机配置的cuda版本号(环境变量里配置的cuda)要对应。安装第三包只是为了测试使用,编译安装过程中用不到。


编译安装torch-points-kernels

下载torch-points-kernels源码

# 下载githup源代码到合适文件夹,并cd到代码文件夹内(科学上网)
git clone https://github.com/torch-points3d/torch-points-kernels.git --recursive
# 中途下载中断
git submodule update --init --recursive

以管理者身份打开"x64 Native Tools Command Prompt for VS 2019"终端(安装VS 2019),进入到torch-points-kernels的工程目录下,输入以下指令:

# 进入工程目录下
cd torch-points-kernels
# 激活虚拟环境
activate torch-points-kernels
# 启用Python的distutils模块使用Windows SDK进行编译
set DISTUTILS_USE_SDK=1
# 指示构建系统使用Microsoft SDK
set MSSdk=1
set CUDAFLAGS=-D_USE_MATH_DEFINES
# 构建Python的C/C++扩展模块并将生成的.pyd(Windows)或.so(linux)或.dylib(macOS)文件放在当前目录中,而不是默认的build文件夹。
python setup.py build_ext --inplace


注意:存在多版本的CUDA Toolkit时候,需要将环境变量Path中不需要的CUDA Toolkit失效:即删除路径或者简单修改成无效路径;否则会出现路径冲突或者找不到路径的情况。

# 用于运行当前目录下的单元测试脚本
python -m unittest


总结

尽可能简单、详细的介绍windows11环境配置torch-points-kernels库细教程。

http://www.dtcms.com/a/289887.html

相关文章:

  • 【前端】懒加载(组件/路由/图片等)+预加载 汇总
  • NJU 凸优化导论(10) Approximation+Projection逼近与投影的应用(完结撒花)
  • InfluxDB 数据模型:桶、测量、标签与字段详解(二)
  • springboot --大事件--文章管理接口开发
  • 简洁高效的C++终端日志工具类
  • 响应式编程入门教程第七节:响应式架构与 MVVM 模式在 Unity 中的应用
  • SEO中关于关键词分类与布局的方法有那些
  • 【实战1】手写字识别 Pytoch(更新中)
  • Codes 通过创新的重新定义 SaaS 模式,专治 “原教旨主义 SaaS 的水土不服
  • 一文速通《二次型》
  • 复盘与导出工具最新版V27.0版本更新-新增财联社涨停,自选股,表格拖拽功能
  • Agentic-R1 与 Dual-Strategy Reasoning
  • Raspi4 切换QNX系统
  • cmake语法学习笔记
  • 模电基础-开关电路和NE555
  • 【2025西门子信息化网络化决赛】模拟题+技术文档+实验vrrp standby vxlan napt 智能制造挑战赛 助力国赛!
  • Linux之conda安装使用
  • 【数据结构】栈和队列(接口超完整)
  • 实践教程:基于RV1126与ZeroTier的RTSP摄像头内网穿透与远程访问
  • InfluxDB 数据模型:桶、测量、标签与字段详解(一)
  • iptables -m connlimit导致内存不足
  • 数据存储方案h5py
  • jdk9 -> jdk17 编程方面的变化
  • Product Hunt 每日热榜 | 2025-07-20
  • Feign远程调用
  • LWJGL教程(2)——游戏循环
  • VMware中mysql无法连接端口3306不通
  • 暑假训练之动态规划---动态规划的引入
  • PrimeTime:高级片上变化(AOCV)
  • 1948. 删除系统中的重复文件夹