import os import cv2 def rename_files(directory_path: str): extensions = set() for file in os.listdir(directory_path): filename, extension = file.split(".") extensions.add(extension) old_filename = os.path.join(directory_path, file) new_filename = os.path.join(directory_path, f"{filename}.jpg") if old_filename != new_filename: print(f"{old_filename} -> {new_filename}") os.rename(old_filename, new_filename) def check_images(directory_path: str): for file in os.listdir(directory_path): try: img = cv2.imread(os.path.join(directory_path, file)) if img is None: print(file) except Exception: print(file) def check_labels(dir_path: str): for filename in os.listdir(dir_path): name, extension = filename.split(".") if len(name) != 17: print(filename) def check_symbols(dir_path: str): with open(os.path.join(dir_path, "dict.txt"), "r") as dict_file: dict_content = dict_file.readlines() dict_chars = set(char.strip() for char in dict_content) for filename in os.listdir(os.path.join(dir_path, "images")): label, extension = filename.split(".") if any([char not in dict_chars for char in label]): print(filename) # rename_files("train_data/images/") # check_images("train_data/images/") # check_labels("train_data/images/") check_symbols("train_data/")