def main():
    k = Shape("yvonne",[[1,1],[2,2],[1,3],[4,1]])
    k.compute_histograms()
    k.serialize()
    k.print_picture()

    j = Shape.deserialize("yvonne")

    k2 = Shape("jeanguy",[[5,2],[3,3],[4,4],[8,2]])
    k2.compute_histograms()

    k2.print_picture()

    comparator = ShapeComparator()
    answer = comparator.compare(k,k2)
    comparator.print_result()
    print answer


    mat = np.array([[17,15,9,5,12],[16,16,10,5,10],[12,15,14,11,5],[4,8,14,17,13],[13,9,8,12,17]])
    comparator.hungarian_algorithm(mat,5,5)

    mat = np.array([[80,40,50,46],[40,70,20,25],[30,10,20,30],[35,20,25,30]])
    comparator.hungarian_algorithm(mat,4,4)


    return 0