4 Star 1 Fork 5

MDC/local_sensor_data_sender

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
贡献代码
同步代码
Loading...
README
BSD-3-Clause

前言

概述

本文档详细描述本地传感器数据转发工具(本文档简称转发工具)的使用方法以及常见的问题解答。

读者对象

本文档主要适用于以下工程师:

  • 智能驾驶应用研发工程师
  • 生态伙伴技术支持工程师
  • 华为技术支持工程师
  • 维护工程师

读者必须具备以下经验和技能:

  • 熟悉AUTOSAR规范。
  • 熟悉MDC智能驾驶软件系统。
  • 熟悉华为MDC Development Studio(MDS)工具的使用。

符号约定

在本文中可能出现下列标志,它们所代表的含义如下。

符号

说明

表示如不避免则将会导致死亡或严重伤害的具有高等级风险的危害。

表示如不避免则可能导致死亡或严重伤害的具有中等级风险的危害。

表示如不避免则可能导致轻微或中度伤害的具有低等级风险的危害。

用于传递设备或环境安全警示信息。如不避免则可能会导致设备损坏、数据丢失、设备性能降低或其它不可预知的结果。

“须知”不涉及人身伤害。

对正文中重点信息的补充说明。

“说明”不是安全警示信息,不涉及人身、设备及环境伤害信息。

修改记录

文档版本

发布日期

修改说明

01

2022-09-30

第一次正式发布。

概述

本地传感器数据转发工具是MDC平台提供的一款视频/图片/点云数据解析与发布的开发工具,其支持在MDC平台环境或者X86环境中解析本地的激光雷达数据文件(格式pcd),视频数据文件(格式h264,h265,YUV)图片数据文件(格式jpg,jpeg)等6种格式文件,并通过转发工具将消息发布,供上层应用程序调用。

应用场景

在开发应用的过程中,需要使用开源或第三方的传感器录制数据包中的pcd、视频、图像等数据,MDC平台提供的转发工具可以让用户规避繁琐的数据转换过程,直接通过CM消息的方式订阅工具转发的pcd等文件。

功能介绍

  • 读取jpg图片文件并解析成yuv420sp通过CM转发。
  • 读取jpeg图片文件并解析成yuv420sp通过CM转发。
  • 读取yuv420sp视频通过CM转发。
  • 读取h264视频文件并解析成yuv420sp通过CM转发。
  • 读取h265视频文件并解析成yuv420sp通过CM转发。
  • 在转发视频/图片时分CameraDecodedMbufStruct和CameraPublishImageDataStruct两种结构。
  • 在X86环境下解析rosbag中的sensor_msg/pointcloud2数据类型保存成pcd格式文件。
  • 在X86环境下解析rosbag中的sensor_msgs/Image数据类型保存成jpg格式文件。
  • 读取pcd点云文件通过CM以简化版本或者标准版本转发。

运行机制

图1展示了转发工具的运行机制。

图 1 本地传感器数据转发工具运行机制

说明:

  • rosbag需要先通过rosbag2ImageAndPcd.py解析转换成jpg或pcd文件,再将解析完成的jpg或pcd文件通过本地传感器数据转发工具进行转发。
  • rosbag2ImageAndPcd.py只支持将rosbag中topics为sensor_msgs/PointCloud2和sensor_msgs/Image解析成pcd和jpg文件。
  • 使用rosbag2ImageAndPcd.py需要提前获得待解析的rosbag中的sensor_msgs/PointCloud2和sensor_msgs/Image的topics名称,将其写入到rosbag2ImageAndPcd.py文件中的pcd_topic_list和img_topic_list中,如
extractor.extract_pcd_img(pcd_topic_list=['/kitti/velo/pointcloud'],
                          img_topic_list=['/kitti/camera_color_left/image_raw'])

环境要求

  • 操作系统:Ubuntu18.04或者MDC 610系统环境。

  • 需要获取MDC平台产品文档包,便于查询MDC平台相关信息。

  • 运行环境中需要安装相应的MDC工具、SDK包、示例工程软件包以及三方库文件。

  • SDK包,示例工程软件包与mdc设备的版本均需配套,mdc设备可通过MDC Installer进行升级至相应的版本。mdc installer工具使用可参考产品文档中的工具指南下的MDC Installer使用指南

    表 1 所需SDK及工具列表

    名称

    文件名

    备注

    X86环境源码路径

    https://gitee.com/mdc_opensource/local_sensor_data_sender/ local_sensor_data_sender_x86

    X86环境下的转发工具源码文件。

    MDC环境源码路径

    https://gitee.com/mdc_opensource/local_sensor_data_sender/ local_sensor_data_sender_mdc

    MDC环境下的转发工具源码文件。

    MDS工具

    MDC_Development_Studio-{version}-Ubuntu{osversion}.tar.gz

    需根据开发环境Ubuntu版本选择对应版本的软件包。

    MMC工具

    MDC_Manifest_Configurator-{version}-Ubuntu{osversion}.tar.gz

    需根据开发环境Ubuntu版本选择对应版本的软件包。

    MDC 示例工程软件包

    MDC_Sample-{version}.tar.gz

    -

    交叉编译SDK包

    MDC_SDK-{version}-Ubuntu{osversion}-gcc-{type}.tar.gz

    MDC_SDK-{version}-Ubuntu{osversion}-llvm-{type}.tar.gz

    需根据开发环境Ubuntu版本和编译器类型选择对应版本的软件包。

    X86平台调测包

    MDC_X86-{version}-Ubuntu{osversion}-gcc.tar.gz

    需根据开发环境Ubuntu版本选择对应版本的软件包。

    单板升级包

    MDC_SDK-{version}-Ubuntu{osversion}-gcc-{type}.tar.gz

    MDC_Upgrade_Package-{version}-llvm-{type}.tar.gz

    需根据开发环境Ubuntu版本和编译器类型选择对应版本的软件包。

    交叉编译第三方库

    MDC_AOS_rpmlist-{version}-gcc-{type}.tar.gz

    MDC_AOS_rpmlist-{version}-llvm-{type}.tar.gz

    需根据开发环境Ubuntu版本和编译器类型选择对应版本的软件包。

工具使用流程

  1. 进入转发工具所在目录。

  2. 创建需要转发文件的目录,并放置待待转发的传感器数据文件。

  3. 配置Yaml文件

  4. 设置环境变量,X86环境:在当前目录下执行export LD_LIBRARY_PATH=./lib/

    MDC环境:在任意目录下执行export LD_LIBRARY_PATH=/opt/usr/root/usr/lib/

  5. 运行转发工具

环境配置

使用转发工具前需要进行的环境配置操作包括第三方库的安装、配置交叉编译环境、安装MDS工具等。

X86环境搭建

X86平台软件调测

MDC 610提供了基于X86环境运行的软件包,无需MDC 610硬件设备即可进行应用程序的开发和调试。MDC X86平台基础包可以实现离线开发应用和调测,可编译、运行MDC 610 Sample和用户自行开发的APP应用程序。

安装方法参见产品文档中《X86平台软件调测指南》的“安装与启停”章节。

X86环境第三方库获取与安装

在X86环境中运行工具所需要安装的第三方库列表如表1所示。

表 1 第三方库及下载地址

opencv-4.5.2

https://codeload.github.com/opencv/opencv/zip/refs/tags/4.5.2

ffmpeg-4.3.4

https://ffmpeg.org/releases/ffmpeg-4.3.4.tar.xz

boost-1.65.1

https://www.boost.org/users/history/version_1_65_1.html

eigen-3.3.7

https://gitlab.com/libeigen/eigen/-/archive/3.3.7/eigen-3.3.7.tar.gz

flann

https://codeload.github.com/flann-lib/flann/zip/refs/heads/master

pcl-1.11.1

https://codeload.github.com/PointCloudLibrary/pcl/tar.gz/refs/tags/pcl-1.11.1

yaml-cpp-0.6.3

https://codeload.github.com/jbeder/yaml-cpp/tar.gz/refs/tags/yaml-cpp-0.6.3

说明: X86环境下H.264与H.265是通过ffmpeg进行解码,MDC系统上是通过vdec进行解码。

opencv-4.5.2

  • 用途:opencv第三方库将rgb格式的jpg转为yuv420sp。

  • 安装方法

    cd opencv-4.5.2

    mkdir build && cd build

    cmake -DCMAKE_CXX_FLAGS=-s -DCMAKE_BUILD_TYPE=Release -DCMAKE_SHARED_LINKER_FLAGS=-Wl,--build-id=none -DOPENCV_VCSVERSION=mviz_release -DOPENCV_PYTHON_SKIP_DETECTION=true -DWITH_IPP=OFF -DWITH_ADE=OFF -DCMAKE_SKIP_INSTALL_RPATH=true -DCMAKE_SKIP_RPATH=true -DCMAKE_SHARED_LINKER_FLAGS="-Wl,-z,now" ..

    make -j12

    sudo make install

ffmpeg-4.3.4

  • 用途说明:X86安装ffmpeg用于X86解码H.264/H.265。

  • 安装方法:

    cd ffmpeg-4.3.4

    ./configure --enable-shared

    make -j12

    sudo make install

boost-1.65.1

安装方法:

cd boost_1_65_1

./bootstrap.sh --with-libraries=system,regex,chrono,thread,filesystem,date_time,iostreams

sudo ./b2 install

eigen-3.3.7

安装方法:

cd eigen-3.3.7

mkdir build && cd build

cmake -DCMAKE_BUILD_TYPE=Release ../

make -j12

sudo make install

flann

  • 源码安装方法:

    cd flann-master

    mkdir build && cd build

    cmake -DCMAKE_BUILD_TYPE=Release ../

    make -j12

    sudo make install

  • 编译异常处理

    若在编译flann时显示以下错误:

    CMake Eroor at src/cpp/CMakeLists.txt:91 (add_library):
    No SOURCES given to target: flann
    

    或者

    CMake Eroor at src/cpp/CMakeLists.txt:33 (add_library):
    No SOURCES given to target: flann_cpp
    

    处理方法:

    1. 新建一个empty.cpp文件。

      touch src/cpp/empty.cpp

    2. 修改“src/cpp/CMakeList.txt“文件。

      第33行:将add_library(flann_cpp SHARED "") 修改为add_library(flann_cpp SHARED empty.cpp)

      第91行:将add_library(flann SHARED "") 修改为 add_library(flann SHARED empty.cpp) 若源码安装还是失败,可尝试使用下面的“在线安装方法”

  • 在线安装方法: sudo apt install libflann-dev

pcl-1.11.1

  • 用途说明:pcl库用于解析PCD文件。

  • 安装方法

    cd pcl-pcl-1.11.1

    mkdir build && cd build

    cmake ../ -DBUILD_SHARED_LIBS:BOOL=ON -DWITH_VTK=FALSE -DWITH_OPENGL=FALSE -DWITH_DOCS=OFF -DWITH_CUDA=OFF -DWITH_TUTORIALS=ON -DBUILD_apps=OFF -DBUILD_global_tests=OFF -DLIB-INSTALL_DIR=lib64 -DPCL_ENABLE_SSE=OFF -DBUILD_documentation=OFF -DCMAKE_SKIP_RPATH=ON -DBUILD_TESTS=OFF -DBUILD_examples=OFF -DBUILD_features=OFF -DBUILD_filters=OFF -DBUILD_genmetry=OFF -DBUILD_io=ON -DBUILD_kdtree=OFF -DBUILD_keypoints=OFF -DBUILD_octree=ON -DBUILD_registration=OFF -DBUILD_sample_consensus=OFF -DBUILD_search=OFF -DBUILD_segmentation=OFF -DBUILD_tools=OFF -DBUILD_tracking=OFF -DBUILD_visualization=OFF -DBUILD_apps_cloud_composer=OFF -DBUILD_apps_modeler=OFF -DBUILD_apps_point_cloud_editor=OFF -DBUILD_apps_in_hand_scanner=OFF

    make -j12

    sudo make install

yaml-cpp-0.6.3

  • 用途说明:yaml第三方库用于解析yaml配置文件。

  • 安装方法:

    cd yaml-cpp-yaml-cpp-0.6.3

    mkdir build && cd build

    cmake ../

    make -j12

    sudo make install

配置MDC交叉编译环境

配置交叉编译环境需要获取与安装MDC SDK软件包和第三方库软件包。

参见《产品文档》中”平台调测与二次开发->编译构建指南->搭建编译环境->安装SDK(Development版本)“章节

安装MDC SDK

安装方法参见产品文档中《编译构建指南》中的“安装SDK”章节。

交叉编译环境安装第三方库

安装方法参见产品文档中《编译构建指南》中的“安装第三方库”章节。

MDC Development Studio工具安装

编译local_sensor_data_sender程序使用的IDE为MDC Development Studio(简称MDS)工具,MDS的安装与使用请参照产品文档《MDC Development Studio 使用指南》。

生成依赖文件

生成依赖文件需要使用MDC平台的示例包platform_sample,并通过MDS工具进行编译。

前提条件

  • 已获取MDC_Sample-{version}.tar.gz示例工程包。
  • 解压MDC_Sample-{version}.tar.gz包,复制出PLATFORM_Sample文件夹,为了减少编译时间,建议删除不需要的文件。
    • 删除modules下除了CMakeLists.txt的其他文件。

操作步骤

  1. 打开MDS工具,点击菜单栏的File,选择导入选项"Import"。

  2. 在Import界面选择"MDC"下的"Import as a MDC Project"后点击"next"。

  3. 在浏览对话框中选择"PLATFORM_Sample"文件夹,点击"next"。

  4. 在"Import as MDC Project"对话框中配置SDK,在SDK对应的下拉菜单中选择相应的SDK。

    交叉编译选择"clang-aos_gea-aarch64-/usr/local/mdc_sdk_llvm/dp_gea/mdc_cross_compiler",X86环境编译选择"gcc-linux-x86-/opt/platform/mdc_platform"。若在x86平台下生成依赖文件,请先执行步骤5与步骤6。若是交叉编译环境,则直接执行步骤7

  5. X86环境与交叉编译的arxml文件配置不一样,参见《X86平台软件调测指南》的“DSHM数据包的回放处理”章节。

  6. 在X86环境下将rawbuffer名称修改为UdpData,数据类型CameraDecodedMbufStruct修改为/HuaweiMDC/PlatformServiceInterface/CameraInternalDataMsgDataType/Uint8Vector

  7. 右键PLATFORM_Sample示例,选择“Generate From Arxml”。

    说明: 接收程序也要进行相应的配置。参见《X86平台软件调测指南》的“DSHM数据包的回放处理”章节。

  8. 完成配置arxml后,生成后的文件分别位于PLATFORM_Sample/generate目录与PLATFORM_Sample/outputcfg/MdcADpGeaMachine/camera_a_cm_receive目录。

    说明: 上述生成的文件是camera对应的配置文件,lidar对应的配置文件位于 local_sensor_data_sender_x86 /bin/local_sensor_data_sender_x86/LidarCmProcess下

local_sensor_data_sender工程编译

  1. 打开MDS工具,将local_sensor_data_sender_x86local_sensor_data_sender_mdc工程放入到PLATFORM_Sample/modules目录下。

  2. 根据环境类型(MDC和X86)需要选择相应的sdk。

    在MSDS工具上,右键项目PLATFORM_Sample,在”Change SDK”菜单上,交叉编译选择"clang-aos_gea-aarch64-/usr/local/mdc_sdk_llvm/dp_gea/mdc_cross_compiler",X86环境编译选择"gcc-linux-x86-/opt/platform/mdc_platform"

  3. 用MDS工具进行cmake编译,并构建生成可执行文件。

    说明: 若需要在发送时保存文件,则在src/CMakeLists.txt下修改“OPTION(SAVE_SENDER_FILE_MACRO "Build the project using macro,save local file set as ON,otherwise set OFF" OFF)”中的SAVE_SENDER_FILE_MACRO开关,将OFF修改成ON,再进行编译程序。

运行程序

详见章节5 运行转发工具

配置Yaml文件

Yaml配置文件每种数据格式的配置项主要包含数据存放路径、实例ID,文件高度和宽度。

配置文件示例:

- dir: "image"
  instanceId: 21
  width: 1200
  height: 800
- dir: "image1"
  instanceId: 22
  width: 1200
  height: 800
- dir: "video"
  instanceId: 23
  width: 480
  height: 270
- dir: "yuv"
  instanceId: 24
  width: 1200
  height: 800
- dir: "pcd"
  instanceId: 7
  width: 0
  height: 0

表 1 配置文件参数说明

字段

说明

dir

转发数据文件所在路径的目录名称。在可执行程序同一级目录下。

instanceId

转发数据类型的实例值:

  • jpg,jpeg,yuv,h264,h265对应instanceId范围[21,35]

    或[1021,1034]

  • pcd对应instanceId范围[3,7]

height

转发文件高度。

width

转发文件宽度。

说明:

  • 同一个文件目录下建议存放同一种类型的文件,且存在多个文件时,所有文件宽高应保持一致。 若同一个文件目录下放不同类型的文件,接收端只接收与配置文件中instancedId相同的目录下的转发文件。
  • pcd文件不涉及宽高,但是由于yaml格式要求宽高参数不能为空,建议都设置为0。
  • jpg和jpeg文件只接受宽高为偶数的图片,yaml对应宽高参数应与图片实际宽高保持一致。
  • Yaml配置文件可存放在任意位置,建议放在与可执行程序同一级目录下,若放在其他位置,执行时指定yaml路径即可,如:“./local_sensor_data_sender -f jpeg -c /dir/config.yaml“

运行转发工具

在local_sensor_data_sender程序路径下执行local_sensor_data_sender转发程序。

准备工作

  • 配置环境变量。

    X86环境:在当前目录下执行export LD_LIBRARY_PATH=./lib/

    MDC环境:在任意目录下执行export LD_LIBRARY_PATH=/opt/usr/root/usr/lib/

  • X86环境中需要的准备工作

    • 拷贝LidarCmProcess文件夹到local_sensor_data_sender所在目录。

    • LidarCmProcess目录下的文件中的network值需要替换成当前机器的IP。

      进入到LidarCmProcess目录,执行:

      sed -i "s/xxx/yyy/g" `grep xxx -rl ./`

      xxx表示原IP,yyy表示新IP。

  • MDC环境不需要拷贝LidarCmProcess文件夹,直接读取MDC系统下的“/opt/platform/mdc_platform/manual_service/lidar_a_cm/etc/LidarCmProcess“和“/opt/platform/mdc_platform/manual_service/camera_a_cm/etc/CameraProcess“配置。

运行参数

执行前需了解运行的参数。

表 1 运行参数列表

参数

是否必填

取值

说明

h

-

获取帮助信息,单独使用且不用输入任何值。

f

jpg,jpeg,yuv,h264,h265或pcd

指定转发的数据类型。

m

decoded,image,standard或simple

  • 当转发jpg,jpeg,yuv,h264,h265数据时,m取值范围:decoded,image,不设则默认decoded。
  • 当转发pcd数据时,m取值范围:standard,simple,不设置则默认standard。

c

配置文件名

指定Yaml配置文件名。

t

yyyy-MM-dd HH:mm:ss

指定第一次发送的时间。

r

(0,100]

指定发送频率(Hz)。

l

-

设置是否需要循环发送。

说明:

  • -c参数后输入yaml配置文件名称,配置文件若与转发工具在同一路径下,无需指定路径,否则需指定配置文件的路径。
  • 转发数据类型为jpg,jpeg,yuv,h264,h265数据时,MDC环境下:若m为decoded,则instanceId范围[21,35],若m为image,则instanceId范围[1021,1034]。X86环境下instanceId范围[21,35]。
  • -f参数后只支持输入一种数据类型。

运行示例

  • 获取帮助信息。

    ./local_sensor_data_sender -h

    --usage:
    ./local_sensor_data_sender -f [fileType] -c [configFile] -m [transMode]
    for example:./local_sensor_data_sender -f jpg -c config.yaml -m decoded -r 30
    
    --option:
    -f:[jpg/jpeg/yuv/h264/h265/pcd], requirement
    -c:[configFile], requirement
    -m:[decoded/image/simple/standard], option
    -t:[yyyy-MM-dd HH:mm:ss], option
    -r:[hz], option
    -l, for loop, option
    -h, for help, option
    
  • 通过local_sensor_data_sender解析并转发jpg文件。

    ./local_sensor_data_sender -f jpg -c config.yaml

    begin to parse config file: config.yaml
    Parse config file finished.
    parse finished. [main]
    
    
    Image sender Configs:
    dir     instanceId      width   height
    xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
    image   21      1200    800
    
    image1  22      1200    800
    
    video   23      480     270
    
    yuv     24      1200    800
    
    pcd     7       0       0
    
    
    
    dir :image has no jpg file
    dir :video has no jpg file
    dir :yuv has no jpg file
    dir :pcd has no jpg file
    Begin register normal image sender.
    Begin to Register to publish instance id:22
    Publish to instance id:22 succeed!
    Finished to register normal image sender.
    dir : image1    postfix :jpg
    Begin send image. seq:0 frameID:sender_22 path:image1/test1.jpg
    Begin send image. seq:0 frameID:sender_22 path:image1/test2.jpg
    

FAQ

如何处理报错“-f File type is error:***”或“'-f File type' can not be empty!”

问题现象

在通过local_sensor_data_sender解析并转发文件时,出现报错:“-f File type is error:***”或“'-f File type' can not be empty!”,应该如何处理?

原因分析

在通过local_sensor_data_sender解析并转发文件时,-f参数为必填项,且有效值为:jpg,jpeg,yuv,h264,h265或pcd,当-f参数为空时出现报错信息:“'-f File type' can not be empty!”,-f参数为异常值时会出现报错信息:“-f File type is error:***”。

处理方式

输入有效的-f参数,例如:

./local_sensor_data_sender -f jpg -c config.yaml

如何处理报错“*** file is not exist!”或“'-c Config file' can not be empty!”

问题现象

在通过local_sensor_data_sender解析并转发文件时,出现报错:“*** file is not exist!”或“'-c Config file' can not be empty!”,应该如何处理?

原因分析

在通过local_sensor_data_sender解析并转发文件时,-c参数为必填项,且有效值为:可执行程序目录下存在的Yaml配置文件名,当-c参数为空时出现报错信息:'-c Config file' can not be empty!,-c参数为异常值时会出现报错信息:“*** file is not exist!”。

处理方式

输入有效的-c参数,例如:

./local_sensor_data_sender -f jpg -c config.yaml

如何处理报错“-r frequency must be (0 < frequency <= 100)”

问题现象

在通过local_sensor_data_sender解析并转发文件时,出现报错:“-r frequency must be (0 < frequency <= 100)”,应该如何处理?

原因分析

在通过local_sensor_data_sender解析并转发文件时,-r参数有效值为:(0,100],当-r参数为异常值时出现报错信息:“-r frequency must be (0 < frequency <= 100)”。

处理方式

输入有效的-r参数,例如:

./local_sensor_data_sender -f jpg -c config.yaml -r 30

BSD 3-Clause License Copyright (c) 2022, <Huawei Technologies Co., Ltd> All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. * Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

简介

传感器本地数据仿真 支持在MDC环境下,读取pcd文件,视频文件,并以cm的消息将其转发出来 支持在X86环境下,读取pcd文件,视频文件,并以cm的消息将其转发出来 展开 收起
README
BSD-3-Clause
取消

发行版

暂无发行版

贡献者 (4)

全部

近期动态

2年多前创建了 PR #9 更新超链接
2年多前推送了新的提交到 master 分支,659cedb...88460bf
2年多前合并了 PR #8 更新cleancode
2年多前创建了 PR #8 更新cleancode
2年多前创建了任务 #I69RT4 x86环境下验证rosbag解析,需要安装相关库,无资料指导
加载更多
不能加载更多了
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
C++
1
https://gitee.com/mdc_opensource/local_sensor_data_sender.git
git@gitee.com:mdc_opensource/local_sensor_data_sender.git
mdc_opensource
local_sensor_data_sender
local_sensor_data_sender
master

搜索帮助