I'm not sure if I'm following your coding, but to get the mean pixel value for a bunch of images, you could simply do the following (it's fast):
imDim = 100;
n = 80;(*number of images*)
(*generate random image list*)
ilist = Array[RandomImage[1, {imDim, imDim}, ColorSpace -> "RGB"] &, n];
(*take mean*)
Image@Mean[ImageData /@ ilist]
For a large collection of random images it should converge to homogeneous gray (RGB[.5,.5,.5]). Let's test it:
imDim = 3;
n = 2000;(*number of images*)
(*generate random image list*)
ilist = Array[RandomImage[1, {imDim, imDim}, ColorSpace -> "RGB"] &, n];
(*take mean*)
Image@Mean[ImageData /@ ilist]