Example #1
0
def clustering(NC, ref_imgs, img_infos):
    clusters, centroids = K.KMeans_clustering(ref_imgs, NC, img_infos)
    np.save(clusters, 'clusters' + NC + '.npy')
    np.save(centroids, 'centroids' + NC + '.npy')
Example #2
0
    j = test_files[i]
    imgs.append(ref_imgs[j])
    input_infos.append(img_infos[j])
    ref_imgs = np.delete(ref_imgs, (j), axis=0)
    img_infos = np.delete(img_infos, (j), axis=0)
    distance_matrix = np.delete(distance_matrix, (j), axis=0)
    distance_matrix = np.delete(distance_matrix, (j), axis=1)

# loading clusters and centroids
clusters2, centroids2 = np.load('clusters2.npy').item(), np.genfromtxt(
    'centroids2.csv', delimiter=',')
centroids2 = centroids2.astype(int)
clusters3, centroids3 = np.load('clusters3.npy').item(), np.genfromtxt(
    'centroids3.csv', delimiter=',')
centroids3 = centroids3.astype(int)
clusters11, centroids11 = K.KMeans_clustering(ref_imgs, 1, img_infos)
for max_iter in range(
        1, 200, 1
):  # We test the accuracy of each algorithm having different values for maximum iterations

    print(max_iter)

    #Testing the ML-ANN algorithm
    NC = 1  # number of clusters
    weights = np.zeros(NC)  # weights for each cluster
    CDistances = np.zeros(NC)  # dictances between clusters and input image
    distances = {}
    for i in range(0, NC):
        distances[str(i)] = []
    clusters, centroids = copy.deepcopy(clusters11), copy.deepcopy(
        centroids11)  # clustering reference images by K-Means algorithm