Ejemplo n.º 1
0
def create_histogrames(path=None):
    log_path = data_functions.create_path(LOG_PATH, 'extract_logs')

    configure_logger(name="stem_extractor",
                     console_level='INFO',
                     file_level='INFO',
                     out_path=log_path)

    logger = logging.getLogger(__name__)

    try:
        params_dict = data_functions.load_json(path)
        stem_extract.create_test_train_obj(**params_dict)

    except:
        message = 'Error loading Model'
        logger.exception(message)
        raise Exception
Ejemplo n.º 2
0
def train_unet(params_dict_path, src_path, update_dict_path, steps):
    log_path = data_functions.create_path(LOG_PATH, 'unet_logs')

    configure_logger(name="cherry_stem",
                     console_level='INFO',
                     file_level='INFO',
                     out_path=log_path)

    logger = logging.getLogger(__name__)

    try:
        if params_dict_path is not None:
            if src_path is not None:
                message = 'Ambiguous loading paths, input either' \
                          ' "params_dict_path or "src_path", not both '
                raise UnetModelException(message)
            else:
                params_dict = data_functions.load_json(params_dict_path)
                model = unet_model_functions.ClarifruitUnet(**params_dict)
        else:
            if update_dict_path is not None:
                update_dict = data_functions.load_json(update_dict_path)
            else:
                update_dict = None

            model = unet_model_functions.ClarifruitUnet.load_model(
                src_path, update_dict, steps)

        keras_logs_path = model.set_model_for_train()
        logger.info(f"for tensorboard use \n "
                    f"tensorboard --logdir={keras_logs_path}")
        model.fit_unet()

    except:
        message = 'Error loading Model'
        logger.exception(message)
        raise Exception
Ejemplo n.º 3
0
import os
from work.unet import unet_model_functions
from keras.callbacks import ReduceLROnPlateau
from work.auxiliary import data_functions

from work.auxiliary.logger_settings import configure_logger

import logging

LOG_PATH = os.path.abspath('logs')
DATA_PATH = os.path.abspath('data')

log_path = data_functions.create_path(LOG_PATH, 'unet_logs')

configure_logger(name="cherry_stem",
                 console_level='INFO',
                 file_level='INFO',
                 out_path=log_path)

logger = logging.getLogger(__name__)


def main():
    """
    for model debugging
    :return:
    """

    # train_path = os.path.join(DATA_PATH, r'raw_data\with_maskes')
    #train_path = os.path.join(DATA_PATH, r'segmentation\augmented')
    train_path = os.path.join(DATA_PATH, r'segmentation\augmented')
    dest_path = os.path.join(DATA_PATH, r'unet_data\training')
Ejemplo n.º 4
0
from work.stem_classifier import classify
from work.auxiliary import data_functions
import os
from work.stem_classifier.model_functions import *

from work.auxiliary.logger_settings import configure_logger
LOG_PATH = os.path.abspath('logs')
DATA_PATH = os.path.abspath('data')

log_path = data_functions.create_path(LOG_PATH, 'classifier')

configure_logger(name="classifier",
                 console_level='INFO',
                 file_level='INFO',
                 out_path=log_path)

logger = logging.getLogger(__name__)


def func():
    train_path = r'D:\Clarifruit\cherry_stem\data\classification_data\from_all\set1\train'
    dest_path = r'D:\Clarifruit\cherry_stem\data\unet_data\training\2019-10-07_20-12-39'
    test_path = r'D:\Clarifruit\cherry_stem\data\classification_data\from_all\set1\test'

    params_dict = dict(train_path=train_path,
                       data_gen_args=dict(rescale=1. / 255,
                                          rotation_range=180,
                                          width_shift_range=0.25,
                                          height_shift_range=0.25,
                                          shear_range=0.2,
                                          zoom_range=[0.5, 1.0],
Ejemplo n.º 5
0
from work.auxiliary import data_functions
import cv2

from work.segmentation import segmentation
import os

from work.auxiliary.logger_settings import configure_logger
import logging

LOG_PATH = os.path.abspath('logs')
DATA_PATH = os.path.abspath('data')

log_path = data_functions.create_path(LOG_PATH, 'segmentation_logs')

configure_logger(name="segmentation",
                 console_level='INFO',
                 file_level='INFO',
                 out_path=log_path)

logger = logging.getLogger(__name__)


def main():
    orig_path = os.path.join(DATA_PATH, r'raw_data\with_maskes\image')
    #orig_path = os.path.join(DATA_PATH, r'segmentation\src2')
    mask_path = os.path.join(DATA_PATH,r'raw_data\with_maskes\label')
    dest_path = os.path.join(DATA_PATH,r'raw_data\with_maskes\label-augmented')
    # mask_path = os.path.join(DATA_PATH,
    #                          r'unet_data\training\2019-10-20_19-26-14\raw_pred')
    # dest_path = os.path.join(DATA_PATH,
    #                          r'unet_data\training\2019-10-20_19-26-14')
Ejemplo n.º 6
0
from work.auxiliary.logger_settings import configure_logger
from work.auxiliary import data_functions
import os
import logging

LOG_PATH = os.path.abspath('logs')
DATA_PATH = os.path.abspath('data')

log_path = data_functions.create_path(LOG_PATH, 'stem_extract')

configure_logger(name="stem_extract",
                 console_level='INFO',
                 file_level='INFO',
                 out_path=log_path)

logger = logging.getLogger(__name__)


def get_test_train():
    """
    use the src_path to create a test train split of data seperated to clases,
    where each class has it's own folder.
    save the test and train results in dest_path
    :return:
    """
    src_path = os.path.join(DATA_PATH,
                            r'classification_data\from_all\set3\All')
    dest_path = os.path.join(DATA_PATH, r'classification_data\from_all\set3')
    data_functions.get_train_test_split(src_path,
                                        dest_path,
                                        train_name='train',