On May 22, 12:10 am, mkorn... at nd.edu wrote:
> Hello,
>
> This is most likely a simple question for those who use Mathematica on
> a semi-regular basis, but ...
>
> I have a 512x512 matrix composed of 1x3 matrix elements, and want to
> create a 512x512 matrix composed of a single value in the original 1x3
> elements.
>
> That doesn't look very well defined, so please let me explain further
> in the hopes of clarifying what I am after.
>
> It's a bitmap image file (512x512) and I want to extract a part of the
> "raw" data for further processing. The raw data in the original file
> consists of values for the red, green and blue (RGB). I would like to
> create a matrix composed of only the *red* values across the 512x512
> array.
>
> As a simplified example ....
>
> Given RGB = {{1,0,1},{2,3,2},{4,6,4},{3,2,1}}
> {{9,1,3},{3,2,1},{4,3,3},{5,3,2}}
>
> I would like to end up with R = {1,2,4,3}
> {9,3,4,5}
>
> Thank you for your time,
>
> Mike K.
If Dimensions[rgb] = {p,q,3} then
Dimensions[t = Transpose[rgb,{2,3,1}]] = {3,p,q}], and
t[[1]] will give the p x q matrix of reds,
t[[2]] will give the p x q matrix of greens, and
t[[3]] will give the p x q matrix of blues.