Следует иметь в виду, что изображения RGB представляют собой трехмерные матрицы. Первая «страница» (то есть A (:,:, 1) ) - красная, вторая - зеленая, а третья - синяя. Иногда мне проще работать с матрицами RGB, преобразовав их в матрицы размером 3 на 3, где все красные пиксели находятся в столбце 1, зеленый - в столбце 2, а синий - в столбце 3. Вот как это сделать:
A = (a 3-D RGB image);
matSize = size(A);
A = reshape(A,prod(matSize(1:2)),3);
...
% Modify or extract data from reshaped matrix
...
A = reshape(A,matSize); % Return A to original dimensions
Не уверен, поможет ли это вам конкретно в том, что вы хотите сделать, но я часто нахожу это полезным.