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
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
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