OpenCV バージョン4がリリース

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年半経ってるんだなぁ。
 https://blog.negativemind.com/2015/06/06/opencv-version-3-released/
 
 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
 
 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/


Originally published at NegativeMindException.