Exemplo n.º 1
0
def detect_deffects(file_name):
    new_file_name = 'uploads/' + file_name
    time = cv2.getTickCount()
    result_points, eyes_coordinates, nose_coordinates, mouth_coordinates, image = fd.get_param(
        new_file_name)
    roi = crop_face(image, result_points)
    roi = crop_limbs(roi, eyes_coordinates, nose_coordinates,
                     mouth_coordinates)

    roi = get_otsu(roi, 200, 255)

    key_points = sift(roi, contrast_threshold=0.02, edge_threshold=15, sigma=2)
    key_points, score = delete_unused_keypoints(key_points, result_points,
                                                eyes_coordinates,
                                                nose_coordinates,
                                                mouth_coordinates, roi, image)
    result_image = cv2.drawKeypoints(
        image, key_points, flags=cv2.DRAW_MATCHES_FLAGS_DRAW_RICH_KEYPOINTS)

    print 'total score - ' + str(score)
    print 'total time - ' + str(print_time(time))

    return_file_name = 'proc_' + file_name
    new_file_name = 'uploads/' + return_file_name
    save_image(result_image, new_file_name)
    return return_file_name, score
Exemplo n.º 2
0
def process_photo_tests(file_name):
    """
    Process photo, use one of the above algorithms, return processed image and skin score

    Input: fileName
    """

    result_points, eyes_coordinates, nose_coordinates, mouth_coordinates, image = fd.get_param(file_name)

    roi = crop_face(image, result_points)
    limbs = [nose_coordinates, mouth_coordinates, eyes_coordinates]

    #result_image, score = otsu_grid_search(roi, image, result_points, limbs,
    #                                       contrast_threshold=0.02, edge_threshold=10, sigma=1.6)
    result_image, score, key_points = sift_grid_search(roi, image, result_points, limbs, thresh_val=220, type=cv2.THRESH_TRUNC)
    #result_image, score = mono_search(roi, image, result_points, limbs, thresh_val=220, type=cv2.THRESH_TRUNC)

    #result_image = draw_face(result_image, result_points)

    return result_image, key_points
Exemplo n.º 3
0
def detect_deffects(file_name):
    new_file_name = "uploads/" + file_name
    time = cv2.getTickCount()
    result_points, eyes_coordinates, nose_coordinates, mouth_coordinates, image = fd.get_param(new_file_name)
    roi = crop_face(image, result_points)
    roi = crop_limbs(roi, eyes_coordinates, nose_coordinates, mouth_coordinates)

    roi = get_otsu(roi, 200, 255)

    key_points = sift(roi, contrast_threshold=0.02, edge_threshold=15, sigma=2)
    key_points, score = delete_unused_keypoints(
        key_points, result_points, eyes_coordinates, nose_coordinates, mouth_coordinates, roi, image
    )
    result_image = cv2.drawKeypoints(image, key_points, flags=cv2.DRAW_MATCHES_FLAGS_DRAW_RICH_KEYPOINTS)

    print "total score - " + str(score)
    print "total time - " + str(print_time(time))

    return_file_name = "proc_" + file_name
    new_file_name = "uploads/" + return_file_name
    save_image(result_image, new_file_name)
    return return_file_name, score