Skip to content

Commit

Permalink
Update README.md
Browse files Browse the repository at this point in the history
  • Loading branch information
MartinuzziFrancesco authored Mar 2, 2024
1 parent 81f8627 commit e50b71e
Showing 1 changed file with 19 additions and 18 deletions.
37 changes: 19 additions & 18 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,21 +29,22 @@
[jet-img]: https://img.shields.io/badge/%E2%9C%88%EF%B8%8F%20tested%20with%20-%20JET.jl%20-%20red
[jet-url]: https://github.com/aviatesk/JET.jl

## Overview
## Overview πŸ“–

SpectralIndices.jl is a Julia package for working with spectral indices commonly used in remote sensing and earth observation applications. It provides a convenient way to compute various spectral indices using Julia's high-performance capabilities.

## Features
## Features πŸš€

- Compute a wide range of spectral indices.
- Computation for a wide range of spectral indices
- Computation support for `Float64`, `Float32` and `Float16` at index formula level to support fast computation for ML applications
- Support for various data types, including but not limited to (see this [issue](https://github.com/awesome-spectral-indices/SpectralIndices.jl/issues/8) for an updated list and WIP)
- [x] Arrays
- [x] DataFrames
- [x] YAXArrays
- Flexible parameter input options.
- Compatibility with multiple remote sensing platforms and sensors.
- Flexible parameter input options
- Compatibility with multiple remote sensing platforms and sensors

## Installation
## Installation πŸ’»
SpectralIndices.jl is registered in the general registry, please install it using the following:
```julia_repl
julia> ]
Expand All @@ -55,7 +56,7 @@ using Pkg
Pkg.add("SpectralIndices")
```

## Usage
## Usage πŸ› οΈ

You can compute spectral indices either by specifying the index and its parameters or using predefined SpectralIndex instances.

Expand All @@ -78,6 +79,12 @@ df = DataFrame(N = [0.643, 0.560], R = [0.175, 0.225], L = [0.5, 0.5])
result_df_multiple = compute_index(["NDVI", "SAVI"], df)
```

To compute at custom Float precision input the bands at the chosen precision and specify the Float type to the `compute_index` function
```julia
# Compute NDVI with direct parameter input
result = compute_index(Float32, "NDVI", N = Float32(0.643), R = Float32(0.175))
```

### Using `compute`
```julia
# Define a SpectralIndex instance
Expand All @@ -89,31 +96,25 @@ result = compute(NDVI, N = 0.643, R = 0.175) #NDVI is autmatically in namespace
array_result = compute(NDVI, N = fill(0.643, (5, 5)), R = fill(0.175, (5, 5)))
```

### Direct computation
SpectralIndices.jl also allows for direct computation using function calls:
```julia
result = NDVI(0.643, 0.175)
```

For more advanced usage and detailed documentation, please refer to the documentation.

## Contributing
## Contributing 🀝

Contributions to SpectralIndices.jl are welcome! If you would like to contribute, please see our Contribution Guidelines for more information.

## License
## License πŸ“œ

SpectralIndices.jl is licensed under the MIT License. See [LICENSE](https://github.com/awesome-spectral-indices/SpectralIndices.jl/blob/main/LICENSE) for more information.

## Acknowledgments
## Acknowledgments ✨

This package is inspired by the [Spyndex](https://github.com/awesome-spectral-indices/spyndex) Python library for spectral indices. The logo is AI-generated by dalle3 through ChatGPT and modified by the talented [David Montero](https://github.com/davemlz).

## Support
## Support πŸ†˜

If you have any questions, issues, or feature requests, please open an issue or contact us via email.

## Citation
## Citation πŸ”—

If you use SpectralIndices.jl in your research, please consider citing it using the following DOI:

Expand Down

0 comments on commit e50b71e

Please sign in to comment.