SSブログ

SEM画像用アプリ - その15 [プログラミング]

こないだから作っていたSEM画像のコントラストを自動調整するアプリ。完成。

例によって一見さん用のページと、アプリのダウンロード...

どうでもいいけど、さっきテレビのNHKニュースで見たFacebookのオフィスではパソコンの半分ほどがMacに見えた。うらやましいなあ。

こないだまで作ってきたのからいくつか変更点がある。
  1. ちゃんと日本語リソースを作った
  2. カラー画像に対応した
  3. スーパーインポーズを退避するアルゴリズムからEndsInを使うように変更
まえのスクリーンショットは英語で表示されていた。今回、日本語リソースを作ったので、実行するとちゃんと日本語で表示される。当たり前だ、と言われるかもしれないけど、日本語の文字って大きくて画面を占領しやすい。日本語リソースを持っていない他のアプリとの共存を考えると、なるべくコンパクトになるように言葉を選ばないと、大味でマヌケな感じになる。

それと、ついでにカラー画像もコントラスト調整できるようにした。SEM画像でカラーなんてないけど、SEM画像に限らず、Macで読める一般の画像ファイルのコントラスト調整ができるようになった。また、カラーをモノクロに変換することも副作用的にできる。もちろんそんなことはAdobe Photoshopならイッパツだし、ImageJをはじめとするフリーの画像処理ソフトウェアでも簡単にできる。だから存在意義はそれほど高くはないけど、まあ、ドラッグ&ドロップで簡単にできるのでいいんではないか、と。

コントラスト調整のぐあいを見てみると、こんな調子。ウェブにあった適当な画像(こないだ見たフェルメールを選んだ)。
0202compare.jpg
左上が拾ってきたそのまま、右上がPhotoshop(バージョンは8.0.1。古い。これしか持ってないしそれにこれで十分だし)の「自動レベル調整(オプションはデフォルトのまま)」したもの、下が僕のアプリで調整したもので、その左がEndsInの比率が0%、右が0.3%(白黒とも)のもの。

EndsInが入った方がPhotoshopに近くなるけど、Photoshopはちょっと黒潰れが多すぎるような気もする(オプションで「クリップ」の値は0.1%だけどもっと多いように見える)。モニタのγ値によっては背後の絵がよくわからなくなる。こうなってくると趣味の問題ではあるけど。関係ないけどフェルメールのカーテン越しの窓の外の明るさの表現とかは、もうほんとになんでもない自然さが美しい。

ソースはここ。プログラミング上はvImageのヒストグラムを扱う関数群のサンプルコードとして見ることができる。浮動小数点で割合を指定できるEndsIn調整の関数はvImageのvImageEndsInContrastStretch_Planar8vImageEndsInContrastStretch_ARGB8888のかわりとして使える。それと、Macでは外部ファイルの形式を確認するための非常に簡単な方法であるUTIと、複雑な画像フォーマットを扱うためのNSBitmapImageRepのサンプルコードとしても読める。それほど難しいことはしていないけど、興味のある人は見て欲しい。
nice!(0)  コメント(0)  トラックバック(0) 

nice! 0

コメント 0

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

トラックバック 0

献立02/02献立02/03 ブログトップ

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。