Skip to content
Gonzalo G. Fernández edited this page Mar 12, 2020 · 10 revisions

Entorno de desarrollo Python en Raspberry Pi

Instalación de Miniconda

La primera dificultad se encuentra en que Conda no tiene un instalador oficial en su página para procesadores ARM. Por lo tanto, es necesario obtener la última versión desarrollada para este tipo de arquitectura:

$ wget http://repo.continuum.io/miniconda/Miniconda3-latest-Linux-armv7l.sh

Por seguridad se verifica el HASH del archivo descargado:

$ sudo md5sum Miniconda3-latest-Linux-armv7l.sh

Se ejecuta la instalación, aceptando la licencia y cambiando la ubicación de la instalación al path /home/pi/miniconda3:

$ bash Miniconda3-latest-Linux-armv7l.sh

Se nos ofrece agregar al PATH la ruta de instalación de miniconda en /home/pi/.bashrc, respondemos que si, o se puede hacer manualmente, esto abriendo /home/pi/.bashrc con un editor como nano o vim, y agregando al final la siguiente línea:

export PATH=/home/pi/miniconda3/bin:$PATH

Para actualizar sin necesidad de reiniciar o loguearse nuevamente, se puede hacer un source de dicho archivo mediante el siguiente comando (desde el home):

$ source .bashrc

Luego de ejecutar este comando no debería figurar ningún error. Puede reiniciarse luego de la instalación, como una buena práctica. Para verificar que la instalación haya sido exitosa se puede ejecutar el siguiente comando:

$ conda --version

Donde debería entregar la versión de conda instalada.

Por último actualizamos la versión instalada mediante el siguiente comando:

$ conda update conda

Entorno virtual

Para crear el virtual environment, y poder trabajar de forma organizada con python, se ejecuta el siguiente comando:

conda create -n venv python

Donde venv es el nombre que se le da al entorno, y python es el primer paquete dentro de dicho entorno. Una vez creado el entorno, se puede avtivar con el siguiente comando:

$ source activate venv

Instalación de paquetes

A la hora de instalar paquetes, es muy probable que surja el problema de que no los encuentre. Esto sucede, por ejemplo, al intentar con el comando:

$ conda install numpy

El problema nuevamente es la arquitectura del procesador. Una solución a este problema es agregar el canal rpi en la configuración de conda. Esto mediante el siguiente comando:

$ conda config --add channels rpi

Una vez agregado, se puede instalar este tipo de paquetes. De surgir el mismo problema con algún otro paquete que se necesita instalar, una forma de proceder para resolverlo es buscar el canal adecuado y agregarlo con la misma instrucción.

Instalación de OpenCV

Para OpenCV es necesario una instalación compilando el código fuente. Para esto, es una buena práctica siempre antes de instalar algún paquet hacer un update del sistema:

$ sudo apt-get update
$ sudo apt-get upgrade
$ sudo rpi-update

A continuación se instalan las dependencias:

$ sudo apt-get install build-essential cmake pkg-config
$ sudo apt-get install libjpeg-dev libtiff5-dev libjasper-dev libpng12-dev
$ sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev
$ sudo apt-get install libxvidcore-dev libx264-dev
$ sudo apt-get install libgtk2.0-dev libgtk-3-dev
$ sudo apt-get install libatlas-base-dev gfortran

Se descarga el código fuente de OpenCV 3.4.1 y OpenCV-contrib:

$ wget -O opencv.zip https://github.com/Itseez/opencv/archive/3.4.1.zip
$ wget -O opencv_contrib.zip https://github.com/Itseez/opencv_contrib/archive/3.4.1.zip
$ unzip opencv.zip
$ unzip opencv_contrib.zip

Se procede a compilar OpenCV: 1

$ cd ~/opencv-3.4.1/
$ mkdir build
$ cd build
$ cmake -D CMAKE_BUILD_TYPE=RELEASE \
        -D CMAKE_INSTALL_PREFIX=/usr/local \
        -D INSTALL_PYTHON_EXAMPLES=ON \
        -D OPENCV_EXTRA_MODULES_PATH=~/opencv_contrib-3.4.1/modules \
        -D ENABLE_PRECOMPILED_HEADERS=OFF \
        -D BUILD_EXAMPLES=ON ..

Para la instalación de OpenCV, se siguió los pasos en este artículo.

Workflow con SSH

Copiar archivos de una máquina a otra

Utilizando comando scp:

scp <source> <destination>

Por ejemplo:

scp /path/to/file [email protected]:/home/pi/path/to/folder

Activación del entorno de trabajo en la aplicación

Ejecutar la siguiente línea:

source activate venv