nuScenes数据集使用的相机的外参和内参

embedded/2024/10/25 15:04:34/

因为需要用不同数据集测试对比效果,而一般的模型代码里实现的检测结果可视化都是使用open3d的Visualizer在点云上画的3d框,展示出来的可视化效果很差,可能是偷懒,没有实现将检测结果投影到各相机的图像上,所以检测效果可视化对核对效果根本没多大用处,除非自己把检测结果和点云写如rosbag包并且基于ros写程序画出box并发布然后去rviz里看效果展示,对于基于nuScenes数据集的检测结果在图像上做可视化其实比较简单,因为它使用的相机是普通无畸变平面相机,直接将模型检测输出的3dbox(一般是基于激光雷达点云坐标系的)的8个顶点的坐标组成的矩阵左乘以6个相机的外参内参转换到像素坐标系下,得到8个顶点的像素坐标,然后在相机图像上用OpenCV画出各个顶点和按一定顺序画出顶点之间的连线,就完成了在图像上画出3d box可视化效果。记录一下整理出来的nuScenes数据集所用的6个相机的内外参数据矩阵,需要时可以直接拷贝使用:

{
"CAM_FRONT" : {"extrinsic" : [[ 0.99988014,  0.01223258, -0.00949188, -0.00230111],[-0.0101382,   0.05390463, -0.9984946,  -0.35509583], [-0.0117025,   0.99847114,  0.05402219, -0.42520362],[ 0,          0,          0,          1        ]],"intrinsic": [[1.25281310e+03, 0.00000000e+00, 8.26588115e+02, 0.00000000e+00],[0.00000000e+00, 1.25281310e+03, 4.69984663e+02, 0.00000000e+00],[0.00000000e+00, 0.00000000e+00, 1.00000000e+00, 0.00000000e+00],[0.00000000e+00, 0.00000000e+00, 0.00000000e+00, 1.00000000e+00]],"distortion": []},"CAM_FRONT_RIGHT" : {"extrinsic" : [[ 0.5372737,  -0.8417395,  -0.05302503,  0.02984875],[-0.00136775,  0.06200032, -0.9980752,  -0.33156687], [ 0.84340686,  0.53631204,  0.03215985, -0.6103719 ], [ 0,          0,          0,          1        ]],"intrinsic" : [[1.25674851e+03, 0.00000000e+00, 8.17788757e+02, 0.00000000e+00],[0.00000000e+00, 1.25674851e+03, 4.51954178e+02, 0.00000000e+00], [0.00000000e+00, 0.00000000e+00, 1.00000000e+00, 0.00000000e+00], [0.00000000e+00, 0.00000000e+00, 0.00000000e+00, 1.00000000e+00]],"distortion": []
},"CAM_FRONT_LEFT" : {"extrinsic" : [[ 0.5672582,   0.8228128,   0.034602,    0.10790747],[-0.01433343,  0.05187402, -0.9985508,  -0.35026494],[-0.8234153,   0.5659401,   0.04121969, -0.52967703],[ 0,          0,          0,          1        ]],"intrinsic" : [[1.25786253e+03, 0.00000000e+00, 8.27241063e+02, 0.00000000e+00],[0.00000000e+00, 1.25786253e+03, 4.50915498e+02, 0.00000000e+00],[0.00000000e+00, 0.00000000e+00, 1.00000000e+00, 0.00000000e+00],[0.00000000e+00, 0.00000000e+00, 0.00000000e+00, 1.00000000e+00]],"distortion": []
},"CAM_BACK" : {"extrinsic" : [[-0.99992836,  0.00799071,  0.00891444,  0.00137395],[-0.00859485,  0.03917429, -0.99919546, -0.2810333 ],[-0.0083335,  -0.99920046, -0.0391028,  -1.0164535 ],[ 0,          0,          0,          1        ]],"intrinsic" : [[796.89106345,   0,         857.77743269,   0        ],[  0,         796.89106345, 476.88489884,   0        ],[  0,           0,           1,           0        ],[  0,           0,           0,           1        ]],"distortion": []
},"CAM_BACK_LEFT" : {"extrinsic" : 
[[-0.31910315,  0.9468608,   0.04034692, -0.2123741 ],[-0.01589121,  0.03722081, -0.99918073, -0.28666893],[-0.9475868,  -0.31948286,  0.00316949, -0.43252733],[ 0,          0,          0,          1        ]],"intrinsic" : 
[[1.25498606e+03, 0.00000000e+00, 8.29576933e+02, 0.00000000e+00],[0.00000000e+00, 1.25498606e+03, 4.67168056e+02, 0.00000000e+00],[0.00000000e+00, 0.00000000e+00, 1.00000000e+00, 0.00000000e+00],[0.00000000e+00, 0.00000000e+00, 0.00000000e+00, 1.00000000e+00]],"distortion": []
},"CAM_BACK_RIGHT" : {"extrinsic" : 
[[-0.3820134,  -0.92305064, -0.04520244,  0.08872822],[ 0.01385406,  0.04318667, -0.998971,   -0.29866916],[ 0.92405295, -0.38224655, -0.00370989, -0.46464512],[ 0,          0,          0,          1        ]],"intrinsic" : 
[[1.24996293e+03, 0.00000000e+00, 8.25376805e+02, 0.00000000e+00],[0.00000000e+00, 1.24996293e+03, 4.62548164e+02, 0.00000000e+00],[0.00000000e+00, 0.00000000e+00, 1.00000000e+00, 0.00000000e+00],[0.00000000e+00, 0.00000000e+00, 0.00000000e+00, 1.00000000e+00]],"distortion": []
}
}

把nuScense的3d标注在图像上做可视化发现nuScenes的标注也做得不好 好些目标漏标了!只是目前没有更好的公开数据集出现,没银子自己采集和标注数据集的尤其是做学校研究发论文的就只能继续在nuScenes这样的数据集上干活了,尽管现在的车载激光雷达已经比nuScenes数据集采用的32线雷达好了几代了,还是不得不死磕nuScenes 32线雷达的稀疏点云用sweep帧对齐和叠加来模拟现在雷达的稠密点云。


http://www.ppmy.cn/embedded/132360.html

相关文章

Pr 视频效果:自动重构

视频效果/变换/自动重构 Transform/Auto Reframe 自动重构 Auto Reframe效果是用于快速调整视频素材以适应不同长宽比的一项强大工具。 随着各种平台和设备的多样化,视频内容需要适应不同的屏幕尺寸和比例,如 16:9(横屏)、9:16&am…

网络安全——防火墙技术

目录 前言基本概念常见防火墙技术防火墙的主要功能防火墙的不足之处相关题目1.组织外部未授权用户访问内部网络2.DMZ区3.包过滤防火墙和代理服务防火墙 前言 这是在软件设计师备考时编写的资料文章,相关内容偏向软件设计师 基本概念 防火墙技术是网络安全领域中的…

近似线性可分支持向量机的原理推导

近似线性可分的意思是训练集中大部分实例点是线性可分的,只是一些特殊实例点的存在使得这种数据集不适用于直接使用线性可分支持向量机进行处理,但也没有到完全线性不可分的程度。所以近似线性可分支持向量机问题的关键就在于这些少数的特殊点。 相较于…

【微信小程序_16_上拉触底相关功能补充】

摘要:本文主要介绍了微信小程序开发中与数据加载相关的两个功能点: (1)添加 loading提示效果 在数据加载时,使用wx.showLoading()展示加载提示,如 wx.showLoading({ title: 数据加载中... });。 数据请求完成后,使用wx.hideLoading()隐藏加载提示。 (2)对上拉触底进行节流…

JavaScript 的 axios 实现文件下载功能

用 JavaScript 的 axios 实现文件下载功能,咱们要分几个步骤来搞定它!最主要的部分是处理 二进制数据,可以生成一个进度检测,然后把它保存为文件。 文件名的获取二进制数据获取创建下载链接 const axios require(axios);const g…

XJ02、消费金融|消费金融业务模式中的主要主体

根据所持有牌照类型的不同,消费金融服务供给方主要分为商业银行、汽车金融公司、消费金融公司和小贷公司,不同类型机构定位不同、提供消费金融服务与产品类型也各不相同。此外,互联网金融平台也成为中国消费金融业务最重要的参与方之一&#…

[网络基础]——什么是IP路由,路由优先级,度量值详解

🏡作者主页:点击! 🤖网络通信基础TCP/IP专栏:点击! ⏰️创作时间:2024年10月14日15点23分 路由器扮演着至关重要的角色,它不仅负责将数据包从源地址转发到目的地址,还…

OpenCV坐标系统与图像处理案例

在图像处理中,理解图像的坐标系统是至关重要的。OpenCV,作为一个强大的计算机视觉库,提供了丰富的功能来操作图像。本文将介绍OpenCV中的坐标系统,并提供一个简单的案例来展示如何使用这些坐标来修改图像的特定区域。 OpenCV坐标…