Присоединяйтесь!
Авторизация
Raspbian    Python    OpenCV   

Установка Python 3.4 и OpenCV 3.0 на Raspbian

16 December 2014 - Автор Businka76

Решил освоить raspberry, при этом не использовать компилируемые языки, выбор невольно остановился на Python 3. Поскольку изначально планировалось задействовать OpenCV, то на текущий момент это возможно только с OpenCV 3.0 beta которая рекомендует использовать с ней Python 3.4. Ни того ни другого в репозитории нет и пришлось собирать из исходников, по пути осваивая данный процесс. Идущим по моим следам посвящается:

Установка Python 3.4

Устанавливаем пакеты необходимые для Python:

sudo apt-get install zlib1g-dev  libbz2-dev libncurses5-dev libreadline6-dev libsqlite3-dev libssl-dev libgdbm-dev liblzma-dev tk-dev

Качаем и распаковываем исходники:

wget https://www.python.org/ftp/python/3.4.2/Python-3.4.2.tgz
tar -zxvf ./Python-3.4.2.tgz
cd ./Python-3.4.2/

Более свежие исходники можно взять с оф.сайта

Готовим к компиляции

./configure --prefix=/usr/local

Компилируем

make

Ближе к концу компиляции может появится сообщение о том что каких-то пакетов не хватает: "the necessary bits to build these modules were not found:" их можно до установить если они вам нужны, после чего повторить процедуру.

Cобираем пакет

sudo make install

По правильному надо собирать при помощи checkinstall, но не получилось как ни старался. setup_tools и pip ставятся автоматически

Создаем удобные симлинки в системе:

rm /usr/bin/python3
ln -s /usr/local/bin/python3 /usr/bin/
ln -s /usr/local/bin/pip3 /usr/bin/

OpenCV необходим питоновский модуль numpy - ставим

pip3 install numpy

Устанавливаем необходимые OpenCV пакеты (поставил все что просил)

sudo apt-get install cmake git build-essential pkg-config libpng12-0 libpng12-dev libpng++-dev libpng3 libpnglite-dev \
zlib1g-dbg zlib1g zlib1g-dev pngtools libtiff4-dev libtiff4 libtiffxx0c2 libtiff-tools libeigen3-dev libjpeg8 \
libjpeg8-dev libjpeg8-dbg libjpeg-progs ffmpeg libavcodec-dev libavcodec53 libavformat53 libavformat-dev \
libgstreamer0.10-0-dbg libgstreamer0.10-0 libgstreamer0.10-dev libxine1-ffmpeg libxine-dev libxine1-bin \
libunicap2 libunicap2-dev swig libv4l-0 libv4l-dev python-numpy libpython2.7 python-dev python2.7-dev libgtk2.0-dev
Скачиваем исходникиwget https://github.com/Itseez/opencv/archive/3.0.0-beta.zip
unzip 3.0.0-beta.zip
cd opencv-3.0.0-beta

Собираем (поскольку на raspbian несколько питонов, необходимо указать какой из них где)sudo cmake   \
	-D CMAKE_BUILD_TYPE=RELEASE \
	-D CMAKE_INSTALL_PREFIX=/usr/local/ \
        -D PYTHON2_EXECUTABLE=/usr/bin/python2 \
        -D PYTHON2_INCLUDE_PATH=/usr/include/python2.7/ \
	-D PYTHON2_LIBRARIES=/usr/lib/python2.7  \
	-D PYTHON2_PACKAGES_PATH=/usr/local/lib/python2.7/site-packages/ \
	-D PYTHON2_NUMPY_INCLUDE_DIRS=/usr/local/lib/python2.7/dist-packages/numpy/core/include \
        -D PYTHON3_EXECUTABLE=/usr/local/bin/python3 \
	-D PYTHON3_INCLUDE_PATH=/usr/local/include/python3.4m/ \
	-D PYTHON3_LIBRARIES=/usr/local/lib/python3.4/ \
	-D PYTHON3_PACKAGES_PATH=/usr/local/lib/python3.4/site-packages/ \
	-D PYTHON3_NUMPY_INCLUDE_DIRS=/usr/local/lib/python3.4/dist-packages/numpy/core/include/ .
sudo make
sudo make install

Cборка на raspberry занимает порядка 10-12 часов. checkinstall как и в случае с питоном работать отказался.

Чтобы Raspberry Camera стала стандартным V4L устройством /dev/video0, нужно выполнить: sudo modprobe bcm2835-v4l2

16 December 2014
Businka76
автор статьи

Комментариев: 0

Ваш комментарий будет первым

Отправить комментарий

Авторизуйтесь для отправки комментария

Присоединяйтесь
Новые сообщения