├── .gitattributes
├── .github
└── ISSUE_TEMPLATE
│ ├── bug_report.md
│ ├── documentation.md
│ ├── feature_request.md
│ └── maintenance.md
├── .gitignore
├── .readthedocs-environment.yml
├── .readthedocs.yml
├── .rtfd-requirements.txt
├── .travis.yml
├── .vscode
└── settings.json
├── CHANGELOG.md
├── CONTRIBUTING.md
├── LICENSE.txt
├── MANIFEST.in
├── PULL_REQUEST_TEMPLATE.md
├── README.md
├── docker
├── cpu
│ └── Dockerfile
└── gpu
│ └── Dockerfile
├── docs
├── Makefile
├── _static
│ ├── custom_styles.css
│ ├── solaris_logo.png
│ └── solaris_logo_tiny_black.png
├── _templates
│ ├── autosummary
│ │ ├── base.rst
│ │ ├── class.rst
│ │ └── module.rst
│ ├── base
│ │ └── base.rst
│ ├── custom_sidebar.html
│ ├── dotnet
│ │ ├── base_detail.rst
│ │ ├── base_embed.rst
│ │ ├── base_list.rst
│ │ ├── class.rst
│ │ ├── constructor.rst
│ │ ├── delegate.rst
│ │ ├── enum.rst
│ │ ├── event.rst
│ │ ├── field.rst
│ │ ├── interface.rst
│ │ ├── method.rst
│ │ ├── namespace.rst
│ │ ├── operator.rst
│ │ ├── property.rst
│ │ └── struct.rst
│ ├── go
│ │ ├── base_member.rst
│ │ ├── const.rst
│ │ ├── func.rst
│ │ ├── method.rst
│ │ ├── package.rst
│ │ ├── type.rst
│ │ └── var.rst
│ ├── index.rst
│ ├── javascript
│ │ ├── class.rst
│ │ ├── function.rst
│ │ ├── member.rst
│ │ └── module.rst
│ └── python
│ │ ├── attribute.rst
│ │ ├── class.rst
│ │ ├── data.rst
│ │ ├── exception.rst
│ │ ├── function.rst
│ │ ├── method.rst
│ │ ├── module.rst
│ │ └── package.rst
├── api
│ ├── data.rst
│ ├── eval.rst
│ ├── index.rst
│ ├── nets.rst
│ ├── preproc.rst
│ ├── raster.rst
│ ├── tile.rst
│ ├── utils.rst
│ └── vector.rst
├── conf.py
├── index.rst
├── installation.rst
├── intro.rst
├── make.bat
├── pretrained_models.rst
└── tutorials
│ ├── index.rst
│ └── notebooks
│ ├── api_coco_tutorial.ipynb
│ ├── api_evaluation_tutorial.ipynb
│ ├── api_mask_to_vector.ipynb
│ ├── api_masks_tutorial.ipynb
│ ├── api_tiling_tutorial.ipynb
│ ├── api_training_custom.ipynb
│ ├── api_training_spacenet.ipynb
│ ├── cli_mask_creation.ipynb
│ ├── cli_ml_pipeline.ipynb
│ ├── cli_spacenet_evaluation.ipynb
│ ├── creating_im_reference_csvs.ipynb
│ ├── creating_the_yaml_config_file.ipynb
│ ├── map_vehicles_cowc.ipynb
│ ├── preprocessing_branching.ipynb
│ ├── preprocessing_pipelines.ipynb
│ └── preprocessing_sar.ipynb
├── environment-gpu.yml
├── environment.yml
├── renovate.json
├── requirements.txt
├── setup.py
├── solaris
├── __init__.py
├── bin
│ ├── __init__.py
│ ├── geotransform_footprints.py
│ ├── make_graphs.py
│ ├── make_masks.py
│ ├── mask_to_polygons.py
│ ├── solaris_run_ml.py
│ └── spacenet_eval.py
├── data
│ ├── SN2_sample_iou_by_building.csv
│ ├── SN2_sample_preds.csv
│ ├── SN2_sample_truth.csv
│ ├── SN2_test_results.csv
│ ├── SN2_test_results_full.csv
│ ├── __init__.py
│ ├── aff_gdf_result.csv
│ ├── cli_test
│ │ ├── __init__.py
│ │ ├── expected
│ │ │ ├── __init__.py
│ │ │ ├── gj_to_px_result.geojson
│ │ │ ├── sample_b_inner_mask.tif
│ │ │ ├── sample_b_outer10_mask.tif
│ │ │ ├── sample_c_mask.tif
│ │ │ ├── sample_fbc_mask.tif
│ │ │ ├── sample_fp_mask.tif
│ │ │ └── sample_graph.pkl
│ │ └── result
│ │ │ └── __init__.py
│ ├── coco.py
│ ├── coco_sample_1.json
│ ├── coco_sample_2.json
│ ├── coco_sample_3.json
│ ├── competition_test_results.csv
│ ├── competition_test_results_full.csv
│ ├── datagen_sample
│ │ ├── expected_im.tif
│ │ ├── sample_1.tif
│ │ ├── sample_2.tif
│ │ ├── sample_3.tif
│ │ ├── sample_df.csv
│ │ ├── sample_mask_1.tif
│ │ ├── sample_mask_2.tif
│ │ └── sample_mask_3.tif
│ ├── empty.geojson
│ ├── eval_vector
│ │ ├── gt
│ │ │ ├── 108_1040010044D30600.geojson
│ │ │ ├── 10_104005000FDC8300.geojson
│ │ │ └── 11_10400100213E1200.geojson
│ │ └── preds
│ │ │ ├── 108_1040010044D30600.geojson
│ │ │ ├── 10_104005000FDC8300.geojson
│ │ │ └── 11_10400100213E1200.geojson
│ ├── gdf_from_mask_1.geojson
│ ├── gdf_from_mask_2.geojson
│ ├── geotiff_custom_proj_labels.geojson
│ ├── geotiff_labels.geojson
│ ├── gj_to_px_result.geojson
│ ├── gt.geojson
│ ├── gt_epsg4326.json
│ ├── inference_tiler_test_output.npy
│ ├── nebraska_landsat5_with_nodata_wgs84.tif
│ ├── nebraska_wgs84_with_nodata_labels.geojson
│ ├── overlap_test.geojson
│ ├── pred.geojson
│ ├── preproc_tutorial
│ │ ├── example1flowchart.png
│ │ ├── example2flowchart.png
│ │ ├── example3flowchart.png
│ │ ├── ms1.tif
│ │ ├── ms2.tif
│ │ ├── ms3.tif
│ │ ├── pan1.tif
│ │ ├── pan2.tif
│ │ ├── pan3.tif
│ │ ├── rgb_unmasked.tif
│ │ ├── sar_hh.tif
│ │ ├── sar_hv.tif
│ │ ├── sar_masked.tif
│ │ ├── sar_vh.tif
│ │ └── sar_vv.tif
│ ├── rastertile_test_custom_proj_expected
│ │ ├── sample_geotiff_custom_proj_-661905_2118645.tif
│ │ ├── sample_geotiff_custom_proj_-661905_2122485.tif
│ │ ├── sample_geotiff_custom_proj_-661905_2126325.tif
│ │ ├── sample_geotiff_custom_proj_-661905_2130165.tif
│ │ ├── sample_geotiff_custom_proj_-665745_2118645.tif
│ │ ├── sample_geotiff_custom_proj_-665745_2122485.tif
│ │ ├── sample_geotiff_custom_proj_-665745_2126325.tif
│ │ ├── sample_geotiff_custom_proj_-665745_2130165.tif
│ │ ├── sample_geotiff_custom_proj_-669585_2118645.tif
│ │ ├── sample_geotiff_custom_proj_-669585_2122485.tif
│ │ ├── sample_geotiff_custom_proj_-669585_2126325.tif
│ │ ├── sample_geotiff_custom_proj_-669585_2130165.tif
│ │ ├── sample_geotiff_custom_proj_-673425_2118645.tif
│ │ ├── sample_geotiff_custom_proj_-673425_2122485.tif
│ │ ├── sample_geotiff_custom_proj_-673425_2126325.tif
│ │ └── sample_geotiff_custom_proj_-673425_2130165.tif
│ ├── rastertile_test_expected
│ │ ├── sample_geotiff_733601_3724734.tif
│ │ ├── sample_geotiff_733601_3724779.tif
│ │ ├── sample_geotiff_733601_3724824.tif
│ │ ├── sample_geotiff_733601_3724869.tif
│ │ ├── sample_geotiff_733601_3724914.tif
│ │ ├── sample_geotiff_733601_3724959.tif
│ │ ├── sample_geotiff_733601_3725004.tif
│ │ ├── sample_geotiff_733601_3725049.tif
│ │ ├── sample_geotiff_733601_3725094.tif
│ │ ├── sample_geotiff_733601_3725139.tif
│ │ ├── sample_geotiff_733646_3724734.tif
│ │ ├── sample_geotiff_733646_3724779.tif
│ │ ├── sample_geotiff_733646_3724824.tif
│ │ ├── sample_geotiff_733646_3724869.tif
│ │ ├── sample_geotiff_733646_3724914.tif
│ │ ├── sample_geotiff_733646_3724959.tif
│ │ ├── sample_geotiff_733646_3725004.tif
│ │ ├── sample_geotiff_733646_3725049.tif
│ │ ├── sample_geotiff_733646_3725094.tif
│ │ ├── sample_geotiff_733646_3725139.tif
│ │ ├── sample_geotiff_733691_3724734.tif
│ │ ├── sample_geotiff_733691_3724779.tif
│ │ ├── sample_geotiff_733691_3724824.tif
│ │ ├── sample_geotiff_733691_3724869.tif
│ │ ├── sample_geotiff_733691_3724914.tif
│ │ ├── sample_geotiff_733691_3724959.tif
│ │ ├── sample_geotiff_733691_3725004.tif
│ │ ├── sample_geotiff_733691_3725049.tif
│ │ ├── sample_geotiff_733691_3725094.tif
│ │ ├── sample_geotiff_733691_3725139.tif
│ │ ├── sample_geotiff_733736_3724734.tif
│ │ ├── sample_geotiff_733736_3724779.tif
│ │ ├── sample_geotiff_733736_3724824.tif
│ │ ├── sample_geotiff_733736_3724869.tif
│ │ ├── sample_geotiff_733736_3724914.tif
│ │ ├── sample_geotiff_733736_3724959.tif
│ │ ├── sample_geotiff_733736_3725004.tif
│ │ ├── sample_geotiff_733736_3725049.tif
│ │ ├── sample_geotiff_733736_3725094.tif
│ │ ├── sample_geotiff_733736_3725139.tif
│ │ ├── sample_geotiff_733781_3724734.tif
│ │ ├── sample_geotiff_733781_3724779.tif
│ │ ├── sample_geotiff_733781_3724824.tif
│ │ ├── sample_geotiff_733781_3724869.tif
│ │ ├── sample_geotiff_733781_3724914.tif
│ │ ├── sample_geotiff_733781_3724959.tif
│ │ ├── sample_geotiff_733781_3725004.tif
│ │ ├── sample_geotiff_733781_3725049.tif
│ │ ├── sample_geotiff_733781_3725094.tif
│ │ ├── sample_geotiff_733781_3725139.tif
│ │ ├── sample_geotiff_733826_3724734.tif
│ │ ├── sample_geotiff_733826_3724779.tif
│ │ ├── sample_geotiff_733826_3724824.tif
│ │ ├── sample_geotiff_733826_3724869.tif
│ │ ├── sample_geotiff_733826_3724914.tif
│ │ ├── sample_geotiff_733826_3724959.tif
│ │ ├── sample_geotiff_733826_3725004.tif
│ │ ├── sample_geotiff_733826_3725049.tif
│ │ ├── sample_geotiff_733826_3725094.tif
│ │ ├── sample_geotiff_733826_3725139.tif
│ │ ├── sample_geotiff_733871_3724734.tif
│ │ ├── sample_geotiff_733871_3724779.tif
│ │ ├── sample_geotiff_733871_3724824.tif
│ │ ├── sample_geotiff_733871_3724869.tif
│ │ ├── sample_geotiff_733871_3724914.tif
│ │ ├── sample_geotiff_733871_3724959.tif
│ │ ├── sample_geotiff_733871_3725004.tif
│ │ ├── sample_geotiff_733871_3725049.tif
│ │ ├── sample_geotiff_733871_3725094.tif
│ │ ├── sample_geotiff_733871_3725139.tif
│ │ ├── sample_geotiff_733916_3724734.tif
│ │ ├── sample_geotiff_733916_3724779.tif
│ │ ├── sample_geotiff_733916_3724824.tif
│ │ ├── sample_geotiff_733916_3724869.tif
│ │ ├── sample_geotiff_733916_3724914.tif
│ │ ├── sample_geotiff_733916_3724959.tif
│ │ ├── sample_geotiff_733916_3725004.tif
│ │ ├── sample_geotiff_733916_3725049.tif
│ │ ├── sample_geotiff_733916_3725094.tif
│ │ ├── sample_geotiff_733916_3725139.tif
│ │ ├── sample_geotiff_733961_3724734.tif
│ │ ├── sample_geotiff_733961_3724779.tif
│ │ ├── sample_geotiff_733961_3724824.tif
│ │ ├── sample_geotiff_733961_3724869.tif
│ │ ├── sample_geotiff_733961_3724914.tif
│ │ ├── sample_geotiff_733961_3724959.tif
│ │ ├── sample_geotiff_733961_3725004.tif
│ │ ├── sample_geotiff_733961_3725049.tif
│ │ ├── sample_geotiff_733961_3725094.tif
│ │ ├── sample_geotiff_733961_3725139.tif
│ │ ├── sample_geotiff_734006_3724734.tif
│ │ ├── sample_geotiff_734006_3724779.tif
│ │ ├── sample_geotiff_734006_3724824.tif
│ │ ├── sample_geotiff_734006_3724869.tif
│ │ ├── sample_geotiff_734006_3724914.tif
│ │ ├── sample_geotiff_734006_3724959.tif
│ │ ├── sample_geotiff_734006_3725004.tif
│ │ ├── sample_geotiff_734006_3725049.tif
│ │ ├── sample_geotiff_734006_3725094.tif
│ │ └── sample_geotiff_734006_3725139.tif
│ ├── rastertile_test_fill_nodata_expected
│ │ ├── aoi_restricted_nebraska_landsat5_with_nodata_wgs84_-101.003_41.774.tif
│ │ ├── aoi_restricted_nebraska_landsat5_with_nodata_wgs84_-101.044_41.691.tif
│ │ ├── aoi_restricted_nebraska_landsat5_with_nodata_wgs84_-101.044_41.732.tif
│ │ ├── aoi_restricted_nebraska_landsat5_with_nodata_wgs84_-101.044_41.774.tif
│ │ ├── aoi_restricted_nebraska_landsat5_with_nodata_wgs84_-101.085_41.691.tif
│ │ ├── aoi_restricted_nebraska_landsat5_with_nodata_wgs84_-101.085_41.732.tif
│ │ ├── aoi_restricted_nebraska_landsat5_with_nodata_wgs84_-101.085_41.774.tif
│ │ ├── aoi_restricted_nebraska_landsat5_with_nodata_wgs84_-101.127_41.691.tif
│ │ ├── aoi_restricted_nebraska_landsat5_with_nodata_wgs84_-101.127_41.732.tif
│ │ └── aoi_restricted_nebraska_landsat5_with_nodata_wgs84_-101.127_41.774.tif
│ ├── restrict_aoi_test.geojson
│ ├── road_mask_input.tif
│ ├── sample.csv
│ ├── sample.geojson
│ ├── sample_b_from_df2px.tif
│ ├── sample_b_mask_inner.tif
│ ├── sample_b_mask_outer.tif
│ ├── sample_b_mask_outer_10.tif
│ ├── sample_c_from_df2px.tif
│ ├── sample_c_mask.tif
│ ├── sample_fbc_from_df2px.tif
│ ├── sample_fp_from_df2px.tif
│ ├── sample_fp_mask.tif
│ ├── sample_fp_mask_from_geojson.tif
│ ├── sample_geotiff.tif
│ ├── sample_geotiff.tif.txt
│ ├── sample_geotiff_custom_proj.tif
│ ├── sample_graph.pkl
│ ├── sample_inst_mask.tif
│ ├── sample_preds.csv
│ ├── sample_preds_competition.csv
│ ├── sample_road_raster_mask.tif
│ ├── sample_roads.geojson
│ ├── sample_roads_for_masking.geojson
│ ├── sample_truth.csv
│ ├── sample_truth_competition.csv
│ ├── split_multi_grouped_result.json
│ ├── split_multi_result.csv
│ ├── split_multi_result.json
│ ├── stitching_conf_output.npy
│ ├── stitching_first_output.npy
│ ├── test.yml
│ ├── test_overlap_output.txt
│ ├── test_polygon_split.geojson
│ ├── test_results.csv
│ ├── test_results_full.csv
│ ├── vectortile_test_custom_proj_expected
│ │ ├── geoms_-661905.0_2118645.0.geojson
│ │ ├── geoms_-661905.0_2122485.0.geojson
│ │ ├── geoms_-661905.0_2126325.0.geojson
│ │ ├── geoms_-661905.0_2130165.0.geojson
│ │ ├── geoms_-665745.0_2118645.0.geojson
│ │ ├── geoms_-665745.0_2122485.0.geojson
│ │ ├── geoms_-665745.0_2126325.0.geojson
│ │ ├── geoms_-665745.0_2130165.0.geojson
│ │ ├── geoms_-669585.0_2118645.0.geojson
│ │ ├── geoms_-669585.0_2122485.0.geojson
│ │ ├── geoms_-669585.0_2126325.0.geojson
│ │ ├── geoms_-669585.0_2130165.0.geojson
│ │ ├── geoms_-673425.0_2118645.0.geojson
│ │ ├── geoms_-673425.0_2122485.0.geojson
│ │ ├── geoms_-673425.0_2126325.0.geojson
│ │ └── geoms_-673425.0_2130165.0.geojson
│ ├── vectortile_test_expected
│ │ ├── geoms_733601_3724734.geojson
│ │ ├── geoms_733601_3724779.geojson
│ │ ├── geoms_733601_3724824.geojson
│ │ ├── geoms_733601_3724869.geojson
│ │ ├── geoms_733601_3724914.geojson
│ │ ├── geoms_733601_3724959.geojson
│ │ ├── geoms_733601_3725004.geojson
│ │ ├── geoms_733601_3725049.geojson
│ │ ├── geoms_733601_3725094.geojson
│ │ ├── geoms_733601_3725139.geojson
│ │ ├── geoms_733646_3724734.geojson
│ │ ├── geoms_733646_3724779.geojson
│ │ ├── geoms_733646_3724824.geojson
│ │ ├── geoms_733646_3724869.geojson
│ │ ├── geoms_733646_3724914.geojson
│ │ ├── geoms_733646_3724959.geojson
│ │ ├── geoms_733646_3725004.geojson
│ │ ├── geoms_733646_3725049.geojson
│ │ ├── geoms_733646_3725094.geojson
│ │ ├── geoms_733646_3725139.geojson
│ │ ├── geoms_733691_3724734.geojson
│ │ ├── geoms_733691_3724779.geojson
│ │ ├── geoms_733691_3724824.geojson
│ │ ├── geoms_733691_3724869.geojson
│ │ ├── geoms_733691_3724914.geojson
│ │ ├── geoms_733691_3724959.geojson
│ │ ├── geoms_733691_3725004.geojson
│ │ ├── geoms_733691_3725049.geojson
│ │ ├── geoms_733691_3725094.geojson
│ │ ├── geoms_733691_3725139.geojson
│ │ ├── geoms_733736_3724734.geojson
│ │ ├── geoms_733736_3724779.geojson
│ │ ├── geoms_733736_3724824.geojson
│ │ ├── geoms_733736_3724869.geojson
│ │ ├── geoms_733736_3724914.geojson
│ │ ├── geoms_733736_3724959.geojson
│ │ ├── geoms_733736_3725004.geojson
│ │ ├── geoms_733736_3725049.geojson
│ │ ├── geoms_733736_3725094.geojson
│ │ ├── geoms_733736_3725139.geojson
│ │ ├── geoms_733781_3724734.geojson
│ │ ├── geoms_733781_3724779.geojson
│ │ ├── geoms_733781_3724824.geojson
│ │ ├── geoms_733781_3724869.geojson
│ │ ├── geoms_733781_3724914.geojson
│ │ ├── geoms_733781_3724959.geojson
│ │ ├── geoms_733781_3725004.geojson
│ │ ├── geoms_733781_3725049.geojson
│ │ ├── geoms_733781_3725094.geojson
│ │ ├── geoms_733781_3725139.geojson
│ │ ├── geoms_733826_3724734.geojson
│ │ ├── geoms_733826_3724779.geojson
│ │ ├── geoms_733826_3724824.geojson
│ │ ├── geoms_733826_3724869.geojson
│ │ ├── geoms_733826_3724914.geojson
│ │ ├── geoms_733826_3724959.geojson
│ │ ├── geoms_733826_3725004.geojson
│ │ ├── geoms_733826_3725049.geojson
│ │ ├── geoms_733826_3725094.geojson
│ │ ├── geoms_733826_3725139.geojson
│ │ ├── geoms_733871_3724734.geojson
│ │ ├── geoms_733871_3724779.geojson
│ │ ├── geoms_733871_3724824.geojson
│ │ ├── geoms_733871_3724869.geojson
│ │ ├── geoms_733871_3724914.geojson
│ │ ├── geoms_733871_3724959.geojson
│ │ ├── geoms_733871_3725004.geojson
│ │ ├── geoms_733871_3725049.geojson
│ │ ├── geoms_733871_3725094.geojson
│ │ ├── geoms_733871_3725139.geojson
│ │ ├── geoms_733916_3724734.geojson
│ │ ├── geoms_733916_3724779.geojson
│ │ ├── geoms_733916_3724824.geojson
│ │ ├── geoms_733916_3724869.geojson
│ │ ├── geoms_733916_3724914.geojson
│ │ ├── geoms_733916_3724959.geojson
│ │ ├── geoms_733916_3725004.geojson
│ │ ├── geoms_733916_3725049.geojson
│ │ ├── geoms_733916_3725094.geojson
│ │ ├── geoms_733916_3725139.geojson
│ │ ├── geoms_733961_3724734.geojson
│ │ ├── geoms_733961_3724779.geojson
│ │ ├── geoms_733961_3724824.geojson
│ │ ├── geoms_733961_3724869.geojson
│ │ ├── geoms_733961_3724914.geojson
│ │ ├── geoms_733961_3724959.geojson
│ │ ├── geoms_733961_3725004.geojson
│ │ ├── geoms_733961_3725049.geojson
│ │ ├── geoms_733961_3725094.geojson
│ │ ├── geoms_733961_3725139.geojson
│ │ ├── geoms_734006_3724734.geojson
│ │ ├── geoms_734006_3724779.geojson
│ │ ├── geoms_734006_3724824.geojson
│ │ ├── geoms_734006_3724869.geojson
│ │ ├── geoms_734006_3724914.geojson
│ │ ├── geoms_734006_3724959.geojson
│ │ ├── geoms_734006_3725004.geojson
│ │ ├── geoms_734006_3725049.geojson
│ │ ├── geoms_734006_3725094.geojson
│ │ └── geoms_734006_3725139.geojson
│ ├── vectortile_test_filled_expected
│ │ ├── empty_geoms_-101.003_41.774.tif
│ │ ├── empty_geoms_-101.044_41.691.tif
│ │ ├── empty_geoms_-101.044_41.732.tif
│ │ ├── empty_geoms_-101.085_41.774.tif
│ │ ├── empty_geoms_-101.127_41.774.tif
│ │ ├── geoms_-101.044_41.774.tif
│ │ ├── geoms_-101.085_41.691.tif
│ │ ├── geoms_-101.085_41.732.tif
│ │ ├── geoms_-101.127_41.691.tif
│ │ └── geoms_-101.127_41.732.tif
│ ├── vectortile_test_nonfilled_expected
│ │ ├── geoms_-101.003_41.774.geojson
│ │ ├── geoms_-101.044_41.691.geojson
│ │ ├── geoms_-101.044_41.732.geojson
│ │ ├── geoms_-101.044_41.774.geojson
│ │ ├── geoms_-101.085_41.691.geojson
│ │ ├── geoms_-101.085_41.732.geojson
│ │ ├── geoms_-101.085_41.774.geojson
│ │ ├── geoms_-101.127_41.691.geojson
│ │ ├── geoms_-101.127_41.732.geojson
│ │ └── geoms_-101.127_41.774.geojson
│ ├── w_multipolygon.csv
│ ├── yolo_gdf_result.csv
│ └── zoo
│ │ └── model_reference.yml
├── eval
│ ├── __init__.py
│ ├── base.py
│ ├── challenges.py
│ ├── iou.py
│ ├── pixel.py
│ ├── scot.py
│ └── vector.py
├── nets
│ ├── __init__.py
│ ├── _keras_losses.py
│ ├── _torch_losses.py
│ ├── callbacks.py
│ ├── configs
│ │ ├── config_skeleton.yml
│ │ ├── selimsef_densenet121unet_spacenet4.yml
│ │ ├── selimsef_densenet161unet_spacenet4.yml
│ │ ├── selimsef_resnet34unet_spacenet4.yml
│ │ ├── selimsef_scse50unet_spacenet4.yml
│ │ └── xdxd_spacenet4.yml
│ ├── datagen.py
│ ├── infer.py
│ ├── losses.py
│ ├── metrics.py
│ ├── model_io.py
│ ├── optimizers.py
│ ├── torch_callbacks.py
│ ├── train.py
│ ├── transform.py
│ └── zoo
│ │ ├── __init__.py
│ │ ├── multiclass_segmentation.py
│ │ ├── selim_sef_sn4.py
│ │ └── xdxd_sn4.py
├── preproc
│ ├── __init__.py
│ ├── image.py
│ ├── label.py
│ ├── optical.py
│ ├── pipesegment.py
│ └── sar.py
├── raster
│ ├── __init__.py
│ └── image.py
├── tile
│ ├── __init__.py
│ ├── raster_tile.py
│ └── vector_tile.py
├── utils
│ ├── __init__.py
│ ├── cli.py
│ ├── config.py
│ ├── core.py
│ ├── data.py
│ ├── geo.py
│ ├── io.py
│ ├── log.py
│ ├── raster.py
│ ├── tdigest.py
│ └── tile.py
└── vector
│ ├── __init__.py
│ ├── graph.py
│ ├── mask.py
│ └── polygon.py
├── static
└── sol_logo.png
└── tests
├── __init__.py
├── test_cli
├── compare.py
├── test_cli.py
└── test_cli.sh
├── test_data
└── test_coco.py
├── test_eval
├── evaluator_test.py
├── iou_test.py
├── off_nadir_dataset_test.py
├── pixel_test.py
├── spacenet_buildings2_dataset_test.py
└── vector_test.py
├── test_imports.py
├── test_nets
├── test_callbacks.py
├── test_datagen.py
├── test_losses.py
├── test_metrics.py
├── test_optimizers.py
└── test_transform.py
├── test_raster
├── __init__.py
└── test_image.py
├── test_tile
└── test_tile.py
├── test_utils
├── __init__.py
├── test_core.py
├── test_data.py
├── test_geo.py
└── test_io.py
└── test_vector
├── __init__.py
├── test_graph.py
├── test_mask.py
└── test_polygon.py
/.gitattributes:
--------------------------------------------------------------------------------
1 | *.ipynb filter=nbstripout
2 |
3 | *.ipynb diff=ipynb
4 |
--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE/bug_report.md:
--------------------------------------------------------------------------------
1 | ---
2 | name: Bug report
3 | about: Report an error or other suspected bug behavior
4 | title: "[BUG]: (your description here)"
5 | labels: 'Status: Review Needed, Type: bug'
6 | assignees: ''
7 |
8 | ---
9 |
10 | _Thank you for helping us improve `solaris`!_
11 |
12 | ## Summary of the bug
13 | A clear and concise description of what the bug is.
14 |
15 | ## Steps to reproduce the bug
16 | Please either paste sample code used to generate the buggy behavior below, or provide step-by-step instructions to reproduce the problem.
17 |
18 | ```
19 | Paste bug-causing code here
20 | ```
21 |
22 | Steps to reproduce the behavior:
23 | 1. Go to '...'
24 | 2. Click on '....'
25 | 3. Scroll down to '....'
26 | 4. See error
27 |
28 | ## Buggy behavior and/or error message
29 | Please describe the buggy behavior and/or paste output here.
30 | ```
31 | Paste output here
32 | ```
33 |
34 | ## Expected behavior
35 | A clear and concise description of what you expected to happen.
36 |
37 | ## Screenshots
38 | If applicable, add screenshots to help explain your problem.
39 |
40 | ## Environment information
41 | - OS:
42 | - `solaris` version:
43 | - python version:
44 | - version of any relevant dependencies (optional - we may ask for this information later if not provided)
45 |
46 | ## Additional context
47 | Add any other context about the problem here.
48 |
--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE/documentation.md:
--------------------------------------------------------------------------------
1 | ---
2 | name: Documentation
3 | about: Request for additional documentation, clarification of existing documentation, or tutorials
4 | title: "[DOCS]"
5 | labels: 'Status: Review Needed, Type: Documentation'
6 | assignees: ''
7 |
8 | ---
9 |
10 | _Thank you for helping to improve `solaris`!_
11 |
12 | ## Documentation request summary
13 |
14 | A short summary of the changes you'd like made to the documentation.
15 |
16 | ## Task detail and notes
17 |
18 | List any additional information, links, or other content here that is needed to make the changes you're requesting.
19 |
--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE/feature_request.md:
--------------------------------------------------------------------------------
1 | ---
2 | name: Feature request
3 | about: Suggest an idea for this project
4 | title: "[FEATURE]: (short description)"
5 | labels: 'Status: Review Needed, Type: Enhancement'
6 | assignees: ''
7 |
8 | ---
9 |
10 | **Is your feature request related to a problem? Please describe.**
11 | A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
12 |
13 | **Describe the solution you'd like**
14 | A clear and concise description of what you want to happen.
15 |
16 | **Describe alternatives you've considered**
17 | A clear and concise description of any alternative solutions or features you've considered.
18 |
19 | **Additional context**
20 | Add any other context or screenshots about the feature request here.
21 |
--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE/maintenance.md:
--------------------------------------------------------------------------------
1 | ---
2 | name: Maintenance
3 | about: Request for maintenance, refactoring, or related tasks
4 | title: "[MAINT]"
5 | labels: 'Status: Review Needed, Type: Maintenance'
6 | assignees: ''
7 |
8 | ---
9 |
10 | ## Maintenance request summary
11 |
12 | A short summary of the maintenance to perform, including why it needs to be done.
13 |
14 | ## Task detail and notes
15 |
16 | Any additional information:
17 |
18 | - What other code will this impact?
19 |
20 | - Do new tests need to be written or do existing tests need to be updated?
21 |
22 | - Will this impact documentation?
23 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | # Byte-compiled / optimized / DLL files
2 | __pycache__/
3 | *.py[cod]
4 | *$py.class
5 |
6 | # MacOS stuff:
7 | .DS_Store
8 |
9 | # C extensions
10 | *.so
11 |
12 | # Distribution / packaging
13 | .Python
14 | build/
15 | develop-eggs/
16 | dist/
17 | downloads/
18 | eggs/
19 | .eggs/
20 | lib/
21 | lib64/
22 | parts/
23 | sdist/
24 | var/
25 | wheels/
26 | pip-wheel-metadata/
27 | share/python-wheels/
28 | *.egg-info/
29 | .installed.cfg
30 | *.egg
31 | MANIFEST
32 |
33 | # PyInstaller
34 | # Usually these files are written by a python script from a template
35 | # before PyInstaller builds the exe, so as to inject date/other infos into it.
36 | *.manifest
37 | *.spec
38 |
39 | # Installer logs
40 | pip-log.txt
41 | pip-delete-this-directory.txt
42 |
43 | # Unit test / coverage reports
44 | htmlcov/
45 | .tox/
46 | .nox/
47 | .coverage
48 | .coverage.*
49 | .cache
50 | nosetests.xml
51 | coverage.xml
52 | *.cover
53 | .hypothesis/
54 | .pytest_cache/
55 |
56 | # Translations
57 | *.mo
58 | *.pot
59 |
60 | # Django stuff:
61 | *.log
62 | local_settings.py
63 | db.sqlite3
64 |
65 | # Flask stuff:
66 | instance/
67 | .webassets-cache
68 |
69 | # Scrapy stuff:
70 | .scrapy
71 |
72 | # Text editor backups:
73 | *~
74 |
75 | # Sphinx documentation
76 | docs/_build/
77 |
78 | # PyBuilder
79 | target/
80 |
81 | # Jupyter Notebook
82 | .ipynb_checkpoints
83 |
84 | # IPython
85 | profile_default/
86 | ipython_config.py
87 |
88 | # pyenv
89 | .python-version
90 |
91 | # celery beat schedule file
92 | celerybeat-schedule
93 |
94 | # SageMath parsed files
95 | *.sage.py
96 |
97 | # Environments
98 | .env
99 | .venv
100 | env/
101 | venv/
102 | ENV/
103 | env.bak/
104 | venv.bak/
105 |
106 | # Spyder project settings
107 | .spyderproject
108 | .spyproject
109 |
110 | # Rope project settings
111 | .ropeproject
112 |
113 | # mkdocs documentation
114 | /site
115 |
116 | # mypy
117 | .mypy_cache/
118 | .dmypy.json
119 | dmypy.json
120 |
121 | # Pyre type checker
122 | .pyre/
123 |
124 | # Project-specific
125 | sandbox.ipynb
126 | solaris/nets/weights
127 | model_weights
128 |
--------------------------------------------------------------------------------
/.readthedocs-environment.yml:
--------------------------------------------------------------------------------
1 | name: solaris
2 | dependencies:
3 | - python
4 | - pip
5 | - gdal
6 | - pip:
7 | - sphinx_bootstrap_theme
8 | - nbsphinx
9 |
--------------------------------------------------------------------------------
/.readthedocs.yml:
--------------------------------------------------------------------------------
1 | version: 2
2 | formats:
3 | - htmlzip
4 |
5 | python:
6 | version: 3.6
7 | install:
8 | - method: pip
9 | path: .
10 | - requirements: .rtfd-requirements.txt
11 |
12 |
13 | conda:
14 | environment: .readthedocs-environment.yml
15 |
16 | build:
17 | image: latest
18 |
--------------------------------------------------------------------------------
/.rtfd-requirements.txt:
--------------------------------------------------------------------------------
1 | sphinx_bootstrap_theme
2 |
--------------------------------------------------------------------------------
/.travis.yml:
--------------------------------------------------------------------------------
1 | language: python
2 | sudo: required
3 | dist: xenial
4 | cache: false
5 | python:
6 | - "3.6"
7 | - "3.7"
8 | - "3.8"
9 |
10 | # command to install dependencies
11 | install:
12 | - sudo apt-get update
13 | # We do this conditionally because it saves us some downloading if the
14 | # version is the same.
15 | - if [[ "$TRAVIS_PYTHON_VERSION" == "2.7" ]]; then
16 | wget https://repo.continuum.io/miniconda/Miniconda2-latest-Linux-x86_64.sh -O miniconda.sh;
17 | else
18 | wget https://repo.continuum.io/miniconda/Miniconda3-latest-Linux-x86_64.sh -O miniconda.sh;
19 | fi
20 | - bash miniconda.sh -b -p $HOME/miniconda
21 | - export PATH="$HOME/miniconda/bin:$PATH"
22 | - hash -r
23 | - conda config --set always_yes yes --set changeps1 no
24 | # Useful for debugging any issues with conda
25 | - conda install pip # workaround to avoid miniconda 4.7.12 bugs
26 | - conda update conda -c conda-forge
27 | - conda info -a
28 | # switch python version spec in environment.yml to match TRAVIS_PYTHON_VERSION
29 | # annoying workaround to `conda env create python=$TRAVIS_PYTHON_VERSION` not working
30 | - sed -i -E 's/(python=)(.*)/\1'$TRAVIS_PYTHON_VERSION'/' ./environment.yml
31 | - conda env create -n solaris -f environment.yml
32 | - conda list -n solaris
33 | - source activate solaris
34 | - python --version
35 | - pip install --user -r requirements.txt -vv
36 | - pip install .[test] -vv
37 | - pip install codecov pytest-cov pytest==5.3.1
38 | # command to run tests
39 | script:
40 | - python -m pytest --cov=./
41 |
42 | after_success:
43 | - codecov
44 |
45 | jobs:
46 | allow_failures:
47 | - python: "3.8"
48 |
--------------------------------------------------------------------------------
/.vscode/settings.json:
--------------------------------------------------------------------------------
1 | {
2 | "python.testing.pytestArgs": [
3 | "tests"
4 | ],
5 | "python.testing.unittestEnabled": false,
6 | "python.testing.nosetestsEnabled": false,
7 | "python.testing.pytestEnabled": true,
8 | "python.pythonPath": "/home/rave/miniconda3/envs/solaris-test/bin/python"
9 | }
--------------------------------------------------------------------------------
/MANIFEST.in:
--------------------------------------------------------------------------------
1 | include *.txt
2 | include *.md
3 | include *json
4 | include *.csv
5 | include *.pkl
6 | include *.tif
7 | include *.txt
8 | include *.npy
9 |
10 | graft solaris/data
11 |
--------------------------------------------------------------------------------
/PULL_REQUEST_TEMPLATE.md:
--------------------------------------------------------------------------------
1 | Thank you for submitting your PR. Please read the template below, fill it out as appropriate, and make additional changes to your code as needed. Please feel free to submit your PR even if it doesn't satisfy all of the requirements below - simply prepend [WIP] to the PR title until it is ready for review by a maintainer. If you need assistance or review from a maintainer, add the label __Status: Help Needed__ or __Status: Review Needed__ respectively. After review, a maintainer will add the label __Status: Revision Needed__ if further work is required for the PR to be merged.
2 |
3 | # Description
4 |
5 | Please include a summary of the change and which issue is resolved. Please also include relevant motivation and context. List any dependencies that are required for this change.
6 |
7 | Fixes # (issue)
8 |
9 | ## Type of change
10 |
11 | Please delete options that are not relevant.
12 |
13 | - [ ] Bug fix (non-breaking change which fixes an issue)
14 | - [ ] New feature (non-breaking change which adds functionality)
15 | - [ ] __Breaking change__ (fix or feature that would cause existing functionality to not work as expected - these changes will not be merged until major releases!)
16 |
17 |
18 |
19 | # How Has This Been Tested?
20 |
21 | Please describe tests that you added to the pytest codebase (if applicable).
22 |
23 | # Checklist:
24 |
25 | - [ ] My PR has a descriptive title
26 | - [ ] My code follows PEP8
27 | - [ ] I have performed a self-review of my own code
28 | - [ ] I have commented my code, particularly in hard-to-understand areas
29 | - [ ] I have made corresponding changes to the documentation
30 | - [ ] My changes generate no new errors
31 | - [ ] I have added tests that prove my fix is effective or that my feature works
32 | - [ ] My PR passes Travis CI tests
33 | - [ ] My PR does not reduce coverage in Codecov
34 |
35 | _If your PR does not fulfill all of the requirements in the checklist above, that's OK!_ Just prepend [WIP] to the PR title until they are all satisfied. If you need help, @-mention a maintainer and/or add the __Status: Help Needed__ label.
36 |
--------------------------------------------------------------------------------
/docs/Makefile:
--------------------------------------------------------------------------------
1 | # Minimal makefile for Sphinx documentation
2 | #
3 |
4 | # You can set these variables from the command line.
5 | SPHINXOPTS =
6 | SPHINXBUILD = sphinx-build
7 | SOURCEDIR = .
8 | BUILDDIR = _build
9 |
10 | # Put it first so that "make" without argument is like "make help".
11 | help:
12 | @$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
13 |
14 | .PHONY: help Makefile
15 |
16 | # Catch-all target: route all unknown targets to Sphinx using the new
17 | # "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS).
18 | %: Makefile
19 | @$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
--------------------------------------------------------------------------------
/docs/_static/custom_styles.css:
--------------------------------------------------------------------------------
1 | p {
2 | font-size: 1.1em;
3 | }
4 |
5 | h1 {
6 | font-size: 2.5em;
7 | }
8 |
9 | h2 {
10 | font-size: 2.2em;
11 | }
12 |
13 | h3 {
14 | font-size: 1.75em;
15 | }
16 |
--------------------------------------------------------------------------------
/docs/_static/solaris_logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/docs/_static/solaris_logo.png
--------------------------------------------------------------------------------
/docs/_static/solaris_logo_tiny_black.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/docs/_static/solaris_logo_tiny_black.png
--------------------------------------------------------------------------------
/docs/_templates/autosummary/base.rst:
--------------------------------------------------------------------------------
1 | {{ fullname | escape | underline}}
2 |
3 | .. currentmodule:: {{ module }}
4 |
5 | .. auto{{ objtype }}:: {{ objname }}
6 |
--------------------------------------------------------------------------------
/docs/_templates/autosummary/class.rst:
--------------------------------------------------------------------------------
1 | {{ fullname | escape | underline}}
2 |
3 | .. currentmodule:: {{ module }}
4 |
5 | .. autoclass:: {{ objname }}
6 |
7 | {% block methods %}
8 | .. automethod:: __init__
9 |
10 | {% if methods %}
11 | .. rubric:: Methods
12 |
13 | .. autosummary::
14 | {% for item in methods %}
15 | ~{{ name }}.{{ item }}
16 | {%- endfor %}
17 | {% endif %}
18 | {% endblock %}
19 |
20 | {% block attributes %}
21 | {% if attributes %}
22 | .. rubric:: Attributes
23 |
24 | .. autosummary::
25 | {% for item in attributes %}
26 | ~{{ name }}.{{ item }}
27 | {%- endfor %}
28 | {% endif %}
29 | {% endblock %}
30 |
--------------------------------------------------------------------------------
/docs/_templates/autosummary/module.rst:
--------------------------------------------------------------------------------
1 | {{ fullname | escape | underline}}
2 |
3 | .. automodule:: {{ fullname }}
4 |
5 | {% block functions %}
6 | {% if functions %}
7 | .. rubric:: Functions
8 |
9 | .. autosummary::
10 | {% for item in functions %}
11 | {{ item }}
12 | {%- endfor %}
13 | {% endif %}
14 | {% endblock %}
15 |
16 | {% block classes %}
17 | {% if classes %}
18 | .. rubric:: Classes
19 |
20 | .. autosummary::
21 | {% for item in classes %}
22 | {{ item }}
23 | {%- endfor %}
24 | {% endif %}
25 | {% endblock %}
26 |
27 | {% block exceptions %}
28 | {% if exceptions %}
29 | .. rubric:: Exceptions
30 |
31 | .. autosummary::
32 | {% for item in exceptions %}
33 | {{ item }}
34 | {%- endfor %}
35 | {% endif %}
36 | {% endblock %}
37 |
--------------------------------------------------------------------------------
/docs/_templates/base/base.rst:
--------------------------------------------------------------------------------
1 | .. {{ obj.type }}:: {{ obj.name }}
2 |
3 | {% if summary %}
4 |
5 | {{ obj.summary }}
6 |
7 | {% endif %}
8 |
--------------------------------------------------------------------------------
/docs/_templates/custom_sidebar.html:
--------------------------------------------------------------------------------
1 |
{{ toctree(collapse=False,includehidden=theme_globaltoc_includehidden|tobool) }}
2 |
--------------------------------------------------------------------------------
/docs/_templates/dotnet/base_detail.rst:
--------------------------------------------------------------------------------
1 | {% block title %}
2 |
3 | {{ obj.short_name }} {{ obj.type.title()}}
4 | {{ "=" * (obj.short_name|length + obj.type|length + 1) }}
5 |
6 | {% endblock %}
7 |
8 | {% block summary %}
9 | {% if obj.summary %}
10 |
11 | {{ obj.summary }}
12 |
13 | {% endif %}
14 | {% endblock %}
15 |
16 | {% if obj.namespace %}
17 | Namespace
18 | :dn:ns:`{{ obj.namespace }}`
19 |
20 | {% endif %}
21 | {% if obj.assemblies %}
22 | Assemblies
23 | {% for assembly in obj.assemblies %}
24 | * {{ assembly }}
25 | {% endfor %}
26 | {% endif %}
27 |
28 | ----
29 |
30 | .. contents::
31 | :local:
32 |
33 | {% block inheritance %}
34 |
35 | {% if obj.inheritance %}
36 |
37 | Inheritance Hierarchy
38 | ---------------------
39 |
40 | {% for item in obj.inheritance %}
41 | * :dn:{{ item.ref_directive }}:`{{ item.ref_name }}`
42 | {% endfor %}
43 | * :dn:{{ obj.ref_directive }}:`{{ obj.ref_name }}`
44 | {% endif %}
45 |
46 | {% endblock %}
47 |
48 | {% block syntax %}
49 |
50 | {% if obj.example %}
51 |
52 | Syntax
53 | ------
54 |
55 | .. code-block:: csharp
56 |
57 | {{ obj.example|indent(4) }}
58 |
59 | {% endif %}
60 |
61 | {% endblock %}
62 |
63 |
64 | {% block content %}
65 |
66 | .. dn:{{ obj.ref_type }}:: {{ obj.definition }}
67 | :hidden:
68 |
69 | .. dn:{{ obj.ref_type }}:: {{ obj.name }}
70 |
71 | {% for item_type in obj.item_map.keys() %}
72 | {% if item_type in obj.item_map %}
73 |
74 | {{ item_type.title() }}
75 | {{ "-" * item_type|length }}
76 |
77 | .. dn:{{ obj.ref_type }}:: {{ obj.name }}
78 | :noindex:
79 | :hidden:
80 |
81 | {% for obj_item in obj.item_map.get(item_type, []) %}
82 | {{ obj_item.render()|indent(4) }}
83 | {% endfor %}
84 |
85 | {% endif %}
86 | {% endfor %}
87 |
88 | {% endblock %}
89 |
--------------------------------------------------------------------------------
/docs/_templates/dotnet/base_embed.rst:
--------------------------------------------------------------------------------
1 | .. dn:{{ obj.ref_type }}:: {{ obj.name }}
2 |
3 | {% if obj.summary %}
4 | {{ obj.summary|indent(4) }}
5 |
6 | {% endif %}
7 |
8 | {% for param in obj.parameters %}
9 |
10 | {% if param.desc %}
11 | :param {{ param.name }}: {{ param.desc|indent(8) }}
12 | {% endif %}
13 | {% if param.type %}
14 | :type {{ param.name }}: {{ param.type|indent(8) }}
15 | {% endif %}
16 | {% endfor %}
17 |
18 | {% if obj.returns.type %}
19 | :rtype: {{ obj.returns.type|indent(8) }}
20 | {% endif %}
21 | {% if obj.returns.description %}
22 | :return: {{ obj.returns.description|indent(8) }}
23 | {% endif %}
24 |
25 | {% if obj.example %}
26 | .. code-block:: csharp
27 |
28 | {{ obj.example|indent(8) }}
29 | {% endif %}
30 |
--------------------------------------------------------------------------------
/docs/_templates/dotnet/base_list.rst:
--------------------------------------------------------------------------------
1 | {% block title %}
2 |
3 | {{ obj.name }} {{ obj.type.title() }}
4 | {{ "=" * (obj.name|length + obj.type|length + 1) }}
5 |
6 | {% endblock %}
7 |
8 | {% block toc %}
9 |
10 | {% if obj.children %}
11 |
12 | .. toctree::
13 | :hidden:
14 | :maxdepth: 2
15 |
16 | {% for item in obj.children|sort %}
17 | {% if item.type != 'namespace' %}
18 | {{ item.include_path }}
19 | {% endif %}
20 | {% endfor %}
21 |
22 |
23 | {% endif %}
24 |
25 | {% if obj.references %}
26 |
27 | .. toctree::
28 | :hidden:
29 | :maxdepth: 2
30 |
31 | {% for item in obj.references|sort %}
32 | {% if item.type != 'namespace' %}
33 | {{ item.include_path }}
34 | {% endif %}
35 | {% endfor %}
36 |
37 | {% endif %}
38 |
39 | {% endblock %}
40 |
41 |
42 | {% block content %}
43 |
44 | {% macro display_type(item_type) %}
45 |
46 | .. rubric:: {{ item_type.title() }}
47 |
48 | {% for obj_item in obj.item_map.get(item_type, []) %}
49 | {% macro render() %}{{ obj_item.summary }}{% endmacro %}
50 |
51 | {{ obj_item.type }} :dn:{{ obj_item.ref_directive }}:`{{ obj_item.ref_short_name }}`
52 | .. object: type={{ obj_item.type }} name={{ obj_item.ref_name }}
53 |
54 | {{ render()|indent(8) }}
55 |
56 | {% endfor %}
57 | {% endmacro %}
58 |
59 | .. dn:{{ obj.ref_type }}:: {{ obj.name }}
60 |
61 | {% for item_type in obj.item_map.keys() %}
62 | {{ display_type(item_type) }}
63 | {% endfor %}
64 |
65 |
66 | {% endblock %}
67 |
--------------------------------------------------------------------------------
/docs/_templates/dotnet/class.rst:
--------------------------------------------------------------------------------
1 | {% extends "dotnet/base_detail.rst" %}
--------------------------------------------------------------------------------
/docs/_templates/dotnet/constructor.rst:
--------------------------------------------------------------------------------
1 | {% extends "dotnet/base_embed.rst" %}
--------------------------------------------------------------------------------
/docs/_templates/dotnet/delegate.rst:
--------------------------------------------------------------------------------
1 | {% extends "dotnet/base_detail.rst" %}
--------------------------------------------------------------------------------
/docs/_templates/dotnet/enum.rst:
--------------------------------------------------------------------------------
1 | {% extends "dotnet/base_detail.rst" %}
--------------------------------------------------------------------------------
/docs/_templates/dotnet/event.rst:
--------------------------------------------------------------------------------
1 | {% extends "dotnet/base_embed.rst" %}
--------------------------------------------------------------------------------
/docs/_templates/dotnet/field.rst:
--------------------------------------------------------------------------------
1 | {% extends "dotnet/base_embed.rst" %}
--------------------------------------------------------------------------------
/docs/_templates/dotnet/interface.rst:
--------------------------------------------------------------------------------
1 | {% extends "dotnet/base_detail.rst" %}
--------------------------------------------------------------------------------
/docs/_templates/dotnet/method.rst:
--------------------------------------------------------------------------------
1 | {% extends "dotnet/base_embed.rst" %}
--------------------------------------------------------------------------------
/docs/_templates/dotnet/namespace.rst:
--------------------------------------------------------------------------------
1 | {% extends "dotnet/base_list.rst" %}
--------------------------------------------------------------------------------
/docs/_templates/dotnet/operator.rst:
--------------------------------------------------------------------------------
1 | {% extends "dotnet/base_embed.rst" %}
--------------------------------------------------------------------------------
/docs/_templates/dotnet/property.rst:
--------------------------------------------------------------------------------
1 | {% extends "dotnet/base_embed.rst" %}
--------------------------------------------------------------------------------
/docs/_templates/dotnet/struct.rst:
--------------------------------------------------------------------------------
1 | {% extends "dotnet/base_detail.rst" %}
--------------------------------------------------------------------------------
/docs/_templates/go/base_member.rst:
--------------------------------------------------------------------------------
1 | .. go:{{ obj.ref_type }}:: {{ obj.name }}
2 | {% if obj.type == 'func' %}
3 | {% set argjoin = joiner(', ') %}
4 | ({% for param in obj.parameters %}
5 | {{ argjoin() }}{{ param.name }} {{ param.type }}
6 | {% endfor %})
7 | {% endif %}
8 |
9 | {% macro render() %}{{ obj.docstring }}{% endmacro %}
10 | {{ render()|indent(4) }}
11 |
12 | {# Don't define parameter description here, that can be done in the block
13 | above #}
14 | {% for param in obj.parameters %}
15 | :type {{ param.name }}: {{ param.type }}
16 | {% endfor %}
17 | {% if obj.returns %}
18 | :rtype: {{ obj.returns.type }}
19 | {% endif %}
20 |
21 | {% if obj.children %}
22 | {% for child in obj.children|sort %}
23 | {% macro render_child() %}{{ child.render() }}{% endmacro %}
24 | {{ render_child()|indent(4) }}
25 | {% endfor %}
26 | {% endif %}
27 |
--------------------------------------------------------------------------------
/docs/_templates/go/const.rst:
--------------------------------------------------------------------------------
1 | {% extends "go/base_member.rst" %}
2 |
--------------------------------------------------------------------------------
/docs/_templates/go/func.rst:
--------------------------------------------------------------------------------
1 | {% extends "go/base_member.rst" %}
2 |
--------------------------------------------------------------------------------
/docs/_templates/go/method.rst:
--------------------------------------------------------------------------------
1 | {% extends "go/base_member.rst" %}
2 |
--------------------------------------------------------------------------------
/docs/_templates/go/package.rst:
--------------------------------------------------------------------------------
1 | .. go:package:: {{ obj.name }}
2 |
3 | {{ obj.name }}
4 | {{ "=" * obj.name|length }}
5 |
6 | {% block toc %}
7 | {% if obj.children %}
8 |
9 | {# TODO Make this work
10 | .. toctree::
11 | :maxdepth: 4
12 |
13 | {% for item in obj.children|sort %}
14 | /autoapi/{{ item.id.split('.')|join('/') }}/index
15 | {% endfor %}
16 | #}
17 |
18 | {% endif %}
19 | {% endblock %}
20 |
21 | {% if obj.docstring %}
22 | {{ obj.docstring }}
23 | {% endif %}
24 |
25 | {% block content %}
26 | {% for obj_item in obj.children|sort %}
27 |
28 | {% macro render() %}{{ obj_item.render() }}{% endmacro %}
29 | {{ render()|indent(0) }}
30 |
31 | {% endfor %}
32 | {% endblock %}
33 |
--------------------------------------------------------------------------------
/docs/_templates/go/type.rst:
--------------------------------------------------------------------------------
1 | {% extends "go/base_member.rst" %}
2 |
--------------------------------------------------------------------------------
/docs/_templates/go/var.rst:
--------------------------------------------------------------------------------
1 | {% extends "go/base_member.rst" %}
2 |
--------------------------------------------------------------------------------
/docs/_templates/index.rst:
--------------------------------------------------------------------------------
1 | API Reference
2 | =============
3 |
4 | This page contains auto-generated API reference documentation [#f1]_.
5 |
6 | .. toctree::
7 | :titlesonly:
8 |
9 | {% for page in pages %}
10 | {% if page.top_level_object and page.display %}
11 | {{ page.include_path }}
12 | {% endif %}
13 | {% endfor %}
14 |
15 | .. [#f1] Created with `sphinx-autoapi `_
16 |
--------------------------------------------------------------------------------
/docs/_templates/javascript/class.rst:
--------------------------------------------------------------------------------
1 | .. js:class:: {{ obj.name }}{% if obj.args %}({{ obj.args|join(',') }}){% endif %}
2 |
3 | {% if obj.docstring %}
4 |
5 | .. rubric:: Summary
6 |
7 | {{ obj.docstring|indent(3) }}
8 |
9 | {% endif %}
10 |
11 | {% if obj.methods %}
12 |
13 | {% for method in obj.methods %}
14 |
15 | {% macro render() %}{{ method.render() }}{% endmacro %}
16 | {{ render()|indent(3) }}
17 |
18 | {%- endfor %}
19 |
20 | {% endif %}
21 |
--------------------------------------------------------------------------------
/docs/_templates/javascript/function.rst:
--------------------------------------------------------------------------------
1 | {# Identention in this file is important #}
2 |
3 | {% if is_method %}
4 | {# Slice self off #}
5 | .. method:: {{ obj.name.split('.')[-1] }}({{ args[1:]|join(',') }})
6 | {% else %}
7 | .. function:: {{ obj.name.split('.')[-1] }}({{ args|join(',') }})
8 | {% endif %}
9 |
10 | {% if obj.docstring %}
11 | {{ obj.docstring|indent(3) }}
12 | {% endif %}
13 |
14 |
15 |
--------------------------------------------------------------------------------
/docs/_templates/javascript/member.rst:
--------------------------------------------------------------------------------
1 | {# Identention in this file is important #}
2 |
3 | .. {{ obj.type }}:: {{ obj.name }}
4 |
5 | {{ obj.docstring|indent(3) }}
6 |
7 |
8 |
--------------------------------------------------------------------------------
/docs/_templates/javascript/module.rst:
--------------------------------------------------------------------------------
1 | {{ obj.name }}
2 | {{ "-" * obj.name|length }}
3 |
4 | {% block toc %}
5 |
6 | {% if obj.children %}
7 |
8 | .. toctree::
9 | :maxdepth: 4
10 |
11 | {% for item in obj.children|sort %}
12 | /autoapi/{{ item.pathname }}/index
13 | {%- endfor %}
14 |
15 | {% endif %}
16 |
17 | {% endblock %}
18 |
19 | {% if obj.docstring %}
20 |
21 | .. rubric:: Summary
22 |
23 | {{ obj.docstring }}
24 |
25 | {% endif %}
26 |
27 | .. js:module:: {{ obj.name }}
28 |
29 |
30 |
31 | {% block content %}
32 |
33 | {%- macro display_type(item_type) %}
34 |
35 | {{ item_type.title() }}
36 | {{ "*" * item_type|length }}
37 |
38 | {%- for obj_item in obj.item_map.get(item_type, []) %}
39 | {% macro render() %}{{ obj_item.render() }}{% endmacro %}
40 |
41 | {{ render()|indent(4) }}
42 |
43 | {%- endfor %}
44 | {%- endmacro %}
45 |
46 | {%- for item_type in obj.item_map.keys() %}
47 | {% if item_type.lower() != 'module' %}
48 | {{ display_type(item_type) }}
49 | {% endif %}
50 | {%- endfor %}
51 |
52 | {% endblock %}
53 |
--------------------------------------------------------------------------------
/docs/_templates/python/attribute.rst:
--------------------------------------------------------------------------------
1 | {% extends "python/data.rst" %}
2 |
--------------------------------------------------------------------------------
/docs/_templates/python/class.rst:
--------------------------------------------------------------------------------
1 | {% if obj.display %}
2 | .. py:{{ obj.type }}:: {{ obj.short_name }}{% if obj.args %}({{ obj.args }}){% endif %}
3 |
4 |
5 | {% if obj.bases %}
6 | Bases: {% for base in obj.bases %}:class:`{{ base }}`{% if not loop.last %}, {% endif %}{% endfor %}
7 |
8 |
9 | {% endif %}
10 | {% if obj.docstring %}
11 | {{ obj.docstring|prepare_docstring|indent(3) }}
12 | {% endif %}
13 | {% set visible_classes = obj.classes|selectattr("display")|list %}
14 | {% for klass in visible_classes %}
15 | {{ klass.rendered|indent(3) }}
16 | {% endfor %}
17 | {% set visible_attributes = obj.attributes|selectattr("display")|list %}
18 | {% for attribute in visible_attributes %}
19 | {{ attribute.rendered|indent(3) }}
20 | {% endfor %}
21 | {% set visible_methods = obj.methods|selectattr("display")|list %}
22 | {% for method in visible_methods %}
23 | {{ method.rendered|indent(3) }}
24 | {% endfor %}
25 | {% endif %}
26 |
--------------------------------------------------------------------------------
/docs/_templates/python/data.rst:
--------------------------------------------------------------------------------
1 | {% if obj.display %}
2 | .. {{ obj.type }}:: {{ obj.name }}
3 | {%+ if obj.value is not none or obj.annotation is not none %}:annotation:{% if obj.annotation %} :{{ obj.annotation }}{% endif %}{% if obj.value is not none %} = {{ obj.value }}{% endif %}{% endif %}
4 |
5 |
6 | {{ obj.docstring|prepare_docstring|indent(3) }}
7 | {% endif %}
8 |
--------------------------------------------------------------------------------
/docs/_templates/python/exception.rst:
--------------------------------------------------------------------------------
1 | {% extends "python/class.rst" %}
2 |
--------------------------------------------------------------------------------
/docs/_templates/python/function.rst:
--------------------------------------------------------------------------------
1 | {% if obj.display %}
2 | .. function:: {{ obj.short_name }}({{ obj.args }}){% if obj.return_annotation is not none %} -> {{ obj.return_annotation }}{% endif %}
3 |
4 | {% if obj.docstring %}
5 |
6 | {{ obj.docstring|prepare_docstring|indent(3) }}
7 | {% endif %}
8 | {% endif %}
9 |
--------------------------------------------------------------------------------
/docs/_templates/python/method.rst:
--------------------------------------------------------------------------------
1 | {%- if obj.display %}
2 |
3 | .. {{ obj.method_type }}:: {{ obj.short_name }}({{ obj.args }})
4 |
5 | {% if obj.docstring %}
6 | {{ obj.docstring|prepare_docstring|indent(3) }}
7 | {% endif %}
8 |
9 | {% endif %}
10 |
--------------------------------------------------------------------------------
/docs/_templates/python/module.rst:
--------------------------------------------------------------------------------
1 | {% if not obj.display %}
2 | :orphan:
3 |
4 | {% endif %}
5 | :mod:`{{ obj.name }}`
6 | ======={{ "=" * obj.name|length }}
7 |
8 | .. py:module:: {{ obj.name }}
9 |
10 | {% if obj.docstring %}
11 | .. autoapi-nested-parse::
12 |
13 | {{ obj.docstring|prepare_docstring|indent(3) }}
14 |
15 | {% endif %}
16 |
17 | {% block subpackages %}
18 | {% set visible_subpackages = obj.subpackages|selectattr("display")|list %}
19 | {% if visible_subpackages %}
20 | Subpackages
21 | -----------
22 | .. toctree::
23 | :titlesonly:
24 | :maxdepth: 3
25 |
26 | {% for subpackage in visible_subpackages %}
27 | {{ subpackage.short_name }}/index.rst
28 | {% endfor %}
29 |
30 |
31 | {% endif %}
32 | {% endblock %}
33 | {% block submodules %}
34 | {% set visible_submodules = obj.submodules|selectattr("display")|list %}
35 | {% if visible_submodules %}
36 | Submodules
37 | ----------
38 | .. toctree::
39 | :titlesonly:
40 | :maxdepth: 1
41 |
42 | {% for submodule in visible_submodules %}
43 | {{ submodule.short_name }}/index.rst
44 | {% endfor %}
45 |
46 |
47 | {% endif %}
48 | {% endblock %}
49 | {% block content %}
50 | {% set visible_children = obj.children|selectattr("display")|list %}
51 | {% if visible_children %}
52 | {{ obj.type|title }} Contents
53 | {{ "-" * obj.type|length }}---------
54 |
55 | {% set visible_classes = visible_children|selectattr("type", "equalto", "class")|list %}
56 | {% set visible_functions = visible_children|selectattr("type", "equalto", "function")|list %}
57 | {% if include_summaries and (visible_classes or visible_functions) %}
58 | {% block classes %}
59 | {% if visible_classes %}
60 | Classes
61 | ~~~~~~~
62 |
63 | .. autoapisummary::
64 |
65 | {% for klass in visible_classes %}
66 | {{ klass.id }}
67 | {% endfor %}
68 |
69 |
70 | {% endif %}
71 | {% endblock %}
72 |
73 | {% block functions %}
74 | {% if visible_functions %}
75 | Functions
76 | ~~~~~~~~~
77 |
78 | .. autoapisummary::
79 |
80 | {% for function in visible_functions %}
81 | {{ function.id }}
82 | {% endfor %}
83 |
84 |
85 | {% endif %}
86 | {% endblock %}
87 | {% endif %}
88 | {% for obj_item in visible_children %}
89 | {% if obj.all is none or obj_item.short_name in obj.all %}
90 | {{ obj_item.rendered|indent(0) }}
91 | {% endif %}
92 | {% endfor %}
93 | {% endif %}
94 | {% endblock %}
95 |
--------------------------------------------------------------------------------
/docs/_templates/python/package.rst:
--------------------------------------------------------------------------------
1 | {% extends "python/module.rst" %}
2 |
--------------------------------------------------------------------------------
/docs/api/data.rst:
--------------------------------------------------------------------------------
1 | .. title:: solaris.data API reference
2 |
3 | ``solaris.data`` API reference
4 | ===============================
5 |
6 | .. contents::
7 |
8 | ``solaris.data.coco`` COCO label format management
9 | --------------------------------------------------
10 |
11 | .. automodule:: solaris.data.coco
12 | :members:
13 |
--------------------------------------------------------------------------------
/docs/api/eval.rst:
--------------------------------------------------------------------------------
1 | .. title:: solaris.eval API reference
2 |
3 | ``solaris.eval`` API reference
4 | ==============================
5 |
6 | .. contents::
7 |
8 |
9 | ``solaris.eval.base`` Base evaluator class
10 | ----------------------------------------------
11 |
12 | .. automodule:: solaris.eval.base
13 | :members:
14 |
15 | ``solaris.eval.pixel`` Pixel-wise scoring functions
16 | ---------------------------------------------------
17 |
18 | .. automodule:: solaris.eval.pixel
19 | :members:
20 |
21 |
22 | ``solaris.eval.iou`` IoU scoring functions
23 | ------------------------------------------
24 |
25 | .. automodule:: solaris.eval.iou
26 | :members:
27 |
28 | ``solaris.eval.challenges`` SpaceNet Challenge scoring functionality
29 | --------------------------------------------------------------------
30 |
31 | .. automodule:: solaris.eval.challenges
32 | :members:
33 |
--------------------------------------------------------------------------------
/docs/api/index.rst:
--------------------------------------------------------------------------------
1 | .. _api_index:
2 |
3 | .. title:: API reference contents
4 |
5 | ###################
6 | Solaris API summary
7 | ###################
8 |
9 | Complete submodule documentation
10 | ================================
11 | * `solaris.tile `_: Tiling functionality for imagery and vector labels
12 | * `solaris.raster `_: Raster (imagery) coordinate management and formatting
13 | * `solaris.vector `_: Vector (label) management and format interconversion
14 | * `solaris.preproc `_: Preprocessing workflows for imagery and vector labels
15 | * `solaris.nets `_: Deep learning model ingestion, creation, training, and inference
16 | * `solaris.eval `_: Deep learning model performance evaluation
17 | * `solaris.utils `_: Utility functions for the above toolsets
18 | * `solaris.data `_: Data management and format interconversion
19 |
20 | Submodule summaries
21 | ===================
22 |
23 | .. toctree::
24 | :maxdepth: 3
25 |
26 | tile
27 | raster
28 | vector
29 | preproc
30 | nets
31 | eval
32 | utils
33 | data
34 |
35 | CLI commands
36 | ============
37 | See `Tutorials <../tutorials/index.html>`_.
38 |
--------------------------------------------------------------------------------
/docs/api/nets.rst:
--------------------------------------------------------------------------------
1 | .. title:: solaris.nets API reference
2 |
3 | ``solaris.nets`` API reference
4 | ==============================
5 |
6 | .. contents::
7 |
8 |
9 | ``solaris.nets.callbacks`` Keras-like callbacks
10 | -----------------------------------------------
11 |
12 | .. automodule:: solaris.nets.callbacks
13 | :members:
14 |
15 | .. automodule:: solaris.nets.torch_callbacks
16 | :members:
17 |
18 | ``solaris.nets.losses`` Loss functions for Geo CV model training
19 | ----------------------------------------------------------------
20 |
21 | .. automodule:: solaris.nets.losses
22 | :members:
23 |
24 | .. automodule:: solaris.nets._keras_losses
25 | :members:
26 |
27 | .. automodule:: solaris.nets._torch_losses
28 | :members:
29 |
30 | ``solaris.nets.transform`` Augmentation pipeline prep for Geo imagery
31 | ---------------------------------------------------------------------
32 |
33 | .. automodule:: solaris.nets.transform
34 | :members:
35 |
36 | ``solaris.nets.optimizers`` Model training optimizer management
37 | ---------------------------------------------------------------
38 |
39 | .. automodule:: solaris.nets.optimizers
40 | :members:
41 |
42 | ``solaris.nets.model_io`` Model I/O and model weight management
43 | ---------------------------------------------------------------
44 |
45 | .. automodule:: solaris.nets.model_io
46 | :members:
47 |
48 | ``solaris.nets.datagen`` Data generators for model training
49 | -----------------------------------------------------------
50 |
51 | .. automodule:: solaris.nets.datagen
52 | :members:
53 |
54 | ``solaris.nets.metrics`` Metrics for evaluating model performance
55 | -----------------------------------------------------------------
56 |
57 | .. automodule:: solaris.nets.metrics
58 | :members:
59 |
60 | ``solaris.nets.zoo`` Model definitions for geospatial image analysis
61 | --------------------------------------------------------------------
62 |
63 | .. automodule:: solaris.nets.zoo
64 | :members:
65 |
66 | ``solaris.nets.train`` Model training functionality
67 | ---------------------------------------------------
68 |
69 | .. automodule:: solaris.nets.train
70 | :members:
71 |
72 | ``solaris.nets.infer`` Prediction with Geo CV models
73 | ----------------------------------------------------
74 |
75 | .. automodule:: solaris.nets.infer
76 | :members:
77 |
--------------------------------------------------------------------------------
/docs/api/preproc.rst:
--------------------------------------------------------------------------------
1 | .. title:: solaris.preproc API reference
2 |
3 | ``solaris.preproc`` API reference
4 | =================================
5 |
6 | .. contents::
7 |
8 |
9 | ``solaris.preproc.pipesegment`` Preprocessing base class and control structures
10 | -------------------------------------------------------------------------------
11 |
12 | .. automodule:: solaris.preproc.pipesegment
13 | :members:
14 |
15 | ``solaris.preproc.image`` Preprocessing of geospatial imagery
16 | -------------------------------------------------------------
17 |
18 | .. automodule:: solaris.preproc.image
19 | :members:
20 |
21 | ``solaris.preproc.sar`` Preprocessing of SAR imagery
22 | ----------------------------------------------------
23 |
24 | .. automodule:: solaris.preproc.sar
25 | :members:
26 |
27 | ``solaris.preproc.label`` Preprocessing of vector labels
28 | ----------------------------------------------------------
29 |
30 | .. automodule:: solaris.preproc.label
31 | :members:
32 |
--------------------------------------------------------------------------------
/docs/api/raster.rst:
--------------------------------------------------------------------------------
1 | .. title:: solaris.raster API reference
2 |
3 | ``solaris.raster`` API reference
4 | ================================
5 |
6 | .. contents::
7 |
8 |
9 | ``solaris.raster.image`` Image pre- and post-processing
10 | -------------------------------------------------------
11 |
12 | .. automodule:: solaris.raster.image
13 | :members:
14 |
--------------------------------------------------------------------------------
/docs/api/tile.rst:
--------------------------------------------------------------------------------
1 | .. title:: solaris.tile API reference
2 |
3 | ``solaris.tile`` API reference
4 | ==============================
5 |
6 | .. contents::
7 |
8 |
9 | ``solaris.tile.raster_tile`` Raster image tiling functionality
10 | --------------------------------------------------------------
11 |
12 | .. automodule:: solaris.tile.raster_tile
13 | :members:
14 |
15 | ``solaris.tile.vector_tile`` Vector tiling functionality
16 | ---------------------------------------------------------
17 |
18 | .. automodule:: solaris.tile.vector_tile
19 | :members:
20 |
--------------------------------------------------------------------------------
/docs/api/utils.rst:
--------------------------------------------------------------------------------
1 | .. title:: solaris.utils API reference
2 |
3 | ``solaris.utils`` API reference
4 | ===============================
5 |
6 | .. contents::
7 |
8 | ``solaris.utils.core`` Core utilities
9 | -------------------------------------
10 |
11 | .. automodule:: solaris.utils.core
12 | :members:
13 |
14 | ``solaris.utils.config`` Configuration file utilities
15 | -----------------------------------------------------
16 |
17 | .. automodule:: solaris.utils.config
18 | :members:
19 |
20 | ``solaris.utils.io`` Imagery and vector I/O utilities
21 | -----------------------------------------------------
22 |
23 | .. automodule:: solaris.utils.io
24 | :members:
25 |
26 | ``solaris.utils.geo`` Geographic coordinate system management utilities
27 | -----------------------------------------------------------------------
28 |
29 | .. automodule:: solaris.utils.geo
30 | :members:
31 |
32 | ``solaris.utils.tile`` Tiling utilities
33 | ---------------------------------------
34 |
35 | .. automodule:: solaris.utils.tile
36 | :members:
37 |
38 | ``solaris.utils.raster`` Raster image and array management utilities
39 | --------------------------------------------------------------------
40 |
41 | .. automodule:: solaris.utils.raster
42 | :members:
43 |
44 | ``solaris.utils.data`` Dataset CSV utilities
45 | --------------------------------------------
46 |
47 | .. automodule:: solaris.utils.data
48 | :members:
49 |
--------------------------------------------------------------------------------
/docs/api/vector.rst:
--------------------------------------------------------------------------------
1 | .. title:: solaris.vector API reference
2 |
3 | ``solaris.vector`` API reference
4 | ================================
5 |
6 | .. contents::
7 |
8 | ``solaris.vector.polygon`` vector polygon management
9 | ----------------------------------------------------
10 |
11 | .. automodule:: solaris.vector.polygon
12 | :members:
13 |
14 | ``solaris.vector.graph`` graph and road network analysis
15 | --------------------------------------------------------
16 |
17 | .. automodule:: solaris.vector.graph
18 | :members:
19 |
20 | ``solaris.vector.mask`` vector <-> training mask interconversion
21 | ----------------------------------------------------------------
22 |
23 | .. automodule:: solaris.vector.mask
24 | :members:
25 |
--------------------------------------------------------------------------------
/docs/index.rst:
--------------------------------------------------------------------------------
1 | |
2 | |
3 |
4 | .. image:: _static/solaris_logo.png
5 | :width: 500px
6 | :align: center
7 | :alt: solaris_logo
8 |
9 | ############################################################################################################
10 | `solaris `__ |release| by `CosmiQ Works `__
11 | ############################################################################################################
12 |
13 | ***************************************************************
14 | An open source machine learning pipeline for geospatial imagery
15 | ***************************************************************
16 |
17 |
18 | .. toctree::
19 | :name: mastertoc
20 | :maxdepth: 3
21 | :glob:
22 | :hidden:
23 |
24 | installation
25 | intro
26 | pretrained_models
27 | api/index
28 | tutorials/index
29 |
30 |
31 | ==========
32 |
33 | User Guide
34 | ==========
35 | * :ref:`What is solaris? `
36 | * :ref:`Installation `
37 | * :ref:`Pretrained models available in solaris `
38 | * :ref:`Tutorials and recipes `
39 |
40 | Reference
41 | =========
42 | * :ref:`API reference `
43 |
44 | Index
45 | =====
46 | * :ref:`genindex`
47 | * :ref:`modindex`
48 |
49 |
50 | **License:** `Apache 2.0`__.
51 |
52 | .. __: https://github.com/CosmiQ/solaris/blob/master/LICENSE.txt
53 |
54 | Follow us at our blog `The DownlinQ `_ or
55 | `on Twitter `_ for updates!
56 |
--------------------------------------------------------------------------------
/docs/make.bat:
--------------------------------------------------------------------------------
1 | @ECHO OFF
2 |
3 | pushd %~dp0
4 |
5 | REM Command file for Sphinx documentation
6 |
7 | if "%SPHINXBUILD%" == "" (
8 | set SPHINXBUILD=sphinx-build
9 | )
10 | set SOURCEDIR=.
11 | set BUILDDIR=_build
12 |
13 | if "%1" == "" goto help
14 |
15 | %SPHINXBUILD% >NUL 2>NUL
16 | if errorlevel 9009 (
17 | echo.
18 | echo.The 'sphinx-build' command was not found. Make sure you have Sphinx
19 | echo.installed, then set the SPHINXBUILD environment variable to point
20 | echo.to the full path of the 'sphinx-build' executable. Alternatively you
21 | echo.may add the Sphinx directory to PATH.
22 | echo.
23 | echo.If you don't have Sphinx installed, grab it from
24 | echo.http://sphinx-doc.org/
25 | exit /b 1
26 | )
27 |
28 | %SPHINXBUILD% -M %1 %SOURCEDIR% %BUILDDIR% %SPHINXOPTS%
29 | goto end
30 |
31 | :help
32 | %SPHINXBUILD% -M help %SOURCEDIR% %BUILDDIR% %SPHINXOPTS%
33 |
34 | :end
35 | popd
36 |
--------------------------------------------------------------------------------
/docs/tutorials/notebooks/cli_ml_pipeline.ipynb:
--------------------------------------------------------------------------------
1 | {
2 | "cells": [
3 | {
4 | "cell_type": "markdown",
5 | "metadata": {},
6 | "source": [
7 | "# Running a deep learning pipeline with the `solaris` CLI\n",
8 | "\n",
9 | "Running a full ML pipeline with `solaris` only takes a single line of code! After [installing solaris](../../installation.rst), all you need to do is [set up your YAML config file](creating_the_yaml_config_file.ipynb). Then, run the following line from a command prompt:\n",
10 | "\n",
11 | "```console\n",
12 | "$ solaris_run_ml [path_to_your_config]\n",
13 | "```\n",
14 | "\n",
15 | "You can try it now! [Download the config file for XD_XD's SpaceNet 4 Model](https://github.com/CosmiQ/solaris/blob/dev/solaris/nets/configs/xdxd_spacenet4.yml), point it to your data, and then run:\n",
16 | "\n",
17 | "```console\n",
18 | "$ solaris_run_ml xdxd_spacenet4.yml\n",
19 | "```\n",
20 | "\n",
21 | "That's all there is to it!"
22 | ]
23 | }
24 | ],
25 | "metadata": {
26 | "kernelspec": {
27 | "display_name": "solaris",
28 | "language": "python",
29 | "name": "solaris"
30 | },
31 | "language_info": {
32 | "codemirror_mode": {
33 | "name": "ipython",
34 | "version": 3
35 | },
36 | "file_extension": ".py",
37 | "mimetype": "text/x-python",
38 | "name": "python",
39 | "nbconvert_exporter": "python",
40 | "pygments_lexer": "ipython3",
41 | "version": "3.6.7"
42 | }
43 | },
44 | "nbformat": 4,
45 | "nbformat_minor": 2
46 | }
47 |
--------------------------------------------------------------------------------
/environment-gpu.yml:
--------------------------------------------------------------------------------
1 | name: solaris
2 | channels:
3 | - pytorch
4 | - conda-forge
5 | - defaults
6 | dependencies:
7 | - python>=3.6
8 | - pip>=19.0.3
9 | - affine>=2.3.0
10 | - albumentations=0.4.3
11 | - fiona>=1.7.13
12 | - gdal=3.0.3
13 | - geopandas>=0.7.0
14 | - matplotlib>=3.1.2
15 | - networkx>=2.4
16 | - opencv>=4.1
17 | - pandas>=0.25.3
18 | - pyproj>=2.1
19 | - pytorch>=1.3.1
20 | - pyyaml=5.2
21 | - rasterio>=1.0.23
22 | - requests=2.22.0
23 | # - rio-cogeo>=1.1.6
24 | - rtree>=0.9.3
25 | - scikit-image>=0.16.2
26 | - scipy>=1.3.2
27 | - torchvision>=0.5.0
28 | - cudatoolkit=9.2
29 | - tqdm>=4.40.0
30 | - urllib3>=1.25.7
31 | - tensorflow-gpu=1.13.1
32 | - cuda100
33 | - shapely
34 | #- pip
35 | #- pip:
36 | # - git+https://github.com/Toblerity/shapely.git@master#egg=shapely-1.7.1dev # temporary, dev required for numpy array support
37 |
--------------------------------------------------------------------------------
/environment.yml:
--------------------------------------------------------------------------------
1 | name: solaris
2 | channels:
3 | - pytorch
4 | - conda-forge
5 | - defaults
6 | dependencies:
7 | - python>=3.6
8 | - pip>=19.0.3
9 | - affine>=2.3.0
10 | - albumentations=0.4.3
11 | - fiona>=1.7.13
12 | - gdal=3.0.3
13 | - geopandas>=0.7.0
14 | - matplotlib>=3.1.2
15 | - networkx>=2.4
16 | - numpy>=1.17.3
17 | - opencv>=4.1
18 | - pandas>=0.25.3
19 | - pyproj>=2.1
20 | - pytorch>=1.3.1
21 | - pyyaml=5.2
22 | - rasterio>=1.0.23
23 | - requests=2.22.0
24 | # - rio-cogeo>=1.1.6
25 | - rtree>=0.9.3
26 | - scikit-image>=0.16.2
27 | - scipy>=1.3.2
28 | - shapely>=1.6.4
29 | - tensorflow=1.13.1
30 | - torchvision>=0.5.0
31 | - cudatoolkit=9.2
32 | - tqdm>=4.40.0
33 | - urllib3>=1.25.7
34 | - pip:
35 | - git+https://github.com/Toblerity/shapely.git@master#egg=shapely-1.7.1dev # temporary, 1.8dev required for numpy array support
36 |
--------------------------------------------------------------------------------
/renovate.json:
--------------------------------------------------------------------------------
1 | {
2 | "extends": [
3 | "config:base"
4 | ],
5 | "pip_setup": {
6 | "enabled": true
7 | },
8 | "assignees": ["nrweir"],
9 | "baseBranches": ["dev"],
10 | "ignoreDeps": ["GDAL", "tensorflow"],
11 | "labels": ["dependencies"],
12 | "reviewers": ["nrweir"]
13 | }
14 |
--------------------------------------------------------------------------------
/requirements.txt:
--------------------------------------------------------------------------------
1 | pip>=19.0.3
2 | affine>=2.3.0
3 | albumentations==0.4.3
4 | fiona>=1.7.13
5 | gdal>=3.0.2
6 | geopandas>=0.7.0
7 | matplotlib>=3.1.2
8 | networkx>=2.4
9 | numpy>=1.17.3
10 | opencv-python>=4.1
11 | pandas>=0.25.3
12 | pyproj>=2.1
13 | torch>=1.3.1
14 | pyyaml==5.2
15 | rasterio>=1.0.23
16 | requests==2.22.0
17 | rtree>=0.9.3
18 | scikit-image>=0.16.2
19 | scipy>=1.3.2
20 | git+git://github.com/toblerity/shapely.git@master#egg=shapely-1.7.1dev
21 | torchvision>=0.5.0
22 | tqdm>=4.40.0
23 | urllib3>=1.25.7
24 | tensorflow==1.13.1
25 |
--------------------------------------------------------------------------------
/solaris/__init__.py:
--------------------------------------------------------------------------------
1 | from . import bin, data, eval, nets, preproc, raster, tile, utils, vector
2 |
3 | __version__ = "0.4.0"
4 |
--------------------------------------------------------------------------------
/solaris/bin/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/bin/__init__.py
--------------------------------------------------------------------------------
/solaris/bin/mask_to_polygons.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/bin/mask_to_polygons.py
--------------------------------------------------------------------------------
/solaris/bin/solaris_run_ml.py:
--------------------------------------------------------------------------------
1 | import argparse
2 | import os
3 | import pandas as pd
4 | from ..utils.config import parse
5 | from ..nets.train import Trainer
6 | from ..nets.infer import Inferer
7 |
8 |
9 | def main():
10 |
11 | parser = argparse.ArgumentParser(
12 | description='Run a Solaris ML pipeline based on a config YAML',
13 | argument_default=None)
14 |
15 | parser.add_argument('--config', '-c', type=str, required=True,
16 | help="Full path to a YAML-formatted config file "
17 | "specifying parameters for model training and/or "
18 | "inference.")
19 |
20 | args = parser.parse_args()
21 |
22 | if not os.path.exists(args.config):
23 | raise ValueError('The configuration file cannot be found at the path '
24 | 'specified.')
25 |
26 | config = parse(args.config)
27 |
28 | if config['train']:
29 | trainer = Trainer(config)
30 | trainer.train()
31 | if config['infer']:
32 | inferer = Inferer(config)
33 | inf_df = pd.read_csv(config['inference_data_csv'])
34 | inferer(inf_df)
35 |
36 |
37 | if __name__ == '__main__':
38 | main()
39 |
--------------------------------------------------------------------------------
/solaris/data/SN2_test_results.csv:
--------------------------------------------------------------------------------
1 | F1Score,FalseNeg,FalsePos,Precision,Recall,TruePos
2 | 0.8860759493670887,7,2,0.9459459459459459,0.8333333333333334,35
3 | 0.4444444444444444,75,55,0.48598130841121495,0.4094488188976378,52
4 |
--------------------------------------------------------------------------------
/solaris/data/SN2_test_results_full.csv:
--------------------------------------------------------------------------------
1 | F1Score,FalseNeg,FalsePos,Precision,Recall,TruePos,imageID,iou_field,AOI
2 | 0.4943820224719101,32,13,0.6285714285714286,0.4074074074074074,22,AOI_5_Khartoum_img130,iou_score,AOI_5_Khartoum
3 | 0.8749999999999999,6,2,0.9333333333333333,0.8235294117647058,28,AOI_2_Vegas_img3457,iou_score,AOI_2_Vegas
4 | 0.9333333333333333,1,0,1.0,0.875,7,AOI_2_Vegas_img5979,iou_score,AOI_2_Vegas
5 | 0.47222222222222215,23,15,0.53125,0.425,17,AOI_5_Khartoum_img1301,iou_score,AOI_5_Khartoum
6 | 0.35616438356164376,20,27,0.325,0.3939393939393939,13,AOI_5_Khartoum_img1306,iou_score,AOI_5_Khartoum
7 | 0.0,0,0,0.0,0.0,0,AOI_5_Khartoum_img463,iou_score,AOI_5_Khartoum
8 |
--------------------------------------------------------------------------------
/solaris/data/__init__.py:
--------------------------------------------------------------------------------
1 | import os
2 | import pandas as pd
3 | import geopandas as gpd
4 | import gdal
5 | import rasterio
6 |
7 | from . import coco
8 |
9 | # define the current directory as `data_dir`
10 | data_dir = os.path.abspath(os.path.dirname(__file__))
11 |
12 |
13 | def load_geojson(gj_fname):
14 | """Load a geojson into a gdf using GeoPandas."""
15 | return gpd.read_file(os.path.join(data_dir, gj_fname))
16 |
17 |
18 | def gt_gdf():
19 | """Load in a ground truth GDF example."""
20 | return load_geojson('gt.geojson')
21 |
22 |
23 | def pred_gdf():
24 | """Load in an example prediction GDF."""
25 | return load_geojson('pred.geojson')
26 |
27 |
28 | def sample_load_rasterio():
29 | return rasterio.open(os.path.join(data_dir, 'sample_geotiff.tif'))
30 |
31 |
32 | def sample_load_gdal():
33 | return gdal.Open(os.path.join(data_dir, 'sample_geotiff.tif'))
34 |
35 |
36 | def sample_load_geojson():
37 | return gpd.read_file(os.path.join(data_dir, 'sample.geojson'))
38 |
39 |
40 | def sample_load_csv():
41 | return pd.read_file(os.path.join(data_dir, 'sample.csv'))
42 |
--------------------------------------------------------------------------------
/solaris/data/cli_test/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/cli_test/__init__.py
--------------------------------------------------------------------------------
/solaris/data/cli_test/expected/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/cli_test/expected/__init__.py
--------------------------------------------------------------------------------
/solaris/data/cli_test/expected/sample_b_inner_mask.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/cli_test/expected/sample_b_inner_mask.tif
--------------------------------------------------------------------------------
/solaris/data/cli_test/expected/sample_b_outer10_mask.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/cli_test/expected/sample_b_outer10_mask.tif
--------------------------------------------------------------------------------
/solaris/data/cli_test/expected/sample_c_mask.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/cli_test/expected/sample_c_mask.tif
--------------------------------------------------------------------------------
/solaris/data/cli_test/expected/sample_fbc_mask.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/cli_test/expected/sample_fbc_mask.tif
--------------------------------------------------------------------------------
/solaris/data/cli_test/expected/sample_fp_mask.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/cli_test/expected/sample_fp_mask.tif
--------------------------------------------------------------------------------
/solaris/data/cli_test/expected/sample_graph.pkl:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/cli_test/expected/sample_graph.pkl
--------------------------------------------------------------------------------
/solaris/data/cli_test/result/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/cli_test/result/__init__.py
--------------------------------------------------------------------------------
/solaris/data/coco_sample_1.json:
--------------------------------------------------------------------------------
1 | {"annotations": [{"id": 1, "image_id": 1, "category_id": 1, "segmentation": [60.03418597159907, 74.87320505268872, 73.8337494416628, 90.0, 51.516283753560856, 90.0, 47.80893106292933, 85.93607368506491, 60.03418597159907, 74.87320505268872], "area": 214.14410906402435, "bbox": [47.80893106292933, 74.87320505268872, 26.02481837873347, 15.126794947311282], "iscrowd": 0}, {"id": 2, "image_id": 2, "category_id": 1, "segmentation": [90.0, 11.015026673674583, 70.7970443549566, 13.249627484939992, 70.8928169994615, 4.990449592471123, 70.69254911504686, 0.0, 90.0, 0.0, 90.0, 11.015026673674583], "area": 232.6028019573394, "bbox": [70.69254911504686, 0.0, 19.30745088495314, 13.249627484939992], "iscrowd": 0}, {"id": 3, "image_id": 2, "category_id": 1, "segmentation": [89.06576380180195, 21.638346442952752, 90.0, 28.386366279795766, 90.0, 68.61032488476485, 85.23654213640839, 70.96199104283005, 73.38412117748521, 70.6515495320782, 71.78515014378354, 65.98500318173319, 72.83866719854996, 48.2692635813728, 72.19266184815206, 21.76100580766797, 89.06576380180195, 21.638346442952752], "area": 853.8212747899074, "bbox": [71.78515014378354, 21.638346442952752, 18.21484985621646, 49.3236445998773], "iscrowd": 0}], "categories": [{"id": 1, "name": "other"}], "licenses": [{"name": "CC-BY 4.0", "url": "https://creativecommons.org/licenses/by/4.0/", "id": 1}], "images": [{"id": 1, "file_name": "sample_geotiff_733601_3724734.tif", "width": 90, "height": 90, "license": 1}, {"id": 2, "file_name": "sample_geotiff_733601_3724869.tif", "width": 90, "height": 90, "license": 1}]}
--------------------------------------------------------------------------------
/solaris/data/competition_test_results.csv:
--------------------------------------------------------------------------------
1 | F1Score,FalseNeg,FalsePos,Precision,Recall,TruePos
2 | 1.0,0,0,1.0,1.0,2319
3 |
--------------------------------------------------------------------------------
/solaris/data/datagen_sample/expected_im.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/datagen_sample/expected_im.tif
--------------------------------------------------------------------------------
/solaris/data/datagen_sample/sample_1.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/datagen_sample/sample_1.tif
--------------------------------------------------------------------------------
/solaris/data/datagen_sample/sample_2.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/datagen_sample/sample_2.tif
--------------------------------------------------------------------------------
/solaris/data/datagen_sample/sample_3.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/datagen_sample/sample_3.tif
--------------------------------------------------------------------------------
/solaris/data/datagen_sample/sample_df.csv:
--------------------------------------------------------------------------------
1 | image,label
2 | sample_1.tif,sample_mask_1.tif
3 | sample_2.tif,sample_mask_2.tif
4 | sample_3.tif,sample_mask_3.tif
5 |
--------------------------------------------------------------------------------
/solaris/data/datagen_sample/sample_mask_1.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/datagen_sample/sample_mask_1.tif
--------------------------------------------------------------------------------
/solaris/data/datagen_sample/sample_mask_2.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/datagen_sample/sample_mask_2.tif
--------------------------------------------------------------------------------
/solaris/data/datagen_sample/sample_mask_3.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/datagen_sample/sample_mask_3.tif
--------------------------------------------------------------------------------
/solaris/data/empty.geojson:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/empty.geojson
--------------------------------------------------------------------------------
/solaris/data/inference_tiler_test_output.npy:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/inference_tiler_test_output.npy
--------------------------------------------------------------------------------
/solaris/data/nebraska_landsat5_with_nodata_wgs84.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/nebraska_landsat5_with_nodata_wgs84.tif
--------------------------------------------------------------------------------
/solaris/data/overlap_test.geojson:
--------------------------------------------------------------------------------
1 | {
2 | "type": "FeatureCollection",
3 | "features": [
4 | { "type": "Feature", "properties": { "access": "", "addr_house": "", "addr_hou_1": "", "addr_inter": "", "admin_leve": "", "aerialway": "", "aeroway": "", "amenity": "", "area": "", "barrier": "", "bicycle": "", "boundary": "", "brand": "", "bridge": "", "building": "yes", "constructi": "", "covered": "", "culvert": "", "cutting": "", "denominati": "", "disused": "", "embankment": "", "foot": "", "generator_": "", "harbour": "", "highway": "", "historic": "", "horse": "", "intermitte": "", "junction": "", "landuse": "", "layer": "", "leisure": "", "lock": "", "man_made": "", "military": "", "motorcar": "", "name": "", "natural": "", "office": "", "oneway": "", "operator": "", "osm_id": 94236, "place": "", "population": "", "power": "", "power_sour": "", "public_tra": "", "railway": "", "ref": "", "religion": "", "route": "", "service": "", "shop": "", "sport": "", "surface": "", "tags": "\"security:classification\"=>\"UNCLASSIFIED\",\"source\"=>\"Unknown\"", "toll": "", "tourism": "", "tower_type": "", "tunnel": "", "water": "", "waterway": "", "wetland": "", "width": "", "wood": "", "z_order": -999999, "tracktype": "", "way_area": -999999.0, "origarea": 152.8742559217601, "origlen": 0, "partialDec": 1.0, "truncated": 0, "iou_score": 0.073499798744833519 }, "geometry": { "type": "Polygon", "coordinates": [ [ [ 736351.470539042027667, 3722758.485215371940285 ], [ 736351.878608449478634, 3722747.197382184211165 ], [ 736338.352984992321581, 3722746.708811732474715 ], [ 736337.944931550649926, 3722757.996644604951143 ], [ 736351.470539042027667, 3722758.485215371940285 ] ] ] } }
5 | ]
6 | }
7 |
--------------------------------------------------------------------------------
/solaris/data/preproc_tutorial/example1flowchart.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/preproc_tutorial/example1flowchart.png
--------------------------------------------------------------------------------
/solaris/data/preproc_tutorial/example2flowchart.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/preproc_tutorial/example2flowchart.png
--------------------------------------------------------------------------------
/solaris/data/preproc_tutorial/example3flowchart.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/preproc_tutorial/example3flowchart.png
--------------------------------------------------------------------------------
/solaris/data/preproc_tutorial/ms1.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/preproc_tutorial/ms1.tif
--------------------------------------------------------------------------------
/solaris/data/preproc_tutorial/ms2.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/preproc_tutorial/ms2.tif
--------------------------------------------------------------------------------
/solaris/data/preproc_tutorial/ms3.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/preproc_tutorial/ms3.tif
--------------------------------------------------------------------------------
/solaris/data/preproc_tutorial/pan1.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/preproc_tutorial/pan1.tif
--------------------------------------------------------------------------------
/solaris/data/preproc_tutorial/pan2.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/preproc_tutorial/pan2.tif
--------------------------------------------------------------------------------
/solaris/data/preproc_tutorial/pan3.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/preproc_tutorial/pan3.tif
--------------------------------------------------------------------------------
/solaris/data/preproc_tutorial/rgb_unmasked.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/preproc_tutorial/rgb_unmasked.tif
--------------------------------------------------------------------------------
/solaris/data/preproc_tutorial/sar_hh.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/preproc_tutorial/sar_hh.tif
--------------------------------------------------------------------------------
/solaris/data/preproc_tutorial/sar_hv.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/preproc_tutorial/sar_hv.tif
--------------------------------------------------------------------------------
/solaris/data/preproc_tutorial/sar_masked.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/preproc_tutorial/sar_masked.tif
--------------------------------------------------------------------------------
/solaris/data/preproc_tutorial/sar_vh.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/preproc_tutorial/sar_vh.tif
--------------------------------------------------------------------------------
/solaris/data/preproc_tutorial/sar_vv.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/preproc_tutorial/sar_vv.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_custom_proj_expected/sample_geotiff_custom_proj_-661905_2118645.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_custom_proj_expected/sample_geotiff_custom_proj_-661905_2118645.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_custom_proj_expected/sample_geotiff_custom_proj_-661905_2122485.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_custom_proj_expected/sample_geotiff_custom_proj_-661905_2122485.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_custom_proj_expected/sample_geotiff_custom_proj_-661905_2126325.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_custom_proj_expected/sample_geotiff_custom_proj_-661905_2126325.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_custom_proj_expected/sample_geotiff_custom_proj_-661905_2130165.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_custom_proj_expected/sample_geotiff_custom_proj_-661905_2130165.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_custom_proj_expected/sample_geotiff_custom_proj_-665745_2118645.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_custom_proj_expected/sample_geotiff_custom_proj_-665745_2118645.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_custom_proj_expected/sample_geotiff_custom_proj_-665745_2122485.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_custom_proj_expected/sample_geotiff_custom_proj_-665745_2122485.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_custom_proj_expected/sample_geotiff_custom_proj_-665745_2126325.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_custom_proj_expected/sample_geotiff_custom_proj_-665745_2126325.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_custom_proj_expected/sample_geotiff_custom_proj_-665745_2130165.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_custom_proj_expected/sample_geotiff_custom_proj_-665745_2130165.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_custom_proj_expected/sample_geotiff_custom_proj_-669585_2118645.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_custom_proj_expected/sample_geotiff_custom_proj_-669585_2118645.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_custom_proj_expected/sample_geotiff_custom_proj_-669585_2122485.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_custom_proj_expected/sample_geotiff_custom_proj_-669585_2122485.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_custom_proj_expected/sample_geotiff_custom_proj_-669585_2126325.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_custom_proj_expected/sample_geotiff_custom_proj_-669585_2126325.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_custom_proj_expected/sample_geotiff_custom_proj_-669585_2130165.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_custom_proj_expected/sample_geotiff_custom_proj_-669585_2130165.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_custom_proj_expected/sample_geotiff_custom_proj_-673425_2118645.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_custom_proj_expected/sample_geotiff_custom_proj_-673425_2118645.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_custom_proj_expected/sample_geotiff_custom_proj_-673425_2122485.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_custom_proj_expected/sample_geotiff_custom_proj_-673425_2122485.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_custom_proj_expected/sample_geotiff_custom_proj_-673425_2126325.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_custom_proj_expected/sample_geotiff_custom_proj_-673425_2126325.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_custom_proj_expected/sample_geotiff_custom_proj_-673425_2130165.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_custom_proj_expected/sample_geotiff_custom_proj_-673425_2130165.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733601_3724734.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733601_3724734.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733601_3724779.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733601_3724779.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733601_3724824.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733601_3724824.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733601_3724869.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733601_3724869.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733601_3724914.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733601_3724914.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733601_3724959.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733601_3724959.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733601_3725004.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733601_3725004.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733601_3725049.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733601_3725049.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733601_3725094.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733601_3725094.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733601_3725139.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733601_3725139.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733646_3724734.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733646_3724734.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733646_3724779.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733646_3724779.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733646_3724824.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733646_3724824.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733646_3724869.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733646_3724869.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733646_3724914.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733646_3724914.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733646_3724959.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733646_3724959.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733646_3725004.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733646_3725004.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733646_3725049.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733646_3725049.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733646_3725094.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733646_3725094.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733646_3725139.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733646_3725139.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733691_3724734.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733691_3724734.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733691_3724779.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733691_3724779.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733691_3724824.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733691_3724824.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733691_3724869.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733691_3724869.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733691_3724914.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733691_3724914.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733691_3724959.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733691_3724959.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733691_3725004.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733691_3725004.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733691_3725049.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733691_3725049.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733691_3725094.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733691_3725094.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733691_3725139.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733691_3725139.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733736_3724734.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733736_3724734.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733736_3724779.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733736_3724779.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733736_3724824.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733736_3724824.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733736_3724869.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733736_3724869.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733736_3724914.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733736_3724914.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733736_3724959.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733736_3724959.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733736_3725004.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733736_3725004.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733736_3725049.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733736_3725049.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733736_3725094.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733736_3725094.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733736_3725139.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733736_3725139.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733781_3724734.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733781_3724734.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733781_3724779.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733781_3724779.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733781_3724824.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733781_3724824.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733781_3724869.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733781_3724869.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733781_3724914.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733781_3724914.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733781_3724959.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733781_3724959.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733781_3725004.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733781_3725004.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733781_3725049.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733781_3725049.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733781_3725094.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733781_3725094.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733781_3725139.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733781_3725139.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733826_3724734.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733826_3724734.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733826_3724779.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733826_3724779.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733826_3724824.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733826_3724824.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733826_3724869.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733826_3724869.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733826_3724914.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733826_3724914.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733826_3724959.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733826_3724959.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733826_3725004.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733826_3725004.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733826_3725049.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733826_3725049.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733826_3725094.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733826_3725094.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733826_3725139.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733826_3725139.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733871_3724734.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733871_3724734.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733871_3724779.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733871_3724779.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733871_3724824.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733871_3724824.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733871_3724869.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733871_3724869.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733871_3724914.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733871_3724914.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733871_3724959.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733871_3724959.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733871_3725004.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733871_3725004.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733871_3725049.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733871_3725049.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733871_3725094.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733871_3725094.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733871_3725139.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733871_3725139.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733916_3724734.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733916_3724734.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733916_3724779.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733916_3724779.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733916_3724824.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733916_3724824.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733916_3724869.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733916_3724869.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733916_3724914.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733916_3724914.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733916_3724959.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733916_3724959.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733916_3725004.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733916_3725004.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733916_3725049.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733916_3725049.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733916_3725094.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733916_3725094.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733916_3725139.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733916_3725139.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733961_3724734.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733961_3724734.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733961_3724779.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733961_3724779.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733961_3724824.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733961_3724824.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733961_3724869.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733961_3724869.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733961_3724914.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733961_3724914.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733961_3724959.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733961_3724959.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733961_3725004.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733961_3725004.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733961_3725049.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733961_3725049.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733961_3725094.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733961_3725094.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_733961_3725139.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_733961_3725139.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_734006_3724734.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_734006_3724734.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_734006_3724779.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_734006_3724779.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_734006_3724824.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_734006_3724824.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_734006_3724869.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_734006_3724869.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_734006_3724914.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_734006_3724914.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_734006_3724959.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_734006_3724959.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_734006_3725004.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_734006_3725004.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_734006_3725049.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_734006_3725049.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_734006_3725094.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_734006_3725094.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_expected/sample_geotiff_734006_3725139.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_expected/sample_geotiff_734006_3725139.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_fill_nodata_expected/aoi_restricted_nebraska_landsat5_with_nodata_wgs84_-101.003_41.774.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_fill_nodata_expected/aoi_restricted_nebraska_landsat5_with_nodata_wgs84_-101.003_41.774.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_fill_nodata_expected/aoi_restricted_nebraska_landsat5_with_nodata_wgs84_-101.044_41.691.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_fill_nodata_expected/aoi_restricted_nebraska_landsat5_with_nodata_wgs84_-101.044_41.691.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_fill_nodata_expected/aoi_restricted_nebraska_landsat5_with_nodata_wgs84_-101.044_41.732.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_fill_nodata_expected/aoi_restricted_nebraska_landsat5_with_nodata_wgs84_-101.044_41.732.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_fill_nodata_expected/aoi_restricted_nebraska_landsat5_with_nodata_wgs84_-101.044_41.774.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_fill_nodata_expected/aoi_restricted_nebraska_landsat5_with_nodata_wgs84_-101.044_41.774.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_fill_nodata_expected/aoi_restricted_nebraska_landsat5_with_nodata_wgs84_-101.085_41.691.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_fill_nodata_expected/aoi_restricted_nebraska_landsat5_with_nodata_wgs84_-101.085_41.691.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_fill_nodata_expected/aoi_restricted_nebraska_landsat5_with_nodata_wgs84_-101.085_41.732.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_fill_nodata_expected/aoi_restricted_nebraska_landsat5_with_nodata_wgs84_-101.085_41.732.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_fill_nodata_expected/aoi_restricted_nebraska_landsat5_with_nodata_wgs84_-101.085_41.774.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_fill_nodata_expected/aoi_restricted_nebraska_landsat5_with_nodata_wgs84_-101.085_41.774.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_fill_nodata_expected/aoi_restricted_nebraska_landsat5_with_nodata_wgs84_-101.127_41.691.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_fill_nodata_expected/aoi_restricted_nebraska_landsat5_with_nodata_wgs84_-101.127_41.691.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_fill_nodata_expected/aoi_restricted_nebraska_landsat5_with_nodata_wgs84_-101.127_41.732.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_fill_nodata_expected/aoi_restricted_nebraska_landsat5_with_nodata_wgs84_-101.127_41.732.tif
--------------------------------------------------------------------------------
/solaris/data/rastertile_test_fill_nodata_expected/aoi_restricted_nebraska_landsat5_with_nodata_wgs84_-101.127_41.774.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/rastertile_test_fill_nodata_expected/aoi_restricted_nebraska_landsat5_with_nodata_wgs84_-101.127_41.774.tif
--------------------------------------------------------------------------------
/solaris/data/restrict_aoi_test.geojson:
--------------------------------------------------------------------------------
1 | {
2 | "type": "FeatureCollection",
3 | "name": "restrict_aoi_test",
4 | "crs": { "type": "name", "properties": { "name": "urn:ogc:def:crs:OGC:1.3:CRS84" } },
5 | "features": [
6 | { "type": "Feature", "properties": { "id": null }, "geometry": { "type": "MultiPolygon", "coordinates": [ [ [ [ -101.122733978747405, 41.737200029527671 ], [ -101.064449359873706, 41.767397042817478 ], [ -101.002339286354697, 41.751349690809022 ], [ -101.047567608320904, 41.677423309487807 ], [ -101.096527512847558, 41.649695858211281 ], [ -101.125247881319964, 41.674698280229421 ], [ -101.126670019207381, 41.707062031182794 ], [ -101.122733978747405, 41.737200029527671 ] ] ] ] } }
7 | ]
8 | }
9 |
--------------------------------------------------------------------------------
/solaris/data/road_mask_input.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/road_mask_input.tif
--------------------------------------------------------------------------------
/solaris/data/sample_b_from_df2px.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/sample_b_from_df2px.tif
--------------------------------------------------------------------------------
/solaris/data/sample_b_mask_inner.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/sample_b_mask_inner.tif
--------------------------------------------------------------------------------
/solaris/data/sample_b_mask_outer.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/sample_b_mask_outer.tif
--------------------------------------------------------------------------------
/solaris/data/sample_b_mask_outer_10.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/sample_b_mask_outer_10.tif
--------------------------------------------------------------------------------
/solaris/data/sample_c_from_df2px.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/sample_c_from_df2px.tif
--------------------------------------------------------------------------------
/solaris/data/sample_c_mask.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/sample_c_mask.tif
--------------------------------------------------------------------------------
/solaris/data/sample_fbc_from_df2px.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/sample_fbc_from_df2px.tif
--------------------------------------------------------------------------------
/solaris/data/sample_fp_from_df2px.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/sample_fp_from_df2px.tif
--------------------------------------------------------------------------------
/solaris/data/sample_fp_mask.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/sample_fp_mask.tif
--------------------------------------------------------------------------------
/solaris/data/sample_fp_mask_from_geojson.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/sample_fp_mask_from_geojson.tif
--------------------------------------------------------------------------------
/solaris/data/sample_geotiff.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/sample_geotiff.tif
--------------------------------------------------------------------------------
/solaris/data/sample_geotiff_custom_proj.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/sample_geotiff_custom_proj.tif
--------------------------------------------------------------------------------
/solaris/data/sample_graph.pkl:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/sample_graph.pkl
--------------------------------------------------------------------------------
/solaris/data/sample_inst_mask.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/sample_inst_mask.tif
--------------------------------------------------------------------------------
/solaris/data/sample_road_raster_mask.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/sample_road_raster_mask.tif
--------------------------------------------------------------------------------
/solaris/data/stitching_conf_output.npy:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/stitching_conf_output.npy
--------------------------------------------------------------------------------
/solaris/data/stitching_first_output.npy:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/stitching_first_output.npy
--------------------------------------------------------------------------------
/solaris/data/test.yml:
--------------------------------------------------------------------------------
1 | training_augmentation:
2 | augmentations:
3 | flip:
4 | CenterCrop:
5 | height: 10
6 | width: 10
7 | p: 0.5
8 | oneof:
9 | VerticalFlip:
10 | RandomBrightnessContrast:
11 | p: 0.2
12 | p: 1.0
13 |
--------------------------------------------------------------------------------
/solaris/data/test_polygon_split.geojson:
--------------------------------------------------------------------------------
1 | {"type":"FeatureCollection","features":[{"type":"Feature","properties":{},"geometry":{"type":"Polygon","coordinates":[[[-122.4591064453125,39.02345139405935],[-122.508544921875,38.659777730712534],[-122.16247558593751,38.28131307922966],[-121.22314453124999,38.26406296833961],[-121.2176513671875,37.814123701604466],[-120.11901855468751,37.74031329210266],[-119.42138671875,38.37611542403604],[-119.6246337890625,39.20246222588238],[-121.17370605468749,39.33854604847979],[-122.4591064453125,39.02345139405935]]]}}]}
--------------------------------------------------------------------------------
/solaris/data/test_results.csv:
--------------------------------------------------------------------------------
1 | nadir-category,F1Score,FalseNeg,FalsePos,Precision,Recall,TruePos
2 | Nadir,1.0,0,0,1.0,1.0,151
3 |
--------------------------------------------------------------------------------
/solaris/data/test_results_full.csv:
--------------------------------------------------------------------------------
1 | F1Score,FalseNeg,FalsePos,Precision,Recall,TruePos,imageID,iou_field,nadir-category
2 | 1.0,0,0,1.0,1.0,151,Atlanta_nadir10_catid_1030010003CAF100_740801_3728289,iou_score,Nadir
3 |
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_custom_proj_expected/geoms_-661905.0_2118645.0.geojson:
--------------------------------------------------------------------------------
1 | {
2 | "type": "FeatureCollection",
3 | "crs": { "type": "name", "properties": { "name": "urn:ogc:def:crs:OGC:1.3:CRS84" } },
4 | "features": [
5 | { "type": "Feature", "properties": { "id": 49388, "origarea": 476145.1255013296, "origlen": 0, "partialDec": 0.0011733302628188385, "truncated": 1 }, "geometry": { "type": "Polygon", "coordinates": [ [ [ -659660.154028261080384, 2118645.0 ], [ -659770.753831441979855, 2118636.181507399771363 ], [ -659786.859466610010713, 2118645.0 ], [ -659660.154028261080384, 2118645.0 ] ] ] } }
6 | ]
7 | }
8 |
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_custom_proj_expected/geoms_-665745.0_2118645.0.geojson:
--------------------------------------------------------------------------------
1 | {"type": "FeatureCollection", "crs": {"type": "name", "properties": {"name": "urn:ogc:def:crs:EPSG:EPSG:4326"}}, "features": []}
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_custom_proj_expected/geoms_-665745.0_2126325.0.geojson:
--------------------------------------------------------------------------------
1 | {
2 | "type": "FeatureCollection",
3 | "crs": { "type": "name", "properties": { "name": "urn:ogc:def:crs:OGC:1.3:CRS84" } },
4 | "features": [
5 | { "type": "Feature", "properties": { "id": 43137, "origarea": 361647.34465168085, "origlen": 0, "partialDec": 0.071160515251336834, "truncated": 1 }, "geometry": { "type": "Polygon", "coordinates": [ [ [ -662137.953397833625786, 2126325.0 ], [ -662233.919334881473333, 2126261.930289819836617 ], [ -662358.255713250837289, 2126236.236304953694344 ], [ -662483.128394665312953, 2126258.443210243247449 ], [ -662590.461963808513246, 2126325.0 ], [ -662137.953397833625786, 2126325.0 ] ] ] } },
6 | { "type": "Feature", "properties": { "id": 44985, "origarea": 380546.08557477366, "origlen": 0, "partialDec": 0.15565470545258336, "truncated": 1 }, "geometry": { "type": "Polygon", "coordinates": [ [ [ -661905.0, 2124643.37455078586936 ], [ -661924.644355155993253, 2124658.308898446150124 ], [ -661944.308738291496411, 2124675.769930709153414 ], [ -661962.611357989604585, 2124694.692774272989482 ], [ -661979.447378740878776, 2124714.969040958676487 ], [ -661994.720365330926143, 2124736.482590271625668 ], [ -662008.342835211078636, 2124759.110194658860564 ], [ -662020.236759598483332, 2124782.722245336975902 ], [ -662030.33401042688638, 2124807.183494668453932 ], [ -662038.576750600477681, 2124832.353830857668072 ], [ -662044.917765291407704, 2124858.089080506004393 ], [ -662049.320732422638685, 2124884.241834385786206 ], [ -662051.760430733207613, 2124910.662291845306754 ], [ -662052.222884287592024, 2124937.199118802323937 ], [ -662050.705442559788935, 2124963.700314601883292 ], [ -662047.216795651824214, 2124990.014082662761211 ], [ -662041.776924558798783, 2125015.989699948579073 ], [ -662034.416986754979007, 2125041.478380300104618 ], [ -662025.179137763916515, 2125066.33412669133395 ], [ -662014.11628973193001, 2125090.414567464962602 ], [ -662001.291808383306488, 2125113.581771849654615 ], [ -661986.779150097514503, 2125135.703039995860308 ], [ -661970.661441179923713, 2125156.651663101743907 ], [ -661953.031001744908281, 2125176.307649174239486 ], [ -661933.988816928351298, 2125194.55841034417972 ], [ -661913.643958465545438, 2125211.299407756421715 ], [ -661905.0, 2125217.375729425344616 ], [ -661905.0, 2124643.37455078586936 ] ] ] } }
7 | ]
8 | }
9 |
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_custom_proj_expected/geoms_-669585.0_2118645.0.geojson:
--------------------------------------------------------------------------------
1 | {"type": "FeatureCollection", "crs": {"type": "name", "properties": {"name": "urn:ogc:def:crs:EPSG:EPSG:4326"}}, "features": []}
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_custom_proj_expected/geoms_-669585.0_2122485.0.geojson:
--------------------------------------------------------------------------------
1 | {"type": "FeatureCollection", "crs": {"type": "name", "properties": {"name": "urn:ogc:def:crs:EPSG:EPSG:4326"}}, "features": []}
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_custom_proj_expected/geoms_-669585.0_2126325.0.geojson:
--------------------------------------------------------------------------------
1 | {"type": "FeatureCollection", "crs": {"type": "name", "properties": {"name": "urn:ogc:def:crs:EPSG:EPSG:4326"}}, "features": []}
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_custom_proj_expected/geoms_-669585.0_2130165.0.geojson:
--------------------------------------------------------------------------------
1 | {"type": "FeatureCollection", "crs": {"type": "name", "properties": {"name": "urn:ogc:def:crs:EPSG:EPSG:4326"}}, "features": []}
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_custom_proj_expected/geoms_-673425.0_2118645.0.geojson:
--------------------------------------------------------------------------------
1 | {"type": "FeatureCollection", "crs": {"type": "name", "properties": {"name": "urn:ogc:def:crs:EPSG:EPSG:4326"}}, "features": []}
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_custom_proj_expected/geoms_-673425.0_2122485.0.geojson:
--------------------------------------------------------------------------------
1 | {"type": "FeatureCollection", "crs": {"type": "name", "properties": {"name": "urn:ogc:def:crs:EPSG:EPSG:4326"}}, "features": []}
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_custom_proj_expected/geoms_-673425.0_2126325.0.geojson:
--------------------------------------------------------------------------------
1 | {"type": "FeatureCollection", "crs": {"type": "name", "properties": {"name": "urn:ogc:def:crs:EPSG:EPSG:4326"}}, "features": []}
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_custom_proj_expected/geoms_-673425.0_2130165.0.geojson:
--------------------------------------------------------------------------------
1 | {"type": "FeatureCollection", "crs": {"type": "name", "properties": {"name": "urn:ogc:def:crs:EPSG:EPSG:4326"}}, "features": []}
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_expected/geoms_733601_3724734.geojson:
--------------------------------------------------------------------------------
1 | {
2 | "type": "FeatureCollection",
3 | "crs": { "type": "name", "properties": { "name": "urn:ogc:def:crs:EPSG::32616" } },
4 | "features": [
5 | { "type": "Feature", "properties": { "access": "", "addr_house": "", "addr_hou_1": "", "addr_inter": "", "admin_leve": "", "aerialway": "", "aeroway": "", "amenity": "", "area": "", "barrier": "", "bicycle": "", "boundary": "", "brand": "", "bridge": "", "building": "yes", "constructi": "", "covered": "", "culvert": "", "cutting": "", "denominati": "", "disused": "", "embankment": "", "foot": "", "generator_": "", "harbour": "", "highway": "", "historic": "", "horse": "", "intermitte": "", "junction": "", "landuse": "", "layer": "", "leisure": "", "lock": "", "man_made": "", "military": "", "motorcar": "", "name": "", "natural": "", "office": "", "oneway": "", "operator": "", "osm_id": 134696, "place": "", "population": "", "power": "", "power_sour": "", "public_tra": "", "railway": "", "ref": "", "religion": "", "route": "", "service": "", "shop": "", "sport": "", "surface": "", "tags": "\"security:classification\"=>\"UNCLASSIFIED\",\"source\"=>\"Unknown\"", "toll": "", "tourism": "", "tower_type": "", "tunnel": "", "water": "", "waterway": "", "wetland": "", "width": "", "wood": "", "z_order": -999999, "tracktype": "", "way_area": -999999.0, "origarea": 160.8812060779413, "origlen": 0, "partialDec": 0.33276744108985457, "truncated": 1 }, "geometry": { "type": "Polygon", "coordinates": [ [ [ 733631.017092985799536, 3724696.563397473655641 ], [ 733637.916874720831402, 3724689.0 ], [ 733626.758141876780428, 3724689.0 ], [ 733624.904465531464666, 3724691.031963157467544 ], [ 733631.017092985799536, 3724696.563397473655641 ] ] ] } }
6 | ]
7 | }
8 |
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_expected/geoms_733601_3724779.geojson:
--------------------------------------------------------------------------------
1 | {"type": "FeatureCollection", "crs": {"type": "name", "properties": {"name": "urn:ogc:def:crs:EPSG:32616"}}, "features": []}
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_expected/geoms_733601_3724824.geojson:
--------------------------------------------------------------------------------
1 | {
2 | "type": "FeatureCollection",
3 | "crs": { "type": "name", "properties": { "name": "urn:ogc:def:crs:EPSG::32616" } },
4 | "features": [
5 | { "type": "Feature", "properties": { "access": "", "addr_house": "", "addr_hou_1": "", "addr_inter": "", "admin_leve": "", "aerialway": "", "aeroway": "", "amenity": "", "area": "", "barrier": "", "bicycle": "", "boundary": "", "brand": "", "bridge": "", "building": "yes", "constructi": "", "covered": "", "culvert": "", "cutting": "", "denominati": "", "disused": "", "embankment": "", "foot": "", "generator_": "", "harbour": "", "highway": "", "historic": "", "horse": "", "intermitte": "", "junction": "", "landuse": "", "layer": "", "leisure": "", "lock": "", "man_made": "", "military": "", "motorcar": "", "name": "Occlusion", "natural": "", "office": "", "oneway": "", "operator": "", "osm_id": 117300, "place": "", "population": "", "power": "", "power_sour": "", "public_tra": "", "railway": "", "ref": "", "religion": "", "route": "", "service": "", "shop": "", "sport": "", "surface": "", "tags": "\"security:classification\"=>\"UNCLASSIFIED\",\"source\"=>\"Unknown\"", "toll": "", "tourism": "", "tower_type": "", "tunnel": "", "water": "", "waterway": "", "wetland": "", "width": "", "wood": "", "z_order": -999999, "tracktype": "", "way_area": -999999.0, "origarea": 56.69138110426168, "origlen": 0, "partialDec": 0.82298268439083644, "truncated": 1 }, "geometry": { "type": "Polygon", "coordinates": [ [ [ 733637.712568847462535, 3724812.644189648330212 ], [ 733637.935811243369244, 3724818.720185527112335 ], [ 733637.983977672527544, 3724821.69559862697497 ], [ 733645.835462932707742, 3724821.387535042595118 ], [ 733646.0, 3724821.378123895265162 ], [ 733646.0, 3724817.318846063688397 ], [ 733644.187826864537783, 3724817.38542799977586 ], [ 733642.700126820825972, 3724817.105018282774836 ], [ 733640.485648880014196, 3724816.174316430930048 ], [ 733639.697913700132631, 3724812.692572094965726 ], [ 733637.712568847462535, 3724812.644189648330212 ] ] ] } }
6 | ]
7 | }
8 |
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_expected/geoms_733601_3725004.geojson:
--------------------------------------------------------------------------------
1 | {"type": "FeatureCollection", "crs": {"type": "name", "properties": {"name": "urn:ogc:def:crs:EPSG:32616"}}, "features": []}
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_expected/geoms_733601_3725049.geojson:
--------------------------------------------------------------------------------
1 | {
2 | "type": "FeatureCollection",
3 | "crs": { "type": "name", "properties": { "name": "urn:ogc:def:crs:EPSG::32616" } },
4 | "features": [
5 | { "type": "Feature", "properties": { "access": "", "addr_house": "", "addr_hou_1": "", "addr_inter": "", "admin_leve": "", "aerialway": "", "aeroway": "", "amenity": "", "area": "", "barrier": "", "bicycle": "", "boundary": "", "brand": "", "bridge": "", "building": "yes", "constructi": "", "covered": "", "culvert": "", "cutting": "", "denominati": "", "disused": "", "embankment": "", "foot": "", "generator_": "", "harbour": "", "highway": "", "historic": "", "horse": "", "intermitte": "", "junction": "", "landuse": "", "layer": "", "leisure": "", "lock": "", "man_made": "", "military": "", "motorcar": "", "name": "Occlusion", "natural": "", "office": "", "oneway": "", "operator": "", "osm_id": 135943, "place": "", "population": "", "power": "", "power_sour": "", "public_tra": "", "railway": "", "ref": "", "religion": "", "route": "", "service": "", "shop": "", "sport": "", "surface": "", "tags": "\"security:classification\"=>\"UNCLASSIFIED\",\"source\"=>\"Unknown\"", "toll": "", "tourism": "", "tower_type": "", "tunnel": "", "water": "", "waterway": "", "wetland": "", "width": "", "wood": "", "z_order": -999999, "tracktype": "", "way_area": -999999.0, "origarea": 293.80215091143663, "origlen": 0, "partialDec": 1.0, "truncated": 0 }, "geometry": { "type": "Polygon", "coordinates": [ [ [ 733614.692407695925795, 3725025.917704849969596 ], [ 733618.232930953730829, 3725025.759830723050982 ], [ 733618.361258932505734, 3725028.493043820839375 ], [ 733623.40737501042895, 3725028.260883178096265 ], [ 733623.226638415828347, 3725024.25013302732259 ], [ 733629.22064378275536, 3725023.974487836007029 ], [ 733628.499683096189983, 3725008.231178386602551 ], [ 733624.467038923874497, 3725005.347326850984246 ], [ 733613.770959213492461, 3725005.830230219755322 ], [ 733614.692407695925795, 3725025.917704849969596 ] ] ] } }
6 | ]
7 | }
8 |
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_expected/geoms_733601_3725094.geojson:
--------------------------------------------------------------------------------
1 | {
2 | "type": "FeatureCollection",
3 | "crs": { "type": "name", "properties": { "name": "urn:ogc:def:crs:EPSG::32616" } },
4 | "features": [
5 | { "type": "Feature", "properties": { "access": "", "addr_house": "", "addr_hou_1": "", "addr_inter": "", "admin_leve": "", "aerialway": "", "aeroway": "", "amenity": "", "area": "", "barrier": "", "bicycle": "", "boundary": "", "brand": "", "bridge": "", "building": "yes", "constructi": "", "covered": "", "culvert": "", "cutting": "", "denominati": "", "disused": "", "embankment": "", "foot": "", "generator_": "", "harbour": "", "highway": "", "historic": "", "horse": "", "intermitte": "", "junction": "", "landuse": "", "layer": "", "leisure": "", "lock": "", "man_made": "", "military": "", "motorcar": "", "name": "Occlusion", "natural": "", "office": "", "oneway": "", "operator": "", "osm_id": 135941, "place": "", "population": "", "power": "", "power_sour": "", "public_tra": "", "railway": "", "ref": "", "religion": "", "route": "", "service": "", "shop": "", "sport": "", "surface": "", "tags": "\"security:classification\"=>\"UNCLASSIFIED\",\"source\"=>\"Unknown\"", "toll": "", "tourism": "", "tower_type": "", "tunnel": "", "water": "", "waterway": "", "wetland": "", "width": "", "wood": "", "z_order": -999999, "tracktype": "", "way_area": -999999.0, "origarea": 208.00350114029035, "origlen": 0, "partialDec": 0.075357171616733137, "truncated": 1 }, "geometry": { "type": "Polygon", "coordinates": [ [ [ 733646.0, 3725089.934429133776575 ], [ 733638.289124431437813, 3725094.0 ], [ 733646.0, 3725094.0 ], [ 733646.0, 3725089.934429133776575 ] ] ] } }
6 | ]
7 | }
8 |
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_expected/geoms_733646_3724734.geojson:
--------------------------------------------------------------------------------
1 | {"type": "FeatureCollection", "crs": {"type": "name", "properties": {"name": "urn:ogc:def:crs:EPSG:32616"}}, "features": []}
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_expected/geoms_733646_3724779.geojson:
--------------------------------------------------------------------------------
1 | {"type": "FeatureCollection", "crs": {"type": "name", "properties": {"name": "urn:ogc:def:crs:EPSG:32616"}}, "features": []}
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_expected/geoms_733646_3724824.geojson:
--------------------------------------------------------------------------------
1 | {
2 | "type": "FeatureCollection",
3 | "crs": { "type": "name", "properties": { "name": "urn:ogc:def:crs:EPSG::32616" } },
4 | "features": [
5 | { "type": "Feature", "properties": { "access": "", "addr_house": "", "addr_hou_1": "", "addr_inter": "", "admin_leve": "", "aerialway": "", "aeroway": "", "amenity": "", "area": "", "barrier": "", "bicycle": "", "boundary": "", "brand": "", "bridge": "", "building": "yes", "constructi": "", "covered": "", "culvert": "", "cutting": "", "denominati": "", "disused": "", "embankment": "", "foot": "", "generator_": "", "harbour": "", "highway": "", "historic": "", "horse": "", "intermitte": "", "junction": "", "landuse": "", "layer": "", "leisure": "", "lock": "", "man_made": "", "military": "", "motorcar": "", "name": "Occlusion", "natural": "", "office": "", "oneway": "", "operator": "", "osm_id": 117300, "place": "", "population": "", "power": "", "power_sour": "", "public_tra": "", "railway": "", "ref": "", "religion": "", "route": "", "service": "", "shop": "", "sport": "", "surface": "", "tags": "\"security:classification\"=>\"UNCLASSIFIED\",\"source\"=>\"Unknown\"", "toll": "", "tourism": "", "tower_type": "", "tunnel": "", "water": "", "waterway": "", "wetland": "", "width": "", "wood": "", "z_order": -999999, "tracktype": "", "way_area": -999999.0, "origarea": 56.69138110426168, "origlen": 0, "partialDec": 0.17701731560750186, "truncated": 1 }, "geometry": { "type": "Polygon", "coordinates": [ [ [ 733646.0, 3724821.378123895265162 ], [ 733648.828701670165174, 3724821.216328571550548 ], [ 733648.656602984643541, 3724817.993740823119879 ], [ 733646.185421441216022, 3724817.312033404130489 ], [ 733646.0, 3724817.318846063688397 ], [ 733646.0, 3724821.378123895265162 ] ] ] } }
6 | ]
7 | }
8 |
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_expected/geoms_733646_3724914.geojson:
--------------------------------------------------------------------------------
1 | {
2 | "type": "FeatureCollection",
3 | "crs": { "type": "name", "properties": { "name": "urn:ogc:def:crs:EPSG::32616" } },
4 | "features": [
5 | { "type": "Feature", "properties": { "access": "", "addr_house": "", "addr_hou_1": "", "addr_inter": "", "admin_leve": "", "aerialway": "", "aeroway": "", "amenity": "", "area": "", "barrier": "", "bicycle": "", "boundary": "", "brand": "", "bridge": "", "building": "yes", "constructi": "", "covered": "", "culvert": "", "cutting": "", "denominati": "", "disused": "", "embankment": "", "foot": "", "generator_": "", "harbour": "", "highway": "", "historic": "", "horse": "", "intermitte": "", "junction": "", "landuse": "", "layer": "", "leisure": "", "lock": "", "man_made": "", "military": "", "motorcar": "", "name": "Occlusion", "natural": "", "office": "", "oneway": "", "operator": "", "osm_id": 102939, "place": "", "population": "", "power": "", "power_sour": "", "public_tra": "", "railway": "", "ref": "", "religion": "", "route": "", "service": "", "shop": "", "sport": "", "surface": "", "tags": "\"security:classification\"=>\"UNCLASSIFIED\",\"source\"=>\"Unknown\"", "toll": "", "tourism": "", "tower_type": "", "tunnel": "", "water": "", "waterway": "", "wetland": "", "width": "", "wood": "", "z_order": -999999, "tracktype": "", "way_area": -999999.0, "origarea": 263.99532490416749, "origlen": 0, "partialDec": 0.046202030937300832, "truncated": 1 }, "geometry": { "type": "Polygon", "coordinates": [ [ [ 733646.0, 3724884.255406009964645 ], [ 733646.397882855031639, 3724883.249889441765845 ], [ 733647.285931088379584, 3724869.0 ], [ 733646.0, 3724869.0 ], [ 733646.0, 3724884.255406009964645 ] ] ] } }
6 | ]
7 | }
8 |
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_expected/geoms_733646_3725049.geojson:
--------------------------------------------------------------------------------
1 | {
2 | "type": "FeatureCollection",
3 | "crs": { "type": "name", "properties": { "name": "urn:ogc:def:crs:EPSG::32616" } },
4 | "features": [
5 | { "type": "Feature", "properties": { "access": "", "addr_house": "", "addr_hou_1": "", "addr_inter": "", "admin_leve": "", "aerialway": "", "aeroway": "", "amenity": "", "area": "", "barrier": "", "bicycle": "", "boundary": "", "brand": "", "bridge": "", "building": "yes", "constructi": "", "covered": "", "culvert": "", "cutting": "", "denominati": "", "disused": "", "embankment": "", "foot": "", "generator_": "", "harbour": "", "highway": "", "historic": "", "horse": "", "intermitte": "", "junction": "", "landuse": "", "layer": "", "leisure": "", "lock": "", "man_made": "", "military": "", "motorcar": "", "name": "", "natural": "", "office": "", "oneway": "", "operator": "", "osm_id": 102924, "place": "", "population": "", "power": "", "power_sour": "", "public_tra": "", "railway": "", "ref": "", "religion": "", "route": "", "service": "", "shop": "", "sport": "", "surface": "", "tags": "\"security:classification\"=>\"UNCLASSIFIED\",\"source\"=>\"Unknown\"", "toll": "", "tourism": "", "tower_type": "", "tunnel": "", "water": "", "waterway": "", "wetland": "", "width": "", "wood": "", "z_order": -999999, "tracktype": "", "way_area": -999999.0, "origarea": 151.59457935772951, "origlen": 0, "partialDec": 0.3274698353796876, "truncated": 1 }, "geometry": { "type": "Polygon", "coordinates": [ [ [ 733665.773527625598945, 3725010.34930036123842 ], [ 733678.195862984284759, 3725004.0 ], [ 733663.028553360374644, 3725004.0 ], [ 733662.883814595406875, 3725004.752105239313096 ], [ 733665.773527625598945, 3725010.34930036123842 ] ] ] } }
6 | ]
7 | }
8 |
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_expected/geoms_733646_3725139.geojson:
--------------------------------------------------------------------------------
1 | {
2 | "type": "FeatureCollection",
3 | "crs": { "type": "name", "properties": { "name": "urn:ogc:def:crs:EPSG::32616" } },
4 | "features": [
5 | { "type": "Feature", "properties": { "access": "", "addr_house": "", "addr_hou_1": "", "addr_inter": "", "admin_leve": "", "aerialway": "", "aeroway": "", "amenity": "", "area": "", "barrier": "", "bicycle": "", "boundary": "", "brand": "", "bridge": "", "building": "yes", "constructi": "", "covered": "", "culvert": "", "cutting": "", "denominati": "", "disused": "", "embankment": "", "foot": "", "generator_": "", "harbour": "", "highway": "", "historic": "", "horse": "", "intermitte": "", "junction": "", "landuse": "", "layer": "", "leisure": "", "lock": "", "man_made": "", "military": "", "motorcar": "", "name": "Occlusion", "natural": "", "office": "", "oneway": "", "operator": "", "osm_id": 135941, "place": "", "population": "", "power": "", "power_sour": "", "public_tra": "", "railway": "", "ref": "", "religion": "", "route": "", "service": "", "shop": "", "sport": "", "surface": "", "tags": "\"security:classification\"=>\"UNCLASSIFIED\",\"source\"=>\"Unknown\"", "toll": "", "tourism": "", "tower_type": "", "tunnel": "", "water": "", "waterway": "", "wetland": "", "width": "", "wood": "", "z_order": -999999, "tracktype": "", "way_area": -999999.0, "origarea": 208.00350114029035, "origlen": 0, "partialDec": 0.2056092641335639, "truncated": 1 }, "geometry": { "type": "Polygon", "coordinates": [ [ [ 733646.0, 3725101.754577273502946 ], [ 733654.492900374345481, 3725096.893328425474465 ], [ 733652.800486668245867, 3725094.0 ], [ 733646.0, 3725094.0 ], [ 733646.0, 3725101.754577273502946 ] ] ] } }
6 | ]
7 | }
8 |
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_expected/geoms_733691_3724734.geojson:
--------------------------------------------------------------------------------
1 | {
2 | "type": "FeatureCollection",
3 | "crs": { "type": "name", "properties": { "name": "urn:ogc:def:crs:EPSG::32616" } },
4 | "features": [
5 | { "type": "Feature", "properties": { "access": "", "addr_house": "", "addr_hou_1": "", "addr_inter": "", "admin_leve": "", "aerialway": "", "aeroway": "", "amenity": "", "area": "", "barrier": "", "bicycle": "", "boundary": "", "brand": "", "bridge": "", "building": "yes", "constructi": "", "covered": "", "culvert": "", "cutting": "", "denominati": "", "disused": "", "embankment": "", "foot": "", "generator_": "", "harbour": "", "highway": "", "historic": "", "horse": "", "intermitte": "", "junction": "", "landuse": "", "layer": "", "leisure": "", "lock": "", "man_made": "", "military": "", "motorcar": "", "name": "Occlusion", "natural": "", "office": "", "oneway": "", "operator": "", "osm_id": 134694, "place": "", "population": "", "power": "", "power_sour": "", "public_tra": "", "railway": "", "ref": "", "religion": "", "route": "", "service": "", "shop": "", "sport": "", "surface": "", "tags": "\"security:classification\"=>\"UNCLASSIFIED\",\"source\"=>\"Unknown\"", "toll": "", "tourism": "", "tower_type": "", "tunnel": "", "water": "", "waterway": "", "wetland": "", "width": "", "wood": "", "z_order": -999999, "tracktype": "", "way_area": -999999.0, "origarea": 98.143961268411516, "origlen": 0, "partialDec": 1.0, "truncated": 0 }, "geometry": { "type": "Polygon", "coordinates": [ [ [ 733707.923785710008815, 3724706.18411343311891 ], [ 733716.751506693311967, 3724697.820616477634758 ], [ 733709.214741862844676, 3724689.402245204430073 ], [ 733706.274902248056605, 3724694.235860752407461 ], [ 733708.154135095421225, 3724696.734307382255793 ], [ 733707.539887185208499, 3724700.22627462958917 ], [ 733702.747399608721025, 3724701.85182610200718 ], [ 733707.923785710008815, 3724706.18411343311891 ] ] ] } }
6 | ]
7 | }
8 |
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_expected/geoms_733691_3724779.geojson:
--------------------------------------------------------------------------------
1 | {"type": "FeatureCollection", "crs": {"type": "name", "properties": {"name": "urn:ogc:def:crs:EPSG:32616"}}, "features": []}
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_expected/geoms_733691_3724824.geojson:
--------------------------------------------------------------------------------
1 | {"type": "FeatureCollection", "crs": {"type": "name", "properties": {"name": "urn:ogc:def:crs:EPSG:32616"}}, "features": []}
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_expected/geoms_733691_3724869.geojson:
--------------------------------------------------------------------------------
1 | {"type": "FeatureCollection", "crs": {"type": "name", "properties": {"name": "urn:ogc:def:crs:EPSG:32616"}}, "features": []}
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_expected/geoms_733691_3724914.geojson:
--------------------------------------------------------------------------------
1 | {"type": "FeatureCollection", "crs": {"type": "name", "properties": {"name": "urn:ogc:def:crs:EPSG:32616"}}, "features": []}
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_expected/geoms_733691_3724959.geojson:
--------------------------------------------------------------------------------
1 | {
2 | "type": "FeatureCollection",
3 | "crs": { "type": "name", "properties": { "name": "urn:ogc:def:crs:EPSG::32616" } },
4 | "features": [
5 | { "type": "Feature", "properties": { "access": "", "addr_house": "", "addr_hou_1": "", "addr_inter": "", "admin_leve": "", "aerialway": "", "aeroway": "", "amenity": "", "area": "", "barrier": "", "bicycle": "", "boundary": "", "brand": "", "bridge": "", "building": "yes", "constructi": "", "covered": "", "culvert": "", "cutting": "", "denominati": "", "disused": "", "embankment": "", "foot": "", "generator_": "", "harbour": "", "highway": "", "historic": "", "horse": "", "intermitte": "", "junction": "", "landuse": "", "layer": "", "leisure": "", "lock": "", "man_made": "", "military": "", "motorcar": "", "name": "Occlusion", "natural": "", "office": "", "oneway": "", "operator": "", "osm_id": 102925, "place": "", "population": "", "power": "", "power_sour": "", "public_tra": "", "railway": "", "ref": "", "religion": "", "route": "", "service": "", "shop": "", "sport": "", "surface": "", "tags": "\"security:classification\"=>\"UNCLASSIFIED\",\"source\"=>\"Unknown\"", "toll": "", "tourism": "", "tower_type": "", "tunnel": "", "water": "", "waterway": "", "wetland": "", "width": "", "wood": "", "z_order": -999999, "tracktype": "", "way_area": -999999.0, "origarea": 235.62354171707437, "origlen": 0, "partialDec": 0.19134224537340172, "truncated": 1 }, "geometry": { "type": "Polygon", "coordinates": [ [ [ 733723.705273776431568, 3724959.0 ], [ 733721.837239123298787, 3724956.803474905434996 ], [ 733713.769853547797538, 3724952.64484176505357 ], [ 733711.143068718956783, 3724957.585964888799936 ], [ 733713.499046904733405, 3724959.0 ], [ 733723.705273776431568, 3724959.0 ] ] ] } }
6 | ]
7 | }
8 |
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_expected/geoms_733691_3725004.geojson:
--------------------------------------------------------------------------------
1 | {
2 | "type": "FeatureCollection",
3 | "crs": { "type": "name", "properties": { "name": "urn:ogc:def:crs:EPSG::32616" } },
4 | "features": [
5 | { "type": "Feature", "properties": { "access": "", "addr_house": "", "addr_hou_1": "", "addr_inter": "", "admin_leve": "", "aerialway": "", "aeroway": "", "amenity": "", "area": "", "barrier": "", "bicycle": "", "boundary": "", "brand": "", "bridge": "", "building": "yes", "constructi": "", "covered": "", "culvert": "", "cutting": "", "denominati": "", "disused": "", "embankment": "", "foot": "", "generator_": "", "harbour": "", "highway": "", "historic": "", "horse": "", "intermitte": "", "junction": "", "landuse": "", "layer": "", "leisure": "", "lock": "", "man_made": "", "military": "", "motorcar": "", "name": "Occlusion", "natural": "", "office": "", "oneway": "", "operator": "", "osm_id": 102925, "place": "", "population": "", "power": "", "power_sour": "", "public_tra": "", "railway": "", "ref": "", "religion": "", "route": "", "service": "", "shop": "", "sport": "", "surface": "", "tags": "\"security:classification\"=>\"UNCLASSIFIED\",\"source\"=>\"Unknown\"", "toll": "", "tourism": "", "tower_type": "", "tunnel": "", "water": "", "waterway": "", "wetland": "", "width": "", "wood": "", "z_order": -999999, "tracktype": "", "way_area": -999999.0, "origarea": 235.62354171707437, "origlen": 0, "partialDec": 0.80865775462712375, "truncated": 1 }, "geometry": { "type": "Polygon", "coordinates": [ [ [ 733716.606242132140324, 3724973.75564177101478 ], [ 733725.094902680953965, 3724960.633992579299957 ], [ 733723.705273776431568, 3724959.0 ], [ 733713.499046904733405, 3724959.0 ], [ 733714.034097261959687, 3724959.32113200193271 ], [ 733712.084855253109708, 3724961.981503693852574 ], [ 733706.699992214213125, 3724959.353198084048927 ], [ 733702.652436110540293, 3724965.458262465894222 ], [ 733716.606242132140324, 3724973.75564177101478 ] ] ] } }
6 | ]
7 | }
8 |
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_expected/geoms_733691_3725049.geojson:
--------------------------------------------------------------------------------
1 | {
2 | "type": "FeatureCollection",
3 | "crs": { "type": "name", "properties": { "name": "urn:ogc:def:crs:EPSG::32616" } },
4 | "features": [
5 | { "type": "Feature", "properties": { "access": "", "addr_house": "", "addr_hou_1": "", "addr_inter": "", "admin_leve": "", "aerialway": "", "aeroway": "", "amenity": "", "area": "", "barrier": "", "bicycle": "", "boundary": "", "brand": "", "bridge": "", "building": "yes", "constructi": "", "covered": "", "culvert": "", "cutting": "", "denominati": "", "disused": "", "embankment": "", "foot": "", "generator_": "", "harbour": "", "highway": "", "historic": "", "horse": "", "intermitte": "", "junction": "", "landuse": "", "layer": "", "leisure": "", "lock": "", "man_made": "", "military": "", "motorcar": "", "name": "", "natural": "", "office": "", "oneway": "", "operator": "", "osm_id": 102919, "place": "", "population": "", "power": "", "power_sour": "", "public_tra": "", "railway": "", "ref": "", "religion": "", "route": "", "service": "", "shop": "", "sport": "", "surface": "", "tags": "\"security:classification\"=>\"UNCLASSIFIED\",\"source\"=>\"Unknown\"", "toll": "", "tourism": "", "tower_type": "", "tunnel": "", "water": "", "waterway": "", "wetland": "", "width": "", "wood": "", "z_order": -999999, "tracktype": "", "way_area": -999999.0, "origarea": 376.96788638895055, "origlen": 0, "partialDec": 0.43161612025689933, "truncated": 1 }, "geometry": { "type": "Polygon", "coordinates": [ [ [ 733736.0, 3725046.363777188584208 ], [ 733735.121561629115604, 3725043.957477799151093 ], [ 733732.919629639131017, 3725040.230379342567176 ], [ 733731.032719954149798, 3725038.43090241169557 ], [ 733727.129203135380521, 3725039.390032827854156 ], [ 733715.550556391477585, 3725045.233793378807604 ], [ 733711.973885777289979, 3725047.255200332496315 ], [ 733712.888976000715047, 3725049.0 ], [ 733736.0, 3725049.0 ], [ 733736.0, 3725046.363777188584208 ] ] ] } }
6 | ]
7 | }
8 |
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_expected/geoms_733691_3725139.geojson:
--------------------------------------------------------------------------------
1 | {"type": "FeatureCollection", "crs": {"type": "name", "properties": {"name": "urn:ogc:def:crs:EPSG:32616"}}, "features": []}
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_expected/geoms_733736_3724734.geojson:
--------------------------------------------------------------------------------
1 | {"type": "FeatureCollection", "crs": {"type": "name", "properties": {"name": "urn:ogc:def:crs:EPSG:32616"}}, "features": []}
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_expected/geoms_733736_3724779.geojson:
--------------------------------------------------------------------------------
1 | {"type": "FeatureCollection", "crs": {"type": "name", "properties": {"name": "urn:ogc:def:crs:EPSG:32616"}}, "features": []}
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_expected/geoms_733736_3724824.geojson:
--------------------------------------------------------------------------------
1 | {"type": "FeatureCollection", "crs": {"type": "name", "properties": {"name": "urn:ogc:def:crs:EPSG:32616"}}, "features": []}
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_expected/geoms_733736_3724869.geojson:
--------------------------------------------------------------------------------
1 | {"type": "FeatureCollection", "crs": {"type": "name", "properties": {"name": "urn:ogc:def:crs:EPSG:32616"}}, "features": []}
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_expected/geoms_733736_3724914.geojson:
--------------------------------------------------------------------------------
1 | {"type": "FeatureCollection", "crs": {"type": "name", "properties": {"name": "urn:ogc:def:crs:EPSG:32616"}}, "features": []}
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_expected/geoms_733736_3724959.geojson:
--------------------------------------------------------------------------------
1 | {"type": "FeatureCollection", "crs": {"type": "name", "properties": {"name": "urn:ogc:def:crs:EPSG:32616"}}, "features": []}
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_expected/geoms_733736_3725004.geojson:
--------------------------------------------------------------------------------
1 | {"type": "FeatureCollection", "crs": {"type": "name", "properties": {"name": "urn:ogc:def:crs:EPSG:32616"}}, "features": []}
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_expected/geoms_733736_3725049.geojson:
--------------------------------------------------------------------------------
1 | {
2 | "type": "FeatureCollection",
3 | "crs": { "type": "name", "properties": { "name": "urn:ogc:def:crs:EPSG::32616" } },
4 | "features": [
5 | { "type": "Feature", "properties": { "access": "", "addr_house": "", "addr_hou_1": "", "addr_inter": "", "admin_leve": "", "aerialway": "", "aeroway": "", "amenity": "", "area": "", "barrier": "", "bicycle": "", "boundary": "", "brand": "", "bridge": "", "building": "yes", "constructi": "", "covered": "", "culvert": "", "cutting": "", "denominati": "", "disused": "", "embankment": "", "foot": "", "generator_": "", "harbour": "", "highway": "", "historic": "", "horse": "", "intermitte": "", "junction": "", "landuse": "", "layer": "", "leisure": "", "lock": "", "man_made": "", "military": "", "motorcar": "", "name": "", "natural": "", "office": "", "oneway": "", "operator": "", "osm_id": 102919, "place": "", "population": "", "power": "", "power_sour": "", "public_tra": "", "railway": "", "ref": "", "religion": "", "route": "", "service": "", "shop": "", "sport": "", "surface": "", "tags": "\"security:classification\"=>\"UNCLASSIFIED\",\"source\"=>\"Unknown\"", "toll": "", "tourism": "", "tower_type": "", "tunnel": "", "water": "", "waterway": "", "wetland": "", "width": "", "wood": "", "z_order": -999999, "tracktype": "", "way_area": -999999.0, "origarea": 376.96788638895055, "origlen": 0, "partialDec": 0.0031608728154630481, "truncated": 1 }, "geometry": { "type": "Polygon", "coordinates": [ [ [ 733736.803118143696338, 3725049.0 ], [ 733736.609508816385642, 3725048.033399943262339 ], [ 733736.0, 3725046.363777188584208 ], [ 733736.0, 3725049.0 ], [ 733736.803118143696338, 3725049.0 ] ] ] } }
6 | ]
7 | }
8 |
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_expected/geoms_733736_3725094.geojson:
--------------------------------------------------------------------------------
1 | {
2 | "type": "FeatureCollection",
3 | "crs": { "type": "name", "properties": { "name": "urn:ogc:def:crs:EPSG::32616" } },
4 | "features": [
5 | { "type": "Feature", "properties": { "access": "", "addr_house": "", "addr_hou_1": "", "addr_inter": "", "admin_leve": "", "aerialway": "", "aeroway": "", "amenity": "", "area": "", "barrier": "", "bicycle": "", "boundary": "", "brand": "", "bridge": "", "building": "yes", "constructi": "", "covered": "", "culvert": "", "cutting": "", "denominati": "", "disused": "", "embankment": "", "foot": "", "generator_": "", "harbour": "", "highway": "", "historic": "", "horse": "", "intermitte": "", "junction": "", "landuse": "", "layer": "", "leisure": "", "lock": "", "man_made": "", "military": "", "motorcar": "", "name": "", "natural": "", "office": "", "oneway": "", "operator": "", "osm_id": 102919, "place": "", "population": "", "power": "", "power_sour": "", "public_tra": "", "railway": "", "ref": "", "religion": "", "route": "", "service": "", "shop": "", "sport": "", "surface": "", "tags": "\"security:classification\"=>\"UNCLASSIFIED\",\"source\"=>\"Unknown\"", "toll": "", "tourism": "", "tower_type": "", "tunnel": "", "water": "", "waterway": "", "wetland": "", "width": "", "wood": "", "z_order": -999999, "tracktype": "", "way_area": -999999.0, "origarea": 376.96788638895055, "origlen": 0, "partialDec": 0.016861198470121515, "truncated": 1 }, "geometry": { "type": "Polygon", "coordinates": [ [ [ 733736.0, 3725054.352273083757609 ], [ 733737.701844487339258, 3725053.486916756257415 ], [ 733736.803118143696338, 3725049.0 ], [ 733736.0, 3725049.0 ], [ 733736.0, 3725054.352273083757609 ] ] ] } }
6 | ]
7 | }
8 |
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_expected/geoms_733736_3725139.geojson:
--------------------------------------------------------------------------------
1 | {"type": "FeatureCollection", "crs": {"type": "name", "properties": {"name": "urn:ogc:def:crs:EPSG:32616"}}, "features": []}
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_expected/geoms_733781_3724779.geojson:
--------------------------------------------------------------------------------
1 | {"type": "FeatureCollection", "crs": {"type": "name", "properties": {"name": "urn:ogc:def:crs:EPSG:32616"}}, "features": []}
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_expected/geoms_733781_3724824.geojson:
--------------------------------------------------------------------------------
1 | {
2 | "type": "FeatureCollection",
3 | "crs": { "type": "name", "properties": { "name": "urn:ogc:def:crs:EPSG::32616" } },
4 | "features": [
5 | { "type": "Feature", "properties": { "access": "", "addr_house": "", "addr_hou_1": "", "addr_inter": "", "admin_leve": "", "aerialway": "", "aeroway": "", "amenity": "", "area": "", "barrier": "", "bicycle": "", "boundary": "", "brand": "", "bridge": "", "building": "yes", "constructi": "", "covered": "", "culvert": "", "cutting": "", "denominati": "", "disused": "", "embankment": "", "foot": "", "generator_": "", "harbour": "", "highway": "", "historic": "", "horse": "", "intermitte": "", "junction": "", "landuse": "", "layer": "", "leisure": "", "lock": "", "man_made": "", "military": "", "motorcar": "", "name": "Occlusion", "natural": "", "office": "", "oneway": "", "operator": "", "osm_id": 93146, "place": "", "population": "", "power": "", "power_sour": "", "public_tra": "", "railway": "", "ref": "", "religion": "", "route": "", "service": "", "shop": "", "sport": "", "surface": "", "tags": "\"security:classification\"=>\"UNCLASSIFIED\",\"source\"=>\"Unknown\"", "toll": "", "tourism": "", "tower_type": "", "tunnel": "", "water": "", "waterway": "", "wetland": "", "width": "", "wood": "", "z_order": -999999, "tracktype": "", "way_area": -999999.0, "origarea": 85.499318876340681, "origlen": 0, "partialDec": 1.0, "truncated": 0 }, "geometry": { "type": "Polygon", "coordinates": [ [ [ 733797.19361286086496, 3724803.425375143066049 ], [ 733809.65190442930907, 3724803.396256368607283 ], [ 733810.314092590706423, 3724796.798043267335743 ], [ 733797.529922557529062, 3724796.486277254763991 ], [ 733797.19361286086496, 3724803.425375143066049 ] ] ] } }
6 | ]
7 | }
8 |
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_expected/geoms_733781_3724869.geojson:
--------------------------------------------------------------------------------
1 | {"type": "FeatureCollection", "crs": {"type": "name", "properties": {"name": "urn:ogc:def:crs:EPSG:32616"}}, "features": []}
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_expected/geoms_733781_3724914.geojson:
--------------------------------------------------------------------------------
1 | {"type": "FeatureCollection", "crs": {"type": "name", "properties": {"name": "urn:ogc:def:crs:EPSG:32616"}}, "features": []}
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_expected/geoms_733781_3724959.geojson:
--------------------------------------------------------------------------------
1 | {"type": "FeatureCollection", "crs": {"type": "name", "properties": {"name": "urn:ogc:def:crs:EPSG:32616"}}, "features": []}
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_expected/geoms_733826_3724734.geojson:
--------------------------------------------------------------------------------
1 | {
2 | "type": "FeatureCollection",
3 | "crs": { "type": "name", "properties": { "name": "urn:ogc:def:crs:EPSG::32616" } },
4 | "features": [
5 | { "type": "Feature", "properties": { "access": "", "addr_house": "", "addr_hou_1": "", "addr_inter": "", "admin_leve": "", "aerialway": "", "aeroway": "", "amenity": "", "area": "", "barrier": "", "bicycle": "", "boundary": "", "brand": "", "bridge": "", "building": "yes", "constructi": "", "covered": "", "culvert": "", "cutting": "", "denominati": "", "disused": "", "embankment": "", "foot": "", "generator_": "", "harbour": "", "highway": "", "historic": "", "horse": "", "intermitte": "", "junction": "", "landuse": "", "layer": "", "leisure": "", "lock": "", "man_made": "", "military": "", "motorcar": "", "name": "", "natural": "", "office": "", "oneway": "", "operator": "", "osm_id": 93018, "place": "", "population": "", "power": "", "power_sour": "", "public_tra": "", "railway": "", "ref": "", "religion": "", "route": "", "service": "", "shop": "", "sport": "", "surface": "", "tags": "\"security:classification\"=>\"UNCLASSIFIED\",\"source\"=>\"Unknown\"", "toll": "", "tourism": "", "tower_type": "", "tunnel": "", "water": "", "waterway": "", "wetland": "", "width": "", "wood": "", "z_order": -999999, "tracktype": "", "way_area": -999999.0, "origarea": 189.51651421072748, "origlen": 0, "partialDec": 0.9752397811307828, "truncated": 1 }, "geometry": { "type": "Polygon", "coordinates": [ [ [ 733826.0, 3724718.606595266610384 ], [ 733841.671712412848137, 3724724.860320621170104 ], [ 733845.427343191811815, 3724715.507587827276438 ], [ 733827.959576514316723, 3724708.544878867920488 ], [ 733826.0, 3724713.40731359552592 ], [ 733826.0, 3724718.606595266610384 ] ] ] } }
6 | ]
7 | }
8 |
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_expected/geoms_733826_3724779.geojson:
--------------------------------------------------------------------------------
1 | {"type": "FeatureCollection", "crs": {"type": "name", "properties": {"name": "urn:ogc:def:crs:EPSG:32616"}}, "features": []}
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_expected/geoms_733826_3724824.geojson:
--------------------------------------------------------------------------------
1 | {"type": "FeatureCollection", "crs": {"type": "name", "properties": {"name": "urn:ogc:def:crs:EPSG:32616"}}, "features": []}
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_expected/geoms_733826_3724869.geojson:
--------------------------------------------------------------------------------
1 | {"type": "FeatureCollection", "crs": {"type": "name", "properties": {"name": "urn:ogc:def:crs:EPSG:32616"}}, "features": []}
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_expected/geoms_733826_3724914.geojson:
--------------------------------------------------------------------------------
1 | {"type": "FeatureCollection", "crs": {"type": "name", "properties": {"name": "urn:ogc:def:crs:EPSG:32616"}}, "features": []}
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_expected/geoms_733826_3724959.geojson:
--------------------------------------------------------------------------------
1 | {
2 | "type": "FeatureCollection",
3 | "crs": { "type": "name", "properties": { "name": "urn:ogc:def:crs:EPSG::32616" } },
4 | "features": [
5 | { "type": "Feature", "properties": { "access": "", "addr_house": "", "addr_hou_1": "", "addr_inter": "", "admin_leve": "", "aerialway": "", "aeroway": "", "amenity": "", "area": "", "barrier": "", "bicycle": "", "boundary": "", "brand": "", "bridge": "", "building": "yes", "constructi": "", "covered": "", "culvert": "", "cutting": "", "denominati": "", "disused": "", "embankment": "", "foot": "", "generator_": "", "harbour": "", "highway": "", "historic": "", "horse": "", "intermitte": "", "junction": "", "landuse": "", "layer": "", "leisure": "", "lock": "", "man_made": "", "military": "", "motorcar": "", "name": "", "natural": "", "office": "", "oneway": "", "operator": "", "osm_id": 86006, "place": "", "population": "", "power": "", "power_sour": "", "public_tra": "", "railway": "", "ref": "", "religion": "", "route": "", "service": "", "shop": "", "sport": "", "surface": "", "tags": "\"security:classification\"=>\"UNCLASSIFIED\",\"source\"=>\"Unknown\"", "toll": "", "tourism": "", "tower_type": "", "tunnel": "", "water": "", "waterway": "", "wetland": "", "width": "", "wood": "", "z_order": -999999, "tracktype": "", "way_area": -999999.0, "origarea": 300.47300947479948, "origlen": 0, "partialDec": 0.98819774517170944, "truncated": 1 }, "geometry": { "type": "Polygon", "coordinates": [ [ [ 733848.800145414541475, 3724959.0 ], [ 733848.919941028230824, 3724958.981422422919422 ], [ 733847.980877452413552, 3724952.954536063130945 ], [ 733864.939495211467147, 3724950.327385626267642 ], [ 733863.365486120572314, 3724940.267557054758072 ], [ 733847.021852035541087, 3724942.798733331263065 ], [ 733846.740707991877571, 3724941.005108900833875 ], [ 733839.323592993430793, 3724942.155940910801291 ], [ 733841.955895113293082, 3724959.0 ], [ 733848.800145414541475, 3724959.0 ] ] ] } }
6 | ]
7 | }
8 |
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_expected/geoms_733826_3725094.geojson:
--------------------------------------------------------------------------------
1 | {
2 | "type": "FeatureCollection",
3 | "crs": { "type": "name", "properties": { "name": "urn:ogc:def:crs:EPSG::32616" } },
4 | "features": [
5 | { "type": "Feature", "properties": { "access": "", "addr_house": "", "addr_hou_1": "", "addr_inter": "", "admin_leve": "", "aerialway": "", "aeroway": "", "amenity": "", "area": "", "barrier": "", "bicycle": "", "boundary": "", "brand": "", "bridge": "", "building": "yes", "constructi": "", "covered": "", "culvert": "", "cutting": "", "denominati": "", "disused": "", "embankment": "", "foot": "", "generator_": "", "harbour": "", "highway": "", "historic": "", "horse": "", "intermitte": "", "junction": "", "landuse": "", "layer": "", "leisure": "", "lock": "", "man_made": "", "military": "", "motorcar": "", "name": "Occlusion", "natural": "", "office": "", "oneway": "", "operator": "", "osm_id": 134680, "place": "", "population": "", "power": "", "power_sour": "", "public_tra": "", "railway": "", "ref": "", "religion": "", "route": "", "service": "", "shop": "", "sport": "", "surface": "", "tags": "\"security:classification\"=>\"UNCLASSIFIED\",\"source\"=>\"Unknown\"", "toll": "", "tourism": "", "tower_type": "", "tunnel": "", "water": "", "waterway": "", "wetland": "", "width": "", "wood": "", "z_order": -999999, "tracktype": "", "way_area": -999999.0, "origarea": 101.16730006427393, "origlen": 0, "partialDec": 0.79991629700049249, "truncated": 1 }, "geometry": { "type": "Polygon", "coordinates": [ [ [ 733869.037673469400033, 3725063.914816930424422 ], [ 733868.948807091452181, 3725060.328016446903348 ], [ 733869.699439586838707, 3725057.716118558309972 ], [ 733869.12773916113656, 3725056.037481418810785 ], [ 733870.693983497098088, 3725049.672183774411678 ], [ 733869.672710774117149, 3725049.0 ], [ 733863.279007132863626, 3725049.0 ], [ 733863.91026226838585, 3725049.595474375877529 ], [ 733866.030543527216651, 3725053.242929659318179 ], [ 733865.282733293948695, 3725054.978159906808287 ], [ 733863.307564386399463, 3725056.417098031844944 ], [ 733863.502039127284661, 3725064.046122215222567 ], [ 733869.037673469400033, 3725063.914816930424422 ] ] ] } }
6 | ]
7 | }
8 |
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_expected/geoms_733871_3724734.geojson:
--------------------------------------------------------------------------------
1 | {"type": "FeatureCollection", "crs": {"type": "name", "properties": {"name": "urn:ogc:def:crs:EPSG:32616"}}, "features": []}
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_expected/geoms_733871_3724779.geojson:
--------------------------------------------------------------------------------
1 | {"type": "FeatureCollection", "crs": {"type": "name", "properties": {"name": "urn:ogc:def:crs:EPSG:32616"}}, "features": []}
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_expected/geoms_733871_3724824.geojson:
--------------------------------------------------------------------------------
1 | {
2 | "type": "FeatureCollection",
3 | "crs": { "type": "name", "properties": { "name": "urn:ogc:def:crs:EPSG::32616" } },
4 | "features": [
5 | { "type": "Feature", "properties": { "access": "", "addr_house": "", "addr_hou_1": "", "addr_inter": "", "admin_leve": "", "aerialway": "", "aeroway": "", "amenity": "", "area": "", "barrier": "", "bicycle": "", "boundary": "", "brand": "", "bridge": "", "building": "yes", "constructi": "", "covered": "", "culvert": "", "cutting": "", "denominati": "", "disused": "", "embankment": "", "foot": "", "generator_": "", "harbour": "", "highway": "", "historic": "", "horse": "", "intermitte": "", "junction": "", "landuse": "", "layer": "", "leisure": "", "lock": "", "man_made": "", "military": "", "motorcar": "", "name": "", "natural": "", "office": "", "oneway": "", "operator": "", "osm_id": 85995, "place": "", "population": "", "power": "", "power_sour": "", "public_tra": "", "railway": "", "ref": "", "religion": "", "route": "", "service": "", "shop": "", "sport": "", "surface": "", "tags": "\"security:classification\"=>\"UNCLASSIFIED\",\"source\"=>\"Unknown\"", "toll": "", "tourism": "", "tower_type": "", "tunnel": "", "water": "", "waterway": "", "wetland": "", "width": "", "wood": "", "z_order": -999999, "tracktype": "", "way_area": -999999.0, "origarea": 208.27750543142528, "origlen": 0, "partialDec": 0.01344511640873805, "truncated": 1 }, "geometry": { "type": "Polygon", "coordinates": [ [ [ 733916.0, 3724819.008678769227117 ], [ 733914.877926233806647, 3724824.0 ], [ 733916.0, 3724824.0 ], [ 733916.0, 3724819.008678769227117 ] ] ] } }
6 | ]
7 | }
8 |
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_expected/geoms_733871_3724869.geojson:
--------------------------------------------------------------------------------
1 | {
2 | "type": "FeatureCollection",
3 | "crs": { "type": "name", "properties": { "name": "urn:ogc:def:crs:EPSG::32616" } },
4 | "features": [
5 | { "type": "Feature", "properties": { "access": "", "addr_house": "", "addr_hou_1": "", "addr_inter": "", "admin_leve": "", "aerialway": "", "aeroway": "", "amenity": "", "area": "", "barrier": "", "bicycle": "", "boundary": "", "brand": "", "bridge": "", "building": "yes", "constructi": "", "covered": "", "culvert": "", "cutting": "", "denominati": "", "disused": "", "embankment": "", "foot": "", "generator_": "", "harbour": "", "highway": "", "historic": "", "horse": "", "intermitte": "", "junction": "", "landuse": "", "layer": "", "leisure": "", "lock": "", "man_made": "", "military": "", "motorcar": "", "name": "", "natural": "", "office": "", "oneway": "", "operator": "", "osm_id": 85995, "place": "", "population": "", "power": "", "power_sour": "", "public_tra": "", "railway": "", "ref": "", "religion": "", "route": "", "service": "", "shop": "", "sport": "", "surface": "", "tags": "\"security:classification\"=>\"UNCLASSIFIED\",\"source\"=>\"Unknown\"", "toll": "", "tourism": "", "tower_type": "", "tunnel": "", "water": "", "waterway": "", "wetland": "", "width": "", "wood": "", "z_order": -999999, "tracktype": "", "way_area": -999999.0, "origarea": 208.27750543142528, "origlen": 0, "partialDec": 0.29052810106459787, "truncated": 1 }, "geometry": { "type": "Polygon", "coordinates": [ [ [ 733914.877926233806647, 3724824.0 ], [ 733913.923271550564095, 3724828.246590849943459 ], [ 733907.995921526453458, 3724826.925592739600688 ], [ 733906.674282207386568, 3724832.775251807179302 ], [ 733916.0, 3724834.853403809480369 ], [ 733916.0, 3724824.0 ], [ 733914.877926233806647, 3724824.0 ] ] ] } }
6 | ]
7 | }
8 |
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_expected/geoms_733871_3724914.geojson:
--------------------------------------------------------------------------------
1 | {"type": "FeatureCollection", "crs": {"type": "name", "properties": {"name": "urn:ogc:def:crs:EPSG:32616"}}, "features": []}
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_expected/geoms_733871_3725094.geojson:
--------------------------------------------------------------------------------
1 | {
2 | "type": "FeatureCollection",
3 | "crs": { "type": "name", "properties": { "name": "urn:ogc:def:crs:EPSG::32616" } },
4 | "features": [
5 | { "type": "Feature", "properties": { "access": "", "addr_house": "", "addr_hou_1": "", "addr_inter": "", "admin_leve": "", "aerialway": "", "aeroway": "", "amenity": "", "area": "", "barrier": "", "bicycle": "", "boundary": "", "brand": "", "bridge": "", "building": "yes", "constructi": "", "covered": "", "culvert": "", "cutting": "", "denominati": "", "disused": "", "embankment": "", "foot": "", "generator_": "", "harbour": "", "highway": "", "historic": "", "horse": "", "intermitte": "", "junction": "", "landuse": "", "layer": "", "leisure": "", "lock": "", "man_made": "", "military": "", "motorcar": "", "name": "Occlusion", "natural": "", "office": "", "oneway": "", "operator": "", "osm_id": 86015, "place": "", "population": "", "power": "", "power_sour": "", "public_tra": "", "railway": "", "ref": "", "religion": "", "route": "", "service": "", "shop": "", "sport": "", "surface": "", "tags": "\"security:classification\"=>\"UNCLASSIFIED\",\"source\"=>\"Unknown\"", "toll": "", "tourism": "", "tower_type": "", "tunnel": "", "water": "", "waterway": "", "wetland": "", "width": "", "wood": "", "z_order": -999999, "tracktype": "", "way_area": -999999.0, "origarea": 251.33309650398371, "origlen": 0, "partialDec": 0.86354391451294721, "truncated": 1 }, "geometry": { "type": "Polygon", "coordinates": [ [ [ 733892.678339317324571, 3725094.0 ], [ 733892.969486426794901, 3725093.91931293066591 ], [ 733895.139970269752666, 3725093.606038105674088 ], [ 733877.763453568681143, 3725074.182422619313002 ], [ 733875.624623022042215, 3725075.861519815400243 ], [ 733873.833603138453327, 3725081.167029351461679 ], [ 733874.96624890586827, 3725088.008793785702437 ], [ 733880.208773081074469, 3725094.0 ], [ 733892.678339317324571, 3725094.0 ] ] ] } }
6 | ]
7 | }
8 |
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_expected/geoms_733871_3725139.geojson:
--------------------------------------------------------------------------------
1 | {
2 | "type": "FeatureCollection",
3 | "crs": { "type": "name", "properties": { "name": "urn:ogc:def:crs:EPSG::32616" } },
4 | "features": [
5 | { "type": "Feature", "properties": { "access": "", "addr_house": "", "addr_hou_1": "", "addr_inter": "", "admin_leve": "", "aerialway": "", "aeroway": "", "amenity": "", "area": "", "barrier": "", "bicycle": "", "boundary": "", "brand": "", "bridge": "", "building": "yes", "constructi": "", "covered": "", "culvert": "", "cutting": "", "denominati": "", "disused": "", "embankment": "", "foot": "", "generator_": "", "harbour": "", "highway": "", "historic": "", "horse": "", "intermitte": "", "junction": "", "landuse": "", "layer": "", "leisure": "", "lock": "", "man_made": "", "military": "", "motorcar": "", "name": "Occlusion", "natural": "", "office": "", "oneway": "", "operator": "", "osm_id": 86015, "place": "", "population": "", "power": "", "power_sour": "", "public_tra": "", "railway": "", "ref": "", "religion": "", "route": "", "service": "", "shop": "", "sport": "", "surface": "", "tags": "\"security:classification\"=>\"UNCLASSIFIED\",\"source\"=>\"Unknown\"", "toll": "", "tourism": "", "tower_type": "", "tunnel": "", "water": "", "waterway": "", "wetland": "", "width": "", "wood": "", "z_order": -999999, "tracktype": "", "way_area": -999999.0, "origarea": 251.33309650398371, "origlen": 0, "partialDec": 0.13645608548626761, "truncated": 1 }, "geometry": { "type": "Polygon", "coordinates": [ [ [ 733884.809803572017699, 3725099.258101164363325 ], [ 733887.820667246589437, 3725100.263786776456982 ], [ 733887.97904269839637, 3725096.81619278434664 ], [ 733889.399402834707871, 3725094.908708232920617 ], [ 733892.678339317324571, 3725094.0 ], [ 733880.208773081074469, 3725094.0 ], [ 733884.809803572017699, 3725099.258101164363325 ] ] ] } }
6 | ]
7 | }
8 |
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_expected/geoms_733916_3724734.geojson:
--------------------------------------------------------------------------------
1 | {"type": "FeatureCollection", "crs": {"type": "name", "properties": {"name": "urn:ogc:def:crs:EPSG:32616"}}, "features": []}
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_expected/geoms_733916_3724779.geojson:
--------------------------------------------------------------------------------
1 | {"type": "FeatureCollection", "crs": {"type": "name", "properties": {"name": "urn:ogc:def:crs:EPSG:32616"}}, "features": []}
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_expected/geoms_733916_3724824.geojson:
--------------------------------------------------------------------------------
1 | {
2 | "type": "FeatureCollection",
3 | "crs": { "type": "name", "properties": { "name": "urn:ogc:def:crs:EPSG::32616" } },
4 | "features": [
5 | { "type": "Feature", "properties": { "access": "", "addr_house": "", "addr_hou_1": "", "addr_inter": "", "admin_leve": "", "aerialway": "", "aeroway": "", "amenity": "", "area": "", "barrier": "", "bicycle": "", "boundary": "", "brand": "", "bridge": "", "building": "yes", "constructi": "", "covered": "", "culvert": "", "cutting": "", "denominati": "", "disused": "", "embankment": "", "foot": "", "generator_": "", "harbour": "", "highway": "", "historic": "", "horse": "", "intermitte": "", "junction": "", "landuse": "", "layer": "", "leisure": "", "lock": "", "man_made": "", "military": "", "motorcar": "", "name": "", "natural": "", "office": "", "oneway": "", "operator": "", "osm_id": 85995, "place": "", "population": "", "power": "", "power_sour": "", "public_tra": "", "railway": "", "ref": "", "religion": "", "route": "", "service": "", "shop": "", "sport": "", "surface": "", "tags": "\"security:classification\"=>\"UNCLASSIFIED\",\"source\"=>\"Unknown\"", "toll": "", "tourism": "", "tower_type": "", "tunnel": "", "water": "", "waterway": "", "wetland": "", "width": "", "wood": "", "z_order": -999999, "tracktype": "", "way_area": -999999.0, "origarea": 208.27750543142528, "origlen": 0, "partialDec": 0.26662346769845036, "truncated": 1 }, "geometry": { "type": "Polygon", "coordinates": [ [ [ 733925.038212854298763, 3724824.0 ], [ 733926.087521769106388, 3724819.343201762996614 ], [ 733916.41197619389277, 3724817.176084883511066 ], [ 733916.0, 3724819.008678769227117 ], [ 733916.0, 3724824.0 ], [ 733925.038212854298763, 3724824.0 ] ] ] } }
6 | ]
7 | }
8 |
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_expected/geoms_733916_3724914.geojson:
--------------------------------------------------------------------------------
1 | {"type": "FeatureCollection", "crs": {"type": "name", "properties": {"name": "urn:ogc:def:crs:EPSG:32616"}}, "features": []}
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_expected/geoms_733916_3724959.geojson:
--------------------------------------------------------------------------------
1 | {"type": "FeatureCollection", "crs": {"type": "name", "properties": {"name": "urn:ogc:def:crs:EPSG:32616"}}, "features": []}
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_expected/geoms_733916_3725004.geojson:
--------------------------------------------------------------------------------
1 | {"type": "FeatureCollection", "crs": {"type": "name", "properties": {"name": "urn:ogc:def:crs:EPSG:32616"}}, "features": []}
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_expected/geoms_733916_3725049.geojson:
--------------------------------------------------------------------------------
1 | {"type": "FeatureCollection", "crs": {"type": "name", "properties": {"name": "urn:ogc:def:crs:EPSG:32616"}}, "features": []}
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_expected/geoms_733916_3725094.geojson:
--------------------------------------------------------------------------------
1 | {"type": "FeatureCollection", "crs": {"type": "name", "properties": {"name": "urn:ogc:def:crs:EPSG:32616"}}, "features": []}
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_expected/geoms_733916_3725139.geojson:
--------------------------------------------------------------------------------
1 | {
2 | "type": "FeatureCollection",
3 | "crs": { "type": "name", "properties": { "name": "urn:ogc:def:crs:EPSG::32616" } },
4 | "features": [
5 | { "type": "Feature", "properties": { "access": "", "addr_house": "", "addr_hou_1": "", "addr_inter": "", "admin_leve": "", "aerialway": "", "aeroway": "", "amenity": "", "area": "", "barrier": "", "bicycle": "", "boundary": "", "brand": "", "bridge": "", "building": "yes", "constructi": "", "covered": "", "culvert": "", "cutting": "", "denominati": "", "disused": "", "embankment": "", "foot": "", "generator_": "", "harbour": "", "highway": "", "historic": "", "horse": "", "intermitte": "", "junction": "", "landuse": "", "layer": "", "leisure": "", "lock": "", "man_made": "", "military": "", "motorcar": "", "name": "Occlusion", "natural": "", "office": "", "oneway": "", "operator": "", "osm_id": 134690, "place": "", "population": "", "power": "", "power_sour": "", "public_tra": "", "railway": "", "ref": "", "religion": "", "route": "", "service": "", "shop": "", "sport": "", "surface": "", "tags": "\"security:classification\"=>\"UNCLASSIFIED\",\"source\"=>\"Unknown\"", "toll": "", "tourism": "", "tower_type": "", "tunnel": "", "water": "", "waterway": "", "wetland": "", "width": "", "wood": "", "z_order": -999999, "tracktype": "", "way_area": -999999.0, "origarea": 75.233357615263444, "origlen": 0, "partialDec": 0.5426079647770381, "truncated": 1 }, "geometry": { "type": "Polygon", "coordinates": [ [ [ 733933.053643652936444, 3725139.0 ], [ 733933.981720102136023, 3725136.448536148294806 ], [ 733932.724451179732569, 3725136.617617703508586 ], [ 733929.566822279826738, 3725137.062165400478989 ], [ 733928.701306592440233, 3725138.295111690182239 ], [ 733927.683588467072695, 3725137.016209401190281 ], [ 733927.95271526533179, 3725134.736601110547781 ], [ 733928.741625818191096, 3725132.458578986581415 ], [ 733926.893847053404897, 3725130.959658264648169 ], [ 733925.461097773630172, 3725129.570747075602412 ], [ 733925.616007869830355, 3725131.971682267263532 ], [ 733924.303450533887371, 3725134.02606556750834 ], [ 733924.030880918144248, 3725136.827193052973598 ], [ 733923.15020942944102, 3725138.681254582013935 ], [ 733923.05790709448047, 3725139.0 ], [ 733933.053643652936444, 3725139.0 ] ] ] } }
6 | ]
7 | }
8 |
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_expected/geoms_733961_3724734.geojson:
--------------------------------------------------------------------------------
1 | {
2 | "type": "FeatureCollection",
3 | "crs": { "type": "name", "properties": { "name": "urn:ogc:def:crs:EPSG::32616" } },
4 | "features": [
5 | { "type": "Feature", "properties": { "access": "", "addr_house": "", "addr_hou_1": "", "addr_inter": "", "admin_leve": "", "aerialway": "", "aeroway": "", "amenity": "", "area": "", "barrier": "", "bicycle": "", "boundary": "", "brand": "", "bridge": "", "building": "yes", "constructi": "", "covered": "", "culvert": "", "cutting": "", "denominati": "", "disused": "", "embankment": "", "foot": "", "generator_": "", "harbour": "", "highway": "", "historic": "", "horse": "", "intermitte": "", "junction": "", "landuse": "", "layer": "", "leisure": "", "lock": "", "man_made": "", "military": "", "motorcar": "", "name": "Occlusion", "natural": "", "office": "", "oneway": "", "operator": "", "osm_id": 92642, "place": "", "population": "", "power": "", "power_sour": "", "public_tra": "", "railway": "", "ref": "", "religion": "", "route": "", "service": "", "shop": "", "sport": "", "surface": "", "tags": "\"security:classification\"=>\"UNCLASSIFIED\",\"source\"=>\"Unknown\"", "toll": "", "tourism": "", "tower_type": "", "tunnel": "", "water": "", "waterway": "", "wetland": "", "width": "", "wood": "", "z_order": -999999, "tracktype": "", "way_area": -999999.0, "origarea": 272.76725138138551, "origlen": 0, "partialDec": 0.50582372917952123, "truncated": 1 }, "geometry": { "type": "Polygon", "coordinates": [ [ [ 734006.0, 3724733.314095525071025 ], [ 734005.036672754795291, 3724732.308777935802937 ], [ 734004.700672700069845, 3724728.960097201168537 ], [ 733985.17671379854437, 3724727.518070545978844 ], [ 733980.793273733812384, 3724729.49750511161983 ], [ 733981.172765030758455, 3724734.0 ], [ 734006.0, 3724734.0 ], [ 734006.0, 3724733.314095525071025 ] ] ] } }
6 | ]
7 | }
8 |
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_expected/geoms_733961_3724779.geojson:
--------------------------------------------------------------------------------
1 | {
2 | "type": "FeatureCollection",
3 | "crs": { "type": "name", "properties": { "name": "urn:ogc:def:crs:EPSG::32616" } },
4 | "features": [
5 | { "type": "Feature", "properties": { "access": "", "addr_house": "", "addr_hou_1": "", "addr_inter": "", "admin_leve": "", "aerialway": "", "aeroway": "", "amenity": "", "area": "", "barrier": "", "bicycle": "", "boundary": "", "brand": "", "bridge": "", "building": "yes", "constructi": "", "covered": "", "culvert": "", "cutting": "", "denominati": "", "disused": "", "embankment": "", "foot": "", "generator_": "", "harbour": "", "highway": "", "historic": "", "horse": "", "intermitte": "", "junction": "", "landuse": "", "layer": "", "leisure": "", "lock": "", "man_made": "", "military": "", "motorcar": "", "name": "Occlusion", "natural": "", "office": "", "oneway": "", "operator": "", "osm_id": 92642, "place": "", "population": "", "power": "", "power_sour": "", "public_tra": "", "railway": "", "ref": "", "religion": "", "route": "", "service": "", "shop": "", "sport": "", "surface": "", "tags": "\"security:classification\"=>\"UNCLASSIFIED\",\"source\"=>\"Unknown\"", "toll": "", "tourism": "", "tower_type": "", "tunnel": "", "water": "", "waterway": "", "wetland": "", "width": "", "wood": "", "z_order": -999999, "tracktype": "", "way_area": -999999.0, "origarea": 272.76725138138551, "origlen": 0, "partialDec": 0.49174194516610154, "truncated": 1 }, "geometry": { "type": "Polygon", "coordinates": [ [ [ 733998.172171951970086, 3724738.955371181480587 ], [ 734005.087085773120634, 3724738.990968229714781 ], [ 734006.0, 3724735.776267854962498 ], [ 734006.0, 3724734.0 ], [ 733981.172765030758455, 3724734.0 ], [ 733981.333166613709182, 3724735.903093201573938 ], [ 733988.48206047678832, 3724740.80528543330729 ], [ 733992.534389728447422, 3724740.981871583964676 ], [ 733996.584479778190143, 3724740.86985838599503 ], [ 733998.172171951970086, 3724738.955371181480587 ] ] ] } }
6 | ]
7 | }
8 |
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_expected/geoms_733961_3724824.geojson:
--------------------------------------------------------------------------------
1 | {"type": "FeatureCollection", "crs": {"type": "name", "properties": {"name": "urn:ogc:def:crs:EPSG:32616"}}, "features": []}
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_expected/geoms_733961_3724869.geojson:
--------------------------------------------------------------------------------
1 | {
2 | "type": "FeatureCollection",
3 | "crs": { "type": "name", "properties": { "name": "urn:ogc:def:crs:EPSG::32616" } },
4 | "features": [
5 | { "type": "Feature", "properties": { "access": "", "addr_house": "", "addr_hou_1": "", "addr_inter": "", "admin_leve": "", "aerialway": "", "aeroway": "", "amenity": "", "area": "", "barrier": "", "bicycle": "", "boundary": "", "brand": "", "bridge": "", "building": "yes", "constructi": "", "covered": "", "culvert": "", "cutting": "", "denominati": "", "disused": "", "embankment": "", "foot": "", "generator_": "", "harbour": "", "highway": "", "historic": "", "horse": "", "intermitte": "", "junction": "", "landuse": "", "layer": "", "leisure": "", "lock": "", "man_made": "", "military": "", "motorcar": "", "name": "Occlusion", "natural": "", "office": "", "oneway": "", "operator": "", "osm_id": 85996, "place": "", "population": "", "power": "", "power_sour": "", "public_tra": "", "railway": "", "ref": "", "religion": "", "route": "", "service": "", "shop": "", "sport": "", "surface": "", "tags": "\"security:classification\"=>\"UNCLASSIFIED\",\"source\"=>\"Unknown\"", "toll": "", "tourism": "", "tower_type": "", "tunnel": "", "water": "", "waterway": "", "wetland": "", "width": "", "wood": "", "z_order": -999999, "tracktype": "", "way_area": -999999.0, "origarea": 147.78075500471959, "origlen": 0, "partialDec": 0.089709530921962946, "truncated": 1 }, "geometry": { "type": "Polygon", "coordinates": [ [ [ 733961.0, 3724837.512521461583674 ], [ 733961.184794776490889, 3724835.747843090444803 ], [ 733963.223460652050562, 3724833.61130030779168 ], [ 733963.607368887402117, 3724830.812890837434679 ], [ 733962.502454621368088, 3724828.921473243273795 ], [ 733961.0, 3724829.087063139304519 ], [ 733961.0, 3724837.512521461583674 ] ] ] } }
6 | ]
7 | }
8 |
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_expected/geoms_733961_3724914.geojson:
--------------------------------------------------------------------------------
1 | {"type": "FeatureCollection", "crs": {"type": "name", "properties": {"name": "urn:ogc:def:crs:EPSG:32616"}}, "features": []}
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_expected/geoms_733961_3724959.geojson:
--------------------------------------------------------------------------------
1 | {"type": "FeatureCollection", "crs": {"type": "name", "properties": {"name": "urn:ogc:def:crs:EPSG:32616"}}, "features": []}
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_expected/geoms_733961_3725004.geojson:
--------------------------------------------------------------------------------
1 | {"type": "FeatureCollection", "crs": {"type": "name", "properties": {"name": "urn:ogc:def:crs:EPSG:32616"}}, "features": []}
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_expected/geoms_733961_3725049.geojson:
--------------------------------------------------------------------------------
1 | {
2 | "type": "FeatureCollection",
3 | "crs": { "type": "name", "properties": { "name": "urn:ogc:def:crs:EPSG::32616" } },
4 | "features": [
5 | { "type": "Feature", "properties": { "access": "", "addr_house": "", "addr_hou_1": "", "addr_inter": "", "admin_leve": "", "aerialway": "", "aeroway": "", "amenity": "", "area": "", "barrier": "", "bicycle": "", "boundary": "", "brand": "", "bridge": "", "building": "yes", "constructi": "", "covered": "", "culvert": "", "cutting": "", "denominati": "", "disused": "", "embankment": "", "foot": "", "generator_": "", "harbour": "", "highway": "", "historic": "", "horse": "", "intermitte": "", "junction": "", "landuse": "", "layer": "", "leisure": "", "lock": "", "man_made": "", "military": "", "motorcar": "", "name": "Occlusion", "natural": "", "office": "", "oneway": "", "operator": "", "osm_id": 86607, "place": "", "population": "", "power": "", "power_sour": "", "public_tra": "", "railway": "", "ref": "", "religion": "", "route": "", "service": "", "shop": "", "sport": "", "surface": "", "tags": "\"security:classification\"=>\"UNCLASSIFIED\",\"source\"=>\"Unknown\"", "toll": "", "tourism": "", "tower_type": "", "tunnel": "", "water": "", "waterway": "", "wetland": "", "width": "", "wood": "", "z_order": -999999, "tracktype": "", "way_area": -999999.0, "origarea": 109.09963485201257, "origlen": 0, "partialDec": 1.0, "truncated": 0 }, "geometry": { "type": "Polygon", "coordinates": [ [ [ 733984.247434898978099, 3725029.170712447725236 ], [ 733984.469720786786638, 3725037.177755209617317 ], [ 733988.266932822414674, 3725039.434536231681705 ], [ 733990.833932525943965, 3725040.751259885728359 ], [ 733991.039521950762719, 3725035.751105143688619 ], [ 733997.483796045300551, 3725035.664246738888323 ], [ 733997.398187489830889, 3725028.903508787043393 ], [ 733984.247434898978099, 3725029.170712447725236 ] ] ] } }
6 | ]
7 | }
8 |
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_expected/geoms_734006_3724824.geojson:
--------------------------------------------------------------------------------
1 | {"type": "FeatureCollection", "crs": {"type": "name", "properties": {"name": "urn:ogc:def:crs:EPSG:32616"}}, "features": []}
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_expected/geoms_734006_3724869.geojson:
--------------------------------------------------------------------------------
1 | {"type": "FeatureCollection", "crs": {"type": "name", "properties": {"name": "urn:ogc:def:crs:EPSG:32616"}}, "features": []}
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_expected/geoms_734006_3724914.geojson:
--------------------------------------------------------------------------------
1 | {"type": "FeatureCollection", "crs": {"type": "name", "properties": {"name": "urn:ogc:def:crs:EPSG:32616"}}, "features": []}
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_expected/geoms_734006_3724959.geojson:
--------------------------------------------------------------------------------
1 | {
2 | "type": "FeatureCollection",
3 | "crs": { "type": "name", "properties": { "name": "urn:ogc:def:crs:EPSG::32616" } },
4 | "features": [
5 | { "type": "Feature", "properties": { "access": "", "addr_house": "", "addr_hou_1": "", "addr_inter": "", "admin_leve": "", "aerialway": "", "aeroway": "", "amenity": "", "area": "", "barrier": "", "bicycle": "", "boundary": "", "brand": "", "bridge": "", "building": "yes", "constructi": "", "covered": "", "culvert": "", "cutting": "", "denominati": "", "disused": "", "embankment": "", "foot": "", "generator_": "", "harbour": "", "highway": "", "historic": "", "horse": "", "intermitte": "", "junction": "", "landuse": "", "layer": "", "leisure": "", "lock": "", "man_made": "", "military": "", "motorcar": "", "name": "", "natural": "", "office": "", "oneway": "", "operator": "", "osm_id": 86004, "place": "", "population": "", "power": "", "power_sour": "", "public_tra": "", "railway": "", "ref": "", "religion": "", "route": "", "service": "", "shop": "", "sport": "", "surface": "", "tags": "\"security:classification\"=>\"UNCLASSIFIED\",\"source\"=>\"Unknown\"", "toll": "", "tourism": "", "tower_type": "", "tunnel": "", "water": "", "waterway": "", "wetland": "", "width": "", "wood": "", "z_order": -999999, "tracktype": "", "way_area": -999999.0, "origarea": 245.87085671707746, "origlen": 0, "partialDec": 0.20134007160948594, "truncated": 1 }, "geometry": { "type": "Polygon", "coordinates": [ [ [ 734039.951275395345874, 3724957.361701209563762 ], [ 734020.141815275885165, 3724955.846008125692606 ], [ 734019.899857406038791, 3724959.0 ], [ 734041.972572033060715, 3724959.0 ], [ 734039.951275395345874, 3724957.361701209563762 ] ] ] } }
6 | ]
7 | }
8 |
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_expected/geoms_734006_3725004.geojson:
--------------------------------------------------------------------------------
1 | {
2 | "type": "FeatureCollection",
3 | "crs": { "type": "name", "properties": { "name": "urn:ogc:def:crs:EPSG::32616" } },
4 | "features": [
5 | { "type": "Feature", "properties": { "access": "", "addr_house": "", "addr_hou_1": "", "addr_inter": "", "admin_leve": "", "aerialway": "", "aeroway": "", "amenity": "", "area": "", "barrier": "", "bicycle": "", "boundary": "", "brand": "", "bridge": "", "building": "yes", "constructi": "", "covered": "", "culvert": "", "cutting": "", "denominati": "", "disused": "", "embankment": "", "foot": "", "generator_": "", "harbour": "", "highway": "", "historic": "", "horse": "", "intermitte": "", "junction": "", "landuse": "", "layer": "", "leisure": "", "lock": "", "man_made": "", "military": "", "motorcar": "", "name": "", "natural": "", "office": "", "oneway": "", "operator": "", "osm_id": 86004, "place": "", "population": "", "power": "", "power_sour": "", "public_tra": "", "railway": "", "ref": "", "religion": "", "route": "", "service": "", "shop": "", "sport": "", "surface": "", "tags": "\"security:classification\"=>\"UNCLASSIFIED\",\"source\"=>\"Unknown\"", "toll": "", "tourism": "", "tower_type": "", "tunnel": "", "water": "", "waterway": "", "wetland": "", "width": "", "wood": "", "z_order": -999999, "tracktype": "", "way_area": -999999.0, "origarea": 245.87085671707746, "origlen": 0, "partialDec": 0.79865992839011157, "truncated": 1 }, "geometry": { "type": "Polygon", "coordinates": [ [ [ 734019.899857406038791, 3724959.0 ], [ 734019.51552347233519, 3724964.009905667975545 ], [ 734026.204987838980742, 3724964.528337045572698 ], [ 734026.000307232956402, 3724967.20904346043244 ], [ 734028.35346275055781, 3724967.399663022719324 ], [ 734028.161849318654276, 3724969.925317186396569 ], [ 734033.76750397705473, 3724970.350708946119994 ], [ 734033.998593332478777, 3724967.348806756082922 ], [ 734043.10642178892158, 3724968.048365659546107 ], [ 734043.692446619272232, 3724960.393990571144968 ], [ 734041.972572033060715, 3724959.0 ], [ 734019.899857406038791, 3724959.0 ] ] ] } }
6 | ]
7 | }
8 |
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_expected/geoms_734006_3725049.geojson:
--------------------------------------------------------------------------------
1 | {"type": "FeatureCollection", "crs": {"type": "name", "properties": {"name": "urn:ogc:def:crs:EPSG:32616"}}, "features": []}
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_filled_expected/empty_geoms_-101.003_41.774.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/vectortile_test_filled_expected/empty_geoms_-101.003_41.774.tif
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_filled_expected/empty_geoms_-101.044_41.691.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/vectortile_test_filled_expected/empty_geoms_-101.044_41.691.tif
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_filled_expected/empty_geoms_-101.044_41.732.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/vectortile_test_filled_expected/empty_geoms_-101.044_41.732.tif
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_filled_expected/empty_geoms_-101.085_41.774.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/vectortile_test_filled_expected/empty_geoms_-101.085_41.774.tif
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_filled_expected/empty_geoms_-101.127_41.774.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/vectortile_test_filled_expected/empty_geoms_-101.127_41.774.tif
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_filled_expected/geoms_-101.044_41.774.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/vectortile_test_filled_expected/geoms_-101.044_41.774.tif
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_filled_expected/geoms_-101.085_41.691.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/vectortile_test_filled_expected/geoms_-101.085_41.691.tif
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_filled_expected/geoms_-101.085_41.732.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/vectortile_test_filled_expected/geoms_-101.085_41.732.tif
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_filled_expected/geoms_-101.127_41.691.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/vectortile_test_filled_expected/geoms_-101.127_41.691.tif
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_filled_expected/geoms_-101.127_41.732.tif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/data/vectortile_test_filled_expected/geoms_-101.127_41.732.tif
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_nonfilled_expected/geoms_-101.003_41.774.geojson:
--------------------------------------------------------------------------------
1 | {"type": "FeatureCollection", "crs": {"type": "name", "properties": {"name": "urn:ogc:def:crs:EPSG:4326"}}, "features": []}
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_nonfilled_expected/geoms_-101.044_41.691.geojson:
--------------------------------------------------------------------------------
1 | {"type": "FeatureCollection", "crs": {"type": "name", "properties": {"name": "urn:ogc:def:crs:EPSG:4326"}}, "features": []}
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_nonfilled_expected/geoms_-101.044_41.732.geojson:
--------------------------------------------------------------------------------
1 | {"type": "FeatureCollection", "crs": {"type": "name", "properties": {"name": "urn:ogc:def:crs:EPSG:4326"}}, "features": []}
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_nonfilled_expected/geoms_-101.085_41.774.geojson:
--------------------------------------------------------------------------------
1 | {"type": "FeatureCollection", "crs": {"type": "name", "properties": {"name": "urn:ogc:def:crs:EPSG:4326"}}, "features": []}
--------------------------------------------------------------------------------
/solaris/data/vectortile_test_nonfilled_expected/geoms_-101.127_41.774.geojson:
--------------------------------------------------------------------------------
1 | {"type": "FeatureCollection", "crs": {"type": "name", "properties": {"name": "urn:ogc:def:crs:EPSG:4326"}}, "features": []}
--------------------------------------------------------------------------------
/solaris/data/zoo/model_reference.yml:
--------------------------------------------------------------------------------
1 | # AN ITEM MUST BE ADDED TO BOTH model_paths AND model_urls FOR EACH MODEL
2 | # THAT SOLARIS CAN USE BY DEFAULT
3 |
4 | model_paths:
5 | placeholder1: path1
6 | placeholder2: path2
7 |
8 | model_urls:
9 | placeholder1: https://path/to/model1.pt
10 | placeholder2: https://path/to/model2.h5
11 |
--------------------------------------------------------------------------------
/solaris/eval/__init__.py:
--------------------------------------------------------------------------------
1 | from . import base, iou, scot, challenges, pixel, vector
2 |
--------------------------------------------------------------------------------
/solaris/nets/__init__.py:
--------------------------------------------------------------------------------
1 | import os
2 |
3 | weights_dir = os.path.join(os.path.abspath(os.path.dirname(__file__)),
4 | 'weights')
5 |
6 | from . import callbacks, datagen, infer, losses, metrics, model_io
7 | from . import optimizers, train, transform, zoo
8 |
9 |
10 | if not os.path.isdir(weights_dir):
11 | os.mkdir(weights_dir)
12 |
--------------------------------------------------------------------------------
/solaris/preproc/__init__.py:
--------------------------------------------------------------------------------
1 | from . import pipesegment, image, sar, optical, label
2 |
--------------------------------------------------------------------------------
/solaris/raster/__init__.py:
--------------------------------------------------------------------------------
1 | from . import image
2 |
--------------------------------------------------------------------------------
/solaris/tile/__init__.py:
--------------------------------------------------------------------------------
1 | from . import raster_tile, vector_tile
2 |
--------------------------------------------------------------------------------
/solaris/utils/__init__.py:
--------------------------------------------------------------------------------
1 | from . import cli, config, core, geo, io, tile, data
2 |
--------------------------------------------------------------------------------
/solaris/utils/cli.py:
--------------------------------------------------------------------------------
1 | def _func_wrapper(func_to_call, arg_dict):
2 | return func_to_call(**arg_dict)
3 |
--------------------------------------------------------------------------------
/solaris/utils/config.py:
--------------------------------------------------------------------------------
1 | import yaml
2 | from ..nets import zoo
3 |
4 |
5 | def parse(path):
6 | """Parse a config file for running a model.
7 |
8 | Arguments
9 | ---------
10 | path : str
11 | Path to the YAML-formatted config file to parse.
12 |
13 | Returns
14 | -------
15 | config : dict
16 | A `dict` containing the information from the config file at `path`.
17 |
18 | """
19 | with open(path, 'r') as f:
20 | config = yaml.safe_load(f)
21 | f.close()
22 | if not config['train'] and not config['infer']:
23 | raise ValueError('"train", "infer", or both must be true.')
24 | if config['train'] and config['training_data_csv'] is None:
25 | raise ValueError('"training_data_csv" must be provided if training.')
26 | if config['infer'] and config['inference_data_csv'] is None:
27 | raise ValueError('"inference_data_csv" must be provided if "infer".')
28 | if config['training']['lr'] is not None:
29 | config['training']['lr'] = float(config['training']['lr'])
30 |
31 | # TODO: IMPLEMENT UPDATING VALUES BASED ON EMPTY ELEMENTS HERE!
32 |
33 | if config['validation_augmentation'] is not None \
34 | and config['inference_augmentation'] is None:
35 | config['inference_augmentation'] = config['validation_augmentation']
36 |
37 | return config
38 |
--------------------------------------------------------------------------------
/solaris/utils/log.py:
--------------------------------------------------------------------------------
1 | import logging
2 |
3 |
4 | def _get_logging_level(level_int):
5 | """Convert a logging level integer into a log level."""
6 | if isinstance(level_int, bool):
7 | level_int = int(level_int)
8 | if level_int < 0:
9 | return logging.CRITICAL + 1 # silence all possible outputs
10 | elif level_int == 0:
11 | return logging.WARNING
12 | elif level_int == 1:
13 | return logging.INFO
14 | elif level_int == 2:
15 | return logging.DEBUG
16 | elif level_int in [10, 20, 30, 40, 50]: # if user provides the logger int
17 | return level_int
18 | elif isinstance(level_int, int): # if it's an int but not one of the above
19 | return level_int
20 | else:
21 | raise ValueError(f"logging level set to {level_int}, "
22 | "but it must be an integer <= 2.")
23 |
--------------------------------------------------------------------------------
/solaris/utils/raster.py:
--------------------------------------------------------------------------------
1 | import torch
2 | import numpy as np
3 | import tensorflow as tf
4 |
5 |
6 | def reorder_axes(arr, target='tensorflow'):
7 | """Check order of axes in an array or tensor and convert to desired format.
8 |
9 | Arguments
10 | ---------
11 | arr : :class:`numpy.array` or :class:`torch.Tensor` or :class:`tensorflow.Tensor`
12 | target : str, optional
13 | Desired axis order type. Possible values:
14 | - ``'tensorflow'`` (default): ``[N, Y, X, C]`` or ``[Y, X, C]``
15 | - ``'torch'`` : ``[N, C, Y, X]`` or ``[C, Y, X]``
16 |
17 | Returns
18 | -------
19 | out_arr : an object of the same class as `arr` with axes in the desired
20 | order.
21 | """
22 |
23 | if isinstance(arr, torch.Tensor) or isinstance(arr, np.ndarray):
24 | axes = list(arr.shape)
25 | elif isinstance(arr, tf.Tensor):
26 | axes = arr.get_shape().as_list()
27 |
28 | if isinstance(arr, torch.Tensor):
29 | if len(axes) == 3:
30 | if target == 'tensorflow' and axes[0] < axes[1]:
31 | arr = arr.permute(1, 2, 0)
32 | elif target == 'torch' and axes[2] < axes[1]:
33 | arr = arr.permute(2, 0, 1)
34 | elif len(axes) == 4:
35 | if target == 'tensorflow' and axes[1] < axes[2]:
36 | arr = arr.permute(0, 2, 3, 1)
37 | elif target == 'torch' and axes[3] < axes[2]:
38 | arr = arr.permute(0, 3, 1, 2)
39 |
40 | elif isinstance(arr, np.ndarray):
41 | if len(axes) == 3:
42 | if target == 'tensorflow' and axes[0] < axes[1]:
43 | arr = np.moveaxis(arr, 0, -1)
44 | elif target == 'torch' and axes[2] < axes[1]:
45 | arr = np.moveaxis(arr, 2, 0)
46 | elif len(axes) == 4:
47 | if target == 'tensorflow' and axes[1] < axes[2]:
48 | arr = np.moveaxis(arr, 1, -1)
49 | elif target == 'torch' and axes[3] < axes[2]:
50 | arr = np.moveaxis(arr, 3, 1)
51 |
52 | elif isinstance(arr, tf.Tensor):
53 | # permutation is obnoxious in tensorflow; convert to numpy, permute,
54 | # convert back.
55 | np_version = arr.eval()
56 | np_version = reorder_axes(np_version, target=target)
57 | arr = tf.convert_to_tensor(np_version)
58 |
59 | return arr
60 |
--------------------------------------------------------------------------------
/solaris/utils/tdigest.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/solaris/utils/tdigest.py
--------------------------------------------------------------------------------
/solaris/vector/__init__.py:
--------------------------------------------------------------------------------
1 | from . import graph, mask, polygon
2 |
--------------------------------------------------------------------------------
/static/sol_logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/static/sol_logo.png
--------------------------------------------------------------------------------
/tests/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/tests/__init__.py
--------------------------------------------------------------------------------
/tests/test_cli/compare.py:
--------------------------------------------------------------------------------
1 | import os
2 | import numpy as np
3 | import skimage
4 | import pickle
5 | import networkx as nx
6 | import sys
7 |
8 | im_fnames = ['sample_fp_mask.tif',
9 | 'sample_fbc_mask.tif',
10 | 'sample_c_mask.tif',
11 | 'sample_b_inner_mask.tif',
12 | 'sample_b_outer10_mask.tif']
13 |
14 |
15 | def main(path):
16 | os.chdir(path) # set to the directory containing this script
17 |
18 | # compare expected mask results and truth images
19 | for im_fname in im_fnames:
20 | truth_im = skimage.io.imread(os.path.join('expected', im_fname))
21 | result_im = skimage.io.imread(os.path.join('results', im_fname))
22 | assert np.array_equal(truth_im, result_im)
23 |
24 | # compare graphs
25 | with open(os.path.join('expected', 'sample_graph.pkl'), 'rb') as f:
26 | truth_graph = pickle.load(f)
27 | f.close()
28 | with open(os.path.join('results', 'sample_graph.pkl'), 'rb') as f:
29 | result_graph = pickle.load(f)
30 | f.close()
31 |
32 | assert nx.is_isomorphic(truth_graph, result_graph)
33 |
34 |
35 | if __name__ == '__main__':
36 | main(sys.argv[1])
37 |
--------------------------------------------------------------------------------
/tests/test_cli/test_cli.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | #set -ev # if any command in the script fails, the whole thing will fail
4 |
5 | # empty output space
6 | rm -rf cw-geodata/tests/test_cli/results && mkdir cw-geodata/tests/test_cli/results
7 |
8 | # run tests
9 | geotransform_footprints -s cw-geodata/cw_geodata/data/geotiff_labels.geojson -r cw-geodata/cw_geodata/data/sample_geotiff.tif -o cw-geodata/tests/test_cli/results/to_px_test.geojson -p -d 0
10 | make_graphs -s cw-geodata/cw_geodata/data/sample_roads.geojson -o cw-geodata/tests/test_cli/results/sample_graph.pkl
11 | make_masks -s cw-geodata/cw_geodata/data/sample.csv -r cw-geodata/cw_geodata/data/sample_geotiff.tif -o cw-geodata/tests/test_cli/results/sample_fp_mask.tif -g PolygonWKT_Pix -f
12 | make_masks -s cw-geodata/cw_geodata/data/sample.csv -r cw-geodata/cw_geodata/data/sample_geotiff.tif -o cw-geodata/tests/test_cli/results/sample_b_inner_mask.tif -g PolygonWKT_Pix -e
13 | make_masks -s cw-geodata/cw_geodata/data/sample.csv -r cw-geodata/cw_geodata/data/sample_geotiff.tif -o cw-geodata/tests/test_cli/results/sample_b_outer10_mask.tif -g PolygonWKT_Pix -e -et outer -ew 10
14 | make_masks -s cw-geodata/cw_geodata/data/sample.csv -r cw-geodata/cw_geodata/data/sample_geotiff.tif -o cw-geodata/tests/test_cli/results/sample_c_mask.tif -g PolygonWKT_Pix -c -cs 10
15 | make_masks -s cw-geodata/cw_geodata/data/sample.csv -r cw-geodata/cw_geodata/data/sample_geotiff.tif -o cw-geodata/tests/test_cli/results/sample_fbc_mask.tif -g PolygonWKT_Pix -f -c -cs 15 -e -et outer -ew 5
16 |
17 | diff cw-geodata/tests/test_cli/results/to_px_test.geojson cw-geodata/tests/test_cli/expected/gj_to_px_result.geojson
18 | # run python-based testing of outputs from other CLI runs
19 | python cw-geodata/tests/test_cli/compare.py cw-geodata/tests/test_cli
20 |
--------------------------------------------------------------------------------
/tests/test_eval/iou_test.py:
--------------------------------------------------------------------------------
1 | from solaris.eval.iou import calculate_iou, process_iou
2 | from solaris import data
3 | from shapely.geometry import Polygon
4 |
5 |
6 | class TestEvalFuncs(object):
7 | def test_overlap(self):
8 | gt_gdf = data.gt_gdf()
9 | pred_poly = Polygon(((736348.0, 3722762.5),
10 | (736353.0, 3722762.0),
11 | (736354.0, 3722759.0),
12 | (736352.0, 3722755.5),
13 | (736348.5, 3722755.5),
14 | (736346.0, 3722757.5),
15 | (736348.0, 3722762.5)))
16 | overlap_pred_gdf = calculate_iou(pred_poly, gt_gdf)
17 | assert overlap_pred_gdf.index[0] == 27
18 | assert overlap_pred_gdf.iou_score.iloc[0] == 0.073499798744833519
19 |
20 | def test_process_iou(self):
21 | gt_gdf = data.gt_gdf()
22 | pred_poly = Polygon(((736414.0, 3722573.0),
23 | (736417.5, 3722572.5),
24 | (736420.0, 3722568.0),
25 | (736421.0, 3722556.0),
26 | (736418.5, 3722538.0),
27 | (736424.0, 3722532.5),
28 | (736424.0, 3722527.0),
29 | (736422.5, 3722525.5),
30 | (736412.0, 3722524.0),
31 | (736410.5, 3722521.5),
32 | (736407.0, 3722520.5),
33 | (736383.5, 3722521.0),
34 | (736376.5, 3722528.5),
35 | (736378.0, 3722532.5),
36 | (736402.0, 3722532.0),
37 | (736410.0, 3722539.0),
38 | (736411.0, 3722544.0),
39 | (736408.5, 3722553.5),
40 | (736409.0, 3722569.0),
41 | (736414.0, 3722573.0)))
42 | assert 21 in gt_gdf.index
43 | process_iou(pred_poly, gt_gdf)
44 | assert 21 not in gt_gdf.index
45 |
--------------------------------------------------------------------------------
/tests/test_eval/vector_test.py:
--------------------------------------------------------------------------------
1 | import os
2 | from solaris.data import data_dir
3 | from solaris.eval import vector
4 |
5 |
6 | class TestVectorMetrics(object):
7 | """Test the vector metrics."""
8 |
9 | def test_vector_metrics(self):
10 | proposal_polygons_dir = os.path.join(data_dir, "eval_vector/preds/")
11 | gt_polygons_dir = os.path.join(data_dir, "eval_vector/gt/")
12 | mAP, APs_by_class, mF1_score, f1s_by_class, precision_iou_by_obj, precision_by_class, mPrecision, recall_iou_by_obj, recall_by_class, mRecall, object_subset, confidences = vector.mAP_score(proposal_polygons_dir, gt_polygons_dir, prediction_cat_attrib="class", gt_cat_attrib='make')
13 | assert mAP.round(2) == 0.85
14 |
--------------------------------------------------------------------------------
/tests/test_imports.py:
--------------------------------------------------------------------------------
1 | class TestImports(object):
2 |
3 | def test_imports(self):
4 | import torch # workaround for TLS error
5 | from solaris.utils import core, geo, config, tile, cli
6 | from solaris import data
7 | from solaris.vector import polygon, graph, mask
8 | from solaris.tile import raster_tile, vector_tile
9 | from solaris.raster import image
10 | from solaris.nets import callbacks, datagen, infer, model_io, losses
11 | from solaris.nets import train, transform, zoo
12 | from solaris.eval import base, iou, challenges, pixel
13 | import solaris
14 |
--------------------------------------------------------------------------------
/tests/test_nets/test_optimizers.py:
--------------------------------------------------------------------------------
1 | from solaris.nets.optimizers import get_optimizer
2 | from tensorflow import keras
3 | import torch
4 |
5 |
6 | class TestGetOptimizer(object):
7 | """Test the sol.nets.optimizers.get_optimizer() function."""
8 |
9 | def test_get_optimizers(self):
10 | config = {'training':
11 | {'optimizer': 'sgd'}}
12 | keras_sgd = get_optimizer('keras', config)
13 | assert keras_sgd == keras.optimizers.SGD
14 | torch_sgd = get_optimizer('torch', config)
15 | assert torch_sgd == torch.optim.SGD
16 |
--------------------------------------------------------------------------------
/tests/test_raster/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/tests/test_raster/__init__.py
--------------------------------------------------------------------------------
/tests/test_utils/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/tests/test_utils/__init__.py
--------------------------------------------------------------------------------
/tests/test_vector/__init__.py:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/CosmiQ/solaris/5315390942e05e919555088361bd3df42d4f5a18/tests/test_vector/__init__.py
--------------------------------------------------------------------------------
/tests/test_vector/test_graph.py:
--------------------------------------------------------------------------------
1 | import os
2 | from solaris.data import data_dir
3 | from solaris.vector.graph import geojson_to_graph
4 | import pickle
5 | import networkx as nx
6 |
7 |
8 | class TestGeojsonToGraph(object):
9 | """Tests for cw_geodata.vector_label.graph.geojson_to_graph."""
10 |
11 | def test_graph_creation(self):
12 | """Test if a newly created graph is identical to an existing one."""
13 | with open(os.path.join(data_dir, 'sample_graph.pkl'), 'rb') as f:
14 | truth_graph = pickle.load(f)
15 | f.close()
16 | output_graph = geojson_to_graph(os.path.join(data_dir,
17 | 'sample_roads.geojson'))
18 |
19 | assert nx.is_isomorphic(truth_graph, output_graph)
20 |
--------------------------------------------------------------------------------