当前位置: 首页 > news >正文

北海公司做网站南平seo

北海公司做网站,南平seo,做h游戏视频网站,哪个电商平台好做前言 点云数据作为一种丰富的三维空间信息表达方式,通常用于自动驾驶、机器人导航和三维建模等领域。然而,点云数据的直观性不如二维图像,这限制了它在一些需要快速视觉反馈的应用场景中的使用。本文将探讨如何将点云数据转换为二维图像&…

前言

点云数据作为一种丰富的三维空间信息表达方式,通常用于自动驾驶、机器人导航和三维建模等领域。然而,点云数据的直观性不如二维图像,这限制了它在一些需要快速视觉反馈的应用场景中的使用。本文将探讨如何将点云数据转换为二维图像,并介绍相关的技术和实践方法。

实现原理

将3D Box进行投影到图片上。

width, height = 480, 480
image = np.zeros((height, width, 3), dtype=np.uint8)dis_x_thresh =50
dis_y_thresh =40
# 遍历每个点,并在图像上绘制
for point in points:if abs(point[1]) < dis_y_thresh or point[0] > dis_x_thresh:x = (dis_y_thresh-point[1]) * width /(dis_y_thresh*2)  #此处的x对应于点云的yy = (dis_x_thresh-point[0]) * height /(dis_x_thresh*2)

代码实现

#获取3dbox检测框
def load_groundtruth(gt_file):with open(gt_file, "r") as hd:objects = json.load(hd)return objects
#获取检测框的角点
def get_obj_corners(obj):center = [obj["Center"]["CenterX"], obj["Center"]["CenterY"], obj["Center"]["CenterZ"]]size = [obj["Size"]["ObjectLength"], obj["Size"]["ObjectWidth"], obj["Size"]["ObjectHeight"]]yaw = obj["Yaw"]rot = np.asmatrix([[math.cos(yaw), -math.sin(yaw)],\[math.sin(yaw),  math.cos(yaw)]])plain_pts = np.asmatrix([[0.5 * size[0], 0.5*size[1]],\[0.5 * size[0], -0.5*size[1]],\[-0.5 * size[0], -0.5*size[1]],\[-0.5 * size[0], 0.5*size[1]]])tran_pts = np.asarray(rot * plain_pts.transpose())tran_pts = tran_pts.transpose()corners = np.arange(24).astype(np.float32).reshape(8, 3)for i in range(8):corners[i][0] = center[0] + tran_pts[i%4][0]corners[i][1] = center[1] + tran_pts[i%4][1]corners[i][2] = center[2] + (float(i >= 4) - 0.5) * size[2]return corners
#将3d box投影映射到Bev图片上。
for obj in objects:corners = get_obj_corners(obj)x1 = (dis_y_thresh-corners[0][1]) * width /(dis_y_thresh*2)y1 = (dis_x_thresh-corners[0][0]) * height /(dis_x_thresh*2)x2 = (dis_y_thresh-corners[1][1]) * width /(dis_y_thresh*2)y2 = (dis_x_thresh-corners[1][0]) * height /(dis_x_thresh*2)x3 = (dis_y_thresh-corners[2][1]) * width /(dis_y_thresh*2)y3 = (dis_x_thresh-corners[2][0]) * height /(dis_x_thresh*2)x4 = (dis_y_thresh-corners[3][1]) * width /(dis_y_thresh*2)y4 = (dis_x_thresh-corners[3][0]) * height /(dis_x_thresh*2)box = np.array([int(x1),int(y1),int(x2),int(y2),int(x3),int(y3),int(x4),int(y4)])boxs = box.reshape((-1,2))cv2.drawContours(image, [boxs], 0, (0, 255, 0), 2)

结果可视化

http://www.dt0577.cn/news/38805.html

相关文章:

  • 深圳营销网站建设模板宁波seo整体优化公司
  • 湖南建设工程网萧山seo
  • 青海营销网站建设公司seo的工作内容主要包括
  • 怎么做重庆时时彩网站代理山西网络推广专业
  • 如何做网站logo 设置平滑一般的电脑培训班要多少钱
  • 低价网站建设多少钱淘宝的前100个关键词排名
  • 电脑做h5比较好的网站百度搜索引擎使用技巧
  • 番禺做网站服务手机百度安装下载
  • 制作图网站有哪些内容品牌推广软文案例
  • f式布局网站网络服务合同纠纷
  • 邢台建一个网站多少钱怎么推广自己的店铺
  • 昭阳区建设局网站怎么引流推广
  • 石家庄最新疫情公布搜索广告优化
  • 毕业设计做网站有什么好处百度的客服电话是多少
  • 牡丹江网络推广谷歌seo网站推广怎么做优化
  • 本地南昌网站建设百度竞价排名又叫什么
  • 珠海专业网站建设价格seo培训公司
  • 网站如何自己做优化网站seo收录工具
  • 郑州建网站需要多少钱网站seo快速排名优化
  • 公安机关网站备案怎么做独立站seo
  • 个人介绍微电影网站模板淘宝客推广平台
  • 邢台信息港房屋出租网络优化seo薪酬
  • seo建站推广my63777免费域名查询
  • 廊坊网站推广外包中国2022年重大新闻
  • 国内网站建设公司排名nba最新赛程
  • 餐饮如何做网络推广关键词的优化和推广
  • 做网站的几个软件山西seo排名厂家
  • 做网站有什么用出杭州网站seo优化
  • 网站开发需要什么服务器百度app安装下载免费
  • 建设一个网站需要学哪些新浪网今日乌鲁木齐新闻