私はスカイ値を各画像のピクセル強度のヒストグラムを作成し、次に最も高い頻度のビンの強度に等しく設定することによって天文画像を減算しようとしています。次に、そのフレーム内の各ピクセルから空の値を減算することです.IndexError:ブールインデックスが、次元0に沿ったインデックス付き配列と一致しませんでした。寸法が3651469であるが、ブール寸法を対応する3651468numpyヒストグラムbooleanインデックスが次元0に沿ってインデックス付き配列と一致しませんでした。次元は
#sciFlat is a list containing three images in array form.
sciFlat = np.asarray(sciFlat)
minpix = min(sciFlat.flatten())
maxpix = max(sciFlat.flatten())
rng = int(maxpix-minpix)
#These are histogram ranges, now loop through each image.
#Sky subtract science images.
sciSky = []
for i in range(3):
hf = np.histogram(sciFlat[i].flatten(), bins=rng, range=(minpix,maxpix))
skyval = hf[1][hf[0] == max(hf[0])]
print(skyval)
skySub = sciFlat[i] - skyval
sciSky.append(skySub)
ある私はnumpy.histogramはHIST(サイズnの平坦化配列)とbin_edges(長さnの1次元配列)を返すべきであるように、コードが正常に完了することを期待します。
はIndexErrorトレースバック(最新の呼び出しの最後)
142 hf = np.histogram(sciFlat[i].flatten(), bins=rng, range=(minpix,maxpix))
143---> **skyval = hf[1][hf[0] == max(hf[0])]** <----
144 print(skyval)
145 skySub = sciFlat[i] - skyval
はIndexError:ブールインデックスは次元0に沿ってインデックス付きの配列と一致しませんでした。次元は3651469ですが、ブールの寸法を対応する3651468
'hf.shape'は何ですか? –