hirax.net::inside out::2017年06月

最新記事(inside out)へ  |   年と月を指定して記事を読む(クリック!)

2017年5月 を読む << 2017年6月 を読む >> 2017年7月 を読む

2017-06-01[n年前へ]

全てのデジカメをリアル妄撮カメラにしてしまう狂気!無線LAN内蔵SDカードアダプタPQI Air Cardと機械学習の間違った使い方 

 先日、機械学習を使い人体姿勢を推定するアルゴリズム(コード)openposeをキッカケに、人を妄想的に脱衣させてしまうPC画像処理ソフト(ディープラーニングによる姿勢推定openposeで「男子の夢な(衣服の下を透視する)妄撮カメラ」を作ってみよう!?)や、そのスマホアプリ化(ディープラーニング姿勢推定openposeで「妄撮カメラ iOS版」を作ってみる!?)、さらにはiOSネイティブアプリケーション化をしてみました(機械学習による姿勢推定openposeで「妄撮カメラ iOS版(ネイティブアプリ)」を作ってみる!?)。…今日は、その最終駅として、お仕事で使うようなPCでもなく・いつも持ち歩くスマホでもなくて、もはや過去の遺物になりつつある「デジタルカメラ」をリアル妄想撮影カメラにしてみることにしました。

 実際のところ、そんなことはとても簡単です。すでに、撮影した画像をサーバに投げるだけで、姿勢推定や脱衣画像を自動生成するコードは書いてあるので(ディープラーニング姿勢推定openposeで「妄撮カメラ iOS版」を作ってみる!?)、その機能をデジカメから使うようにするだけで良いのです。…というわけで、内部で動作するLinuxを自由に使うことができる無線LAN内蔵SDカードアダプタPQI Air Cardを使い、SDカード内のJPGファイルに対して自動で人体姿勢推定と脱衣画像合成処理をするRubyコードを書いてみました。もちろん、こんなことはPQI Air Cardで動くRubyを知っている人であれば、実に簡単にできる作業です(デジカメ内部でRubyを動かす狂気!無線LAN内蔵SDカードアダプタPQI Air Cardの間違った使い方)。

 まずは、PQI Air CardにRuby(あるいはCurlなど)を(前記のリンク先などから)インストールしておきます。それと同時に、PQI Air Card が起動時から外部無線LANアクセスポイントに接続してクライアントとして動作する設定にしておきます(autorun.shから/usr/bin/w2を呼ぶだけですね)。そして、autorun.sh の最終端からRubyコードを起動して、/mnt/sd/DCIM内の".JPG"ファイル群に対して妄撮画像処理を実行させてやると、デジカメで撮影した(そしてSDカード内に保存された)写真に写る人が、いつの間にか中二妄想的な脱衣姿になってしまう…というわけです。

 そんなSDカードを作り、作ったSDカードをデジカメに刺して、撮影画像を妄想撮影してみた処理例が、右上の2枚の写真です。まずは左に写る画像が(PCに写る画面を)デジカメで撮影した画像で、デジカメ内部で(サーバを経由して)生成された妄想撮影画像結果が2枚の右側に写る画像です。

 機械学習の力を活用したopenposeを使い、SDカードのDCIMディレクトリのJPGファイルをフルオートマチックに妄想撮影画像にしてしまうRubyコードをウンストールしたのが右のSDカードです。このSDカードを刺すだけで(刺したら最期)、ほぼ全てのデジカメが妄撮カメラに変身してしまいます。レンズを向けた風景に写るひと全てが、一皮も二皮も剥けた姿に変わってしまうのです。中二男子には素晴らしい道具ですが、それ以外の人にとっては単なる極悪ツールです。

 ちなみに、そんな極悪もしくは中二男子の妄想的機能を備えたRubyコードが動くSDカードを刺したコンパクトデジカメです。つまり、世界初のリアル妄撮コンパクトデジタルカメラ。…世界を変えることはないでしょうが、このカメラをひとたび手にしたならば、あなたが見る世界を・周りに存在する世界を見る目を変えてしまう…かもしれません。


 書いたコードは、ここからダウンロードできるようにしておきます。

全てのデジカメをリアル妄撮カメラにしてしまう狂気!無線LAN内蔵SDカードアダプタPQI Air Cardと機械学習の間違った使い方全てのデジカメをリアル妄撮カメラにしてしまう狂気!無線LAN内蔵SDカードアダプタPQI Air Cardと機械学習の間違った使い方全てのデジカメをリアル妄撮カメラにしてしまう狂気!無線LAN内蔵SDカードアダプタPQI Air Cardと機械学習の間違った使い方全てのデジカメをリアル妄撮カメラにしてしまう狂気!無線LAN内蔵SDカードアダプタPQI Air Cardと機械学習の間違った使い方






2017-06-04[n年前へ]

江戸の町に鳴らされる「時の鐘」の同期手法の科学と謎 

 江戸時代、時間を知らせる「時報」があった。江戸城を囲むように配置された何カ所もの「鐘」を鳴らして、江戸の町にその時刻を知らせていた。最も最初に作られた「時の鐘」は、今の東京駅や神田駅にほど近くに位置した本石町にあり、「時の鐘」はその後、他にも上野寛永寺や芝増上寺など10箇所以上に作られた。この「時の鐘」が「鐘を鳴らす順番が決まっていた」という解説を読み、いくつか不思議に思うこと(そして興味を感じること)があったので書いてみようと思う。

 そもそものきっかけは、以下の解説中の「①時の鐘は順番に鳴らされ、前の寺の鐘の音が必ず聞き取れるように配置されていた」「②捨て鐘という前振りを行うことで、遅速なく次のお寺で鐘が撞けるようにする」という記述である。この解説だけでなく、他の書籍などでもこの記述は見かけるのだが、まずはこの2点に、技術的な興味と少しの「引っかかり」を感じた。技術的興味というのはとくに②について、そして「引っかかり」は①についてである。

 時代によって設置場所と個数には変化がありますが、最初の9ヶ所は、①本石町②上野寛永寺③市ヶ谷八幡④赤坂田町成瀬寺⑤芝増上寺⑥目白不動尊⑦浅草寺⑧本所横堀⑨四谷天龍寺で、この順番で前の鐘の音を聞いて順序よく鐘を鳴らしていたのです。
 江戸では「捨て鐘」と呼ばれる撞き方があり、時刻を告げる時打ちの鐘を撞く前に、先ず注意をひくために三度撞き鳴らしていました。これは、一つ前の順番のお寺の「捨て鐘」を聞いたら、遅速なく次のお寺で鐘が撞けるようにするための知恵でした。江戸の「時の鐘」は、前の寺の鐘の音が必ず聞き取れるような位置関係に有ったようで、誤って遅速した場合の罰則はかなり厳しいものでありました。

江戸時代の暮らしと時間

 上の解説には、「①時の鐘は順番に鳴らされ、前の寺の鐘の音が必ず聞き取れるように配置されていた」と書かれているが、浦井 祥子氏の博士論文を元にした書籍「江戸の時刻と時の鐘 (近世史研究叢書 (6))」によれば、順番に鳴らされていたことがわかっているのは、史料からは

  1. 上野寛永寺
  2. 東円寺(市ヶ谷八幡)
  3. 赤坂成満寺
  4. 芝切り通し
の4つであるという。それ以外については、鳴らされ方は正かではない。

 鳴らされる順番がわかっている時の鐘に番号付けをした上で、他の時の鐘とともに地図上に描いてみたのが下図だ。ちなみに、名前を黄色背景としたところは「時計」を備えていたことがわかっている「鐘」である。

 こうして眺めてみると、当たり前のことだが、比較的高い土地に設置されていることがわかる。そうした場所に、高さ8m程度の建物の「時の鐘」を設置したというから、見通しよく鐘の音が伝わったのだろうとは思うが、「上野寛永寺と東円寺(市ヶ谷八幡)の4kmほどの距離」は少し気になる。この距離だと、梵鐘の鐘の音が届く限界距離に近く、現代より自動車音などや音波を遮蔽するビルなどが無いにしても、鐘の音を聞き取りにくい時も生じてしまうように思えてしまう。
 それに対して、東円寺(市ヶ谷八幡)から赤坂成満寺や芝切り通しへの「鐘の音リレー」は1.5km程度の間隔となっていて、こちらはとても自然だ。

 フジテレビ「トリビアの泉」で、梵鐘をヘリで吊して、高度100メートルから落下させたとき鐘の音が届く距離を調べる実験や梵鐘が聞こえる距離実験をしていて、その結果で鐘の音が聞こえる距離が1km前後だった(梵鐘を落下させたのでは、固有振動を最大限にすることは難しそうですが)。江戸の街は現代の東京よりも遙かに音が聞こえやすい…といっても、いつもきちんと伝えるのは難しいように思えてしまう。 当時、鐘の負担金を「聞こえる範囲」の300町〜400町(約3〜4km)の町人が負担したというが、果たしていつも「きちんと聞こえた」のだろうか。

 ところで、秒速340mほどの音速を考えると、上野寛永寺から芝切り通しまで「時の鐘」を伝えるためには、どんなに早くても約30秒掛かる。そして、こうした時の鐘が2次元上に配置されていることを考えると、それぞれの鐘の打ち手は一体どんな鐘の音シーケンスを聴いていたのを知りたくなる。

 「②捨て鐘という前振りを行うことで、遅速なく次のお寺で鐘が撞けるようにする」については、「江戸の時刻と時の鐘)」によれば、まず最初に鳴らされる「捨て鐘」は3打から構成され、1打目の後少し間を空けたあと、2打連続して撃ったという。つまり、モールス符号の「D-・・」のようにして撃つ作法だったという。そして、時刻を知らせる鐘は、時刻の数だけの鐘を「最初は間隔を長く、そして徐々に間隔を短くして」撃ったという。

 梵鐘を撃つ時、鐘を打つ橦木をスイングバックする必要があることを考えると、この打ち方をすることで、「捨て鐘」は「最初の鐘が大きく響き、後の2鐘は小刻みに小さな音で鳴る」ということになる。そして、時刻を知らせる鐘も同じように「音がだんだん小さく・小刻みになっていく」ことになる。この鳴らし方は、鐘の順番や数を聞き分けるために役立つような気もするし、単なる省略的な打ち方にも感じられる。

 何はともあれ、江戸の町に鳴らされる「時の鐘」の同期手法の科学を考えてみると、とても面白そうだ。江戸の町にどんな風に鐘の音が響いていたかを考えてみると、何だか江戸時代にタイムトリップしたような気になってくる。

江戸の町に鳴らされていた「時の鐘」を同期させる手法の科学(と謎)






2017-06-10[n年前へ]

「今と昔の暦がイキナリ1ヶ月ズレたのは給料1ヶ月分カットが目的」という驚き納得する話 

 『「今と昔の暦がイキナリ1ヶ月ズレたのは給料1ヶ月分カットが目的」という驚き納得する話』を書きました。よく、新暦と旧暦の違いから、お祭りの開催時期が本来の時期より1月ズレる問題を考えることがあります。そんな旧暦・新暦変更の歴史的な経緯が、素晴らしく(経済ロジックとして)わかりやすい…という話。

年末近くの11月、まさかの「来年からは、全然違うカレンダー使うことにしました!」という明治政府の発表は、来年の暦(カレンダー)を作成真っ最中の業者など、大混乱を引き起こしたといいます。…「さまざまなことへの影響が大きい暦の変更を、なんでイキナリ急いでやるの?」と思ったアナタは鋭い!聞けば納得の理由があるのですが、それが明らかになるのはもう少し先。

「今と昔の暦がイキナリ1ヶ月ズレたのは給料1ヶ月分カットが目的」という驚き納得する話