ノートPCにIEEEのカードを挿して(電源もそのカードに挿す)、Digiclopsプログラムを実行。
お、無事カメラ画像が出力された。WindowsXPでは実証済みだったが、Vistaでも問題なく動いた。
これは多分7(セブン)でもいけそう。ただ、カードに電源を供給しないと動かない。バスパワーでは難しいんですね。
2009年10月23日金曜日
2009年10月22日木曜日
ボヤキその5
システムわからん奴に限って、ちょっとでも動かなくなったら文句を言う。
そういう輩は基本的に、自分の無知を隠したいために、他の人に責任転嫁したがる傾向にある。
そういう輩は無視無視。何か反論すると更に文句言うし、たとえ直ったとしても「今度からこのようなことがないように」と自分で直したかのように言うし、直らなかったら「こんなシステムを入れたから悪い」とこっちの責任にするし・・・。
無視ってたら、そのうち他の人に攻撃の矛先を変えるでしょう。他の人ごめんなさい。
システムを熟知している人は穏やかな人が多い。また自分を攻撃しても人は攻撃しない。ま、でもこういう人が同じ組織にいるから組織が活発化するんでしょう。みんな大人しかったら波風立たないけど発展もなさそうですからね。
そういう輩は基本的に、自分の無知を隠したいために、他の人に責任転嫁したがる傾向にある。
そういう輩は無視無視。何か反論すると更に文句言うし、たとえ直ったとしても「今度からこのようなことがないように」と自分で直したかのように言うし、直らなかったら「こんなシステムを入れたから悪い」とこっちの責任にするし・・・。
無視ってたら、そのうち他の人に攻撃の矛先を変えるでしょう。他の人ごめんなさい。
システムを熟知している人は穏やかな人が多い。また自分を攻撃しても人は攻撃しない。ま、でもこういう人が同じ組織にいるから組織が活発化するんでしょう。みんな大人しかったら波風立たないけど発展もなさそうですからね。
2009年6月23日火曜日
Digiclopsその5
REX-CFW3のIEEE1394カードを購入。バスパワーなのでDigiclopsカメラに電源が供給できるかと、1mm程度の期待をして、ノートパソコンに装着してみたが、やはり期待通りには行かなかった。・・・が、もちろんこうなることは想定内で、このカードには電源が挿せるので、この電源を購入し再度チャレンジを試みる。バスパワーで淡い期待をしていたのでまだ購入しておらず本日ネットで購入。
IOデータのカードの電源はどこもかしこも(リアルショップもネットショップも)販売していないため諦めました。最新のものを購入するのは楽だが、古いものを購入するのは難しい・・・
IOデータのカードの電源はどこもかしこも(リアルショップもネットショップも)販売していないため諦めました。最新のものを購入するのは楽だが、古いものを購入するのは難しい・・・
2009年6月22日月曜日
ボヤキその4
出張から帰ってきました。ノートパソコンでDigiclopsを使うために、IEEE1394カードを購入。
使えるかどうかは良くわかりません。明日チェックです。っというのも出張後の事務処理、メールチェックで何もできないから・・・ああ、、、秘書欲しい。
使えるかどうかは良くわかりません。明日チェックです。っというのも出張後の事務処理、メールチェックで何もできないから・・・ああ、、、秘書欲しい。
2009年6月18日木曜日
OpenCVその7
これまで動かなかったサンプルのキャリブレーションコードがやっと動いた。チェスボードの数の設定が違っていたので動かなかったらしい。人のプログラムの解析は難しいです。
とりあえずこれでキャリブレーションプログラムが自作できるメドがつきました。・・・が明日から出張。数日開発は停滞です。
とりあえずこれでキャリブレーションプログラムが自作できるメドがつきました。・・・が明日から出張。数日開発は停滞です。
2009年6月17日水曜日
2009年6月15日月曜日
Digiclopsその4
カメラがまともに写るようになったので、セルフキャリブレーションのプログラムを書き書き・・・
雑用が多くてどうも進まない・・・
とりあえず、これまでのことをまとめておく。
-----
・Digiclops, Triclopsのインクルードファイル、ライブラリファイル、DLLは昔のを使う。
・Visual Studioでは「ツール」→「オプション」で、上記のファイルのパスを設定。
・「プロジェクト」→「プロパティ」で、ライブラリファイルに関しては依存ファイルを設定する。
-----
あんなに時間掛ったのに、こ、こんだけ。さみしいのお・・・
雑用が多くてどうも進まない・・・
とりあえず、これまでのことをまとめておく。
-----
・Digiclops, Triclopsのインクルードファイル、ライブラリファイル、DLLは昔のを使う。
・Visual Studioでは「ツール」→「オプション」で、上記のファイルのパスを設定。
・「プロジェクト」→「プロパティ」で、ライブラリファイルに関しては依存ファイルを設定する。
-----
あんなに時間掛ったのに、こ、こんだけ。さみしいのお・・・
2009年6月11日木曜日
Digiclopsその3
DigiclopsGetTriclopsContextFromCamera関数でContextをどうしても持ってこないエラーがやっと解決!開発環境のせいではもちろんなかった。なんと・・・
system32フォルダに放り込んだdll群のバージョンが、「新しすぎた」こと!おいおい。古いならともかく新しくて動かないとはどういうことぞ。Pointgray社からわざわざ新しいライブラリをダウンロードしてきてインストールしたのに、そのおかげでこの始末。多分、新しいカメラ用で古くなったDigiclopsは相手にされていなかったのかも・・・
とにかく3日掛けたなぞが解けたのでめでたしめでたし。
system32フォルダに放り込んだdll群のバージョンが、「新しすぎた」こと!おいおい。古いならともかく新しくて動かないとはどういうことぞ。Pointgray社からわざわざ新しいライブラリをダウンロードしてきてインストールしたのに、そのおかげでこの始末。多分、新しいカメラ用で古くなったDigiclopsは相手にされていなかったのかも・・・
とにかく3日掛けたなぞが解けたのでめでたしめでたし。
Digiclopsその2
ライブラリの件は解決。プロジェクトのプロパティで、リンカ設定の依存ファイルのところにdigiclops.libとtriclops.libがなかっただけ。
しかし、今度はもっとややこしいエラーが。digiclopsGetTriclopsContextFromCamera関数で、Contextをとってこれないエラーが発生。付属のサンプルプログラム(exeファイル)だと、全く問題なしで動くのでハードウェアの問題ではなさそう。
とすると、VisualStdioのせい?とりあえずVC Exp, VC 2008, VC2005, VC6.0とこれまでの開発環境をどんどん入れて試してみるがすべて×。お手上げ~~~~。残すは.NET2003のみ。
多分VisualStdioは関係なさそう。これで3日も悩み中・・・はぁ。
しかし、今度はもっとややこしいエラーが。digiclopsGetTriclopsContextFromCamera関数で、Contextをとってこれないエラーが発生。付属のサンプルプログラム(exeファイル)だと、全く問題なしで動くのでハードウェアの問題ではなさそう。
とすると、VisualStdioのせい?とりあえずVC Exp, VC 2008, VC2005, VC6.0とこれまでの開発環境をどんどん入れて試してみるがすべて×。お手上げ~~~~。残すは.NET2003のみ。
多分VisualStdioは関係なさそう。これで3日も悩み中・・・はぁ。
2009年6月9日火曜日
Digiclopsその1
今日からOpenCVは少しお休み。Digiclopsカメラのプログラミング。
これ(http://www.viewplus.co.jp/products/digiclops/digiclops_main.html)
SDKをインターネットから落としてきてインストール。
DigiclopsおよびTriclopsのincludeフォルダ、libフォルダ、binフォルダにある~.h,~.lib,~.dllをそれぞれVCのincludeフォルダ、libフォルダ、Windows\system32フォルダにコピー。
あとはサンプルプログラミングを組みビルド!
う~ん。コンパイルは問題なく通るがリンクがうまくいかない・・・digiclopsのライブラリフォルダを認識していないのだろうか・・・
これ(http://www.viewplus.co.jp/products/digiclops/digiclops_main.html)
SDKをインターネットから落としてきてインストール。
DigiclopsおよびTriclopsのincludeフォルダ、libフォルダ、binフォルダにある~.h,~.lib,~.dllをそれぞれVCのincludeフォルダ、libフォルダ、Windows\system32フォルダにコピー。
あとはサンプルプログラミングを組みビルド!
う~ん。コンパイルは問題なく通るがリンクがうまくいかない・・・digiclopsのライブラリフォルダを認識していないのだろうか・・・
OpenCVその6
OpenCVのサンプルプログラムなどを幾らかコンパイルしているとcvaux.hのエラーが頻発する。そこでいろいろと調べてみると、ヘッダファイルに文字化けがあることが判明!
ここ(http://www36.atwiki.jp/prolog/?cmd=word&word=cvaux.h%20%E3%82%A8%E3%83%A9%E3%83%BC&type=normal&page=OpenCV%E3%81%AE%E4%BF%AE%E6%AD%A3%E3%80%81%E3%83%93%E3%83%AB%E3%83%89)を参考に修正。
CvMemStorage* storage;のコメント部分で文字化けしてコメントが閉じられていない!
修正後、再度コンパイルしてみる。うほ!うまくいった。
ここ(http://www36.atwiki.jp/prolog/?cmd=word&word=cvaux.h%20%E3%82%A8%E3%83%A9%E3%83%BC&type=normal&page=OpenCV%E3%81%AE%E4%BF%AE%E6%AD%A3%E3%80%81%E3%83%93%E3%83%AB%E3%83%89)を参考に修正。
CvMemStorage* storage;のコメント部分で文字化けしてコメントが閉じられていない!
修正後、再度コンパイルしてみる。うほ!うまくいった。
2009年6月5日金曜日
OpenCVその4
さて、今日は2台のカメラから同時にキャプチャーできるようにする。ステレオ法による三次元計測ではどうしても必要なので・・・
単純に、カメラ関係の引数やら関数を2つに増やしてビルド・実行。
-----
#include
#include
int main( int argc, char** argv ){
int key; CvCapture *capture1, *capture2;
IplImage *frameImage1, *frameImage2;
char windowNameCapture1[] = "Capture1";
char windowNameCapture2[] = "Capture2";
if((capture1 = cvCreateCameraCapture(0)) == NULL ){
printf( "カメラ1が見つかりません\n" );
return -1;
}
if((capture2 = cvCreateCameraCapture(1)) == NULL ){
printf( "カメラ2が見つかりません\n" );
return -1;
}
cvNamedWindow( windowNameCapture1, CV_WINDOW_AUTOSIZE );
cvNamedWindow( windowNameCapture2, CV_WINDOW_AUTOSIZE );
while( 1 ){
frameImage1 = cvQueryFrame( capture1 );
frameImage2 = cvQueryFrame( capture2 );
cvShowImage( windowNameCapture1, frameImage1 );
cvShowImage( windowNameCapture2, frameImage2 );
key = cvWaitKey( 1 );
if( key == 'q' ){ break; }
}
cvReleaseCapture( &capture1 );
cvReleaseCapture( &capture2 );
cvDestroyWindow( windowNameCapture1 );
cvDestroyWindow( windowNameCapture2 );
return 0;
}
-----
あっけなく実行可能。
以前、Let's Noteでやったときは2台目が全く動かなかったのでDirectShowを駆使してなんとか映しだしたのだが・・・。コンピュータによるのだろうか?研究用に購入したPCがこれまでになく調子がいい。○○工房さんの店長さんにボードなどの相性について相談に乗ってもらったのがよかったのかも。
ちなみに、写らない人は、USBボードやUSBカードを別途用意してUSBコントローラを分けるとうまくいくようです(本人確認)。USBの口が4つあってもネットワークのHUBのようなもので、制御しているところが1つになり2台を同時に制御してくれないようです。
さて、次はIEEEのカメラだな。
単純に、カメラ関係の引数やら関数を2つに増やしてビルド・実行。
-----
#include
#include
int main( int argc, char** argv ){
int key; CvCapture *capture1, *capture2;
IplImage *frameImage1, *frameImage2;
char windowNameCapture1[] = "Capture1";
char windowNameCapture2[] = "Capture2";
if((capture1 = cvCreateCameraCapture(0)) == NULL ){
printf( "カメラ1が見つかりません\n" );
return -1;
}
if((capture2 = cvCreateCameraCapture(1)) == NULL ){
printf( "カメラ2が見つかりません\n" );
return -1;
}
cvNamedWindow( windowNameCapture1, CV_WINDOW_AUTOSIZE );
cvNamedWindow( windowNameCapture2, CV_WINDOW_AUTOSIZE );
while( 1 ){
frameImage1 = cvQueryFrame( capture1 );
frameImage2 = cvQueryFrame( capture2 );
cvShowImage( windowNameCapture1, frameImage1 );
cvShowImage( windowNameCapture2, frameImage2 );
key = cvWaitKey( 1 );
if( key == 'q' ){ break; }
}
cvReleaseCapture( &capture1 );
cvReleaseCapture( &capture2 );
cvDestroyWindow( windowNameCapture1 );
cvDestroyWindow( windowNameCapture2 );
return 0;
}
-----
あっけなく実行可能。
以前、Let's Noteでやったときは2台目が全く動かなかったのでDirectShowを駆使してなんとか映しだしたのだが・・・。コンピュータによるのだろうか?研究用に購入したPCがこれまでになく調子がいい。○○工房さんの店長さんにボードなどの相性について相談に乗ってもらったのがよかったのかも。
ちなみに、写らない人は、USBボードやUSBカードを別途用意してUSBコントローラを分けるとうまくいくようです(本人確認)。USBの口が4つあってもネットワークのHUBのようなもので、制御しているところが1つになり2台を同時に制御してくれないようです。
さて、次はIEEEのカメラだな。
2009年6月4日木曜日
OpenCVその3
再起動して、もう一度実行したらdllエラーは改善。環境変数のPATHが有効になっていなかったらしい。
しかし、今度はcapture = cvCreateCameraCapture(-1))でエラー。引数を-1にすると自動的にカメラを探してくれるはずなのだが・・・
いろいろWebを検索しているとMicrosoft Visual C++ 2008 SP1 のインストールが必要らしい。
ここ(http://www.microsoft.com/downloads/thankyou.aspx?familyId=a5c84275-3b97-4ab7-a40d-3802b2af5fc2&displayLang=ja)からダウンロードしてインストール。再起動。
が動かない・・・
USBカメラ2台、専用ボードでCCDカメラ2台、IEEEで三眼カメラ1台、接続しているので迷ってしまうのだろうか。とりあえず、USBカメラだけ有効にして、引数を0にしてみる。
無事、カメラ画像がディスプレイ上に表示された!!少し感動。
OpenCVその2
とりあえず環境も整ったので、一番簡単なOpenCVのコードを書いてみる(前回示した参考書から)。
-----
#include
#include
int main( int argc, char** argv ){
int key;
CvCapture *capture;
IplImage *frameImage;
char windowNameCapture[] = "Capture";
if((capture = cvCreateCameraCapture(-1)) == NULL ){
printf( "カメラが見つかりません\n" );
return -1;
}
cvNamedWindow( windowNameCapture, CV_WINDOW_AUTOSIZE );
while( 1 ){
frameImage = cvQueryFrame( capture );
cvShowImage( windowNameCapture, frameImage );
key = cvWaitKey( 1 );
if( key == 'q' ){
break;
}
}
cvReleaseCapture( &capture );
cvDestroyWindow( windowNameCapture );
return 0;
}
-----
当然のごとく、「highgui.h」が見つかりません、と出た。全く何の設定もしていないので仕方なし。
ここ(http://co-coa.sakura.ne.jp/index.php?OpenCV%2F%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB)を参考にして、OpenCVのインクルードファイルとライブラリファイルのパスを設定。
あんまり関係ないかもしれないが、もともとあるパスの一番下に羅列した(多分、関係ない)。
そして、再度、リビルド!
1>LINK : fatal error LNK1104: ファイル 'cvcam.lib' を開くことができません。
あれ?cvcam.libがない?(調べてみると)あ、ない。じゃあいらない。リストから削除して再度、ビルド!
ビルド成功。cvcam.libいらないの?なんか最後に歯車が一個残って大丈夫かな?って感じ。
-----
では実行!今度は、highgui.dllがないと実行エラー。
・・・
休憩。
-----
#include
#include
int main( int argc, char** argv ){
int key;
CvCapture *capture;
IplImage *frameImage;
char windowNameCapture[] = "Capture";
if((capture = cvCreateCameraCapture(-1)) == NULL ){
printf( "カメラが見つかりません\n" );
return -1;
}
cvNamedWindow( windowNameCapture, CV_WINDOW_AUTOSIZE );
while( 1 ){
frameImage = cvQueryFrame( capture );
cvShowImage( windowNameCapture, frameImage );
key = cvWaitKey( 1 );
if( key == 'q' ){
break;
}
}
cvReleaseCapture( &capture );
cvDestroyWindow( windowNameCapture );
return 0;
}
-----
当然のごとく、「highgui.h」が見つかりません、と出た。全く何の設定もしていないので仕方なし。
ここ(http://co-coa.sakura.ne.jp/index.php?OpenCV%2F%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB)を参考にして、OpenCVのインクルードファイルとライブラリファイルのパスを設定。
あんまり関係ないかもしれないが、もともとあるパスの一番下に羅列した(多分、関係ない)。
そして、再度、リビルド!
1>LINK : fatal error LNK1104: ファイル 'cvcam.lib' を開くことができません。
あれ?cvcam.libがない?(調べてみると)あ、ない。じゃあいらない。リストから削除して再度、ビルド!
ビルド成功。cvcam.libいらないの?なんか最後に歯車が一個残って大丈夫かな?って感じ。
-----
では実行!今度は、highgui.dllがないと実行エラー。
・・・
休憩。
OpenCVその1
最近三次元計測の開発をサボっていたので再開。
コンピュータ(WindowsXP)とカメラはあるので、まずは開発環境をインストール。当然、お金はないので、MicrosoftのVisual C++ 2008 Expressを使用(ただだから)。
ここ(http://www.microsoft.com/japan/msdn/vstudio/Express/)からファイルをダウンロードし、クリック一つで呆気なくインストール完了(時間かかったけどね)。さすがWindows。楽チン極まりない。
-----
さて、次はカメラからの入力をどうするか。とりあえずOpenCVを使いますか。参考になるページもWeb上に沢山あるし、わかりやすい書籍も出ているし・・・
書籍:http://chabasilla.blog89.fc2.com/blog-category-9.html
ここ(http://sourceforge.net/project/showfiles.php?group_id=22870)からwincv-winへ移動し、OpenCV_1.1pre1a.exeファイルをダウンロード。ダウンロードファイル実行し、数クリックでこれも呆気なくインストール完了。本当にこんな簡単でいいのだろうか・・・
-----
コンピュータ(WindowsXP)とカメラはあるので、まずは開発環境をインストール。当然、お金はないので、MicrosoftのVisual C++ 2008 Expressを使用(ただだから)。
ここ(http://www.microsoft.com/japan/msdn/vstudio/Express/)からファイルをダウンロードし、クリック一つで呆気なくインストール完了(時間かかったけどね)。さすがWindows。楽チン極まりない。
-----
さて、次はカメラからの入力をどうするか。とりあえずOpenCVを使いますか。参考になるページもWeb上に沢山あるし、わかりやすい書籍も出ているし・・・
書籍:http://chabasilla.blog89.fc2.com/blog-category-9.html
ここ(http://sourceforge.net/project/showfiles.php?group_id=22870)からwincv-winへ移動し、OpenCV_1.1pre1a.exeファイルをダウンロード。ダウンロードファイル実行し、数クリックでこれも呆気なくインストール完了。本当にこんな簡単でいいのだろうか・・・
-----
登録:
投稿 (Atom)