Плотность и пороговая кластеризация в dbscan
Я работаю над некоторыми данными температурных температур промышленных деталей. У меня есть пиксельная температура детали со значениями температуры. Я хочу использовать dbscan
идентифицировать части, которые имеют кластеры пикселей в каждой части, где все точки в кластере превышают пороговую температуру. Я пытался использовать dbscan
но не знаю, как определить, используя в качестве условий пороговую температуру и размер кластера.
Я попытался выделить только те точки, которые пересекают порог (230), и попытался определить, превышает ли этот кластер определенный размер. Код ниже:c(1,3)
являются x
,y
значения температуры и v
это температура.
new<-sub%>%filter(sub$v>230)%>% as.data.frame(.)
db <- fpc::dbscan(new[,c(1,3)], eps =3, MinPts = 10)
plot(db, new[,c(1,3)], main = "DBSCAN", frame = FALSE)
полная часть визуального:
dbscan
выход после фильтрации с использованием пороговой температуры ":
1 ответ
Никогда не используйте fpc
пакет. использование dbscan
вместо!
Я не уверен, является ли DBSCAN подходящим инструментом для вашей задачи, потому что ниже вы говорите о 10х10 регионах. Для этого была бы более подходящей стандартная свертка...
Но кроме этого DBSCAN может работать для вас, при условии, что вы выбираете атрибуты (n, m, f, c? Что все это значит?) И параметры (радиус минт) соответственно. Может быть, ваш эпсилон был слишком мал?