ホーム » 2010 » 11月 » 04

日別アーカイブ: 2010年11月4日

2010年11月
« 10月   12月 »
 123456
78910111213
14151617181920
21222324252627
282930  

最近の投稿(電子情報)

アーカイブ

カテゴリー

MacでARToolkit、UVCカメラNGだった

来年のプロコンや、画像処理関係の卒研のテーマの導入に使えないかと、 ARToolkitを使おうと準備中。 手元のMacでいつでも実験…と思い環境を整備するけど、まだまだ準備段階。

参考資料

ARToolKit on Mac OS X(特にVRML)

この資料に沿って、OpenVRMLをインストールしてコンパイルをかけてみたけど、 以下のようなエラーメッセージで止まるなぁ。 jpegのライブラリが見つけられていないみたい。

Directory 'sw/lib' following -L not found Library
not found for -ljpeg

UVCカメラNGだった

また、動かしてみたサンプルプログラムで試しているけど、 MacのiSight だと、カメラを好きな方向に向けられないので、 USB接続の手持ちのUVCカメラ "Creative Labs VF0280 Live! Cam Optia AF"を接続してみた。 カメラの認識確認で、iChat を起動するけど、普通に認識してカメラは動いた。 しかしながら、ARToolkit のサンプルプログラムを動かして、Source を切り替えるのだが、 どうもサンプルプログラムでは認識してくれない….
# どうももう少し実験の手間がかかりそうだ…

ワード境界とビットフィールド

構造体を使った演習も終わってるので、ワード境界とビットフィールドについて説明する。

32bitコンピュータであれば、CPUとメモリのデータのデータのやり取りは、4byte=32bit単位で 一括して行う。このため、ワード境界にまたがったデータの配置が行われると、 処理速度の低下につながる。授業では、構造体で"char a[9] ;" があった場合の説明を行う。

処理速度重視ならワード境界配置、メモリの効率よい利用であればワード境界無視(Visual C++なら"#pragma pack"らしい)だけど、年月日のデータをy=int,m=int,d=int なら、96bitになるけど、 y=0..2047,m=1..12,d=1..31で考えれば、20bitで表現も可能となる… ということを説明して、ビットフィールドを説明する。 授業では、組み込み系プログラミングなどでは相変わらずシフト演算や&(AND)や|(OR)を 使った計算も理解の必要もあるし、2進数計算の例も説明する。

昨年の授業と進展が同じなので、詳しくは昨年のページにて…