## how can i save every pixel of image as a row of new matrix?

on 27 Oct 2012

### Matt J (view profile)

i have an image in lab space i want to save the value of l,a, b of every pixel as a row of new matrix for example if i have 2*3 matrix i want to make 6*3 matrix that every row of this matrix show the pixel and every column of every row is the value of l,a and b channel is there any way to do this without using for loop i want to do this very fast? thanks in advance

Image Analyst

### Image Analyst (view profile)

on 27 Oct 2012

I'm having a hard time visualizing. Can you provide an example. Because an lab image is a 3 dimensional image not a 2D (2*3) image, at least it is if you're starting with a 2D color image, so I don't know what the 2*3 refers to. Do you mean 2 rows by 3 columns by 3 color channels? And then I don't know what "show the pixel" means. I also don't know what show "every column of every row is the value of l,a and b channel" means. Do you mean that you want to just have all the values listed like this in a numerical array

```row1  column1 lValue1 aValue1 bValue1
row1  column2 lValue2 aValue2 bValue2
etc.
```

## Tags

No tags are associated with this question.

## Products

No products are associated with this question.

on 27 Oct 2012
Edited by Matt J

### Matt J (view profile)

on 27 Oct 2012

` result = reshape(Image,[],3);`

#### 1 Comment

on 27 Oct 2012

thanks for your answer before i separate different channel and then use etc target(:,1)=l(:), target(:,2)=a(:),target(:,3)=b(:) but in this war i dont need do this thanks a lot

on 27 Oct 2012

the answer by Matt solve my problem before that i separate different channel and then use etc target(:,1)=l(:), target(:,2)=a(:),target(:,3)=b(:) 2*3 was an example for size of matrix and i know that the image is 2d but with 3 channels thanks for your answers and excuse me for my bad tag

#### Join the 15-year community celebration.

Play games and win prizes!

MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi