使用均值漂移算法进行图像分割需要很长时间

时间:2019-07-11 09:28:55

标签: python scikit-learn computer-vision pycharm mean-shift

我正在尝试使用sklearn的均值平移算法分割彩色图像。我正在使用的IDE是PyCharm,并且我有以下代码:

import cv2
import numpy as np
from sklearn.cluster import MeanShift, estimate_bandwidth
from sklearn.datasets.samples_generator import make_blobs
import matplotlib.pyplot as plt
from itertools import cycle
from PIL import Image

image = Image.open('sample_images/fruit_half.png').convert('RGB')
image = np.array(image)

origShape = image.shape
flat_image = np.reshape(image, [-1,3])

bandwidth2 = estimate_bandwidth(flat_image, quantile=0.1, n_samples=100)

ms = MeanShift(bandwidth2, bin_seeding=True)

ms.fit(flat_image)
labels=ms.labels_
print(flat_image)

但是,当我尝试在PyCharm中运行代码时,Mean-Shift算法似乎花费了很长时间。运行代码后,我没有任何输出(这就是为什么在代码末尾有print(flat_image)以便能够知道代码何时完成运行的原因)。即使在等待了二十多分钟之后,在我看来该程序仍在运行并且尚未完成,因为flat_image数组没有被打印为输出。

我不确定为什么会这样。任何见解都会受到赞赏。

0 个答案:

没有答案