Diff of /src/LiviaNET_Config.ini [000000] .. [e9ece0]

Switch to side-by-side view

--- a
+++ b/src/LiviaNET_Config.ini
@@ -0,0 +1,146 @@
+
+############################################################################################################################################
+#################################################        CREATION OF THE NETWORK       #####################################################
+############################################################################################################################################
+
+
+############## =================== General Options  =================  ################
+[General]
+networkName = liviaTest
+# Saving Options
+folderName = LiviaNet_Test
+
+
+############## =================== CNN_Architecture  =================  ################
+[CNN_Architecture]
+numkernelsperlayer = [10,20,30,100]
+
+# Kernels shapes:  (Note, if kernel size is equal to 1 on one layer means that this layer is fully connected)
+# In this example there will be 3 conv layers and 1 fully connected layer (+ classification layer)
+kernelshapes = [[3, 3, 3], [3, 3, 3], [3, 3, 3], [1]]
+
+# Intermediate layers to connect to the last conv layer (just before the first fully connected layer)
+intermediateConnectedLayers = []
+
+# In the current implementation it does not support pooling (To be done...)
+pooling_scales = [[1,1,1],[1,1,1],[1,1,1]]
+
+# Array size should be equal to number of fully connected (FC) layers + classification layer
+dropout_Rates = [0.25,0.5] 
+
+# Non-linear activations
+# Type: 0: Linear
+#       1: ReLU
+#       2: PReLU
+#       3: LeakyReLU
+activationType = 2
+
+# TODO. Include activation type for Softmax layer
+# Number of classes: background + classes to segment
+n_classes = 9
+
+# ------- Weights initialization ----------- #
+# There are some ways to initialize the weights. This is defined by the variable "weight_Initialization"
+# Here, there is a list of supported methods
+# 0, Classic
+# 1: Delving (He, Kaiming, et al. "Delving deep into rectifiers: Surpassing human-level performance on imagenet classification." ICCV'15)
+# 2: Load Pre-trained
+#      ----------
+# There is also the choice of which layers will be initialized with pre-trained weights. This is specified in the variable
+# "load weight layers". This can be either empty (i.e. all layers will be initialized with pre-trained weights in case 
+# "weight_Initialization" is 1)
+weight_Initialization_CNN = 1
+weight_Initialization_FCN = 1
+#load weight layers = [] # Next release
+# If using pre-trained models, specify the folder that contains the weights and the indexes of those weights to use
+# To ease the transfer between different softwares (i.e matlab for instance), and between different architectures,
+# the weights for each layer should be stored as a single file.
+# Right now weights have to be in .npy format
+weights folderName = /~yourpath/trainedWeights
+# Same length as conv layers
+weights trained indexes = [0,1,2] 
+#weight_Initialization_Sec = 1
+
+############## =================== Training Options  =================  ################
+[Training Parameters]
+#n_epochs=20
+batch_size=10
+number Of Epochs = 3
+number Of SubEpochs = 2 
+number of samples at each SubEpoch Train = 1000
+# TODO. To define some changes in the learning rate
+learning Rate change Type = 0
+# Subvolumes (i.e. samples) sizes.
+# Validation equal to testing samples
+sampleSize_Train = [25,25,25]
+sampleSize_Test  = [45,45,45]
+
+# Cost function values
+# 0:
+# 1:
+costFunction = 0 
+SoftMax temperature = 1.0
+#### ========= Learning rate ========== #####
+L1 Regularization Constant = 1e-6
+L2 Regularization Constant = 1e-4
+
+# TO check
+# The array size has to be equal to the total number of layers (i.e. CNNs + FCs + Classification layer)
+#Leraning Rate = [0.0001, 0.0001, 0.0001, 0.0001,0.0001, 0.0001, 0.0001, 0.0001,0.0001, 0.0001, 0.0001, 0.0001,0.0001, 0.0001 ]
+Leraning Rate = [0.001]
+# First epoch to change learning rate
+First Epoch Change LR = 1
+# Each how many epochs change learning rate
+Frequency Change LR = 2
+# TODO. Add learning rate for each layer
+
+#### ========= Momentum ========== #####
+# Type of momentum
+# 0: Classic
+# 1: Nesterov
+Momentum Type = 1
+Momentum Value = 0.6
+# Use momentum normalized?
+momentumNormalized = 1
+
+#### ======== Optimizer ===== ######
+# Type: 0-> SGD
+#       1-> RMSProp (TODO. Check why RMSProp complains....)
+Optimizer Type = 1
+
+#In case we chose RMSProp
+Rho RMSProp = 0.9
+Epsilon RMSProp = 1e-4
+
+# Apply Batch normalization
+# 0: False, 1: True
+applyBatchNormalization = 1
+BatchNormEpochs = 20
+
+# Apply padding to images
+# 0: False, 1: True
+applyPadding = 1
+
+############################################################################################################################################
+#################################################            TRAINING VALUES           #####################################################
+############################################################################################################################################
+
+[Training Images]
+imagesFolder = /~yourpath/Dataset/MR/ 
+GroundTruthFolder = /~yourpath/Dataset/Label/
+# ROI folder will contain the ROI where to extract the pacthes and where to perform the segmentation.
+# Values of the ROI should be 0 (non interest) and 1 (region of interest)
+ROIFolder = /~yourpath/Dataset/ROI/
+# If you have no ROIs
+#ROIFolder = []
+# Type of images in the dataset
+#     0: nifti format
+#     1: matlab format
+# IMPORTANT: All the volumes should have been saved as 'vol'
+imageTypes = 1
+
+# Indexes for training/validation images. Note that indexes should correspond to the position = inex + 1 in the folder,
+# since python starts indexing at 0
+indexesForTraining = [0,1,2,3,4]
+indexesForValidation = [5]
+