首页 > 其他分享 >4.10.2 radar2lidar标定

4.10.2 radar2lidar标定

时间:2024-07-31 22:06:25浏览次数:12  
标签:4.10 radar2lidar rosnoetic Pangolin SensorsCalibration 标定 include VirtualBox

4.10.2 radar2lidar标定

欢迎关注我的B站:https://space.bilibili.com/379384819

欢迎交流学习,vx:18074116692

参考教程:

AbangLZU/SensorsCalibration: OpenCalib: A Multi-sensor Calibration Toolbox for Autonomous Driving (github.com)

1. 查看系统环境

要运行本仿真程序,需要保证当前环境为ubuntu20.04+ros-noetic-desktop-full

查看ubuntu版本:

rosnoetic@rosnoetic-VirtualBox:~$ **lsb_release -a**

No LSB modules are available.
Distributor ID:	Ubuntu
Description:	Ubuntu 20.04.6 LTS
**Release:	20.04**
Codename:	focal

可知,当前ubuntu版本满足20.04

查看ros版本:

rosnoetic@rosnoetic-VirtualBox:~$ **rosversion -d**

**noetic**

可知,当前ros版本满足noetic

2. 安装radar2lidar校准

2.1 安装Pangolin

ctrl+alt+T打开终端,安装依赖

rosnoetic@rosnoetic-VirtualBox:~$ **sudo apt-get install libglew-dev**

Pangolin-0.6.zip移动到主目录下

点击Pangolin-0.6.zip,右键,选择“提取到此处

cmake编译:

rosnoetic@rosnoetic-VirtualBox:~$ **cd Pangolin-0.6/**

rosnoetic@rosnoetic-VirtualBox:~/Pangolin-0.6$ **mkdir build**

rosnoetic@rosnoetic-VirtualBox:~/Pangolin-0.6$ **cd build/**

rosnoetic@rosnoetic-VirtualBox:~/Pangolin-0.6/build$ **cmake ..**

  • cmake ..

rosnoetic@rosnoetic-VirtualBox:~/Pangolin-0.6/build$ **make -j4**

  • make -j4

rosnoetic@rosnoetic-VirtualBox:~/Pangolin-0.6/build$ **sudo make install**

  • sudo make install

2.2 安装源码

ctrl+alt+T安装json库,并链接到/usr/include/json路径:

rosnoetic@rosnoetic-VirtualBox:~$ **sudo apt-get install libjsoncpp-dev** 

rosnoetic@rosnoetic-VirtualBox:~$ **sudo ln -s /usr/include/jsoncpp/json/ /usr/include/json**

ctrl+alt+T打开终端,执行如下指令下载源码:

rosnoetic@rosnoetic-VirtualBox:~$ **git clone https://github.com/AbangLZU/SensorsCalibration.git**

修改SensorsCalibration/radar2lidar/manual_calib/CMakeLists.txt,添加代码:set( CMAKE_CXX_STANDARD 14)

cmake_minimum_required(VERSION 2.8.3)
project(RadarToLidar)
set(CMAKE_CXX_FLAGS "-std=c++11 -g -Wall")

**set( CMAKE_CXX_STANDARD 14)**

find_package(Pangolin REQUIRED)
include_directories(${Pangolin_INCLUDE_DIRS})
link_directories(${Pangolin_LIBRARY_DIRS})

find_package(PCL REQUIRED)
include_directories(${PCL_INCLUDE_DIRS})
link_directories(${OpenCV_LIBRARY_DIRS})

find_package(Boost REQUIRED system)
find_package(OpenCV REQUIRED)

include_directories(${OpenCV_INCLUDE_DIRS})
include_directories(${EIGEN_ROOT})
include_directories(${PROJECT_SOURCE_DIR}/include)
include_directories(${PROJECT_SOURCE_DIR}/src)

set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${PROJECT_SOURCE_DIR}/lib)
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${PROJECT_SOURCE_DIR}/bin)

file(GLOB_RECURSE PARSER_PATH src/*.cpp)
add_library(${PROJECT_NAME} STATIC ${PARSER_PATH})
target_link_libraries(${PROJECT_NAME} libjsoncpp.a ${OpenCV_LIBS} ${Boost_SYSTEM_LIBRARY})

add_executable(run_radar2lidar src/run_radar2lidar.cpp)
target_link_libraries(run_radar2lidar ${PROJECT_NAME})
target_link_libraries(run_radar2lidar ${PCL_LIBRARIES})
target_link_libraries(run_radar2lidar ${Pangolin_LIBRARIES})

cmake编译:

rosnoetic@rosnoetic-VirtualBox:~$ **cd SensorsCalibration/radar2lidar/manual_calib/**

rosnoetic@rosnoetic-VirtualBox:~/SensorsCalibration/radar2lidar/manual_calib$ **mkdir build**

rosnoetic@rosnoetic-VirtualBox:~/SensorsCalibration/radar2lidar/manual_calib$ **cd build/**

rosnoetic@rosnoetic-VirtualBox:~/SensorsCalibration/radar2lidar/manual_calib/build$ **cmake ..**

  • cmake ..

rosnoetic@rosnoetic-VirtualBox:~/SensorsCalibration/radar2lidar/manual_calib/build$ **make**

  • make

3. 运行

ctrl+alt+T打开终端,执行如下指令:

rosnoetic@rosnoetic-VirtualBox:~$ **cd SensorsCalibration/radar2lidar/manual_calib/**

rosnoetic@rosnoetic-VirtualBox:~/SensorsCalibration/radar2lidar/manual_calib$ **./bin/run_radar2lidar data/lidar.pcd data/front_radar.csv data/front_radar-to-top_center_lidar-extrinsic.json** 

点击左侧的按钮,即可调整相应的参数,点击Save Image保存参数

保存的参数将在manual_calib文件夹下。

标签:4.10,radar2lidar,rosnoetic,Pangolin,SensorsCalibration,标定,include,VirtualBox
From: https://www.cnblogs.com/windandchimes/p/18335596

相关文章

  • Dynamsoft Barcode Reader SDK C++ 10.4.10 Crack-24.7.22
    DynamsoftBarcodeReaderDocumentationforC++EditionDynamsoftBarcodeReader(DBR)SDKC++EditionisabarcodereadingtooldesignedspecificallyforC++developers.LeveragingtheefficiencyandflexibilityoftheC++language,DBRC++Editionprovid......
  • CLIP-DIY 论文解读:基于 CLIP 和无监督目标定位的语义分割
    CLIP-DIY是一种基于CLIP模型的开放词汇语义分割方法,特点是无需额外的训练或者像素级标注,即可实现高效、准确的分割效果。该方法主要利用CLIP模型在图像分类方面的强大能力,并结合无监督目标定位技术,实现开放词汇语义分割。在论文中,首先肯定了CLIP出现的重要意义,开启了开放......
  • 3.1、matlab双目相机标定实验
    1、双目相机标定原理及流程双目相机标定是将双目相机系统的内外参数计算出来,从而实现双目视觉中的立体测量和深度感知。标定的目的是确定各个摄像头的内部参数(如焦距、主点、畸变等)和外部参数(如相机位置、朝向等),以便将双目相机捕获的图像转换为三维空间坐标。双目相机标定的......
  • 【相机标定】标定板介绍以及优缺点分析
    【相机标定】标定板介绍以及优缺点分析背景介绍附赠自动驾驶最全的学习资料和量产经验:链接准确标定像机对于所有的机器/计算机视觉的成功应用都是非常重要的。然而,对于标定板,有不同的模式可供选择。为了方便进行选择,本文将解释每种方法的主要好处。标定板的选择,有Charu......
  • 多相机视觉系统的坐标系统标定与统一及其应用
    多相机视觉系统的坐标系统标定与统一及其应用导语:随着机器视觉应用的日益广泛,大幅面 多相机 视觉系统的需求越来越多,主要应用方向为大幅面高精度的定位与测量和场景拼接等。多相机视觉系统的难点在于多相机坐标系的统一. 可以分为两类,一是相机视野间无重叠部分,二是相......
  • 相机的标定
    代码部分#打开摄像头,将读取的视频保存在本地,名字叫output.avi#coding=utf-8importcv2ascvcap=cv.VideoCapture(0)#检查是否成功打开摄像头ifnotcap.isOpened():print("Cannotopencamera")exit()#获取摄像头帧的宽度和高度frame_width=int(cap.g......
  • matlab相机内参标定
      1视频抽帧1是否要缩放2保存的文件夹名字不许有中文,自动创建文件夹3间隔帧数 #-*-coding:utf8-*-importcv2importosimportshutildefget_frame_from_video(video_name,save_path,interval,resize):cv2.namedWindow('Read_Image',cv2.WINDOW......
  • 【仿真】UR机器人手眼标定与实时视觉追踪(单目)
    这段代码实现了一个机器人视觉引导系统,主要功能包括:连接仿真环境,控制UR机器人。相机标定:使用棋盘格图案进行相机内参标定通过移动机器人采集多组图像使用calibrateCamera函数计算相机内参手眼标定:采集机器人末端位姿和对应的棋盘格图像使用calibrateHandEye函数计算......
  • HALCON-从入门到入门-相机标定-内参外参
    1.废话为什么要进行相机标定几个坐标系像素坐标系(图片坐标系)就是我们在电脑上看到图片的坐标系,以左上角为原点(2d坐标系)单位是像素pixel相机坐标系相机物方视野投影的坐标系,单位是mm世界坐标系就是真实的世界坐标系,单位是mm标定的结果标定的结果中有内参矩阵,外参,畸......
  • 4.10
    1.网络爬虫的类型现在我们已经基本了解了网络爬虫的组成,那么网络爬虫具体有哪些类型呢?网络爬虫按照实现的技术和结构可以分为通用网络爬虫、聚焦网络爬虫、增量式网络爬虫、深层网络爬虫等类型。在实际的网络爬虫中,通常是这几类爬虫的组合体。1.1通用网络爬虫首先我们为大家......