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

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

新規登録して質問してみよう
ただいま回答率
85.50%
C

C言語は、1972年にAT&Tベル研究所の、デニス・リッチーが主体となって作成したプログラミング言語です。 B言語の後継言語として開発されたことからC言語と命名。そのため、表記法などはB言語やALGOLに近いとされています。 Cの拡張版であるC++言語とともに、現在世界中でもっとも普及されているプログラミング言語です。

OpenCV

OpenCV(オープンソースコンピュータービジョン)は、1999年にインテルが開発・公開したオープンソースのコンピュータビジョン向けのクロスプラットフォームライブラリです。

C++

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

Q&A

解決済

2回答

14009閲覧

OPENCVのプログラムがビルドされません。

carnage0216

総合スコア194

C

C言語は、1972年にAT&Tベル研究所の、デニス・リッチーが主体となって作成したプログラミング言語です。 B言語の後継言語として開発されたことからC言語と命名。そのため、表記法などはB言語やALGOLに近いとされています。 Cの拡張版であるC++言語とともに、現在世界中でもっとも普及されているプログラミング言語です。

OpenCV

OpenCV(オープンソースコンピュータービジョン)は、1999年にインテルが開発・公開したオープンソースのコンピュータビジョン向けのクロスプラットフォームライブラリです。

C++

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

0グッド

0クリップ

投稿2018/02/01 00:57

編集2018/02/01 01:51

visuals studio community 2015でプログラムを実行しようとしたところファイルが開けないとエラーが出ました。
Debug x64 
ソースコードは以下の通りです。(※一か月前にも同じようにビルドした時は正常に終了できたのですが、何かしらの原因で正常にビルドできませんでした。たまたま成功しただけかもしれません。
またどのように設定したなども覚えていないため恥ずかしながら途方に暮れています。)

#include <sstream> #include <opencv2/opencv.hpp> using namespace std; void doJob() { cv::VideoCapture cap(0); cv::Mat image; while (1) { cap >> image; cv::imshow("video", image); auto key = cv::waitKey(1); if (key == 'q') break; } cv::destroyAllWindows(); } int main(int argc, char** argv) { try { doJob(); } catch (exception &ex) { cout << ex.what() << endl; string s; cin >> s; } return 0; } コード

こちらがエラーコードです。

エラー (アクティブ) 識別子 "image" が定義されていません opencvnewtest c:\Users\Daito\Documents\Visual Studio 2015\Projects\opencvnewtest\opencvnewtest\Source.cpp 11 重大度レベル コード 説明 プロジェクト ファイル 行 抑制状態 エラー (アクティブ) 名前の後に '::~' を付けることができるのはクラス名または名前空間名だけです opencvnewtest c:\Users\Daito\Documents\Visual Studio 2015\Projects\opencvnewtest\opencvnewtest\Source.cpp 8 重大度レベル コード 説明 プロジェクト ファイル 行 抑制状態 エラー (アクティブ) ソース ファイルを開けません "opencv2/opencv.hpp" opencvnewtest c:\Users\Daito\Documents\Visual Studio 2015\Projects\opencvnewtest\opencvnewtest\Source.cpp 3 重大度レベル コード 説明 プロジェクト ファイル 行 抑制状態 エラー C1083 include ファイルを開けません。'opencv2/opencv.hpp':No such file or directory opencvnewtest c:\users\daito\documents\visual studio 2015\projects\opencvnewtest\opencvnewtest\source.cpp 3 重大度レベル コード 説明 プロジェクト ファイル 行 抑制状態 エラー (アクティブ) ';' が必要です opencvnewtest c:\Users\Daito\Documents\Visual Studio 2015\Projects\opencvnewtest\opencvnewtest\Source.cpp 8 出力からは 1>------ ビルド開始: プロジェクト:opencvnewtest, 構成:Debug x64 ------ 1> Source.cpp 1>c:\users\daito\documents\visual studio 2015\projects\opencvnewtest\opencvnewtest\source.cpp(3): fatal error C1083: include ファイルを開けません。'opencv2/opencv.hpp':No such file or directory ========== ビルド: 0 正常終了、1 失敗、0 更新不要、0 スキップ ========== のエラーが出ました。ちなみにプログラムに書いてあるヘッダファイルはc:\users\daito\documents\visual studio 2015\projects\に入れたほうが良いのでしょうか? コード

読み込みたいOPENCVのヘッダファイルopencv.hppはC:\opencv\include\opencv2に入っています。

参考にしたサイトはこちらです。
http://nw.tsuda.ac.jp/lec/opencv/OpenCV/
指示通りに行ったと思うのですが私の不注意でミスを犯してるかもしれません。

そこで、プロジェクトのプロパティから追加インクルードディレクトリでファイルを選択しようとしたところフォルダはあるのですが、中身が空っぽでした。
visuals studioとは無関係のエクスプローラでフォルダを開いた場合はちゃんとファイルは入っていました。
調べてみるとインクルード ディレクトリのソース コードはINCLUDE 環境変数と対応するようで環境変数にインクルードの情報が書いていないためだと思うのですが、どのような対処をして良いかわかりません。
何か対処法はないでしょうか?
どうかよろしくお願いします。

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

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

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

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

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

unz.hori

2018/02/01 01:04

visuals→visualのtypoですね。多分、Visual Studioで開いた場合は拡張子が絞られていて見えないのでしょう。エクスプローラでフォルダを開いた時には何のファイルがありましたか?そもそも開けないファイルの種類は何でしょうか?
guest

回答2

0

ベストアンサー

...何の問題もありませんねぇ。 (Visual Studio 2017 community, OpenCV 3.1, x64 release)
プロパティ3か所いぢって一発完動です。

  • C/C++ / 全般 / 追加のインクルードディレクトリ: <OPENCVDIR>\include
  • リンカー / 追加のライブラリディレクトリ : <OPENCVDIR>\x64\vc14\lib
  • リンカー / 入力 / 追加の依存ファイル : opencv_world310.lib;....

<OPENCVDIR> はテキトーに置き換えて。

投稿2018/02/01 02:39

編集2018/02/01 02:41
episteme

総合スコア16614

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

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

carnage0216

2018/02/01 02:49

使っているOPENCVが3.xでないためエラーが起きているのかもしれません。 あの、好奇心でお尋ねしたいのですがサイトではdebugでしたがなでreleaseでビルドしたのでしょうか?
episteme

2018/02/01 02:49

Debugの必要ないから。
carnage0216

2018/02/01 02:50

ちなみに使っているOPENCVのバージョンは2.4.13.5です。
carnage0216

2018/02/01 02:50

そうなのですか。どうもありがとうございます。
episteme

2018/02/01 02:57

> 使っているOPENCVが3.xでないためエラーが起きているのかもしれません 検証なき推測は「あてずっぽ」でしかない。 診察なしに治療するな。ヤブ医者になりたいか(二度目)
carnage0216

2018/02/01 03:10

あてずっぽのように見えてしまいすいません。ちゃんと調べて試行錯誤しているつもりです。 決して検証せずに推測しているわけではありません。しかし、検証して推測してもエラーが取り除けない以上は当てずっぽうと言われても仕方ありません。 ちなみに、epistemeさんはNuGetからOpenCVをインストールしたのでしょうか?
carnage0216

2018/02/01 03:48

環境変数においてはシステム環境のpathにC:\opencv\bin以外に行ったことはありますか? またvisual studio に関してOPENCVのインクルードファイルはどこに置いて、追加インクルードディレクトリにはどのように指定しましたか? お手数をおかげしますがどうかよろしくお願いいたします。
episteme

2018/02/01 03:55 編集

> 環境変数においてはシステム環境のpathにC:\opencv\bin以外に行ったことはありますか? すまんが日本語で頼む。 > OPENCVのインクルードファイルはどこに置いて、追加インクルードディレクトリにはどのように指定しましたか? 追加インクルードディレクトリ等々にちゃんと設定すればどこでも構わん。 ...解決してないの? なぜにベストアンサー?
carnage0216

2018/02/01 03:59

環境変数においてはシステム環境のpathにC:\opencv\bin以外を書き足す以外にincludeやlibをいじったりしましたか?ということです。書き方がおかしかったです。 わたしはC:\opencv\include\opencv2のopencv2の中にヘッダファイルopencv.hppがあるので 追加インクルードディレクトリにはC:\opencv\include\opencv2と書いているのですが、この指定は間違っていますか?
carnage0216

2018/02/01 04:00

返信しようと間違えてベストアンサーを押してしまいました。
episteme

2018/02/01 04:06

> 環境変数においてはシステム環境のpathにC:\opencv\bin以外を書き足す以外にincludeやlibをいじったりしましたか? pathを含め一切変更してません。必要なDLLは.exeと同じdir.にコピー。 > 追加インクルードディレクトリにはC:\opencv\include\opencv2と書いているのですが、この指定は間違っていますか? めっちゃ間違ってます。 #include <opencv2/opencv.hpp> なんだから設定すんのは C:\opencv\include だろ!? じゃないと C:\opencv\include\opencv2\opencv2\opencv.hpp 探そうとするだろ?
episteme

2018/02/01 04:10

そうそう、2.4.13でもできたよ。3.1と変わらんね。
carnage0216

2018/02/01 04:23

なんだか、いろいろ試していただき本当にどうもありがとうございます。 プロジェクトのプロパティの全般の構成をデバッグからリリースへ、x64からアクティブx64に 変えたところとりあえずヘッダファイルopencv2\opencv.hpp を読み込んでくれました。 理由はわからないため当てずっぽうです。
episteme

2018/02/01 04:40

...おっかねぇなぁ...
carnage0216

2018/02/01 04:58

確かに、原因がわからないのに読み込めるのは怖いですね。
carnage0216

2018/02/01 05:24

やっとビルドできました。 どうもありがとうございました。
episteme

2018/02/01 05:27

このテの作業やるとき、よこちょにノート/メモ帳用意してる?
carnage0216

2018/02/01 05:36

はい、覚えが悪いのでメモ(環境を整える過程など)と写真を取りながら作業しています。
carnage0216

2018/02/01 15:10

あの、今頃ですがメモを取るのは良いのでしょか?
episteme

2018/02/01 20:08

僕は薦めてます。ヒトは忘れる生き物なので。
guest

0

ファイルを選択しようとしたところフォルダはあるのですが、中身が空っぽでした。

正常な挙動です。そのままディレクトリを選択してください

投稿2018/02/01 01:09

yumetodo

総合スコア5850

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

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

carnage0216

2018/02/01 01:14

一応、フォルダを指定できるのですが、ファイルが開けないとエラーでてきます。 今回の質問と関係はないのでしょうか?
yumetodo

2018/02/01 01:18

もうすこし状況が詳しく知りたいです。エラーログ全文とできれば<project dir>/<project name>.dir/<Debug or Release>/<project name>.tlog/CL.command.1.tlogを。
carnage0216

2018/02/01 01:20

気が利かなくて申し訳ありません直ちに質問を編集します。
yumetodo

2018/02/01 03:00

追記読みましたが、うーん・・・。別にOpenCV2系でもその手順で問題ないはずだしなぁ・・・ 試しにNuGetからOpenCVを入れ直してみたらどうなりますか?
yumetodo

2018/02/01 04:21

>追加インクルードディレクトリにはC:\opencv\include\opencv2と書いているのですが それだ!!!!!!
carnage0216

2018/02/01 04:26

yumetodeさん、申し訳ないです。 ただ、プロジェクトのプロパティの全般の構成をデバッグからリリースへ、x64からアクティブx64に 変えたところとりあえずヘッダファイルopencv2\opencv.hpp を読み込んでくれましたが、 デバッグでx64のときはC:\opencv\includeと設定しても読み込んでくれず、開けないとエラーが出ました。理由はわかりません。
yumetodo

2018/02/01 07:47

その辺のGUIバグはまれによくあるので、そういうときは.vcxprojを手動でいじると良い。0から書くのは勘弁願いたいけど、ちょっと書き換えるだけなら難しくない
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.50%

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

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

質問する

関連した質問