Hi 

Im experimenting with mean pixel values for a series of images from a DSLR. I 
import 16-bit TIFs (RGB) from a directory using the following code, then loop 
through adding each TIF before dividing by the total number of files to give an 
image of mean pixel values. Some quick questions:

-having checked pixel values, this does what I expect it to do in that it 
creates the mean for each RGB layer in each image. It is pretty quick, but is a 
function that calculates both the mean and median pixel values for stacked 
layers like this?

-do all the calculations take place in 32 bit space? The tiff package lets me 
export as 16 bit tiffs, but is there anything that supports 32 bit tiffs??

-I get the following writeTIFF error (and the number has been scaled from the 
original 16 bit to 0-1):
"The input contains values outside the [0, 1] range - storage of such values is 
undefined"

-is there a more elegant/memory efficient way of doing this?!

Any help much appreciated!

best wishes


mike

PS Two sample images here:
http://www.hsm.org.uk/1.tif
http://www.hsm.org.uk/2.tif 

#Scan directory and store filenames in string, then count total files
files <- as.character(list.files(path="./mean/input/"))
n <- length(files)

#Use first TIF as loop file, then add all together
m_image_tiff <- readTIFF(paste("./mean/input/",files[1],sep=""))
for (i in 2:n){
  test<-paste("./mean/input/",files[i],sep="")
  tiff <- readTIFF(paste("./mean/input/",files[i],sep=""))
  m_image_tiff <- (tiff+m_image_tiff)
}

#Calculate mean and write TIF
m_image_tiff <- (m_image_tiff/n)
writeTIFF(m_image_tiff,"./mean/mean_tiff.tif",bits.per.sample=16L)
---
Mike Smith

______________________________________________
R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.

Reply via email to