2009-08-22

夢吊橋

八田原ダム・芦田湖畔に架かる世界一支間長の長い吊床版橋です。

太陽近くの雲と、山の日陰の部分両方表現出来るように調整するのが大変でした。DxO Lightingで覆い焼きをすれば楽ですが、不自然になるので避けました。

世羅ゆり園

広島県世羅高原 世羅ゆり園 - Home

これからあの丘に登ってみます。


丘の上は花を育てている途中で、まだ見ることが出来ませんでした。次回の楽しみにしておきます。


ゆりはハウス内で育てられていました。

世羅高原農場ひまわり祭

世羅高原農場へようこそ

風車がお出迎え。
Bayer配列でもここまですっきりくっきりした写真が撮れるなら、綺麗に撮れる状況に制限のあるFoveonと使い分けなくても良いかな、と思います。
DP2はあれはあれでこの大きさに勝算があるんだというタイプのカメラですが。


八重咲のひまわり


黒いひまわり


勿論普通のひまわりもあります。


サルビア


9月5日からはダリア祭だそうです。

2009-08-19

特定商取引に関する法律

特定商取引に関する法律によると
> 販売業者又は役務提供事業者は、電話勧誘販売に係る売買契約又は役務提供契約を締結しない旨の意思を表示した者に対し、当該売買契約又は当該役務提供契約の締結について勧誘をしてはならない。
だそうです。

10秒で読む日経
今日のテーマはインフルエンザです。

N95マスクの着用法
針金、プラスチックなどが入っている方が上で、ここを鼻にあわせて曲げます。
プリーツが下向きになっているのが外側らしいです。ただこれで上と外を決めると、紐が接着されている部分が外側になるマスクと内側になるマスクがあります。どっちが正しいの?

  1. マスクを持つ前に手を洗う。
  2. マスクにやぶれなどが無いか確認する。
  3. マスクの向きを、
    • 鼻ワイヤーのある方が上、無い方が下
    • マスクのプリーツが上を向く面が、自分の顔側になるように、マスクを持つ。(こう持つとプリーツが下を向く面が、マスクを装着した時に外側になる。)
      (※マスクによって逆向きの場合があります。お使いのマスクの包装等に書かれている説明書を確認を。)
            /
       外側 / 顔側 ←装着した時にプリーツの向きはこうなる
            /
  4. マスクを左右半分に折って、鼻ワイヤーを半分に曲げる。装着後に曲げると隙間が増えるので、先に曲げておく。
  5. マスクを半分に折ったまま、鼻ワイヤーの自分の鼻の高さになるあたりをつまんで、鼻ワイヤーを山型に軽く曲げる。
     __/\__ ←鼻の形にこうなるように曲げる
  6. プリーツを上下に広げる。装着後に広げると隙間が増えるので、先に広げておく。
  7. 紐を持ってマスクを装着する。マスクの内側は絶対触らないように。
  8. マスクとの隙間が最小限にするために、
    • 鼻ワイヤーを自分の鼻の形になじませて密着させる
    • あごの下までマスクの下端を引き下げ、あごをすっぽりと包み込む
    • 頬とマスクの隙間を無くすようなじませて密着させる この時に隙間が多いなら、マスクが顔に大きさに対して大きすぎです。自分の顔の大きさに合うものを探しましょう。
大学が用意したマスクは説明が何も書かれていないのですが、箱から出すときにマスクの中央を持って出すように箱に入っているので、この持つ部分、つまり箱の中での上側(色のついている方)が外側でしょう。こうするとプリーツは下向きになり、紐が接着されているのは内側になります。

関係ないですが
海外在住者のための年金手続き.com
ブログテーマ[EP-901Aレビュー]|オトク貯金大作戦
シバンムシ類について(暮らしの情報)
どうして竹田の子守唄は歌っちゃダメなの?
【2ch】ネタちゃんねる m9( ゚д゚)っ コミケで撮ったコスプレ写真うpスレ 二日目 三日目
「コミケに行ってきた」海外オタクのコミケ体験記 - Suzacu Late Show
まにあっくすZ 日本人と結婚したい! 肉じゃが作りに励む台湾女子が話題
便所主題餐廳 トイレをテーマとしたレストラン

2009-08-17

SIGMA DP2

一つ一つの素子がRGBの3色すべて捉える事が出来るので、偽色を防ぐためのローパスフィルタが不要で、輪郭強調していないのに境界がはっきりしているという意味で非常にすっきりした画像になります。
大き目のコンパクトデジタルカメラくらいの小ささなのに、綺麗に撮れた時は大きなデジタル一眼レフ以上に綺麗な写真が撮れます。
しかし世の中そんなに甘い話はなくて、綺麗に撮れる状況が極めて限られます。

まず、高感度が弱くてISO400以上だとこのカメラ独特の綺麗な写真になりません。感度オートの範囲はISO100と200で、しかも手ぶれ補正はないので、暗くなると手ぶれしやすくなります。
また、電源ボタンを押してから写せるまでの時間も長く、オートフォーカスが遅いのでシャッターボタンを押してから写るまでの時間も長いです。
さらに、電池のもちも悪く、一回の充電で100枚ちょっとしか撮られません。

デジタルカメラに求められるポイントを大まかに次の3点に整理すると

  1. 小ささ、軽さ、持ち運びやすさ
  2. 画質のよさ
  3. 撮りやすさ(少々暗くても手ぶれしにくい、オートフォーカスが早い、一日位は電池の心配をしなくていい、一枚撮ってすぐ次も撮れる、など)
一眼レフは1番目の点を、コンパクトデジカメは2番目の点を、そしてDP2ならば3番目の点を諦めることになりますので、用途に応じて使い分けることになります。
一眼レフを持っていけないけれど綺麗な写真は撮りたい、という場合はDP2の出番です。

センサーの奥深くまで光が届いてやっと色の判別が出来るというセンサーの特性が原因でしょうか、光量不足だと緑がかります。 周辺減光と相まって、周辺が緑になります。
価格.com - 『両サイドの緑色』 シグマ SIGMA DP2 のクチコミ掲示板

JPEGとRAWのどちらかでしか撮ることが出来ません。RAWファイルがあればパソコンでJPEGを作ることが出来ますし、その際に調整も出来ますからRAWで撮るほうが良いです。
RAWファイルを現像しなくても見ることが出来るソフトとして FastStone Image ViewerIrfanView32があります。
FastStone Image Viewerは Download FastStone Image ViewerでPortableを選ぶと、インストールしなくても使うことが出来ます。
Irfan View32では別途pluginをインストールする必要があります。

技術の競演、イメージセンサー
カメラ屋店頭の印象にだまされるな!立体デジカメ『FinePix REAL 3D W1』レビュー - ガジェット通信

2009-08-14

尾道

お盆の休みの間に尾道へ行ってきました。

手前がしまなみ海道。奥は尾道大橋有料道路


駅横のショッピングセンターの上は住宅です。買い物に便利ですね。
DP2なので最上階のように壁の模様が細かくなるとモアレが出ます。


尾道城


駅の向かい側にありました。


アイスクリーム屋さんの営業時間は日没まで。


帰り道に見かけた意味不明の物体。


鴨方駅。


屋頂上有野猪


高梁川付近

2009-08-13

ローパスフィルタ

結論

最近の画素が多いデジカメの場合、輪郭強調をしない設定にします。ブログなどのために縮小するならRalphaを用いて設定(0)リサイズ設定(R)で縮小アルゴリズムをLanczosに設定し半径を2に、「リニアな色空間で処理する」にチェックをつけて縮小します。


網戸に蝉がとまっていました。85mm, 1/15sでも手ぶれ補正のおかげで手ぶれがありませんし、DxOのノイズリダクション処理によりISO3200でもノイズが少ないです。

本文

最近のデジカメは何百万画素もあり、パソコンの画面にせよ葉書サイズへの印刷にせよ縮小することになります。そこで縮小に使われる関数について調べてみました。
殆どの縮小方法は、近くのいくつかの点の明るさの平均を計算します。その時に、より近い点は重点的に、少し離れた点は軽く評価して平均します。距離に対してどれくらいの重みで評価するかを決める関数によって、縮小後の画質も変わってきます。
そのために使われる関数は色々ありますが、シンプルな平均画素法と、理論的には性能が良いLanczos法について調べました。Excel VBAのプログラムも書いていますが、すごく手抜きで概略を掴むためです。積分の計算も単純に長方形を足しているだけです。

画素平均法は、面積平均法とも呼ばれ、元の画像の各画素を同じ大きさの正方形で描いたとして、それを縮小後の画素数に合わせて等分して枠線を引き、枠線の中の画素の平均を計算します。
縦横2画素計4画素を1画素に縮小する場合は、その4画素の平均になります。
他の例として5分の2に縮小する場合は
12345
□□□□□
  |  
 1 2 
縮小後の左の画素は、元の画像の1番目と2番目、そして3番目の半分ということで
1番目の2/5倍、2番目の2/5倍、3番目の1/5倍を足したものになります。

Lanczos法について
縮小すると細かい部分が表現できなくなります。横に1000画素あれば、白黒白黒…の繰り返しで500本の縦線を表現できますが、これを500画素に縮小すると250本の縦線までしか表現できなくなります。この場合、元の画像に300本の縦線があると表現できなくて、250を超えた分が折り返して200本の縦線のモアレになります。ですから縮小する時には250本より細かい模様は消しておく必要があります。
この目的で、250本までは全く影響を与えず、それ以上は完全に消してしまうフィルターがsinc関数であり、それに窓関数を組み合わせて途中で切るのがLanczos関数です。

これらをVBAで書くと
Function sinc(x) As Double
If x = 0 Then
  sinc = 1
Else
  sinc = Sin(x * Application.Pi()) / (x * Application.Pi())
End If
End Function

Function lowpass(x, k) As Double
If k <= 0 Then
  If Abs(x) < 0.5 Then
    lowpass = 1
  Else
    lowpass = 0
  End If
Else
  If Abs(x) < k Then
    lowpass = sinc(x) * sinc(x / k)
  Else
    lowpass = 0
  End If
End If
End Function
このようになります。kが自然数の場合は幅がkのLanczos関数に、関数を分けるのが面倒なのでkを0以下にすると画素平均法の関数になります。
関数の形状は
Sub shape()
For k = 0 To 4
  For i = 1 To 801
    x = (i - 401) / 100
    Cells(i, 1) = x
    Cells(i, 2 + k) = lowpass(x, k)
  Next i
Next k
End Sub
このプログラムで表示できて

このようになります。Lanczosの2以上だと、少し離れたところがマイナスになります。これによって輪郭が強調されます。画素平均法は0と1の境界の部分で、面積に応じた中間の比率を使うことが特徴なのですが、このプログラムには反映されていません。

これらによって明るさが急激に変わる画像
Function original(x)
If x > 0 Then
  original = 1
Else
  original = 0
End If
End Function
を変換すると

このようになります。使ったプログラムは
Sub highcut()
Dim normal(4) As Double

For j = 0 To 4
  wa = 0
  For i = -3 To 3 Step 0.01
    wa = wa + lowpass(i, j) / 100
  Next i
  normal(j) = wa
Next j

For k = 0 To 4
  For i = 1 To 601
    wa = 0
    x = (i - 301) / 100
    For j = -3 To 3 Step 0.01
      wa = wa + original(x + j) * lowpass(j, k) / 100
    Next j
    Cells(i, 1) = x
    Cells(i, 2 + k) = wa / normal(k)
  Next i
Next k
End Sub
です。Lanczos2以上だと上がるときに一旦上がりすぎてから下がります。これによって輪郭強調効果がありますが、Lanczos3以上だと今度は上がった後もう一度下がり、境界が波打ちます。これはリンギングと呼ばれます。Lanczos2による輪郭強調効果は、人間の錯視の一つマッハバンドと同じ傾向ですので不自然さを感じません。Lanczos3以上だとちょっと違和感を感じます。

これらによって、消すべき細かい線がちゃんと消えているか、残すべき大きな線がちゃんと残っているかを調べてみました。使ったプログラムは Sub tokusei()
Dim wa As Double, wa2 As Double, wa3 As Double, normal(4) As Double

For j = 0 To 4
  wa = 0
  For i = -3 To 3 Step 0.01
    wa = wa + lowpass(i, j) / 100
  Next i
  normal(j) = wa ^ 2
Next j

For i = 1 To 501
  j = 2 ^ ((i - 1) / 100)
  
  wa3 = 0
  For x = -4 To 4 Step 0.01
    wa3 = wa3 + Sin(j * x) * Sin(j * x) * 0.01
  Next x
  
  Cells(i, 1) = j
  For k = 0 To 4
  wa2 = 0
  For x = -4 To 4 Step 0.01
    wa = 0
    For y = -4 To 4 Step 0.01
      wa = wa + Sin(j * (x + y)) * lowpass(y, k) / 100
    Next y
    wa2 = wa2 + wa * wa * 0.01
  Next x
  Cells(i, 2 + k) = Log(wa2 / wa3 / normal(k))
  Next k
Next i
End Sub
です。

Lanczosの大きなものほど理想的な減衰率に近づきますが、リンギングが出るので一長一短です。

最後に画素混合によりノイズがどのくらい平滑化されるか調べます。
Sub sn()
For j = 0 To 4
  wa = 0
  wa2 = 0
  For i = -4 To 4 Step 0.01
    wa = wa + lowpass(i, j) / 100
    wa2 = wa2 + lowpass(i, j) ^ 2 / 100
  Next i
  Cells(1, 1 + j) = Sqr(wa2) / wa
Next j
値が小さいほどノイズが減ります。

僅かな差でLanczos1が良く、次がLanczos2です。画素平均法は参照範囲が少ないのでノイズ減少が少ないです。

画像縮小アルゴリズム比較がなされています。

2009-08-11

Bayer配列とFoveon

結論

  • リサイズしない、つまりデジカメの一画素がパソコンディスプレイの一画素に対応するように拡大すればFoveonで写した画像の方がシャープ。
  • しかしパソコンの画面で写真全体を見たり、葉書の大きさにプリントアウトする場合には必ず縮小することになり、リサイズするならばBayerでもFoveonでも似たり寄ったり。
  • リサイズを前提とするならば、リサイズ前に輪郭強調をかけてはいけない。何故ならリサイズするためには高周波成分のカットが必要であり、一方輪郭強調とは高周波成分を増幅することである。カットしきれない高周波成分は画質低下の原因となるので、輪郭強調でわざわざ高周波成分をふやしてはいけない。
FoveonがBayerより綺麗に見える理由は、Bayerで写した写真に対してデジカメの一画素がパソコンディスプレイの一画素に対応するような見方をしてもシャープに見えるように輪郭強調がデフォルトでなされていて、それが写真全体を見るために縮小するときに悪影響を及ぼしているからだと思います。
元となる情報量が大差ないのですから、見え方の違いは光学及びデジタル的なローパスフィルタに依りますし、縮小処理には必ずローパスフィルタが必要になります。ナイキスト周波数が下がるのですから。

本文

  1. フォベオンの画像を800x600に切り抜く。これを元画像とする
  2. 元画像からRチャンネルのみ、Gのみ、Bのみの3枚の画像ファイルを作る。
    1. Rの画像を上に1ピクセルずらす(下に1ピクセル余白ができる)
    2. Bの画像を左に1ピクセルずらす。(右に1ピクセル余白ができる)
  3. Gの71%の縮小をかけ、800x600に拡大する(すこしぼやけた画像になる)。拡大縮小はリニアで。
  4. RとBを50%に縮小をかけ、800x600に拡大する(ぼやけた画像になる)。拡大縮小はリニアで。
    1. Rの画像を下に1ピクセルずらす(元位置に)
    2. Bの画像を右に1ピクセルずらす(元位置に)
  5. RGB3枚の画像をRGBのチャンネルで合成する。これでベイヤーの擬似再現完了。
  6. 最後にフォベオンの擬似再現として、800x600の元画像を、バイキュービックで71%に縮小。
というのを見かけたので試してみました。但し800x600ではなくて元画像そのままの大きさで実行して、このブログ用に1600x1600を切り抜いて800x800に縮小表示しています。クリックすると1600x1600で表示されます。

元画像

擬似ベイヤー

次に平均画素法できっちり2分の1に縮小しました。ブログに表示できる画像サイズの整数倍になるようにトリミングしています。
元画像

擬似ベイヤー

2分の1に縮小してしまうと、元画像との差は少なく、JPEG圧縮による劣化に紛れて分からなくなりました。

実際にBayerのD90ととFoveonのDP2で撮り比べてみました。とは言ってもこのブログは長辺が1600ドットまでですので、DP2付属ソフトで2分の1倍のJPEGに変換しました。この文章の下に表示される画像は半端な比率で縮小されているので、クリックして元の大きさで見比べてください。
まずは加工せず、ブログに合わせて縮小しただけです。

次に少し加工をしました。DP2は付属ソフトで等倍でtiff出力してレンズの倍率色収差を補正しLanczos2で縮小、D90は傾きを補正しました。一般に傾き補正をすると解像度的には良くないですし、DP2で撮った方は傾きが小さいのでDP2は補正していません。

違いが分かりやすい左下、特に木付近を拡大しました。Foveonはそのまま、ベイヤーは縦横2分の1に縮小しました。
最初はFoveon

次にベイヤーをニアレストネイバーで縮小しました。元々高周波成分が少ないので、ローパスフィルターのないニアレストネイバーでも画像は荒れず、寧ろシャープで良いように見えます。

画素平均法とLanczos2で縮小。急激な変化がないのでLanczos2でもリンギングは出ず、輪郭強調としての良い面だけが見えます。