前提・実現したいこと
下記のようなエラーが発生しています。
直し方がわかる方がいたら教えていただけると幸いです。
宜しくお願いします。
発生している問題・エラーメッセージ
エラーメッセージ C2039 'apply_filter': 'rs2::depth_frame' のメンバーではありません C2512 'rs2::video_frame': クラス、構造体、共用体に既定のコンストラクターがありません。
該当のソースコード
C++
1 2#include <librealsense2/rs.hpp> 3#include <opencv2/opencv.hpp> 4#include <iostream> 5 6 7int main(int argc, char* argv[]) try 8{ 9 int WIDTH = 640; 10 int HEIGHT = 480; 11 int FPS = 30; 12 rs2::config config; 13 config.enable_stream(RS2_STREAM_COLOR, WIDTH, HEIGHT, RS2_FORMAT_BGR8, FPS); 14 config.enable_stream(RS2_STREAM_DEPTH, WIDTH, HEIGHT, RS2_FORMAT_Z16, FPS); 15 rs2::pipeline pipe; 16 pipe.start(config); 17 18 rs2::colorizer color_map; 19 rs2::align align(RS2_STREAM_COLOR); 20 21 for (int i = 0; i < 3; i++) 22 { 23 rs2::frameset frames = pipe.wait_for_frames(); 24 cv::waitKey(10); 25 } 26 27 while (true) 28 { 29 rs2::frameset frames = pipe.wait_for_frames(); 30 auto aligned_frames = align.process(frames); 31 rs2::video_frame color_frame = aligned_frames.first(RS2_STREAM_COLOR); 32 rs2::video_frame depth_frame = aligned_frames.get_depth_frame().apply_filter(color_map); 33 34 cv::Mat color_image(cv::Size(WIDTH, HEIGHT), CV_8UC3, (void*)color_frame.get_data(), cv::Mat::AUTO_STEP); 35 cv::Mat depth_image(cv::Size(WIDTH, HEIGHT), CV_8UC3, (void*)depth_frame.get_data(), cv::Mat::AUTO_STEP); 36 37 cv::Mat images(cv::Size(2 * WIDTH, HEIGHT), CV_8UC3); 38 cv::Mat color_positon(images, cv::Rect(0, 0, WIDTH, HEIGHT)); 39 color_image.copyTo(color_positon); 40 cv::Mat depth_positon(images, cv::Rect(WIDTH, 0, WIDTH, HEIGHT)); 41 depth_image.copyTo(depth_positon); 42 cv::imshow("images", images);! 43 44 if (cv::waitKey(10) == 27) // ESCキーで終了 45 { 46 cv::destroyAllWindows; 47 break; 48 } 49 } 50 pipe.stop(); 51 52 return EXIT_SUCCESS; 53} 54catch (const rs2::error& e) 55{ 56 std::cerr << "RealSense error calling " << e.get_failed_function() << "(" << e.get_failed_args() << "):\n " << e.what() << std::endl; 57 return EXIT_FAILURE; 58} 59catch (const std::exception& e) 60{ 61 std::cerr << e.what() << std::endl; 62 return EXIT_FAILURE; 63}
ビルドログ
ビルドを開始しました...
1>------ ビルド開始: プロジェクト: Project2, 構成: Debug x64 ------
1>ソース.cpp
1>C:\opencv3.1\build\include\opencv2\core\mat.hpp(1965,1): warning C4819: ファイルは、現在のコード ページ (932) で表示できない文字を含んでいます。データの損失を防ぐために、ファイルを Unicode 形式で保存してください。
1>C:\opencv3.1\build\include\opencv2\core\persistence.hpp(1,1): warning C4819: ファイルは、現在のコード ページ (932) で表示できない文字を含んでいます。データの損失を防ぐために、ファイルを Unicode 形式で保存してください。
1>C:\opencv3.1\build\include\opencv2\core\utility.hpp(1,1): warning C4819: ファイルは、現在のコード ページ (932) で表示できない文字を含んでいます。データの損失を防ぐために、ファイルを Unicode 形式で保存してください。
1>C:\opencv3.1\build\include\opencv2\core\utility.hpp(1,1): warning C4819: ファイルは、現在のコード ページ (932) で表示できない文字を含んでいます。データの損失を防ぐために、ファイルを Unicode 形式で保存してください。
1>C:\Users\student\source\repos\Project2\Project2\ソース.cpp(31,68): error C2039: 'apply_filter': 'rs2::depth_frame' のメンバーではありません
1>C:\Program Files (x86)\Intel RealSense SDK 2.0\include\librealsense2\hpp\rs_frame.hpp(539): message : 'rs2::depth_frame' の宣言を確認してください
1>C:\Users\student\source\repos\Project2\Project2\ソース.cpp(31,33): error C2512: 'rs2::video_frame': クラス、構造体、共用体に既定のコンストラクターがありません。
1>C:\Program Files (x86)\Intel RealSense SDK 2.0\include\librealsense2\hpp\rs_frame.hpp(407,11): message : 'rs2::video_frame' の宣言を確認してください
1>C:\Users\student\source\repos\Project2\Project2\ソース.cpp(45,13): warning C4551: 関数呼び出しに引数リストがありません。
1>プロジェクト "Project2.vcxproj" のビルドが終了しました -- 失敗。
========== ビルド: 0 正常終了、1 失敗、0 更新不要、0 スキップ ==========
あなたの回答
tips
プレビュー