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年半経ってるんだなぁ。
OpenCVのバージョン3が正式リリースされたぞ
6月4日付でついにOpenCV 3.0の正式版がリリースされた。 さっそくOpenCV公式ページからインストーラーをダウンロードしたら、ページ上で以下の動画が再生された。 Google Summer Of Code 2014 contrib...


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先生の新刊で勉強しよう↓


スポンサーリンク



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


スポンサーリンク

関連記事

自前のShaderがおかしい件
hloc:SuperGlueで精度を向上させたSfM実装
Mean Stack開発の最初の一歩
Boost オープンソースライブラリ
libigl:軽量なジオメトリ処理ライブラリ
機械学習のオープンソースソフトウェアフォーラム『mloss(machine learning ope...
YOLO (You Only Look Once):ディープラーニングによる一般物体検出手法
Google App Engineのデプロイ失敗
Pythonの自然言語処理ライブラリ『NLTK(Natural Language Toolkit)』
Qlone:スマホのカメラで3Dスキャンできるアプリ
立体視を試してみた
UnityでLight Shaftを表現する
HD画質の無駄遣い
Quartus II
TensorFlowでCGを微分できる『TensorFlow Graphics』
Webスクレイピングの勉強会に行ってきた
ブログの復旧が難航してた話
PyTorch3D:3Dコンピュータービジョンライブラリ
オープンソースの人体モデリングツール『MakeHuman』のAPI開発プロジェクトがスタート
OpenCVで動画の手ぶれ補正
GoB:ZBrushとBlenderを連携させるアドオン
Geogram:C++の3D幾何アルゴリズムライブラリ
CNN Explainer:畳み込みニューラルネットワーク可視化ツール
NeRF (Neural Radiance Fields):深層学習による未知視点合成
クラスの基本
3Dスキャンに基づくプロシージャルフェイシャルアニメーション
Kornia:微分可能なコンピュータービジョンライブラリ
UnityでShaderの入力パラメータとして行列を渡す
Fast R-CNN:ディープラーニングによる一般物体検出手法
顔画像処理技術の過去の研究
Kinect for Windows V2のプレオーダー開始
フィーリングに基づくタマムシの質感表現
AMIMOTO(PVM版)で作成したインスタンスをAMIMOTO (HVM版)へ移行する
画像生成AI Stable Diffusionで遊ぶ
UnityのMonoBehaviourクラスをシングルトン化する
Alice Vision:オープンソースのPhotogrammetryフレームワーク
OpenCV 3.3.0 contribのsfmモジュールのサンプルを動かしてみる
Python.NET:Pythonと.NETを連携させるパッケージ
ZBrushで作った3Dモデルを立体視で確認できるVRアプリを作る
Unityの各コンポーネント間でのやり取り
Math Inspector:科学計算向けビジュアルプログラミングツール
trimesh:PythonでポリゴンMeshを扱うライブラリ

コメント