Exemple #1
0
                                                       duplicate_until=-1)
'''
# Log found ratios

if os.path.isfile(detector_log_path):
    file = open(detector_log_path, 'a')
    file.write("%.2f,%d,%f,%f,%d,%f,%f\n" % (confidence_threshold, count_aflw, t_ratio_aflw, f_ratio_aflw, count_p04 - count_aflw, t_ratio_p04, f_ratio_p04))
else:
    file = open(detector_log_path, 'w')
    file.write('threshold,count_aflw,t_ratio_aflw,f_ratio_aflw,count_p04,t_ratio_p04,f_ratio_p04\n')
    file.write("%.2f,%d,%f,%f,%d,%f,%f\n" % (confidence_threshold, count_aflw, t_ratio_aflw, f_ratio_aflw, count_p04 - count_aflw, t_ratio_p04, f_ratio_p04))

file.close()
'''

# Assign classes

class_assign(destination_dir, num_splits_tilt, num_splits_pan)

# Split dataset

split_dataset(destination_dir, test_ratio, validation_ratio)

# Get normalization parameters

find_norm_parameters(destination_dir)

# OPTIONAL: Save dataset as numpy arrays (for uploading to Google Colab)

store_dataset_arrays(destination_dir)
Exemple #2
0
def main():
    '''
    This function acts as a testbench for the function clean_pointing04, using it to perform the basic processing of the
    Pointing'04 dataset from a set of default values defined below.
    '''

    # Source paths.

    pointing04_dir = 'original/HeadPoseImageDatabase/'

    # Destination path.

    destination_dir = 'clean/pointing04/'

    # Detector model path.

    head_detector_path = 'models/head-detector.h5'

    # Detection parameters.

    in_size = 512
    out_size = 64
    confidence_threshold = 0.75

    # Output parameters.

    grayscale_output = True
    downscaling_interpolation = cv2.INTER_LINEAR

    # Number of splits for class assignation.

    num_splits_tilt = 8
    num_splits_pan = 8

    # Ratios for train/test and train/validation split.

    test_ratio = 0.2
    validation_ratio = 0.2

    # Detector model.

    detector = ssd_512(image_size=(in_size, in_size, 3),
                       n_classes=1,
                       min_scale=0.1,
                       max_scale=1,
                       mode='inference')
    detector.load_weights(head_detector_path)

    # Check if output directory exists.

    try:
        os.mkdir(destination_dir)
        print("Directory", destination_dir, "created.")
    except FileExistsError:
        print("Directory", destination_dir, "already exists.")
        shutil.rmtree(destination_dir)
        os.mkdir(destination_dir)

    # Actual cleaning.

    clean_pointing04(pointing04_dir, destination_dir, detector,
                     confidence_threshold, out_size, grayscale_output,
                     downscaling_interpolation)

    # Assign classes.

    class_assign(destination_dir, num_splits_tilt, num_splits_pan)

    # Split dataset.

    split_dataset(destination_dir, test_ratio, validation_ratio)

    # Get normalization parameters.

    find_norm_parameters(destination_dir)

    # OPTIONAL: Save dataset as numpy arrays (for uploading to Google Colab).

    store_dataset_arrays(destination_dir)
Exemple #3
0
def main():
    '''
    This function acts as a testbench for the function clean_pointing04, using it to perform the basic processing of the
    Pointing'04 dataset from a set of default values defined below.
    '''

    # Source paths.

    pointing04_dir = '../original/HeadPoseImageDatabase/'

    # Destination path.

    destination_dir = 'clean/pointing04_haar_area_color/'

    # Detector model path.

    frontal_detector_path = 'models/haarcascade_frontalface_alt.xml'
    profile_detector_path = 'models/haarcascade_profileface.xml'

    # Detection parameters.

    out_size = 64

    # Output paramenters

    grayscale_output = True
    downscaling_interpolation = cv2.INTER_AREA

    # Number of splits for class assignation.

    num_splits_tilt = 8
    num_splits_pan = 8

    # Ratios for train/test and train/validation split.

    test_ratio = 0.2
    validation_ratio = 0.2

    # Detector model.

    detector = HaarFaceDetector(frontal_detector_path, profile_detector_path)

    # Check if output directory exists.

    try:
        os.mkdir(destination_dir)
        print("Directory", destination_dir, "created.")
    except FileExistsError:
        print("Directory", destination_dir, "already exists.")
        shutil.rmtree(destination_dir)
        os.mkdir(destination_dir)

    # Actual cleaning.

    clean_pointing04(pointing04_dir, destination_dir, detector, out_size,
                     grayscale_output, downscaling_interpolation)

    # Assign classes.

    class_assign(destination_dir, num_splits_tilt, num_splits_pan)

    # Split dataset.

    split_dataset(destination_dir, test_ratio, validation_ratio)

    # Get normalization parameters.

    find_norm_parameters(destination_dir)

    # OPTIONAL: Save dataset as numpy arrays (for uploading to Google Colab).

    store_dataset_arrays(destination_dir)