Exemplo n.º 1
0
    def getImg(self):

        responses = self.client.simGetImages([
            AirSimClient.ImageRequest(
                0, AirSimClient.AirSimImageType.DepthPerspective, True, False)
        ])
        img1d = np.array(responses[0].image_data_float, dtype=np.float)

        img2d = np.reshape(img1d, (responses[0].height, responses[0].width))

        image = Image.fromarray(img2d)
        im_final = np.array(image.resize((64, 64)).convert('L'),
                            dtype=np.float) / 255
        im_final.resize((64, 64))

        #responses2 = self.client.simGetImages([AirSimClient.ImageRequest(0, AirSimClient.AirSimImageType.Segmentation, True, False)])
        #img1d2 = np.array(responses2[0].image_data_float, dtype=np.float)
        #img2d2 = np.reshape(img1d2, (responses[0].height, responses[0].width))
        #image2= Image.fromarray(img2d2)
        #im_final2 = np.array(image2.resize((64, 64)).convert('P'), dtype=np.float) / 255

        if IMAGE_VIEW:
            cv2.imshow("view", im_final)
            key = cv2.waitKey(1) & 0xFF
        return im_final
Exemplo n.º 2
0
    def getImg(self):

        responses = self.client.simGetImages([
            AirSimClient.ImageRequest(
                0, AirSimClient.AirSimImageType.DepthPerspective, True, False)
        ])
        img1d = np.array(responses[0].image_data_float, dtype=np.float)
        img1d = 255 * img1d
        img2d = np.reshape(img1d, (responses[0].height, responses[0].width))
        image = Image.fromarray(img2d)
        im_final = np.array(image.resize((224, 224)).convert('L'))
        return im_final
Exemplo n.º 3
0
	def getImg(self):
		'''
		responses = self.client.simGetImages([AirSimClient.ImageRequest(0, AirSimClient.AirSimImageType.DepthVis, True, False)])
		img1 = np.array(responses[0].image_data_float, dtype=np.float)
		img2 = img1.reshape(responses[0].height, responses[0].width, 1)[:,:,0]
		image = Image.fromarray(img2)
		im_final = np.array([np.array(image.resize(IMG_SIZE))] )
		return im_final
		'''
		responses = self.client.simGetImages([AirSimClient.ImageRequest(0, AirSimClient.AirSimImageType.DepthPerspective, True, False)])
		img1d = np.array(responses[0].image_data_float, dtype=np.float)
		img1d = 255/np.maximum(np.ones(img1d.size), img1d)
		img2d = np.reshape(img1d, (responses[0].height, responses[0].width))

		image = Image.fromarray(img2d)
		im_final = np.array(image.resize(IMG_SIZE).convert('L')) 
		return im_final
    client.setCarControls(car_controls)
    print("Go reverse, steer right")
    time.sleep(3)   # let car drive a bit
    car_controls.is_manual_gear = False # change back gear to auto
    car_controls.manual_gear = 0

    # apply brakes
    car_controls.brake = 1
    client.setCarControls(car_controls)
    print("Apply brakes")
    time.sleep(3)   # let car drive a bit
    car_controls.brake = 0 #remove brake

    # get camera images from the car
    responses = client.simGetImages([
        airsim.ImageRequest("0", airsim.ImageType.DepthVis),  #depth visualization image
        airsim.ImageRequest("1", airsim.ImageType.DepthPerspective, True), #depth in perspective projection
        airsim.ImageRequest("1", airsim.ImageType.Scene), #scene vision image in png format
        airsim.ImageRequest("1", airsim.ImageType.Scene, False, False)])  #scene vision image in uncompressed RGB array
    print('Retrieved images: %d' % len(responses))

    for response_idx, response in enumerate(responses):
        filename = os.path.join(tmp_dir, f"{idx}_{response.image_type}_{response_idx}")

        if response.pixels_as_float:
            print("Type %d, size %d" % (response.image_type, len(response.image_data_float)))
            airsim.write_pfm(os.path.normpath(filename + '.pfm'), airsim.get_pfm_array(response))
        elif response.compress: #png format
            print("Type %d, size %d" % (response.image_type, len(response.image_data_uint8)))
            airsim.write_file(os.path.normpath(filename + '.png'), response.image_data_uint8)
        else: #uncompressed array