貧者の赤道儀 (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の結果が微妙にズレているのが原因。