Spaces:
Running
on
Zero
Running
on
Zero
| ''' | |
| This file is to add point to the first image | |
| ''' | |
| import os, shutil, sys | |
| if __name__ == "__main__": | |
| input_folder_path = "/nfs/turbo/jjparkcv-turbo-large/boyangwa/model_results/Human_Study/Input_Bridge_human_evaluation" | |
| store_path = "point_highlighted" | |
| if os.path.exists(input_folder_path): | |
| shutil.rmtree(input_folder_path) | |
| os.makedirs(input_folder_path) | |
| for instance_name in os.listdir(input_folder_path): | |
| sub_folder_dir = os.path.join(input_folder_path, instance_name) | |
| # Read file | |
| file_path = os.path.join(sub_folder_dir, "data.txt") | |
| file1 = open(file_path, 'r') | |
| Lines = file1.readlines() | |
| # Read the first img | |
| first_img_path = os.path.join(sub_folder_dir, "im_0.jpg") | |
| # Init the image | |
| base_img = cv2.imread(first_img_path).astype(np.float32) # Use the original image size | |
| # Draw the point | |
| for idx in range(len(Lines)): | |
| # Read points | |
| frame_idx, horizontal, vertical = Lines[idx].split(' ') | |
| frame_idx, vertical, horizontal = int(frame_idx), int(float(vertical)), int(float(horizontal)) | |
| # Draw square around the target position | |
| dot_range = 15 # Diameter | |
| for i in range(-1*dot_range, dot_range+1): | |
| for j in range(-1*dot_range, dot_range+1): | |
| dil_vertical, dil_horizontal = vertical + i, horizontal + j | |
| if (0 <= dil_vertical and dil_vertical < base_img.shape[0]) and (0 <= dil_horizontal and dil_horizontal < base_img.shape[1]): | |
| if idx == 0: | |
| base_img[dil_vertical][dil_horizontal] = [0, 0, 255] # The first point should be red | |
| else: | |
| base_img[dil_vertical][dil_horizontal] = [0, 255, 0] # The second point should be green to distinguish the first point | |