Main Page

Warning: date(): It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected the timezone 'UTC' for now, but please set date.timezone to select your timezone. in /home/hyakuren-soft/www/diary/includes/dateLink.php on line 19

Warning: date(): It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected the timezone 'UTC' for now, but please set date.timezone to select your timezone. in /home/hyakuren-soft/www/diary/includes/dateLink.php on line 20


2011年 5月 1日 ()  
えーと、金土日はだらーーっとしていた。
で、気付いたら日曜日の夜だった。

改めて、がんばろうと思った。



今日の予定

- Kinect でボーン情報を取得する NITE のサンプルを動作させる。
- 自作ロボット開発の計画を立てる。



自作ロボット開発の計画を書き出そうとして、最終目標を決めていないことに気付いた。
目標がないと、計画立てられないよな...。

なので、目標を決めてみた。

1. 室内をナビゲーションできるようにする。
2. シミュレータに対応させる。
3. データの記録と再生の機能をつける。

計画自体は FogBugz というツールに登録した。
少しずつでよいので、毎週少しは作業を進めたいと思った。



で Kinect の NITE ライブラリを使ったボーン検出のデモまでは、手がまわらなかった。


2011年 5月 2日 (月)  
肉まんを蒸そうとして、蒸し器が見付からないのに気付く。
ちなみに、電子レンジは我が家には存在しない。あれは、

「作った瞬間が一番おいしい」

という料理へのこだわりを台無しにする機械だからだ。

ともあれ、鍋に陶器の皿を置いたりして蒸してみたが、できあがりは微妙だった。
料理は、むつかしい。


2011年 5月 3日 (火)  
出勤してみた。
人が少ないと、すごく集中できる。


2011年 5月 5日 (木)  
部屋を、少しずつでよいので片付けようと思った。
以下が、部屋のマップ。



昨日はユニットバスの掃除をしたので、今日は調理台のまわりを
片付けたいと思った。



今日の予定。

- 調理台まわりの片付け。
- Kinect の NITE ライブラリを使ったボーンサンプルの動作。
- ロボット用ライブラリ作成まわりの進捗を進める。

としたい。


2011年 5月 7日 ()  
「夜から Kinect のボーン認識のサンプルプログラムの動作に再チャレンジ!」と
思っていたら、いつのまにか OpenCV ライブラリを Qt 付きでコンパイルしようとしていた。
おかしい...。

ともあれ cmake に以下のような指定すると Qt 付きでコンパイルできるらしい。
cmake -DCMAKE_BUILD_TYPE=RELEASE -DWITH_QT=ON -DWITH_QT_OPENGL=ON -DBUILD_SHARED_LIBS=ON
で、コンパイルしたら ptrdiff_t が見付からなくてエラーになった。
ptrdiff_t って何?

調べてみたら、ポインタ型の差を計算するときの型らしい。とりあえず
エラーになるソースコードに csddef を include するようにして対処した。

いい感じだ。

上記のコンパイルは OpenCV-2.2 に対して行った。
ちなみに OpenCV の svn 版では
/usr/lib/gcc/i586-pc-linux/4.3.4/../../../../i586-pc-linux/bin/ld: cannot find -lzlib
とかいうエラーになる。
locate コマンドで調べると、確かに libzlib はインストールされていない。

「どうしても libzlib じゃないとダメなんですか! libz じゃダメなんですか!」

などと思った。
多分、cmake の設定でなんとかなると思うので、今度また調べて対処したい。


2011年 5月 10日 (火)  
OpenCV で顔検出のサンプルプログラムを作ってみた。

画像をカメラから取得するようにした以外は OpenCV.jp のサンプルを参考にした。
http://opencv.jp/opencv-1.0.0/document/opencvref_cv_detection.html

顔の検出には OpenCV の haarcascade_frontalface_default.xml を使った。

作ったプログラムの紹介ページ
http://hyakuren-soft.sakura.ne.jp/opencv_practice/face_detection_page.html

作ってみて思ったことのまとめ。

- ぼかさず縮小していない画像で顔検出すると、遅い。
- 顔を斜めにしたり、横を向くと検出してくれない。
- 私の顔は恐い。



検出が遅いのは、カメラから取得したフレーム毎に顔検出を行っているのもあると思う。
Kinect なんかの 3D センサを使って顔を含む人全体をトラッキングする利点が、
少し理解できたように思う。

あと、顔の向きを取得する方法もあると思うけど、どうすればよいかは、
今のところわからない。まぁ、ゆっくりと OpenCV を試していこうと思う。

ともあれ、実際に使ってみると得られることが多いのが確認できた。
これからも、実際に試していきたい。



で、顔認識のサンプルが動作するようになったので、モニターの前で
視点を変更すると、画面に表示しているオブジェクトが視点の移動に伴って
傾くようなサンプルを作ってみた。

http://hyakuren-soft.sakura.ne.jp/opencv_practice/face_detection_page.html#face_detection_perspective


GLUT の teapot を顔検出の位置に伴って移動させている例。
(下から覗き込んでいる状態だが Wire frame なので、動いてないと分かりにくいな!)

作ってみて思ったこと。

- OpenGL の知識が不足していて、視点を思ったように反映できていない。
- ダイナミックに顔を移動させると、顔の位置が検出できずに見苦しい表示になる。
- 簡単そうに思ってやってみたが、実際にやってみると難しい。

工夫が必要だと思った。
というか、次は同じことを Kinect を使ってやってみようと思った。


2011年 5月 15日 ()  
久しぶりに百人一首タイピングまわりの開発を再開してみた。
今日は、オプション画面のコンポーネント配置まわりを実装した。



背景の色が鮮やか過ぎて文字が見にくい気がするが、別の機会に改善することにする。
次は、GUI コンポーネントへの入力イベントを適切に処理するあたり。


2011年 5月 18日 (水)  
Tortoise HG を Linux で動作させると "QSci の Python モジュールがないよ!"
というエラーが出る件は、QScintilla-gpl-2.5.1 をインストールしたら解決した。



いい感じだ。


2011年 5月 28日 ()  
ゴーヤ茶を作ってみた。



緑茶を入れていても、しばらく時間が経つとゴーヤの味がしみ込んで来る。
なんというか、苦い。

握り心地や使い心地は、以外に悪くない。


本人へのコメント送信



Main Page