Carla 学习笔记(1)之雷达与摄像头联合采集数据并存储数据
背景:Carla 使用版本为0.9.8,我这里使用的编译好的Carla软件,之前编译源文件版本的会出现各种问题,梯子也无法解决,这里建议直接使用官方github编译好的版本。在其他版本上应该也可以跑起来,前提条件是电脑安装了python3.7和程序中使用到的各个模块。
功能:下方程序代码主要是将摄像头和雷达(毫米波雷达)固定到车上,将收集到的车辆图片和点云保存到相应的文件中,每一个文件都以时间戳命名,方便查找对应的数据。
import argparse
import carla
import cv2
import logging
import carla
from carla import ColorConverter as cc
import numpy as np
import time
import datetime
import weakref
import math
import os
import sys
import glob
import random
import pygame
import pandas as pd
from PIL import Image
from queue import Queue
from queue import Empty
def parser():
argparser = argparse.ArgumentParser(
description=__doc__)
argparser.add_argument(
'--host',
metavar='H',
default='127.0.0.1',
help='IP of the host server (default: 127.0.0.1)')
argparser.add_argument(
'-p', '--port',
metavar='P',
default=2000,
type=int,
help='TCP port to listen to (default: 2000)')
argparser.add_argument(
'-n', '--number-of-vehicles',
metavar='N',
default=300,
type=int,
help='number of vehicles (default: 30)')
argparser.add_argument(
'-d', '--number-of-dangerous-vehicles',
metavar='N',
default=1,
type=int,
help='number of dangerous vehicles (default: 3)')
argparser.add_argument(
'--tm-port',
metavar='P',
default=8000,
type=int,
help='port to communicate with TM (default: 8000)')
argparser.add_argument(
'--sync',
action='store_true',
default=True,
help='Synchronous mode execution')
return argparser.parse_args()
def sensor_callback(sensor_data, sensor_queue, sensor_name, world):
if 'radar' in sensor_name:
points = np.frombuffer(sensor_data.raw_data,dtype=np.dtype('f4'))
points = np.reshape(points, (-1, 4))
# outputImgPath="../output/"
# filename = datetime.datetime.now().strftime("%Y-%m-%d-%H-%M-%S")
# f2 = open(outputImgPath+filename+'.txt','a')
# f2.write(str(points))
current_rot = sensor_data.transform.rotation
debug = world.debug
lists=[]
for detect in sensor_data:
azi = math.degrees(detect.azimuth)
alt = math.degrees(detect.altitude)
if abs(detect.velocity)>0 :
lists.append([azi,detect.depth,detect.velocity])
# lists.append(detect.depth)
# lists.append(detect.velocity)
# lists = np.reshape(lists, (-1, 3))
outputImgPath="../output/"
filename

这篇博客介绍了如何使用Carla 0.9.8版本结合摄像头和毫米波雷达,实现实时车辆图片和点云数据的同步采集,并以时间戳命名文件,便于数据管理和分析。
1133

被折叠的 条评论
为什么被折叠?



