アルゴリズム勉強会2012
以前の投稿で紹介したアルゴリズム勉強会では、その後以下のようなテキストを読んで来ました。
- Clay Breshears, 「並行コンピューティング技法 ―実践マルチコア/マルチスレッドプログラミング」, オライリージャパン (2009)
- Hisa Ando, 「プロセッサを支える技術」, 技術評論社(2011)
- 秋葉 拓哉 ・岩田 陽一 ・北川 宜稔, 「プログラミングコンテストチャレンジブック」, 毎日コミュニケーションズ(2010)
5月からは
- 徳永 拓之, 「日本語入力を支える技術」, 技術評論社(2012)
を読んでいく予定です。 この他にもPRML(下)、プロフェッショナルPythonプログラミング、複雑ネットワークなど勉強会で読みたいテキストが溜まっていく一方です。
さくさくテキストマイニング#6 に参加してきました #SakuTeki
12/17 に行われた「さくさくテキストマイニング#6」 に参加してきました。
テキストマイニングとは、例えば製品の評判をweb上のテキストから抽出したり、 大量のアンケートテキストを分析するために用いられる技術です。 特にマーケティングの場で多くの利用例があります。
さくさくテキストマイニングは、テキストマイニングについて興味のある人を対象として、 入門レベルから最新の要素技術や適用事例についての話が聞ける勉強会です。 今回はその6回目になります。
私は第1回と第2回に参加しましたがしばらく多忙で参加できず、 今回久しぶりの参加でした。
以下、発表を聞きながら取った個人的なメモを公開します。(ところどころ完全に抜けているのはご容赦ください)
この投稿の続きを読む »
AR 拡張現実とは
1.はじめに
AR(拡張現実)というキーワードを聞いたことのあるけれども、実際に何ができるのかよくわからないという方も多いかもしれません。マーカーに対しカメラをかざすと3Dのキャラクタが表示されるといったようなプロモーションや遊びのための技術だけでなく、スマートフォンやハイスペックなPCの普及により、ARが利用される場面が増えてくると思われるARについて、今回のメールマガジンでは技術の概要や活用事例に触れながらご紹介をしていきたいと思います。
2.AR(拡張現実)とは
AR(拡張現実)とは現実の世界に画像、文字、音声といった情報を重ね合わせる技術です。
ARの研究は1990年ころから本格的にはじまりました。当時は、ARを実現するためには大掛かりなコンピュータが必要であり、戦闘機のパイロットが使用するヘルメットのヘッドマウントディスプレイといった軍事目的や医療分野などでの用途として研究されていました。近年になり、PCの性能の向上やスマートフォンの登場により一般の消費者が利用、購入できる機器でもARの利用を行えるようになったことや、ARToolkitのようなライブラリが開発されたことにより、様々な分野での使用されるようになり始めました。
ARというと画像を重ねて表示する技術と思われがちですが、視覚をはじめ聴覚や嗅覚、触感といった人間の知覚すべてが対象となります。
聴覚を対象とした身近な例としては、カーナビゲーションシステムも広い意味でARの技術を利用しているといえます。カーナビは、GPSにより取得した位置情報を地図上に反映することで、現在どこを走行中なのかを運転者にわかりやすく情報を提供するとともに、音声ガイドによりどこで曲がるのかや渋滞が発生しているといった情報を現在位置をもとに運転者にリアルタイムに伝えることにより、運転をサポートしています。その他にも聴覚を対象としたARとして、LookTelというアプリケーションで、視覚障がい者向けにカメラに写ったものが何であるか音声で読み上げガイドするものもあります。
視覚、聴覚、嗅覚も対象になるとはいえ、現時点ではARを実現するための装置としてはPCやスマートフォンが利用されることが多く、これらの機器には香りを発生させる機能等がついていないため、現在ARの技術として利用されているほとんどのものが、画像やテキスト、音声を利用したものとなっています。
3.ARの利用方法
ARの種類は「画像認識型」と「位置情報型」の2つのタイプにわけることができます。それぞれのタイプの特徴を簡単に紹介します。
■画像認識型
- マーカー型
- マーカーと呼ばれる定型フォーマットを認識し、マーカーのパターンに応じたデータや画像をユーザの画面上に表示させることができます。検知精度を向上させるためにシステムが検知処理を行いやすい定型フォーマットのマーカーを利用するのがこのタイプです。
特徴:
- ARToolkitなどの、ライブラリが存在するため開発が比較的容易
- マーカーを起点に表示させるため、表示位置などの精度が高い
- マーカーが存在していれば、場所を問わず利用できる
- 暗い場所などでは、画像認識の精度が落ちるため利用できない場合がある
- マーカーのデザインが限定される
- マーカーレス型
-
基本的な原理はマーカー型と同じですが、異なる点はマーカー型のような開発ライブラリで決められたフォーマットに従う必要はなく、企業のロゴや商品パッケージなどをマーカーの代わりに利用することができます。また、特定の画像をマーカー代わりにするのではなく、画像の特徴点を抽出しその特徴点の変化を捉えることで3D空間のマッピングを行い、その空間内に画像を合成するという手法もあります。マーカーに比べシステムが判別をしやすいフォーマットではないため、画像解析の精度や処理のパフォーマンスの点において技術的難易度が高くなります。
特徴:
- マーカーのような特定のフォーマットに従わなくてもよい
- マーカー代わりにするものが、特徴の少ないものであると認識できない可能性がある
- 暗い場所などでは、画像認識の精度が落ちるため利用できない場合がある
- マーカーレス型のARライブラリがないため、開発難易度が高くコストもかかる
■位置情報型
スマートフォンに搭載されたGPSや電子コンパスを利用し、ユーザの位置や向いている方向を取得し、位置情報に応じたデータや画像をユーザの画面上に表示させることができます。
特徴:- GPSを利用できる環境であれば、マーカー等を必要とせずどこでも利用が可能
- データの表示位置はGPSの精度によるため室内や地下などでは精度が落ちる場合がある
- GPSを利用することで、場所に関連付けをしたデータをユーザ間で共有が可能
- ARライブラリがないため、開発難易度が高くコストもかかる
4.ARを実現する技術
ARを実現するために必要な技術要素としては、現実空間の位置を特定するためのセンシング技術、現実空間と仮想空間の空間情報を重ね合わせる技術、空間上に重ね合わせた情報を表示するグラフィックス技術があります。これらARを実現する技術のうち、仮想空間上に情報や画像を描画するという技術はOpenGL(3Dグラフィックス技術に利用されるライブラリ)をはじめ、これまで3Dグラフィックスを実現するために利用されてきた技術と大きく変わりはありません。リアルタイムで、画面上に情報を重畳表示するためのセンシング技術と、そのセンシング結果から得た現実空間と仮想空間の位置情報をマッピングする点がARにおける特徴的な技術といえます。ARを実現するためのライブラリとしては、下記のようなものが存在していますが、スマートフォンなどの携帯端末でも利用できるよう、高いスペックを必要とせずに実現できるようにすること、センシングの精度を高めることがが現在の技術的な課題と言えます。
・ARToolkit
マーカー型ARライブラリ
http://www.msoft.co.jp/artoolkit/
・統合型 拡張現実感 技術 “SmartAR”
ソニーが開発しているマーカーレス方式の統合型AR技術
http://www.sony.co.jp/SonyInfo/News/Press/201105/11-058/
・PTAM (Parallel Tracking and Mapping for Small AR Worspaces)
マーカーレス型ARライブラリ
http://www.robots.ox.ac.uk/~gk/PTAM/
・String Augment Reality
iOS向けのARプラットフォーム
http://www.poweredbystring.com/
・ArUco
OpenCVベースのARライブラリ
http://www.uco.es/investiga/grupos/ava/node/26
5.ARで何ができるのか
ARという技術が身近になることによって、どのようなことができるようになるのかについて活用事例を交えながら説明していきたいと思います。現在ARの主な利用方法としては、「知る」「試す」「楽しむ(遊ぶ)」の3つに分類ができます。
■知る:現実空間に存在しているものに対する付加情報を与えることでユーザに
操作方法や道案内などを行うようなタイプのものです
・pin@clip
経済産業省の「e空間実証事業プロジェクト」の一環として渋谷で実施された
ARを利用した情報提供サービス
http://pinaclip.jp/
・セカイカメラ
目の前の景色が画面上に映し出された場所・対象物(建物・看板など)に
関連する「エアタグ」と呼ばれる付加情報を重ねて表示するサービス
http://www.tonchidot.com/ja/services/
・LookTel
視覚障がい者向けアプリ。画像を認識すると目の前にあるものが何かを
読み上げてくれる
http://www.looktel.com/
・WordLens
カメラに単語を映すと翻訳をしてくれるアプリ
http://itunes.apple.com/jp/app/word-lens/id383463868?mt=8
■試す:
洋服やメガネなどを試着したり、部屋に家具を配置してみるなど
現実空間には存在していないものを表示させることにより、そのものが
存在したときにどのようになるかをユーザに体験させるタイプのものです。
・Virtual Box Simulator
宅配便に使う箱を表示することで、送りたい荷物とのサイズの比較ができる
https://www.prioritymail.com/simulator.asp
・Tissot Reality
ARで腕時計の試着ができる
http://www.tissot.ch/reality/
・Zoff Mirror
メガネの試着ができる
http://www.zoff.co.jp/mirror/
・MetaCookie
視覚情報と嗅覚情報を重畳することで、クッキーの「風味」を変化させ、
食べる人が受け取る味の認識を変化させるシステム
http://www.interaction-ipsj.org/archives/paper2010/demo/0124/0124.pdf
■楽しむ(遊ぶ):
宣伝やゲームとして利用するタイプのものです。
映画のロケ地でカメラをかざすと、そのロケ地の映画のシーンが見れる
http://www.augmentedrealitycinema.com/index1.html
・「スマイレージ」プロモーション
アイドルグループ「スマイレージ」のプロモーション
http://s-mileage.jp/aboutar.shtml
・「東のエデン」プロモーション
アニメ「東のエデン」のプロモーション
http://alternativedesign.jp/2010/01/eden_ar3/
・Topps 3D Live baseball card
野球カードを映すと3D化された選手が表示される
http://www.nytimes.com/2009/03/09/technology/09topps.html
・ローソンエヴァンゲリオンARアプリ
箱根に実物大エヴァンゲリオンを表示するDVD発売キャンペーン
http://www.lawson.co.jp/eva/ar/
・ガンダムAR
東静岡駅前にガンダムを表示する静岡ホビーフェアのキャンペーン
http://gunpla.yahoo.co.jp/app/index.html
・AR Drone
iPhoneで操作可能なラジコン。ARを利用したシューティングゲームが可能
http://ardrone.parrot.com/parrot-ar-drone/jp
6.今後の展望
ARを利用するメリットとしては、現実空間に情報を付加して表示するため、情報を直感的に伝えやすいということがあげられます。また、利用方法が知りたいものに対しカメラをかざせばよいといったように、操作が簡単かつ手間がかからないため、ユーザが知りたいと思った次の瞬間に情報を提供できるといった手軽さもあります。
現在は、どのようにARを実現するかという技術的な課題に対し取り組んでいる状況ではありますが、ARToolkitなどの、ライブラリが充実してきたことから、徐々にマーカー型のARに関してはどのようなコンテンツをのせるのかといった具体的な利用用途を考える実用段階に入りつつあります。
こうしたことから、今後ARはユーザに対し情報を伝えるための有効な手段として、ますます利用される場が増えてくるのではないかと思われます。
<参考文献>
Web上で数式を扱う方法
ウェブ上で数式を扱う方法として、以下のトピックについて簡単に紹介します。
- MathML
- mathTeX
- MathJax
- Sphinx
- Google Chart API
- iTeX2Img
- CLSI
- Sage
- Wolfram Alpha
この投稿の続きを読む »
Sphinx のテーマを公開しました!
突然ですが、ドキュメンテーションツールには皆さん何を使っていますか?
TriAx では社内向けのドキュメントは最近 Sphinx で作ることが多いです。
Sphinx の良いところは、 reStructured Text という可読性の高いテキストファイルから、 HTML、PDF、ePub、 Windows Help 形式など様々な形式でドキュメントを生成できることです。
Sphinx はテーマを切り替えることで見た目を大きくカスタマイズできることも特徴です。標準のテーマも何パターンか用意されているのですが、使っているうちに独自テーマが欲しくなってきます。
ということで、 Sphinx の TriAx 独自テーマを公開しました!
テーマのサンプル
このブログに近い緑を基調としたデザインになっています。
CSS と HTML の知識さえあればテーマを作るのはそれほど難しくないので、もっと独自テーマが増えると良いと思いました。テーマが変わるとそれだけでテンション上がりますよ!
Happy documenting!
HTML5/CSS3がもたらす変革とは
1.はじめに
今年初めのメールマガジンでスマートフォンについて触れましたが、スマートフォンの
普及の裏では、WEBサイトを構成する言語であるHTMLの標準がここ数年で大きく変動し
つつあります。
2012年に勧告されると言われているHTML5をApple社がいち早く標準サポートした理由と、
それにより今後どのような変革がもたらされるのかを、今回のメールマガジンでは、
HTML標準の現状をご理解いただくとともにHTMLの歴史を少しだけ振り返りながら
ご紹介をしていきたいと思います。
この投稿の続きを読む »
クラウドとは?
1.クラウドとは?
ここ最近、CM等でも「これからの時代はクラウド」などと「クラウド」という言葉
が頻繁に使用されるようになりました。
では、クラウドとはどのようなものなのでしょうか?
この投稿の続きを読む »
Facebookページ テンプレート
Facebookページのテンプレートセットを公開いたします。HTML/CSSは至って普通ですが個人的なクセが随所にあるのは勘弁してください。Facebookページのお約束さえ守って作れば問題ありません。
CSSは若干ですがCSS SpriteとOOCSSを使ってみたり、transitionでリンク部をフワッと変化させてみました。
デザイン時にページサイズには気を付ける必要があります。
横幅520pxとイマドキのデザインでは狭いです。
高さは800pxですがJavascriptで変更する事が出来ます。
プレビュー用にPNG画像を添付します。

| fbTemp.html | FacebookページのHTML/CSSファイル |
|---|---|
| a00h.gif a01.gif a01h.gif cmn_img.png | 画像ファイル |
| 00_facebook_page_template.psd | Facebookページデザイン用PSDファイル |
Javascriptファイルはお手数ですが配布元からダウンロードしてください。
下記の appId にはアプリケーション作成時のIDを入力してください。
<script type="text/javascript">
FB.init({
appId : 'XXXXXXXXXXXXXXX', // enter iFrame appId
status : true, // check login status
cookie : true, // enable cookies
xfbml : true, //parse XFBML
logging : true
});
FB.Canvas.setSize({ height: 1500 }); // content height
↓ダウンロード
Facebookページテンプレート : 751KB
Facebookページよりも、このブログを見やすく使いやすくする方が先のような気がしています。
Facebookページにオリジナルのページ(iFrame)を追加する
Facebookページにタブを追加してコンテンツを表示するには、コンテンツを「アプリ」として登録します。
→今回、この一連の作業が非常に厄介でしたのでメモ。
1. Facebookの開発者ページにアクセスします。
2. 右上の「Set Up New App」をクリックします。
3. アプリケーション名を入力し「アプリケーションを作成」をクリックします。アプリケーション名はあとで変更可能です。
セキュリティチェックのあと、
4. 各種情報を入力します。通常のウェブページとして表示させたいのでシンプルなアイコンとし、ロゴは社名の入った画像を登録しました。その他の情報はサイトより流用しました。

5. 次に Facebook Integration でページの詳細な設定を行います。
- 【キャンバスページ】 任意のURLを半角英数字のみで入力します。このURLがFacebookページのURLになります。
- 【Canvas URL】 iFrameのURLを入力します。
- 【iFrameサイズ】 Auto-Resizeを選択しました。ページからサイズを指定することも可能です。
- 【タブ名】 全角16文字までの任意の名称を入力できます。
- 【タブのURL】 ファイル名を指定します。
以上の設定が済んだら「変更を保存」をクリックします。
→ふぅ、もう少しです。
ここまでの作業が済んだらFacebookページにタブとして表示させることが出来るようになります。
「Application Profile Page」をクリックします。

右にあるメニューから「マイページへ追加」をクリックします。

このアプリを表示させたいFacebookページを選択します。

Facebookページを確認してみましょう。アプリがタブとして登録されています。

…っとアプリの登録フローを備忘録として紹介しましたが、実際は外部サーバとiFrameコンテンツの用意が済んでいる、という前提で進めています。
外部サーバは自前で用意してもらうとしてiFrameコンテンツのテンプレートセットをサンプルとして近日公開いたします。
それまではFacebookページ デザイン用素材を参考にして下さい。
テンプレートセットには弊社Facebookページで使っているHTML(CSS)とPSDを予定しています。
→Facebookページ テンプレート公開しました。



