PixInsight

2018年4月 8日 (日)

PixInsightで画像処理を始めよう ~ 第1回 画像処理の威力

1-1. はじめに

皆さん、こんにちは。または、こんばんは。そして、初めましての方は初めまして。
今回から、ユニテックさんのブログの場をお借りして、天体写真の画像処理方法の解説を連載させていただくこととなりました。不定期の連載になるかと思いますが、どうぞよろしくお願いいたします。

さて、このブログをご覧になっているということは、皆さんは雑誌やインターネットで美しい天体写真を見たことがあって、天体写真にそれなりに興味を持っておられるということでしょう。ここ、ユニテックさんのブログや SWATユーザさん達の Photo Galleryにも素晴らしい写真が沢山掲載されています。
あんな写真が自分にも撮れたら素敵ですよね。

でも、望遠鏡やレンズにカメラを取り付けて、ただ撮っただけではあんなに綺麗な写真は撮れません。実は、皆さんがよくご覧になる綺麗な天体写真は、程度の差こそあれ、ほぼすべて画像処理が施されたものなのです。今や天体写真に画像処理は、なくてはならないものと言っても過言ではありません。

 でも、画像処理ってなんだか難しそう。
 それに、どうせ画像処理したって、元の画像と大して変わらないでしょ?

と思っているアナタ。

そんなことありませんよ。
まずは、撮った写真が画像処理でどれほど変わるのか、その変わりっぷりに驚いてください。

最初は、明るくて一番身近な天体、月の拡大写真です。

●月面
01_01_moon_movie_3
図1-1. 月面

処理後の画像の高解像度版は こちら からご覧いただけます。

カメラの撮って出し画像は、ザラザラでなんだかぼやけてしまってますよね。皆さんの中にも、月の写真なら撮ったことがあるという人はいらっしゃるでしょう。その写真を拡大して見てください。この例のように、ザラザラで少しぼやけているはずです。

ザラザラなのはノイズのためです。
そして、ぼやけているのは、ピントが合っていないからでは決してありません。

ぼやけているのは、地球に大気があるからです。
月に限らず、遠くの建物や山の写真を撮ったり望遠鏡で覗いたりすると、遠くにあるものほどぼやけてしまって、はっきりとは見えなくなりますよね。あれと同じです。さらに、上空には強い風が吹いていて、光が揺らいで見えてしまいます。星が瞬いて見えるのはそのためですが、そうした地球の大気の影響によって、どんなにピントを合わせても月の表面はどうしても少しぼやけて写ってしまいます。

ところが、画像処理した方は、滑らかではっきりくっきりとし、表面の微細な構造が見えるようになっています。例えば、処理後の画像には、中央から少し左下に「へ」の字形をした細い筋みたいな地形が見えますね。カメラ撮って出しの写真には、この筋はあまりはっきりとは写っていないのですが、画像処理するとくっきり見えるようになっています。

これは「ヒギヌス谷」と呼ばれる谷で、この谷の幅はだいたい 2~3kmだそうです。単純に 3㎞だと仮定して、この日の地球と月との距離から単純計算すると、東京日本橋から見て、浜松市あたりにいる人の身長が、だいたいこの谷の幅と同じくらいに見えることになります。凄い解像度ですよね。わずか 7cmの望遠鏡でもこのくらいには撮れます。もっと大きな望遠鏡を使えば、もっと解像度を上げることも可能ですが、それでも撮ったばかりの画像はぼやけているので、いずれにしても画像処理が必要となります。

では、続いて次の写真を見てください。

●アンタレス周辺
01_02_antares_movie
図1-2. アンタレス周辺

処理後の画像の高解像度版は こちら から。

これはちょっと極端な例ですが、これに至っては、撮って出し画像と処理後の画像はもはや別物と言いたくなりますね。元が同じだとは、にわかには信じられないくらいに違います。

皆さんの中には、Photoshop か何かで風景写真やポートレート写真をレタッチ(修正・加工)したことがある人もいらっしゃるかもしれませんが、これはもはや「レタッチ」というレベルではありません。初めて見る方は、きっと驚かれることでしょう。

撮って出し画像が全体的にピンク色っぽいのは、天体改造したカメラで撮ったためにカラーバランスが崩れているからなんですが、それを除いても、撮って出し画像は全体的にほぼ一様に明るく写っていて、コントラストが低いですね。

この例に限らず、天体写真は暗い宇宙空間にある淡い天体を撮るものなので、撮ったばかりの写真はどうしてもこの例のように低コントラストに写ってしまうものなのです。

ところが、画像処理すると、漆黒の宇宙に淡い星雲が広がっている様子が高いコントラストで写し出され、色彩も実に鮮やかな画像になっています。

ちなみに、これはさそり座の頭部、1等星のアンタレス周辺の写真です。肝心のアンタレスが写っていない等、構図が悪いのは、本当はこの上下(南北)にもう1パネルずつあって、それらを繋げた作品を撮った時の素材だからです。(上下に3パネルを繋げた写真は こちらから ご覧いただけます。)

この辺りは、全天で最もカラフルで美しい領域として天体写真ファンの間で大人気で、春から初夏にかけてたくさんのファンの標的になります。ただしこれらの星雲は非常に淡いので、初心者がいきなり挑戦するとかなりの確率で撃沈してしまう、難度の高いターゲットではあります。しかし、ここを上手に撮れたら感激すること間違いなしですので、臆せず果敢に挑戦してください。

では、続いてもう一枚。今度は冬の星雲の写真も見ていただきましょう。

●魔女の横顔星雲
01_03_witchhead_movie
図1-3. 魔女の横顔星雲周辺

処理後の画像の高解像度版は こちら から。

これも先ほどと同じように、撮って出し画像とはまるで別物のような写真になっていますね。こんな星雲どこに写っていたんだ、と思いたくなるほどです。

ちなみに、この写真の左下にひときわ明るく写っている星は、オリオン座の一等星のリゲルです。皆さんも一度は見たことがある星じゃないでしょうか。
そして、この写真の下半分に細長く白っぽく写っている星雲を逆さまにしてみると・・・

01_04_witchhead_s_2
図1-4. 毒リンゴをお食べ

悪い魔女の横顔そっくりに見えませんか?
こんな人にリンゴを渡されそうになったら全力でお断りしたいですね(笑)。
この星雲は、このような形をしているところから、その名も「魔女の横顔」(英語では "Witch Head")星雲と言われていて、これまた天体写真ファンに人気の星雲です。こちらの星雲も淡いので、初心者がいきなり写すのは難しいかもしれませんが、こんなものが写せたらこれまた楽しいですよね。

どうですか。これが画像処理の威力です!

これほど劇的に変わるものなら、画像処理をやってみようという気になってきませんか?
画像処理で、あなたの撮った(あるいはこれから撮る)天体写真を劇的に美しく仕上げてみたくなりませんか?

この連載では、そんな皆さんを華麗なる画像処理の世界へご案内いたします。

なお、当然のことながら、天体写真の画像処理をするには、まず天体写真を撮らなければいけませんよね。しかし、天体写真の撮り方とか、4月10日発売のSWAT-310の恒星時目盛環の使い方とか、そういったことはユニテックさんがやさしく解説してくれると思いますので、その辺りのことはこの連載ではさらっと華麗に丸投げするスタイルでやっていくことにしましょう(笑)。

<つづく>

2018年4月23日 (月)

PixInsightで画像処理を始めよう ~ 第2回 PixInsightの導入

2-1. 画像処理にはプログラムが必要

前回は、画像処理をすると天体写真が見違えるほど綺麗になるというお話をしましたが、そもそも画像処理をするにはプログラムが必要です。

世の中には様々なプログラムがありますが、画像処理プログラムと言えば、まず Photoshop が有名ですね。天体写真の画像処理にも Photoshop を使っている人は大勢います。しかし、Photoshop は一般的な写真を修正・加工(レタッチ)するプログラムであって、天体写真専用に作られた画像処理プログラムではないので、これだけで天体写真の画像処理を全部行うことはできず、どうしても他のプログラムの力を借りなければなりません。また、料金は月額制なので、長期間使用するとかなりな高額となります。

天体写真の画像処理専用のフリーソフトもあります。例えば、DeepSkyStacker、AutoStakkert!、Registax などが有名です。ユーザも非常に多く、むしろ天体写真ファンの中でこれらを使ったことが無い人の方が少数派ではないか言えるほどです。しかし、これらのフリーソフトは、ある特定の目的や機能だけに限定した処理プログラムで、これだけですべての処理を行うことはやはりできません。

一方、天体写真専用の総合的な画像処理プログラムもあります。日本では StellaImage(ステライメージ)が有名で、ユーザも多いと思いますが、私が使っているのは、PixInsight (以下、「PI」と略します)というヨーロッパのプログラムです。前回ご覧いただいた写真もすべて1から PI で画像処理したものです。

02_01_pixinsighthp
図2-1. PixInsight ホームページ

PI は、StellaImage に比べて日本ではまだまだユーザ数が少ないのですが、世界的にはむしろ PI を使っている人の方がはるかに多いです。先駆的で秀逸な処理ツールが揃っていて、非常に強力なプログラムと言えます。

この連載では、この PI を使った基礎的な画像処理方法をお教えしたいと思います。

ちなみに、上記ホームページの背景に凄い天体写真が次々と表示されてちょっとビビりますけれども(笑)、つい最近まで大きな天文台の望遠鏡でないと撮れなかったような写真がアマチュアレベルでも撮れるようになりました。めざましい技術の進歩の賜物ですね。

2-2. PixInsight をインストールしよう

PI をダウンロードするには、まずライセンスを入手する必要があります。

正式な商用ライセンス(Commercial License)とトライアルライセンス(Trial License)の2種類がありますが、ここではトライアルライセンスの入手方法をご紹介しましょう。

トライアルライセンスの有効期間は45日間。トライアルとはいえフル機能を使えます。また、他のプログラムの試用版でよくあるような、画像の保存ができないとか、保存した画像に妙な透かしが入るとか、そのような厄介なこともありませんので、まずはこちらで試用してみて、気に入ったら商用ライセンスを購入するというのが良いでしょう。

ちなみに、商用ライセンスの価格は 230ユーロ。130円/ユーロなら、約3万円ですね。決して安価とは言い難い価格ですが、望遠鏡やカメラ、赤道儀といった物理的な機材に比べれば、数分の一から数十分の一程度の価格ですし、一度購入すれば追加料金は不要で、複数台のパソコンにインストールできます。また、将来的なメジャーバージョンアップでない限り、アップデートは無償で受けられます。

(1) ライセンスを入手

まず、pixinsight.com のホームページのメニューバーにある LICENSES から Request Free Trial License をクリックします。
商用ライセンスを入手したければ、Purchase Commercial Licese を選択して、指定された手続きに従って購入してください。

02_02_pixinsighthp_licenses
図2-2. Request Free Trial License

Request Free Trial License を選択すると、次のようなリクエストフォームが表示されますので、これに必要事項を入力し、一番下の Submit ボタンを押します。

02_03_requestform
図2-3. Trial License Request Form

すると、リクエストフォームに入力したメールアドレスにメールが届きます。
1通目は、リクエストを受け付けたという内容のメールで、これはすぐに届くと思います。そして、ライセンスが発行されると2通目のメールが届きます。ただし、申請内容に対して Pleiades Astrophoto社で人の手による簡単な確認が行なわれるようなので、2通目のメールが届くまで数時間程度かかると思います。2通目のメールには、プログラムをダウンロードしてライセンスを有効にする手順等が書かれていますので、確認してください。

(2) プログラムをダウンロード

ライセンス発行を知らせる2通目のメールが届いたら、ホームページのメニューバーの DOWNLOADS から Software Distribution をクリックします。

02_04_pixinsighthp_downloads
図2-4. Software Distribution ページへ

すると、次のようなログインページが表示されます。
Username と Password は、先ほどの2通目のメールに書かれていますので、それを入力してログインします。

02_05_softwaredistribution
図2-5. Software Distribution ログインページ

ログイン後に表示されたページから、お使いの PC の OS に合ったプログラムをダウンロードします。
ダウンロードが終わったら、インストールしてください。

(3) ライセンスを入力

初めて PI を起動すると、以下の情報を入力するよう要求されます。

 - User identifier
 - Activation code

これらも先ほどの2通目のメールに書かれていますので、それを入力します。
入力すると、PI が使えるようになるはずです。

02_06_pixinsight
図2-6. PixInsight 1.8.5

最初はどうやって使うのかわからないと思いますが、よく考えれば、初めて使うプログラムというのはみんなそういうものです。この連載では、初めて使う人でも操作できるように解説するつもりです。

それでは、次回からいよいよ PI で画像処理を始めましょう。

<つづく>

 

2018年5月 7日 (月)

PixInsightで画像処理を始めよう ~ 第3回 花有清香月有陰(1)

【目次】

3-1. 画像復元
3-2. FFTRegistrationで重ね合わせ
3-3. Crop(クロップ)
3-4. 明るさを調整しよう


3-1. きれいなお月さんは、好きですか。

星雲や星団といった一般的な天体写真は大変暗いので、長時間にわたる露光が必要となります。したがって、それなりの機材構成が必要となる等、初心者には少々ハードルが高いものです。それに比べて、月は明るく、ある程度の面積があるので、 比較的初心者でも対象としやすい天体と言えるでしょう。 それに、気候がだんだん暖かくなってくると、夜に月を撮影するのも苦ではなくなってきます。かの蘇軾でなくとも、花有清香月有陰(花に清香有り、月に陰有り)と詠みたくなる季節です。

月は私たちにとって最も身近な天体でもありますし、皆さんの中にも、月の写真なら撮ったことがあるという人は少なくないと思います。ということで、この連載では、まず月の写真を画像処理してみましょう。

上記のとおり、月は明るいので、数十分の1秒から数百分の1秒程度の露出で撮れます。最初に撮って出しのJPEG画像を見てください。

03_01_moon_s
図3-1 月の撮って出し画像(上:全体、下:一部拡大)

撮影日:2018/3/25
撮影地:横浜市
レンズ:BORG71FL、Tele Vue 3x Barlow(合成焦点距離1200mm)
架台:SWAT-200
カメラ:SONY α6000
ISO感度:400
露出:1/100秒

写真上が全体写真で、下がその一部(緑枠部分)を等倍に拡大したものです。(いずれも少し明るくしてあります。)よく写っていると思いますが、拡大部分をよく見ると、ザラザラしているのがわかりますね。これはノイズです。
ノイズにもいろいろと種類がありますが、このザラザラの主たる原因は、一般的に「ランダムノイズ」といわれるノイズによるもので、ISO感度や露出時間等のカメラの設定が同じでも、撮るたびに出方が違います。

こうしたランダムノイズを減らす方法としてよく用いられているのが、何枚も撮影してそれを重ね、画素ごとに平均をとるという方法です。次の図を見てください。

03_02_ave_comb
図3-2. 加算平均概念図

これは、画像のノイズの量を棒グラフであらわしたものです。上のA~Dの4つの画像のノイズはすべて出方がバラバラで、そのばらつきも大きいです。しかし、この4つを重ね合わせて平均をとると、下のグラフのように、ばらつきが小さくなります。ここでは4枚でしたが、10枚、20枚と重ね合わせる枚数が多くなればなるほど、原理的にはばらつきが小さく(ノイズが少なく)なります。

この原理を利用して、ノイズを減らしましょう。そのために、まずは写真をたくさん撮っておいてください。

目次へ戻る この節のトップへ戻る

3-2. FFTRegistrationで重ね合わせ

撮影が終わったら、いよいよ PixInsight で画像処理です。
ところで、一般的に、デジタルカメラの出力形式には JPEG と RAW の2種類があるかと思います。天体写真の画像処理には、RAWデータの方が都合が良いことが多く、月でもそれは同じです。ただ、「初めてだったから JPEGで撮っちゃった(てへっ)」という人も多いでしょうし、JPEGでも処理できないわけではないので、今回は JPEG画像を使うこととします。

さあ、まずはノイズを減らすために、沢山の月の写真を重ね合わせることから始めましょう。しかし、撮った写真を何枚か見比べてみると分かると思いますが、下図のように月が写っている位置が微妙にズレていることがあります。

03_03_slide
図3-3. 月が写っている位置がわずかにズレている

重ね合わせるときには、月がしっかりと重なるように位置を合わせてから重ね合わせなければ意味がありません。月の位置を合わせ、それらを重ね合わせるのによく使われるのが、FFTRegistration というスクリプトです。FFTとは、Fast Fourier Transform(高速フーリエ変換)の略です。大学の工学系の学部で学ばれた方にはお馴染みの言葉だと思いますが、詳しいことはわからなくてもとりあえず処理はできますから、身構えなくても大丈夫ですよ。

月の位置合わせは StarAlignment という別のプロセスを使ってもできるのですが、少々面倒くさいので、ここでは FFTRegistration を使うこととします。メニューバーから、SCRIPT > Utilities > FFTRegistration と辿って起動してください。

03_04_select_fftr_s
図3-4. FFTRegistrationを起動

すると、次のような FFTRegistration の画面が立ち上がります。

03_05_fftr
図3-5. FFTRegistration

Add ボタンを押して、Target Images に月を撮った画像を入力してください。

03_06_fftr_select_images
図3-6. FFTRegistrationへのデータ入力

ただ、位置合わせのためには、どれかの画像を基準としなければなりません。その基準画像を1つ選んで Reference Image に入力してください。右側の Select ボタンから選択できます。基準画像は、なるべくブレが少なくて綺麗に撮れているものを選ぶと良いでしょう。

それから、写真によって月が写っている位置が大きくズレてしまっている場合には、画面下の Registration Options から、Enable large translations を有効にした方が良いでしょう。また、写真によって月が回転してしまっている場合には、Correct for rotation も有効にした方が良いかもしれません。もっとも、SWATのような赤道儀にカメラを載せて、月を追尾しながら撮影していれば、普通は上の2つのオプションは不要かと思います。これらのオプションを付けると、処理に時間がかかるようになるので、要注意です。OKボタンを押して実行すると、しばらくして次のような画像が画面上に出力されます。

03_07_fftred_s
図3-7. FFTRegistration後(上:全体、下:一部拡大)

FTTRegistrationで重ね合わせる前の画像と比較すると、ノイズが減って滑らかになっていることがわかると思います。2倍拡大した次の画像の方がわかりやすいですね。

03_08_fftr_beforeafter
図3-8. FFTRegistration前後の画像比較(2倍拡大)

なお、これと同様の機能を持つプログラムとして、Autostakkert! (AS)というフリーソフトがあります。AS はフリーであるにもかかわらず非常に優れたプログラムでして、品質の悪い画像を捨てて、品質の良いものだけで重ね合わせを行うことができる等、使い勝手が良く、なにより処理速度が速いので、この処理だけであれば AS を使う人が多いと思います。

私もこの処理だけであれば AS を使う派ですが、FFTRegistration も決して悪くはありませんし、複数のプログラムを使ってその間でデータをやり取りするというのは、不便な面もあります。そのときの都合や好みに応じて、使うプログラムを変えて処理するというのも良いでしょう。

目次へ戻る この節のトップへ戻る

3-3. Crop(クロップ)

ところで、この月の画像は背景宇宙の黒い部分が少々広いです。処理したいのはあくまで月であって、背景宇宙は余分なので、これから色んな処理を施す前に、この余分な部分をある程度切り取って(クロップして)おきましょう。

メニューバーから、PROCESS > All Processes > DynamicCrop と辿って、DynamicCropを起動します。

そして月の画像上にマウスポインタを移動させると、マウスポインタが十字になります。その状態で、切り取りたい範囲をマウス操作で選択します。

03_09_dynamiccrop_select
図3-9. DynaimcCropで任意の範囲を選択
 
選択した範囲は、マウス操作で広げたり狭くしたり、あるいは回転させたりすることも可能なので、適宜調整します。

03_10_dynamiccrop_rotate
図3-10. 範囲を回転
 
範囲が決まったら、DynamicCrop の一番下の左から二番目のチェックマークをクリックすると、選択した範囲のとおりにクロップされます。

03_11_dynamiccrop_apply
図3-11. 実行してクロップ
 
クロップ後、ウィンドウ左下の Fit View ボタンを押すと、画像の表示サイズに合わせて(1/4サイズで表示しているのなら 1/4サイズに合わせて)ウィンドウサイズが変わります。

03_12_fitview
図3-12. Fit View でウィンドウサイズを調整
 
Fit View はよく使うので、覚えておくと便利です。

目次へ戻る この節のトップへ戻る

3-4. 明るさを調整しよう

ところで、写真の全体的な明るさは、その写真によって異なります。これから様々な処理を施すことになりますが、その度に明るさが変わることもあります。明るすぎたり暗すぎたりすると、処理の効果がわかりづらくなります。ですから、ここで PI で最も基本的な明るさの調整方法を学習しておきましょう。

メニューバーから PROCESS > All Processes > ScreenTransferFunction と辿って、ScreenTransferFunction(STF)を起動します。

03_12_stf
図3-12. ScreenTransferFunction
 
まず、明るさを調整したい画像をアクティブにして、STFの右下のチェックマークをオンにします。さらに、左上の鎖のマークをオンにします。その状態で、R/G/Bのバーの真ん中にある三角マークを左右に動かしてみてください。鎖マークをオンにしていると、R/G/B/の三角が連動して動きます。

0313_stf
図3-13. STFでの明るさ調整
 
左に動かすと明るくなり、右に動かすと暗くなります。これで、ちょうど良い明るさにしてください。しかし、ここで注意が必要です。STFで明るさを調整しても、それは画面上で(見かけ上)明るさが変わっているだけで、画像の情報自体は変えていません。ですから、暗い画像を STF で明るくしても、それだけの状態で画像ファイルに保存すると、暗い画像のまま保存されてしまいます。いわば、処理を実行する前の Real-Time Preview みたいなものです。

STFで調整した明るさを実際に反映するには、HistogramTransformation(HT)というプロセスを使って、次のような手順で行ないます。

0314_ht
図3-14. HistogramTransformation
 
① STF左下の三角マークを HT の一番下の少し色が違う枠にドラッグ&ドロップ
② HT左下の三角マークを画像にドラッグ&ドロップ
③ STF右下の Reset をクリックして、STFの設定をリセットする

0315_applystf
図3-15. STFで調整した明るさをHTで反映する手順
 
こんな風に明るさを調整するのはなんだか面倒くさいと思うかもしれませんが、慣れるとなんでもなくなってきますし、STF のようなプロセスが必要な理由は後々わかることになりますので、今は我慢してください。なお、STF で調整した結果を反映するのは、画像を保存するときに最後に1回だけすれば良くて、それまでは STF で見かけ上の明るさを調整するだけで構いません。今後、処理を続ける途中で明るさを調整したくなったら、その都度 STF で見かけ上の調整をしてください。
 
ここまででひとまず準備完了といったところです。次回(第4回)からいよいよ画像処理っぽくなってきますよ。乞う、ご期待!

目次へ戻る この節のトップへ戻る

つづく

PixInsightで画像処理を始めよう ~ 第3.5回 【補足】 Histogram と HistogramTransformation

【目次】

3.5-1. ヒストグラム
3.5-2. HistogramTransformation(HT)での変換


3.5-1. ヒストグラム

画像処理をする上で、まず知っておかなければならないものの一つとして、histogram(ヒストグラム)があります。ヒストグラムは「度数分布図」と和訳されることがありますが、その名の通り、その画像の中にどの明るさのピクセルがどのくらいあるか、その分布をグラフにしたものです。

35_01_histogramex
図3.5-1. HistogramTransformationで見たヒストグラムの例
 
上図がそのヒストグラムの例で、R/G/Bの3つの色ごとにグラフとして表示されています。このグラフの横軸がピクセルの明るさを表し、0 から 1 までの値で表現されています。一方、縦軸はその明るさのピクセルの数を表しています。

ヒストグラムは一つの統計情報なので、ヒストグラムを見ても、具体的に何が写っている画像なのかはわかりませんが、これを見れば、どの明るさのピクセルが多い画像なのか(全体としてどのくらいの明るさの画像なのか)、あるいはコントラストが高いのか低いのか等、その画像に対する様々な情報が得られます。

この情報が画像処理においては非常に重要なので、画像を見たら、まずヒストグラムを調べる癖をつけておくと良いでしょう。

目次へ戻る この節のトップへ戻る

3.5-2. HistogramTransformation(HT)での変換

HistogramTransformation の Transformation とは「変換」のことです。HT は、ヒストグラムを参照しながら、画像の各ピクセルの明るさを変換して、画像全体の明るさやコントラストを変えるためのツールです。下図を見てください。

35_02_smh
図3.5-2. Shadows/Midtones/Highlights
 
まず、ヒストグラムを左下から右上に斜めに走っている一本の直線が目に付くと思います。さらによく見ると、ヒストグラムの下に白い三角マークが3つありますよね。左から、シャドウ、ミッドトーン、ハイライトと呼びます。これらの位置を適当に変えてみましょう。

35_03_transcurve
図3.5-3. 変換曲線
 
すると、上図のように、それまで斜めに走っていた直線が曲線になります。この曲線が変換曲線です。変換曲線を見るときには、横軸が変換前のピクセルの明るさ、縦軸が変換後のピクセルの明るさを表していると考えます。

例えば図3.5-3の A の明るさのピクセルであれば、A' の明るさに変換される、ということを意味しているわけです。

シャドウポイントよりも左側にある B の明るさだったピクセルは、変換後に 0 の明るさ(真っ暗)になります。反対に、ハイライトポイントよりも右側にある C の明るさだったピクセルは、変換後に 1 の明るさになることがわかりますね。

シャドウポイントやハイライトポイントを動かして変換することをクリッピング(clipping)とも言います。シャドウクリッピングであれば、それ以下の明るさのピクセルは、全て 0(真っ暗)になりますし、ハイライトクリッピングであれば、それ以上の明るさのピクセルは、全て 1(飽和)になってしまいます。

クリッピングは、ピクセルが持っていた情報を捨てることを意味します。一度捨てられた情報はもう戻ってこないので、慎重にやる必要があります。天体写真の画像処理においては、とくにハイライトクリッピングはほとんどしません。HT を使った明るさ調整は、ミッドトーンを左右に動かすことを基本とし、それに加えて、クリップされるピクセル数があまり多くならない程度にシャドウクリッピングをして行うもの、と覚えておいてください。

目次へ戻る この節のトップへ戻る

<つづく>

2018年5月21日 (月)

PixInsightで画像処理を始めよう ~ 第4回 花有清香月有陰(2)

【目次】

4-1. 画像復元
 (1) Deconvolution
 (2) MultiscaleLinearTransform


4-1. 画像復元

第3回では、FFTRegistration によって沢山の画像を重ね合わせることでノイズを減らし、滑らかな画像を得ることができました。
しかし、図3-7 や図3-8 をよく見ると、確かに滑らかにはなったものの、なんだか少しぼやけていますよね。これは、第1回でも触れたように、主に地球の大気の影響です。地上から分厚い大気の層を通して撮影する以上、どんなにピントを合わせても多少ぼやけて写ってしまうものなのです。でも、元々ははっきりくっきりした像だったはずです。それが、地球の大気によってぼけた像になってしまったのです。地球の大気だけでなく、レンズ等の光学系の収差によっても、ぼやけたり歪んだりすることがあります。
そのように光学系や大気等、様々な影響によって劣化した画像を修正し、元のはっきりくっきりした画像を再現することを「画像復元」と総称したりします。今度は、この少しぼやけた月の写真を画像復元して、はっきりくっきりした画像にしましょう。

(1) Deconvolution

画像復元にはいろいろな方法がありますが、今回ご紹介するのは、Deconvolution というプロセスです。この Deconvolution は、PI を代表する「優れものプロセス」の一つでして、一言でいえば Convolution の逆です。「じゃあ、Convolutionって何だ?」ということになりますが、これを単純に翻訳すると「畳み込み積分」とか「重畳積分」という日本語訳が出てくると思います。どっちにしても頭の上に「?」マークが2万個くらい出てきそうですね。(笑)
Deconvolution の考え方については、第4.5回の補足で少しだけ詳しく解説していますので、興味のある方はそちらを見ていただくとして、ここではそんな数学的な難しいことは置いといて、とりあえず使ってみることにしましょう。

メニューバーから、PROCESS > Deconvolution > Deconvolution と辿って起動してください。

04_01_select_deconvolution
図4-1. Deconvolutionを起動

もちろん、PROCESS > All Processes > Deconvolution でも構いません。
すると、下図のような画面が立ち上がります。

04_02_deconvolution
図4-2. Deconvolution

さっそく Deconvolution を実行してみたいところですが、Deconvolution をいきなり画像全体に適用すると処理に少々時間がかかるので、その前に一部分だけを切り取って、その中だけで、いわば「試し処理」をしてみることにします。

ツールバーの "New Preview Mode" をオンにして、どこでも良いのであまり大きくならない範囲を選択してください。

04_03_select_preview
図4-3. Preview領域を選択

すると、画像のウィンドウの左側の枠に "Preview01" というタブが現れます。そして、それをクリックすると、先ほど選択した preview 領域だけが表示されるようになります。

04_04_preview01
図4-4. Preview領域だけを表示

この領域に対して、Deconvolution の試し処理を施してみます。
Algorithmオプションは、まあどれでも良いんですが、デフォルト通り "Regularized Richardson-Lucy" を選択してみましょう。Richardson-Lucy法というのは、光学設計に詳しい方なら馴染み深いのではないでしょうか。他のオプションも、まずはデフォルトのままで実行してみます。
プロセスの実行は簡単で、プロセス画面の左下にある四角マークを押すか、もしくは下図のように三角マークを処理対象の画像にドラッグ&ドロップするだけです。

04_05_deco_dd
図4-5. Deconvolution実行

これだけでも画像が少しくっきりとしてくると思います。

ここで、Preview画面に対しては、ツールバーの下図の矢印マークを押すことでプロセス実行の Undo/Redo を繰り返し表示することができます。これで、プロセス実行前後の画像の変化を見て、その効果を確認することができるわけです。

04_06_undoredo
図4-6. Undo/Redo Preview

デフォルトパラメータでどの程度の効果があるかがわかったら、次に、StdDevShape の値を少し変更して再度実行してみてください。この2つのパラメータを変えて何度か実行して Undo/Redo を繰り返していると、そのうち2つのパラメータのスイートスポットがわかってくると思います。どこがスイートスポットなのかは、画像によっても違いますし、人それぞれの好みもあるかと思いますが、私は下の画像くらいが良いのではないかなと思います。

04_07_deco_sweetspot
図4-7. Deconvolution実行例

ぼやけていた画像がだいぶくっきりしてきましたね。2つのパラメータのスイートスポットがわかったら、Iteration を 30~50くらいに上げて再度確認し、それで良ければ今度は画像全体のタブに切り替えて、画像全体に対して実行してください。画像の画素数が大きくなればなるほど、また Iterationの回数が多くなればなるほど、処理には時間がかかるようになるので、そのおつもりで。

04_08_deco_doall
図4-8. パラメータが決まったら画像全体に実行

これで、Deconvolution 完了です。

目次へ戻る

(2) MultiscaleLinearTransform
 
Deconvolutionで画像復元したら、今度は画像の輪郭を強調しましょう。輪郭を強調すると、画像がシャープに見えるようになります。

使うプロセスは、MultiscaleLinearTransform(MLT) です。UnsharpMask というプロセスでも似たような効果が得られるのですが、今回は MLT を使ってみます。

04_09_mlt
図4-9. MultiscaleLinearTransform

これも Deconvolution 同様、なんだかパラメータやオプションがいっぱいあって、見ただけで「もうわけわからん!」と言いたくなりますが、この MLT は、画像をシャープにしたりぼかしたり、あるいはノイズを減らしたりと、色々な用途で万能的に使えるプロセスです。おまけに MLT には Real-Time Preview 機能がついていて、いちいち実行しなくてもリアルタイムで効果を確認することができます。
まず、図4-4と同様に月のPreview領域だけを表示するようにし、MLTの左下の丸印のボタンを押して、Real-Time Preview 画面を表示します。
そして、2もしくは3くらいの比較的小さな Layer(レイヤー)で Bias のスライダーを右に動かします。

04_10_mlt_beforeafter
図4-10. Real-Time Preview上での MultiscaleLinearTransform実行例

Bias をプラス方向に動かせば、そのレイヤーが強調されます。
このレイヤーについても補足でもう少し詳しく解説しますが、この処理で月のクレーター等の輪郭が強調されます。人間の目は、物の輪郭が強調されるとシャープになったように見えるから不思議ですね。それはともかく、Real-Time Preview を使えば、パラメータ値を変えるとその都度すぐに効果が確認できるので便利です。Real-Time Preview で Bias値のスイートスポットがわかったら、Deconvolutionのときと同様、月の画像全体に MLT を実行します。なお、さきほども言った通り UnsharpMask でも似たような効果が得られるので、気になる方は UnsharpMask も試してみて、気に入った方のプロセスを選択してください。

では、ここまでの画像処理によって、撮って出し画像がどのように変わってきたのか、繋げて見てみることにしましょう。

04_11_sofar
図4-11. MLTまでの処理結果

どうですか?だいぶ印象が変わって見えるようになったと思います。

今回は、Deconvolution にしろ MLT にしろ、必要最小限のパラメータしか変更していませんが、それでもかなりの効果が見られます。どちらのプロセスもパラメータが沢山ありますので、色々とパラメータを変えて試してみて、自分の好みに合ったパラメータセットを見つけてみて下さい。

目次へ戻る

つづく

PixInsightで画像処理を始めよう ~ 第4.5回 【補足】 Layerとは? Deconvolutionとは?

【目次】

4.5-1. レイヤー
4.5-2. Deconvolution


4.5-1. レイヤー

第4回の Deconvolution や MultiscaleLinearTransform の処理の説明で Layer(レイヤー)という言葉が出てきました。この Layer とは、正確に言えば Wavelet Layer(ウェーブレット・レイヤー)なんですが、そんなこと言っても余計にわかりませんよね。
ちゃんと理解するには、Wavelet解析を知らないといけないのですが、とりあえずそんなもの知らなくても、簡易的に画像を各レイヤーに分解することはできます。

メニューバーから SCRIPT > Image Analysis > ExtractWaveletLayers と辿って ExtractWaveletLayers スクリプトを起動します。

45_1_ewlscript
図4.5-1. ExtractWaveletLayers

Target image に 図4-4 の Preview01 を選んでこのまま OK ボタンを押すと、次のように計6枚の画像が出力されます。

452_layers_all_l
図4.5-2. 分解されたレイヤー画像

ここで、Layer00 という画像がウェーブレット・レイヤーの Layer1 に相当します。以下、Layer01 が Layer2 に、Layer02 が Layer3 に・・・と、それぞれ相当します。
これらのうち、小さなレイヤーの画像を見ると、微細な構造は見えていますが、大きなスケールの構造は消えているのがわかると思います。逆に大きなレイヤーの画像を見ると、微細な構造は見えなくなって、大きなスケールの構造が写るようになっています。一言で言うと、各レイヤーには、月の表面の構造の輪郭が色んなスケールで写っていると言い換えても良いでしょう。

前回の 4-1.(2) MultiscaleLinearTransform の処理では、 MLT の Bias の値をプラス方向に少し動かしましたが、これは、そのレイヤーの比重を大きくして、そのレイヤーを強調するという処理です。図4-10 の例の場合、Layer2 と Layer3 の Bias を大きくしました。このレイヤーには、クレーター等の輪郭がとくにはっきりと写っていますので、それが強調されたというわけです。ちなみに、Layer1 にはより微細な構造が写っているので、これも強調した方が良いんじゃないかと思うかもしれませんが、一般的には、このレイヤーにはピクセル単位のノイズも写っていますので、Layer1 の Biasを大きくすると、そうしたノイズも強調されてしまうということに注意が必要です。
図4-10 の月の画像の場合には、実はそんなにノイズは含まれていなかったので Layer1 を強調しても良かったのですが、通常は、小さなレイヤーを扱う時には常にノイズを意識しなければならないということを覚えておきましょう。

目次へ戻る この節のトップへ戻る

4.5-2. Deconvolution

第4回でも紹介した通り、Deconvolution は、PI を代表する優れものプロセスの1つです。このプロセスの原理と言いますか、基本的な考え方について、ここで極簡単に解説しましょう。1つだけ数式が出てきますので、数式を見ると隣の人の首を絞めたくなるという人は読み飛ばしてください。(笑)

さて、これまで何回か言っている通り、地球上で分厚い大気や何らかの光学系を通して見る像はぼやけています。しかし、本来はシャープな像だったはずです。

図4.5-3 を見てください。

45_3_deco
図4.5-3. Deconvolution の考え方

理想的な点光源像が大気や光学系を通した結果、h(x) で表されるような広がりを持つぼやけた像になるとします。すると、本来 f(x) で表されるはずだった天体の像は、式(1) のような g(x') として観測されることとなります。

この式(1) が convolution で、日本語では畳み込み積分とか重畳積分とか言われるものです。そして、h(x) のことを point spread function(PSF)、日本語では点像分布関数等と言います。
ここで、知りたいのは天体の本来の像である f(x) で、これがよくわからないわけです。しかし一方、g(x') は観測された像なのでよくわかっています。なら、あとは h(x) がわかれば、あるいはこれを何らかの形に仮定すれば、f(x) もわかるでしょう、というのが Deconvolution の発想です。発想自体はそんなに難しくはありませんね。

第4回で調整した Deconvolution のパラメータ StdDev は、この PSF の標準偏差です。例えばこれが 0 だとすると、PSF はδ関数ということになり、本来の理想的な点光源像のままで全くぼやけていないという意味になりますから、Deconvolution をしても変わらないということになります。PI の Deconvolution では、StdDev に 0 は指定できませんが、これを小さくすると、Deconvolution を実行しても元の画像のままに近くなる(ほとんど変わらなくなる)、というのはすぐに理解できると思います。
もう1つのパラメータ Shape は PSF の尖度のことで、デフォルトの 2 が正規分布であることを意味しているようです。尖度というと、0 を正規分布とするのが普通だと思いますが、ここは注意が必要です。

ともかく、パラメータを調整するときには、まず StdDev から調整し、次に Shape のスライダーを動かすという手順で、両パラメータのスイートスポットを追い込むと良いでしょう。なお、画像に星が写っている場合には、その星像を元に PSF を推定する DynamicPSF というプロセスもありますが、ここでは紹介だけに止めておきます。

目次へ戻る この節のトップへ戻る

<つづく>

2018年6月 6日 (水)

PixInsightで画像処理を始めよう ~ 第5回 花有清香月有陰(3)

【目次】

5-1. 色合いを変えてみよう
5-2. コントラストを強調しよう
5-3. 彩度を調整しよう
5-4. RAWデータから処理すると・・・


前回の第4回までで最低限の処理は終わりました。 ここから先は、お好みで、あるいは必要に応じてやる、ということで良いと思います。

5-1. 色合いを変えてみよう

第3回から始めた月の画像処理は、カメラ撮って出しのJPEG画像を元画像としてやってきました。カメラ撮って出しのJPEG画像というのは、概ね人間が目で見た通りの色合いになるように、ある程度カメラの画像エンジンで処理が施されたものです。前回までの写真を見てお解りの通り、月は全体的に黄色っぽく写っていますが、実際に望遠鏡で月を覗くと、やっぱり全体的に黄色っぽく見えるはずです。なので、あえてその色を変える必要もないのですが、黄色一辺倒というのもあまり面白みがありません。そこで、少し色合いを変えてみることにしましょう。

色合いを変えるにも様々な方法がありますが、今回は、人の目に頼らず、機械的に色調整をしてみます。

(1)  バックグラウンドをニュートラルに

色調整をするうえで、まず最初にやらなければいけないのは、背景(バックグラウンド)の色調整です。背景の宇宙はどの色にも偏っていない(ニュートラルである)はずですよね。逆に言うと、背景宇宙の色が、写真全体の色を決めるうえで一つの基準になるというわけです。なので、まずは背景宇宙の色の偏りをなくしましょう。

その準備として、図4-3 と同様の手順で、背景の一部を preview 領域で囲んでください。要は、その領域の色をニュートラルにしようというわけです。

囲む領域は背景であればどこでも構いませんが、月の光は強烈なため、地球の大気によって強く散乱されて、月のすぐ近くはニュートラルな色ではなくなっています。そこで、なるべく月から離れた領域を囲むと良いでしょう。(あまり気にする必要もありませんけどね。)

05_01_bnpreview
図5-1. ここをキャンプ地バックグラウンドとする

バックグラウンドとする領域を preview 領域で囲んだら、メニューバーから PROCESS > ALL Processes > BackgroundNeutralization と辿って BackgroundNeutralization(BN) を起動します。

05_02_bn
図5-2. BackgroundNeutralization

Reference image に先ほど囲んだバックグラウンドの preview 領域を指定して、図4-5 と同じ要領で、左下の三角マークをドラッグ&ドロップして実行します。

05_03_applybn
図5-3. BN実行

このプロセスは、Reference image の範囲のピクセルの平均(正確には中央値)がニュートラルになるように色調整します。大事なのは、バックグラウンドだけをニュートラルに色調整するわけではなく、あくまで画像全体を色調整しているという点です。バックグラウンドがニュートラルになるように、画像全体の色を等しく調整しているということです。

この画像の場合には、元々バックグラウンドがニュートラルに近いので大して変化がありませんが、元々のバックグラウンドの色が大きく偏っている画像の場合には、ここで色合いが大きく変化します。

なお、レタッチソフトを使ってこの操作をやる場合には、R/G/B のヒストグラムを見ながら手動で調整することになると思いますが、手動でやると、正確にニュートラルにすることはまず不可能です。こういった作業はコンピュータにやらせた方が速いし、なにより正確です。

(2)  明るいところを白く

背景の色をニュートラルにしたら、今度は「白」の基準を決めます。

まず、月の表面の中で、特に明るい部分を preview 領域で囲みます。囲む範囲は小さくて構いません。その領域の色を、今度は白だと仮定しようというわけです。

05_04_ccpreview
図5-4. 「ここは白い」と仮定する

もちろん、この領域が厳密に白であるはずなんかないのですが、ここは「色合いを変えてみよう」という話なので、とりあえずこの領域が白であるとした色調整をしてみます。

白の基準(white reference)とする領域を preview 領域で囲んだら、メニューバーからPROCESS > ALL Processes > ColorCalibration と辿って ColorCalibration(CC) を起動します。

05_05_cc
図5-5. ColorCalibration

CCを起動したら、一番上の White Reference の Reference image に 図5-4 で新たに囲んだ preview 領域を指定します。

次に、Structure Detection のチェックを外します。(外さなきゃいけないというわけではないんですけどね。)

そして、下の方にある Background Reference の Reference image に (1) で選んだバックグラウンド領域を再度指定します。

これでとりあえず準備はOKなので、また左下の三角マークをドラッグ&ドロップして実行します。

05_06_applycc
図5-6. CC実行

色が全体的に白っぽくなりましたね。実際に月を目で見た色合いとは少し異なると思いますが、月の表面の微妙な色の違いを表現するには、こちらの方が好都合だったりします。

ちなみに、ここでやった色調整は、レタッチソフトのレベル調整でも似たようなことができると思います。でも、レタッチソフトのレベル調整では、白や背景の基準とする領域は点でしか指定できないのがほとんどでしょう。それに対して、PixInsightは任意の領域の平均を基準とすることができます。

目次へ戻る この節のトップへ戻る

5-2. コントラストを強調しよう

ここまで、画像をシャープにしたり色合いを変えたりしてきましたが、ここで月全体をもう一度よく見ると、月の明るい部分(太陽の光が当たっている方)は、どこも一様に明るく、コントラストが低いと感じます。例えば、危難の海周辺は全体的に明るくなっていて、海がはっきりしません。

そこで、月全体のスケールでコントラストを高くしましょう。コントラストを上げる方法も幾つかありますが、今回は2つのプロセスを紹介します。

(1)  HDRMultiscaleTransform

ツールバーの PROCESS から HDRMultiscaleTransform(HDRMT)を起動します。

05_07_hdrmt
図5-7. HDRMultiscaleTransform

HDRMTは、ベタっと一様に明るくなってしまっている領域のコントラストを、各ウェーブレットレイヤーのスケールで回復させる効果があります。一番上の Number of layers はデフォルトでは "6" になっていますが、これを変えて数パターン実行してみましょう。

05_08_hdrmt
図5-8. HDRMT実行結果

人それぞれ好みもあるかと思いますが、この場合は 7 辺りが良いのではないかと思います。ベタっと明るかった危難の海周辺のコントラストが高くなり、海とそうでない部分がはっきりと区別できるようになりました。

(2)  LocalHistogramEqualization

2つ目に紹介するプロセスは、LocalHistogramEqualization(LHE)です。

05_09_lhe
図5-9. LocalHistogramEqualization

LHEは、contrast limited adaptive histogram equalization というアルゴリズムによって、所謂ローカルコントラストを上げるプロセスです。

第4回で登場した MultiscaleLinearTransform と同様、LHEにも Real-Time Preview 機能があるので、左下の白丸ボタンを押して Real-Time Preview 画面を見ながらパラメータを調整していきます。パラメータの数は少ないですし、決まった手順等はないのですが、以下のような手順で操作するのがやり易いかと思います。

  1. Contrast Limit を少し上げる (2. の効果が見やすくなる)
  2. Kernel Radius を調整する
  3. Amount (1. 2. で調整した画像と元の画像とのブレンド比) を調整する

05_10_rtp_lhe
図5-10. Real-Time Preview で見た LHE の効果

調整が終わったら、Real-Time Preview を閉じ、左下の三角マークをドラッグ&ドロップして適用します。

目次へ戻る この節のトップへ戻る

5-3. 彩度を調整しよう

画像の色が全体的に薄い場合には、CurvesTransformation(CT)を使って彩度を上げることができます。

05_11_ct
図5-11. CurvesTransformation

これは、レタッチソフト等での「トーンカーブ」に相当する変換ツールです。

3.5-2章で HistogramTransformation(HT)の説明をしましたが、あれと似ています。ただ、HTは Shadow/Midtone/Highlight を変えることで変換曲線を調整したのに対し、CT は変換曲線の形を直接変えることができます。

05_12_ct_ex
図5-12. CTでの変換曲線の例

さらに、このCTは、画像の明るさを変換するだけでなく、色の色相や彩度等も変換することができます。

CTの画面の一番右の下から4つ目の "S"(Saturation の S) をオンにすると、彩度を調整するモードになります。その状態で曲線を左上の方に反らせて実行すると、図5-13 のようになります。

05_13_applyct
図5-13. CT実行例

図5-13 のサイズだとややわかりづらいかもしれませんが、月表面の地質による色の違いがはっきりとわかるようになります。

ちなみに、図5-13で突然月の向きが変わっていますが、メニューバーの IMAGE > Geometry から画像の向きを変えることができます。

05_14_geometry
図5-14. 画像の向きを変える

目次へ戻る この節のトップへ戻る

5-4. RAWデータから処理すると・・・

ここまでは、カメラ撮って出しのJPEG画像を使って処理をしてきましたが、JPEG画像は RAWデータをカラー画像化(debayer)して、色合わせをして、さらに適度に明るくしたものです。したがって、RAWデータから処理する場合には、これらの処理を加える必要があります。具体的には、だいたい以下の通りの手順となります。 

  1. カラー画像化(debayer)
  2. 位置合わせ&重ね合わせ(FFTRegistration)
  3. 色合わせ(BackgroundNeutralization, ColorCalibration)
  4. 画像復元(Deconvolution)
  5. 明るくする(HistogramTransformation等)

色合わせは、重ね合わせ直後にやるのが望ましいです。しかし、そのままだと非常に暗いはずですので、STFで見かけ上の明るさを明るくしてから処理をしてください。実際に明るくするのは最後で結構です。

RAWデータから処理した例がこちらです。

05_15_raw
図5-15. RAWデータからの処理例 (クリックすると高解像度版が見られます)

同じように処理したはずなんですが、JPEG画像から処理したものとはまた違った色合いになっています。月表面の地質による色の違いは、こちらの方がわかりやすいかもしれませんね。

さて、第3回から計3回にわたって、月の写真を使った画像処理方法をご紹介してきました。 もちろん、他にも色々な処理方法がありますので、研究してみて下さい。

次回(第6回)からは、星野写真の画像処理方法を解説したいと思います。

目次へ戻る この節のトップへ戻る

つづく

PixInsightで画像処理を始めよう ~ 第5.5回 【補足】 Image Processing Tips

【目次】

5.5-1. Image Processing Tips のご紹介
5.5-2. BackgroundNeutralization(BN)
5.5-3. LocalHistogramEqualization(LHE)


5.5-1. Image Processing Tips のご紹介

この連載をご覧の方の中には既にご存知の方もいらっしゃるかも知れませんが、私は Google+ に Image Processing Tips というコレクションを作っています。

Ipts_title

図5.5-1. Image Processing Tips

(上図をクリックするとページを開きます。)

これは、天体写真の画像処理方法の例を Tips 形式でまとめたコレクションでして、その中に 「PixInsightでの画像処理」 と銘打ったシリーズ記事を書いています。初期のころは大した内容は書いていませんでしたが、だんだんとプロセスのアルゴリズムを絡めた詳細な解説を載せるようになってきました。今ではもう、すっかり天体写真の画像処理経験者向けの内容になっています。

この「画像処理入門」で紹介するプロセスの幾つかは、その中でやや詳細に解説しています。より詳しい解説に興味をお持ちの方は、こちらをご覧ください。

この入門の第5回に出てきたプロセスのうち、次の2つのプロセスについては Image Processing Tips でも紹介しています。

目次へ戻る この節のトップへ戻る

5.5-2. BackgroundNeutralization(BN)

Ipts_bn_title
図5.5-2. PixInsightでの画像処理(その14) - BackgroundNeutralization
 
(上図をクリックするとページを開きます。)

BNは、任意の指定領域のピクセルの中央値が R/G/B で同じになる、つまりニュートラルになるように画像全体の色を調整するプロセスです。指定領域の中に星や星雲が含まれてしまっている場合には、「この値以上明るいピクセルはバックグラウンドではないから除外しなさい」という閾値を設定することもできます。

通常、RAWデータを debayer(カラー画像化)しただけの画像は、色合わせが全くできていません。したがって、何らかの基準に基づいて色合わせをしないといけないのですが、その基準の一つが「バックグラウンドはニュートラルなはず」というものです。

このプロセスによってバックグラウンドをニュートラルにするだけで、画像が見違えるほど自然な色合いになることがあります。天体写真の画像処理においては、一度はこのプロセスを使うことになるはずですので、皆さんもお手持ちの色んな画像で試してみてください。

なお、このプロセスは、画像がリニアな状態のうちにやっておくべきプロセスです。つまり、かなり早いうちにやっておく処理です。また、一度バックグラウンドをニュートラルにしたら、以降の処理でこれを崩すような処理をするべきではありません。

目次へ戻る この節のトップへ戻る

5.5-3. LocalHistogramEqualization(LHE)

Ipts_lhe_title
図5.5-3. PixInsightでの画像処理(その16) - How to enhance constrast

(上図をクリックするとページを開きます。)

LHEは、いわゆる「ローカルコントラスト」を上げるためのプロセスです。「ローカルコントラスト」という言葉は、天体写真の画像処理で時々耳にする言葉ではありますが、その意味をきちんと理解して話をしている人は果たしてどれほどいるでしょうか。「ローカル」も「コントラスト」もそれなりに意味が解るのに、その2つが合わさると意味がよく解らなくなる。そんな言葉の好例かもしれませんね。

一般的に、同じ画像であれば、ヒストグラムの山がなだらかであるほど(山の幅が広いほど)コントラストが高い画像になります。であれば、いっその事ヒストグラムを真っ平にしてしまおう、というのが Histogram Equalization(HE)という処理で、それを発展させた Contrast Limited Adaptive Histogram Equalization(CLAHE)という処理が LHE のベースとなっています。任意のピクセルを中心とした局所的な領域でヒストグラムをとって、その領域で HE を行おう、というのが CLAHE の根本的な発想です。世の中にある、ローカルコントラストを操作するツールは、大抵この CLAHE の派生形でしょう。

それはともかく、LHE は BN と同様にパラメータの種類が比較的少ないので、いろいろと試して自分なりの使い方を模索してみてください。ただし、2点ほど注意点があります。まず、Kernel Radius を大きくすればするほど処理に時間がかかるようになります。もっとも、大抵は Real-Time Preview を見ながらやりますし、最近はハイスペックなパソコンも多くなってきましたから、あまり問題にはならないかもしれません。

2つ目は、この処理を施すとノイズが一気に目立つようになるということです。あまりノイズが目立つようなら、後でノイズリダクションも実行すると良いでしょう。

目次へ戻る この節のトップへ戻る

<つづく>

2018年6月20日 (水)

PixInsightで画像処理を始めよう ~ 第6回 嗚呼、星はいい(1) RAWデータ

【目次】

6-1. RAWデータと撮って出し画像
6-2. 最初にすべき補正処理
6-3. Pre processing (前処理)とは


「星を見ておいでですか、閣下」
「ああ、星はいい」

とは、どこぞの銀河帝国で常勝と称された天才の美青年と、その赤髪の腹心との会話だったかと記憶していますが、やはり星は見ているだけでもいいものです。それを美しい写真に残せたらもっと素敵ですよね。

ということで、第3回から第5回まで計3回にわたって月の写真の画像処理について解説してきましたので、次は星野写真の画像処理について解説しましょう。

月面写真編ではカメラ撮って出しのJPEG画像を使って説明しましたが、今度はRAWデータを使います。いきなり処理を始めても良いのですが、その前に、RAWデータを扱うのであれば知っておいていただきたい予備知識が幾つかありますので、今回はその予備知識について解説します。具体的な処理テクニックの話じゃないのでつまらないかもしれませんが、少しの間辛抱してください。

6-1. RAWデータと撮って出し画像

RAWデータと撮って出し画像に関して、画像処理初心者は(一部経験者でも)様々な誤解を抱いているケースが多いのではないかと思います。そこで、まずはその誤解を解くために、撮って出し画像とは何か、RAWデータは撮って出し画像と何が違うのか、について簡単に解説することとしましょう。

まず、RAWデータは、カメラのイメージセンサの各画素が受けた光の量、言い換えれば輝度の情報しか持っていません。したがって、これを単純に画像化すると、図6-1 のようなモノクロ画像になります。

06_01_rawimage
図6-1. RAW画像例

モノクロ画像であるとともに、非常に暗いことに気づきますね。そうなんです。RAWデータって、実は凄く暗いんです。右下にヒストグラムを表示していますが、山が左の方に寄っていますね。

(注) PixInsight で RAWデータを "Pure Raw" 表示すると、実際にはもっと暗く表示されます。 これは、PI の画像表示が 16bit表示なのに対し、RAWデータが 14bitであることに起因します。 つまり、1/4倍に逆ストレッチされているような形になっているのです。 したがって、RAWデータそのものの明るさを再現するには、PI で開いた直後の RAWデータを4倍に線型ストレッチしないといけません。 図6-1は、4倍に線型ストレッチした後の画像です。これが RAWデータの明るさです。

この画像の一部を拡大すると次のようになっていまして、とりあえず何かが写っていることくらいは分かると思います。

06_02_raw_l
図6-2. RAW画像の拡大図(12倍)

何やら格子状に見えていると思いますが、これは12倍に拡大したものでして、この格子1つ1つが1つのピクセルに相当します。これらの画像を見て何が写っているのかピンと来た人は、たぶん横浜の方でしょう(笑)。

さて、撮って出し画像とは、こうした RAWデータに対して主に以下の処理を施した画像のことです。(本当はノイズ処理等も行われますが、ここでは省きます。)

  1. Debayer(De-mosaic)
  2. 色調整(色調補正)
  3. 明るさ調整

順に見ていきましょう。

(1)  Debayer (De-mosaic)

一般的なデジタルカメラはイメージセンサの前面に 図6-3 のような特殊なカラーフィルターを置き、各画素が R/G/B のいずれかの色のフィルターを通った光だけを受けるようにしてあります。

06_03_bayer_layout
図6-3. カラーフィルターのイメージ図
(あまりじっと見ていると目がチカチカしてきますよ。)

つまり、図6-2 で格子状に見えていた各ピクセルは、それぞれ R/G/B いずれかの色に対応していて、そのフィルターを通った光の輝度情報のみを持っているわけです。こうして撮影されたRAWデータから R/G/B それぞれの画像を生成し、カラー画像化する処理のことを debayer もしくは de-mosaic と言います。詳細はここでは割愛しますが、この辺りのことはインターネット上の様々なサイトで解説されていますので、興味のある方はそちらをご参照ください。図6-1 の RAWデータを debayer した画像が次の 図6-4 です。

06_04_raw_debayer
図6-4. RAWデータ+debayer

(2)  色調整(色調補正)

相変わらず暗いままですが、debayer することでカラー画像にはなりました。しかし、これを見ると、暗いだけではなく、色調(色合い)がおかしいことに気が付きますね。人間が目で見た通りの色合いにはなっていません。そこで次に、debayer で生成された R画像と G画像と B画像の「配合」を調整することによって色合いを調整します。このときに参照されるのが、カメラで撮影するときに設定されていたホワイトバランスです。

ホワイトバランスは、「太陽光」とか「日陰」とか「電球(白熱球)」とかいろいろな値に設定できると思いますが、これらの設定それぞれで3色の画像の配合の仕方が違っています。「太陽光」ならこの配合、「電球」なら別の配合、という具合に。だからホワイトバランスを変えると違う色合いになるわけですね。この配合の仕方はカメラメーカによって予め決められています。図6-4 を「太陽光」のホワイトバランスで色調整するように模擬したものが、次の 図6-5 です。

06_05_raw_debayer_cc
図6-5. RAWデータ+debayer+色調整

(3)  明るさ調整

色合いを調整して、なんとなく自然な色合いになってきました。しかし、これだと依然として暗いままです。そこで、この画像を次のように明るくします。

06_06_raw_debayer_cc_s
図6-6. RAWデータ+debayer+色調整+明るさ調整

これでやっと普通の写真らしくなりましたね。このように、画像を明るくすることを stretch(ストレッチ)と呼ぶことがあります。ヒストグラムを引き延ばすような処理だからそう呼ばれるのでしょう。また、ここまでやってきたような処理をまとめて「現像」と呼びます。フィルム写真の「現像」に倣った呼び方ですね。そして、カメラの画像エンジンでこのように現像された画像が、撮って出し画像というわけです。通常、JPEG形式で保存されることが多いので、「JPEG撮って出し」と言われたりもしますね。

ここで、図6-5 と図6-6 を比較すると、随分と強くストレッチしていることがわかりますね。「わざわざこんなに強くストレッチしなければならないほどに元の画像が暗いのなら、もうちょっと露出時間を長くすれば良いんじゃないの?」と思う人もいるかもしれません。しかし、デジタルカメラが登場するまでは、カメラと言えばフィルムカメラでした。そのフィルムカメラでは、「この明るさの被写体ならこの絞りとこの露出時間でちょうど良いくらいに写った」という経験があったわけで、デジタルカメラでもそれを継承しなければなりません。ところが実際にデジタルカメラでその設定で撮ってみると暗くて仕方がない。だから強くストレッチしている。そういうことなんだと思います。

デジタルカメラで撮影すると、すぐに背面モニタにこの画像が表示されるので、RAWデータもこの撮って出し画像のような色合いと明るさに最初から記録されているのだ、と誤解している人が多いのではないかと思いますが、ここまで見てきたように、実はそうではありません。RAWデータを単純にカラー画像化しただけでは、色調は滅茶苦茶ですし、しかも非常に暗いのです。それをカメラの画像エンジンが瞬時に現像処理して背面モニタに表示しているのです。その撮って出し画像を見て「あ、飽和しちゃった」と思っても、RAWデータそのものは実はまだまだ露出アンダーな状態にあることがほとんどなのです。

レタッチソフトで RAWデータを開いても、これとほぼ同じ画像がポンと表示されますよね。レタッチソフトも、最初に RAWデータを開くときに現像処理をして、現像後の画像をユーザに表示するわけです。でも、レタッチソフトはそんな処理をしているなんて逐一言ったりしない(というより「言う必要が無い」)ので、ユーザはそれに気づかないだけなのです。レタッチソフトでのレタッチ(加工)とは、こうした現像処理が行われた画像を基準として、それに対して追加で行う処理のことです。風景写真や人物写真といった一般的な写真を加工する場合にはそれで十分なのですが、天体写真の場合にはもっと深いレベルから加工する必要があります。そして、そのためにはやはり RAWデータが必要なのです。ちなみに、レタッチソフトで開いた直後の画像は、カメラの撮って出し画像とは色合いも明るさもほんの僅かに違っていると思います。それは、上記の処理(例えば色調整での3色の配合の仕方)がカメラの画像エンジンとレタッチソフトとで僅かに異なるからです。

それともう一つ。ホワイトバランスは撮影時に設定するものではありますが、実は現像時に使われる情報なので、撮影時にどんなホワイトバランスに設定していても、RAWデータそのものは変わりません。したがって、RAWデータを使って画像処理し、色調整を自分でするのなら、撮影時のホワイトバランスの設定に意味はありません。

目次へ戻る この節のトップへ戻る

6-2. 最初にすべき補正処理

天体写真が、一般的な風景写真や人物写真と異なる点(特徴)は何でしょうか。風景写真や人物写真では、カメラから被写体までの距離が様々で、ピントはそれに合わせて変えなければいけないのに対し、天体写真の被写体は常に無限遠にある、ということも特徴の一つですね。それに加えて、最も大きな特徴といえば、何といっても「被写体が暗い」ということでしょう。月や惑星くらいならまだ明るいのですが、星雲や星団といった所謂「星野写真」となると、被写体が非常に暗いので露光に長い時間をかけないと写りません。しかも、写ったところでコントラストが非常に低く、明るさのメリハリがあまりありません。天体写真はこのように暗く低コントラストな写真なので、画像処理して最終的には明るく高コントラストな写真に仕上げなければなりません。しかし、暗く低コントラストな写真を明るく高コントラストにするためには、幾つかの困難を解決する必要があります。

(1)  ノイズ

露光時間が長くなると、困った問題が発生します。それは、ノイズです。ノイズのある写真を明るく高コントラストな写真に処理しようとすると、ノイズまで強調されてしまいます。もちろん、ノイズが目立ったって天体写真には違いないのですが、ノイズが目立つと汚らしく見えてしまいますので、やはりノイズは除去するか、あるいは可能な限り減らした方が良いでしょう。

ノイズにもいろいろな種類があって、これらを分類するには、発生原因で分類する方法とノイズの出現形態で分類する方法があるかと思います。後者で分類するのであれば、主要なノイズとして以下の2つが挙げられます。

  • ランダムノイズ(Random Noise)
    • ランダムノイズという言葉は、月面写真編(第3回)でも出てきましたね。
      ランダムノイズは、全く同じ場所で、カメラの諸設定を全く同じにして撮影しても、毎回異なる位置の画素に不規則に発生するのでランダムノイズと呼ばれます。 センサに光が当たっていなくても素子自体の熱等によって勝手に電流(暗電流)が流れることに起因して現れたり、光が微弱なために計測に揺らぎが発生すること(ショットノイズ/フォトンノイズ)等に起因して現れたりします。 他にも、信号読み出し回路から混入されるランダムノイズもあります。

      発生原因にもよりますが、露光時間が長くなるほど振幅が大きくなるランダムノイズがあるので厄介です。このランダムノイズを画像処理によって減らすには、第3回でも述べたように、沢山の写真を重ね合わせる必要があります。何枚重ね合わせてもランダムノイズを完全に0にすることはできませんが、重ね合わせる枚数が多いほどノイズの振幅を小さくすることができます。

      ただし、複数の画像を重ね合わせる際には、一つ注意が必要です。
      月面写真編でも、月の位置を合わせてから重ね合わせましたよね。あれと同じように、星野写真でも各画像に写っている星の位置を合わせてから重ね合わせる必要があることを覚えておいてください。

  • 固定パターンノイズ(Fixed Pattern Noise)
    • 特定の画素が不自然に明るかったり暗かったりすることで現れるノイズです。例えば下図のようなものです。

      06_07_hotpixel
      図6-7. ホットピクセル

      中央やや右下に1ピクセルだけ非常に明るいピクセルがありますね。周囲に写っている星像と比べると明らかに不自然です。これはどの写真にも常に同じ位置に現れます。こうした固定パターンノイズを特にホットピクセルと呼びます。固定パターンノイズにも発生原因は複数あり、振幅が露光時間に比例する固定パターンノイズもあれば、振幅が露光時間には比例しない固定パターンノイズもあります。しかし、いずれにしても、このノイズは発生する画素の位置が特定できるので、パターンがわかってしまえば画像処理で比較的容易に修正できるノイズと言えます。

      ただ、例えばホットピクセルを含む RAWデータをそのまま現像すると、図6-8 のように、ホットピクセルだけでなくその周囲のピクセルまで滲んだように影響が及んでしまいます。

      06_08_hotpixel
      図6-8. ホットピクセルを現像すると・・・

      これは、debayer時に周辺ピクセルから足りない色情報を集めることでそのピクセルの色情報を補完しているからです。したがって、固定パターンノイズの修正処理は、現像後の画像にではなく、現像前の RAWデータに対して行う必要があります。

(2)  周辺減光

こうしたノイズの他にも困った問題(できれば補正したいもの)があります。光学系(レンズや望遠鏡)の特性に起因する周辺減光がそれです。

06_09_vignetting
図6-9. 周辺減光(少し強調してあります)

写真の中央付近に比べて周辺部は光量が少なくなるため、どうしても暗く写ってしまいます。風景写真や人物写真等では、中央付近のメインの被写体以外はピントが合わずにボケて写っていることが多く、こうした周辺減光は一つの味わいとされることがありますが、天体写真では写野内に写っている天体はすべて被写体であり、ピントは写野全面で同じように合っているはずなので、周辺部でも中央付近と同じ明るさで写っていないと見苦しく感じられてしまうことが多いです。この周辺減光も補正したいものの一つです。

(3)  バイアス

ノイズと周辺減光の他にもう一つ、これは困難というほどのものではないのですが、取り除いておきたいものがあります。

カメラのセンサーに光を当てずに、露出 0 秒で撮影することができたとしたら、それには何が写るでしょうか。現実的には露出 0 秒で撮影することはできないので、そのカメラの最短露出時間で撮影したものが、次の図6-10 です。

06_10_bias
図6-10. バイアス(EOS 6D)

光を当てず、最短露出時間で撮影しても、実は完全に真っ黒な画像にはなりません。これを bias(バイアス) と言います。バイアスは「読み出しノイズ(readout noise)」と言われることもあり、その名の通り、実はこれもノイズの一種なのですが、後の説明のためにここではあえて別出しにします。

デジタルカメラでは、たとえ露出0秒でも常にこのバイアスが「写り」ます。すべての写真は、このバイアスの上に光の情報が記録されたものです。つまり、デジタルカメラで写した写真はすべて、常に下駄を履いた状態になっているのです。本当の伸長を測るには、その下駄を脱いでもらわないといけません。この余分な下駄も除去しましょう。

目次へ戻る この節のトップへ戻る

6-3. Pre processing (前処理)とは

ということで、星野写真を画像処理するのであれば、まず最初に主に以下の補正を目的とした処理を行います。

 ・ ランダムノイズの低減
 ・ 固定パターンノイズの除去
 ・ 周辺減光の補正
 ・ バイアスの除去

これらの補正を施す処理のことを、まとめて pre processing あるいは「前処理(まえしょり)」と呼びます。一般的な画像処理の世界でも、何らかの目的で画像処理を行う前に、ノイズを取り除くこと、および次の工程の処理の準備をすることを目的として行われる処理のことを前処理と言うことがありますから、それと同じです。

これらの補正処理は、どんな天体を写した写真であっても共通の方法と手順で処理することができます。つまり、人間がやる必要はなく、クリック一発でパソコンに処理させることができるということです。パソコンは元々そういうこと(決められたことを決められた手順でやること)が得意ですから、人間様がやるよりよっぽど手早くきれいに処理してくれます。

さらに、これらの補正処理と同様、debayer も決まり切った処理なので、debayer も加えて前処理と言います。PixInsight には、この前処理を自動的に実行してくれるプログラムが備わっていますので、次回は PI での前処理のやり方を説明しましょう。

目次へ戻る この節のトップへ戻る

つづく

2018年7月 4日 (水)

PixInsightで画像処理を始めよう ~ 第7回 嗚呼、星はいい(2) 前処理

【目次】

7-1. 千億の星の在り処
7-2. Pre processing の準備
7-3. Pre processing の手順概要
7-4. Pre processing 実行
7-5. できた画像を見てみよう


7-1. 千億の星の在り処

今回からいよいよ星野写真の画像処理を始めますが、その素材はこの画像にします。

07_00_lightjpeg
図7-1. 素材画像(JPEG撮って出し)

[撮影データ]
 カメラ:CANON EOS kiss X5(改造)
 レンズ:CANON EF40mm F2.8 STM
 絞り:F3.5
 ISO感度:1600
 露出時間:240秒
 赤道儀:SWAT-200(ノータッチガイド)

撮影カメラは、かつてAPS-Cサイズのエントリーモデルとしてロングセラーを誇った機種なので、お持ちの方も多いのではないでしょうか。レンズは、小さい・軽い・安いと三拍子揃った「パンケーキレンズ」です。軽いので、散歩のお供に持ち歩くのにも最適ですね。この組み合わせを、自由雲台を介して SWAT-200 に載せ、ノータッチで追尾させただけという、大変お気軽な方法で撮影したものです。しかも、三脚まで含めて総重量はわずか 5kg 。別段、特別な機材もソフトも必要ありません。一千億の星があると言われる天の川銀河の中心部は夜空の中で一番明るい対象なので構図も確認しやすく、ピントや露出時間等の設定を間違えなければ(まあ、それが難しいんですけど)、初心者がいきなり撮れてもおかしくないかもしれませんね。しかし、それでもJPEG撮って出しだと、このように色も薄く低コントラストにしか写りません。これを、見違えるような画像に仕上げていきましょう。

目次へ戻る この節のトップへ戻る

7-2. Pre processing の準備

前回、天体写真を明るく高コントラストな画像に仕上げる前に、pre processing(前処理)として主に以下のことを目的とした処理をしましょう、というお話をしました。

 ① ランダムノイズの低減
 ② 固定パターンノイズの除去
 ③ 周辺減光の補正
 ④ バイアスの除去
 ⑤ debayer

このうち、①~④の処理を行うには、必要な写真が幾つかあります。まずは、その説明をしておきましょう。念のため言っておきますが、以下の写真はすべて RAWデータとして撮影してください。

(1) Light Frame(ライトフレーム)

天体を撮影した写真のことです。さすがにこれを撮り忘れることは無いでしょう(笑)。

07_02_lightframe
図7-2. ライトフレーム(ストレッチ有)

このライトフレームに対して①~⑤を目的とした処理を施すことを前処理と呼びます。このうち、ランダムノイズを減らすため(目的①のため)には、ライトフレームをたくさん重ね合わせる必要がありますので、なるべく沢山撮影しておきましょう。今回は、27枚のライトフレームを使用します。
なお、図7-2 はストレッチして適度に明るくしてあります。以下、とくに断りがない限り、適度にストレッチした画像を掲載します。

(2) Calibration Frame(キャリブレーションフレーム)

ライトフレームに対して、とくに②~④の処理を施すために必要な写真がライトフレームとは別に3種類あります。これらをまとめてキャリブレーションフレームと呼びます。面倒ではありますが、これらも撮影しておいてください。

  • Bias Frame(バイアスフレーム)
    • 第6回でも触れましたが、カメラのセンサーに光を当てずに、理想的には露出0秒で撮影した写真です。現実的には露出0秒で撮影することはできないので、そのカメラの最短露出時間で撮影します。光を当てず、最短露出時間で撮影しても、完全に真っ黒な画像にはなりません。これは余分な情報なので、ライトフレームからこれを差し引くわけですね。これが、目的④です。

      ただし、バイアスフレームにもランダムノイズが含まれるので、まずは沢山のバイアスフレームを重ね合わせて平均化することでランダムノイズを減らさないといけません。最短露出時間で撮れば良いので、短時間で沢山のバイアスフレームを撮影することができますね。ちなみに、私は100枚程度のバイアスフレームを使うことが多いです。沢山のバイアスフレームを平均化したフレームを master bias(マスターバイアス) と呼びます。

      07_02_masterbias
      図7-3. マスターバイアス(EOS kiss X5)

  • Dark Frame(ダークフレーム)
    • カメラのセンサーに光を当てずに、ライトフレームと同じ露出時間をかけて撮影した写真です。
      光を当ててはいませんが、これにはライトフレームと同じ固定パターンノイズが「写って」いるはずですので、これを使ってライトフレームに含まれる固定パターンノイズを除去(目的②)します。ただし、ダークフレームにもランダムノイズは含まれるので、ダークフレームも沢山撮って重ね合わせなければなりません。沢山のダークフレームを平均化したフレームを master dark(マスターダーク) と呼びます。

      07_03_masterdark
      図7-4. マスターダーク

      上の画像はマスターバイアスと同じ強さのストレッチをすることでノイズを強調した画像ですが、マスターバイアスに比べてかなりザラザラしていますね。このマスターダークからマスターバイアスを取り除けば、原理的には固定パターンノイズだけを取り出すことができます。その固定パターンノイズをライトフレームから引き算すれば、目的②が果たせます。これを「ダーク減算」と呼びます。(単純にダークフレームを引くことをダーク減算と呼ぶこともあります。)

      しかし、図7-4 のザラザラのほとんどは、実はランダムノイズの残りであることが多いです。ランダムノイズは、引き算すると逆に増えてしまうので、沢山のダークフレームを撮ってランダムノイズを可能な限り減らさないといけないのですが、ダークフレームはライトフレームと同じ露出時間をかけなければならないので、それを沢山撮るとなると大変な時間と労力が必要となります。しかも、最近のデジタルカメラでは固定パターンノイズはあまり目立たなくなってきており、とくに目立つものは他の方法で除去することもできるので、ダークフレームを使っても使わなくても最終画像における効果が変わらないことが多いです。したがって、撮るのに時間がかかるばかりか、苦労して撮ってもそれに見合う効果がないのなら最初から撮影しない(使用しない)、という選択をする人も増えてきています。

  • Flat Frame(フラットフレーム)
    • 光学系(望遠鏡やレンズ)による周辺減光や、センサ前に付いたごみの影による減光の様子だけを捉えた写真です。
      光学系に入ってくる光がムラのない一様な光となるように、通常、白色半透明なアクリル板やトレーシングペーパー、半透明なビニール袋等で対物レンズを覆い、ピント位置や絞り等の光学系に関する条件はすべてライトフレーム撮影時と同じ条件にして撮影します。

      そして、これにもランダムノイズが含まれていますので、沢山撮影して重ね合わせる必要があります。私はこれもまた100枚程度撮影することが多いです。

      さらに、バイアスと固定パターンノイズも含まれていますので、マスターバイアスとマスターダークを使ってこれを取り除きます。ただし、ダークフレームとフラットフレームとでは露出時間が異なることが多いので、フラットフレームに含まれる固定パターンノイズを取り除くには、露出時間分の補正をしてから取り除きます。

      このようにして、バイアスと固定パターンノイズを除去したフラットフレームを沢山重ね合わせて平均化したフレームを master flat(マスターフラット) と呼びます。

      07_04_masterflat
      図7-5. マスターフラット

      これを使ってどうやって光学系の周辺減光を補正するのでしょうか。それは簡単です。

      07_05_flatcorr
      図7-6. 周辺減光の補正

      例えば、図7-5 で中心付近の点 A と周辺部の点 B を考えましょう。点 A の明るさを1としたとき、点 B の明るさが 0.8 だったとしたら、点 B の明るさを 0.8 で割れば点 A と同じ明るさになりますよね。つまり、ライトフレームの各ピクセルの明るさを、マスターフラットの同じ位置のピクセルの明るさで割れば良いのです。PIの場合、正確には、[マスターフラットの同じ位置のピクセルの明るさ]/[マスターフラットの中央値] で割ります。

      こうして、目的③の周辺減光の補正を行うことができます。ちなみに、マスターフラットによって、周辺減光だけでなくセンサ前に付いたゴミの影による減光も補正して、写野全面にわたって同じ明るさの画像にすることができます。マスターフラットは、これが無いと綺麗な写真に仕上げることができないと言い切っても良いほど、非常に重要なフレームです。

      ただし、物理的に光量が足りないところを無理やり増幅させているだけなので、周辺部は中心部に比べてノイズが多くなる等、画質が下がることは間違いありません。あまり周辺減光が大きい光学系の場合には、フラット補正しても周辺部はクロップ(トリミング)する思い切りが必要かもしれません。

以上、3種類のキャリブレーションフレームを用意したら、いよいよ前処理開始です。なお、何度も言っていることではありますが、これらのフレームには、すべてランダムノイズが含まれています。キャリブレーションフレームの枚数が少なくてそのランダムノイズが大きいままだと、せっかくライトフレームを沢山撮っても意味がなくなってしまいますので、ご注意ください。

目次へ戻る この節のトップへ戻る

7-3. Pre processing の手順概要

前処理は以下の手順で行われます。

(1) Calibration(キャリブレーション)

前処理の5つの目的のうち、ライトフレームに対して上記の ②~④ を目的とした処理を施すことを calibration(キャリブレーション) と言い、細かく以下の処理に分けることができます。

  1. マスターバイアスの生成
  2. マスターダークの生成
  3. マスターフラットの生成
  4. 各ライトフレームのキャリブレーション

1~3 でそれぞれのマスターファイルを作り、それらを使って 4 で ②~④ の処理を行います。

(2) debayer

次は前処理の目的 ⑤ の処理です。
キャリブレーションが終わったライトフレームをカラー画像化します。第6回でも説明した通り、debayer しただけでは色調は滅茶苦茶なのですが、前処理では色合わせ(色調補正)は行いません。

(3) Registration(位置合わせ)

第3回の月の写真を重ね合わせるときにも説明しましたが、各ライトフレームに写っている星の位置は微妙にずれることが多いです。どうしてもずれてしまうケースもあれば、わざとずらして写すケースもあるのですが、いずれにしても星の位置がずれて写っています。

07_07_starshift
図7-7. 星の位置がずれている(6:1拡大)

最終的にはこれらを重ね合わせるわけですが、星の位置がずれたまま重ね合わせてしまうと、星が線状に連なって写ってしまったり、重ね合わせ方によっては星が消えてしまったりします。それではせっかく写した天体写真が台無しですので、重ね合わせの前に星の位置をきっちり合わせておく必要があります。

(4) Integration(重ね合わせ)

位置合わせが終わったライトフレームを連続して表示すると次にようになります。

07_08_after_reg
図7-8. 位置合わせ後のライトフレーム(3:1拡大)

こうして見ると、不規則なランダムノイズの様子がよくわかりますね。最後にこれらのランダムノイズを減らすために(目的 ① のために)重ね合わせを行います。これで、最初に述べた前処理の5つの目的の処理はすべて行ったことになります。

目次へ戻る この節のトップへ戻る

7-4. Pre processing 実行

本来、前処理は前節のように幾つもの手順を踏んで行われる処理なのですが、どんな天体を写した写真であっても、やり方は全く同じなので、これらの処理を全部まとめてクリック1発で行えるように、PI には BatchPreprocessing(BPP) というスクリプトが用意されています。
メニューバーから、SCRIPT > Batch Processing > BatchPreprocessing と辿って起動してください。

07_07_startbpp
図7-9. BatchPreprocessingを起動

07_08_bpp
図7-10. BatchPreprocessing

大抵の場合はこの BPP がきれいに処理してくれるので、基本的な使い方だけ知っていれば大丈夫でしょう。

07_09_how2usebpp
図7-11. BPPの基本的な使い方

最低限の設定手順は以下の通りです。以下の (a)~(f) は、図中の (a)~(f) に対応します。

(a) "Add xxxx" ボタンからライトフレームとその他のキャリブレーションフレームを入力
(b) カラー画像なら "Global options" の "CFA images" をチェック
(c) 入力したキャリブレーションフレームがマスターフレームなら、該当するものにチェック
(d) 位置合わせの基準とする画像を選択
左側のファイルリストの中にある場合は該当ファイルをダブルクリックすれば OK
(e) 処理されたファイルを出力するディレクトリを指定
(f) 実行!

たったこれだけです。 難しいことは何一つありません。

なお、前処理の手順や内容等について、以下の動画でもう少し詳細に解説しています。文字情報を読むより、動画を見た方が理解しやすいと思いますので、こちらもご覧いただけると幸いです。どちらの動画も各40分と長いので、お時間のある時にご覧ください。

● Pre processing 前編

  • BPPの使い方を中心に説明しています。PI 初心者でもわかるように丁寧に解説したつもりです。まずはこちらからご覧ください。

● Pre processing 後編

  • BPP を使わずに pre processing を行う方法を解説しています。一つ一つの処理についてかなり詳細に解説していますので、中級~上級者向けですね。PI での Pre processing の詳細な内容も知りたいという方は、こちらをご覧ください。

それから、処理速度も気になるところですよね。天体写真の前処理には非常に沢山の写真を使うので、処理に長い時間がかかるのが普通です。私もキャリブレーションフレームを含めるとかなりの枚数を使って前処理することが多いので、いつも相当な時間がかかります。しかし、何時間もかかってしまうと流石にうんざりしますよね。そこで、参考のために、前処理専用のフリーソフトとして有名でユーザも多い DeepSkyStacker (DSS) と処理時間を比較しました。PC は以下のようなスペックです。

 OS: Windows 10
 CPU: AMD Ryzen 7 2700X (8コア16スレッド)
 メモリ: 32GB
 ストレージ: SSD

計測に使った画像は EOS 6D で撮影したもので、今回素材として使っている画像(図7-2等)ではありません(紛らわしくて済みません)が、以下の枚数を前処理するのにかかった時間を計測しました。

 ライトフレーム: 10枚
 キャリブレーションフレーム: 各10枚

結果は次の通りです。

BPP v1.46  3 分 48 秒
DSS 4.1.1(64bit)  8 分 57 秒(*)

(*) 最後に画像を表示する時間は含みません。

PixInsight はマルチスレッド効率が高いので、マルチスレッドな CPU で処理するとかなり速いです。キャリブレーションフレームにマスターフレームを使えば、さらに時間は短縮できます。ただし、キャリブレーションの処理はシングルスレッドで動く時間が長く、ライトフレームだけでなく、フラットフレームの枚数が多いと時間がかかる傾向が顕著です。

目次へ戻る この節のトップへ戻る

7-5. できた画像を見てみよう

BPP で前処理が終わったら、BPP の output directory に指定したディレクトリ(フォルダ)の下を見てください。master というディレクトリができていて、その下に以下のファイルがあるはずです。

 ・ bias-BINNING_1.xisf
 ・ dark-BINNING_1-EXPTIME_xxx.xisf ("xxx"は露出秒数)
 ・ flat-BINNING_1.xisf
 ・ light-BINNING_1.xisf

上から3つが、順にマスターバイアス、マスターダーク、マスターフラットです。そして、最後のファイルが前処理された目的の画像です。これを開いてみましょう。

メニューバーの FILE > Open... から開いてもいいですし、ファイルを PI に直接ドラッグ&ドロップしても開けます。

07_10_fileopen
図7-12. ファイルの開き方

開くと、次のように非常に暗いことにまず驚くと思います。

07_12_light_binning_1
図7-13. pre processing直後の画像

この画像がこんなに暗い理由は2つあります。一つは、第6回でも説明した通り、もともと RAWデータが暗いということ。そして、もう一つは、PI の画像表示方法にあります。PI が画像を表示するときには、その画像を 16bit化して表示するのですが、デジタルカメラの RAWデータはほとんどが 14bitですよね。ここに4倍の情報量の差があります。

大抵のレタッチソフトや画像表示ソフトで 14bit画像を 16bit化して開くときには、14bit画像を4倍にストレッチして 16bit画像にすると思います。一方、PI は、14bit画像の情報はそのままにして、後ろに空の 14bitを3個くっつけて 16bitにします。したがって、見かけ上、明るさが 1/4 になるわけです。暗くはなりますが、14bit画像の情報はそのままにしているので、別に圧縮しているわけではありませんよ。この辺りのことは、上で紹介した動画(前編)でも最初に説明しています。

いずれにしても非常に暗いので、このままでは何が何だかわかりません。そこで、ScreenTransferFunction(STF)で明るくしましょう。

STF は第3回でも登場しましたが、画像を見かけ上明るくするツールです。この左側にあるマークのうち、鎖マークをオフにしたうえで、原子力マークに似たマークを押すと、自動的にある程度の色調整をしながら適度に明るくしてくれます。これを auto stretch(オートストレッチ)と言います。

07_12_stf
図7-14. STF でオートストレッチ

鎖マークのオンとオフは、R/G/B を合わせて(リンクして)ストレッチするか、それともバラバラに(リンクしないで)ストレッチするか、ということを意味します。鎖マークをオンにしてオートストレッチすることを linked auto stretch(リンクト・オートストレッチ)、オフにしてオートストレッチすることを unlinked auto stretch(アンリンクト・オートストレッチ)と言います。前処理直後の画像は色合わせが未調整なので、リンクせずにオートストレッチしないとおかしな色に表示されてしまいます。

このオートストレッチを使って、BPP で前処理した画像と、ライトフレーム1枚を debayer しただけの画像とを比べてみましょう。

07_15_comparison
図7-15. pre processing の効果

いちいち解説するまでもなく、ひと目で違いがわかりますね。前処理によってノイズが劇的に減り、周辺減光も修正されて綺麗な画像に生まれ変わりました。前処理が如何に重要か、お解りいただけたかと思います。

なお、前回(第6回)もお話した通り、pre processing(前処理)という用語は、天体写真の世界、あるいは PI の中だけで使われる特別な用語というわけではありません。何らかの処理を行う前にノイズを取り除くこと、および次の工程の処理の準備をすることを目的として行われる処理のことを、広く一般的に pre processing(前処理)と呼びます。今回説明した処理は、まさにその前処理と呼ぶに相応しい処理なので、そう呼ばれているわけです。覚えておきましょう。

次回(第8回)からは、この前処理後の画像の処理について解説していきます。

目次へ戻る この節のトップへ戻る

つづく

その他のカテゴリー