Изменить после уточнения:
Вам нужно среднее значение по измерениям 1 и 2, используйте:
ave = mean(mean(image,2),1);
Оригинальный ответ:
Если (как это используется) ваше изображение представляет собой 3-мерную матрицу с длиной последнего измерения 3, вы можете просто использовать:
ave=squeeze(mean(image,3)); %#compute the average value for each pixel along the third dimension
Среднее значение является приблизительной оценкой яркости, но лучшим подходом было бы сначала умножить каждую цветовую плоскость на другой коэффициент, поскольку красный, зеленый и синий не равняются яркости. Стандартные коэффициенты :
- 0,3 для красного
- 0,59 для зеленого
- 0,11 для синего
Ваш код будет выглядеть следующим образом:
ave=image(:,:,1)*0.3 + image(:,:,2)*0.59 + image(:,:,3)*0.11