私に手伝ってくれてありがとう!私が直面している問題は以下の通りです。私がフィットイメージのヘッダーを読んでいるとしましょう。ヘッダーカードの1つが未定義のオブジェクトで、これを処理する方法がわかりません。フィットヘッダーで未定義の値
from astropy.io import fits as pf
hdu = pf.open('myfitsfile')
hdu.info()
img_hd= hdu[0].header
print(img_hd['IMAGEZPT'])
<astropy.io.fits.card.Undefined object at 0x109b35a20>
私は何千もの画像に対して繰り返しコードを実行していますが、ほとんどすべてに値があります。例えば
hdu_base = pf.open(a_lof[38])
img_hd= hdu_base[0].header
print(img_hd['IMAGEZPT'])
23.61687
これに他の値を割り当てて続行します。だから、試しました
if img_hd['IMAGEZPT'] == None:
img_hd['IMAGEZPT'] = base_ZPT #some value I know
print(img_hd['IMAGEZPT'])
しかし、期待どおり、これはキーワードが定義されていないので、うまくいきませんでした。だから '== None'は動作しません。キーワードは存在しますが、それは未定義です。
ご協力いただければ幸いです! ベスト、 Abhi
Hmmでは、ヘッダーに「UNDEFINED」が表示されるのは、主に実装の詳細なので珍しいことです。それはAstropyのバグのように思えます。ヘッダーのサンプルを投稿できますか? – Iguananaut
私が使用しているデータは公開されています。あなたはフィットファイルを見ることができます。 IRSA-PTF画像サービス(http://irsa.ipac.caltech.edu/applications/ptf/)にアクセスしてください。次に、1回の露光画像に対してフィールドIDとCCD IDを使用して検索します。フィールドID = 100025、CCDID = 1。このクエリを実行し、終了したらEXPID = 49679(最初のページ自体の下から8番目)のイメージを探します。これはヘッダーのSEEINGとIMAGEZPTキーワードを読み取ろうとすると、このメッセージを返す少数のファイルの1つです。 – Abhishek
ヘッダーが大きくてペーストをコピーするようです。 – Abhishek