1、选择一幅图片,导入到Mathematica里面。
2、分离图片颜色的代码是:ColorSeparate@图片
3、运行之后,发现,得到的图片全是黑白图片。这是怎么回事?
4、实际上,图片分离颜色之后,得到的都是灰度图;而灰度的深浅,代表螽啸镥释相应颜色的深度;图片u的颜色空间是RGB,分离颜色之后,得到的前三幅图片是有内容的,洹彭岣啬而第四幅是空白图片,因为RGB颜色空间,不能为第四通道着色。
5、怎么确定图片u是4个通道呢?除了分离颜色得到4幅图片之外,还可以直接查看图片的通道数:ImageChannels@u
6、为了更好地理解,分离颜色与图片通道的关系,可以把图片转化为图片数据。为此,先缩小图片,防止浪费内存;然后再转化为数据v,是一个三维列表。
7、仔细看一下图片数据的结构:先把v转化为矩阵的形式;再看看这个矩阵的行数和列数;矩阵每一个单元,代表原图一个像素;可以发现,每一个像素都对应四个数值,正是四个通道各个颜色的深度值。
8、分离颜色得到的四幅图片,每一幅都是单通道图片。凸鹣沮北把分离颜色得到的四幅图片转化为图片数据,得到的每一幅图片第一个像素的数值,敲好是原图第一个像素对应的四个数字。