Reputation: 1
I am working on some thermal temperature data of industrial parts. I have a pixel-wise temperature of the part with temperature values. I want to use dbscan
to identify parts that have clusters of pixels in each part where all points in the cluster exceed a threshold temperature. I have tried using dbscan
but do not know how to identify using both threshold temperature and size of the cluster as conditions.
I have tried to isolate only points that cross the threshold(230) and try to see if that cluster exceeds a certain size. The code below:c(1,3)
are the x
,y
values of the temperature and v
is the temperature.
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)
complete part visual:
dbscan
output after filtering using threshold temperature":
Upvotes: 0
Views: 353
Reputation: 77485
Never use the fpc
package. Use dbscan
instead!
I'm not sure whether DBSCAN is the right tool for your taskz because below you talk about10x10 regions. For that, a standard convolution would be much more appropriate...
But other than that DBSCAN could work for you, provided that you choose attributes (n, m, f, c? What are alle these?) and parameters (radius minpts) appropriately. Maybe your epsilon was just too small?
Upvotes: 1