Switch to unified view

a b/project/signin/prediction.py
1
# -*- coding: utf-8 -*-
2
"""
3
Created on Fri Mar 26 11:43:51 2021
4
5
@author: JOEL
6
"""
7
import pandas as pd
8
import numpy as np
9
import tensorflow as tf
10
import keras
11
from keras import backend as K
12
from keras.models import Model
13
import pickle
14
import os
15
16
def mri_predict(axial,coronal,sagittal):
17
    axial = axial.reshape(16,256,256,1)
18
    coronal = coronal.reshape(16,256,256,1)
19
    sagittal = sagittal.reshape(16,256,256,1)
20
    axial_cnn = keras.models.load_model(os.path.join("signin","axcnn_new"+".h5"))
21
    coronal_cnn = keras.models.load_model(os.path.join("signin","corcnn_new"+".h5"))
22
    sagittal_cnn = keras.models.load_model(os.path.join("signin","sagcnn_new"+".h5"))
23
    filename = os.path.join("signin","softmax_reg_new"+".sav")
24
    s_model = pickle.load(open(filename, 'rb')) 
25
    ax_prediction = 0
26
    cor_prediction = 0
27
    sag_prediction = 0
28
    for i in range(16):
29
        axialtemp = axial[i,:,:,:]
30
        axialtemp = axialtemp.reshape(1,256,256,1)
31
        ax_predict = axial_cnn.predict(axialtemp)
32
        ax_prediction+=ax_predict 
33
        coronaltemp = coronal[i,:,:,:]
34
        coronaltemp = coronaltemp.reshape(1,256,256,1)
35
        cor_predict = coronal_cnn.predict(coronaltemp)
36
        cor_prediction+=cor_predict
37
        sagittaltemp = sagittal[i,:,:,:]
38
        sagittaltemp = sagittaltemp.reshape(1,256,256,1)
39
        sag_predict = sagittal_cnn.predict(sagittaltemp)
40
        sag_prediction+=sag_predict
41
    fp_sag = sag_prediction/16
42
    fp_ax = ax_prediction/16
43
    fp_cor = cor_prediction/16
44
    
45
    fp_ax = np.array(fp_ax)
46
    fp_cor = np.array(fp_cor)
47
    fp_sag = np.array(fp_sag)
48
    
49
    combined = np.concatenate((fp_ax,fp_cor,fp_sag),axis = 1)
50
    fp = int(s_model.predict(combined))
51
    perc = 0
52
    perc = (fp_ax[0,fp]+fp_cor[0,fp]+fp_sag[0,fp])/3
53
    return(fp,perc)