Programming language: [your favorite programming language] Create a complete program that visualizes how YOLO grid cells relate to labeled objects in a standard Darknet training dataset. The program will be placed in the main project folder. Beneath the project folder will be one or more clip folders. Each clip folder contains images and labels subfolders. Process these clip folders in sorted order, skip folders that do not contain both required subfolders, and display every valid image one at a time in sorted filename order. Support .png, .jpg, and .jpeg images, regardless of extension case. Match each image to a .txt label file with the same filename stem. Resize each image to a user-specified network resolution. Use 416 by 416 as the default resolution. Draw the bounding boxes from the corresponding YOLO/Darknet label file, then overlay the grid associated with the selected detection head. Annotations contain five whitespace-separated numeric values per object: class_id center_x center_y width height The coordinates and dimensions are normalized. Convert them to bounding-box corners using the resized image dimensions. Draw the boxes in green. Use this head mapping and grid colors: - Head 1 = stride 32, red grid - Head 2 = stride 16, blue grid - Head 3 = stride 8, yellow grid Calculate the grid columns as network width divided by stride using integer division, and the grid rows as network height divided by stride using integer division. Draw the internal grid boundaries. At 416 by 416, the grids are 13 by 13, 26 by 26, and 52 by 52, respectively. Support these command-line options: - A positional dataset_path argument for the project folder - --head, required, accepting 1, 2, or 3 - --net_w, network width, default 416 - --net_h, network height, default 416 Display the images in a desktop window. Advance to the next image when any key is pressed. Exit immediately and close all image windows when Escape is pressed. Close all image windows when the dataset is finished. Skip images that cannot be opened. If a matching label file is missing, still display the image and grid. Ignore annotation lines that do not contain exactly five values. Assume that five-value lines contain valid numeric annotations. Do not modify the source images or annotations. Use suitable libraries for image loading, resizing, drawing, desktop display, filesystem access, and command-line argument parsing. Provide the complete program, dependency and setup instructions, and commands for running all three heads using the chosen language. Explain any direct-resize aspect-ratio distortion.