貧者の赤道儀 (The Poor Man's Equatorial) - (2-e) NASAのMontage

NASAのMontageというツールセットでパノラマを作ってみるテスト。そもそもsky panorama専用の道具なのでうまく行くはず、と期待している。

最終的にカラー画像が欲しいので、各チャンネル別のディレクトリに保存してそれぞれ処理してみた。

$ for d in B G R; do cd ${d}; for f in *.tif; do solve-field ${f} --scale-low 5 --scale-high 15 -p -N `basename ${f} .tif`.fits; done; cd ..; done

Reading input file 1 of 1: "DSC_3051.tif"...
TIFFReadDirectory: Warning, Unknown field with tag 36867 (0x9003) encountered.
tifftopnm: writing PPM file
Read file stdin: 2006 x 3009 pixels x 1 color(s); maxval 65535
Using 16-bit output
Extracting sources...
simplexy: found 524 sources.
Solving...
Reading file "./DSC_3051.axy"...
...snip...

$ for d in B G R; do mImgtbl ${d} ${d}Images.tbl; done

[struct stat="OK", count=11, badfits=0, badwcs=0]
[struct stat="OK", count=11, badfits=0, badwcs=0]
[struct stat="OK", count=11, badfits=0, badwcs=0]

$ for d in B G R; do mMakeHdr ${d}Images.tbl ${d}Template.hdr; done

[struct stat="OK", msg="Cube columns exist but are either blank or inconsistent. Outputting 2D only.", count=11, ncube=0, naxis1=7021, naxis2=3207, clon=84.454153, clat=-4.901913, lonsize=29.788476, latsize=13.606558, posang=0.720450, lon1=99.296909, lat1=-11.114580, lon2=69.765612, lat2=-11.480492, lon3=69.889981, lat3=1.630289, lon4=98.851270, lat4=1.989290]
[struct stat="OK", msg="Cube columns exist but are either blank or inconsistent. Outputting 2D only.", count=11, ncube=0, naxis1=7021, naxis2=3207, clon=84.454143, clat=-4.902138, lonsize=29.789432, latsize=13.606994, posang=0.721378, lon1=99.297465, lat1=-11.114740, lon2=69.765237, lat2=-11.481135, lon3=69.889425, lat3=1.630038, lon4=98.851585, lat4=1.989512]
[struct stat="OK", msg="Cube columns exist but are either blank or inconsistent. Outputting 2D only.", count=11, ncube=0, naxis1=7021, naxis2=3208, clon=84.454052, clat=-4.902060, lonsize=29.788384, latsize=13.610759, posang=0.721674, lon1=99.296969, lat1=-11.116418, lon2=69.765662, lat2=-11.482952, lon3=69.889804, lat3=1.631847, lon4=98.850912, lat4=1.991456]

$ for d in B G R; do mkdir ${d}Proj; mProjExec -p ${d} ${d}Images.tbl ${d}Template.hdr ${d}Proj ${d}Stats.tbl; done

[struct stat="OK", count=11, failed=0, nooverlap=0]
[struct stat="OK", count=11, failed=0, nooverlap=0]
[struct stat="OK", count=11, failed=0, nooverlap=0]

$ for d in B G R; do mImgtbl ${d}Proj ${d}Proj.tbl; done
[struct stat="OK", count=11, badfits=0, badwcs=0]
[struct stat="OK", count=11, badfits=0, badwcs=0]
[struct stat="OK", count=11, badfits=0, badwcs=0]

$ for d in B G R; do mAdd -p ${d}Proj ${d}Proj.tbl ${d}Template.hdr ${d}Uncorrected.fits; done
[struct stat="OK", time=2]
[struct stat="OK", time=2]
[struct stat="OK", time=1]

ここまででバックグラウンド補正無しのパノラマの完成。

$ for d in B G R; do mImgtbl ${d}Proj ${d}ProjImages.tbl; done
[struct stat="OK", count=11, badfits=0, badwcs=0]
[struct stat="OK", count=11, badfits=0, badwcs=0]
[struct stat="OK", count=11, badfits=0, badwcs=0]

$ for d in B G R; do mOverlaps ${d}ProjImages.tbl ${d}Diffs.tbl; done
[struct stat="OK", count=34]
[struct stat="OK", count=34]
[struct stat="OK", count=34]

$ for d in B G R; do mDiffExec -p ${d}Proj ${d}Diffs.tbl ${d}Template.hdr ${d}Diff; done
[struct stat="OK", count=34, failed=0]
[struct stat="OK", count=34, failed=0]
[struct stat="OK", count=34, failed=0]

$ for d in B G R; do mFitExec ${d}Diffs.tbl ${d}FITS.tbl ${d}Diff; done
[struct stat="OK", count=34, failed=0, warning=0, missing=0]
[struct stat="OK", count=34, failed=0, warning=0, missing=0]
[struct stat="OK", count=34, failed=0, warning=0, missing=0]

$ for d in B G R; do mBgModel ${d}ProjImages.tbl ${d}FITS.tbl ${d}Corrections.tbl; done
[struct stat="OK"]
[struct stat="OK"]
[struct stat="OK"]

$ for d in B G R; do mBgExec -p ${d}Proj ${d}ProjImages.tbl ${d}Corrections.tbl ${d}Cor; done
[struct stat="OK", count=11, nocorrection=0, failed=0]
[struct stat="OK", count=11, nocorrection=0, failed=0]
[struct stat="OK", count=11, nocorrection=0, failed=0]

$ for d in B G R; do mAdd -p ${d}Cor ${d}ProjImages.tbl ${d}Template.hdr ${d}Corrected.fits; done
[struct stat="OK", time=2]
[struct stat="OK", time=1]
[struct stat="OK", time=2]

$ for d in B G R; do mViewer -ct 1 -gray ${d}Corrected.fits -1s max gaussian-log -out ${d}Corrected.png; done
[struct stat="OK", min=10710.8, minpercent=22.48, minsigma=-1.00, max=65621.3, maxpercent=100.00, maxsigma=37.91, datamin=6901.62, datamax=65621.3, xflip=0, yflip=1, bunit="", colortable=1]
[struct stat="OK", min=34240.8, minpercent=22.33, minsigma=-1.00, max=66045.4, maxpercent=100.00, maxsigma=16.32, datamin=28203.3, datamax=66045.4, xflip=0, yflip=1, bunit="", colortable=1]
[struct stat="OK", min=19943.6, minpercent=22.44, minsigma=-1.00, max=65717, maxpercent=100.00, maxsigma=31.24, datamin=15654.9, datamax=65717, xflip=0, yflip=1, bunit="", colortable=1]

ここで、BG補正が終わる。出来たFITSからビットマップに変換して合成したがうまく行かない。各チャンネルのsolve-fieldの結果が微妙にズレているのが原因。