BME680とESPHomeで作る室内環境センサー
ESP32につないだBME680は、温度・湿度・気圧を測るだけでなく、部屋の空気がどれだけよどんでいるかも感じ取ります。BoschのライブラリBSEC2がそれを空気質指数に変換し、Home Assistantが換気のタイミングを知らせてくれます。組み立ては1時間ほど。その後センサ …
手順とワークフロー ― 理由とともに一歩ずつ。
ESP32につないだBME680は、温度・湿度・気圧を測るだけでなく、部屋の空気がどれだけよどんでいるかも感じ取ります。BoschのライブラリBSEC2がそれを空気質指数に変換し、Home Assistantが換気のタイミングを知らせてくれます。組み立ては1時間ほど。その後センサ …
モノクロカメラのナローバンドデータ(HOO なら Ha と OIII、SHO ならさらに SII)を、スタックから書き出しまで処理する。恒星はナローバンド画像から取るか、短時間の RGB 撮影から取るかを選べる。
Optolong L-QEF のようなクアッドバンドフィルターをつけたカラーカメラ(OSC)の撮影データを、スタックから書き出しまで処理する。結果は輝線を強調した自然に近い RGB 画像で、ナローバンド画像ではない。
モノクロカメラの L、R、G、B、Ha の撮影データを、スタックから書き出しまで処理する。Ha は色を損なわずに赤チャンネルと輝度で星雲を強め、RGB は自然な色と恒星の色を担う。
BackgroundNeutralization は、カラー画像の背景がニュートラル(R ≈ G ≈ B)になるように色チャンネルを合わせる。色較正とは違い、対象のホワイトバランスは決めない。
BlurXTerminator(BXT)はデコンボリューションである。光学系、シーイング、追尾によって画像がどうぼけたかを推定し、そのぼけを取り除く。恒星の形が直り、恒星は締まり、星雲の構造はシャープになる。
CurvesTransformation は、入力値をカーブに沿って出力値へ割り当て直す。特定の階調域だけでコントラスト・彩度・色相を変え、それ以外の階調はそのまま残すことができる。
GeneralizedHyperbolicStretch(GHS)は、リニアデータを目に見える画像に変換する。固定されたカーブとは違い、どの明るさを中心にコントラストを最も強めるかを決め、その上下でストレッチを制限できる。
GradientCorrection(GC)は、背景のグラデーションのなめらかなモデルを作り、リニア画像から差し引く。Structure protection によって、星雲の構造がグラデーションとして扱われるのを防ぐ。
LocalHistogramEqualization(LHE)は、各画素の周囲にある明るさの分布を広げる。すぐ隣とわずかにしか違わない構造が、画像全体では同じ中間調にあっても浮かび上がる。
LRGBCombination は、別に用意した輝度画像とカラー画像を合成する。輝度画像が明るさ・構造・シャープさを、カラー画像が色を担う。結果が色あせも彩度過多もしないためには、両者の明るさが合っている必要がある。
MorphologicalTransformation は、構造をその形に基づいて変える。天体写真では主に恒星の縮小に使う。恒星は外側から小さくなり、丸いまま保たれる。
MultiscaleGradientCorrection(MGC)は、画像を空の参照マップ(MARS)と比べる。選んだ尺度より小さな構造は自分の画像から取り、大きなものは参照に合わせる。
NoiseXTerminator(NXT)はノイズを取り除き、必要に応じて細かいノイズと大きなノイズ、輝度ノイズとカラーノイズを分けて扱う。既定値は天体写真にはたいてい強すぎる。
PixelMath は、すべての画素に式を適用する。画像は ID で指定する。チャンネルを合成してカラー画像にしたり、画像を混ぜたり、スクリーン合成で恒星を戻したりできる。
RangeSelection は、明るさの範囲を選ぶマスク(レンジマスク)を作る。カーブのように画像全体に効く処理を、背景を守ったまま星雲だけに効かせたり、その逆にしたりできる。
SCNR(Subtractive Chromatic Noise Reduction)は、1 つの色チャンネル(たいていは緑)を他の 2 チャンネルの水準に抑える。緑がかった色の誤りを補正できるが、対象が本当に緑の成分を持つ場合は、本物の信号まで変えてしまう。
SpectrophotometricColorCalibration(SPCC)は、Gaia のスペクトルから、使ったフィルターとセンサーで各恒星がどう写るはずかを計算し、それを画像と比べてチャンネルの係数を求める。あわせて背景もニュートラルにする。
StarXTerminator(SXT)は画像から恒星を取り除き、必要に応じて恒星だけの画像も出力する。星雲と恒星をそれぞれに合ったツールで処理し、あとで合成し直せる。
WeightedBatchPreprocessing(WBPP)は、ライト・ダーク・フラット・バイアスから、較正・位置合わせ・スタック済みのマスターライトを作るスクリプトである。データはフィルター、露出時間、ビニングごとに自動でグループ分けされる。
別の輝度画像をカラー画像と合成する前に、両者の明るさを合わせておく必要がある。この手順では決まった場所で測り、ずれのパターンを読み取り、輝度画像をカーブで合わせる。
合成輝度は、L フィルターで撮影する代わりに、手元のチャンネルから作る輝度画像である。構造とシャープさを担い、色はカラー画像が担う。両者を別々に処理し、LRGBCombinationカラー画像の明るさを別の輝度画像で置き換える。構造とシャープさは輝度画像から、色はカラー画像から得 …