Closed Noahcuptea closed 1 year ago
这好像是M2DGR的数采设备吧。没看懂你的问题,你是边record边在跑LIVO么?https://answers.ros.org/question/251403/image_transport-rosbag-issue/
这好像是M2DGR的数采设备吧。没看懂你的问题,你是边record边在跑LIVO么?https://answers.ros.org/question/251403/image_transport-rosbag-issue/
谢谢您的回复,用的是livox-mid-70, 外置imu,海康camera,所有硬件同步已完成。
我问了两个问题: 第一个是关于Camera数据接入后开始报错,我提供了gdb调试的报错信息和相关的rosbag. 第二个是”边record边在跑LIVO“的情况下,会出现更多的报错,仅当参考。 咱们不管第二个,只说第一个问题,它的错误链条是: laserMapping.cpp:1344 ---> lidar_selection.cpp:1065 ---> lidar_selection.cpp:376 也就是在 传递(img=..., pg=...)的时候出错了,请问我现在改怎么排查? 您方便看下rosbag和配置文件指点一下么?
在下从最早的lio1开始跟随您实验室的工作, 每次复现成功都会上传建筑设计行业落地应用的一些案例, 希望这次也有机会为这个项目提供一些数据,再次万分感激您宝贵的时间。
你这个内参和畸变有大问题啊,cx怎么可能比图像宽度还大啊
您好,请问这个问题目前解决了吗?我也遇到了同样的问题:
[New Thread 0x7fff7e7fc700 (LWP 19081)]
[New Thread 0x7fff7dffb700 (LWP 19082)]
[ LIO ]: time: fov_check: 0.000000 fov_check and readd: 0.002374 match: 0.000000 solve: 0.000000 ICP: 0.000474 map incre: 0.004058 total: 0.006905 icp: 0.000416 construct H: 0.000000.
[ INFO ]: get img at time: 1579245924.295512.
[ INFO ]: get point cloud at time: 1579245924.243978 and size: 4291.
[ VIO ]: Raw feature num: 4317.
[ VIO ]: Add 589 3D points.
[ VIO ]: time: addFromSparseMap: 0.000000 addSparseMap: 0.002141 ComputeJ: 0.000000 addObservation: 0.000000 total time: 0.002142 ave_total: 0.002142.
[ INFO ]: get img at time: 1579245924.345247.
[ VIO ]: Raw feature num: 4317.
Thread 1 "fastlivo_mappin" received signal SIGSEGV, Segmentation fault.
0x00007ffff2aa9088 in lidar_selection::LidarSelector::addFromSparseMap (this=this@entry=0x55555c7b40d0, img=...,
pg=...) at /home/cc/fast-livo-ws/src/FAST-LIVO/src/lidar_selection.cpp:376
---Type <return> to continue, or q <return> to quit---
376 float it[height*width] = {0.0};
(gdb)
你这个内参和畸变有大问题啊,cx怎么可能比图像宽度还大啊
我把报错的地方
float it[height * width] = {0.0};
修改成
std::vector<float> it(height*width, 0);
问题解决了。
但是不知道为什么原来的写法在hku数据集上没有问题,在我自己的数据上就会报错呢?我的图像是1920*1200,和这个有关吗?
我把报错的地方
float it[height * width] = {0.0};
修改成
std::vector<float> it(height*width, 0);
问题解决了。
但是不知道为什么原来的写法在hku数据集上没有问题,在我自己的数据上就会报错呢?我的图像是1920*1200,和这个有关吗?
不好意思才回复,刚刚身体康复回到工作室。 是的,报错跟您的图像有关,参数包括不限于:
据我所知,这些都在相机和激光雷达的联合标定过程中可以得到,您可能需要参考如下内容:
我还没解决报错,祝您复现顺利哈 :)
按楼上帖子里的链接重新算畸变和内参后解决报错了。
这里提一句,livox_camera_lidar_calibration 里给了5个畸变参数,而pinhole_XX.yaml里只有四个畸变参数(cam_d0~d4),我判断它们的对应关系是:
k1 对应 cam_d0,是相机的径向畸变高阶项系数之一 k2 对应 cam_d1,是相机的径向畸变高阶项系数之一 p1 对应 cam_d2,是相机的切向畸变系数之一 p2 对应 cam_d3,是相机的切向畸变系数之一
虽然报错解决,但是雷达跑出来坐标是飘的, 可能imu或者室内雷达测距不够,但这个issue确实是解决了,close.
尊敬的港大团队您们好,
设备都调试硬同步好了,程序跑起来开始报错。 可能是从点云中筛选出与图像匹配的点,将这些点的坐标存入it中的时候出了一些错误。 我挠破头都不知道怎么整了,下面是是rosbag和配置文件的下载链接,还有gdb信息您过目:
百度网盘下载(rosbag, config文件)
坚果云网盘下载(内容和上面的一样)
开始GDB:
(gdb) bt
(gdb) print img
(gdb) print pg
$2 = {px = 0x55555c2b9840, pn = {pi_ = 0x55555c2b98e0}}
以下是录制Rosbag时候camera和livo节点的报错,关掉rosbag record报错就没了
Camera 节点
Compressed Depth Image Transport - Compression requires single-channel 32bit-floating point or 16bit raw depth images (input format is: rgb8).
Livo节点