{ "info": { "author": "Priyank Shah", "author_email": "priyank.shah@kcl.ac.uk", "bugtrack_url": null, "classifiers": [], "description": "# hypers\n[![Build Status](https://travis-ci.com/priyankshah7/hypers.svg?token=xX99xZvXU9jWErT5D1zh&branch=master)](https://travis-ci.com/priyankshah7/hypers)\n[![Documentation Status](https://readthedocs.org/projects/hypers/badge/?version=latest)](http://hypers.readthedocs.io/en/latest/?badge=latest)\n[![Python Version 3.5](https://img.shields.io/badge/Python-3.5-blue.svg)](https://www.python.org/downloads/)\n[![Python Version 3.6](https://img.shields.io/badge/Python-3.6-blue.svg)](https://www.python.org/downloads/)\n[![PyPI version](https://badge.fury.io/py/hypers.svg)](https://badge.fury.io/py/hypers)\n\nProvides an object model for hyperspectral data.\n\n+ Simple tools for exploratory analysis of hyperspectral data\n+ Interactive hyperspectral viewer built into the object\n+ Allows for unsupervised machine learning directly on the object (using scikit-learn)\n+ More features coming soon...\n\n

\n\n## Contents\n1. [About](#about)\n1. [Installation](#installation)\n2. [Features](#features)\n3. [Examples](#examples)\n4. [Documentation](#documentation)\n5. [License](#license)\n\n## About\nThis package provides an object model for hyperspectral data (e.g. similar to pandas for tabulated data). Many of the \ncommonly used tools are built into the object, including a lightweight interactive gui for visualizing the data. \nImportantly, the object also interfaces with `scikit-learn` to allow the cluser and decomposition classes (e.g. PCA, \nICA, K-means) to be used directly with the object.\n\n+ [Dataset object](http://hypers.readthedocs.io/en/latest/source/Dataset/index.html) (`hypers.Dataset`)\n\n This class forms the core of hypers. It provides useful information about the \n hyperspectral data and makes machine learning on the data simple.\n\n+ [Interactive hyperspectral viewer](http://hypers.readthedocs.io/en/latest/source/hypview/index.html)\n\n A lightweight pyqt gui that provides an interative interface to view the \n hyperspectral data.\n\n

\n\n**Please note that this package is currently in pre-release. The first general release will \nbe v0.1.0**\n\n#### Hyperspectral data\nWhilst this package is designed to work with any type of hyperspectral data, of the form of either of the following: \n\n ,\n\n\nsome of the features are particularly useful for vibrational-scattering related hyperspectral data (e.g. Raman micro-spectroscopy), e.g. the spectral component of the hyperspectral viewer (see figure above).\n\n\n## Installation\nTo install using `pip`:\n```\npip install hypers\n```\n\nThe following packages are required:\n\n+ numpy\n+ matplotlib\n+ scipy\n+ scikit-learn\n+ PyQt5\n+ pyqtgraph\n\n## Features\nFeatures implemented in ``hypers`` include:\n\n+ [Clustering](http://hypers.readthedocs.io/en/latest/source/cluster/index.html) (e.g. KMeans, Spectral clustering, Hierarchical clustering)\n+ [Decomposition](http://hypers.readthedocs.io/en/latest/source/decomposition/index.html) (e.g. PCA, ICA, NMF)\n+ [Hyperspectral viewer](http://hypers.readthedocs.io/en/latest/source/hypview/index.html)\n\n\n## Examples\n\n### Hyperspectral dimensionality reduction and clustering\nBelow is a quick example of using some of the features of the package on a randomized hyperspectral array. For an example using the IndianPines dataset, see the Jupyter notebook in the examples/ directory.\n\n```python\nimport numpy as np\nimport hypers as hp\nfrom sklearn.decomposition import PCA\nfrom sklearn.cluster import KMeans\n\n# Generating a random 4-d dataset and creating a Dataset instance\n# The test dataset here has spatial dimensions (x=200, y=200, z=10) and spectral dimension (s=1024)\ntest_data = np.random.rand(200, 200, 10, 1024)\nX = hp.Dataset(test_data)\nX.scale()\n\n# Using Principal Components Analysis to reduce to first 5 components\n# The variables ims, spcs are arrays of the first 5 principal components for the images, spectra respectively\nims, spcs = X.decompose(\n mdl=PCA(n_components=5),\n plot=False,\n return_arrs=True\n)\n\n# Clustering using K-means (with and without applying PCA first)\n# The cluster method will return the labeled image array and the spectrum for each cluster\nlbls_nodecompose, spcs_nodecompose = X.cluster(\n mdl=KMeans(n_clusters=3),\n decomposed=False,\n plot=False,\n return_arrs=True\n)\n\n# Clustering on only the first 5 principal components\nlbls_decomposed, spcs_decomposed = X.cluster(\n mdl=KMeans(n_clusters=3),\n decomposed=True,\n pca_comps=5,\n plot=False,\n return_arrs=True\n)\n```\n\n## Documentation\nThe docs are hosted [here](http://hypers.readthedocs.io/en/latest/?badge=latest).\n\n## License\nhypers is licensed under the OSI approved BSD 3-Clause License.\n\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "https://github.com/priyankshah7/hypers/archive/v0.0.11.tar.gz", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/priyankshah7/hypers", "keywords": "hyperspectral,data-analysis,clustering,matrix-decompositions,hyperspectral-analysis,machine learning", "license": "BSD 3-Clause", "maintainer": "", "maintainer_email": "", "name": "hypers", "package_url": "https://pypi.org/project/hypers/", "platform": "", "project_url": "https://pypi.org/project/hypers/", "project_urls": { "Download": "https://github.com/priyankshah7/hypers/archive/v0.0.11.tar.gz", "Homepage": "https://github.com/priyankshah7/hypers" }, "release_url": "https://pypi.org/project/hypers/0.0.11/", "requires_dist": [ "numpy (>=1.14.2)", "matplotlib", "scipy (>=1.1.0)", "pyqt5 (>=5.10.1)", "pyqtgraph (>=0.10.0)", "scikit-learn (>=0.20.1)" ], "requires_python": ">=3.5.0", "summary": "Hyperspectral data analysis and machine learning", "version": "0.0.11" }, "last_serial": 4653623, "releases": { "0.0.10": [ { "comment_text": "", "digests": { "md5": "d691cf8e002ac49a1dc9223851e72b0b", "sha256": "6af6dcc7897f6ed330109084100a4bb14d6889b8d9a877163aedc8daf19a322f" }, "downloads": -1, "filename": "hypers-0.0.10-py3-none-any.whl", "has_sig": false, "md5_digest": "d691cf8e002ac49a1dc9223851e72b0b", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5.0", "size": 18477, "upload_time": "2018-12-27T17:40:35", "url": "https://files.pythonhosted.org/packages/88/ee/1bc240ff268bd16a707f1fcfa07f50472401042d7f1aae81b10797866b36/hypers-0.0.10-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ec0bc729ddea0c7d371749e7e345eb3d", "sha256": "c483185905ec0f861383893929d23ad608f25bd83682137586940d7a12e2fe39" }, "downloads": -1, "filename": "hypers-0.0.10.tar.gz", "has_sig": false, "md5_digest": "ec0bc729ddea0c7d371749e7e345eb3d", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5.0", "size": 12899, "upload_time": "2018-12-27T17:40:37", "url": "https://files.pythonhosted.org/packages/04/1f/96920660e44d060d4c70d263106be59a9705c8e990cff4e96d6e1a488d52/hypers-0.0.10.tar.gz" } ], "0.0.11": [ { "comment_text": "", "digests": { "md5": "e0e66d86478a10bf221b72decef34033", "sha256": "d871a1f2eb65e8c605b006a41391afebfe03033609216313af50d31324e9627c" }, "downloads": -1, "filename": "hypers-0.0.11-py3-none-any.whl", "has_sig": false, "md5_digest": "e0e66d86478a10bf221b72decef34033", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5.0", "size": 18997, "upload_time": "2019-01-02T18:22:12", "url": "https://files.pythonhosted.org/packages/67/75/521735fd8bcd0696bb46899d6917def3ae415e94e9d92b4bc91bbd85ae0f/hypers-0.0.11-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d53b59cd8b4d3ebb7ab1e07f0e0b9994", "sha256": "0374a1fb32031939a08d2bf283ff303aa07b375c1a1dfb4abebc4da76bb14f31" }, "downloads": -1, "filename": "hypers-0.0.11.tar.gz", "has_sig": false, "md5_digest": "d53b59cd8b4d3ebb7ab1e07f0e0b9994", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5.0", "size": 13467, "upload_time": "2019-01-02T18:22:13", "url": "https://files.pythonhosted.org/packages/c4/c5/047f6a04bfe1d9efbdb00631709da1f666c07d3d0c0cdcd3e8be530de980/hypers-0.0.11.tar.gz" } ], "0.0.9": [ { "comment_text": "", "digests": { "md5": "66a85ccd2e7e28ed154c30e1abcfa48f", "sha256": "33215be21bc276fc69de0b0a3d5fb31975a439878983c358f3443aa22e4bc504" }, "downloads": -1, "filename": "hypers-0.0.9-py3-none-any.whl", "has_sig": false, "md5_digest": "66a85ccd2e7e28ed154c30e1abcfa48f", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5.0", "size": 13086, "upload_time": "2018-12-16T21:25:30", "url": "https://files.pythonhosted.org/packages/ec/3d/f330fd74c84ca43fa8e1d72a1fee5ffe761a53abbec1342319ca4149e7c1/hypers-0.0.9-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "7fd7240fdfe31ff2e25515b3325ed88f", "sha256": "740f153a45165d82a437794db83750fba53eba951f0480fda26a758294a39753" }, "downloads": -1, "filename": "hypers-0.0.9.tar.gz", "has_sig": false, "md5_digest": "7fd7240fdfe31ff2e25515b3325ed88f", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5.0", "size": 9260, "upload_time": "2018-12-16T21:25:32", "url": "https://files.pythonhosted.org/packages/d3/bc/ba7a56a6587b0f1fcf6e8195ba7b5d077a6eb7f05f1bbd6472ab6ac75b57/hypers-0.0.9.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "e0e66d86478a10bf221b72decef34033", "sha256": "d871a1f2eb65e8c605b006a41391afebfe03033609216313af50d31324e9627c" }, "downloads": -1, "filename": "hypers-0.0.11-py3-none-any.whl", "has_sig": false, "md5_digest": "e0e66d86478a10bf221b72decef34033", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5.0", "size": 18997, "upload_time": "2019-01-02T18:22:12", "url": "https://files.pythonhosted.org/packages/67/75/521735fd8bcd0696bb46899d6917def3ae415e94e9d92b4bc91bbd85ae0f/hypers-0.0.11-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d53b59cd8b4d3ebb7ab1e07f0e0b9994", "sha256": "0374a1fb32031939a08d2bf283ff303aa07b375c1a1dfb4abebc4da76bb14f31" }, "downloads": -1, "filename": "hypers-0.0.11.tar.gz", "has_sig": false, "md5_digest": "d53b59cd8b4d3ebb7ab1e07f0e0b9994", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5.0", "size": 13467, "upload_time": "2019-01-02T18:22:13", "url": "https://files.pythonhosted.org/packages/c4/c5/047f6a04bfe1d9efbdb00631709da1f666c07d3d0c0cdcd3e8be530de980/hypers-0.0.11.tar.gz" } ] }