ビジュアルワードのバッグをMATLABに実装したいと考えています。まず、データセットディレクトリから画像を読み込み、SURF機能を検出して、これら2つの機能detectSURFFeatures
とextractFeatures
を使って画像を抽出します。k-meansアルゴリズムを使用した画像データセットのSURFフィーチャのクラスタリング
各機能をセル配列に格納し、最後にk-meansアルゴリズムを使用してクラスタ化したいが、このデータをk-means関数入力に適合させることはできません。 SURF機能をMATLABのk-meansクラスタリングアルゴリズムに挿入するにはどうすればよいですか?
ファイルから画像を読み取り、そのサーフ機能を抽出するサンプルコードです。
clc;
clear;
close all;
folder = 'CarData/TrainImages/cars';
filePattern = fullfile(folder, '*.pgm');
f=dir(filePattern);
files={f.name};
for k=1:numel(files)
fullFileName = fullfile(folder, files{k});
image=imread(fullFileName);
temp = detectSURFFeatures(image);
[im_features, temp] = extractFeatures(image, temp);
features{k}= im_features;
end
[centers, assignments] = kmeans(double(features), 100);