| import csv |
|
|
|
|
| def is_missing(val): |
| if val is None: |
| return True |
| s = str(val).strip().lower() |
| return s == "" or s in {"n/a", "na", "none", "null"} |
|
|
|
|
| visibility_csv = "/scratch/ds5725/linefinder/LineFinder/Code:Scripts/OL_line_visibility.csv" |
| desc_csv = "/scratch/ds5725/linefinder/LineFinder/Code:Scripts/start_end_person_descriptions_rerun.csv" |
|
|
|
|
| |
| |
| |
|
|
| desc_dict = {} |
|
|
| with open(desc_csv, newline="", encoding="utf-8") as f: |
| reader = csv.DictReader(f) |
| for row in reader: |
| desc_dict[row["image_id"].strip()] = row |
|
|
|
|
| |
| |
| |
|
|
| start_need = 0 |
| start_have = 0 |
| start_missing = 0 |
|
|
| end_need = 0 |
| end_have = 0 |
| end_missing = 0 |
|
|
|
|
| with open(visibility_csv, newline="", encoding="utf-8") as f: |
| reader = csv.DictReader(f) |
|
|
| for row in reader: |
|
|
| image_id = row["image_id"].strip() |
|
|
| start_visible = row["start_of_line_visible"].strip().lower() == "yes" |
| end_visible = row["end_of_line_visible"].strip().lower() == "yes" |
|
|
| desc_row = desc_dict.get(image_id) |
|
|
| start_desc = "" |
| end_desc = "" |
|
|
| if desc_row: |
| start_desc = desc_row.get("start_description", "") |
| end_desc = desc_row.get("end_description", "") |
|
|
| |
| |
| |
|
|
| if start_visible: |
| start_need += 1 |
|
|
| if is_missing(start_desc): |
| start_missing += 1 |
| print(f"{image_id} -> START visible but description missing") |
| else: |
| start_have += 1 |
|
|
| |
| |
| |
|
|
| if end_visible: |
| end_need += 1 |
|
|
| if is_missing(end_desc): |
| end_missing += 1 |
| print(f"{image_id} -> END visible but description missing") |
| else: |
| end_have += 1 |
|
|
|
|
| |
| |
| |
|
|
| print("\n====================") |
| print("START of line") |
| print("Need description:", start_need) |
| print("Have description:", start_have) |
| print("Missing description:", start_missing) |
|
|
| print("\nEND of line") |
| print("Need description:", end_need) |
| print("Have description:", end_have) |
| print("Missing description:", end_missing) |