首页 > 其他分享 >BEV投影

BEV投影

时间:2024-06-19 18:55:31浏览次数:10  
标签:point 投影 cam 100 row BEV cv 1000

opencv对于取图上像素的at()操作,编译器自解释:

inline cv::Vec3b &cv::Mat::at<cv::Vec3b>(int row, int col)

 
for (int col{0}; col < pic_cam.cols; col++) {
    for (int row{0}; row < pic_cam.rows; row++) {
      cv::Mat point_mat = (cv::Mat_<double>(3, 1) << col, row, 1.0);    //图上的x y点
      cv::Mat world_point = K_inv * point_mat;                            //归一化坐标系的点
      cv::Mat plane_point = rot_cam_mat * world_point;                    //转到车体系
      if (plane_point.at<double>(0, 2) >= 0) {
        continue;
      }
      double scale = cam_z / plane_point.at<double>(0, 2);                //所有点均为地面点所以高度均为相机高度 ——尺度计算
      plane_point = scale * plane_point;                                    //恢复的地面点
      cv::Mat point_reproject = plane_point - trans_cam_cvm;                //转到车体系

      double point_x = - point_reproject.at<double>(0, 0);                    //小孔成像 成像上xy与现实世界相反
      double point_y = - point_reproject.at<double>(0, 1);

      if (0 < point_x*100 + 500 && point_x*100 + 500 < 1000 &&                //这里的100是随意写的值指的是1M对应100个像素点
          1000 - point_y*100 > 0 && 1000 - point_y*100 < 1000) {                //1000 是最远看10M
        pic_bev.at<cv::Vec3b>(1000 - point_y*100, point_x*100 + 500) =
          pic_cam.at<cv::Vec3b>(row, col);
      }
    }
}

 

标签:point,投影,cam,100,row,BEV,cv,1000
From: https://www.cnblogs.com/chenlinchong/p/18257064

相关文章

  • BEV detection(自底向上)小结
    LLShttps://zhuanlan.zhihu.com/p/589146284BEVDet提出一种优雅可行可扩展的范式,包含4个部分:image-viewencoder,viewtransformerfromimageviewtoBEV,bevencoder,head.pipelinemoduleAugmentation防止过拟合,不光对图片做增强,还对bevfeature做flipping,scali......
  • BEV感知算法---BevFusion
    前言转载自https://blog.csdn.net/qq_40672115/article/details/134891133这是一篇LiDAR和Camera融合的BEV感知算法,从算法动机&开创性思路、主体结构、损失函数以及性能对比四个方面展开。BEVFusion有两篇文章,本次课程主要讲解的是阿里和北大的:https://arxiv.org/pdf/2205.1......
  • 计算机图形学入门05:投影变换
    1.投影变换    上一章已经介绍了投影变换,就是将三维图像投影到二维平面上,而投影变换又分为正交投影(OrthographicProjection)和透视投影(Perspective Projection)。如下图:正交投影        没有近大远小的现象,无论图形与视点距离是远是近,图形多大画出来的......
  • MongoDB CRUD操作:投影Project详解
    MongoDBCRUD操作:投影Project详解文章目录MongoDBCRUD操作:投影Project详解返回文档的全部字段返回指定的字段和_id字段不输出_id字段指定排除的字段返回内嵌文档中的指定字段禁止内嵌文档中的特定字段数组中内嵌文档的投影聚合表达式的投影字段默认情况下,MongoDB查......
  • 为什么在相机进行投影变换前要进行齐次操作?
    https://blog.csdn.net/zhuiqiuzhuoyue583/article/details/95230246#:~:text=这就是引入齐次坐标的作用,把各种变换都统一了起来,即把缩放,旋转,平移等变换都统一起来,都表示成一连串的矩阵相乘的形式。保证了形式上的线性一致性。简短的解释:齐次坐标就是将一个原本是n维的向量......
  • BEV与Occupancy怎样助力自动驾驶落地?
    自动驾驶领域中,什么是BEV?什么是Occupancy?BEV是Bird'sEyeView的缩写,意为鸟瞰视图。在自动驾驶领域,BEV是指从车辆上方俯瞰的场景视图。BEV图像可以提供车辆周围环境的完整视图,包括车辆前方、后方、两侧和顶部。BEV图像可以通过多种方式生成,包括:使用激光雷达:激光雷达可......
  • 【libevent】OpenSSL加密
    一、OpenSSL简介OpenSSL是一个强大的加密库,广泛应用于互联网的各个角落,用于保护数据传输的安全。它实现了SSL和TLS协议,这些协议是现代网络安全的基石。二、OpenSSL概述OpenSSL是一个强大的开源工具,用于实现SSL和TLS协议,保障网络通信的安全。它不仅提供了加密库,还包括了命令行工......
  • DBever SQL编辑器的高级应用:如何用变量快速查询
    哈喽,大家好,我是木头左!一、DBeverSQL编辑器简介DBever是一款数据库管理工具,它支持多种数据库,如MySQL、SQLServer、Oracle等。其中,它的SQL编辑器功能非常强大,可以让更方便地进行SQL语句的编写和执行。今天,就来探讨一下DBeverSQL编辑器中如何使用变量的方式。二、如何在DBeve......
  • [Paper Reading] BEVFormer: Learning Bird’s-Eye-View Representation from Multi-C
    BEVFormer:LearningBird’s-Eye-ViewRepresentationfromMulti-CameraImagesviaSpatiotemporalTransformerslink时间:22.07机构:NanjingUniversity&&ShanghaiAILaboratoryTL;DR利用Transformer的Attention机制融合时空特征信息,在nuScenes测试集上达到SOTA精度,同时......
  • TextMeshPro - 材质参数 - 描边,投影,外发光,内发光
    有点类似photoshop中的图层样式,利用好也能制作出不错的艺术字效果。 Face: 文字外观 color: 文字颜色softness: 羽化程度 dilate: 外扩(变粗)或内收(变细)Texture: 贴图填充在字形内SpeedX: 贴图在x方向移动  Outline: 居中描边color: 描边颜色T......