用开源Aravis访问工业相机
支持标准协议的USB3Vision, GigEVision工业相机除了使用相机的SDK访问相机外,开源的Aravis Project也颇受欢迎,特别是在嵌入式的系统上,开源带了的好处就是可以在平台编译不受预编译的SDK的平台限制。测试的相机用来工业相机的JHEM306GM黑白千兆网工业相机和JHEM304UC彩色的USB工业相机。
支持标准协议的USB3Vision, GigEVision工业相机除了使用相机的SDK访问相机外,开源的Aravis Project也颇受欢迎,特别是在嵌入式的系统上,开源带了的好处就是可以在平台编译不受预编译的SDK的平台限制。测试的相机用来京航工业相机的JHEM306GM黑白千兆网工业相机和JHEM304UC彩色的USB工业相机。
1 Aravis安装
1.1 安装meson和依赖包。
先安装python3的pip和meson。
sudo apt-get install python3-pip
pip3 install meson
安装aravis的依赖包
sudo apt install libxml2-dev libglib2.0-dev cmake libusb-1.0-0-dev gobject-introspection \
libgtk-3-dev gtk-doc-tools xsltproc libgstreamer1.0-dev \
libgstreamer-plugins-base1.0-dev libgstreamer-plugins-good1.0-dev \
libgirepository1.0-dev gettext
安装ninja编译工具
sudo apt install ninja-build
1.2 安装编译
从Github下载最新源码,目前的稳定版是0.8,我们使用的是最新版本,aravis-main解压到一个目录,再进入目录。
tar xvzf aravis-main.tar.gz
cd aravis-main
meson setup build
cd build
ninjia
ninjia install
安装过程中需要填入管理员密码。
2 测试运行
先测试GigEVision千兆网相机。
arv-viewer-0.8

打开实时图像

再来试下USB3Vision相机,枚举出来了

USB相机获取实时图像:

预览功能是OK的,后续还要再看看SDK是否能完整支持相机的参数设置,触发等功能。
3 后续
如果对彩色相机无法显示图像,可能需要安装gstreamer的一些插件以支持bayer格式转换成rgb图像。
sudo apt install libgstreamer-plugins-base1.0-dev
sudo apt install libgstreamer-plugins-good1.0-dev
sudo apt install libgstreamer-plugins-bad1.0-dev
最后一个为显示bayer格式图像需要。
DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐


所有评论(0)