From 25e365446b78699fa0c253e7de5204df9aff7f48 Mon Sep 17 00:00:00 2001 From: Simon Mayer Date: Thu, 15 Apr 2021 14:36:52 +0200 Subject: [PATCH] added code for extracting registration data with SIFT feature detection --- stitching/download_imgs.py | 18 +++ stitching/expected_matches.txt | 37 ++++++ stitching/plots/avg_conf.png | Bin 0 -> 44233 bytes stitching/scan.py | 223 ++++++++++++++++++++++++++++++--- stitching/stitch_data.json | 1 + 5 files changed, 259 insertions(+), 20 deletions(-) create mode 100644 stitching/download_imgs.py create mode 100644 stitching/expected_matches.txt create mode 100644 stitching/plots/avg_conf.png create mode 100644 stitching/stitch_data.json diff --git a/stitching/download_imgs.py b/stitching/download_imgs.py new file mode 100644 index 0000000..b4aea9b --- /dev/null +++ b/stitching/download_imgs.py @@ -0,0 +1,18 @@ +import requests +import pathlib + + +def dl_at_qual(pct): + for num in range(9, 51): + path = pathlib.Path(f'imgs/danube_{pct}_pct/{num}.jpg') + if path.exists(): + return + else: + if num == 9: + num = '09' + r = requests.get(f'https://iiif.onb.ac.at/images/REPO/7502199/000000{num}.jpg/full/pct:{pct}/0/native.jpg') + open(path, 'wb').write(r.content) + + +if __name__ == '__main__': + dl_at_qual(10) diff --git a/stitching/expected_matches.txt b/stitching/expected_matches.txt new file mode 100644 index 0000000..150bc35 --- /dev/null +++ b/stitching/expected_matches.txt @@ -0,0 +1,37 @@ +[['9.jpg', '10.jpg'], +['10.jpg', '11.jpg'], +['11.jpg', '12.jpg'], +['12.jpg', '13.jpg'], +['13.jpg', '14.jpg'], +['14.jpg', '15.jpg'], +['15.jpg', '16.jpg'], +['16.jpg', '17.jpg'], +['17.jpg', '18.jpg'], +['18.jpg', '19.jpg'], +['19.jpg', '20.jpg'], +['20.jpg', '21.jpg'], +['21.jpg', '22.jpg'], +['22.jpg', '23.jpg'], +['23.jpg', '24.jpg'], +['24.jpg', '25.jpg'], +['25.jpg', '26.jpg'], +['26.jpg', '27.jpg'], +['27.jpg', '28.jpg'], +['28.jpg', '29.jpg'], +['29.jpg', '30.jpg'], +['30.jpg', '31.jpg'], +['31.jpg', '32.jpg'], +['32.jpg', '33.jpg'], +['33.jpg', '34.jpg'], +['34.jpg', '35.jpg'], +['42.jpg', '43.jpg'], +['43.jpg', '44.jpg'], +['44.jpg', '45.jpg'], +['45.jpg', '46.jpg'], +['46.jpg', '47.jpg'], +['47.jpg', '48.jpg'], +['48.jpg', '49.jpg'], +['49.jpg', '50.jpg'], +['36.jpg', '37.jpg'], +['39.jpg', '40.jpg'], +['40.jpg', '41.jpg']] \ No newline at end of file diff --git a/stitching/plots/avg_conf.png b/stitching/plots/avg_conf.png new file mode 100644 index 0000000000000000000000000000000000000000..17c49e4c31776ce1f7b6b360e2824ae394f6cf82 GIT binary patch literal 44233 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