§ 1.4 pyorbbecsdk源码编译 (Ubuntu)
0. 概要
本文讲解了在Ubuntu平台下编译pyorbbecsdk的详细流程。
建议直接使用编译好的
Python 3.10
版本的pyorbbecsdk动态链接库,如无必要不要自己编译。目前
Ubuntu 20.04
与
Ubuntu 22.04
最新版使用的都是
Python 3.10
了。
1. 下载pyorbbecsdk源码
-
Python SDK下载
代码仓库:
压缩包里面还有pyorbbecsdk的测试样例。
没有预先编译好的动态链接库,需要自己从源码编译。
-
文档路径:
基础SDK文档 / Orbbec SDK文档 / Orbbec SDK for Python 使用手册
关于pyorbbecsdk更加详细的使用说明,还可以参考阿凯写的pyorbbecsdk相关章节。
-
将下载的pyorbbecsdk源码文件解压缩。
注意压缩包的话, 需要在Ubuntu下解压缩, 不能在Windows下解压缩。 因为Windows跟Ubuntu的文件系统不兼容,动态链接库会损坏。
-
将pyorbbecsdk源码文件夹拷贝到一个纯英文路径下,路径文件夹名称不要有任何标点符号。!!! 文件夹名称太长的话,可以自己重命名。
-
如果文件夹下已有
build
文件夹,可以手动删除。 -
如果文件夹下已有
install
文件夹,可以手动删除。
-
如果文件夹下已有
-
在终端中打开pyorbbecksdk所在的文件夹。
2. 安装依赖
然后安装项目所需的Python依赖。
sudo pip3 install -r requirements.txt
注意事项
-
如果你使用的是Anaconda则需要注意如下几个事项
-
首先需要在命令行里面激活此虚拟环境。
-
在使用pip安装指令时,不要使用
sudo
pip3 install -r requirements.txt
-
实际所需的依赖:
-
pybind11
这个
pybind11
是必须的,如果你使用的是Anaconda虚拟环境 一定要记得需要在虚拟环境里面安装pybind11 。如果本机里面原生的python安装了pybind11,但是虚拟环境里面并没有安装pybind11,编译的时候并不会报错,但是生成的动态链接库是不可用的。
-
numpy
这个依赖在
requirements.txt
里面没有写,但是也是必须的。
3. 编译 pyorbbecsdk
在pyorbbecsdk的根目录下,创建
build
文件夹。
mkdir build
并进入到
build
文件夹下。
cd build
执行
cmake
指令
cmake -Dpybind11_DIR=`pybind11-config --cmakedir` ..
执行
make
指令
make
也可以添加
-j
选项,指定编译时用到的CPU核数,根据自己的PC资源进行调整。
make -j4
安装 (生成) 动态链接库,注意不要用
sudo
权限,因为是生成到当前文件夹下。
make install
打开
install/lib
就可以看到刚生成的动态链接库了。
4. 替换原有的动态链接库
将新生成的动态链接库拷贝到如下的文件夹下,拷贝前删掉之前的。
-
03.阿凯机器人工具箱(Gemini335版)/kyle-robot-toolbox/kyle_robot_toolbox/lib/pyorbbecsdk/linux
注意事项:阿凯机器人工具箱里面的动态链接库替换完成之后,重新安装阿凯机器人工具箱。
-
02.奥比中光-pyobbecsdk示例代码/lib/pyorbbecsdk/linux