--- a
+++ b/functions/functions_DBProc/loadImages.m
@@ -0,0 +1,102 @@
+function [imagesCellTrain, filenameTrn, indexes_imUnsharpened] = loadImages(files, dirDB, allIndexes, indImagesTrain, numImagesTrain, param, colorS, th_focus, dirUtilities, plotta)
+
+%init
+vectorIndexTrain = allIndexes(indImagesTrain);
+filenameTrn = cell(length(vectorIndexTrain), 1);
+imagesCellTrain = cell(numImagesTrain, 1);
+
+%init maxs
+maxH = -1;
+maxW = -1;
+%loop - find max
+for i = 1 : length(vectorIndexTrain)
+    
+    %read
+    filenameTrn{i} = files(vectorIndexTrain(i)).name;
+    %im = im2double(imread([dirDB filenameTrn{i}]));
+    im = imread([dirDB filenameTrn{i}]);
+    
+    [h, w, ~] = size(im);
+    if h > maxH
+        maxH = h;
+    end %if h
+    if w > maxW
+        maxW = w;
+    end %if w
+    
+end %for i
+
+
+%read images
+parfor i = 1 : length(vectorIndexTrain)
+% for i = 1 : length(vectorIndexTrain)
+    
+    %read
+    filenameTrn{i} = files(vectorIndexTrain(i)).name;
+    %im = im2double(imread([dirDB filenameTrn{i}]));
+    im = imread([dirDB filenameTrn{i}]);
+      
+    if colorS
+        imagesCellTrain{i, 1} = im;
+    else %if colorS
+        imagesCellTrain{i, 1} = rgb2gray(im);
+    end %if colorS
+    
+end %for i = 1 : numImages
+
+
+%resize to largest dimension
+parfor i = 1 : numel(imagesCellTrain)
+    im =  imagesCellTrain{i, 1};
+    
+    im = imresize(im, [maxH, maxW]);
+    
+    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+    %im = imresize(im, [maxH/2, maxW/2]);
+    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%  
+    
+    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+    %im = imresize(im, [maxH/4, maxW/4]);
+    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%  
+    
+    imagesCellTrain{i, 1} = im;
+    
+end %for i
+
+%preprocess
+indexes_imUnsharpened = false(length(vectorIndexTrain));
+parfor i = 1 : length(vectorIndexTrain)
+% for i = 1 : length(vectorIndexTrain)
+    
+    %read
+    im = imagesCellTrain{i, 1};
+    
+    %process
+    f = 1;
+    iterF = 1;
+    im_temp = im;
+    [scoreFocus] = assessFocusFQPath(im, [], dirUtilities, 0);
+    while scoreFocus > th_focus && iterF < 10
+        im_temp = imsharpen(im, 'Radius', f);
+        [scoreFocus] = assessFocusFQPath(im_temp, [], dirUtilities, 0);
+        f = f + 2;
+        iterF = iterF + 1;
+        
+        indexes_imUnsharpened(i) = true;
+    end %for f
+    
+    %assign
+    imagesCellTrain{i, 1} = im_temp;   
+    
+end %for i = 1 : numImages
+
+
+%display
+if plotta
+    numSample = min([144, numel(imagesCellTrain)]);
+    indexM = randsample(numel(imagesCellTrain), numSample);
+    figure,
+    montage(imagesCellTrain(indexM), 'DisplayRange', [], 'Size', [9 16])
+    title('Random subset of images');   
+end %if plotta
+