import imageio
import argparse
import os


# cameras=['camera_2', 'camera_3','camera_4']
# cameras=['camera_2']
def main():
    # --------------------------------------------------------
    # Arguments
    # --------------------------------------------------------

    ap = argparse.ArgumentParser()
    ap.add_argument("-dataset_name", "--dataset_name",
                    help="Folder that contains that dataset to be optimized. Folder must be inside hpe/images/.",
                    type=str, default='sim_moving')
    ap.add_argument("-cams", "--cameras", help="Choose camera detection. This camera must be present in the dataset.",
                    nargs='+', default=["camera_1", "camera_2", "camera_3", "camera_4"])
    args = vars(ap.parse_args())

    dataset_folder = '/home/daniela/catkin_ws/src/hpe/images/' + args['dataset_name'] + '/'
    if not os.path.exists(dataset_folder):
        raise Exception("The dataset folder does not exist!")

    for camera in args["cameras"]:
        folder = dataset_folder + camera + '.mp4'
        print(folder)
        with imageio.get_writer(folder, mode='I') as writer:
            for i in range(0, 42):
                filename = dataset_folder + camera + '/' + str(i) + '.png'
                image = imageio.v2.imread(filename)
                writer.append_data(image)


if __name__ == "__main__":
    main()
# cameras=['camera_2', 'camera_3','camera_4']
# for camera in cameras:
#     folder='/home/daniela/catkin_ws/src/hpe/images/cache/'+camera+'_no_bk.gif'
#     with imageio.get_writer(folder, mode='I') as writer:
#         for i in range(0,700):
#             filename='/home/daniela/catkin_ws/src/hpe/images/cache/no_bk/'+camera+'/'+str(i)+'.png'
#             image = imageio.v2.imread(filename)
#             writer.append_data(image)
