やっとこさ、OpenMVSをmakeしてみます。
1.ソースフォルダを入力
2.バイナリをビルドするフォルダを入力
3.上記で一度「Configure」をすると、当然エラーで とまります。
4.Ungrouped EntriesのEIGEN_DIR にEigenのパスを入れます。
5.同上のOpenCVにもパスを入れます。
6.BoostのDIRを入力します。
7.DIRを入れても怒られてしまうので、・・・
ちょっと思うところがあって、No.2を最初からやり直しています。
ブレイクです。
2016.8.9追記
お仕事があって中断していました。下記追記
思う所というのは、Google-glop なんですが、全然makeできなくて
なやんでいたんです。
VS2015をアンインストールしてVS2013を入れてみたり。
OSをw10にしてみたり・・・
全然出来なかったんですが、本日glog0.3.4をもう一回DLして、
makeしてみたら良い感じで出来たので、VS2015にてリリース
してみまして・・・できました。
はぁ。
さて上記の続きを今がらやります!
6.BoostのDIRを入れても怒られてしまうのは変わらず^^;
仕方がないので、一つ一つ入れていきます。
まだエラーが出ていますが、今出ているエラーは
・CUDAが無い(無視します)
・BreakPadが無い(?)
・Ceresがみつかりません(!)
どうも「CeresConfig.cmake」が無いようだ
う~ん。また迷宮(笑)
OpenMVS(Multi-View-Stereo)という技術があるそうなので、 面白そう、と思い始めてみました。 サンプル画像にだまされているような気がしますが、さて、どうなりますか。 2016.7~8までのプロジェクトです。
2016年7月21日木曜日
2016年7月19日火曜日
OpenMVSを使う準備 No.2
さて、ドキュメントを基にOpenMVSをメイクしてみます。
まずはライブラリのインストール・・結構ありますね。
Eigen ドキュメントによると、単にDLして固有のソースコードを抽出する必要がある。との事。
ん~。。。次行ってみよう(笑
Eigen(行列演算ライブラリ)のインストール(Visual Studio 2013&2015)
なるほど。参考になります。DLして、下記フォルダにコピー。(現時点最新はv3.2.9)
C:\dev\eigen329
OpenCV DLが長い…。 exeファイルがあるので実行。使い方は…
このページを参考にしてみました。
Ceres このページを参照にしてみます。が、よくわかりません。
参考にするページを変更してみます。まだよくわかっていません。
必要なライブラリを入手し、ビルドを行います。
・eigen(上記で入手済and導入済)
・gflags(cmakeしてビルドした・・・で良いのかな?)
・google-glop(このページを参考にしてみましょう。cmakeしてビルドです。)
gflagsが見つからないといったエラーが出ていましたが、なんとかビルドできたようです。
・CXSparse(Project\CXSparse のsinをビルド)
7/21 cmakeの設定を間違えていたのにこの時点で気付きました。
gflagsからやり直しです。(泣)
本体をビルドする。(手順はコピーです。)
ビルドすると、すっごいワーニングが出るんですが、大丈夫でしょうか^^;。
一応ceres.libはできているようですが…。
CGAL インストーラーをDLしてインストール。これは簡単ですね。
Boost ここを参考にインストール?してみます。
時間がかかりますので、ちょっとブレイクですね。
VCG さて、やっとこさ辿り着いた感がありますね。VCG Libraryです。
Webを参考に、クローンします。
さて。次に行きましょう。
まずはライブラリのインストール・・結構ありますね。
- Eigen version 3.2 or higher
- OpenCV version 2.4 or higher
- Ceres version 1.10 or higher
- CGAL version 4.2 or higher
- Boost version 1.56 or higher
- VCG
Eigen ドキュメントによると、単にDLして固有のソースコードを抽出する必要がある。との事。
ん~。。。次行ってみよう(笑
Eigen(行列演算ライブラリ)のインストール(Visual Studio 2013&2015)
なるほど。参考になります。DLして、下記フォルダにコピー。(現時点最新はv3.2.9)
C:\dev\eigen329
OpenCV DLが長い…。 exeファイルがあるので実行。使い方は…
このページを参考にしてみました。
Ceres このページを参照にしてみます。が、よくわかりません。
参考にするページを変更してみます。まだよくわかっていません。
必要なライブラリを入手し、ビルドを行います。
・eigen(上記で入手済and導入済)
・gflags(cmakeしてビルドした・・・で良いのかな?)
・google-glop(このページを参考にしてみましょう。cmakeしてビルドです。)
gflagsが見つからないといったエラーが出ていましたが、なんとかビルドできたようです。
・CXSparse(Project\CXSparse のsinをビルド)
7/21 cmakeの設定を間違えていたのにこの時点で気付きました。
gflagsからやり直しです。(泣)
本体をビルドする。(手順はコピーです。)
- cmakeを起動する。
- 「Where is the source code」にceres/ceres-solver-1.8.0設定する。
- 「Where to build the binaries」にC:/library/ceres/ceres-buildを設定する。
- 一度configureする。エラーが出て止まる。
- GroupedとAdvancedにチェックを入れると全てのオプションが見えるようになる。
- CMAKE_INSTALL_PREFIXにceres\ceres-installへの絶対パスを入れる。
- EIGEN_INCLUDE_DIRにeigen3.2への絶対パスを入れる。
- 再度configureする。エラーが出て止まる。
- GLOG_INCLUDE_DIRにglog-0.3.3\src\windowsへの絶対パスを入れる。
- GLOG_LIBRARYにglog-0.3.\Release3\libglog.libへの絶対パスを入れる。
- GFLAGS_INCLUDE_DIRにgflags-2.0\src\windowsへの絶対パスを入れる。
- GFLAGS_LIBRARYにgflags-2.0\Release\libgflags.libへの絶対パスを入れる。
- CX_SPARSE_INCLUDE_DIRにCXSparse\Includeの絶対パスを入れる。
- CX_SPARSE_LIBにCXSparse\Lib\CXSparse.libの絶対パスを入れる。
- 再度configureする。
- generateするとceres\ceres-buildにCERES.slnが生成されている。
ビルドすると、すっごいワーニングが出るんですが、大丈夫でしょうか^^;。
一応ceres.libはできているようですが…。
CGAL インストーラーをDLしてインストール。これは簡単ですね。
Boost ここを参考にインストール?してみます。
時間がかかりますので、ちょっとブレイクですね。
VCG さて、やっとこさ辿り着いた感がありますね。VCG Libraryです。
Webを参考に、クローンします。
さて。次に行きましょう。
OpenMVSを使う準備 No.1
さて。OpenMVGが確認できたので、OpenMVSの方を動かしてみよう。
(ここまでの道のりが思ったより長かった…わはは)
動かし方は下記wikiに書いてあるらしい。
(ここまでの道のりが思ったより長かった…わはは)
動かし方は下記wikiに書いてあるらしい。
ふむふむ。
まずは、OpenMVGのシーンをOpenOVS用にコンバートしないといけないのかな?
openMVG_main_openMVG2openMVS -i sfm_data.bin -o scene.mvs
もしくは、古い .json ASCIIフォーマットからのインポートの場合は下記のコマンドを実行
openMVG_main_openMVG2openMVS -i scene.json -o scene.mvs
やってみよう。
サンプルのDL・・・長いなぁ。やっぱり光かな~。
・
・・
・・・ Windows x64のバイナリが入ってると書かれてあったので、
全部入っているかとおもいきや、やっぱりmakeする必要があるのかな?
別スレッドを立てましょう。
2016年7月15日金曜日
VisualSFMに寄り道してみました
OpenMVG関係をググってたら、下のようなスライドを見つけた。
まんましたいことですな・・・。
やってみましょう!(笑)
Visual SFM をインストール(をぉ、CUDAもある)
インストールフォルダにcmvs.exeと、pmvs.exeと、genOption.exeと、pthreadVc2.dllをコピーする。
(2016.7時点では、pmvs,exeはpmvs2.exeみたいですね)
起動確認・・・OK。
MeshLabはインストール済み(c1.3.3)
CloudCompare をインストール
データ準備として画像郡もダウンロードしておきます。
自宅の環境(ADSL12M)では1時間弱かかる…辛いものがありますね。
ちょっとブレイク…。
PMVSまでやってみた感じ。

をぉ、できてますな。
最上段の資料、P46に※で書かれてあることが気になります。
(※ただし、この画像郡を使うと、撮影枚数が少なく、また撮影位置が適切ではないので、モデルが少し歪みます。)
ということは逆に、モデルを作成する際に気を付けることは、
・撮影枚数を多くする。
・撮影位置を適切にする。
ということになるのですが、現時点はサンプル画像を用い、
実証は後回しということにします。
また、資料には地図での活用やオルソ画像の出力まで書かれていますが、
このページでは割愛します。(最後までちゃんとやりますが(笑))
感想としては、
・日本語でのSfmやMeshLab、CloudCompareに関する情報が少ない中、これだけまとまった解説は非常にありがたいですね。最初にこの資料にあたっていれば、目的に達する工程がどれだけ省かれることか。
私もこの時点でこの資料を見させて頂いたことを、資料の作成者である、立命館大学アート・リサーチセンター 山口欧志様に感謝します。
また、資料等をこのブログに引用させて頂きました。(本人に連絡すべきでしょうか…ドキドキ)
一方、出来上がる3Dのイメージは、当たり前ですが、理解の範囲内でした。
目標とする最初の画像を目指して、OpenMVSまで突き進みます。
余談ですが、VisualSFMでググってみても面白いですな。
DIY写真測量:123D Catchのオープンソースな代替プログラム
We Did Stuff
Structure from Motion (多視点画像からの3次元形状復元)
まんましたいことですな・・・。
やってみましょう!(笑)
Visual SFM をインストール(をぉ、CUDAもある)
インストールフォルダにcmvs.exeと、pmvs.exeと、genOption.exeと、pthreadVc2.dllをコピーする。
(2016.7時点では、pmvs,exeはpmvs2.exeみたいですね)
起動確認・・・OK。
MeshLabはインストール済み(c1.3.3)
CloudCompare をインストール
データ準備として画像郡もダウンロードしておきます。
自宅の環境(ADSL12M)では1時間弱かかる…辛いものがありますね。
ちょっとブレイク…。
PMVSまでやってみた感じ。
をぉ、できてますな。
最上段の資料、P46に※で書かれてあることが気になります。
(※ただし、この画像郡を使うと、撮影枚数が少なく、また撮影位置が適切ではないので、モデルが少し歪みます。)
ということは逆に、モデルを作成する際に気を付けることは、
・撮影枚数を多くする。
・撮影位置を適切にする。
ということになるのですが、現時点はサンプル画像を用い、
実証は後回しということにします。
また、資料には地図での活用やオルソ画像の出力まで書かれていますが、
このページでは割愛します。(最後までちゃんとやりますが(笑))
感想としては、
・日本語でのSfmやMeshLab、CloudCompareに関する情報が少ない中、これだけまとまった解説は非常にありがたいですね。最初にこの資料にあたっていれば、目的に達する工程がどれだけ省かれることか。
私もこの時点でこの資料を見させて頂いたことを、資料の作成者である、立命館大学アート・リサーチセンター 山口欧志様に感謝します。
また、資料等をこのブログに引用させて頂きました。(本人に連絡すべきでしょうか…ドキドキ)
一方、出来上がる3Dのイメージは、当たり前ですが、理解の範囲内でした。
目標とする最初の画像を目指して、OpenMVSまで突き進みます。
余談ですが、VisualSFMでググってみても面白いですな。
DIY写真測量:123D Catchのオープンソースな代替プログラム
We Did Stuff
Structure from Motion (多視点画像からの3次元形状復元)
登録:
投稿 (Atom)