mapreader 1.5.1__tar.gz → 1.6.1.post0.dev6__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (52) hide show
  1. {mapreader-1.5.1 → mapreader-1.6.1.post0.dev6}/PKG-INFO +48 -41
  2. {mapreader-1.5.1 → mapreader-1.6.1.post0.dev6}/README.md +44 -40
  3. {mapreader-1.5.1 → mapreader-1.6.1.post0.dev6}/mapreader/_version.py +3 -3
  4. {mapreader-1.5.1 → mapreader-1.6.1.post0.dev6}/mapreader/classify/classifier.py +422 -555
  5. {mapreader-1.5.1 → mapreader-1.6.1.post0.dev6}/mapreader/classify/load_annotations.py +5 -0
  6. {mapreader-1.5.1 → mapreader-1.6.1.post0.dev6}/mapreader/download/sheet_downloader.py +11 -7
  7. {mapreader-1.5.1 → mapreader-1.6.1.post0.dev6}/mapreader/load/images.py +326 -391
  8. {mapreader-1.5.1 → mapreader-1.6.1.post0.dev6}/mapreader/spot_text/deepsolo_runner.py +1 -1
  9. {mapreader-1.5.1 → mapreader-1.6.1.post0.dev6}/mapreader/spot_text/dptext_detr_runner.py +1 -1
  10. {mapreader-1.5.1 → mapreader-1.6.1.post0.dev6}/mapreader/spot_text/maptext_runner.py +1 -1
  11. {mapreader-1.5.1 → mapreader-1.6.1.post0.dev6}/mapreader/spot_text/rec_runner_base.py +73 -42
  12. {mapreader-1.5.1 → mapreader-1.6.1.post0.dev6}/mapreader/spot_text/runner_base.py +79 -28
  13. {mapreader-1.5.1 → mapreader-1.6.1.post0.dev6}/mapreader.egg-info/PKG-INFO +48 -41
  14. {mapreader-1.5.1 → mapreader-1.6.1.post0.dev6}/mapreader.egg-info/SOURCES.txt +0 -1
  15. {mapreader-1.5.1 → mapreader-1.6.1.post0.dev6}/mapreader.egg-info/requires.txt +3 -0
  16. {mapreader-1.5.1 → mapreader-1.6.1.post0.dev6}/setup.py +3 -0
  17. mapreader-1.5.1/mapreader/annotate/utils.py +0 -714
  18. {mapreader-1.5.1 → mapreader-1.6.1.post0.dev6}/LICENSE +0 -0
  19. {mapreader-1.5.1 → mapreader-1.6.1.post0.dev6}/mapreader/__init__.py +0 -0
  20. {mapreader-1.5.1 → mapreader-1.6.1.post0.dev6}/mapreader/__main__.py +0 -0
  21. {mapreader-1.5.1 → mapreader-1.6.1.post0.dev6}/mapreader/annotate/__init__.py +0 -0
  22. {mapreader-1.5.1 → mapreader-1.6.1.post0.dev6}/mapreader/annotate/annotator.py +0 -0
  23. {mapreader-1.5.1 → mapreader-1.6.1.post0.dev6}/mapreader/classify/__init__.py +0 -0
  24. {mapreader-1.5.1 → mapreader-1.6.1.post0.dev6}/mapreader/classify/custom_models.py +0 -0
  25. {mapreader-1.5.1 → mapreader-1.6.1.post0.dev6}/mapreader/classify/datasets.py +0 -0
  26. {mapreader-1.5.1 → mapreader-1.6.1.post0.dev6}/mapreader/download/__init__.py +0 -0
  27. {mapreader-1.5.1 → mapreader-1.6.1.post0.dev6}/mapreader/download/data_structures.py +0 -0
  28. {mapreader-1.5.1 → mapreader-1.6.1.post0.dev6}/mapreader/download/downloader.py +0 -0
  29. {mapreader-1.5.1 → mapreader-1.6.1.post0.dev6}/mapreader/download/downloader_utils.py +0 -0
  30. {mapreader-1.5.1 → mapreader-1.6.1.post0.dev6}/mapreader/download/tile_loading.py +0 -0
  31. {mapreader-1.5.1 → mapreader-1.6.1.post0.dev6}/mapreader/download/tile_merging.py +0 -0
  32. {mapreader-1.5.1 → mapreader-1.6.1.post0.dev6}/mapreader/load/__init__.py +0 -0
  33. {mapreader-1.5.1 → mapreader-1.6.1.post0.dev6}/mapreader/load/geo_utils.py +0 -0
  34. {mapreader-1.5.1 → mapreader-1.6.1.post0.dev6}/mapreader/load/loader.py +0 -0
  35. {mapreader-1.5.1 → mapreader-1.6.1.post0.dev6}/mapreader/process/__init__.py +0 -0
  36. {mapreader-1.5.1 → mapreader-1.6.1.post0.dev6}/mapreader/process/context_post_process.py +0 -0
  37. {mapreader-1.5.1 → mapreader-1.6.1.post0.dev6}/mapreader/process/occlusion_analysis.py +0 -0
  38. {mapreader-1.5.1 → mapreader-1.6.1.post0.dev6}/mapreader/process/process.py +0 -0
  39. {mapreader-1.5.1 → mapreader-1.6.1.post0.dev6}/mapreader/spot_text/__init__.py +0 -0
  40. {mapreader-1.5.1 → mapreader-1.6.1.post0.dev6}/mapreader/utils/__init__.py +0 -0
  41. {mapreader-1.5.1 → mapreader-1.6.1.post0.dev6}/mapreader/utils/compute_and_save_stats.py +0 -0
  42. {mapreader-1.5.1 → mapreader-1.6.1.post0.dev6}/mapreader/utils/load_frames.py +0 -0
  43. {mapreader-1.5.1 → mapreader-1.6.1.post0.dev6}/mapreader/utils/slice_parallel.py +0 -0
  44. {mapreader-1.5.1 → mapreader-1.6.1.post0.dev6}/mapreader.egg-info/dependency_links.txt +0 -0
  45. {mapreader-1.5.1 → mapreader-1.6.1.post0.dev6}/mapreader.egg-info/entry_points.txt +0 -0
  46. {mapreader-1.5.1 → mapreader-1.6.1.post0.dev6}/mapreader.egg-info/not-zip-safe +0 -0
  47. {mapreader-1.5.1 → mapreader-1.6.1.post0.dev6}/mapreader.egg-info/top_level.txt +0 -0
  48. {mapreader-1.5.1 → mapreader-1.6.1.post0.dev6}/setup.cfg +0 -0
  49. {mapreader-1.5.1 → mapreader-1.6.1.post0.dev6}/tests/test_geo_pipeline.py +0 -0
  50. {mapreader-1.5.1 → mapreader-1.6.1.post0.dev6}/tests/test_import.py +0 -0
  51. {mapreader-1.5.1 → mapreader-1.6.1.post0.dev6}/tests/test_utils_load_frames.py +0 -0
  52. {mapreader-1.5.1 → mapreader-1.6.1.post0.dev6}/versioneer.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: mapreader
3
- Version: 1.5.1
3
+ Version: 1.6.1.post0.dev6
4
4
  Summary: A computer vision pipeline for the semantic exploration of maps/images at scale
5
5
  Home-page: https://github.com/Living-with-machines/MapReader
6
6
  Download-URL: https://github.com/Living-with-machines/MapReader/archive/refs/heads/main.zip
@@ -59,6 +59,9 @@ Requires-Dist: pyogrio>=0.7.2
59
59
  Requires-Dist: cartopy>=0.22.0
60
60
  Requires-Dist: joblib>=1.4.0
61
61
  Requires-Dist: opencv-python<5.0.0.0
62
+ Requires-Dist: folium<1.0.0,>=0.12
63
+ Requires-Dist: mapclassify<3.0.0,>=2.0.0
64
+ Requires-Dist: xyzservices==2024.9.0
62
65
  Provides-Extra: dev
63
66
  Requires-Dist: pytest<9.0.0; extra == "dev"
64
67
  Requires-Dist: pytest-cov<6.0.0,>=4.1.0; extra == "dev"
@@ -69,17 +72,15 @@ Requires-Dist: flake8<8.0.0,>=6.0.0; extra == "dev"
69
72
 
70
73
  # MapReader
71
74
 
72
- **MapReader is a computer vision pipeline for exploring and analyzing images at scale.**
73
-
74
75
  <!-- ALL-CONTRIBUTORS-BADGE:START - Do not remove or modify this section -->
75
76
  [![All Contributors](https://img.shields.io/badge/all_contributors-8-orange.svg?style=flat-square)](#contributors)
76
- <!-- ALL-CONTRIBUTORS-BADGE:END -->
77
-
78
- ![PyPI](https://img.shields.io/pypi/v/MapReader)
77
+ [![PyPI](https://img.shields.io/pypi/v/MapReader)](https://pypi.org/project/mapreader/)
78
+ [![](https://readthedocs.org/projects/mapreader/badge/?version=latest)](https://mapreader.readthedocs.io/en/latest)
79
79
  ![License](https://img.shields.io/badge/License-MIT-yellow.svg)
80
80
  ![Integration Tests badge](https://github.com/Living-with-machines/MapReader/actions/workflows/mr_ci.yml/badge.svg)
81
- ![DOI](https://zenodo.org/badge/430661738.svg)
82
- ![CodeCov](https://codecov.io/github/Living-with-machines/MapReader/graph/badge.svg?token=38GQ3O1GB5)
81
+ [![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.13643609.svg)](https://zenodo.org/records/13643609)
82
+ [![CodeCov](https://codecov.io/gh/maps-as-data/MapReader/graph/badge.svg?token=38GQ3O1GB5)](https://codecov.io/gh/maps-as-data/MapReader)
83
+ [![JOSS Paper](https://joss.theoj.org/papers/10.21105/joss.06434/status.svg)](https://doi.org/10.21105/joss.06434)
83
84
 
84
85
  ## Table of Contents
85
86
 
@@ -87,7 +88,8 @@ Requires-Dist: flake8<8.0.0,>=6.0.0; extra == "dev"
87
88
  - [Table of Contents](#table-of-contents)
88
89
  - [What is MapReader?](#what-is-mapreader)
89
90
  - [Overview](#overview)
90
- - [MapReader pipeline](#mapreader-pipeline)
91
+ - [MapReader classification pipeline](#mapreader-classification-pipeline)
92
+ - [MapReader text spotting pipeline](#mapreader-classification-pipeline)
91
93
  - [Documentation](#documentation)
92
94
  - [What is included in this repo?](#what-is-included-in-this-repo)
93
95
  - [How to cite MapReader](#how-to-cite-mapreader)
@@ -99,31 +101,36 @@ Requires-Dist: flake8<8.0.0,>=6.0.0; extra == "dev"
99
101
 
100
102
  ## What is MapReader?
101
103
 
102
- MapReader is an end-to-end computer vision (CV) pipeline for exploring and analyzing images at scale.
104
+ **MapReader is a open-source python library for exploring and analyzing map images at scale.**
103
105
 
104
- <figure align="center">
105
- <img src="https://raw.githubusercontent.com/Living-with-machines/MapReader/main/docs/source/_static/river_banner_8bit.png"
106
- alt="Annotated Map with Prediction Outputs"
107
- width="70%">
108
- </figure>
106
+ It contains two different pipelines:
109
107
 
110
- MapReader was developed in the [Living with Machines](https://livingwithmachines.ac.uk/) project to analyze large collections of historical maps but is a _**generalizable**_ computer vision pipeline which can be applied to _**any images**_ in a wide variety of domains.
108
+ - Classification pipeline: This pipeline enables users to fine-tune a classification model and predict the labels of patches created from a parent image.
109
+ - Text spotting pipeline: This pipeline enables users to detect and recognize text in map images.
111
110
 
112
- ## Overview
111
+ MapReader was developed in the [Living with Machines](https://livingwithmachines.ac.uk/) project to analyze large collections of historical maps but is a _**generalizable**_ computer vision tool which can be applied to _**any images**_ in a wide variety of domains.
113
112
 
114
- MapReader is a groundbreaking interdisciplinary tool that emerged from a specific set of geospatial historical research questions. It was inspired by methods in biomedical imaging and geographic information science, which were adapted for use by historians, for example in our [Journal of Victorian Culture](https://doi.org/10.1093/jvcult/vcab009) and [Geospatial Humanities 2022 SIGSPATIAL workshop](https://arxiv.org/abs/2111.15592) papers. The success of the tool subsequently generated interest from plant phenotype researchers working with large image datasets, and so MapReader is an example of cross-pollination between the humanities and the sciences made possible by reproducible data science.
113
+ ## Overview
115
114
 
116
- ### MapReader pipeline
115
+ ### MapReader classification pipeline
117
116
 
118
- The MapReader pipeline consists of a linear sequence of tasks which, together, can be used to train a computer vision (CV) classifier to recognize visual features within maps and identify patches containing these features across entire map collections:
117
+ The MapReader classification pipeline enables users to train a classification model to recognize visual features within map images and to identify patches containing these features across entire map collections:
119
118
 
120
119
  <figure align="center">
121
- <img src="https://raw.githubusercontent.com/Living-with-machines/MapReader/main/docs/source/_static/pipeline_explained.png"
120
+ <img src="https://raw.githubusercontent.com/maps-as-data/MapReader/main/docs/source/_static/pipeline_explained.png"
122
121
  alt="MapReader pipeline"
123
122
  width="70%">
124
123
  </figure>
125
124
 
126
- See our [Introduction to MapReader](https://mapreader.readthedocs.io/en/latest/introduction-to-mapreader/) page to learn more.
125
+ ### MapReader text spotting pipeline
126
+
127
+ The MapReader text spotting pipeline enables users to detect and recognize text in map images using a pre-trained text spotting model:
128
+
129
+ <figure align="center">
130
+ <img src="https://raw.githubusercontent.com/maps-as-data/MapReader/main/docs/source/_static/text-spotting-pipeline.png"
131
+ alt="MapReader text spotting pipeline"
132
+ width="70%">
133
+ </figure>
127
134
 
128
135
  ## Documentation
129
136
 
@@ -131,42 +138,42 @@ The MapReader documentation can be found at https://mapreader.readthedocs.io/en/
131
138
 
132
139
  **New users** should refer to the [Installation instructions](https://mapreader.readthedocs.io/en/latest/getting-started/installation-instructions/index.html) and [Input guidance](https://mapreader.readthedocs.io/en/latest/using-mapreader/input-guidance/) for help with the initial set up of MapReader.
133
140
 
134
- **All users** should refer to our [User Guide](https://mapreader.readthedocs.io/en/latest/using-mapreader/) for guidance on how to use MapReader. This contains end-to-end instructions on how to use the MapReader pipeline, plus a number of worked examples illustrating use cases such as:
141
+ **All users** should refer to our [User Guide](https://mapreader.readthedocs.io/en/latest/using-mapreader/) for guidance on how to use MapReader.
142
+ This contains end-to-end instructions on how to use the MapReader pipeline.
143
+
144
+ **Developers and contributors** may also want to refer to the [API documentation](https://mapreader.readthedocs.io/en/latest/in-depth-resources/api/mapreader/) and [Contribution guide](https://mapreader.readthedocs.io/en/latest/community-and-contributions/contribution-guide/) for guidance on how to contribute to the MapReader package.
145
+
135
146
 
136
- - Geospatial images (i.e. maps)
137
- - Non-geospatial images
147
+ ## Stay in touch
138
148
 
139
- **Developers and contributors** may also want to refer to the [API documentation](https://mapreader.readthedocs.io/en/latest/in-depth-resources/api/mapreader/) and [Contribution guide](https://mapreader.readthedocs.io/en/latest/community-and-contributions/contribution-guide/) for guidance on how to contribute to the MapReader package.
149
+ **All users** are encouraged to join our community! Please refer to the [Community and contributions](https://mapreader.readthedocs.io/en/latest/community-and-contributions/events.html) page for information on ways to get involved.
140
150
 
141
151
  **Join our Slack workspace!**
142
152
  Please fill out [this form](https://forms.gle/dXjECHZQkwrZ3Xpt9) to receive an invitation to the Slack workspace.
143
153
 
144
154
  ## What is included in this repo?
145
155
 
146
- The MapReader package provides a set of tools to:
156
+ This repository contains everything needed for running MapReader.
147
157
 
148
- - **Download** images/maps and metadata stored on web-servers (e.g. tileservers which can be used to retrieve maps from OpenStreetMap (OSM), the National Library of Scotland (NLS), or elsewhere).
149
- - **Load** images/maps and metadata stored locally.
150
- - **Pre-process** images/maps:
151
- - patchify (create patches from a parent image),
152
- - resample (use image transformations to alter pixel-dimensions/resolution/orientation/etc.),
153
- - remove borders outside the neatline,
154
- - reproject between coordinate reference systems (CRS).
155
- - **Annotate** images/maps (or their patches) using an interactive annotation tool.
156
- - **Train or fine-tune** Computer Vision (CV) models and use these to **predict** labels (i.e. model inference) on large sets of images/maps.
158
+ The repository is structured as follows:
157
159
 
158
- Various **plotting and analysis** functionalities are also included (based on packages such as _matplotlib_, _cartopy_, _Google Earth_, and _[kepler.gl](https://kepler.gl/))_.
160
+ - `mapreader/`: Contains the source code for the MapReader library.
161
+ - `docs/`: Contains the documentation for the MapReader library.
162
+ - `tests/` and `test_text_spotting/`: Contains the tests for the MapReader library.
163
+ - `worked_examples/`: Contains worked examples of how to use the MapReader library.
159
164
 
160
165
  ## How to cite MapReader
161
166
 
162
- If you use MapReader in your work, please cite both the MapReader repo and [our SIGSPATIAL paper](https://dl.acm.org/doi/10.1145/3557919.3565812):
167
+ If you use MapReader in your work, please cite:
168
+ - Our [JOSS paper](https://doi.org/10.21105/joss.06434) - to acknowledge the software irrespective of the version you used.
169
+ - Our [Zenodo record](https://zenodo.org/records/13643609) - to acknowledge the specific version of the software you used (or use the "Cite all versions?" option if your specific version isn't there).
170
+ - Optionally, our [SIGSPATIAL paper](https://dl.acm.org/doi/10.1145/3557919.3565812) to acknowledge the development of the software and the research behind it.
163
171
 
164
- - Kasra Hosseini, Daniel C. S. Wilson, Kaspar Beelen, and Katherine McDonough. 2022. MapReader: a computer vision pipeline for the semantic exploration of maps at scale. In Proceedings of the 6th ACM SIGSPATIAL International Workshop on Geospatial Humanities (GeoHumanities '22). Association for Computing Machinery, New York, NY, USA, 8–19. https://doi.org/10.1145/3557919.3565812
165
- - Kasra Hosseini, Rosie Wood, Andy Smith, Katie McDonough, Daniel C.S. Wilson, Christina Last, Kalle Westerling, and Evangeline Mae Corcoran. “Living-with-machines/mapreader: End of Lwm”. Zenodo, July 27, 2023. https://doi.org/10.5281/zenodo.8189653.
172
+ <!-- Add bibtext entries for the papers here -->
166
173
 
167
174
  ## Acknowledgements
168
175
 
169
- This work was supported by Living with Machines (AHRC grant AH/S01179X/1) and The Alan Turing Institute (EPSRC grant EP/N510129/1).
176
+ This work was supported by Living with Machines (AHRC grant AH/S01179X/1), Data/Culture (AHRC grant AH/Y00745X/1) and The Alan Turing Institute (EPSRC grant EP/N510129/1).
170
177
 
171
178
  Living with Machines, funded by the UK Research and Innovation (UKRI) Strategic Priority Fund, is a multidisciplinary collaboration delivered by the Arts and Humanities Research Council (AHRC), with The Alan Turing Institute, the British Library and the Universities of Cambridge, East Anglia, Exeter, and Queen Mary University of London.
172
179
 
@@ -1,16 +1,14 @@
1
1
  # MapReader
2
2
 
3
- **MapReader is a computer vision pipeline for exploring and analyzing images at scale.**
4
-
5
3
  <!-- ALL-CONTRIBUTORS-BADGE:START - Do not remove or modify this section -->
6
4
  [![All Contributors](https://img.shields.io/badge/all_contributors-8-orange.svg?style=flat-square)](#contributors)
7
- <!-- ALL-CONTRIBUTORS-BADGE:END -->
8
-
9
- ![PyPI](https://img.shields.io/pypi/v/MapReader)
5
+ [![PyPI](https://img.shields.io/pypi/v/MapReader)](https://pypi.org/project/mapreader/)
6
+ [![](https://readthedocs.org/projects/mapreader/badge/?version=latest)](https://mapreader.readthedocs.io/en/latest)
10
7
  ![License](https://img.shields.io/badge/License-MIT-yellow.svg)
11
8
  ![Integration Tests badge](https://github.com/Living-with-machines/MapReader/actions/workflows/mr_ci.yml/badge.svg)
12
- ![DOI](https://zenodo.org/badge/430661738.svg)
13
- ![CodeCov](https://codecov.io/github/Living-with-machines/MapReader/graph/badge.svg?token=38GQ3O1GB5)
9
+ [![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.13643609.svg)](https://zenodo.org/records/13643609)
10
+ [![CodeCov](https://codecov.io/gh/maps-as-data/MapReader/graph/badge.svg?token=38GQ3O1GB5)](https://codecov.io/gh/maps-as-data/MapReader)
11
+ [![JOSS Paper](https://joss.theoj.org/papers/10.21105/joss.06434/status.svg)](https://doi.org/10.21105/joss.06434)
14
12
 
15
13
  ## Table of Contents
16
14
 
@@ -18,7 +16,8 @@
18
16
  - [Table of Contents](#table-of-contents)
19
17
  - [What is MapReader?](#what-is-mapreader)
20
18
  - [Overview](#overview)
21
- - [MapReader pipeline](#mapreader-pipeline)
19
+ - [MapReader classification pipeline](#mapreader-classification-pipeline)
20
+ - [MapReader text spotting pipeline](#mapreader-classification-pipeline)
22
21
  - [Documentation](#documentation)
23
22
  - [What is included in this repo?](#what-is-included-in-this-repo)
24
23
  - [How to cite MapReader](#how-to-cite-mapreader)
@@ -30,31 +29,36 @@
30
29
 
31
30
  ## What is MapReader?
32
31
 
33
- MapReader is an end-to-end computer vision (CV) pipeline for exploring and analyzing images at scale.
32
+ **MapReader is a open-source python library for exploring and analyzing map images at scale.**
34
33
 
35
- <figure align="center">
36
- <img src="https://raw.githubusercontent.com/Living-with-machines/MapReader/main/docs/source/_static/river_banner_8bit.png"
37
- alt="Annotated Map with Prediction Outputs"
38
- width="70%">
39
- </figure>
34
+ It contains two different pipelines:
40
35
 
41
- MapReader was developed in the [Living with Machines](https://livingwithmachines.ac.uk/) project to analyze large collections of historical maps but is a _**generalizable**_ computer vision pipeline which can be applied to _**any images**_ in a wide variety of domains.
36
+ - Classification pipeline: This pipeline enables users to fine-tune a classification model and predict the labels of patches created from a parent image.
37
+ - Text spotting pipeline: This pipeline enables users to detect and recognize text in map images.
42
38
 
43
- ## Overview
39
+ MapReader was developed in the [Living with Machines](https://livingwithmachines.ac.uk/) project to analyze large collections of historical maps but is a _**generalizable**_ computer vision tool which can be applied to _**any images**_ in a wide variety of domains.
44
40
 
45
- MapReader is a groundbreaking interdisciplinary tool that emerged from a specific set of geospatial historical research questions. It was inspired by methods in biomedical imaging and geographic information science, which were adapted for use by historians, for example in our [Journal of Victorian Culture](https://doi.org/10.1093/jvcult/vcab009) and [Geospatial Humanities 2022 SIGSPATIAL workshop](https://arxiv.org/abs/2111.15592) papers. The success of the tool subsequently generated interest from plant phenotype researchers working with large image datasets, and so MapReader is an example of cross-pollination between the humanities and the sciences made possible by reproducible data science.
41
+ ## Overview
46
42
 
47
- ### MapReader pipeline
43
+ ### MapReader classification pipeline
48
44
 
49
- The MapReader pipeline consists of a linear sequence of tasks which, together, can be used to train a computer vision (CV) classifier to recognize visual features within maps and identify patches containing these features across entire map collections:
45
+ The MapReader classification pipeline enables users to train a classification model to recognize visual features within map images and to identify patches containing these features across entire map collections:
50
46
 
51
47
  <figure align="center">
52
- <img src="https://raw.githubusercontent.com/Living-with-machines/MapReader/main/docs/source/_static/pipeline_explained.png"
48
+ <img src="https://raw.githubusercontent.com/maps-as-data/MapReader/main/docs/source/_static/pipeline_explained.png"
53
49
  alt="MapReader pipeline"
54
50
  width="70%">
55
51
  </figure>
56
52
 
57
- See our [Introduction to MapReader](https://mapreader.readthedocs.io/en/latest/introduction-to-mapreader/) page to learn more.
53
+ ### MapReader text spotting pipeline
54
+
55
+ The MapReader text spotting pipeline enables users to detect and recognize text in map images using a pre-trained text spotting model:
56
+
57
+ <figure align="center">
58
+ <img src="https://raw.githubusercontent.com/maps-as-data/MapReader/main/docs/source/_static/text-spotting-pipeline.png"
59
+ alt="MapReader text spotting pipeline"
60
+ width="70%">
61
+ </figure>
58
62
 
59
63
  ## Documentation
60
64
 
@@ -62,42 +66,42 @@ The MapReader documentation can be found at https://mapreader.readthedocs.io/en/
62
66
 
63
67
  **New users** should refer to the [Installation instructions](https://mapreader.readthedocs.io/en/latest/getting-started/installation-instructions/index.html) and [Input guidance](https://mapreader.readthedocs.io/en/latest/using-mapreader/input-guidance/) for help with the initial set up of MapReader.
64
68
 
65
- **All users** should refer to our [User Guide](https://mapreader.readthedocs.io/en/latest/using-mapreader/) for guidance on how to use MapReader. This contains end-to-end instructions on how to use the MapReader pipeline, plus a number of worked examples illustrating use cases such as:
69
+ **All users** should refer to our [User Guide](https://mapreader.readthedocs.io/en/latest/using-mapreader/) for guidance on how to use MapReader.
70
+ This contains end-to-end instructions on how to use the MapReader pipeline.
71
+
72
+ **Developers and contributors** may also want to refer to the [API documentation](https://mapreader.readthedocs.io/en/latest/in-depth-resources/api/mapreader/) and [Contribution guide](https://mapreader.readthedocs.io/en/latest/community-and-contributions/contribution-guide/) for guidance on how to contribute to the MapReader package.
73
+
66
74
 
67
- - Geospatial images (i.e. maps)
68
- - Non-geospatial images
75
+ ## Stay in touch
69
76
 
70
- **Developers and contributors** may also want to refer to the [API documentation](https://mapreader.readthedocs.io/en/latest/in-depth-resources/api/mapreader/) and [Contribution guide](https://mapreader.readthedocs.io/en/latest/community-and-contributions/contribution-guide/) for guidance on how to contribute to the MapReader package.
77
+ **All users** are encouraged to join our community! Please refer to the [Community and contributions](https://mapreader.readthedocs.io/en/latest/community-and-contributions/events.html) page for information on ways to get involved.
71
78
 
72
79
  **Join our Slack workspace!**
73
80
  Please fill out [this form](https://forms.gle/dXjECHZQkwrZ3Xpt9) to receive an invitation to the Slack workspace.
74
81
 
75
82
  ## What is included in this repo?
76
83
 
77
- The MapReader package provides a set of tools to:
84
+ This repository contains everything needed for running MapReader.
78
85
 
79
- - **Download** images/maps and metadata stored on web-servers (e.g. tileservers which can be used to retrieve maps from OpenStreetMap (OSM), the National Library of Scotland (NLS), or elsewhere).
80
- - **Load** images/maps and metadata stored locally.
81
- - **Pre-process** images/maps:
82
- - patchify (create patches from a parent image),
83
- - resample (use image transformations to alter pixel-dimensions/resolution/orientation/etc.),
84
- - remove borders outside the neatline,
85
- - reproject between coordinate reference systems (CRS).
86
- - **Annotate** images/maps (or their patches) using an interactive annotation tool.
87
- - **Train or fine-tune** Computer Vision (CV) models and use these to **predict** labels (i.e. model inference) on large sets of images/maps.
86
+ The repository is structured as follows:
88
87
 
89
- Various **plotting and analysis** functionalities are also included (based on packages such as _matplotlib_, _cartopy_, _Google Earth_, and _[kepler.gl](https://kepler.gl/))_.
88
+ - `mapreader/`: Contains the source code for the MapReader library.
89
+ - `docs/`: Contains the documentation for the MapReader library.
90
+ - `tests/` and `test_text_spotting/`: Contains the tests for the MapReader library.
91
+ - `worked_examples/`: Contains worked examples of how to use the MapReader library.
90
92
 
91
93
  ## How to cite MapReader
92
94
 
93
- If you use MapReader in your work, please cite both the MapReader repo and [our SIGSPATIAL paper](https://dl.acm.org/doi/10.1145/3557919.3565812):
95
+ If you use MapReader in your work, please cite:
96
+ - Our [JOSS paper](https://doi.org/10.21105/joss.06434) - to acknowledge the software irrespective of the version you used.
97
+ - Our [Zenodo record](https://zenodo.org/records/13643609) - to acknowledge the specific version of the software you used (or use the "Cite all versions?" option if your specific version isn't there).
98
+ - Optionally, our [SIGSPATIAL paper](https://dl.acm.org/doi/10.1145/3557919.3565812) to acknowledge the development of the software and the research behind it.
94
99
 
95
- - Kasra Hosseini, Daniel C. S. Wilson, Kaspar Beelen, and Katherine McDonough. 2022. MapReader: a computer vision pipeline for the semantic exploration of maps at scale. In Proceedings of the 6th ACM SIGSPATIAL International Workshop on Geospatial Humanities (GeoHumanities '22). Association for Computing Machinery, New York, NY, USA, 8–19. https://doi.org/10.1145/3557919.3565812
96
- - Kasra Hosseini, Rosie Wood, Andy Smith, Katie McDonough, Daniel C.S. Wilson, Christina Last, Kalle Westerling, and Evangeline Mae Corcoran. “Living-with-machines/mapreader: End of Lwm”. Zenodo, July 27, 2023. https://doi.org/10.5281/zenodo.8189653.
100
+ <!-- Add bibtext entries for the papers here -->
97
101
 
98
102
  ## Acknowledgements
99
103
 
100
- This work was supported by Living with Machines (AHRC grant AH/S01179X/1) and The Alan Turing Institute (EPSRC grant EP/N510129/1).
104
+ This work was supported by Living with Machines (AHRC grant AH/S01179X/1), Data/Culture (AHRC grant AH/Y00745X/1) and The Alan Turing Institute (EPSRC grant EP/N510129/1).
101
105
 
102
106
  Living with Machines, funded by the UK Research and Innovation (UKRI) Strategic Priority Fund, is a multidisciplinary collaboration delivered by the Arts and Humanities Research Council (AHRC), with The Alan Turing Institute, the British Library and the Universities of Cambridge, East Anglia, Exeter, and Queen Mary University of London.
103
107
 
@@ -8,11 +8,11 @@ import json
8
8
 
9
9
  version_json = '''
10
10
  {
11
- "date": "2024-10-30T15:17:42+0000",
11
+ "date": "2024-12-16T10:16:13+0000",
12
12
  "dirty": false,
13
13
  "error": null,
14
- "full-revisionid": "84e07090b5fcf274c83ab845faba8a999182927e",
15
- "version": "1.5.1"
14
+ "full-revisionid": "9fcc4a3dcd508633b905b347d9ae5ac54db29a20",
15
+ "version": "1.6.1.post0.dev6"
16
16
  }
17
17
  ''' # END VERSION_JSON
18
18