Пример #1
0
        dest='backup',
        help='store backup of overwritten values in Mapillary JSON')

    args = parser.parse_args()

    if args.orientation is not None:
        exifOrientation = format_orientation(args.orientation)

    s = Sequence(args.path)
    if args.interpolate:
        bearings = s.interpolate_direction()

    for filename in s.get_file_list(args.path):
        stat = os.stat(filename)
        exifRead = EXIF(filename)
        mapillaryTag = json.loads(exifRead.extract_image_description())

        if args.interpolate:
            bearing = bearings[filename]
        else:
            bearing = exifRead.extract_direction()

        if args.offset:
            bearing = offset_bearing(bearing, args.offset)

        exifEdit = ExifEdit(filename)

        if args.interpolate or args.offset:
            exifEdit.add_direction(bearing, precision=10)
            if (args.backup):
                if 'backup' not in mapillaryTag: mapillaryTag['backup'] = {}
Пример #2
0
        sys.exit()

    if path.lower().endswith(".jpg"):
        # single file
        file_list = [path]
    else:
        # folder(s)
        file_list = []
        for root, sub_folders, files in os.walk(path):
            file_list += [
                os.path.join(root, filename) for filename in files
                if filename.lower().endswith(".jpg")
            ]

    num_file = len(file_list)
    for i, filepath in enumerate(file_list):
        exif = EXIF(filepath)
        description_ = exif.extract_image_description()
        exif_edit = ExifEdit(filepath)
        try:
            description_ = json.loads(description_)
        except:
            description_ = {}

        if 'MAPSettingsProject' not in description_ or overwrite:
            description_['MAPSettingsProject'] = project_key
            description_ = {}
            exif_edit.add_image_description(description_)
            exif_edit.write()

    print("Done, processed %s files" % len(file_list))