diff --git a/.readthedocs.yaml b/.readthedocs.yaml new file mode 100644 index 0000000000000000000000000000000000000000..4fc1d8bdab6695c3b4bf73519e5ef7317e93801c --- /dev/null +++ b/.readthedocs.yaml @@ -0,0 +1,13 @@ +# .readthedocs.yaml +# Read the Docs configuration file +# See https://docs.readthedocs.io/en/stable/config-file/v2.html for details + +# Required +version: 2 + +# Build documentation in the docs/ directory with Sphinx +sphinx: + configuration: docs/conf.py + +conda: + environment: docs/environment.yml diff --git a/docs/Makefile b/docs/Makefile index 9a36cab0964534deb275e2d710d9bda16946bd01..ec02fa141df01045c01f0031454182dc2d20f822 100644 --- a/docs/Makefile +++ b/docs/Makefile @@ -180,3 +180,4 @@ pseudoxml: $(SPHINXBUILD) -b pseudoxml $(ALLSPHINXOPTS) $(BUILDDIR)/pseudoxml @echo @echo "Build finished. The pseudo-XML files are in $(BUILDDIR)/pseudoxml." + diff --git a/docs/conf.py b/docs/conf.py index afd6dd746704696eeff79d830127ffc69a912b27..adc2380b5ed369b54c960a429a5d502a1f9b5b58 100755 --- a/docs/conf.py +++ b/docs/conf.py @@ -45,6 +45,59 @@ sys.modules.update((mod_name, Mock()) for mod_name in MOCK_MODULES) sys.path.insert(0, os.path.abspath('../')) +for mod_name in ( + "csmapi", + "cv2", + "dill", + "geoalchemy2", + "geoalchemy2.shape", + "geopandas", + "kalasiris", + "knoten", + "knoten.csm", + "matplotlib", + "matplotlib.pyplot", + "numpy", + "ogr", + "osgeo", + "pandas", + "pandas.core", + "pandas.core.indexing", + "PIL", + "plio", + "plio.io", + "plio.io.io_gdal", + "plio.io.io_controlnetwork", + "plio.io.isis_serial_number", + "plio.utils", + "plurmy", + "psycopg2", + "psycopg2.extensions", + "pvl", + "pyproj", + "redis", + "scipy", + "scipy.spatial", + "scipy.spatial.distance", + "scipy.special", + "scipy.stats", + "scipy.ndimage", + "scipy.ndimage.interpolation", + "shapely", + "shapely.affinity", + "shapely.geometry", + "shapely.ops", + "shapely.wkt", + "shapely.wkb", + "skimage", + "skimage.transform", + "sklearn", + "sklearn.cluster", + "sklearn.neighbors", + "sqlalchemy_utils", + "yaml" +): + sys.modules[mod_name]= MagicMock() import autocnet # -- General configuration --------------------------------------------- @@ -52,6 +105,7 @@ import autocnet # If your documentation needs a minimal Sphinx version, state it here. needs_sphinx = '1.3' nbsphinx_allow_errors = True +nbsphinx_execute = 'never' # Add any Sphinx extension module names here, as strings. They can be # extensions coming with Sphinx (named 'sphinx.ext.*') or your custom ones. diff --git a/docs/environment.yml b/docs/environment.yml new file mode 100644 index 0000000000000000000000000000000000000000..d4931788b81933ef55b686bad0b5c1d055155516 --- /dev/null +++ b/docs/environment.yml @@ -0,0 +1,12 @@ +name: autocnet +channels: + - conda-forge + - default + +dependencies: + - cmake + - nbsphinx + - networkx + - sphinx + - sqlalchemy + - yaml diff --git a/docs/library/matcher/ciratefi.rst b/docs/library/matcher/ciratefi.rst index 9cad1e910965a8a567651513241512edb0408e09..38436786fcd82b12ca272a705ac9f42b45b9c539 100644 --- a/docs/library/matcher/ciratefi.rst +++ b/docs/library/matcher/ciratefi.rst @@ -1,5 +1,5 @@ :mod:`matcher.ciratefi` --- RST-BC Invariant template match algorithm -==================================================================== +===================================================================== The :mod:`matcher.ciratefi` module diff --git a/docs/library/matcher/cpu_outlier_detector.rst b/docs/library/matcher/cpu_outlier_detector.rst index e6e43994b62d103c5f45c63da69fd01d2bf1f579..c3b0a546dc6fd3754f841783c02776fdebceb92d 100644 --- a/docs/library/matcher/cpu_outlier_detector.rst +++ b/docs/library/matcher/cpu_outlier_detector.rst @@ -1,5 +1,5 @@ :mod:`matcher.cpu_outlier_detector` --- Finding outliers in both the keypoints and the matches -========================================================================================== +============================================================================================== The :mod:`matcher.cpu_outlier_detector` module diff --git a/docs/library/matcher/cuda_outlier_detector.rst b/docs/library/matcher/cuda_outlier_detector.rst index 67046dc93f84830c42513580af76a7fc1a2a4fa1..863321b28d6787e31b24938d5bc09c317518a068 100644 --- a/docs/library/matcher/cuda_outlier_detector.rst +++ b/docs/library/matcher/cuda_outlier_detector.rst @@ -1,5 +1,5 @@ :mod:`matcher.cuda_outlier_detector` --- Finding outliers in both the keypoints and the matches -========================================================================================== +=============================================================================================== The :mod:`matcher.cpu_outlier_detector` module diff --git a/docs/users/index.rst b/docs/users/index.rst index da86315810a79e2e71476181e58776d949c682e3..3e723cac0982298f11c86114017efb476ced6c07 100644 --- a/docs/users/index.rst +++ b/docs/users/index.rst @@ -3,3 +3,4 @@ installation tutorials/index + workshops/index diff --git a/docs/users/tutorials/index.rst b/docs/users/tutorials/index.rst index 977ea5cf1a3d4e40512e4d0da543838c88ab4fdc..336b83e1ec4d895e5bf381c5f4149365a5a6c920 100644 --- a/docs/users/tutorials/index.rst +++ b/docs/users/tutorials/index.rst @@ -8,7 +8,8 @@ Working With ISIS Control Networks .. toctree:: :maxdepth: 1 - Ingesting from ISIS control network + Ingesting from ISIS control network + Check for empty overlaps and overlap connectivity Using outlier detection to check for bad measures @@ -31,9 +32,9 @@ Working With Apollo Pan Creating a Control Network Advanced: Extending the CandidateGraph -Coupled Decomposition ---------------------- +Change Detection +---------------- .. toctree:: :maxdepth: 1 - Apollo Metric Coupled Decomposition + Change detection examples diff --git a/docs/users/workshops/index.rst b/docs/users/workshops/index.rst new file mode 100644 index 0000000000000000000000000000000000000000..3d47482b860fd215a7598c1f532dad3e019afcb2 --- /dev/null +++ b/docs/users/workshops/index.rst @@ -0,0 +1,11 @@ +Astrogeology Science Center Workshop +------------------------------------ + +.. toctree:: + :maxdepth: 1 + + Jupyter notebook and jupyter kernel basics + Introduction to python packages + Using PLIO to analyze control networks + Homography and Fundamental matrix outlier detection in AutoCNet + Generating a Control Network with AutoCNet