#!/usr/bin/env python if __name__ != '__main__': raise Exception("Do not import me!") import os import re from cvargparse import Arg from os.path import isfile, join, basename, splitext from tqdm import tqdm from utils import parser from utils import imaging def main(args): # class_names = imaging.get_classnames(args.classnames) content = imaging.get_content(args.folder, args.extensions) for root, fnames in tqdm(content): folder = basename(root) if not re.match(r"^\d+\..*$", folder): continue fnames = sorted(fnames, key=lambda name: int(re.match(r"^(\d+)\..*$", name).group(1))) for i, fname in enumerate(fnames): ext = splitext(fname)[1][1:].strip().lower() if ext == "jpeg": ext = "jpg" new_name = f"{folder}_{i:04d}.{ext}" new_path = join(root, new_name) assert not isfile(new_path), f"File exists: {new_path}" os.rename(join(root, fname), join(root, new_name)) main(parser.parse_args([ ])