Metadata-Version: 2.4
Name: InformativeFeatureSelection
Version: 3.1.2
Summary: Package which provides an feature selection algorithm which considers class separability and an implementation of Informative Normalized Difference Index (INDI)
Home-page: https://gitlab.com/rustam-industries/feature_extractor
Author: Mukhin Artem
Author-email: artemmukhinssau@gmail.com
License: MIT
Classifier: Programming Language :: Python :: 3
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: numpy~=1.21
Requires-Dist: scikit-learn~=0.24.2
Requires-Dist: setuptools~=58.0.4
Requires-Dist: opencv-python-headless~=4.5.3.56
Requires-Dist: numba~=0.57.1
Provides-Extra: smart
Requires-Dist: segment_anything==1.0; extra == "smart"
Dynamic: author
Dynamic: author-email
Dynamic: classifier
Dynamic: description
Dynamic: description-content-type
Dynamic: home-page
Dynamic: license
Dynamic: license-file
Dynamic: provides-extra
Dynamic: requires-dist
Dynamic: summary

# Install

`pip install InformativeFeatureSelection`

## Features

* Several implementations of feature selection algorithms based on discriminant analysis
* Binary implementation of Informative Normalized Difference Index (INDI)
* Multiclass implementation of INDI 

INDI may be extremely usefully in hyperspectral imaging analysis.

Implemented algorithms were proposed in the following papers:
1. [Paringer RA, Mukhin AV, Kupriyanov AV. Formation of an informative index for recognizing specified 
objects in hyperspectral data. Computer Optics 2021; 45(6): 873-878. DOI: 10.18287/2412-6179-CO-930.](http://www.computeroptics.ru/KO/PDF/KO45-6/450611.pdf)

2. [Mukhin, A., Paringer, R. and Ilyasova, N., 2021, September. Feature selection algorithm with feature space
separability estimation using discriminant analysis. In 2021 International Conference on Information Technology
and Nanotechnology (ITNT) (pp. 1-4). IEEE.](https://ieeexplore.ieee.org/document/9649144)

## Requirements

To simplify usage, two Docker images were created:

1. `banayaki/feature-selection:base`
This image serves as a base image for InformativeFeatureSelection.
It includes the necessary `python` and its packages.

2. `banayaki/feature-selection:notebook`
This image serves as an extension of the base image for InformativeFeatureSelection.
It includes an additional tool: Jupyter Notebook.
The Jupyter server starts automatically when the container begins.

### How to use them?

Just run the following command:

```bash
docker container run --rm -p 8888:8888 -v ./project:/home/workdir banayaki/feature-selection:notebook
```

Then just copy jupyter's token from container's log.


## Usage example

See jupyter notebook file in `examples` folder. 

## License

[MIT License](LICENSE)
