From ae274745481e783de927f9986d2dc0e36e7ef8da Mon Sep 17 00:00:00 2001 From: Henri Rebecq Date: Mon, 16 Sep 2019 15:00:36 +0200 Subject: [PATCH] Add script to generate a timestamps file for the DataProviderFromFolder data provider --- .../esim_ros/scripts/generate_stamps_file.py | 30 +++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100755 event_camera_simulator/esim_ros/scripts/generate_stamps_file.py diff --git a/event_camera_simulator/esim_ros/scripts/generate_stamps_file.py b/event_camera_simulator/esim_ros/scripts/generate_stamps_file.py new file mode 100755 index 0000000..ff127c3 --- /dev/null +++ b/event_camera_simulator/esim_ros/scripts/generate_stamps_file.py @@ -0,0 +1,30 @@ +import argparse +from os import listdir +from os.path import join + + +if __name__ == "__main__": + + parser = argparse.ArgumentParser( + description='Generate "images.csv" for ESIM DataProviderFromFolder') + + parser.add_argument('-i', '--input_folder', default=None, type=str, + help="folder containing the images") + parser.add_argument('-r', '--framerate', default=1000, type=float, + help="video framerate, in Hz") + + args = parser.parse_args() + + images = sorted( + [f for f in listdir(args.input_folder) if f.endswith('.png')]) + + print('Will write file: {} with framerate: {} Hz'.format( + join(args.input_folder, 'images.csv'), args.framerate)) + stamp_nanoseconds = 1 + dt_nanoseconds = int((1.0 / args.framerate) * 1e9) + with open(join(args.input_folder, 'images.csv'), 'w') as f: + for image_path in images: + f.write('{},{}\n'.format(stamp_nanoseconds, image_path)) + stamp_nanoseconds += dt_nanoseconds + + print('Done!')