技術

A tool was configured, tested, broken, and sometimes fixed. These entries document what worked and what didn't: recording setups, network infrastructure, text editors, file formats, and the quiet satisfaction of making something behave.

技術

まぶたの裏に残る灰色の光

今すぐ目を閉じてみてほしい。 真っ暗になるはずだ。少なくとも、そう期待する。ところが実際に見えるのは、完全な黒ではない。うっすらとした灰色。ちらちらと揺れる微細な光の粒。ときどき、色のついた模様のようなものが浮かんでは消える。 これは故障ではない。あなたの目は、正常に動作している。正常に動作しているからこそ、暗闇の中でも「何か」を生み出してしまう。人間の視覚には、常にノイズがある。そしてそのノイズを完全にオフにする方法は、存在しない。 あなたは黒を見たことがない 完全な暗闇で目を閉じたとき知覚されるあの暗灰色には、名前がある。ドイツ語でEigengrau(アイゲングラウ)。「固有の灰色」という意味だ。19世紀のドイツの生理学者エヴァルト・ヘリングがこの語を用いたとされる。 Eigengrauは、外部からの光がまったくない状態でも網膜の視細胞が自発的に発火することで生じる。光受容体である錐体細胞や桿体細胞の中にある視物質(ロドプシンなど)は、光を受けなくても熱エネルギーによってごくまれに異性化を起こす。これが「熱ノイズ」と呼ばれる現象で、脳はこの微弱な信号を「光が来た」と解釈

By Sakashita Yasunobu

技術

星空を眺める

夜空を見上げて、明るい星をじっと見つめる。よく見えるはずだと思って目を凝らすのに、なぜかぼんやりして、はっきりしない。ところが、ほんの少し視線をずらした瞬間、さっきまで見えなかった淡い星がふっと浮かび上がる。 これは錯覚ではない。目の構造がそうさせている。 網膜の二つの顔 人間の網膜には、光を受け取る細胞が二種類ある。錐体細胞と桿体細胞だ。 錐体細胞は網膜の中心部、中心窩と呼ばれる領域に密集している。色を識別し、細かい形を捉える。日中の視覚を担う主役だ。一方、桿体細胞は網膜の周辺部に多く分布している。色はほとんど感じ取れないが、わずかな光にも反応する。暗い場所での視覚は、こちらが支えている。 つまり、目の真ん中は明るい場所に強く、目の端は暗い場所に強い。昼と夜で、網膜の中で主役が入れ替わっている。 星空を眺めるとき、暗い星を直視するということは、光に対して鈍感な中心窩で捉えようとしていることになる。見えないのは当然だ。 逸視という技術 天文観測の世界には「averted vision」という技法がある。日本語では「逸視」と訳されることが多い。やり方は単純で、見たい天

By Sakashita Yasunobu

光と写真

好きで始めた写真が息苦しさに変わるとき

写真が好きで始めたはずなのに、いつの間にか疲れている。撮ること自体は楽しい。だがSNSに投稿した後の反応を気にし始めると、楽しさの質が変わる。撮影会に行って他の人の機材を見ると、自分のカメラが急に貧相に見える。ベテランの人に「その設定だと」と言われると、楽しかった時間が一気に萎む。 カメラ界隈がしんどいのは、撮影技術の問題ではない。人間関係とインセンティブの構造の問題だ。 経験年数が正しさになる権威勾配 カメラ界隈には、「長くやっている人の意見が正しい」という暗黙の序列がある。これはあらゆる趣味コミュニティに共通する構造だが、カメラ界隈では特に強い。写真には明確な正解がないため、正しさの根拠が「経験年数」に依存しやすいのだ。 技術的な正解はある程度存在するが、「いい写真とは何か」に正解はない。正解がない領域では、経験年数が権威の代替指標として機能する。 結果として起きるのは、「長くやっている人が新しい人に教える」という一方的な関係の固定化だ。教えてもらう側は意見を言いにくくなり、教える側は自分の基準が正しいと確信を深める。フィードバックのループが閉じて、多様な視点が排除され

By Sakashita Yasunobu

光と写真

見えない光が写す もうひとつの風景

見えない光で写真を撮る、という行為がある。 カメラのシャッターを切る。構図を決め、ピントを合わせ、露出を調整する。やることは通常の撮影とまったく同じだ。ただひとつ違うのは、写し取る光が人間の目には見えないということ。赤外線写真は、可視光の向こう側にある世界を画像として定着させる技術だ。 出来上がった写真を見ると、緑の木々は真っ白に輝き、空は暗く沈み、雲だけが不気味なほどのコントラストで浮かび上がる。現実の風景を撮っているのに、現実には見えない。この矛盾が、赤外線写真の核にある面白さだ。 赤外線写真とは何か 人間の目が感知できる光(可視光)の波長は、およそ380nmから780nmの範囲だ。赤外線はその上、約780nm以降の波長を持つ電磁波で、近赤外線(780nm-2500nm程度)は写真撮影に利用できる領域にある。 フィルム時代には、赤外線に感光する専用フィルムが存在した。代表的なのはKodak High Speed Infrared(通称Kodak HIE)で、粒子の粗さと独特のハレーションが赤外線写真の「あの雰囲気」を作っていた。残念ながら2007年に製造終了している。

By Sakashita Yasunobu

光と写真

止まったように見える景色の先へ

5年前のカメラで撮っても、困らない。 これは実感だ。数年前のミラーレスカメラであっても、日常的な撮影で「このカメラでは撮れない」と感じる場面はほとんどない。画素数は十分。高感度も実用的な範囲に収まっている。AFは被写体を見失うことが減った。RAW現像のワークフローも成熟している。 「カメラの技術的進化は頭打ちだ」という言説が繰り返されるのは、この実感が広く共有されているからだろう。だが「困らない」ことと「頭打ち」は、同じことを意味しているのか。 「頭打ち」を分解する 「頭打ち」という言葉は、物理法則的な限界に到達したことを暗示する。しかし実際に何が起きているかを分解してみると、見える景色は変わる。 センサー解像度。 フルサイズセンサーでは6100万画素(ソニーα7R V)クラスが上限に近づいている。一般的な用途、つまりSNSへの投稿やA3サイズまでのプリントであれば、2400万画素で十分すぎる。ただし中判デジタルの領域では1億画素を超える製品が登場しており、科学・産業用途ではセンサーの高解像度化はまだ進んでいる。「頭打ち」に見えるのは、民生用フルサイズという特定の文脈に限っ

By Sakashita Yasunobu

光と写真

星の光がフィルムに届くまで

デジタルカメラで星空を撮るのは、ある意味で素直な作業だ。ISOを上げて、シャッターを開けて、センサーに光を溜める。露光時間を2倍にすれば、記録される光の量も2倍になる。比例関係がきちんと成り立つ。 フィルムでは、そうはいかない。 相反則不軌という厄介者 フィルムの感度には、教科書通りにいかない領域がある。相反則不軌(reciprocity failure)と呼ばれる現象だ。 通常、フィルムの露光は「光の強さ × 時間」で決まる。これを相反則(reciprocity law)という。ISO 400のフィルムで、ある絞りとシャッター速度の組み合わせが適正露出なら、光の強さを半分にしてシャッター速度を2倍にしても、同じ露出が得られるはずだ。 しかし、露光時間が長くなると、この法則が崩れる。フィルムの感光乳剤に含まれるハロゲン化銀の結晶は、光子を受け取って潜像核を形成するが、光子の到達間隔が長くなりすぎると、形成途中の潜像核が安定する前に崩壊してしまう。つまり、弱い光を長時間当てても、計算通りには感光しない。 星空撮影では、これが致命的に効いてくる。計算上は30秒で適正露出になる

By Sakashita Yasunobu

光と写真

物撮りは遠くから

物撮りがうまくいかない原因は、たいていシンプルだ。近すぎる。 被写体に寄れば寄るほど、手前と奥の距離差が相対的に大きくなる。結果、手前が膨らみ、奥がすぼまる。円筒形のボトルが台形に見え、箱の前面だけが不自然に大きくなる。これは「広角レンズの歪み」と呼ばれがちだが、正確ではない。歪みの原因はレンズではなく、距離だ。 パースペクティブは距離で決まる よくある誤解がある。「望遠レンズを使えば歪みが減る」。結論だけ見れば間違っていない。しかし理屈が違う。 パースペクティブ、つまり遠近感の見え方を決定するのは、カメラと被写体の距離だけだ。焦点距離は画角を変えるが、パースペクティブそのものには関与しない。同じ距離から撮れば、35mmで撮ってもトリミングしても、85mmで撮っても、パースペクティブは同じになる。 望遠レンズで「歪みが減る」のは、同じ大きさに被写体を写そうとすると、焦点距離が長いぶん後ろに下がらざるを得ないからだ。離れるから歪まない。レンズが歪みを消しているのではなく、距離が歪みを消している。 物撮りでマクロレンズの90mmや105mmがよく使われるのも、これが理由だ。マ

By Sakashita Yasunobu

哲学を読む

考えることしかできない

人類が何千年もかけて「知性」と呼んできたものは、実のところ、知性のうちでもっとも薄い層だったのかもしれない。 1997年、IBMのDeep Blueがチェス世界王者ガルリ・カスパロフを破った日、世界は「機械が人間を超えた」と騒いだ。しかし同じ機械は、テーブルの上のコーヒーカップを持ち上げることができなかった。チェスの王を詰められる計算能力が、マグカップの取っ手を握る動作の前では無力だった。 1988年、ロボット工学者ハンス・モラヴェックは著書 Mind Children(Harvard University Press)のなかで、この奇妙な非対称性を一文に凝縮した。「知能テストやチェスで大人レベルの性能をコンピュータに発揮させることは比較的容易だが、知覚や運動に関して一歳児のスキルを与えることは困難、あるいは不可能だ」。同時期にロドニー・ブルックスやマービン・ミンスキーも同様の観察を述べている。これがモラヴェックのパラドックスと呼ばれるものだ。 そしてこのパラドックスが本当に突きつけているのは、AIの限界ではない。「知性とは何か」という問いに対する、人間の見積もりの甘さだ。

By Sakashita Yasunobu

哲学を読む

無関係なものを忘れる技術

知性とは何かと聞かれたら、たいていの人は「考える力」と答えるだろう。推論する力。分析する力。問題を解く力。 だがAIの歴史が数十年かけて暴いたのは、ほぼ真逆の事実だった。知性の核にあるのは、考えない力かもしれない。関係のないことを無視し、必要のない推論を止め、世界の大部分を放っておく力。それを私たちは「常識」と呼ぶ。そして常識がどれほど途方もないものであるかを最初に突きつけたのは、哲学者でも心理学者でもなく、ロボットに爆弾を片付けさせようとした計算機科学者たちだった。 三台のロボットの末路 哲学者ダニエル・デネットは「認知の車輪」と題した論文のなかで、三台のロボットの寓話を語った。 一台目のロボット、R1。部屋のなかに時限爆弾がある。同じ部屋にR1のバッテリーも置かれていて、バッテリーは台車に載っている。R1は台車を引き出せばバッテリーを救えると推論し、実行する。だが台車の上には爆弾も載っていた。R1は「台車を引くと台車の上のものが一緒に動く」という副次的効果を推論できなかった。 二台目、R1D1。行動の副次的効果をすべて考慮するよう設計された。台車を引く前に、R1D1はあ

By Sakashita Yasunobu

技術

EthernetポートのLEDが示すもの

PCやルーターのEthernetポート(RJ45コネクタ)には、小さなLEDが2つ付いていることが多い。何気なく目にする光だが、それぞれが異なる情報を伝えている。 リンク状態と通信アクティビティ 一方のLEDは、物理的な接続の有無と、データの送受信状況を示す。 * 点灯していれば、ケーブルが正しく接続され、リンクが確立している * 点滅していれば、データパケットの送受信が行われている * 消灯していれば、ケーブルが抜けているか、相手側の機器が応答していない この点滅は一見すると何らかの規則的なパターンに見えることがあるが、実際にはネットワーク上のトラフィック(パケットの送受信)に応じて不規則に発生しているだけであり、点滅のパターン自体に意味はないことがほとんどである。点滅していない場合は、単に通信が発生していない状態である。 通信速度の表示 もう一方のLEDは、リンク確立時にネゴシエーションされた通信速度を色で示す。10/100/1000 Mbps対応のポートでは、一般的に以下のような構成になっている。 * ある色で1000 Mbps(ギガビット)接続を示す

By Sakashita Yasunobu

技術

NTPのStratum階層とGPS時刻同期の仕組み

Windowsの時刻がずれやすいと感じたことをきっかけに、NTPの仕組みやStratum階層、GPSを用いた時刻同期について調べた内容をまとめる。 NTPとは NTP(Network Time Protocol)は、ネットワーク上の機器間で時刻を同期するためのプロトコルである。現在広く使われているのはNTPv4(RFC 5905)で、1985年の初版から改良が重ねられている。 NTPはStratum(階層)と呼ばれるツリー構造で時刻を配信する。上位の正確な時刻源から下位へ順に同期することで、ネットワーク全体の時刻精度を維持している。 Stratum階層 NTPのStratum階層は以下のように定義される。 * Stratum 0 : 基準時刻源そのもの。原子時計やGPS受信機などのハードウェアデバイスが該当する。Stratum 0はネットワーク上のサーバではなく、シリアルポートやUSBなどでStratum 1サーバに直接接続される * Stratum 1 : Stratum 0に直接接続されたNTPサーバ。プライマリタイムサーバとも呼ばれる * Stratum 2

By Sakashita Yasunobu

技術

Ghost CMSでKaTeXを使って数式を表示する方法

Ghost CMSには数式レンダリング機能が組み込まれていないため、外部ライブラリを導入する必要がある。本記事では、Khan Academyが開発した軽量な数式レンダリングライブラリであるKaTeXをGhostに導入する手順を解説する。 KaTeXの読み込み GhostのCode Injection機能を使い、サイト全体のヘッダーにKaTeXのCSSとJavaScriptを追加する。 Settings > Code injection > Site Header に以下のコードを貼り付ける。 <link rel="stylesheet" href="<https://cdn.jsdelivr.net/npm/katex@0.16.25/dist/katex.min.css>" integrity="sha384-WcoG4HRXMzYzfCgiyfrySxx90XSl2rxY5mnVY5TwtWE6KLrArNKn0T/mOgNL0Mmi" crossorigin="anonymous&

By Sakashita Yasunobu