[openrtm-staff:1453] 1/25の作業報告(河内)
河内のぶ
n.kawauchi @ aist.go.jp
2018年 1月 25日 (木) 19:57:31 JST
安藤様
河内です
本日の作業内容をお知らせします。
------------
■OpenCV3.3 + GStreamer1.0
・GStreamerのインストールパスをbatファイルに定義してコマンドラインでの
ビルド動作確認
・マージモジュール作成用にバイナリのディレクトリ構造を整えているので、
これをOpenCV_DIRとして指定して動作を確認してみようとしたがダメ
⇒gstreamerを有効にしてのビルドはOKと判断しているが、実際に使えるのか
確認したかった
・下記サイトを参考にした
「OpenCVのGstreamerバックエンドで高度な動画キャプチャを実現する」
https://qiita.com/stnk20/items/242e400853579d511ea3
・以下のソースでは動かなかった
・カメラ映像そのまま使う時はcap(0)としているところをcap(pipe)にした
------ disp-test.cpp
#include <opencv2/opencv.hpp>
int main()
{
cv::Mat frame;
const char* pipe = "videotestsrc ! videoconvert ! appsink";
cv::VideoCapture cap(pipe);
if(!cap.isOpened())
{
return -1;
}
cv::namedWindow("Capture", CV_WINDOW_AUTOSIZE);
while(1)
{
cap >> frame;
imshow("Capture", frame);
if(cv::waitKey(30) >= 0)
{
cv::imwrite("img.png", frame);
break;
}
}
return 0;
}
------
・CMakeLists.txt
------
cmake_minimum_required(VERSION 2.8)
project (test-gstreamer)
set(OpenCV_DIR D:/distribution/windows/OpenCV3.3)
find_package(OpenCV)
include_directories(${OPENCV_INCLUDE_DIRS})
add_executable(disp-test disp-test.cpp)
target_link_libraries(disp-test ${OpenCV_LIBS})
------
・cmakeの結果
-- Found OpenCV: D:/distribution/windows/OpenCV3.3 (found version "3.3.0")
-- Found OpenCV 3.3.0 in D:/distribution/windows/OpenCV3.3/x86/vc10/lib
・実行するとcap.isOpened()で抜ける
>disp-test.exe
warning: Error opening file (/build/opencv/modules/videoio/src/cap_ffmpeg_impl.hpp:792)
warning: videotestsrc ! videoconvert ! appsink (/build/opencv/modules/videoio/src/cap_ffmpeg_impl.hpp:793)
・ffmpegバックエンドが使われているからエラーになっている?
・warningだからソースコードがOKならば処理が進む??
・gstreamerバックエンドの確認方法が分かりません (^_^;)
※OpenCV3.4.0が12/23にリリースされていましたので対応します
以上です。
---------------------------------------------------
河内 のぶ n.kawauchi @ aist.go.jp
産業技術総合研究所 ロボットイノベーション研究センター
ロボットソフトウエアプラットフォーム研究チーム
テクニカルスタッフ
More information about the openrtm-staff
mailing list