(追記:2019-04-15) 最新版は、ラズパイ3にOpenCV3/4を簡単に導入 を見てください。
- (2018-11-22 JST 更新3)
libopencv4_4.0.0-20181122.1_armhf.deb
をビルドしました。(pkgconfigのみの変更) rpi01向けは..そのうちできました. - (2018-11-22 JST 更新1) OpenCV 4のラズパイ向けパッケージです。
- OpenCV 3はこちら: ラズパイ3にOpenCV3を簡単に導入
TL;DR
OPENCV_DEB=libopencv4_4.0.0-20181122.1_armhf.deb
# OPENCV_DEB=libopencv4_4.0.0+rpi01-20181122.1_armhf.deb # RaspberyPi Zero/1 向け
curl -SL https://github.com/mt08xx/files/raw/master/opencv-rpi/${OPENCV_DEB} -o ${OPENCV_DEB}
sudo apt autoremove -y libopencv{3,4} ; \
sudo apt install -y ./${OPENCV_DEB} ; \
sudo ldconfig
# Version 確認
python2 -c 'import cv2; print(cv2.__version__)'
python3 -c 'import cv2; print(cv2.__version__)'
概要
-
2018-11-20 に OpenCV 4.0のリリースがアナウンスされたようです。
-
OpenCV 4のラズパイ向けパッケージを作成しました。
-
RPi2/3向け(NEON=VFPV3=ON)と、Zero/1向け(NEON=VFPV3=OFF)があります。
-
ぐーぐる先生翻訳改
OpenCV 4.0
2018/11/20
3.0のリリース開始から約3年半後1に、4.x系の最初の安定リリースを発表することができて喜んでいます。
- リリースのハイライト:
-
OpenCVは、いまC++ 11ライブラリになり、C++ 11準拠のコンパイラが必要です。 必要最小限のCMakeバージョンが3.5.1に上げられました。
-
OpenCV 1.xの多くのC APIが削除されました。
-
コアモジュール内の永続性(XML、YAML、またはJSONへのストア/ロードの構造化データ)は、C++で完全に再実装され、CのAPIも失われています。
-
新しいモジュールG-APIが追加され、非常に効率的なグラフベースの画像処理パイプラインのエンジンとして機能します。
-
dnn
モジュールには実験的なVulkanバックエンドが含まれ、ONNX形式のネットワークをサポートします。 -
一般的なKinect Fusionアルゴリズムは、CPUとGPU(OpenCL)用に実装され、最適化されています。
-
QRコード検出器とデコーダが
objdetect
モジュールに追加されました -
非常に効率的かつ高品質なDIS高密度オプティカルフローアルゴリズムが
opencv_contrib
からvideo
モジュールに移行しました。
-
ブランチ3.4はメンテナンスモードに切り替わります。バグ修正と軽い機能のみが受け入れられます。 ところで、リリース3.4.4も用意されています!
OpenCV 2018アンケートにまだ参加していない人は、あなたの考えを分かち合うことができます。
その他
-
betaのあと確認するのを忘れていたら、いつの間にか正式版がでていたので、4.0.0-rcのビルドしてない.
-
[メモ] python2と3のcv2 のビルド(リンク?)にgccが1GBくらいメモリを使うので、仮想メモリがたりないとかで止まったら、CTRL-Cして、make -j1でビルドする
-
Python向けのインストールスクリプトが変更されたためか、
20181119.1
を作成したものでは、すんなり pythonでつかえなかった。- Issue: OpenCV 3.4.4 Python binding #13202
を参考に、cmakeのオプションで、以前と同様にインストールするようにした。
- Issue: OpenCV 3.4.4 Python binding #13202
-
(2018-11-22 JST 更新2) あぁぁ... pkgconfigが生成されてない.. (
20181119.1
にて)OPENCV_GENERATE_PKGCONFIG=ON
が必要っぽい...
(3.4.4のパッケージは大丈夫だった..)
以下、ベータまで内容
-
(追記:2018-10-18) OpenCV 4.0.0-beta が出たので、同様にビルドしました。
-
OpenCV 4.0.0-alpha が出たので、Raspberry Pi 2/3向け(VFPV3,NEON=ON)にビルドして、debパッケージを作りました。
-
OpenCV 4版の ラズパイ3にOpenCV3を簡単に導入 のようなとこです。
TL;DR
# Remove previous version 前のバージョンをインストールしていない場合はスキップ
sudo apt autoremove libopencv3
sudo apt autoremove libopencv4
# Install
# 4.0.0+beta
wget https://github.com/mt08xx/files/raw/master/opencv-rpi/libopencv4_4.0.0+beta-20181017.1_armhf.deb
sudo apt install -y ./libopencv4_4.0.0+beta-20181017.1_armhf.deb
# 4.0.0+alpha
# wget https://github.com/mt08xx/files/raw/master/opencv-rpi/libopencv4_4.0.0+alpha-20180920.1_armhf.deb
# sudo apt install -y ./libopencv4_4.0.0+alpha-20180920.1_armhf.deb
sudo ldconfig
# Version check
python2 -c 'import cv2; print(cv2.__version__)'
python3 -c 'import cv2; print(cv2.__version__)'
#その他
-
Lena様の顔検出のテストのみ確認。
-
フォルダが変更になってるので注意
/usr/local/share/OpenCV/
=>/usr/local/share/opencv4/
- 顔検出に使うカスケードファイルとか.
- 変更前:
cascPath = '/usr/local/share/OpenCV/lbpcascades/lbpcascade_frontalface.xml'
- 変更後:
cascPath = '/usr/local/share/opencv4/lbpcascades/lbpcascade_frontalface.xml'
- 変更前:
- 顔検出に使うカスケードファイルとか.
-
バージョン
バージョンpi@raspberrypi:~ $ python2 -c 'import cv2; print(cv2.__version__)' 4.0.0-beta pi@raspberrypi:~ $ python3 -c 'import cv2; print(cv2.__version__)' 4.0.0-beta
-
[メモ] python2と3のcv2 のビルドにgccが1GBくらいメモリを使うので、仮想メモリがたりないとかで止まったら、CTRL-Cして、
make -j1
でビルドする -
(追記:2018-10-18) [メモ] SWAPを100 => 1024 MBに変更してから、ビルドすると、止まらない。
Swapサイズ変更
sudo sed -i -e 's/^CONF_SWAPSIZE=100/CONF_SWAPSIZE=1024/' /etc/dphys-swapfile
sudo systemctl restart dphys-swapfile