22 行 546304 列 (時系列信号) の配列に連続ウェーブレット変換を適用して、スカログラムを CNN にフィードしたいと考えています。Traceback (most recent call last): File "E:/physionet/wavelet.py", line 144, in create_cwt_image
sig = data[ii, :, jj] IndexError: too many indices for array
CWT を正しい方法で使用しているかどうか、コードが正しいかどうかがわからないというエラーが発生しました。
洞察を提供できる人なら誰でも大歓迎です。
def create_cwt_image(data):
scales = range(1,128)
wavelet_name = 'morl'
#n_samples = data.shape[0]
#n_signals = data.shape[0]
scales = range(1,128)
data_cwt = np.ndarray(shape=(22,127,127, 9))
for ii in range(0,22):
if ii % 1000 == 0:
print(ii)
for jj in range(0,9):
sig = data[ii, :, jj]
coeffs, freqs = pywt.cwt(sig, scales, wavelet_name)
rescale_coeffs = resize(coeffs, (128, 128), mode = 'constant')
data_cwt[ii,:,:,jj] = rescale_coeffs
return data_cwt