summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCoprDistGit <infra@openeuler.org>2023-05-10 08:09:02 +0000
committerCoprDistGit <infra@openeuler.org>2023-05-10 08:09:02 +0000
commit41e6867762456502f2cec544fd72855efd93beca (patch)
tree8127d0b8f812d2012528279e82bc8bf116e51cd6
parent8b92174891d4ffe630a8c636991191e4bfe78526 (diff)
automatic import of python-robotathome
-rw-r--r--.gitignore1
-rw-r--r--python-robotathome.spec1023
-rw-r--r--sources1
3 files changed, 1025 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore
index e69de29..aa42da5 100644
--- a/.gitignore
+++ b/.gitignore
@@ -0,0 +1 @@
+/robotathome-1.1.9.tar.gz
diff --git a/python-robotathome.spec b/python-robotathome.spec
new file mode 100644
index 0000000..438a61d
--- /dev/null
+++ b/python-robotathome.spec
@@ -0,0 +1,1023 @@
+%global _empty_manifest_terminate_build 0
+Name: python-robotathome
+Version: 1.1.9
+Release: 1
+Summary: This package provides a Python Toolbox with a set of functions to assist in the management of Robot@Home2 Dataset
+License: MIT
+URL: https://github.com/goyoambrosio/RobotAtHome2
+Source0: https://mirrors.nju.edu.cn/pypi/web/packages/8a/87/10b8da219b97a0595b7e12888589aa68eef5be9ffb50ab71be9ed1343c1c/robotathome-1.1.9.tar.gz
+BuildArch: noarch
+
+Requires: python3-urllib3
+Requires: python3-requests
+Requires: python3-tqdm
+Requires: python3-loguru
+Requires: python3-pandas
+Requires: python3-humanize
+Requires: python3-click
+Requires: python3-numpy
+Requires: python3-opencv-python
+Requires: python3-opencv-contrib-python
+Requires: python3-matplotlib
+Requires: python3-notebook
+Requires: python3-ipywidgets
+Requires: python3-opencv-python
+Requires: python3-opencv-contrib-python
+Requires: python3-matplotlib
+Requires: python3-notebook
+Requires: python3-ipywidgets
+
+%description
+# Robot@Home2 Dataset Toolbox #
+
+[![PyPI](https://img.shields.io/pypi/v/robotathome)](https://pypi.org/project/robotathome/ "R@H2 as PyPI package ready to install")
+[![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.7811795.svg)](https://doi.org/10.5281/zenodo.7811795 "The downloadable R@H2 dataset in Zenodo")
+[![DOI](https://zenodo.org/badge/245370645.svg)](https://doi.org/10.5281/zenodo.7812048 "This repository released on Zenodo")
+[![Open In Collab](https://colab.research.google.com/assets/colab-badge.svg)](https://drive.google.com/drive/folders/1ENnxbKP5MJdlGl2Q93WTbIlofuy6Icxq)
+
+
+
+The Robot-at-Home dataset (Robot@Home, paper
+[here](http://mapir.uma.es/papersrepo/2017/2017-raul-IJRR-Robot_at_home_dataset.pdf))
+is a collection of raw and processed data from five domestic settings compiled
+by a mobile robot equipped with 4 RGB-D cameras and a 2D laser scanner. Its main
+purpose is to serve as a testbed for semantic mapping algorithms through the
+categorization of objects and/or rooms.
+
+Nevertheless, the Robot@Home dataset has been updated to **Robot@Home2**. This
+update is made up of a relational database file in SQLite format with all the
+original data and a size of only 2,2 GB. The image and scene files have been
+reorganized and now takes only 25,9 GB.
+
+The database, named `rh.db`, is a relational sql database accessible with the
+SQLite engine that usually accompanies the python environment and is popularly
+used in the development of current applications in both fixed (linux and
+windows) and mobile environments. (android).
+
+The data files have been organized into two main groups. On the one hand, the
+files with RGBD data (RGB images and depth images) and on the other the 3D
+scenes in point cloud files.
+
+The intensity (RGB) and depth (D) image files have a standard *png* format so
+they can be opened directly. In addition, the files are linked to the data in
+the database through tables that relate them. Moreover, the database contains
+tables that relate the files of the new version with those of the old version.
+
+In the case of 3D scene files, these are plain text files that store the
+coordinates and colors of the points that make up the 3D cloud. These files can
+be easily visualized with current software for the visualization of point
+clouds like [MeshLab](https://www.meshlab.net/).
+
+You no longer need to waste time diving the obscure data formats (despite an API
+-**dataset.py**- for that is provided). Instead, you can simply surf the dataset
+through SQL queries or the new toolbox.
+
+The toolbox (**toolbox.py**) has been coded for various purposes. The first one
+consists of encapsulating frequent queries as functions and integrating the
+results with a data analysis library such as Pandas. Pandas library is widely
+used in data science and machine learning disciplines in the Python framework.
+The second one is the integration of the data set with the GluonCV library to
+apply deep learning algorithms in artificial vision.
+
+## Prerequisites: Installing the Python Development Environment
+
+Launched in 1991, Python has achieved enormous popularity in the scientific
+community in recent years. Python is an interpreted high-level general-purpose
+programming language with a many useful features. It's platform independent,
+simple, consistent and with a great code readability. Moreover, it has an
+extensive set of libraries that help to reduce development time.
+
+Artificial Intelligence (AI) and Machine Learning (ML) projects differ from
+software projects in other areas due to differences in the technology stack and
+the skills needed to deal with them.
+
+Python offers AI and ML programmers many features that help to develop and test
+complex algorithms. Even in Computer Vision (CV), there are solid software
+libraries that allow developers to focus on their research areas.
+
+There are several different Python distributions, each one created with a
+different approach and for different audiences.
+
+Robot@Home2 Toolbox is written in Python and works well with Anaconda which is a
+distribution of the Python and R programming languages for scientific computing.
+Of course, other distributions can be used to run the toolbox.
+
+### Short installation on Linux
+
+To install Anaconda in Linux you must follow these steps.
+
+Download the Anaconda installer
+
+```shell
+$ cd ~/Downloads
+$ wget https://repo.anaconda.com/archive/Anaconda3-2022.10-Linux-x86_64.sh
+```
+
+> replace `~/Downloads` with the path of your choice
+
+
+Install the distribution
+
+```shell
+$ bash ~/Downloads/Anaconda3-2022.10-Linux-x86_64.sh
+```
+
+> include the `bash` command regardless of whether or not you are using Bash shell.
+
+Review and agree the license agreement. Accept the default install location.
+
+When the installer prompts *“Do you wish the installer to initialize Anaconda3 by running conda init?”*, we recommend *“yes”*.
+
+Finally, for the installation to take effect
+
+```shell
+$ source ~/.bashrc
+```
+
+
+For more detailed/updated installation information, go to [Anaconda installation page](https://docs.anaconda.com/anaconda/install/).
+
+### Installation on Windows
+
+Due to the graphic abundance of the installation procedure, we refer you to
+the specific [Anaconda documentation page for installation on Windows](https://docs.anaconda.com/anaconda/install/windows/).
+
+### Verifying your installation on Linux
+
+Enter the command `python`. This command runs the Python shell. If Anaconda is
+installed and working, the version information it displays when it starts up
+will include `“Anaconda”`. To exit the Python shell, enter the `quit()` command.
+
+ $ python
+ Python 3.9.16 (main, Jan 11 2023, 16:05:54)
+ [GCC 11.2.0] :: Anaconda, Inc. on linux
+ Type "help", "copyright", "credits" or "license" for more information.
+ >>> quit()
+
+You can also display a list of installed packages and their versions running `conda list`
+
+ $ conda list
+ # packages in environment at /home/user/anaconda3:
+ #
+ # Name Version Build Channel
+ ...
+
+### Verifying in Windows
+
+Click Start, search, or select **Anaconda Prompt** from the menu. After opening
+Anaconda Prompt on the terminal enter the command `python`. This command runs
+the Python shell. If Anaconda is installed and working, the version
+information it displays when it starts up will include `Anaconda` . To exit
+the Python shell, enter the command `quit()`.
+
+As in Linux you can also display a list of installed packages and their
+versions running `conda list`
+
+### Making a virtual environment
+
+A virtual environment is a Python environment such that the Python interpreter,
+libraries and scripts installed into it are isolated from those installed in
+other virtual environments
+
+When a virtual environment is active, the installations tools install Python
+packages into the virtual environment without needing to be told to do so
+explicitly and without interfering in other virtual environments.
+
+That's the reason why it's recommended to work with a virtual environment
+specifically for Robot@Home2. To do that with conda
+
+```shell
+$ conda create --name rh python=3.9
+```
+
+> change `rh` to a name of your choice
+
+> Robot@Home2 runs with python 3.6 or higher. Also, version 3.6 is recommended for
+> Windows
+
+once it has been created, it can already be activated
+
+```shell
+$ conda activate rh
+```
+to deactivate run
+
+```shell
+$ conda deactivate
+```
+
+### Literate programming with Jupyter
+
+Literate programming is a programming paradigm introduced by Donald Knuth in
+which a computer program is given an explanation of its logic in a natural
+language, such as English, interspersed with snippets of macros and traditional
+source code. The approach is typically used in scientific computing and in data
+science routinely for reproducible research and open access purposes.
+
+On the other hand, the **[Jupyter](https://jupyter.org) \*Notebook** is an open-source web application that
+allows you to create and share documents that contain live code, equations,
+visualizations and narrative text. Additionally **JupyterLab** is a web-based
+interactive development environment for Jupyter notebooks, code, and data.
+
+Jupyter is an application of literate programming and Robot@Home2 includes
+Jupyter notebooks for introductions, easy learning, and technical explanations.
+
+Installing Jupyter in Anaconda distribution is an easy task
+
+```shell
+$ conda install -c conda-forge jupyterlab
+```
+
+> remember to previously activate your virtual environment with \`conda activate\` command
+
+If you have followed the previous sections you have the right working
+environment to open [this notebook](https://github.com/goyoambrosio/RobotAtHome_API/blob/master/notebooks/10-Download-and-install.ipynb) with Jupyter to download and install both the toolbox and the dataset.
+
+However, if jupyter notebook is not your choice right now you can try the
+following instructions.
+
+
+## Time to install Robot@Home2
+
+### Installing the toolbox
+
+Robot@Home2 Toolbox can be installed through the Python package manager.
+
+1. Confirm you are in the right virtual environment
+
+ ```shell
+ $ conda activate rh
+ ```
+
+2. Enter this command to install `robotathome` with [Jupyter](https://jupyter.org) to run notebooks.
+
+ ```shell
+ $ pip install robotathome
+ ```
+
+ > `pip` is a common Python package manager that is included in Anaconda and many other distributions
+
+ If you have not previously installed `jupyterlab` you can do it right now adding
+ the `interactive` option to the `pip` command as follows:
+
+ ```shell
+ $ pip install robotathome[interactive]
+ ```
+ > `interactive` will include jupyter and needed libraries.
+
+3. Run `python` and import the `robotathome` library
+
+ ```
+ $ python
+ Python 3.10.9 (main, Jan 11 2023, 15:21:40) [GCC 11.2.0] on linux
+ Type "help", "copyright", "credits" or "license" for more information.
+ >>> import robotathome as rh
+ >>> print (rh.__version__)
+ 1.1.1
+ ```
+
+4. Congratulations ! the `robotathome` package has been installed successfully.
+
+
+### Downloading the dataset
+
+Robot@Home resides in Zenodo site where all data versions can be downloaded.
+Latest version ([v2.0.3](https://zenodo.org/record/7811795)) is composed of two
+files: `Robot@Home2_db.tgz` and `Robot@Home2_files.tgz`. The first one contains the
+database, and the second one contains the bunch of RGBD images and 3D scenes
+
+You can choose to download it on your own or through the new brand toolbox.
+
+In case you are considering Linux
+
+```shell
+$ wget https://zenodo.org/record/7811795/files/Robot@Home2_db.tgz
+$ wget https://zenodo.org/record/7811795/files/Robot@Home2_files.tgz
+```
+
+check the files integrity
+
+```shell
+$ md5sum Robot@Home2_db.tgz
+d34fb44c01f31c87be8ab14e5ecd0767 Robot@Home2_db.tgz
+
+$ md5sum Robot@Home2_files.tgz
+c55465536738ec3470c75e1671bab5f2 Robot@Home2_files.tgz
+```
+
+and to finish unzip files
+
+```shell
+$ pv /home/user/Downloads/Robot@Home2_db.tgz | tar -xzf - -C /home/user/WORKSPACE/
+$ pv /home/user/Downloads/Robot@Home2_files.tgz | tar -xzf - -C /home/user/WORKSPACE/files
+```
+
+or even better, now you can do the same programmatically using the toolbox
+
+```python
+import robotathome as rh
+
+# Download files
+rh.download('https://zenodo.org/record/7811795/files/Robot@Home2_db.tgz', '~/Downloads')
+rh.download('https://zenodo.org/record/7811795/files/Robot@Home2_files.tgz', '~/Downloads')
+
+# Compute md5 checksums
+md5_checksum_db = rh.get_md5('~/Downloads/Robot@Home2_db.tgz')
+md5_checksum_files = rh.get_md5('~/Downloads/Robot@Home2_files.tgz')
+
+# Check the files integrity and download
+if md5_checksum_db == 'd34fb44c01f31c87be8ab14e5ecd0767':
+ rh.uncompress('~/Downloads/Robot@Home2_db.tgz', '~/WORKSPACE')
+else:
+ print('Integrity of Robot@Home2_db.tgz is compromised, please download again')
+
+if md5_checksum_files == 'c55465536738ec3470c75e1671bab5f2':
+ rh.uncompress('~/Downloads/Robot@Home2_files.tgz', '~/WORKSPACE/files')
+else:
+ print('Integrity of Robot@Home2_files.tgz is compromised, please download again')
+```
+
+
+
+
+
+%package -n python3-robotathome
+Summary: This package provides a Python Toolbox with a set of functions to assist in the management of Robot@Home2 Dataset
+Provides: python-robotathome
+BuildRequires: python3-devel
+BuildRequires: python3-setuptools
+BuildRequires: python3-pip
+%description -n python3-robotathome
+# Robot@Home2 Dataset Toolbox #
+
+[![PyPI](https://img.shields.io/pypi/v/robotathome)](https://pypi.org/project/robotathome/ "R@H2 as PyPI package ready to install")
+[![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.7811795.svg)](https://doi.org/10.5281/zenodo.7811795 "The downloadable R@H2 dataset in Zenodo")
+[![DOI](https://zenodo.org/badge/245370645.svg)](https://doi.org/10.5281/zenodo.7812048 "This repository released on Zenodo")
+[![Open In Collab](https://colab.research.google.com/assets/colab-badge.svg)](https://drive.google.com/drive/folders/1ENnxbKP5MJdlGl2Q93WTbIlofuy6Icxq)
+
+
+
+The Robot-at-Home dataset (Robot@Home, paper
+[here](http://mapir.uma.es/papersrepo/2017/2017-raul-IJRR-Robot_at_home_dataset.pdf))
+is a collection of raw and processed data from five domestic settings compiled
+by a mobile robot equipped with 4 RGB-D cameras and a 2D laser scanner. Its main
+purpose is to serve as a testbed for semantic mapping algorithms through the
+categorization of objects and/or rooms.
+
+Nevertheless, the Robot@Home dataset has been updated to **Robot@Home2**. This
+update is made up of a relational database file in SQLite format with all the
+original data and a size of only 2,2 GB. The image and scene files have been
+reorganized and now takes only 25,9 GB.
+
+The database, named `rh.db`, is a relational sql database accessible with the
+SQLite engine that usually accompanies the python environment and is popularly
+used in the development of current applications in both fixed (linux and
+windows) and mobile environments. (android).
+
+The data files have been organized into two main groups. On the one hand, the
+files with RGBD data (RGB images and depth images) and on the other the 3D
+scenes in point cloud files.
+
+The intensity (RGB) and depth (D) image files have a standard *png* format so
+they can be opened directly. In addition, the files are linked to the data in
+the database through tables that relate them. Moreover, the database contains
+tables that relate the files of the new version with those of the old version.
+
+In the case of 3D scene files, these are plain text files that store the
+coordinates and colors of the points that make up the 3D cloud. These files can
+be easily visualized with current software for the visualization of point
+clouds like [MeshLab](https://www.meshlab.net/).
+
+You no longer need to waste time diving the obscure data formats (despite an API
+-**dataset.py**- for that is provided). Instead, you can simply surf the dataset
+through SQL queries or the new toolbox.
+
+The toolbox (**toolbox.py**) has been coded for various purposes. The first one
+consists of encapsulating frequent queries as functions and integrating the
+results with a data analysis library such as Pandas. Pandas library is widely
+used in data science and machine learning disciplines in the Python framework.
+The second one is the integration of the data set with the GluonCV library to
+apply deep learning algorithms in artificial vision.
+
+## Prerequisites: Installing the Python Development Environment
+
+Launched in 1991, Python has achieved enormous popularity in the scientific
+community in recent years. Python is an interpreted high-level general-purpose
+programming language with a many useful features. It's platform independent,
+simple, consistent and with a great code readability. Moreover, it has an
+extensive set of libraries that help to reduce development time.
+
+Artificial Intelligence (AI) and Machine Learning (ML) projects differ from
+software projects in other areas due to differences in the technology stack and
+the skills needed to deal with them.
+
+Python offers AI and ML programmers many features that help to develop and test
+complex algorithms. Even in Computer Vision (CV), there are solid software
+libraries that allow developers to focus on their research areas.
+
+There are several different Python distributions, each one created with a
+different approach and for different audiences.
+
+Robot@Home2 Toolbox is written in Python and works well with Anaconda which is a
+distribution of the Python and R programming languages for scientific computing.
+Of course, other distributions can be used to run the toolbox.
+
+### Short installation on Linux
+
+To install Anaconda in Linux you must follow these steps.
+
+Download the Anaconda installer
+
+```shell
+$ cd ~/Downloads
+$ wget https://repo.anaconda.com/archive/Anaconda3-2022.10-Linux-x86_64.sh
+```
+
+> replace `~/Downloads` with the path of your choice
+
+
+Install the distribution
+
+```shell
+$ bash ~/Downloads/Anaconda3-2022.10-Linux-x86_64.sh
+```
+
+> include the `bash` command regardless of whether or not you are using Bash shell.
+
+Review and agree the license agreement. Accept the default install location.
+
+When the installer prompts *“Do you wish the installer to initialize Anaconda3 by running conda init?”*, we recommend *“yes”*.
+
+Finally, for the installation to take effect
+
+```shell
+$ source ~/.bashrc
+```
+
+
+For more detailed/updated installation information, go to [Anaconda installation page](https://docs.anaconda.com/anaconda/install/).
+
+### Installation on Windows
+
+Due to the graphic abundance of the installation procedure, we refer you to
+the specific [Anaconda documentation page for installation on Windows](https://docs.anaconda.com/anaconda/install/windows/).
+
+### Verifying your installation on Linux
+
+Enter the command `python`. This command runs the Python shell. If Anaconda is
+installed and working, the version information it displays when it starts up
+will include `“Anaconda”`. To exit the Python shell, enter the `quit()` command.
+
+ $ python
+ Python 3.9.16 (main, Jan 11 2023, 16:05:54)
+ [GCC 11.2.0] :: Anaconda, Inc. on linux
+ Type "help", "copyright", "credits" or "license" for more information.
+ >>> quit()
+
+You can also display a list of installed packages and their versions running `conda list`
+
+ $ conda list
+ # packages in environment at /home/user/anaconda3:
+ #
+ # Name Version Build Channel
+ ...
+
+### Verifying in Windows
+
+Click Start, search, or select **Anaconda Prompt** from the menu. After opening
+Anaconda Prompt on the terminal enter the command `python`. This command runs
+the Python shell. If Anaconda is installed and working, the version
+information it displays when it starts up will include `Anaconda` . To exit
+the Python shell, enter the command `quit()`.
+
+As in Linux you can also display a list of installed packages and their
+versions running `conda list`
+
+### Making a virtual environment
+
+A virtual environment is a Python environment such that the Python interpreter,
+libraries and scripts installed into it are isolated from those installed in
+other virtual environments
+
+When a virtual environment is active, the installations tools install Python
+packages into the virtual environment without needing to be told to do so
+explicitly and without interfering in other virtual environments.
+
+That's the reason why it's recommended to work with a virtual environment
+specifically for Robot@Home2. To do that with conda
+
+```shell
+$ conda create --name rh python=3.9
+```
+
+> change `rh` to a name of your choice
+
+> Robot@Home2 runs with python 3.6 or higher. Also, version 3.6 is recommended for
+> Windows
+
+once it has been created, it can already be activated
+
+```shell
+$ conda activate rh
+```
+to deactivate run
+
+```shell
+$ conda deactivate
+```
+
+### Literate programming with Jupyter
+
+Literate programming is a programming paradigm introduced by Donald Knuth in
+which a computer program is given an explanation of its logic in a natural
+language, such as English, interspersed with snippets of macros and traditional
+source code. The approach is typically used in scientific computing and in data
+science routinely for reproducible research and open access purposes.
+
+On the other hand, the **[Jupyter](https://jupyter.org) \*Notebook** is an open-source web application that
+allows you to create and share documents that contain live code, equations,
+visualizations and narrative text. Additionally **JupyterLab** is a web-based
+interactive development environment for Jupyter notebooks, code, and data.
+
+Jupyter is an application of literate programming and Robot@Home2 includes
+Jupyter notebooks for introductions, easy learning, and technical explanations.
+
+Installing Jupyter in Anaconda distribution is an easy task
+
+```shell
+$ conda install -c conda-forge jupyterlab
+```
+
+> remember to previously activate your virtual environment with \`conda activate\` command
+
+If you have followed the previous sections you have the right working
+environment to open [this notebook](https://github.com/goyoambrosio/RobotAtHome_API/blob/master/notebooks/10-Download-and-install.ipynb) with Jupyter to download and install both the toolbox and the dataset.
+
+However, if jupyter notebook is not your choice right now you can try the
+following instructions.
+
+
+## Time to install Robot@Home2
+
+### Installing the toolbox
+
+Robot@Home2 Toolbox can be installed through the Python package manager.
+
+1. Confirm you are in the right virtual environment
+
+ ```shell
+ $ conda activate rh
+ ```
+
+2. Enter this command to install `robotathome` with [Jupyter](https://jupyter.org) to run notebooks.
+
+ ```shell
+ $ pip install robotathome
+ ```
+
+ > `pip` is a common Python package manager that is included in Anaconda and many other distributions
+
+ If you have not previously installed `jupyterlab` you can do it right now adding
+ the `interactive` option to the `pip` command as follows:
+
+ ```shell
+ $ pip install robotathome[interactive]
+ ```
+ > `interactive` will include jupyter and needed libraries.
+
+3. Run `python` and import the `robotathome` library
+
+ ```
+ $ python
+ Python 3.10.9 (main, Jan 11 2023, 15:21:40) [GCC 11.2.0] on linux
+ Type "help", "copyright", "credits" or "license" for more information.
+ >>> import robotathome as rh
+ >>> print (rh.__version__)
+ 1.1.1
+ ```
+
+4. Congratulations ! the `robotathome` package has been installed successfully.
+
+
+### Downloading the dataset
+
+Robot@Home resides in Zenodo site where all data versions can be downloaded.
+Latest version ([v2.0.3](https://zenodo.org/record/7811795)) is composed of two
+files: `Robot@Home2_db.tgz` and `Robot@Home2_files.tgz`. The first one contains the
+database, and the second one contains the bunch of RGBD images and 3D scenes
+
+You can choose to download it on your own or through the new brand toolbox.
+
+In case you are considering Linux
+
+```shell
+$ wget https://zenodo.org/record/7811795/files/Robot@Home2_db.tgz
+$ wget https://zenodo.org/record/7811795/files/Robot@Home2_files.tgz
+```
+
+check the files integrity
+
+```shell
+$ md5sum Robot@Home2_db.tgz
+d34fb44c01f31c87be8ab14e5ecd0767 Robot@Home2_db.tgz
+
+$ md5sum Robot@Home2_files.tgz
+c55465536738ec3470c75e1671bab5f2 Robot@Home2_files.tgz
+```
+
+and to finish unzip files
+
+```shell
+$ pv /home/user/Downloads/Robot@Home2_db.tgz | tar -xzf - -C /home/user/WORKSPACE/
+$ pv /home/user/Downloads/Robot@Home2_files.tgz | tar -xzf - -C /home/user/WORKSPACE/files
+```
+
+or even better, now you can do the same programmatically using the toolbox
+
+```python
+import robotathome as rh
+
+# Download files
+rh.download('https://zenodo.org/record/7811795/files/Robot@Home2_db.tgz', '~/Downloads')
+rh.download('https://zenodo.org/record/7811795/files/Robot@Home2_files.tgz', '~/Downloads')
+
+# Compute md5 checksums
+md5_checksum_db = rh.get_md5('~/Downloads/Robot@Home2_db.tgz')
+md5_checksum_files = rh.get_md5('~/Downloads/Robot@Home2_files.tgz')
+
+# Check the files integrity and download
+if md5_checksum_db == 'd34fb44c01f31c87be8ab14e5ecd0767':
+ rh.uncompress('~/Downloads/Robot@Home2_db.tgz', '~/WORKSPACE')
+else:
+ print('Integrity of Robot@Home2_db.tgz is compromised, please download again')
+
+if md5_checksum_files == 'c55465536738ec3470c75e1671bab5f2':
+ rh.uncompress('~/Downloads/Robot@Home2_files.tgz', '~/WORKSPACE/files')
+else:
+ print('Integrity of Robot@Home2_files.tgz is compromised, please download again')
+```
+
+
+
+
+
+%package help
+Summary: Development documents and examples for robotathome
+Provides: python3-robotathome-doc
+%description help
+# Robot@Home2 Dataset Toolbox #
+
+[![PyPI](https://img.shields.io/pypi/v/robotathome)](https://pypi.org/project/robotathome/ "R@H2 as PyPI package ready to install")
+[![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.7811795.svg)](https://doi.org/10.5281/zenodo.7811795 "The downloadable R@H2 dataset in Zenodo")
+[![DOI](https://zenodo.org/badge/245370645.svg)](https://doi.org/10.5281/zenodo.7812048 "This repository released on Zenodo")
+[![Open In Collab](https://colab.research.google.com/assets/colab-badge.svg)](https://drive.google.com/drive/folders/1ENnxbKP5MJdlGl2Q93WTbIlofuy6Icxq)
+
+
+
+The Robot-at-Home dataset (Robot@Home, paper
+[here](http://mapir.uma.es/papersrepo/2017/2017-raul-IJRR-Robot_at_home_dataset.pdf))
+is a collection of raw and processed data from five domestic settings compiled
+by a mobile robot equipped with 4 RGB-D cameras and a 2D laser scanner. Its main
+purpose is to serve as a testbed for semantic mapping algorithms through the
+categorization of objects and/or rooms.
+
+Nevertheless, the Robot@Home dataset has been updated to **Robot@Home2**. This
+update is made up of a relational database file in SQLite format with all the
+original data and a size of only 2,2 GB. The image and scene files have been
+reorganized and now takes only 25,9 GB.
+
+The database, named `rh.db`, is a relational sql database accessible with the
+SQLite engine that usually accompanies the python environment and is popularly
+used in the development of current applications in both fixed (linux and
+windows) and mobile environments. (android).
+
+The data files have been organized into two main groups. On the one hand, the
+files with RGBD data (RGB images and depth images) and on the other the 3D
+scenes in point cloud files.
+
+The intensity (RGB) and depth (D) image files have a standard *png* format so
+they can be opened directly. In addition, the files are linked to the data in
+the database through tables that relate them. Moreover, the database contains
+tables that relate the files of the new version with those of the old version.
+
+In the case of 3D scene files, these are plain text files that store the
+coordinates and colors of the points that make up the 3D cloud. These files can
+be easily visualized with current software for the visualization of point
+clouds like [MeshLab](https://www.meshlab.net/).
+
+You no longer need to waste time diving the obscure data formats (despite an API
+-**dataset.py**- for that is provided). Instead, you can simply surf the dataset
+through SQL queries or the new toolbox.
+
+The toolbox (**toolbox.py**) has been coded for various purposes. The first one
+consists of encapsulating frequent queries as functions and integrating the
+results with a data analysis library such as Pandas. Pandas library is widely
+used in data science and machine learning disciplines in the Python framework.
+The second one is the integration of the data set with the GluonCV library to
+apply deep learning algorithms in artificial vision.
+
+## Prerequisites: Installing the Python Development Environment
+
+Launched in 1991, Python has achieved enormous popularity in the scientific
+community in recent years. Python is an interpreted high-level general-purpose
+programming language with a many useful features. It's platform independent,
+simple, consistent and with a great code readability. Moreover, it has an
+extensive set of libraries that help to reduce development time.
+
+Artificial Intelligence (AI) and Machine Learning (ML) projects differ from
+software projects in other areas due to differences in the technology stack and
+the skills needed to deal with them.
+
+Python offers AI and ML programmers many features that help to develop and test
+complex algorithms. Even in Computer Vision (CV), there are solid software
+libraries that allow developers to focus on their research areas.
+
+There are several different Python distributions, each one created with a
+different approach and for different audiences.
+
+Robot@Home2 Toolbox is written in Python and works well with Anaconda which is a
+distribution of the Python and R programming languages for scientific computing.
+Of course, other distributions can be used to run the toolbox.
+
+### Short installation on Linux
+
+To install Anaconda in Linux you must follow these steps.
+
+Download the Anaconda installer
+
+```shell
+$ cd ~/Downloads
+$ wget https://repo.anaconda.com/archive/Anaconda3-2022.10-Linux-x86_64.sh
+```
+
+> replace `~/Downloads` with the path of your choice
+
+
+Install the distribution
+
+```shell
+$ bash ~/Downloads/Anaconda3-2022.10-Linux-x86_64.sh
+```
+
+> include the `bash` command regardless of whether or not you are using Bash shell.
+
+Review and agree the license agreement. Accept the default install location.
+
+When the installer prompts *“Do you wish the installer to initialize Anaconda3 by running conda init?”*, we recommend *“yes”*.
+
+Finally, for the installation to take effect
+
+```shell
+$ source ~/.bashrc
+```
+
+
+For more detailed/updated installation information, go to [Anaconda installation page](https://docs.anaconda.com/anaconda/install/).
+
+### Installation on Windows
+
+Due to the graphic abundance of the installation procedure, we refer you to
+the specific [Anaconda documentation page for installation on Windows](https://docs.anaconda.com/anaconda/install/windows/).
+
+### Verifying your installation on Linux
+
+Enter the command `python`. This command runs the Python shell. If Anaconda is
+installed and working, the version information it displays when it starts up
+will include `“Anaconda”`. To exit the Python shell, enter the `quit()` command.
+
+ $ python
+ Python 3.9.16 (main, Jan 11 2023, 16:05:54)
+ [GCC 11.2.0] :: Anaconda, Inc. on linux
+ Type "help", "copyright", "credits" or "license" for more information.
+ >>> quit()
+
+You can also display a list of installed packages and their versions running `conda list`
+
+ $ conda list
+ # packages in environment at /home/user/anaconda3:
+ #
+ # Name Version Build Channel
+ ...
+
+### Verifying in Windows
+
+Click Start, search, or select **Anaconda Prompt** from the menu. After opening
+Anaconda Prompt on the terminal enter the command `python`. This command runs
+the Python shell. If Anaconda is installed and working, the version
+information it displays when it starts up will include `Anaconda` . To exit
+the Python shell, enter the command `quit()`.
+
+As in Linux you can also display a list of installed packages and their
+versions running `conda list`
+
+### Making a virtual environment
+
+A virtual environment is a Python environment such that the Python interpreter,
+libraries and scripts installed into it are isolated from those installed in
+other virtual environments
+
+When a virtual environment is active, the installations tools install Python
+packages into the virtual environment without needing to be told to do so
+explicitly and without interfering in other virtual environments.
+
+That's the reason why it's recommended to work with a virtual environment
+specifically for Robot@Home2. To do that with conda
+
+```shell
+$ conda create --name rh python=3.9
+```
+
+> change `rh` to a name of your choice
+
+> Robot@Home2 runs with python 3.6 or higher. Also, version 3.6 is recommended for
+> Windows
+
+once it has been created, it can already be activated
+
+```shell
+$ conda activate rh
+```
+to deactivate run
+
+```shell
+$ conda deactivate
+```
+
+### Literate programming with Jupyter
+
+Literate programming is a programming paradigm introduced by Donald Knuth in
+which a computer program is given an explanation of its logic in a natural
+language, such as English, interspersed with snippets of macros and traditional
+source code. The approach is typically used in scientific computing and in data
+science routinely for reproducible research and open access purposes.
+
+On the other hand, the **[Jupyter](https://jupyter.org) \*Notebook** is an open-source web application that
+allows you to create and share documents that contain live code, equations,
+visualizations and narrative text. Additionally **JupyterLab** is a web-based
+interactive development environment for Jupyter notebooks, code, and data.
+
+Jupyter is an application of literate programming and Robot@Home2 includes
+Jupyter notebooks for introductions, easy learning, and technical explanations.
+
+Installing Jupyter in Anaconda distribution is an easy task
+
+```shell
+$ conda install -c conda-forge jupyterlab
+```
+
+> remember to previously activate your virtual environment with \`conda activate\` command
+
+If you have followed the previous sections you have the right working
+environment to open [this notebook](https://github.com/goyoambrosio/RobotAtHome_API/blob/master/notebooks/10-Download-and-install.ipynb) with Jupyter to download and install both the toolbox and the dataset.
+
+However, if jupyter notebook is not your choice right now you can try the
+following instructions.
+
+
+## Time to install Robot@Home2
+
+### Installing the toolbox
+
+Robot@Home2 Toolbox can be installed through the Python package manager.
+
+1. Confirm you are in the right virtual environment
+
+ ```shell
+ $ conda activate rh
+ ```
+
+2. Enter this command to install `robotathome` with [Jupyter](https://jupyter.org) to run notebooks.
+
+ ```shell
+ $ pip install robotathome
+ ```
+
+ > `pip` is a common Python package manager that is included in Anaconda and many other distributions
+
+ If you have not previously installed `jupyterlab` you can do it right now adding
+ the `interactive` option to the `pip` command as follows:
+
+ ```shell
+ $ pip install robotathome[interactive]
+ ```
+ > `interactive` will include jupyter and needed libraries.
+
+3. Run `python` and import the `robotathome` library
+
+ ```
+ $ python
+ Python 3.10.9 (main, Jan 11 2023, 15:21:40) [GCC 11.2.0] on linux
+ Type "help", "copyright", "credits" or "license" for more information.
+ >>> import robotathome as rh
+ >>> print (rh.__version__)
+ 1.1.1
+ ```
+
+4. Congratulations ! the `robotathome` package has been installed successfully.
+
+
+### Downloading the dataset
+
+Robot@Home resides in Zenodo site where all data versions can be downloaded.
+Latest version ([v2.0.3](https://zenodo.org/record/7811795)) is composed of two
+files: `Robot@Home2_db.tgz` and `Robot@Home2_files.tgz`. The first one contains the
+database, and the second one contains the bunch of RGBD images and 3D scenes
+
+You can choose to download it on your own or through the new brand toolbox.
+
+In case you are considering Linux
+
+```shell
+$ wget https://zenodo.org/record/7811795/files/Robot@Home2_db.tgz
+$ wget https://zenodo.org/record/7811795/files/Robot@Home2_files.tgz
+```
+
+check the files integrity
+
+```shell
+$ md5sum Robot@Home2_db.tgz
+d34fb44c01f31c87be8ab14e5ecd0767 Robot@Home2_db.tgz
+
+$ md5sum Robot@Home2_files.tgz
+c55465536738ec3470c75e1671bab5f2 Robot@Home2_files.tgz
+```
+
+and to finish unzip files
+
+```shell
+$ pv /home/user/Downloads/Robot@Home2_db.tgz | tar -xzf - -C /home/user/WORKSPACE/
+$ pv /home/user/Downloads/Robot@Home2_files.tgz | tar -xzf - -C /home/user/WORKSPACE/files
+```
+
+or even better, now you can do the same programmatically using the toolbox
+
+```python
+import robotathome as rh
+
+# Download files
+rh.download('https://zenodo.org/record/7811795/files/Robot@Home2_db.tgz', '~/Downloads')
+rh.download('https://zenodo.org/record/7811795/files/Robot@Home2_files.tgz', '~/Downloads')
+
+# Compute md5 checksums
+md5_checksum_db = rh.get_md5('~/Downloads/Robot@Home2_db.tgz')
+md5_checksum_files = rh.get_md5('~/Downloads/Robot@Home2_files.tgz')
+
+# Check the files integrity and download
+if md5_checksum_db == 'd34fb44c01f31c87be8ab14e5ecd0767':
+ rh.uncompress('~/Downloads/Robot@Home2_db.tgz', '~/WORKSPACE')
+else:
+ print('Integrity of Robot@Home2_db.tgz is compromised, please download again')
+
+if md5_checksum_files == 'c55465536738ec3470c75e1671bab5f2':
+ rh.uncompress('~/Downloads/Robot@Home2_files.tgz', '~/WORKSPACE/files')
+else:
+ print('Integrity of Robot@Home2_files.tgz is compromised, please download again')
+```
+
+
+
+
+
+%prep
+%autosetup -n robotathome-1.1.9
+
+%build
+%py3_build
+
+%install
+%py3_install
+install -d -m755 %{buildroot}/%{_pkgdocdir}
+if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi
+if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi
+if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi
+if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi
+pushd %{buildroot}
+if [ -d usr/lib ]; then
+ find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/lib64 ]; then
+ find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/bin ]; then
+ find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/sbin ]; then
+ find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+touch doclist.lst
+if [ -d usr/share/man ]; then
+ find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst
+fi
+popd
+mv %{buildroot}/filelist.lst .
+mv %{buildroot}/doclist.lst .
+
+%files -n python3-robotathome -f filelist.lst
+%dir %{python3_sitelib}/*
+
+%files help -f doclist.lst
+%{_docdir}/*
+
+%changelog
+* Wed May 10 2023 Python_Bot <Python_Bot@openeuler.org> - 1.1.9-1
+- Package Spec generated
diff --git a/sources b/sources
new file mode 100644
index 0000000..4a60f99
--- /dev/null
+++ b/sources
@@ -0,0 +1 @@
+6f4f363d26a96202e1445e340c55fe3d robotathome-1.1.9.tar.gz