Giter Club home page Giter Club logo

cyberdog-camera's Introduction

简介

运行于小米CyberDog,基于Nvidia ArgusRos2的相机程序。

该程序使用Argus API提供的接口来操控MIPI相机硬件并实时捕获图像,使用ROS2提供的接口来管理相机节点,为外部模块提供交互接口。

编译

编译本模块需要依赖若干外部软件包,编译前需按照下列命令安装:

依赖项

1.nvidia-l4t-jetson-multimedia-api

sudo apt-get install nvidia-l4t-jetson-multimedia-api

2.cuda-toolkit

sudo apt-get install cuda-toolkit-10-2

3.libavformat-dev

sudo apt-get install libavformat-dev

4.protocol仓

git clone https://git.n.xiaomi.com/MiRoboticsLab/rop/bridges

测试程序

基于相机api的相机测试程序,可以用来测试相机是否正常,亦可以作为camera api使用方式参考。

编译

colcon build --merge-install --packages-up-to camera_test

运行

测试程序,用来测试相机出图是否正常

./build/camera_test/camera_test cam_id width height rgb/bgr

例如,测试camera 0,640x480分辨率RGB出图的话,使用如下命令: ./build/camera_test/camera_test 0 640 480 rgb

主摄相机服务程序,可以进行拍照录像等命令

ros2 run camera_test camera_server

拍照命令:

ros2 service call /camera_service protocol/srv/CameraService "{command: 1, args: ''}"

录像命令:

//开始
$ ros2 service call /camera_service protocol/srv/CameraService "{command: 2, args: ''}"
//停止
$ ros2 service call /camera_service protocol/srv/CameraService "{command: 3, args: ''}"

双目/RGB相机ros2程序

ros2 run camera_test stereo_camera

运行之后,双目相机和RGB相机将通过/image_left、/image_right、/image_rgb三个topic发布图像。

cyberdog-camera's People

Contributors

huliang999 avatar leejeerywen avatar ruheng avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.