mirror of
https://github.com/placeAtlas/atlas.git
synced 2024-09-27 12:39:18 +02:00
Sort image keys and extend to whiteout in formatter
This commit is contained in:
parent
82d7c9d06e
commit
72829f392b
1 changed files with 41 additions and 6 deletions
|
@ -3,6 +3,7 @@
|
|||
import re
|
||||
import json
|
||||
import traceback
|
||||
from typing import List
|
||||
|
||||
"""
|
||||
Examples:
|
||||
|
@ -262,6 +263,36 @@ def remove_empty_and_similar(entry: dict):
|
|||
|
||||
return entry
|
||||
|
||||
def sort_image_keys(entry: dict):
|
||||
"""
|
||||
Alphabetizes comma-separated path and center keys.
|
||||
"""
|
||||
for outer_key in ["path", "center"]:
|
||||
image_keys: List[str] = list(entry[outer_key].keys())
|
||||
for image_key in image_keys:
|
||||
key_split = image_key.split(", ")
|
||||
new_key = ", ".join(sorted(key_split))
|
||||
if new_key != image_key:
|
||||
entry[outer_key][new_key] = entry[outer_key][image_key]
|
||||
del(entry[outer_key][image_key])
|
||||
|
||||
return entry
|
||||
|
||||
def extend_entries_to_whiteout(entry: dict):
|
||||
"""
|
||||
If an entry ends on the final non-whiteout image, extends the image to the last whiteout image where entries cans still be made out.
|
||||
"""
|
||||
END_NORMAL_IMAGE = "164"
|
||||
END_WHITEOUT_IMAGE = "166"
|
||||
for outer_key in ["path", "center"]:
|
||||
image_keys: List[str] = list(entry[outer_key].keys())
|
||||
for image_key in image_keys:
|
||||
if END_NORMAL_IMAGE in image_key:
|
||||
new_key = image_key.replace(END_NORMAL_IMAGE, END_WHITEOUT_IMAGE)
|
||||
entry[outer_key][new_key] = entry[outer_key][image_key]
|
||||
del(entry[outer_key][image_key])
|
||||
|
||||
return entry
|
||||
|
||||
def validate(entry: dict):
|
||||
"""
|
||||
|
@ -344,6 +375,10 @@ def print_(*args, **kwargs):
|
|||
entry = remove_duplicate_points(entry)
|
||||
print_("Remove empty items...")
|
||||
entry = remove_empty_and_similar(entry)
|
||||
print_("Sorting image keys...")
|
||||
entry = sort_image_keys(entry)
|
||||
print_("Extending entries to whiteout...")
|
||||
entry = extend_entries_to_whiteout(entry)
|
||||
print_("Validating...")
|
||||
status_code = validate(entry)
|
||||
print_("Completed!")
|
||||
|
|
Loading…
Reference in a new issue