U- NET предсказывает транспонированные маски - PullRequest
0 голосов
/ 04 мая 2020

Я обучил U- NET разбивать мозговые маски. Мой net удивительно точен, но с одной проблемой, которая заставляет меня дергать себя за волосы.

Выход net транспонирован. Если мы введем изображение (512,672,50), то получится вывод (50,672,512). Транспонирование их не помогает, так как они не перекрываются.

Поскольку у меня есть 3D-изображение, я передаю срезы на net и добавляю выходные данные к новому. Возможно, это проблема новичка, но я не могу ее отладить.

Код: -

i=1
final_ar=[]
for l in range(slices):
    x=np.array(x_test[l])
    x=np.expand_dims(x, axis=0)
    predict = model.predict(x, verbose=1)
    predict = (predict > 0.5).astype(np.uint8)
    temp_ar = np.squeeze(predict[0])
    temp_ar = crop_center(temp_ar,height,width)
    final_ar.append(temp_ar)
    print(i)
    i = i+1
final_ar = np.array(final_ar).T #to see overlapping
final_mask = nib.Nifti1Image(final_ar, affine=np.eye(4))
nib.save(final_mask, '/home/vaibhav/mask_nw/mask.nii.gz'

Заранее спасибо! Vb

...