Пример #1
0
    def make_carla_settings(self):

        if self.settings_filepath is None:
            """Make a CarlaSettings object with the settings we need."""
            settings = CarlaSettings()
            settings.set(SynchronousMode=True,
                         SendNonPlayerAgentsInfo=True,
                         NumberOfVehicles=5,
                         NumberOfPedestrians=60,
                         WeatherId=random.choice(
                             [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14]))
            settings.randomize_seeds()
            camera0 = sensor.Camera('CameraRGB')
            camera0.set_image_size(WINDOW_WIDTH, WINDOW_HEIGHT)
            camera0.set_position(200, 0, 140)
            camera0.set_rotation(0.0, 0.0, 0.0)
            settings.add_sensor(camera0)
            camera1 = sensor.Camera('CameraDepth', PostProcessing='Depth')
            camera1.set_image_size(MINI_WINDOW_WIDTH, MINI_WINDOW_HEIGHT)
            camera1.set_position(200, 0, 140)
            camera1.set_rotation(0.0, 0.0, 0.0)
            settings.add_sensor(camera1)
            camera2 = sensor.Camera('CameraSemSeg',
                                    PostProcessing='SemanticSegmentation')
            camera2.set_image_size(MINI_WINDOW_WIDTH, MINI_WINDOW_HEIGHT)
            camera2.set_position(200, 0, 140)
            camera2.set_rotation(0.0, 0.0, 0.0)
            settings.add_sensor(camera2)
        else:
            # Alternatively, we can load these settings from a file.
            with open(self.settings_filepath, 'r') as fp:
                settings = fp.read()

        return settings
Пример #2
0
def make_carla_settings(args):
    """Make a CarlaSettings object with the settings we need.
    """
    settings = CarlaSettings()
    
    # There is no need for non-agent info requests if there are no pedestrians
    # or vehicles.
    get_non_player_agents_info = False
    if (NUM_PEDESTRIANS > 0 or NUM_VEHICLES > 0):
        get_non_player_agents_info = True

    # Base level settings
    settings.set(
        SynchronousMode=True,
        SendNonPlayerAgentsInfo=get_non_player_agents_info, 
        NumberOfVehicles=NUM_VEHICLES,
        NumberOfPedestrians=NUM_PEDESTRIANS,
        SeedVehicles=SEED_VEHICLES,
        SeedPedestrians=SEED_PEDESTRIANS,
        WeatherId=SIMWEATHER,
        QualityLevel=args.quality_level)
    camera0 = sensor.Camera('CameraRGB')
    camera0.set_image_size(1200, 800)
    camera0.set_position(-1.0, 0.0, 4.5)
    camera0.set_rotation(0.0, 0.0, 0.0)    
    camera0.set(FOV=90.0)
    settings.add_sensor(camera0)
    camera2 = sensor.Camera('CameraSemSeg', PostProcessing='SemanticSegmentation')
    camera2.set_image_size(320, 240)
    camera2.set_position(-1.0, 0.0, 4.5)
    camera2.set_rotation(0.0, 0.0, 0.0)
    settings.add_sensor(camera2)
    return settings
Пример #3
0
def make_carla_settings(args):
    """Make a CarlaSettings object with the settings we need.
    """
    settings = CarlaSettings()
    settings = CarlaSettings()
    settings.set(SynchronousMode=True,
                 SendNonPlayerAgentsInfo=False,
                 NumberOfVehicles=20,
                 NumberOfPedestrians=40,
                 WeatherId=1)
    settings.randomize_seeds()
    camera0 = sensor.Camera('CameraRGB')
    camera0.set_image_size(WINDOW_WIDTH, WINDOW_HEIGHT)
    camera0.set_position(2.0, 0.0, 1.4)
    camera0.set_rotation(0.0, 0.0, 0.0)
    settings.add_sensor(camera0)
    camera1 = sensor.Camera('CameraDepth', PostProcessing='Depth')
    camera1.set_image_size(MINI_WINDOW_WIDTH, MINI_WINDOW_HEIGHT)
    camera1.set_position(2.0, 0.0, 1.4)
    camera1.set_rotation(0.0, 0.0, 0.0)
    settings.add_sensor(camera1)
    camera2 = sensor.Camera('CameraSemSeg',
                            PostProcessing='SemanticSegmentation')
    camera2.set_image_size(MINI_WINDOW_WIDTH, MINI_WINDOW_HEIGHT)
    camera2.set_position(2.0, 0.0, 1.4)
    camera2.set_rotation(0.0, 0.0, 0.0)
    settings.add_sensor(camera2)

    return settings
Пример #4
0
    def carla_settings(self):
        settings = CarlaSettings()
        settings.set(SynchronousMode=False,
                     SendNonPlayerAgentsInfo=False,
                     NumberOfVehicles=0,
                     NumberOfPedestrians=0,
                     WeatherId=0)
        settings.randomize_seeds()

        camera0 = sensor.Camera('CameraCenter')
        camera0.set_image_size(WINDOW_WIDTH, WINDOW_HEIGHT)
        camera0.set_position(200, 0, 140)
        camera0.set_rotation(0.0, 0.0, 0.0)
        settings.add_sensor(camera0)

        camera1 = sensor.Camera('CameraLeft')
        camera1.set_image_size(WINDOW_WIDTH, WINDOW_HEIGHT)
        camera1.set_position(200, 0, 140)
        camera1.set_rotation(0.0, 0.0, -30.0)
        settings.add_sensor(camera1)

        camera2 = sensor.Camera('CameraRight')
        camera2.set_image_size(WINDOW_WIDTH, WINDOW_HEIGHT)
        camera2.set_position(200, 0, 140)
        camera2.set_rotation(0.0, 0.0, 30.0)
        settings.add_sensor(camera2)

        if self.map_view is not None:
            camera3 = sensor.Camera('TPPCamera')
            camera3.set_image_size(self.map_view.shape[1], WINDOW_HEIGHT // 2)
            camera3.set_position(-450, 0, 400)
            camera3.set_rotation(-30.0, 0.0, 0.0)
            settings.add_sensor(camera3)

        self.settings = settings
Пример #5
0
def make_carla_settings():
    """Make a CarlaSettings object with the settings we need."""
    settings = CarlaSettings()
    settings.set(SynchronousMode=False,
                 SendNonPlayerAgentsInfo=True,
                 NumberOfVehicles=15,
                 NumberOfPedestrians=30,
                 WeatherId=random.choice([1, 3, 7, 8, 14]))
    settings.randomize_seeds()
    camera0 = sensor.Camera('CameraRGB')
    camera0.set_image_size(WINDOW_WIDTH, WINDOW_HEIGHT)
    camera0.set_position(200, 0, 140)
    camera0.set_rotation(0.0, 0.0, 0.0)
    settings.add_sensor(camera0)
    camera1 = sensor.Camera('CameraDepth', PostProcessing='Depth')
    camera1.set_image_size(MINI_WINDOW_WIDTH, MINI_WINDOW_HEIGHT)
    camera1.set_position(200, 0, 140)
    camera1.set_rotation(0.0, 0.0, 0.0)
    settings.add_sensor(camera1)
    camera2 = sensor.Camera('CameraSemSeg',
                            PostProcessing='SemanticSegmentation')
    if mixed_reality:
        camera2.set_image_size(WINDOW_WIDTH, WINDOW_HEIGHT)
    else:
        camera2.set_image_size(MINI_WINDOW_WIDTH, MINI_WINDOW_HEIGHT)
    camera2.set_position(200, 0, 140)
    camera2.set_rotation(0.0, 0.0, 0.0)
    settings.add_sensor(camera2)
    return settings
Пример #6
0
def make_carla_settings(args):
    """Make a CarlaSettings object with the settings we need."""
    settings = CarlaSettings()
    settings.set(
        SynchronousMode=False,
        SendNonPlayerAgentsInfo=True,
        NumberOfVehicles=NUM_VEHICLES,
        NumberOfPedestrians=NUM_PEDESTRIANS,
        DisableTwoWheeledVehicles=NO_BIKE,
        # WeatherId=random.choice([1, 3, 7, 8, 14]),
        WeatherId=1,
        QualityLevel=args.quality_level)
    settings.randomize_seeds()
    camera0 = sensor.Camera('CameraRGB')
    camera0.set_image_size(WINDOW_WIDTH, WINDOW_HEIGHT)
    camera0.set_position(0, 0.0, CAMERA_HEIGHT_POS)
    camera0.set_rotation(0.0, 0.0, 0.0)
    settings.add_sensor(camera0)

    lidar = sensor.Lidar('Lidar32')
    lidar.set_position(0, 0.0, LIDAR_HEIGHT_POS)
    lidar.set_rotation(0, 0, 0)
    lidar.set(Channels=40,
              Range=MAX_RENDER_DEPTH_IN_METERS,
              PointsPerSecond=720000,
              RotationFrequency=10,
              UpperFovLimit=7,
              LowerFovLimit=-16)
    settings.add_sensor(lidar)
    """ Depth camera for filtering out occluded vehicles """
    depth_camera = sensor.Camera('DepthCamera', PostProcessing='Depth')
    depth_camera.set(FOV=90.0)
    depth_camera.set_image_size(WINDOW_WIDTH, WINDOW_HEIGHT)
    depth_camera.set_position(0, 0, CAMERA_HEIGHT_POS)
    depth_camera.set_rotation(0, 0, 0)
    settings.add_sensor(depth_camera)
    # (Intrinsic) K Matrix
    # | f 0 Cu
    # | 0 f Cv
    # | 0 0 1
    # (Cu, Cv) is center of image
    k = np.identity(3)
    k[0, 2] = WINDOW_WIDTH_HALF
    k[1, 2] = WINDOW_HEIGHT_HALF
    f = WINDOW_WIDTH / \
        (2.0 * math.tan(90.0 * math.pi / 360.0))
    k[0, 0] = k[1, 1] = f
    camera_to_car_transform = camera0.get_unreal_transform()
    lidar_to_car_transform = lidar.get_transform() * Transform(
        Rotation(yaw=90), Scale(z=-1))
    return settings, k, camera_to_car_transform, lidar_to_car_transform
def make_carla_settings():
    """Make a CarlaSettings object with the settings we need."""

    settings = CarlaSettings()
    settings.set(
        SendNonPlayerAgentsInfo=True,
        SynchronousMode=True,
        NumberOfVehicles=30,
        NumberOfPedestrians=50,
        WeatherId=1)

    settings.set(DisableTwoWheeledVehicles=True)
    
    # --------------------------- CENTRAL CAMERA ---------------------------

    settings.randomize_seeds() # IMPORTANT TO RANDOMIZE THE SEEDS EVERY TIME
    camera0 = sensor.Camera('CentralSemanticSeg', PostProcessing='SemanticSegmentation')
    camera0.set_image_size(WINDOW_WIDTH, WINDOW_HEIGHT)
    camera0.set(FOV=FOV)
    camera0.set_position(2.0, 0.0, 1.4)
    camera0.set_rotation(-15.0, 0, 0)

    settings.add_sensor(camera0)
    camera0 = sensor.Camera('CentralRGB')
    camera0.set_image_size(WINDOW_WIDTH, WINDOW_HEIGHT)
    camera0.set(FOV=FOV)
    camera0.set_position(2.0, 0.0, 1.4)
    camera0.set_rotation(-15.0, 0, 0)

    settings.add_sensor(camera0)

    # --------------------------- TOP CAMERA ---------------------------

    camera0 = sensor.Camera('TopSemanticSeg', PostProcessing='SemanticSegmentation')
    camera0.set_image_size(WINDOW_WIDTH, WINDOW_HEIGHT)
    camera0.set(FOV=FOV)
    camera0.set_position(12.0, 0.0, 15.0)
    camera0.set_rotation(-90.0, 90.0, -90.0)

    settings.add_sensor(camera0)
    camera0 = sensor.Camera('TopRGB')
    camera0.set_image_size(WINDOW_WIDTH, WINDOW_HEIGHT)
    camera0.set(FOV=FOV)
    camera0.set_position(12.0, 0.0, 15.0)
    camera0.set_rotation(-90.0, 90.0, -90.0)

    settings.add_sensor(camera0)


    return settings
def make_carla_settings(args):
    """Make a CarlaSettings object with the settings we need."""
    settings = CarlaSettings()
    settings.set(
        SynchronousMode=True,
        SendNonPlayerAgentsInfo=True,
        NumberOfVehicles=10,
        NumberOfPedestrians=100,
        WeatherId=random.choice([1, 3, 7, 8, 14]),
        QualityLevel=args.quality_level)
    settings.randomize_seeds()
    # camera0 = sensor.Camera('CameraRGB_main')
    # camera0.set_image_size(WINDOW_WIDTH, WINDOW_HEIGHT)
    # camera0.set_position(2.0, 0.0, 1.4)
    # camera0.set_rotation(0.0, 0.0, 0.0)
    # settings.add_sensor(camera0)
    # camera1 = sensor.Camera('CameraDepth', PostProcessing='Depth')
    # camera1.set_image_size(MINI_WINDOW_WIDTH, MINI_WINDOW_HEIGHT)
    # camera1.set_position(2.0, 0.0, 1.4)
    # camera1.set_rotation(0.0, 0.0, 0.0)
    # settings.add_sensor(camera1)
    # camera2 = sensor.Camera('CameraSemSeg', PostProcessing='SemanticSegmentation')
    # camera2.set_image_size(MINI_WINDOW_WIDTH, MINI_WINDOW_HEIGHT)
    # camera2.set_position(2.0, 0.0, 1.4)
    # camera2.set_rotation(0.0, 0.0, 0.0)
    # settings.add_sensor(camera2)
    cameraNN = sensor.Camera('CameraRGB')
    cameraNN.set_image_size(H5_WINDOW_WIDTH, H5_WINDOW_HEIGHT)
    cameraNN.set_position(2.0, 0.0, 1.4)
    cameraNN.set_rotation(0.0, 0.0, 0.0)
    settings.add_sensor(cameraNN)
    camera3 = sensor.Camera('CameraRGB_h5')
    camera3.set_image_size(H5_WINDOW_WIDTH, H5_WINDOW_HEIGHT)
    camera3.set_position(2.0, 0.0, 1.4)
    camera3.set_rotation(0.0, 0.0, 0.0)
    settings.add_sensor(camera3)
    if args.lidar:
        lidar = sensor.Lidar('Lidar32')
        lidar.set_position(0, 0, 2.5)
        lidar.set_rotation(0, 0, 0)
        lidar.set(
            Channels=32,
            Range=50,
            PointsPerSecond=100000,
            RotationFrequency=10,
            UpperFovLimit=10,
            LowerFovLimit=-30)
        settings.add_sensor(lidar)
    return settings
Пример #9
0
def make_carla_settings(args):
    """Make a CarlaSettings object with the settings we need."""

    ########################################################################################################
    # TODO
    # Change this to add more cameras
    # Remove segmentation, depth if we use our own
    # Change the no of vehicles, pedestrians, weather
    ########################################################################################################

    ###################################### Default from carla ######################################

    settings = CarlaSettings()
    settings.set(SynchronousMode=False,
                 SendNonPlayerAgentsInfo=True,
                 NumberOfVehicles=15,
                 NumberOfPedestrians=30,
                 WeatherId=random.choice([1, 3, 7, 8, 14]),
                 QualityLevel=args.quality_level)
    settings.randomize_seeds()
    camera0 = sensor.Camera('CameraRGB')
    camera0.set_image_size(WINDOW_WIDTH, WINDOW_HEIGHT)
    camera0.set_position(2.0, 0.0, 1.4)
    camera0.set_rotation(0.0, 0.0, 0.0)
    settings.add_sensor(camera0)
    camera1 = sensor.Camera('CameraDepth', PostProcessing='Depth')
    camera1.set_image_size(MINI_WINDOW_WIDTH, MINI_WINDOW_HEIGHT)
    camera1.set_position(2.0, 0.0, 1.4)
    camera1.set_rotation(0.0, 0.0, 0.0)
    settings.add_sensor(camera1)
    camera2 = sensor.Camera('CameraSemSeg',
                            PostProcessing='SemanticSegmentation')
    camera2.set_image_size(MINI_WINDOW_WIDTH, MINI_WINDOW_HEIGHT)
    camera2.set_position(2.0, 0.0, 1.4)
    camera2.set_rotation(0.0, 0.0, 0.0)
    settings.add_sensor(camera2)
    if args.lidar:
        lidar = sensor.Lidar('Lidar32')
        lidar.set_position(0, 0, 2.5)
        lidar.set_rotation(0, 0, 0)
        lidar.set(Channels=32,
                  Range=50,
                  PointsPerSecond=100000,
                  RotationFrequency=10,
                  UpperFovLimit=10,
                  LowerFovLimit=-30)
        settings.add_sensor(lidar)
    return settings
def make_carla_settings():
    """Make a CarlaSettings object with the settings we need."""



    settings = CarlaSettings()
    settings.set(
        SendNonPlayerAgentsInfo=True,
        SynchronousMode=True,
        NumberOfVehicles=30,
        NumberOfPedestrians=50,
        WeatherId=1)

    settings.set(DisableTwoWheeledVehicles=True)

    settings.randomize_seeds() # IMPORTANT TO RANDOMIZE THE SEEDS EVERY TIME
    camera0 = sensor.Camera('CameraRGB')
    camera0.set_image_size(WINDOW_WIDTH, WINDOW_HEIGHT)
    camera0.set(FOV=100)
    camera0.set_image_size(800, 600)
    camera0.set_position(2.0, 0.0, 1.4)
    camera0.set_rotation(-15.0, 0, 0)

    settings.add_sensor(camera0)

    return settings




# 65, 18 to 65, 16

# 18, 145 to 16, 145

# 79, 45 to 79 47
Пример #11
0
def make_carla_settings(args):
    """Make a CarlaSettings object with the settings we need.
    """
    settings = CarlaSettings()

    # There is no need for non-agent info requests if there are no pedestrians
    # or vehicles.
    get_non_player_agents_info = False
    if (NUM_PEDESTRIANS > 0 or NUM_VEHICLES > 0):
        get_non_player_agents_info = True

    # Base level settings
    settings.set(SynchronousMode=True,
                 SendNonPlayerAgentsInfo=get_non_player_agents_info,
                 NumberOfVehicles=NUM_VEHICLES,
                 NumberOfPedestrians=NUM_PEDESTRIANS,
                 SeedVehicles=SEED_VEHICLES,
                 SeedPedestrians=SEED_PEDESTRIANS,
                 WeatherId=SIMWEATHER,
                 QualityLevel=args.quality_level)

    WINDOW_WIDTH = 800
    WINDOW_HEIGHT = 600

    camera0 = sensor.Camera('CameraRGB')
    camera0.set_image_size(WINDOW_WIDTH, WINDOW_HEIGHT)
    camera0.set_position(2.0, 0.0, 1.4)
    camera0.set_rotation(0.0, 0.0, 0.0)
    settings.add_sensor(camera0)

    return settings
def make_carla_settings(args):
    """Make a CarlaSettings object with the settings we need."""

    settings = CarlaSettings()
    settings.set(SynchronousMode=True,
                 SendNonPlayerAgentsInfo=True,
                 NumberOfVehicles=0,
                 NumberOfPedestrians=0,
                 WeatherId=random.choice([1, 3, 7, 8, 14]),
                 QualityLevel=args.quality_level)
    settings.randomize_seeds()

    #Camera type and placement is chosen
    #comment out a camera block if not wanted
    camera0 = sensor.Camera('CameraCenter')
    camera0.set_image_size(WINDOW_WIDTH, WINDOW_HEIGHT)
    camera0.set_position(2.0, 0.0, 1.4)
    camera0.set_rotation(0.0, 0.0, 0.0)
    settings.add_sensor(camera0)

    camera1 = sensor.Camera('CameraRight')
    camera1.set_image_size(WINDOW_WIDTH, WINDOW_HEIGHT)
    camera1.set_position(2.0, 1.5, 1.4)
    camera1.set_rotation(0.0, 0.0, 0.0)
    settings.add_sensor(camera1)

    camera2 = sensor.Camera('CameraLeft')
    camera2.set_image_size(WINDOW_WIDTH, WINDOW_HEIGHT)
    camera2.set_position(2.0, -1.5, 1.4)
    camera2.set_rotation(0.0, 0.0, 0.0)
    settings.add_sensor(camera2)

    #if lidar is chosen, placement of it
    if args.lidar:
        lidar = sensor.Lidar('Lidar32')
        lidar.set_position(0, 0, 2.5)
        lidar.set_rotation(0, 0, 0)
        lidar.set(Channels=32,
                  Range=50,
                  PointsPerSecond=100000,
                  RotationFrequency=10,
                  UpperFovLimit=10,
                  LowerFovLimit=-30)
        settings.add_sensor(lidar)
    return settings
def make_carla_settings(args):
    """Make a CarlaSettings object with the settings we need."""
    model = lm('./model_semseg.hdf5')
    settings = CarlaSettings()
    settings.set(SynchronousMode=True,
                 SendNonPlayerAgentsInfo=True,
                 NumberOfVehicles=5,
                 NumberOfPedestrians=30,
                 WeatherId=random.choice(list(range(15))),
                 QualityLevel=args.quality_level)
    settings.randomize_seeds()
    camera0 = sensor.Camera('CameraRGB')
    camera0.set_image_size(WINDOW_WIDTH, WINDOW_HEIGHT)
    camera0.set_position(2.0, 0.0, 1.4)
    camera0.set_rotation(0.0, 0.0, 0.0)
    settings.add_sensor(camera0)
    # camera1 = sensor.Camera('CameraDepth', PostProcessing='Depth')
    # # camera1.set_image_size(MINI_WINDOW_WIDTH, MINI_WINDOW_HEIGHT)
    # camera1.set_image_size(WINDOW_WIDTH, WINDOW_HEIGHT)
    # camera1.set_position(2.0, 0.0, 1.4)
    # camera1.set_rotation(0.0, 0.0, 0.0)
    # settings.add_sensor(camera1)
    camera2 = sensor.Camera('CameraSemSeg',
                            PostProcessing='SemanticSegmentation')
    # camera2.set_image_size(MINI_WINDOW_WIDTH, MINI_WINDOW_HEIGHT)
    camera2.set_image_size(WINDOW_WIDTH, WINDOW_HEIGHT)
    camera2.set_position(2.0, 0.0, 1.4)
    camera2.set_rotation(0.0, 0.0, 0.0)
    settings.add_sensor(camera2)
    # if args.lidar:
    #     lidar = sensor.Lidar('Lidar32')
    #     lidar.set_position(0, 0, 2.5)
    #     lidar.set_rotation(0, 0, 0)
    #     lidar.set(
    #         Channels=32,
    #         Range=50,
    #         PointsPerSecond=100000,
    #         RotationFrequency=10,
    #         UpperFovLimit=10,
    #         LowerFovLimit=-30)
    #     settings.add_sensor(lidar)
    return settings
Пример #14
0
def make_carla_settings(args):
    """Make a CarlaSettings object with the settings we need."""
    settings = CarlaSettings()
    settings.set(SynchronousMode=True,
                 SendNonPlayerAgentsInfo=False,
                 NumberOfVehicles=30,
                 NumberOfPedestrians=0,
                 WeatherId=1,
                 QualityLevel='Epic')
    settings.randomize_seeds()
    camera0 = sensor.Camera('CameraRGB')
    camera0.set_image_size(CAM_WINDOW_WIDTH, CAM_WINDOW_HEIGHT)
    camera0.set_position(2.0, 0.0, 1.4)
    camera0.set_rotation(-15.0, 0.0, 0.0)
    settings.add_sensor(camera0)
    camera1 = sensor.Camera('CameraDepth', PostProcessing='Depth')
    camera1.set_image_size(MINI_WINDOW_WIDTH, MINI_WINDOW_HEIGHT)
    camera1.set_position(2.0, 0.0, 1.4)
    camera1.set_rotation(0.0, 0.0, 0.0)
    settings.add_sensor(camera1)
    camera2 = sensor.Camera('CameraSemSeg',
                            PostProcessing='SemanticSegmentation')
    camera2.set_image_size(MINI_WINDOW_WIDTH, MINI_WINDOW_HEIGHT)
    camera2.set_position(2.0, 0.0, 1.4)
    camera2.set_rotation(0.0, 0.0, 0.0)
    settings.add_sensor(camera2)
    lidar = sensor.Lidar('Lidar32')
    lidar.set_position(0, 0, 2.5)
    lidar.set_rotation(0, 0, 0)
    lidar.set(Channels=0,
              Range=50,
              PointsPerSecond=100000,
              RotationFrequency=10,
              UpperFovLimit=0,
              LowerFovLimit=0)
    settings.add_sensor(lidar)
    return settings
Пример #15
0
def make_carla_settings(enable_lidar):
    """Make a CarlaSettings object with the settings we need."""
    settings = CarlaSettings()
    settings.set(SynchronousMode=False,
                 SendNonPlayerAgentsInfo=True,
                 NumberOfVehicles=15,
                 NumberOfPedestrians=30,
                 WeatherId=random.choice([1, 3, 7, 8, 14]))
    settings.randomize_seeds()
    camera0 = sensor.Camera('CameraRGB')
    camera0.set_image_size(WINDOW_WIDTH, WINDOW_HEIGHT)
    camera0.set_position(200, 0, 140)
    camera0.set_rotation(0.0, 0.0, 0.0)
    settings.add_sensor(camera0)
    camera1 = sensor.Camera('CameraDepth', PostProcessing='Depth')
    camera1.set_image_size(MINI_WINDOW_WIDTH, MINI_WINDOW_HEIGHT)
    camera1.set_position(200, 0, 140)
    camera1.set_rotation(0.0, 0.0, 0.0)
    settings.add_sensor(camera1)
    camera2 = sensor.Camera('CameraSemSeg',
                            PostProcessing='SemanticSegmentation')
    camera2.set_image_size(MINI_WINDOW_WIDTH, MINI_WINDOW_HEIGHT)
    camera2.set_position(200, 0, 140)
    camera2.set_rotation(0.0, 0.0, 0.0)
    settings.add_sensor(camera2)
    if enable_lidar:
        lidar = sensor.Lidar('Lidar32')
        lidar.set_position(0, 0, 250)
        lidar.set_rotation(0, 0, 0)
        lidar.set(Channels=32,
                  Range=5000,
                  PointsPerSecond=100000,
                  RotationFrequency=10,
                  UpperFovLimit=10,
                  LowerFovLimit=-30)
        settings.add_sensor(lidar)
    return settings
Пример #16
0
def make_carla_settings(args):
    """Make a CarlaSettings object with the settings we need."""
    settings = CarlaSettings()
    settings.set(SynchronousMode=False,
                 SendNonPlayerAgentsInfo=True,
                 NumberOfVehicles=10,
                 NumberOfPedestrians=5,
                 WeatherId=random.choice([1, 3, 7, 8, 14]),
                 QualityLevel=args.quality_level)
    settings.randomize_seeds()
    camera0 = sensor.Camera('CameraRGB')
    camera0.set_image_size(WINDOW_WIDTH, WINDOW_HEIGHT)
    camera0.set_position(0.30, 0, 1.30)
    camera0.set_rotation(0.0, 0.0, 0.0)
    settings.add_sensor(camera0)
    return settings
Пример #17
0
def make_carla_settings():
    """Make a CarlaSettings object with the settings we need."""

    settings = CarlaSettings()
    settings.set(SendNonPlayerAgentsInfo=True, SynchronousMode=True)
    settings.set(DisableTwoWheeledVehicles=True)

    settings.randomize_seeds()
    # Add a carla camera.
    camera0 = sensor.Camera('CameraRGB')
    camera0.set_image_size(WINDOW_WIDTH, WINDOW_HEIGHT)
    camera0.set(FOV=FOV)
    camera0.set_position(2.0, 0.0, 1.4)
    camera0.set_rotation(-15.0, 0, 0)
    settings.add_sensor(camera0)

    return settings
Пример #18
0
def make_carla_settings(args):
    """Make a CarlaSettings object with the settings we need."""
    settings = CarlaSettings()
    settings.set(SynchronousMode=True,
                 SendNonPlayerAgentsInfo=True,
                 NumberOfVehicles=5,
                 NumberOfPedestrians=5,
                 WeatherId=1,
                 QualityLevel='Low',
                 DisableTwoWheeledVehicles=True,
                 SeedVehicles=123456789,
                 SeedPedestrians=123456789)
    camera0 = sensor.Camera('CameraRGB')
    camera0.set_image_size(WINDOW_WIDTH, WINDOW_HEIGHT)
    camera0.set_position(2.0, 0.0, 1.4)
    camera0.set_rotation(0.0, 0.0, 0.0)
    settings.add_sensor(camera0)
    return settings
Пример #19
0
def make_carla_settings(args, vehicle_tot):
    # Create a CarlaSettings object. This object is a wrapper around
    # the CarlaSettings.ini file. Here we set the configuration we
    # want for the new episode.
    settings = CarlaSettings()
    settings.set(SynchronousMode=False,
                 SendNonPlayerAgentsInfo=True,
                 NumberOfVehicles=vehicle_tot,
                 NumberOfPedestrians=0,
                 WeatherId=1,
                 QualityLevel=args.quality_level)
    settings.randomize_seeds()

    camera0 = sensor.Camera('CameraRGB')
    camera0.set_image_size(WINDOW_WIDTH, WINDOW_HEIGHT)

    px, py, pz = 2.0, 0.0, 1.4  # Default (Front)
    rx, ry, rz = 0.0, 0.0, 0.0

    if args.camera == "Driver":
        px = -0.3
        py = -0.5
        pz = 1.1
    elif args.camera == "Hood":
        px = 1.0
        py = 0.0
        pz = 1.4
    elif args.camera == "Top":
        px = -5.5
        py = 0.0
        pz = 3.0
        rx = -10.0

    camera0.set_position(px, py, pz)
    camera0.set_rotation(rx, ry, rz)
    settings.add_sensor(camera0)

    return settings
Пример #20
0
def make_carla_settings(args):
    """Make a CarlaSettings object with the settings we need."""
    settings = CarlaSettings()
    settings.set(SynchronousMode=False,
                 SendNonPlayerAgentsInfo=True,
                 NumberOfVehicles=15,
                 NumberOfPedestrians=30,
                 WeatherId=random.choice([1, 3, 7, 8, 14]),
                 QualityLevel=args.quality_level)
    settings.randomize_seeds()
    camera0 = sensor.Camera('CameraSemSeg',
                            PostProcessing='SemanticSegmentation')
    camera0.set_image_size(WINDOW_WIDTH, WINDOW_HEIGHT)
    camera0.set_position(2.0, 0.0, 1.4)
    camera0.set_rotation(0.0, 0.0, 0.0)
    settings.add_sensor(camera0)

    #camera2 = sensor.Camera('CameraSemSeg', PostProcessing='SemanticSegmentation')
    #camera2.set_image_size(MINI_WINDOW_WIDTH, MINI_WINDOW_HEIGHT)
    #camera2.set_position(2.0, 0.0, 1.4)
    #camera2.set_rotation(0.0, 0.0, 0.0)
    #settings.add_sensor(camera2)
    return settings
Пример #21
0
def make_carla_settings():
    """Make a CarlaSettings object with the settings we need."""
    settings = CarlaSettings()
    settings.set(SynchronousMode=True,
                 SendNonPlayerAgentsInfo=True,
                 NumberOfVehicles=120,
                 NumberOfPedestrians=140,
                 WeatherId=weather_choice,
                 SeedVehicles=random.randint(0, 123456),
                 SeedPedestrians=random.randint(0, 123456))

    # settings.randomize_seeds()
    camera0 = sensor.Camera('CameraFront')
    camera0.set(FOV=100)
    camera0.set_image_size(WINDOW_WIDTH, WINDOW_HEIGHT)
    camera0.set_position(1.35, 0, 1.40)
    camera0.set_rotation(-15.0, 0.0, 0.0)
    settings.add_sensor(camera0)
    camera1 = sensor.Camera('CameraLeft')
    camera1.set_image_size(MINI_WINDOW_WIDTH, MINI_WINDOW_HEIGHT)
    camera1.set_position(1.30, -0.50, 1.40)
    camera1.set_rotation(-20.0, 300.0, 0.0)
    settings.add_sensor(camera1)
    camera2 = sensor.Camera('CameraRight')
    camera2.set_image_size(MINI_WINDOW_WIDTH, MINI_WINDOW_HEIGHT)
    camera2.set_position(1.30, 0.50, 1.40)
    camera2.set_rotation(-20.0, 60.0, 0.0)
    settings.add_sensor(camera2)

    # camera3 = sensor.Camera('CameraFrontDepth', PostProcessing='Depth')
    # camera3.set(FOV=100)
    # camera3.set_image_size(WINDOW_WIDTH, WINDOW_HEIGHT)
    # camera3.set_position(135, 0, 140)
    # camera3.set_rotation(-15.0, 0.0, 0.0)
    # settings.add_sensor(camera3)
    # camera4 = sensor.Camera('CameraLeftDepth', PostProcessing='Depth')
    # camera4.set_image_size(MINI_WINDOW_WIDTH, MINI_WINDOW_HEIGHT)
    # camera4.set_position(130, -50, 140)
    # camera4.set_rotation(-20.0, 300.0, 0.0)
    # settings.add_sensor(camera4)
    # camera5 = sensor.Camera('CameraRightDepth', PostProcessing='Depth')
    # camera5.set_image_size(MINI_WINDOW_WIDTH, MINI_WINDOW_HEIGHT)
    # camera5.set_position(130, 50, 140)
    # camera5.set_rotation(-20.0, 60.0, 0.0)
    # settings.add_sensor(camera5)

    # camera6 = sensor.Camera('CameraFrontSeg', PostProcessing='SemanticSegmentation')
    # camera6.set(FOV=100)
    # camera6.set_image_size(WINDOW_WIDTH, WINDOW_HEIGHT)
    # camera6.set_position(135, 0, 140)
    # camera6.set_rotation(-15.0, 0.0, 0.0)
    # settings.add_sensor(camera6)
    # camera7 = sensor.Camera('CameraLeftSeg', PostProcessing='SemanticSegmentation')
    # camera7.set_image_size(MINI_WINDOW_WIDTH, MINI_WINDOW_HEIGHT)
    # camera7.set_position(130, -50, 140)
    # camera7.set_rotation(-20.0, 300.0, 0.0)
    # settings.add_sensor(camera7)
    # camera8 = sensor.Camera('CameraRightSeg', PostProcessing='SemanticSegmentation')
    # camera8.set_image_size(MINI_WINDOW_WIDTH, MINI_WINDOW_HEIGHT)
    # camera8.set_position(130, 50, 140)
    # camera8.set_rotation(-20.0, 60.0, 0.0)
    # settings.add_sensor(camera8)

    return settings
Пример #22
0
    def _initialize_carla(self):
        # Initialize settings
        settings = CarlaSettings()
        settings.set(
            SynchronousMode=True,
            NumberOfVehicles=self._settings["number_of_vehicles"],
            NumberOfPedestrians=self._settings["number_of_pedastrians"],
            WeatherId=self._settings["weather_id"],
            QualityLevel=self._settings["quality_level"],
            SendNonPlayerAgentsInfo=True,
        )
        settings.randomize_seeds()

        output_image_width = self._settings["output_image_width"]
        output_image_height = self._settings["output_image_height"]

        # Add a game camera 1 and 2
        game_camera = sensor.Camera("GameCamera")
        game_camera.set_image_size(
            self._settings["window_width"], self._settings["window_height"]
        )
        game_camera.set_position(2.0, 0.0, 1.4)
        game_camera.set_rotation(0.0, 0.0, 0.0)
        settings.add_sensor(game_camera)

        game_camera_3p = sensor.Camera("GameCamera3p")
        game_camera_3p.set_image_size(
            self._settings["window_width"], self._settings["window_height"]
        )
        game_camera_3p.set_position(-5, 0.0, 3)
        game_camera_3p.set_rotation(-15, 0.0, 0)
        settings.add_sensor(game_camera_3p)

        # Add RGB center camera
        rgb_camera_center = sensor.Camera("RGBCameraCenter")
        rgb_camera_center.set_image_size(output_image_width, output_image_height)
        rgb_camera_center.set_position(2.0, 0.0, 1.4)
        rgb_camera_center.set_rotation(0.0, 0.0, 0.0)
        settings.add_sensor(rgb_camera_center)

        # Add RGB left camera
        rgb_camera_left = sensor.Camera("RGBCameraLeft")
        rgb_camera_left.set_image_size(output_image_width, output_image_height)
        rgb_camera_left.set_position(2.0, -1, 1.4)
        rgb_camera_left.set_rotation(0.0, 0.0, 0.0)
        settings.add_sensor(rgb_camera_left)

        # Add RGB right camera
        rgb_camera_right = sensor.Camera("RGBCameraRight")
        rgb_camera_right.set_image_size(output_image_width, output_image_height)
        rgb_camera_right.set_position(2.0, 1, 1.4)
        rgb_camera_right.set_rotation(0.0, 0.0, 0.0)
        settings.add_sensor(rgb_camera_right)

        # Add depth camera
        depth_camera = sensor.Camera("DepthCamera", PostProcessing="Depth")
        depth_camera.set_image_size(output_image_width, output_image_height)
        depth_camera.set_position(2.0, 0.0, 1.4)
        depth_camera.set_rotation(0.0, 0.0, 0.0)
        settings.add_sensor(depth_camera)

        # Add semantic segmentation camera
        sem_seg_camera = sensor.Camera(
            "SemSegCamera", PostProcessing="SemanticSegmentation"
        )
        sem_seg_camera.set_image_size(output_image_width, output_image_height)
        sem_seg_camera.set_position(2.0, 0.0, 1.4)
        sem_seg_camera.set_rotation(0.0, 0.0, 0.0)
        settings.add_sensor(sem_seg_camera)

        self._carla_settings = settings

        logging.debug("Carla initialized")
Пример #23
0
def make_carla_settings():
    """Make a CarlaSettings object with the settings we need."""

    settings = CarlaSettings()
    settings.set(SendNonPlayerAgentsInfo=True,
                 SynchronousMode=True,
                 NumberOfVehicles=30,
                 NumberOfPedestrians=50,
                 WeatherId=1)

    settings.set(DisableTwoWheeledVehicles=True)

    settings.randomize_seeds()  # IMPORTANT TO RANDOMIZE THE SEEDS EVERY TIME
    camera0 = sensor.Camera('CentralSemanticSeg',
                            PostProcessing='SemanticSegmentation')
    camera0.set_image_size(WINDOW_WIDTH, WINDOW_HEIGHT)
    camera0.set(FOV=FOV)
    camera0.set_position(2.0, 0.0, 1.4)
    camera0.set_rotation(-15.0, 0, 0)

    settings.add_sensor(camera0)
    camera0 = sensor.Camera('CentralRGB')
    camera0.set_image_size(WINDOW_WIDTH, WINDOW_HEIGHT)
    camera0.set(FOV=FOV)
    camera0.set_position(2.0, 0.0, 1.4)
    camera0.set_rotation(-15.0, 0, 0)

    settings.add_sensor(camera0)
    camera0 = sensor.Camera('CentralDepth', PostProcessing='Depth')
    camera0.set_image_size(WINDOW_WIDTH, WINDOW_HEIGHT)
    camera0.set(FOV=FOV)
    camera0.set_position(2.0, 0.0, 1.4)
    camera0.set_rotation(-15.0, 0, 0)

    settings.add_sensor(camera0)

    camera0 = sensor.Camera('LeftSemanticSeg',
                            PostProcessing='SemanticSegmentation')
    camera0.set_image_size(WINDOW_WIDTH, WINDOW_HEIGHT)
    camera0.set(FOV=FOV)
    camera0.set_position(2.0, 0.0, 1.4)
    camera0.set_rotation(-15.0, -30.0, 0)

    settings.add_sensor(camera0)
    camera0 = sensor.Camera('LeftRGB')
    camera0.set_image_size(WINDOW_WIDTH, WINDOW_HEIGHT)
    camera0.set(FOV=FOV)
    camera0.set_position(2.0, 0.0, 1.4)
    camera0.set_rotation(-15.0, -30.0, 0)

    settings.add_sensor(camera0)
    camera0 = sensor.Camera('LeftDepth', PostProcessing='Depth')
    camera0.set_image_size(WINDOW_WIDTH, WINDOW_HEIGHT)
    camera0.set(FOV=FOV)
    camera0.set_position(2.0, 0.0, 1.4)
    camera0.set_rotation(-15.0, -30.0, 0)

    settings.add_sensor(camera0)

    camera0 = sensor.Camera('RightSemanticSeg',
                            PostProcessing='SemanticSegmentation')
    camera0.set_image_size(WINDOW_WIDTH, WINDOW_HEIGHT)
    camera0.set(FOV=FOV)
    camera0.set_position(2.0, 0.0, 1.4)
    camera0.set_rotation(-15.0, 30.0, 0)

    settings.add_sensor(camera0)
    camera0 = sensor.Camera('RightRGB')
    camera0.set_image_size(WINDOW_WIDTH, WINDOW_HEIGHT)
    camera0.set(FOV=FOV)
    camera0.set_position(2.0, 0.0, 1.4)
    camera0.set_rotation(-15.0, 30.0, 0)

    settings.add_sensor(camera0)
    camera0 = sensor.Camera('RightDepth', PostProcessing='Depth')
    camera0.set_image_size(WINDOW_WIDTH, WINDOW_HEIGHT)
    camera0.set(FOV=FOV)
    camera0.set_position(2.0, 0.0, 1.4)
    camera0.set_rotation(-15.0, 30.0, 0)

    settings.add_sensor(camera0)

    lidar = sensor.Lidar('Lidar32')
    lidar.set_position(0, 0, 2.5)
    lidar.set_rotation(0, 0, 0)
    lidar.set(Channels=32,
              Range=50,
              PointsPerSecond=100000,
              RotationFrequency=10,
              UpperFovLimit=10,
              LowerFovLimit=-30)
    settings.add_sensor(lidar)
    return settings
def run_carla_client(args):
    with make_connection(CarlaClient, args.host, args.port, timeout=15) as client:
        logging.info('CarlaClient connected')
        filename = '_out/test_episode_{:0>4d}/{:s}/{:0>6d}'
        frames_per_episode = 300
        episode = 0
        while True:
            episode += 1
            settings = CarlaSettings()
            settings.set(SendNonPlayerAgentsInfo=True, SynchronousMode=args.synchronous)
            settings.randomize_seeds()
            camera = sensor.Camera('DefaultCamera')
            camera.set_image_size(300, 200) # Do not change this, hard-coded in test.
            settings.add_sensor(camera)
            lidar = sensor.Lidar('DefaultLidar')
            settings.add_sensor(lidar)

            logging.debug('sending CarlaSettings:\n%s', settings)
            logging.info('new episode requested')

            scene = client.load_settings(settings)

            number_of_player_starts = len(scene.player_start_spots)
            player_start = random.randint(0, max(0, number_of_player_starts - 1))
            logging.info(
                'start episode at %d/%d player start (%d frames)',
                player_start,
                number_of_player_starts,
                frames_per_episode)

            client.start_episode(player_start)

            use_autopilot_control = (random.random() < 0.5)
            reverse = (random.random() < 0.2)

            for frame in range(0, frames_per_episode):
                logging.debug('reading measurements...')
                measurements, sensor_data = client.read_data()
                images = [x for x in sensor_data.values() if isinstance(x, sensor.Image)]

                logging.debug('received data of %d agents', len(measurements.non_player_agents))
                if len(images) > 0:
                    assert (images[0].width, images[0].height) == (camera.ImageSizeX, camera.ImageSizeY)

                if args.images_to_disk:
                    for name, data in sensor_data.items():
                        data.save_to_disk(filename.format(episode, name, frame))

                logging.debug('sending control...')
                control = measurements.player_measurements.autopilot_control
                if not use_autopilot_control:
                    control.steer = random.uniform(-1.0, 1.0)
                    control.throttle = 0.3
                    control.hand_brake = False
                    control.reverse = reverse
                client.send_control(
                    steer=control.steer,
                    throttle=control.throttle,
                    brake=control.brake,
                    hand_brake=control.hand_brake,
                    reverse=control.reverse)
Пример #25
0
def run_carla_client(args):

    with make_carla_client(args.host, args.port) as client:
        print('CarlaClient connected')
        while True:

            settings = CarlaSettings()
            settings.set(
                SynchronousMode=True,
                SendNonPlayerAgentsInfo=True,
                NumberOfVehicles=0,
                NumberOfPedestrians=0,
                WeatherId=3,  #1, 3, 7, 8, 14
                QualityLevel=args.quality_level)
            settings.randomize_seeds()

            # Now we want to add a couple of cameras to the player vehicle.
            # We will collect the images produced by these cameras every
            # frame.

            # The default camera captures RGB images of the scene.
            camera0 = sensor.Camera('CameraRGB', PostProcessing='SceneFinal')
            # Set image resolution in pixels.
            w = 800
            h = 600
            camera0.set_image_size(800, 600)
            # Set its position relative to the car in meters.
            camera0.set_position(0.30, 0, 4)
            settings.add_sensor(camera0)

            # Let's add another camera producing ground-truth depth.
            depth_camera = sensor.Camera('CameraDepth', PostProcessing='Depth')
            depth_camera.set_image_size(800, 600)
            depth_camera.set_position(x=0.30, y=0, z=4)
            settings.add_sensor(depth_camera)

            if args.lidar:
                lidar = Lidar('Lidar32')
                lidar.set_position(0, 0, 2.50)
                lidar.set_rotation(0, 0, 0)
                lidar.set(Channels=32,
                          Range=50,
                          PointsPerSecond=100000,
                          RotationFrequency=10,
                          UpperFovLimit=10,
                          LowerFovLimit=-30)
                settings.add_sensor(lidar)

            scene = client.load_settings(settings)

            # Choose one player start at random.
            number_of_player_starts = len(scene.player_start_spots)
            player_start = random.randint(0, max(0,
                                                 number_of_player_starts - 1))

            print('Starting new episode at %r...' % scene.map_name)
            client.start_episode(player_start)
            action_model = roughPPO.actor_model((h, w, 3), (3, 1), (20, 2))
            critic_model = roughPPO.critic_model((h, w, 3), (3, 1), (20, 2),
                                                 (2, 1))
            actor_action = [0, 0]
            critic_score = 0
            ppo_check = 0
            # Iterate every frame in the episode.
            ppo_iter_count = 0
            while True:

                # Read the data produced by the server this frame.

                measurements, sensor_data = client.read_data()
                # print_measurements(measurements)
                main_image = sensor_data.get("CameraRGB", None)

                image_array = image_converter.to_rgb_array(main_image)

                point_cloud = image_converter.depth_to_local_point_cloud(
                    sensor_data['CameraDepth'], image_array, max_depth=1000)

                image_array = cv2.cvtColor(image_array, cv2.COLOR_RGB2BGR)
                cv2.imshow("FrontCam View", image_array)
                reverse = 0
                try:
                    steer_val = 0

                    bez_mask, coord_trajectory, trajectory, world_x_left, world_x_right, world_z_left, world_z_right = floodfill(
                        image_array, point_cloud)

                    track_point_yaw = trajectory[-5]
                    yaw_error = np.arctan(
                        (0 - track_point_yaw[0]) / (track_point_yaw[1]))
                    state_update_long(trajectory)
                    state_update_lat(world_x_left, world_x_right, yaw_error)

                    if ppo_check == 1:
                        reward_score = roughPPO.reward(actor_action,
                                                       world_x_left,
                                                       world_x_right)
                        if len(SDC_data_store.throttle_queue) < 50:
                            SDC_data_store.throttle_queue.append(
                                actor_action[0])
                            SDC_data_store.steer_queue.append(actor_action[1])
                            SDC_data_store.rewards_queue.append(reward_score)
                            SDC_data_store.critic_score.append(critic_score)
                        else:
                            print("IDHAR!!!!!!!!!!")
                            SDC_data_store.throttle_queue.popleft()
                            SDC_data_store.throttle_queue.append(
                                actor_action[0])
                            SDC_data_store.steer_queue.popleft()
                            SDC_data_store.steer_queue.append(actor_action[1])
                            SDC_data_store.rewards_queue.popleft()
                            SDC_data_store.rewards_queue.append(reward_score)
                            SDC_data_store.critic_score.popleft()
                            SDC_data_store.critic_score.append(reward_score)

                        if (len(SDC_data_store.rewards_queue) > 1):
                            returns, advs = roughPPO.advantages(
                                list(SDC_data_store.critic_score),
                                list(SDC_data_store.rewards_queue))
                            loss = roughPPO.ppo_loss(
                                advs, SDC_data_store.rewards_queue,
                                SDC_data_store.critic_score)
                            action_model.compile(optimizer=Adam(lr=1e-3),
                                                 loss=loss)
                            critic_model.compile(optimizer=Adam(lr=1e-3),
                                                 loss='mse')
                            print("LOSS : " + str(loss))
                        ppo_check = 0
                    if ppo_iter_count % 20 == 0 and ppo_iter_count > 0 and ppo_check == 0:
                        ppo_check = 1
                        action_output, critic_output = ppo_input(
                            measurements, trajectory, image_array,
                            action_model, critic_model)
                        actor_action = action_output[0]
                        critic_score = critic_output[0][0]
                        throttle_a = actor_action[0]
                        steer_val = actor_action[1]

                    else:
                        throttle_a = PID_throttle(trajectory, reverse)
                        cv2.imshow("bez", bez_mask)
                        steer_val = PID_steer(trajectory, reverse,
                                              world_x_left, world_x_right)

                    check = SDC_data_store.shadow_check

                    client.send_control(steer=steer_val * check,
                                        throttle=throttle_a * check + 0.5 *
                                        (1 - check),
                                        brake=0.0,
                                        hand_brake=False,
                                        reverse=False)
                    SDC_data_store.turn_value = steer_val
                except Exception as e:
                    print(e)

                    client.send_control(steer=SDC_data_store.turn_value *
                                        check,
                                        throttle=1,
                                        brake=0.85,
                                        hand_brake=True,
                                        reverse=False)

                cv2.waitKey(1)

                if SDC_data_store.count % 10 == 0:
                    print("frame: ", SDC_data_store.count)

                # if SDC_data_store.count%10==0:
                #     SDC_data_store.sum_cte = 0
                SDC_data_store.count += 1
                print("*********\n")
                ppo_iter_count += 1