質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.46%
コンパイルエラー

コンパイルのフェーズで生成されるエラーです。よく無効なシンタックスやタイプが含まれているとき発生します。

C++

C++はC言語をもとにしてつくられた最もよく使われるマルチパラダイムプログラミング言語の1つです。オブジェクト指向、ジェネリック、命令型など広く対応しており、多目的に使用されています。

Q&A

0回答

1946閲覧

コンパイルエラーC2039とC2512

aaiiuueeoo

総合スコア0

コンパイルエラー

コンパイルのフェーズで生成されるエラーです。よく無効なシンタックスやタイプが含まれているとき発生します。

C++

C++はC言語をもとにしてつくられた最もよく使われるマルチパラダイムプログラミング言語の1つです。オブジェクト指向、ジェネリック、命令型など広く対応しており、多目的に使用されています。

0グッド

0クリップ

投稿2021/09/08 02:19

編集2021/09/13 04:46

前提・実現したいこと

下記のようなエラーが発生しています。
直し方がわかる方がいたら教えていただけると幸いです。
宜しくお願いします。

発生している問題・エラーメッセージ

エラーメッセージ 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 スキップ ==========

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

aaiiuueeoo

2021/09/09 07:33

読みました。しかし、初心者というのもあり理解ができなかったので質問をしに来ました。 すみません。
itagagaki

2021/09/09 11:16

[IntelRealSense/librealsense: Intel® RealSense™ SDK]https://github.com/IntelRealSense/librealsense を持ってきて、質問に添付されているコードからopencv部分を除いてコンパイルしてみましたが、エラーは出ませんでした。 他にもエラーがあるのではないですか?
yumetodo

2021/09/09 14:50

VSのビルドログすべて(リビルドして)を提示してください。
aaiiuueeoo

2021/09/13 04:22

E0135 class "rs2::depth_frame" にメンバー "apply_filter" がありません このエラーも出ていました。 あと、ビルドログとは何でしょうか。ビルドした後の”出力”のところでしょうか。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.46%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問