「まちみのな」(ハードウェア編)
(現在書きかけです)
知能ロボットコンテストフェスティバル2006に出場したロボット「まちみのな」の説明です。
- 全体写真
ロボットの腕が大部分を占めています。
- 横から
腕とロボット本体の2箇所におもりをつけることで全体の重量バランスをとっています。腕はシーソーのようにつりあいが取れており、ものを持ち上げる場合でも少ない力で動作させることができます。また、右側に飛び出している緑色のものはBluetoothの通信モジュールです。ここからパソコンと通信します。
- 前から
手のひらの部分の黒いものは滑り止めです。また手のひらの中央部分にはLEDライト(右手)と光センサ(左手)がついています。これで物が取れる位置にあるかどうかを調べます。
- 手の部分
手の部分にはマイクロスイッチを配置し、物を握ったことが検出できるようになっています。
知能ロボットコンテストフェスティバル2006に出場したロボット「まちみのな」の説明です。
- 全体写真
ロボットの腕が大部分を占めています。
- 横から
腕とロボット本体の2箇所におもりをつけることで全体の重量バランスをとっています。腕はシーソーのようにつりあいが取れており、ものを持ち上げる場合でも少ない力で動作させることができます。また、右側に飛び出している緑色のものはBluetoothの通信モジュールです。ここからパソコンと通信します。
- 前から
手のひらの部分の黒いものは滑り止めです。また手のひらの中央部分にはLEDライト(右手)と光センサ(左手)がついています。これで物が取れる位置にあるかどうかを調べます。
- 手の部分
手の部分にはマイクロスイッチを配置し、物を握ったことが検出できるようになっています。
撮影会@仙台市科学館
本番まであと1週間となりました。やはりフル規格の競技台で試しておいたほうが良いだろう、ということで土・日きっぷを使ってロボコンの会場の仙台市科学館に行ってきました。
本日の経路 by Google Maps/html
本番の会場は、さすがにまだ準備は行われていませんでしたが、試走台はすでに置かれていましたので、100MB超のデータを収集してきました。
画像処理で課題となりそうなのは次の点です。
more ...
My競技台設置
部屋のスペースの都合で半分だけですが....。
カメラはスタート地点・高さ850mmの位置に2台設置しており、競技台のほぼ全体が一度に見渡せます。
カメラの実物はコレの色違いです。台座の部分は引っ張ると簡単に取り外せるようになっています。
ロボットの位置&方向もこれでトレース可能です。ただ、この位置からの撮影では精度に不安があるので、補助的にのみ利用予定です。
競技台の材料
競技台は実際には木製+白ペンキ塗装です。ただ、実物と同じものを作るのは手間なのと、保管場所に困るので、今回は、カーペットの裏で代用しています。色合いや手触り感が実物と近いものを探してきました。
缶
指定された缶が無かったので、似たような感じのものを探してきました。ダイエーのセービングブランドのやつです。
ボール
これまた指定されたものが無かったので、近そうなものを数種類買ってきました。
石鹸箱
これはさすがに売っていましたので、実物と同じものです。石鹸箱の周りに、公式サイトのルールブックに掲載されている石鹸箱の参考資料の図案を原寸大で打ち出して貼り付けています。色合いは赤というよりは、ややワインレッドに近い感じです。
.NET Framework 2.0 / 4.0 でキャプチャ
.NET Framework 2.0 対応言語 (C#2.0, VB2005など) を利用して USB接続の Webカメラなどから画像を取得するためのサンプルです。画像認識などを行うことを想定しています。
サンプルでは以下のことを行っています。
- 取り扱いが容易なライブラリの作成
数行の記述で Web カメラやキャプチャカードからの画像を取得/加工できるようなライブラリを作成しています。
内部的には DirectX の GetCurrentBuffer を利用して同期処理を行っているため、スレッドを意識しないプログラミングが可能です。もちろん unsafe ではありませんのでメモリリークの心配もありません。
- 高速な画像処理
標準的な方法 ( GetPixel() で 1ピクセルずつよみこむ ) を利用すると、とてつもなく遅くなります。このサンプルでは Marshal.Copy, Bitmap.LockBits, Bitmap.UnlockBits を利用して、Bitmap を byte配列 にコピーしたり、その逆を行うことで高速な画像処理を行っています。この処理もライブラリに組み込まれています。
サンプルコード
- [2006/06/12] ver. 0.7 (単純な静止画キャプチャ処理)
- [2008/03/02] ver. 0.8 (静止画キャプチャを連続的に行い、リアルタイム動画像処理)
* クリックで動画を表示します
- [2008/03/04] 射影変換のテスト
- [2012/03/10] DirectShow.NET の.NET Framework 4.0対応版
参考
- USBカメラをC#で使おう
- 第 3 章 画像処理入門 1 ~ アルゴリズム入門 ~ (Microsoft)
- Bitmap.UnlockBits メソッド (MSDNライブラリ, 画像処理サンプルコードあり)
アフィリエイトしてくれる?(´・ω・`)
demo
こういった記事を読むと、Xbox360で開発してみたくなります。
更新履歴
2006/07/02 ver 1.1
- JavaScript有効時、サムネイルクリックでAmazonを開くように修正
- 発売元(PUBLISHER), 発売日(RELEASE_DATE)属性を追加
- 属性値が設定されている/されていないことを検査する条件タグを追加(IFDEF_属性名, IFNDEF_属性名)
- skin追加 (iframe向け)
- index.php に画像の拡大率設定を追加
download (2006-07-02/v1.1)
2006/06/04 ver 1.0
- 新規作成
download (2006-06-04/v1.0)
概要
本ソフトウェアは、アマゾンアソシエイトを利用してアフィリエイトを行うためのツールです。利用者が好きなものを選択してAmazonのサイトで品物を購入すると、設置者は購入代金の数%を紹介料としてAmazonから受け取ることができます。
本ソフトウェアでの技術的な特徴
- HTMLベースのスキンによる容易なカスタマイズ
デモで利用しているスキン(全体)
デモで利用しているスキン(詳細表示部分)
- PHPベースの独自軽量テンプレートエンジン
- Amazon Web Serviceの検索結果をサーバ側にキャッシュすることによるレスポンスの向上
- HTMLのクライアントサイドでの動的書き換えによるレスポンスの向上
- 画面をスクロールすることなく複数製品の概要をみることが可能なUI(ユーザインターフェース)
- JavaScript Off なブラウザにも対応
- Firefox 1.5.0.4, IE 6, IE 7, Opera 8.54 で動作を確認
今後の予定
- ユーザコメントの追加
more ...
TOP PAGE △