一部コンテンツはCVS版のOpenCV(1.1)とUbuntu8.04という古い環境のもの

#contents

*取得 [#mbe9f499]
-まずは取得.
-2008年10月10日現在,まだ正式リリースはされていないので,CVS版をゲット.
-が,のっけからこけた.大学のネットワークがプロキシ必須で,LinuxのCVSはパッチを当てない限りプロキシを経由できない
-あきらめて別のネットワーク→Windows経由→CVS経由で取得した.

*コンパイル [#q031043c]
-うっかり,utils/maintainer_clean.cmdをWindowsで実行してしまったがために,configureが消えるというアクシデント.
-しょうがないので再びcvsでupdate
-configureしたら,はまるはまる
--まずは日付の問題.
--日本時間のWindowsマシンを経由したがために取得時が未来,コンパイル時が過去になってしまった.
---touch ./configureで解決
--CRコードにはまる.
---autotools/configure.guess かなんかが改行コードの問題で動かなかった.
 cp autotools/configure.gess autotools/configure.guess.dos
 sed 's/^M$//' autotools/configure.guess.dos > autotools/configure.guess
 ./configure
--haartrainingにはまる (1)
---なぜかHaarTrainingではなくhaartrainingになってたので,全て手動で./configure内のhaartraining をHaarTrainingに書き換え
--HaarTrainingにはまる (2)
---HaarTraining以下が空っぽではまった.
---どうせ何でもいいだろうと((んで,ホントに何でも良いんだから,いい加減だよな!)),OpenCV 1.0 以下のhaartraing((OpenCv 1.00がhaartrainingだから,1.10のディレクトリ名がおかしいのかも?))をごっそりコピー
 cp opencv-1.0.0/apps/haartraining/* opencv/apps/HaarTraining/ -r
--ようやくconfigureにありつく
--が,gstreamerがoffになってるので,--with-gstreamerでconfigureし直し
 ./configure --with-gstreamer=yes
--- --with-gstreamer=yes にしても,なぜかconfigure の結果では use gstreamer no になってしまう.
---フランソワの協力を経て,チェックしてみたら, libgstreamer0.10-dev が入ってなかった.
---おそらくgstreamer develop 用の library なのだろう.
 sudo apt-get install libgstreamer0.10-dev
---configure の結果, use gstreamer yes でconfigureできた.
--が,今度はmakeでこけた.
---opencv/configure.in 内で HaarTraingが全て小文字
---viでconfigure.in を書き換え
 %s/haartraining/HaarTraining/g
--まだまだmakeでこける
---以下の中にもhaartrainingが存在するので消去消去
---opencv/apps/Makefile
---opencv/apps/Makefile.in
---opencv/apps/Makefile.am
---opencv/apps/HaarTraining/Makefile
--ようやくmake
 make all
*ようやくinstall [#rdabc8db]
-make install
 sudo make install
--warningは出るがエラーは出なかったっぽい.
-パスの設定
--/etc/ld.so.conf に /usr/local/lib を追加する
 sudo vi /etc/ld.so.conf
--pkg-configの設定
---.bashrcに以下を追加
 export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:${PKG_CONFIG_PATH}

-しかし,それでもサンプルが動かない.
--Segmentation Faultで落ちる落ちる・・・
--エラーメッセージを読みとくにGTK+2.0が入ってないからじゃないか,と推測
--というわけでGTK+2.0用のライブラリをインストール
 sudo apt-get install libgtk2.0-dev
-./configureに戻ってやり直し〜((勉強小僧の声で))
 ./configure --with-gstreamer=yes --with-gtk=yes
 make all
 sudo make install
-サンプルのビルド
 cv opencv/samples/c
 sh build_all.sh
 ./laplace
-動いた!


*実際にソースコードをコンパイルする場合 [#b97d71c9]
-Cで記述した場合
 gcc `pkg-config --cflags opencv` `pkg-config --libs opencv` source.c
-C++で記述した場合
 g++ `pkg-config --cflags opencv` `pkg-config --libs opencv` source.cpp
-もちろん,上記の通りpkgをインストールしておかなければならない

//ちなみに,/etc/ld.so.conf を変更した場合,次のコマンドで変更内容を反映させる必要があります.
//
//$ sudo /sbin/ldconfig
//
//cvfacetemplate.cpp:83 
//outhFaceTemplate::..........
//FaceTemplate::........
//
//apps/HaarTraining/Makefile
//
//otherlibs/highgui/grfmt_jpeg.cpp:109
//ETHODDEF 
//METHODDEF
//
//otherlibs/highgui/cvcap_v4l.cpp:1759
//
//
//find ../opencv -type d | xargs -n1 sh ~/removeCR.sh

*Video回りの設定 [#pd0bd01c]
-どうもUbuntuっていうかLinuxではOpenCVのVideo回りが怪しい.
-少なくとも,1.1pre1をUbuntu((バージョンは8.04 32bit))上で動かすと,cvSetCapturePropertyで再生フレーム番号与えることができない.
-ネットを散見すると,Linux+OpenCVの組み合わせでは
--サイズの変更
--サイズの取得
--フレーム番号の取得
-などできないっぽい.
-もしかしたらffmpegとか入れれば直るのかも知れない.
-うろ覚えだが,videoInputライブラリがLinuxに対応してたかも?
--カメラを制御する場合はvideoInputライブラリを使った方が断然素直.

*LinuxでOpenCVをbuildする [#q4fbb3c7]
-yasutomo先輩のblog[[LinuxでOpenCVを入れて適当なコードをコンパイルするまで | .COM-POUND>http://www.yasutomo57jp.com/2010/09/01/linux%E3%81%A7opencv%E3%82%92%E5%85%A5%E3%82%8C%E3%81%A6%E9%81%A9%E5%BD%93%E3%81%AA%E3%82%B3%E3%83%BC%E3%83%89%E3%82%92%E3%82%B3%E3%83%B3%E3%83%91%E3%82%A4%E3%83%AB%E3%81%99%E3%82%8B%E3%81%BE%E3%81%A7/]]&note{how-to-build-opencv-on-linux:[[LinuxでOpenCVを入れて適当なコードをコンパイルするまで | .COM-POUND>http://www.yasutomo57jp.com/2010/09/01/linux%E3%81%A7opencv%E3%82%92%E5%85%A5%E3%82%8C%E3%81%A6%E9%81%A9%E5%BD%93%E3%81%AA%E3%82%B3%E3%83%BC%E3%83%89%E3%82%92%E3%82%B3%E3%83%B3%E3%83%91%E3%82%A4%E3%83%AB%E3%81%99%E3%82%8B%E3%81%BE%E3%81%A7/]], 2010-09-01公開, 2015-01-13閲覧};
-[[OpenCVをホームディレクトリ以下にインストールする - ser1zw's blog>http://ser1zw.hatenablog.com/entry/20110823/1314029214]]&note{how-to-install-opencv-under-home-directory:ser1zw, [[OpenCVをホームディレクトリ以下にインストールする - ser1zw's blog>http://ser1zw.hatenablog.com/entry/20110823/1314029214]], 2011-08-23公開, 2015-01-13閲覧};
-[[OpenCV のインストール>http://www.ok.ctrl.titech.ac.jp/~tkanda/opencv_install.htm]]&note{how-to-install-opencv-on-ubuntu:神田崇史, [[OpenCV のインストール>http://www.ok.ctrl.titech.ac.jp/~tkanda/opencv_install.htm]], 2009-05-07更新, 2015-01-13閲覧};
-[[apt get - Package opencv was not found in the pkg-config search path - Stack Overflow>http://stackoverflow.com/questions/15320267/package-opencv-was-not-found-in-the-pkg-config-search-path]]&note{package-opencv-was-not-found-in-the-pkg-config-search-path:[[apt get - Package opencv was not found in the pkg-config search path - Stack Overflow>http://stackoverflow.com/questions/15320267/package-opencv-was-not-found-in-the-pkg-config-search-path]], 2013-03-10, 2014-02-04更新, 2015-01-13閲覧};
-[[OpenCV - 2.x - Tech Note>http://rest-term.com/technote/index.php/OpenCV%20-%202.x]]&note{how-to-install-opencv-on-linux-with-path-settings:[[OpenCV - 2.x - Tech Note>http://rest-term.com/technote/index.php/OpenCV%20-%202.x]], 2015-01-13閲覧};

ジャンル[[:OpenCV]][[:OpenCV 1.1]]準拠

トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS