FC2ブログ

マクロビ (2)

マクロビ(Macrobiotic)、相変わらず続けています。最も、自己流でカスタマイズしてます。宗教で言えば、原理主義ではなく、現実的な(柔軟的な)ものであります。

最近好きになったものは、セイロで蒸した野菜です。野菜は好きで、元々よく食べていましたが、生野菜が中心でした。サラダなどですね。でも、いまはドレッシングをやめているので、生野菜を取ることが以前より減りました。そこで登場したのが、蒸し野菜。これが旨い!

それに関連して、夏野菜カレーも、この季節は美味しいです。以前はチキンカレーを食していましたが、肉はやめたので、代わりに野菜のカレーです。好みが変わってきました。
スポンサーサイト

depth textureからのz値復元 (2)

昨日の記事(↓)の続きです。

http://kanouy.blog9.fc2.com/blog-entry-1165.html

この記事を書いたあと、"OpenGL depth texture"、とググってみました。そこで、最初にヒットしたアーティクルに関することをしたためます。gamedev.net上の議論で、2年以上前のポストです。"Rendering to and using a depth texture"というトピックで、depth bufferをテクスチャ化できない、との質問です。それに対し、的確に答えたヒトがいて(問題は解決した)、続いてz値復元の説明を、丁寧にしていました。以下がその部分のコピペ。

-----------------------------------
...The z-buffer depth is non-linear to the actual depth of the fragment, so there's more precision for near objects and less precision for objects further away. I hope someone will correct me if I'm wrong, but I think the z-buffer-depth with a perspective projection get's calculated as following:
z_buffer_value = a + b / z
Where:
a = zFar / ( zFar - zNear )
b = zFar * zNear / ( zNear - zFar )
z = distance from the eye to the object...
-----------------------------------

どれどれ、と計算してみました。すると、私の計算とちょっとだけ合いません。符合はいいとして(distanceなので)、むむ、おかしいな...

私の計算は、昨日の記事のように(符号を変えて、少し整理しました)、

z = (2fn) / {(n-f)*z + (n+f)} --- (1)

ですが、上記ポストによれば、

z = (fn) / {(n-f)*z + f} --- (2)

です。

"...someone will correct me if I'm wrong..."などと書いているので、あまり自信がないのかな、などと最初は思いました。でも、この方は正しかった。しかも、私の計算よりも賢い。

つまり、このお方は、depth textureからのz値を、(0.0, 1.0)の範囲で得られるものとして、それからz値を計算したわけです。それに対して、私の計算は、まず(おバカ)丁寧に、(-1.0, 1.0)に直してから、計算しました。もちろん、計算コストは前者のほうが少ないです。「アンタは間違っていますよ」なんてポストしなくて良かった!もっとも、かなり前のコラムなので、既に期限切れで、ポストはできませんでしたけどね。

でも、念のためですが、(-1.0, 1.0)の範囲にしておいたほうが、汎用的ですよ。たまに、z値の範囲が、(0.0, 1.0)であるかのように書かれたものを散見しますが、これは間違いです。OpenGLでは、zNearは-1.0に変換され、zFarは1.0に変換されます。

depth textureからのz値復元

備忘録であります。仕事で必要となり、Nくんがやったことの記録です。

OpenGLのdepth textureでは、z値は、(0.0, 1.0)の範囲で正規化されます。さて、ここから、視野座標系における、z値を復元するための計算について記しておきたい。

まず、z値を、(0.0, 1.0)から(-1.0, 1.0)の範囲に変換してやります。これは、0.5を引いて2倍したり、2倍して1引いてやったりすればよろしい。なぜ(-1.0, 1.0)の範囲にするかというと、これがOpenGL座標変換の仕様だからです。

次は、このz値を、視野座標系のz値に変換します。ここで、投影変換として、glFrustum()の計算がなされているとします。glFrustum()は、core profileではありませんが、便利なので使ってもよろしい。それを仮定すれば、計算は以下のようになります。

z = (-1) / [{-(f-n)/(2fn)}*z + (f+n)/(2fn)] --- (1)

分母がやたらとでかいです(元の割り算の面影を残しているため)。

glFrustum()であるかどうか定かでない場合は、逆行列で変換してやって、z = z/w、としてやればよいです。

注意点としては、視野座標系のz値は、OpenGLの定義上、マイナス値です。奥行きが欲しい場合、これはプラス値ですから、式(1)で得られたz値の符号を変えてやればいいです。以上、備忘録でした。

Bayesian Reasoning and Machine Learning (2)

BishopのPRML本に代わる本と勝手に思っている、BRML本、すなわち、

David Barber, "Bayesian Reasoning and Machine Learning", Cambridge University Press, 2012.

ですが、ちょっと通読するような書かれ方ではないので、PRMLで分からないところを読むようにしています。例えば、PRMLの第8章のGraphical Models。ここはよくわからんです。丁寧に説明されているのですが、私にとっては抽象的。

この部分に対応するBRMLと言えば、第3章~第6章あたりなのですが、こちらのほうが分かりやすい気がします。PRMLって、具体例があまり書かれていないんですよね。抽象的な数式で押し通すようなところがあるので、具体的な例を必要とする私には、難しいのです。その点では、BRMLに軍配!

ウェアラブルコンピューティングの最新動向

HISCO(ハイテクノロジー・ソフトウェア開発協同組合)主催、第11回経営改革ITフォーラムは、「ウェアラブルコンピューティングの最新動向」と題して、以下の要領で開催されます。奮ってご参加ください!(当社は、関西支部法人会員、社長は理事でございます)

【特別講演】
  『ウェアラブル技術とビジネスの現状と将来』
  神戸大学大学院 工学研究科 教授 塚本 昌彦 氏
【事例発表1】
  『日本発! メガネ型ウェアラブルコンピューター「inforod」の開発について』
  ウエストユニティス株式会社 代表取締役 福田 登仁 氏
【事例発表2】
  『ジェスチャー入力ウェアラブルMIRAMAの未来』
  株式会社ブリリアントサービス 代表取締役 杉本 礼彦 氏
【パネルディスカッション】
  講演者3名により、ウェアラブルコンピューティングを熱く語る
【懇親会&名刺交換会】
  お楽しみ抽選会も予定しております

日時:2014年09月24日(受付/13:00 講演/13:30-17:00、懇親会/17:30-19:00)
開催場所:大阪商工会議所4F(大阪府大阪市中央区本町橋2番8号)

一様分布の謎 (3)

数学仲間(?)のMさんから、面白い問題を教えてもらいました。

確率変数xが、区間(a, 2a)の一様分布に従うとき、パラメータaの最尤推定量を求めよ、という問題です。観測値は、n個のxiとします。

私はいちおう計算したのですが、これは間違いでした。答えは、

a = (1/2) max(xi) --- (1)

ということです。但し、max(xi)とは、n個の観測値の中で最大のxiです。

むむ、よくわからないゾ。であれば、

a = min(xi) --- (2)

も正解のような気がしてきました。でも、これも間違いです。なぜかと言うと、尤度L(a)は、

L(a) = (1/a)n --- (3)

であり、この関数は、aに対して単調減少します。そして、ちょっと考えると、aは、((1/2) max(xi), min(xi))の区間に入るはずですから、答えは、この区間で左端の式(1)です。

ミソとしては、尤度L(a)が、観測値xiに依存しないこと。なんか不思議です。一様分布の謎がここでも登場したわけです。出来るヒトには謎ではありませんけれど。

第19回日本バーチャルリアリティ学会大会

第19回日本バーチャルリアリティ学会大会は、2014年9月17-19日、名古屋大学・東山キャンパスにて開催されます。当社は企業展示をします(するはずです!)。

私と言えば、早期申込をしましたので、既に参加費の支払いは済ませました。

私は、なぜか論文委員ですが、Vol.19-3(「サービス現場・日常生活に浸透するVR/AR」)の担当がやっと終わりました。続いて、Vol.20-2(「デジタルファブリケーションとVR」)を担当します。これは先日(2014年6月4日)CFPが出されました。投稿申込締切は、2014年12月1日でございます。たくさんのご投稿をお待ちしております!

SIGGRAPH[ASIA]2015

SIGGRAPH ASIA 2015、神戸に決まったようですね!

少し前に、内々には聞いていたのですが、検索してもオフィシャルには出てきませんでした。それが、SIGGRAPH 2014会期中に、発表があったようです。以下、某ニュースサイトからのコピペ。

■ SIGGRAPH Asia 2015開催概要
期間:[カンファレンス]2015年11月2日(月)~5日(木)/[展示会]2015年11月3日(火)~5日(木)
会場:神戸コンベンションセンター(神戸国際会議場・神戸国際展示場)
国際学術会議参加者見込み:6,000人以上(うち海外からの参加者1,000人以上)
総発表件数:約1,000件(うち海外研究者による発表件数 約700件)
出展企業見込み: 100 社150 小間以上
主催:ACM SIGGRAPH
運営:ケルンメッセ株式会社・Koelnmesse Pte Ltd

------------------------------

でも、SIGGRAPH公式サイトのカレンダには、まだ未掲載でございます。

台風の進路予測

台風11号の話から、一般の台風の話題です。

予報を見ると、台風の進路は、やはりピンポイントとはいきませんね。ある範囲(誤差)を持っています。つまりは、確率的な予報ということになります。

これで思い出したのが、以前の「地球シミュレータ」。私は可視化システム開発で、少し関わったのですが、その縁で、「地球シミュレータ」責任者の方(Tさんとします)の話を聞く機会がありました。

Tさんの話では、いまは台風の経路はピンポイントとは行かないが、「地球シミュレータ」で解析すれば、ピンポイント予報となるであろう、という話でした。もちろん、必ずそうなるということではなく、可能性として話されたのですが、私も、なるほど、と思いました。

然るに、台風11号の進路予測は、相変わらず、ある範囲を持っていました。つまり確率です。いまは「地球シミュレータ」よりも高速な「京」がありますが、やはり台風の進路予測は難しいのでしょうね。

私は、気象の計算にはまるで門外漢ですが、おそらくナヴィエ・ストークスのような流体の方程式を解いているのではないでしょうか。それもいいのですが、ここらで、この分野でも機械学習の出番では?なぜって、これまで某大な台風の進路データがありますからね。それを機械学習で処理すれば、より的確な台風の進路予測ができるのではないでしょうか。

でも、これが成功したら、予測のためには、物理の方程式なんていらなくなっちゃいますね...まさかね。

台風11号

夏休み中のできごとと言えば、台風11号でしょうか。各地で甚大な被害を与えました。災難に会われた方には、お見舞い申し上げます。

さて、私と言えば、当日(2014年8月10日)は、午前中は父母のいる新住居(ベネッセ老人介護施設)の夏祭りに行きました。姉と妹、3人です。夏祭りと言っても、台風なんですが~いえ、大丈夫です。イベントは全て屋内。沖縄の踊りなどを観ました。スタッフの方々に、なぜか沖縄ご出身が多い。石垣島もいらっしゃる。

さて、午後は、茅ケ崎で恒例のサッカーがあります。でも、さすがに、今日は中止だろうと思っていたら、メールが来て、「やります!」だと。おいおい、こちら(大船)は雨が降っていますよ。いえ、茅ケ崎は降っていないんですと。ちょっと場所が違うと、天気も違うのが、最近の気象です。まさに、ピンポイント予報が必要。

夏祭り終了後、茅ケ崎に向かいました。雨は確かに降っていません。17時まで、しっかりとやりました。然るに、グラウンドの後整備が終わり、茅ケ崎駅に徒歩で向かう途中に、豪雨に巻き込まれました。傘など関係ありません...

サッカー終了後、いつもは着替えるのですが、面倒くさくて、そのまま帰路に着こうとしたのが正解でした。着替えても、まるで意味がありませんでしたからね。

夏休み (5)

明日(2014年8月12日)から、本BLOGも夏休みをいただきます。ちなみに当社は、今週いっぱいお休みです。

本BLOGは、18日から再開いたします。よろしくお願いいたします。

(昨年度のコピペでございます)

難民

いま、学生はお休みであります。当家の息子、娘も同じ。

さて、娘の学友が大挙して、当家に押し掛ける(これは失礼、いらっしゃる)ことになりました。数年前は息子の友達が15人くらい来たのですが、このときは家ごと明け渡しました。我々夫婦は横浜に宿を取り、娘は連れの実家に泊まりました。

娘曰く、兄がやったのだから、自分にもそうする権利があるはずだと。その通りでございます。私は差別はいたしません。

さて、今回はというと、三人で横浜のホテルに泊まりました。滅多にないことで、三人でメシを食ったりして、なかなか普段だと話せない話題も出た。まあ、結果オーライです。

オチとしては、「難民」として避難したホテルは、中国の方々に占拠されておりました。朝食のときなど、ここはどこの国?と思ってしまった。

グラフィカル・モデル

BishopのPRML本、第13章"Sequential Data"ですが、第8章"Graphical Models"で説明されているアルゴリズムをふんだんに使っているので、第8章まで退却を余議なくされました。先日のSSIIでのチュートリアルで、グラフィカル・モデルは少し分かった気になっていたのですが、そんなに甘くはなかった。

さて、そのアルゴリズムですが、sum-productというヤツです。でも、なにやら、当たり前のことを言っているような気がします。要は、graphical model上の確率計算で、最初に加法をしてから乗法してやれば、計算効率が良くなりますよ、ということなんです(そう理解した)。これは、分配法則(distributive property)であります。分配法則がこんなに奥が深かった?

それから、いわゆる木構造の操作ですね(再帰です)。木(tree)は、情報処理ではお馴染みです。う~ん、どこが凄いのか、わからんゾ。攻略できていません。

Succeeding with Agile: Software Development Using Scrum

久しぶりに、プロジェクト管理本をあさることになりました。プロジェクト管理本は、それこそたくさん読みましたが、いま手元にあるのは、以下の二冊。

- Fergus O'Connell, How to Run Successful Projects III: The Silver Bullet, 2001.
- Mike Cohn, Agile Estimating and Planning, 2005.

双方とも、得ることの大きい、必読書であります。翻訳はあるのだろうか?と、調べてみると、後者は2009年に出ているみたいです。前者は多分ない。七不思議のひとつです。出版社の方々、私が翻訳やりますよ!(やらないけれど)

Cohn氏の続編を調べてみると、ありました!"Succeeding with Agile: Software Development Using Scrum"というタイトルで、2009年に出ています。というわけで、ほぼ衝動買い。かなり厚い本ですが、さて、読むヒマはあるか?

EMアルゴリズム (3)

EMアルゴリズム攻略のため、金谷健一先生の「これなら分かる最適化数学(2005)」を見てみました。5.4節「不完全データからの最尤推定」です。難しい章なので、アスタリスクのマークが付いています。

非常に丁寧に解説されています。悪名高き(=よくわからないので私が命名しました)Q関数を最大にすれば、なぜ尤度が極値を取るのか、なぜEMアルゴリズムにより、対数尤度が単調に増加するのか、などが説明されています。最後は、これらの結果を用いて、混合分布モデルの再定式化がされます。

これ以上分かりやすい解説はなく、これでダメなら、何を読んでもダメでしょうね...

Godzilla

"Godzilla"、観てきました。もちろん3D(字幕)!

映画の3Dも観なれてしまって、以前のような感動は特にありません。というか、もう普通になりました。逆に、2Dで観たら、「なんじゃこれ?」と思うかも。でも、このような(=臨場感の必要な)映画は、最近では2Dでは観ていません。観る気もないです。

Godzillaの敵方は、"MUTO" (Massive Unidentified Terrestrial Organism)です。しかも、男女揃い踏み。結構強かった。

最後のクレジットで、泉さん(Stereo D)の名前がありました。3Dで成功した日本人随一?

Cybernetics

Norbert Wienerの"Cybernetics (1948/1961)"、日本語訳を手放して久しかったのですが(ハードカバーはどうも嫌いだ)、衝動で、今回は原書を購入しました。ペーパーバックです。三千円程度なので、内容からすれば、安い買い物。でも、読めるかな?

私にとっての天才とは、パウリ/ディラック/フォン・ノイマン/ファインマン/ペンローズ、などですが、Wienerもそのひとりです。天才は100年後を見通します。その意味で、天才の書いたものを読むのは、さまざまな点で役に立つ。それが理解できないものであっても。

さて、本書ですが、1961年の二版で加えられた章に、"On Learning and Self-Reproducing Machines"というのがあります。自己複製機械、ということですが、もしやこれって、3Dプリンタ?いえいえ、違うでしょう。まあ、読んでみます。日本語訳は読んだはずですが、忘れてしまいました。なので、理解できるできないは、言語の問題ではありません。
プロフィール

加納裕(かのうゆたか)

Author:加納裕(かのうゆたか)


[略歴]
1983年3月東京工業大学工学部機械物理工学科卒業
1983年4月(株)図研入社
1987年1月同社退社
1987年2月(株)ソリッドレイ研究所を6名で設立、取締役
1994年3月同社退社
1994年4月(株)スリーディー入社
1996年10月同社取締役
1999年12月上海大学兼務教授
2002年10月同社代表取締役
2009年9月ものつくり大学非常勤講師~現在
2009年10月同社代表退任/退社
2010年1月ソフトキューブ(株)入社~現在(技術顧問)
2017年4月湘南工科大学非常勤講師~現在


[業界団体・学会活動]
電気学会・第三期次世代インタラクティブディスプレイ協同研究委員会(幹事)/最先端表現技術利用推進協会・アカデミック部会(旧:三次元映像のフォーラム)(副部会長)/日本バーチャルリアリティ学会ハプティクス研究委員会(委員)/ACM・SIGGRAPH(Professional Member)/情報処理学会(正会員、CVIM会員)/3Dコンソーシアム(賛助会員)/3DBiz研究会(個人賛助会員)/URCF(特別会員)

----------------

前職:立体映像産業推進協議会(幹事)/日本バーチャルリアリティ学会・論文委員会(委員)


[資格]
TOEIC805点
数学検定1級(数理技能)
中型・普自二免許
サッカー4級審判員

最新記事
最新コメント
最新トラックバック
月別アーカイブ
カテゴリ
検索フォーム
RSSリンクの表示
リンク
ブロとも申請フォーム

この人とブロともになる

QRコード
QRコード