pytorch3d、Detectron2编译安装

基础环境:

python:3.6

ubuntu:18.04

pytorch:1.8

cuda:10.2

一、pytorch3d编译

官方指南 GitCode - 开发者的代码家园

注意:cuda11以下的版本,需要安装CUB libaray,cuda11以上的版本跳过此步骤。

复制代码
conda install -c bottler nvidiacub

或通过源码方式安装:

复制代码
curl -LO https://github.com/NVIDIA/cub/archive/1.10.0.tar.gz
tar xzf 1.10.0.tar.gz

配置CUB_HOME环境变量:

复制代码
vim ~/.bashrc
# 注意将/home/bdlf/cub-1.10.0替换为对应的CUB包路径
export CUB_HOME=/home/bdlf/cub-1.10.0
# 更新一下
source ~/.bashrc

1、安装依赖:

复制代码
conda install -c fvcore -c iopath -c conda-forge fvcore iopath

2、pytorch3d源码下载

根据自己环境,选择对应版本pytorch3d,这里选择V0.5.0。

3、编译

复制代码
cd pytorch3d
pip install -e .

第一次在python3.8虚拟环境中采用上述方式顺利通过编译,但第二次更换python3.6环境后,一直编译失败,很是无语,望知道的小伙伴可以解答一下~~

参考链接 Pytorch3D Linux环境下安装(踩坑)记录_pytorch_帕斯卡多-华为云开发者联盟

二、Detectron2编译

参考链接 Github 项目 - detectron2 安装与简单使用 - AI备忘录

Detectron2下载地址 https://download.csdn.net/download/WXG1011/89076387

我的GCC为7.5.0,但python为3.6,采用python -m pip install -e .安装提示ERROR: Package 'detectron2' requires a different Python: 3.6.7 not in '>=3.7',故采用python setup.py build develop,在编译过程中会出现包缺失或版本冲突的问题,直接pip安装丢失的包,再重新编译,重新编译时需删除Detectron2文件夹下的build文件。

编译成功提示:

复制代码
Using /home/bdlf/.local/lib/python3.6/site-packages
Finished processing dependencies for detectron2==0.6

测试:

复制代码
(py36) bdlf@bdlf-desktop:~/detectron2$ python
Python 3.6.7 | packaged by conda-forge | (default, Jan  7 2019, 02:49:06)
[GCC 7.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import detectron2
>>>

API文档 Installation --- detectron2 0.6 documentation

相关推荐
橙露4 小时前
数据特征工程:缺失值、异常值、标准化一站式解决方案
人工智能·机器学习
新加坡内哥谈技术4 小时前
OpenAI 的 Codex 团队如何工作并利用 AI
人工智能
星河耀银海4 小时前
人工智能大模型的安全与隐私保护:技术防御与合规实践
人工智能·安全·ai·隐私
love530love5 小时前
Scoop 完整迁移指南:从 C 盘到 D 盘的无缝切换
java·服务器·前端·人工智能·windows·scoop
njsgcs5 小时前
agentscope提取msg+llama_index 查询
人工智能
哈里谢顿5 小时前
Django 应用 OOM(Out of Memory)故障的定位思路和排查方法
python·django
小和尚同志5 小时前
什么?oh-my-opencode 太重了?那试试 oh-my-opencode-slim
人工智能·aigc
甄心爱学习5 小时前
【python】获取所有长度为 k 的二进制字符串
python·算法
一路往蓝-Anbo6 小时前
第 9 章:Linux 设备树 (DTS) ——屏蔽与独占外设
linux·运维·服务器·人工智能·stm32·嵌入式硬件
飞哥数智坊6 小时前
把模型焊死在芯片上,就能跑出 17,000 tokens/秒?这是一条死路,还是一条新路?
人工智能