A Standard Default Color Space for the Internet - sRGB

とりあえずガンマの意味がよくわからなくなった……

なんかいくつかあって難すぎる…… ちょっと訳してみる

  1. viewing gamma
    1. the overall system gamma that we want to obtain and is typically computed by multiplying the camera gamma by the display gamma as shown below.
    2. システム全体として要求してる、典型的には以下に伸べる camera gamma と display gamma を積算して求めらるガンマ
  2. camera gamma
    1. the characteristic of the image sensor or video camera standard transfer function
    2. イメージセンサやビデオカメラの標準伝達関数の特徴
  3. CRT gamma
    1. the gamma of the physical CRT.
    2. CRT の物理的なガンマ
  4. LUT gamma
    1. the gamma of the frame buffer lookup table
    2. フレームバッファルックアップテーブルのガンマ
  5. display gamma
    1. the "display system" gamma downstream of the frame buffer which is typically computed by multiplying the CRT gamma by the LUT gamma as shown below.
    2. "ディスプレイシステム" としての、典型的には CRT gamma と LUT gamma を積算して求める、フレームバッファを通した最終的なガンマ
http://www.w3.org/Graphics/Color/sRGB.html

いわゆる「ディスプレイのガンマ」ってやつは最後の display gamma っぽい。CRT gamma はディスプレイの物理的な (ハードウェアとしての) 特性値で、LUT gamma はディスプレイカードとかに設定されているガンマ値かな。

camera gamma は当然カメラのセンサー特性のことだと思う。viewing gamma はカメラからディスプレイ出力までを考慮した全体的なガンマ?

ディスプレイキャリブレーションでターゲットにするガンマは当然 display gamma だと思う。キャリブレーションでガンマを求めたら、ディスプレイカードの LUT ガンマを調整するのかな…

  1. トップ
  2. tech
  3. sRGB 仕様・ガンマの種類

ガンマの種類を読んでいて、そもそも「ガンマ」のついて理解がなさすぎるな、ということでそこからちゃんと理解する必要がある。

ガンマは信号の出入力間の関係性を示していて、具体的には、出入力信号強度間に output signal intensity = input signal intensity ** gamma という関係があるときの gamma らしい。ディスプレイのガンマが1ならリニア(変化なし)だし、1を超えているなら黒っぽくなり、1未満なら白っぽくなる。

  • 自然界の物体の色は反射率に対してリニア、すなわち gamma = 1
  • CRT ディスプレイにおいて物理的特性から gamma ≒ 2.2
  • 人間の目・脳は gamma ≒ 1/3〜1/2.2 で知覚

graph

人間の目は信号強度が強くなるほど圧縮して知覚するらしい (明るくなるほど、明度差を感じるための必要な信号差が大きくなる)。これは音の大きさとかでもそうだし、人間の知覚ってそういうものらしい ヴェーバー‐フェヒナーの法則

CRT にリニアな信号を入れると、人間が知覚する場合はある程度中和されて、階調変化が自然に見えるようになるようだ? (γ=0.733~1.0 程度になるっぽい)

理想的なディスプレイ

とりあえずこれらを踏まえて「理想的なディスプレイ」を考えてみる。つまり階調をできるだけフルで生かせるディスプレイを作る場合、どういう特性のものがいいか?

  • 人間の目のガンマ特性的に信号強度が強い場合は階調がいらない
  • ディスプレイが人間の目と逆のガンマ特性を持っていれば階調的には効率が良い

要は γ=2.2~3 なら階調的には嬉しいはず

理想的なカメラ

物理的な反射特性はリニアだけど、前述の通り信号強度が強い場合は階調がいらないので、γ=1/3~1/2.2 だと一番効率が良いはず

理想的な viewing gamma

カメラとディスプレイを含めたシステム全体のガンマとしては、当然 1.0 になるのが理想だと思われる。すなわちカメラで撮影された画像が、そのままディスプレイで見れる。

ただ、実際には「閲覧環境」というのが関係するので、1.0 にはならないっぽい。

ターゲット display gamma

ターゲットにする display gamma は、仕様で定められている閲覧環境と自分の閲覧環境との差のことを考慮しないないといけない。

今さらだけど環境光によってガンマが変わるってのがいまいちイメージできないけど、

  • 暗い環境ほど相対的にディスプレイが明るくみえるので、より黒くなるように設定しなければならない?
  • 明い環境ほど相対的にディスプレイが暗くみえるので、より白くなるように設定しなければならない?

sRGB に書いてある viewing gamma は

  • 1.5 - 完全に暗い部屋でのプロジェクタスライド用
  • 1.25 - かなりくらい部屋でのモニタ用 (これは15ルクスぐらいの環境光を前提にしたテレビ系を想定してる)
  • 1.125 - CG を見るとき典型的な 64ルクスぐらいの環境光を前提にした場合 (ITU-R BT.709 っていう放送規格?と一緒らしい?)

viewing gamma 1.125 を想定していて、display gamma 2.2 を設定しろ、ということは、viewing gamma 1.0 に正規化すると display gamma は 1.956 相当になる。

だけど、普通のオフィスとか家庭の環境だと、200ルクスぐらいは少なくともあるらしいので、sRGB が想定している環境からはだいぶ離れている? 明るい環境ならもっと小さなガンマ値を設定しないといけないはずだけど、どうやって求めたらいいかわからない。

とはいえ、現実的には昨今 display gamma は 2.2 にしとくのが無難っぽいのでそれほど深く考えても無駄な感じがする。

  1. トップ
  2. tech
  3. ディスプレイのガンマを理解する

クレジットカードについては家計簿に自動入力しているのだけれど、利用日から1ヶ月ぐらい経ってから請求がくることも多々あって、年をまたぐとものすごく面倒な感じになっている。

年をまたぐと別のスプレッドシートにするようにしたくて、そうしてるのだけれど、自動入力する側のスクリプトを複数スプレッドシートへ振り分けできるような設計にしていないのが問題なのでなんとかしたい。

あとそもそも、1年分の細かい仕訳を1つのシートに追記していく形だと、膨大になりすぎてダメなのではないか? という気がしてきた……

調べてみると

  • セルの数: 全シートで合計 400,000 セル
  • 列の数: 1 シートあたり 256 列
  • 数式の数: 数式が含まれているセルが 40,000 セル
http://support.google.com/drive/bin/answer.py?hl=ja&answer=37603

らしい。

  • 仕訳以外のシートで1000セルぐらい
  • 仕訳は1行あたり6セル
  • 1ヶ月あたり約150行ぐらい
  • すなわち1ヶ月約900セルぐらい
  • 1年だと10800セル

なのでセル数的には全く問題はなさそう。ただ、下へ追記していく形で行数を増やしていくと、新しい仕訳を見るために、スクロールして全てのデータを読みこむ必要がでてきてしまう。なのでどっかのタイミングで並び順を逆にしないといけなそうだな、と思ってる。

食費については、日々の感じから概算で1月分を考えたことはあっても、正確に把握したことはなかったので、結構興味深い。

12月はやたら使っていたみたいだけど、食費の内容について詳細に記述してなくてどういう内訳なのかがわかりにくい。おやつと食費をわけて記述したほうがいい気がする。

自分の中の、ある感性に関して、それが先天的なものなのか、あるいは後天的に学習によって獲得されたものなのか、どちらなのかということに興味が強い。

例えば、自分の中にある原風景が、どこまで学習で獲得されいて、どこまでが DNA にプログラムされているか、実際のところは区別する方法がないけれども、考えていて飽きないことの一つだ。

自分は血統主義だな、とときどき思うところがあるが、一方では遺伝とは関係なく、環境・教育によって全てが決まるとも考えている節もある。

後者は理想論で、きっとそうだったら、努力して報われるということだから、良いのだけれど、現実的には遺伝による影響というのは無視できる範囲にはないと思う。

日本は国籍を遺伝・血統主義で認める制度をとっている割に、社会的には遺伝によってそもそものスタートラインが違うことを、一切認めないような雰囲気があるように感じる。実際そのような雰囲気を他の人が感じているかは知らないが、もしそうであるなら、自分の中にもあるこのような考えかたは、環境によって構築される価値観なのだなと思う。

スクリーンショット

サイドにグレーの帯をひくデザインにしてみた。最初 18% グレーとかにしたんだけど、濃すぎたのでやめた。文字の場合は帯まで伸びず、写真やコードの場合は帯まで占有するようにした。

前まではこういう単純な帯でも画像をつくったりする必要があったけど、CSS のグラデーションのおかげで、かなり楽になった。今回は固定サイズの帯だけど、CSS でやるなら割合で適用できるので、フレキシブルになったなあと思う。

  1. トップ
  2. tech

設定していたウェブフォントに Bold がなかったためか、ブラウザによってはだいぶ汚いボールドのエミュレーションがかかっている状態だったので、別のウェブフォントに変えた。あんまり複数スタイルを持っているウェブフォントがなくて難儀する。

前に使っていたフォント (Mate SC) はちょっとオールドっぽい感じものだったけど、今設定してる Merriweather はスッキリしててモダンになった気がする。

  1. トップ
  2. tech