exponenta event banner

clusterDBSCAN.plot

Построить кластеры

Описание

пример

fh = plot(clusterer,X,idx) отображает график результатов кластеризации DBSCAN и возвращает дескриптор фигуры, fh. Входами являются объект кластера, clusterer, матрица входных данных, Xи индексы кластеров, idx.

fh = plot(___,'Parent',ax) также определяет оси, ax, графика результатов кластера.

fh = plot(___,'Title',titlestr) также указывает заголовок, titlestr, графика результатов кластера.

Примеры

свернуть все

Создание обнаружений протяженных объектов с измерениями в диапазоне и доплеровском диапазоне. Предположим, что максимальный однозначный диапазон составляет 20 м, а однозначный доплеровский диапазон простирается от -30 Гц до 30 Гц. Данные для этого примера содержатся в dataClusterDBSCAN.mat файл. Первый столбец матрицы данных представляет диапазон, а второй столбец - доплеровский.

Входные данные содержат следующие расширенные цели и ложные аварийные сигналы:

  • однозначная цель, расположенная в (10,15)

  • неоднозначная мишень в доплеровском диапазоне, находящаяся в (10, -30)

  • неоднозначная цель по дальности, расположенная в (20,15)

  • неоднозначная мишень по дальности и доплеровская, расположенная на (20,30)

  • 5 ложных тревог

Создать clusterDBSCAN object и укажите, что определение значения не выполняется с помощью параметра EnableDisambiguation кому false. Решить для индексов кластера.

load('dataClusterDBSCAN.mat');
cluster1 = clusterDBSCAN('MinNumPoints',3,'Epsilon',2, ...
    'EnableDisambiguation',false);
idx = cluster1(x);

Используйте clusterDBSCAN plot объектная функция для отображения кластеров.

plot(cluster1,x,idx)

Figure Clusters contains an axes. The axes with title Clusters contains 10 objects of type line, scatter, text.

График показывает, что существует восемь видимых кластеров и шесть точек шума. 'Dimension 1' метка соответствует диапазону и 'Dimension 2' метка соответствует доплеровской.

Далее создайте еще clusterDBSCAN объект и набор EnableDisambiguation кому true чтобы указать, что кластеризация выполняется по границам диапазона и доплеровской неоднозначности.

cluster2 = clusterDBSCAN('MinNumPoints',3,'Epsilon',2, ...
    'EnableDisambiguation',true,'AmbiguousDimension',[1 2]);

Выполните кластеризацию с использованием пределов неоднозначности, а затем постройте график результатов кластеризации. Результаты кластеризации DBSCAN правильно показывают четыре кластера и пять точек шума. Например, точки на дальностях, близких к нулю, сгруппированы с точками около 20 м, потому что максимальный однозначный диапазон составляет 20 м.

amblims = [0 maxRange; minDoppler maxDoppler];
idx = cluster2(x,amblims);
plot(cluster2,x,idx)

Figure Clusters contains an axes. The axes with title Clusters contains 6 objects of type line, scatter, text.

Входные аргументы

свернуть все

Объект Clusterer, указанный как clusterDBSCAN объект.

Входные данные, заданные как вещественно-значная матрица N-by-P. N строк соответствуют точкам в пространстве P-мерных элементов. Столбцы P содержат значения элементов, над которыми происходит кластеризация. Например, вход из двух столбцов может содержать декартовы координаты x и y, или диапазон и доплеровский.

Типы данных: double

Индексы кластера, указанные как N-by-1 целочисленный вектор столбца. Индексы кластера представляют результаты кластеризации алгоритма DBSCAN, содержащиеся в первом выходном аргументе clusterDBSCAN. idx значения начинаются с единицы и последовательно нумеруются. Функция объекта графика помечает каждый кластер индексом кластера. Значение -1 в idx указывает точку шума DBSCAN. Точки шума не помечены.

Типы данных: double

Оси графика, указанные как Axes дескриптор объекта.

Типы данных: double

Заголовок печати, заданный как символьный вектор или строка.

Пример: 'Range-Doppler Clusters'

Типы данных: char | string

Выходные аргументы

свернуть все

Маркер рисунка графика, возвращаемый как положительный скаляр.

Представлен в R2021a