Giter Club home page Giter Club logo

rvt_py's Introduction

Relief Visualization Toolbox in Python

Relief Visualization Toolbox (RVT) was produced to help scientists visualize raster elevation model datasets. We have narrowed down the selection to include techniques that have proven to be effective for identification of small scale features. The default settings therefore assume working with high resolution digital elevation models derived from airborne laser scanning missions (lidar), however RVT methods can also be used for other purposes.

Sky-view factor, for example, can be efficiently used in numerous studies where digital elevation model visualizations and automatic feature extraction techniques are indispensable, e.g. in geography, archaeology, geomorphology, cartography, hydrology, glaciology, forestry and disaster management. It can even be used in engineering applications, such as predicting the availability of the GPS signal in urban areas.

Methods currently implemented are:

  • hillshading,
  • hillshading from multiple directions,
  • slope gradient,
  • simple local relief model,
  • multi-scale relief model,
  • sky illumination,
  • sky-view factor (as developed by our team),
  • anisotropic sky-view factor,
  • positive and negative openness,
  • local dominance,
  • multi-scale topographic position.

RVT for Python

The rvt Python package contains three modules:

  • rvt.vis for computing visualizations

  • rvt.blend for blending visualizations together

  • rvt.default for defining default parameters with methods to compute and save visualization functions using set parameters

References

When using the tools, please cite:

  • Kokalj, Ž., Somrak, M. 2019. Why Not a Single Image? Combining Visualizations to Facilitate Fieldwork and On-Screen Mapping. Remote Sensing 11(7): 747.
  • Zakšek, K., Oštir, K., Kokalj, Ž. 2011. Sky-View Factor as a Relief Visualization Technique. Remote Sensing 3: 398-415.

Installation

The RVT Python package can be installed using Conda or PyPI, and can be used in Python scripts, Jupyter Notebooks and ArcGIS Pro.

RVT can also be installed as a set of custom raster functions for ArcGIS, and a plugin for QGIS.

You can also clone the repository.

Conda

The rvt package is available from the Anaconda Cloud repository. Using Conda to install the rvt package will include all required libraries.

To use this method, first install Anaconda and Conda.

Then open Anaconda Prompt (Windows) or Terminal (MacOS) and run:

conda install -c rvtpy rvt_py

PyPI

Another option is to install the rvt-py package and required libraries using the Python Package Index (PyPI).

PyPI usually has problems installing gdal, so install gdal first to use this method.

Then open Command Prompt (Windows) or Terminal (MacOS) and run:

pip install rvt-py

Requirements

Required libraries (specified versions have been tested, other versions may also work):

  • numpy 1.19.2
  • scipy 1.5.2
  • gdal 3.0.2

We recommend using Python 3.6 or higher and a Conda environment (this works best with gdal).

Documentation

Documentation of the package and its usage is available at Relief Visualization Toolbox in Python documentation.

Contributing

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

Please report any bugs and suggestions for improvements.

Acknowledgment

Development of RVT Python scripts was part financed by the Slovenian Research Agency core funding No. P2-0406, and by research project No. J6-9395.

License

This project is licensed under the terms of the Apache License.

rvt_py's People

Contributors

h4estu avatar klezaki-geo avatar krostir avatar lakillo avatar nejccoz avatar zkokalj avatar zm8597 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.