K平均法または他のアルゴリズムを使用して画像をクラスタリングしたい(提案が必要)。Python-画像クラスタリングにおけるクラスタリング
問題はこのようなものです。イメージを3つのクラスタ(自然、日没、水)にクラスタリングしたいと考えています。 os.listdir()を使用してすべてのイメージをロードし、すべてのイメージを配列(RGB)に変換し、ID、Image_array、Labelの3つの列を含むデータフレームを作成しました。今
、私はn_clusters = 3を設けるK手段クラスタリングを使用する場合は、このエラーを示しています。今
from sklearn.cluster import KMeans kmeans = KMeans(n_clusters = 3).fit(img_array) ERROR = Found array with dim 4. Estimator expected <= 2.
を、私はこのクラスタリング問題でお願いします。あなたは、画像ごとに3D配列とそれを提供し、一方、私はあなたが言っただけでなく、この
img_array = []
path = "C://Users/shivam/Desktop/freelancer/p22/data/green_nature/"
for f in os.listdir('.'):
if f.endswith('.jpg'):
img = Image.open(f)
data = np.asarray(img, dtype='uint8')
img_array.append(data)
df = pd.DataFrame({'image_arrays':img_array})
df['id'] = range(1, len(df) + 1)
はい、私はこだわっていますinteresting.Butようだ、あなたはその中で私を助けることができます。 ヒストグラムを取得する方法(私も実際にそれを取得しようとしました)。今、3次元配列の代わりに平均値を取得しようとしています。あなたがもっと助けてください、それは非常に役に立つでしょう。 –
私はこの3次元配列を2次元配列に変換することを考えています。平均と標準偏差があります。これはK平均を実行してもOKですが、この配列はRGB配列です。私はそれをどうするのか? –
np.mean(image_arrays、axis = 2)? https://docs.scipy.org/doc/numpy/reference/generated/numpy.mean.html – TheLaurens