Jetson AGX Xavier安装Archiconda虚拟环境管理器与在虚拟环境中调用opencv

上一篇:Jetson AGX Xavier使用jtop

下一篇:Jetson AGX Xavier安装Pycharm

一、前言

        我们在做深度学习项目时,一个完整独立的环境相当重要。不同的项目开发中,我们通常会根据自己的需求去下载各种相应的框架库,但是可能每个项目使用的框架库并不一样,或使用框架的版本不一样,这个时候一个虚拟环境管理器就显得十分重要。

        在Windows或者Ubuntu系统一般都使用anaconda作为虚拟环境管理器,但是由于jetson系列的产品核心是基于ARM框架的,无法安装acoconda。网上也有很多方法,比如pyenv+pyenv-virtualenv,virtualenv+virtualenvwrappe等。这次主要介绍GitHub大佬发布的archiconda,并且介绍在虚拟环境调用已经安装好的opencv。

二、下载与安装、使用

        1、进入Archiconda的GitHub仓库下载Archiconda3-0.2.3-Linux-aarch64.sh。这个项目在2019年就已经停止维护了,所以很多功能并不能跟上如今的anaconda,但是基本功能完全能满足。

       2、 打开终端输入如下指令,在安装过程中,是否添加到环境变量那里我选的yes,其他默认安装即可。

sh Archiconda3-0.2.3-Linux-aarch64.sh

         3、(可选)为了不让进入终端时的环境是base环境我们需要打开.bashrc文件,在conda的环境变量中注释“conda activate base”代码。

# added by Archiconda3 0.2.3 installer
# >>> conda init >>>
# !! Contents within this block are managed by 'conda init' !!
__conda_setup="$(CONDA_REPORT_ERRORS=false '/home/jetson/archiconda3/bin/conda' shell.bash hook 2> /dev/null)"
if [ $? -eq 0 ]; then
    \eval "$__conda_setup"
else
    if [ -f "/home/jetson/archiconda3/etc/profile.d/conda.sh" ]; then
        . "/home/jetson/archiconda3/etc/profile.d/conda.sh"
        CONDA_CHANGEPS1=false #conda activate base
    else
        \export PATH="/home/jetson/archiconda3/bin:$PATH"
    fi
fi
unset __conda_setup
# <<< conda init <<<

 三、虚拟环境中调用opencv

       Archiconda的使用与Anaconda相同,这里不再赘述。 我们使用Archiconda创建了虚拟环境后,进入创建的虚拟环境python。输入“import cv2”时发现没有包。

Jetson AGX Xavier安装Archiconda虚拟环境管理器与在虚拟环境中调用opencv_第1张图片

        此时我们只需找到 /usr/lib/python3.6/dist-packages/cv2/python-3.6路径下的cv2.cpython-36m-aarch64-linux-gnu.so文件,复制到路径/home/jetson/archiconda3/envs/tf-gpu/lib/python3.6文件夹下即可。注意:虚拟环境的路径每个人都不同,自行修改!

sudo cp /usr/lib/python3.6/dist-packages/cv2/python-3.6/cv2.cpython-36m-aarch64-linux-gnu.so /home/jetson/archiconda3/envs/tf-gpu/lib/python3.6

        执行命令之后我们再次导入opencv库,成功。

Jetson AGX Xavier安装Archiconda虚拟环境管理器与在虚拟环境中调用opencv_第2张图片

四、总结

        Archiconda在Xavier中使用十分方便,可行。但是,也有一个缺点就是会出现通过指令无法删除所创造环境的情况,此时我们需要到envs文件夹下将创建的环境整个文件夹删除。

        可能不同的设备cv2.cpython-36m-aarch64-linux-gnu.so文件所处的位置不同,大家通过安装专门的搜索工具搜寻即可。复制到的路径可能也有不同,需要自行理解去修改成自己的。这里如果有问题可以私聊我,一定知无不言。

五、参考文章

NVIDIA AGX Xavier环境配置

你可能感兴趣的:(Jetson,AGX,Xavier系列,深度学习)