{ "cells": [ { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "Using TensorFlow backend.\n" ] } ], "source": [ "import os\n", "import sys\n", "import six\n", "import glob\n", "import math\n", "import pandas as pd\n", "import numpy as np\n", "from keras.utils import to_categorical\n", "import scipy.ndimage as nd\n", "from scipy.ndimage import zoom\n", "import random" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "import keras\n", "import tensorflow as tf\n", "from keras import Model\n", "from keras import backend as K\n", "from keras.regularizers import l2\n", "from keras.engine import Layer,InputSpec\n", "from keras.layers.merge import concatenate\n", "from keras.callbacks import TensorBoard,Callback\n", "from keras.layers.advanced_activations import LeakyReLU\n", "from keras.preprocessing.image import ImageDataGenerator\n", "from keras.layers.normalization import BatchNormalization\n", "from keras.callbacks import ModelCheckpoint, ReduceLROnPlateau\n", "from keras import initializers, regularizers, constraints,optimizers\n", "from keras.callbacks import ModelCheckpoint, LearningRateScheduler,TensorBoard\n", "from keras.layers import Add,Input,Conv3D,Convolution3D,Dropout,UpSampling3D,Concatenate,MaxPooling3D,\\\n", "GlobalAveragePooling3D,Dense,GlobalMaxPooling3D,Lambda,Activation,Reshape,Permute, PReLU, Deconvolution3D,Multiply,GlobalAveragePooling3D,Dense" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "sys.path.append('../baseLayers/')" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [], "source": [ "from InstanceNorm import InstanceNormalization\n", "from HRmodel import HRSegNet" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [], "source": [ "num_blocks = 5\n", "strides = [1,2,2,2,2]\n", "nodule_seg_strides = [1,2,2,2,2]\n", "atrous_rates = [1,1,1,1,1]\n", "base_filters = 32\n", "norm_func = InstanceNormalization\n", "activation_func = LeakyReLU\n", "kernel_size = 3\n", "padding = 'same'\n", "dropout_rate = 0\n", "input_shape = (32,64,64,1)\n", "num_classes = 4\n", "kernel_initializer = 'he_normal'\n", "kernel_regularizer = None\n", "deep_supervision = True\n", "ACF_choice = False\n", "aux_task = False\n", "SEB_choice = True\n", "classification_layers = GlobalMaxPooling3D" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [], "source": [ "sys.path.append('../../utils/')\n", "from RWconfig import LoadJson,WriteJson" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [], "source": [ "hrnet_config = {\n", " 'activation_func':activation_func,\n", " 'padding':padding,\n", " 'kernel_initializer':kernel_initializer,\n", " 'kernel_regularizer':kernel_regularizer,\n", " 'num_classes':num_classes,\n", " 'classification_layers':classification_layers,\n", " 'dropout_rate':dropout_rate,\n", " \"inchannels\":base_filters*2,\n", " \"norm_func\":norm_func,\n", " 'initial_strides':[1,2],\n", " 'num_modules':1,\n", " 'num_branches':[2,3,4],\n", " 'block_per_stage':[3,3,2],\n", " 'block_func':'BASIC',\n", " 'FUSE_METHOD':'SUM'\n", " \n", " \n", "}" ] }, { "cell_type": "code", "execution_count": 8, "metadata": { "scrolled": true }, "outputs": [], "source": [ "hrseg_obj_2 = HRSegNet(**hrnet_config)\n", "patch_size = 64\n", "model_1 = hrseg_obj_2.get_model(input_shape=input_shape,stages=4,choice='upsample',merge_choice=True)" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [], "source": [ "from ResNet import Resnet3DBuilder\n", "from VGGmodel import VGG\n", "from NoduleSegEncoder import NoduleSegEncoder_proxima\n" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [], "source": [ "from CommonLayers import *\n", "# from NoduleSegDecoder import NoduleSegDecoder_proxima\n", "sys.path.append('../decoders/')\n", "from NoduleSegDecoder import NoduleSegDecoder_proxima" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[,\n", " ,\n", " ,\n", " ,\n", " ]" ] }, "execution_count": 11, "metadata": {}, "output_type": "execute_result" } ], "source": [ "model_1[1]" ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [], "source": [ "# model2 = NoduleSegDecoder_proxima(model_1,**noduleseg_decoder_parameter_list)" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "model_1[0].summary()" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "Total params: 72,390,658\n", "Trainable params: 72,374,786\n", "Non-trainable params: 15,872" ] } ], "metadata": { "kernelspec": { "display_name": "Python 2", "language": "python", "name": "python2" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 2 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython2", "version": "2.7.15" } }, "nbformat": 4, "nbformat_minor": 2 }