Как решить ошибку pdist, такую ​​как "2-мерный массив должен быть передан"?

У меня ошибка pdist в третьей строке.

Сообщение об ошибке, как показано ниже.

A 2-dimensional array must be passed

Как я могу решить это?

def _filter_inconsistent(imgs, masks):
    hists = np.array(map(_compute_img_hist, imgs))
    dists = spdist.squareform(spdist.pdist(hists, metric='cosine'))
    # + eye because image will be similar to itself. We dont want to include those.
    close_pairs = dists + np.eye(dists.shape[0]) < 0.008
    close_ij = np.transpose(np.nonzero(close_pairs))
    # Find inconsistent masks among duplicates
    valids = np.ones(len(imgs), dtype=np.bool)
    for i, j in close_ij:
        if _are_inconsistent(masks[i], masks[j]):
            valids[i] = valids[j] = False
    return np.array(imgs)[valids], np.array(masks)[valids]

0 ответов

Другие вопросы по тегам