Introduction
OpenCVにQt5機能が加わるとどの様になるか、全く想像できませんが、とりあえずインストールしてみました。本稿ではOpenCVにQt5を追加インストールする手順について、以下の通り述べます。
- CMake Programの設定
- Visual C++を使ってOpenCV libraryを構築
- 環境変数の設定
- サンプルプログラムの実行テスト
また、一連の操作に関しては、OpenCV/Initial Installationのページが参考になります。
それでは、参りましょう。
Appending Qt 5 Toolkit onto OpenCV 4
OpenCV 4 に Qt5 を追加インストールする手順は CMake Programで各項目を設定して、Visual C++でOpenCV libraryを構築、その後環境変数を設定して、サンプルプログラムで確認する流れとなります。
CMake Programの設定
先ず、CMake ProgramでOpenCV CMakefileを設定します。設定グループは大きく分けて2つ、「PYTHON3」と「WITH_QT」となります。
「PYTHON3」グループを確認する
「PYTHON3」グループ下の以下の4項目にファイル/フォルダー名を入力します。
- 「PYTHON3_EXECUTABLE」にPython 3の実行ファイルを入力
(e.g. e:/Python/python-3.8.6/python.exe)
- 「PYTHON3_INCLUDE_DIR」にPython 3の「include」フォルダーを入力
(e.g. e:/Python/python-3.8.6/include)
- 「PYTHON3_LIBRARY」にPython 3のライブラリファイルを入力
(e.g. e:/Python/python-3.8.6/libs/python38.lib)
- 「PYTHON3_PACKAGE_PATH」にPython 3の「site-package」フォルダーを入力
(e.g. e:/Python/python-3.8.6/Lib/site-packages)
「WITH」グループを確認する
「WITH」グループ下では、「WITH_QT」にチェックを入れます。
そのまま「Configure」をクリックすると、エラーが発生します。
「Ungrouped Entry」グループを確認する
ここで、先のエラーに対応します。「Ungrouped Entry」グループ下の「Qt5_DIR」項目に、以下のファイルのいずれかが収納されているフォルダーを入力します。
- Qt5Config.cmake、 または
- qt5-config.cmake
(e.g. e:/Qt/qt5/qt5-build/qtbase/lib/cmake/Qt5)
再度 「Configure」をクリック
再度 「Configure」をクリックして、「Ungrouped Entry」グループを確認すると、Qt5関連の項目にフォルダー名が自動的で入力されています。
「GUI:」グループの「QT:」項目を確認すると、Qt5が認識されていますか?
ここで、レポート表示左下の「Configuring done」を確認します。
「Generate」をクリック
ここで「Generate」をクリックして、レポート表示左下の「Generating done」を確認します。
「Open Project」 をクリック
この時点で、OpenCVのCMakefileが作成されています。「Open Project」 をクリックすると、ライブラリー構築のために Visual C++が起動します。
Visual C++を使ってOpenCV libraryを構築
Visual C++では、ビルド前に「構成マネージャー」にて「INSTALL」にチェックすると良いでしょう。
「Debug」と「Release」モードでビルドしましょう。
環境変数の設定
Qt 5の環境変数の設定について
Qt 5の環境変数の設定は以下の通り。
- %QT_DIR%=E:\Qt\qt5\qt5-build
- (library Path)=%QT_DIR%\qtbase\lib
- (binary Path)=%QT_DIR%\qtbase\bin
OpenCV 4.5.0の環境変数の設定について
MSVCを2017から2019にアップグレードした為、OpenCVを4.5.0にアップグレードしました。また、環境変数の設定はアップグレードに応じて変更しました。
サンプルプログラムの実行テスト
作成されたサンプルプログラムにメニューのアイコンが表示されています。
私見になりますが、Qtの機能はこの程度ではないと思っています。Qtはhttps://wiki.qt.io/About_Qtにてクロスプラットフォームのアプリケーション デベロップメント フレームワークであることが提唱されております。少し勉強して、Qtの機能をもっと活用したいと考えます。
Conclusion
如何でしたか。本稿ではOpenCVにQt 5を追加インストールする手順を列記しました。最後までお読みいただき、ありがとうございました。