files[:n_train_files], PATCH_SIZE, POS_OVERLAP_THD, NEG_OVERLAP_THD)

    extractor = extractor_.Extractor(rp.MserRegionProposer(),
                                     ann.SvhnAnnotation(ANNOTATION_FILE),
                                     rp.OverlapCalculator())
    validation_samples, validation_labels = extractor.extract_patch(
        files[n_train_files:], PATCH_SIZE, POS_OVERLAP_THD, NEG_OVERLAP_THD)

    print train_samples.shape, train_labels.shape
    print validation_samples.shape, validation_labels.shape

    #     show.plot_images(samples, labels.reshape(-1,).tolist())

    file_io.FileHDF5().write(train_samples,
                             "train.hdf5",
                             "images",
                             "w",
                             dtype="uint8")
    file_io.FileHDF5().write(train_labels,
                             "train.hdf5",
                             "labels",
                             "a",
                             dtype="int")

    file_io.FileHDF5().write(validation_samples,
                             "val.hdf5",
                             "images",
                             "w",
                             dtype="uint8")
    file_io.FileHDF5().write(validation_labels,
                             "val.hdf5",
示例#2
0
import cv2

import digit_detector.preprocess as preproc
import digit_detector.train as train_

DIR = '../datasets/svhn'
NB_FILTERS = 32
NB_EPOCH = 5

DETECTOR_FILE = 'detector_model.hdf5'
RECOGNIZER_FILE = 'recognize_model.hdf5'

if __name__ == "__main__":

    print("loading images_train...")
    images_train = file_io.FileHDF5().read(os.path.join(DIR, "train.hdf5"),
                                           "images")
    print("loading labels_train...")
    labels_train = file_io.FileHDF5().read(os.path.join(DIR, "train.hdf5"),
                                           "labels")

    print("loading images_val...")
    images_val = file_io.FileHDF5().read(os.path.join(DIR, "val.hdf5"),
                                         "images")
    print("loading labels_val...")
    labels_val = file_io.FileHDF5().read(os.path.join(DIR, "val.hdf5"),
                                         "labels")
    print("Finish loading hdf5")

    # Train detector
    X_train, X_val, Y_train, Y_val, mean_value = preproc.GrayImgTrainPreprocessor(
    ).run(images_train, labels_train, images_val, labels_val, 2)
示例#3
0
    extractor = extractor_.Extractor(rp.MserRegionProposer(),
                                     ann.SvhnAnnotation(ANNOTATION_FILE),
                                     rp.OverlapCalculator())
    validation_samples, validation_labels = extractor.extract_patch(
        files[n_train_files:], PATCH_SIZE, POS_OVERLAP_THD, NEG_OVERLAP_THD)

    print("train_samples.shape", train_samples.shape, "\ntrain_labels.shape",
          train_labels.shape)
    print("validation_samples.shape", validation_samples.shape,
          "\nvalidation_labels.shape", validation_labels.shape)

    # show.plot_images(samples, labels.reshape(-1,).tolist())

    file_io.FileHDF5().write(train_samples,
                             os.path.join(SVHN_DIR, "train.hdf5"),
                             "images",
                             "w",
                             dtype="uint8")
    file_io.FileHDF5().write(train_labels,
                             os.path.join(SVHN_DIR, "train.hdf5"),
                             "labels",
                             "a",
                             dtype="int")

    file_io.FileHDF5().write(validation_samples,
                             os.path.join(SVHN_DIR, "val.hdf5"),
                             "images",
                             "w",
                             dtype="uint8")
    file_io.FileHDF5().write(validation_labels,
                             os.path.join(SVHN_DIR, "val.hdf5"),