OpenCV

Visual Studio 2008でもOpenCV3.0.0

VS2015(VC14)でOpenCV3.0.0のライブラリができたので同じ要領でVisualStudio2008(VC9)用のOpenCV3.0.0ライブラリをビルドしたのでそのメモ。

1.OpenCV3.0.0を準備 (2015/06/04版を使用)
2.CMakeでVisualStudio2008用プロジェクト作成
3.「stdint.h」「vcruntimeh」をVisualStudio2015から移植
  • 「C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include」から「C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\include」へコピーとか。
  • 上記2ファイルはVisualStudio2010以降から存在してるらしい。
4.cap_mjpeg_decorer.cppの下記コードを変更
std::vector<char> MotionJpegCapture::readFrame(frame_iterator it)

{

     m_file_stream.seekg(it->first);

     RiffChunk chunk;

     m_file_stream >> chunk;

     std::vector<char> result;

     result.reserve(chunk.m_size);

     result.resize(chunk.m_size);

//  m_file_stream.read(result.data(), chunk.m_size);  //オリジナルコード.C++11

     m_file_stream.read(&(result[0]), chunk.m_size);  //VC9にはdata()なんてない

     return result;

}

5.VisualStdio2008から「ALL_BUILD」を選択/ビルドすることで、サンプルexeとlibが作成されます。
<参考>

Visual Studio 2015でOpenCV3.0.0

これまでVS2008を使ってきたけどOpenCV3.0.0(以降OpenCV3)を使うためにVS2015をインストールしてみた。
ら、OpenCV3同梱はVS2012(VC11)とVS2013(VC12)用ライブラリでVS2015(VC14)は無いことが判明。(→OpenCV3.2(2016/12/23版)にはVS2015(VC14)ライブラリが付いているので、この記事は参考かなー)
なので、自前で準備したのでメモ。
1.OpenCV3の入手
http://opencv.org/   2015/6/4を使用
2.CMakeでプロジェクトの作成
3.CMakeオプションの変更
 「WITH__OPENCL」がデフォルトでONになっているのでチェックを外す。(Offへ変更)
  デフォルトのままだと、下記エラー等が発生する。

C2264 'std::tuple<cv::size,perf::`anonymous-namespace'::matdepth>::tuple': error in function definition or declaration; function not called opencv_perf_core E:\OpenCV\Source\modules\core\perf\opencl\perf_channels.cpp 165

 
4.VS2015(VC14)でビルド
 プロジェクトロード後「ALL_BUILD」からビルドで各種libをGetだぜ
あ、同じ要領でVS2008用を作成すればいいことに今気づいた・・・。

カレンダー

  • keisan
無料ブログはココログ
2019年11月
          1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30