alpha, beta, rcを経て、ついにOpenCVのバージョン4がリリースされたぞ!
OpenCV 4.0
リリースハイライト:
- 現在OpenCVはC++11のライブラリであり、C++11準拠のコンパイラが必要です。CMakeはバージョン3.5.1以上が必要となります。
- OpenCV 1.xから続いていた多くのC APIを廃止しました。
- coreモジュールの永続データ機能(XML, YAML, JSONへの構造化データの保存・読み込み)は全てC++で再実装し、C APIを廃止しました。
- 新しくG-APIモジュールを追加しました。これは非常に効率的なグラフベースの画像処理パイプラインエンジンとして機能します。
- dnnモジュールには試験的にVulkanバックエンドを実装、ONNX形式のネットワークもサポートしました。
- 一般的なKinect FusionアルゴリズムをCPUとGPU(OpenCL)用に実装して最適化しました。
- objdetectモジュールにQRコード検出器とデコーダを追加しました。
- 非常に効率的かつ高品質なDIS dense optical flowアルゴリズムをopencv_contribからvideoジュールへ移動しました。
- 詳細は過去のアナウンスに記載されています: 4.0-alpha, 4.0-beta, 4.0-rc, changelog
ドキュメントはこちら↓
https://docs.opencv.org/4.0.0/
バージョン4からついにC APIが廃止になったけど、ここ最近はCどころかC++よりもPythonから利用されることの方が多いんじゃなかろうか。(DeepLearning系のライブラリが大体Pythonメインだから)
バージョン3のリリースからもう3年半経ってるんだなぁ。

GitHubでは数日前からopencvおよびopencv_contribのバージョン4.0.0のコードが公開されてはいた。
https://github.com/opencv/opencv/releases/tag/4.0.0
https://github.com/opencv/opencv_contrib/releases/tag/4.0.0
https://qiita.com/dandelion1124/items/eae435e601fba2adb0d1
追記:OpenCvSharpもバージョン4に対応したようです↓
https://www.nuget.org/packages/OpenCvSharp3-AnyCPU/4.0.0.20181129
OpenCV 4.0.0のChangeLogを読んでいて個人的に面白いなぁと思ったのは、QRコードを検出・デコードする機能が標準で入ったこと。サンプルコードもある↓
https://github.com/opencv/opencv/blob/master/samples/cpp/qrcode.cpp
そして、G-APIという新しいモジュール。グラフベースのパイプラインって、ノードを繋いでいくビジュアルプログラミングみたいなやつ?
早速試した方もいるようだ↓
https://neno-garden.com/blog/2018/11/20/opencv4-g-api/
dandelion先生の新刊で勉強しよう↓
#技術書典 6で頒布した「OpenCV 4.0ガイドブック」をBOOTHで販売開始しました. https://t.co/QXvFZdox3X
— dandelion (@dandelion1124) 2019年4月14日
2019年4月9日 追記:OpenCV 4.1がリリースされた↓
OpenCV 4.1
リリースハイライト:
- core, imgprocモジュールの巨大な関数セットの処理がruntime時に最適化できるようになりました。
- dnnモジュールの以下のように改良しました:
- 推論エンジンのバックエンドをIntel® Neural Compute Stick 2でサポートされているNN Builder APIに切り替えました。
- ピーク時のメモリ消費量を削減し、TensorFlowの複数の新しいネットワークをサポートしました。
- videoioモジュールにAndroid Media NDK APIのサポートを追加しました。
- Perceptually Uniform Sequential Colormapsを追加しました。
- opencv_contribに新しいImage Quality Analysisモジュール(quality)を追加し、PSNRやSSIMなどと同様にReferenceless BRISQUE(Image Spatial Quality Evaluator)アルゴリズムを実装しました。
- opencv_contrib/optflow moduleモジュールにRobust Local Optical Flowアルゴリズムを追加しました。
- opencv_contrib/stereoモジュールにQuasi Dense Stereo matchingアルゴリズムを実装しました。
- Hand-Eye Calibration手法を追加しました。
より詳しい情報はChangelogをご覧ください。
2019年12月 追記:OpenCV 4.2がリリースされたぞ↓
OpenCV 4.2
関連記事
Raspberry PiでIoTごっこ
ポリゴン用各種イテレータと関数セット
python-twitterで自分のお気に入りを取得する
OpenCVのfindEssentialMat関数を使ったサ...
機械学習に役立つPythonライブラリ一覧
OpenCVでPhotoshopのプラグイン開発
OpenCVで平均顔を作るチュートリアル
SVM (Support Vector Machine)
PythonでBlenderのAdd-on開発
CycleGAN:ドメイン関係を学習した画像変換
手を動かしながら学ぶデータマイニング
bpy-renderer:レンダリング用Pythonパッケー...
Pythonの自然言語処理ライブラリ『NLTK(Natura...
Raspberry Pi 2のGPIOピン配置
FreeMoCap Project:オープンソースのマーカー...
OpenCVでiPhone6sのカメラをキャリブレーションす...
『手を動かしながら学ぶエンジニアのためのデータサイエンス』ハ...
CGALDotNet:計算幾何学ライブラリ CGALのC#ラ...
MVStudio:オープンソースのPhotogrammetr...
オープンソースの取引プラットフォーム
オープンソースのプリント基板設計ツール『KiCad』
OpenCV 3.1のsfmモジュールを試す
機械学習について最近知った情報
ManimML:機械学習の概念を視覚的に説明するためのライブ...
LuxCoreRender:オープンソースの物理ベースレンダ...
JavaScriptとかWebGLとかCanvasとか
Human Generator:Blenderの人体生成アド...
viser:Pythonで使える3D可視化ライブラリ
ZBrushで作った3Dモデルを立体視で確認できるVRアプリ...
iOSデバイスと接続して連携するガジェットの開発方法
海外ドラマのChromaKey
Amazon EC2ログイン用の秘密鍵を無くした場合の対処方...
オープンソースの顔認識フレームワーク『OpenBR』
機械学習で遊ぶ
Unity ARKitプラグインサンプルのチュートリアルを読...
為替レートの読み方 2WAYプライス表示
3Dスキャンに基づくプロシージャルフェイシャルアニメーション
Open Shading Language (OSL)
法線マップを用意してCanvas上でShadingするサンプ...
Faster R-CNN:ディープラーニングによる一般物体検...
IronPythonを使ってUnity上でPythonのコー...
ROMOハッカソンに行ってきた


コメント