setRepositories(ind=c(1,2))
install.packages("nucim")library(bioimagetools)
library(nucim)choose RGB file
img = readTIF(file.choose())number of slices
slices = dim(img)[4]we need the dimensions of the image in microns
x = attributes(img)$x.resolution
y = attributes(img)$y.resolution
z = as.numeric(attributes(img)$spacing) * slicesand the dimensions of each voxel
X = x/dim(img)[1]
Y = y/dim(img)[2]
Z = as.numeric(attributes(img)$spacing)
zscale=mean(c(X,Y))/Zwe assume that the third channel is blue, ie, DAPI
blue = img[,,3,] we mask the kernel
mask = dapimask(blue, c(x,y,z), thresh="auto")classify the DAPI channel
classes = classify(blue, mask, 7, z=zscale)count voxel per class
counts <- table.n(classes, 7)percentages
perc <- print(counts/sum(counts)*100, 1)
barplot(perc, names.arg=1:7, xlab="DAPI intensity class", ylab="percentage")library(bioimagetools)
library(nucim)choose one of the files in a folder of RGB files
folder = file.choose()
f = unlist(gregexpr("/",folder))
folder = substr(folder,1,f[length(f)])scripts can use parallel computing, if available (not under Windows)
nr.cores=ifelse(.Platform$OS.type=="windows", 1, 4)split channels
splitchannels.folder(folder, rgb.folder="./", cores=nr.cores)masks
dapimask.folder(folder, cores=nr.cores)classification
classify.folder(folder, 7, cores=nr.cores)results will be in folders “class7” and “class7-n”