计算机视觉是使计算机能够从图像或多维数据中自动解释和理解视觉信息的学科。与人类视觉系统相比,计算机眼中的图像是由一系列数字数据组成,这些数据经过特定的处理和分析,以实现图像识别、分类和理解。
pip install opencv-python
pip install matplotlib
使用OpenCV显示图片:
OpenCV操作图片基本的三部曲就是:加载图片、显示图片和保存图片。 - cv2.imread()读入图片 - cv2.imshow()显示图片 - cv2.imwrite()保存图片
实例:
import cv2
# 加载灰度图
img = cv2.imread('./images/jpg/channel_demo.jpg', 1)
cv2.imshow('haha', img)
cv2.imwrite('./images/jpg/copy.jpg',img)
cv2.waitKey(0)
cv2.destroyAllWindows()
我们发现这样显示图片无法缩放图片。我们可以自定义一个函数实现按比例缩放图片。
def resize_with_aspect_ratio(img, width=None, height=None):
"""
按比例缩放图片(指定宽度或高度)
"""
h, w = img.shape[:2]
if width is None and height is None:
return img
if width is not None:
ratio = width / w
dim = (width, int(h * ratio))
else:
ratio = height / h
dim = (int(w * ratio), height)
return cv2.resize(img, dim, interpolation=cv2.INTER_AREA)
需要缩放图片时仅仅需要调用resize_with_aspect_ratio方法即可。
import cv2
import utils.cvutils as tool
img = cv2.imread("./images/jpg/channel_demo.jpg",1)
# 方法1:缩放到指定宽度(保持比例)
resized = tool.resize_with_aspect_ratio(img, width=480)
# 方法2:创建可调整窗口
"""
cv2.namedWindow("Adjustable Window", cv2.WINDOW_NORMAL)
cv2.imshow("Adjustable Window", img)
"""
cv2.imshow("Adjustable Window", resized)
cv2.waitKey(0)
cv2.destroyAllWindows()

使用matplotlib显示图片:
import cv2
import matplotlib.pyplot as plt
import matplotlib.image as mpimg
# 加载灰度图
img = mpimg.imread('./images/jpg/channel_demo.jpg')
plt.imshow(img)
plt.show()
需要注意的是,OpenCV读取图片默认是以 B-G-R 通道顺序读取的,所以我们不能用matplotlib去加载显示opencv读取的图片对象,这样颜色会失真。
import cv2
import matplotlib.pyplot as plt
import matplotlib.image as mpimg
# 加载图片
src_img = cv2.imread('./images/jpg/channel_demo.jpg',1)
img = mpimg.imread('./images/jpg/channel_demo.jpg')
#plt.imshow(img)
plt.imshow(src_img)
plt.show()

Alpha通道(Alpha Channel)是一种用于表示图像透明度的通道。它使用256级灰度来记录图像中的透明度信息,其中白色表示不透明,黑色表示透明,灰色表示半透明。
cv2.imread()的参数可以控制是否加载Alpha通道,cv2.imread()的参数有如下几种:
需要注意的是,jpg格式图片通常没有Alpha通道,而png格式图片有Alpha通道。看下面实例:
import cv2
import numpy as np
import cv2 as cv
# 步骤 1: 读取图像
image1 = cv2.imread('./images/png/test01.png',cv2.IMREAD_UNCHANGED)
image2 = cv2.imread('./images/jpg/channel_demo.jpg',cv2.IMREAD_UNCHANGED)
print(image1.shape)
print(image2.shape)
运行结果:
(560, 560, 4)
(770, 905, 3)
图像在计算机中是由数以百万计的像素点组成的。每个像素点代表了图像中的一个最小单位,具有特定的位置和颜色值。 像素是图像最基本的组成单位,就像画一幅画,像素就是画笔画出的最小的点。你可以把图像想象成一个由很多小格子组成的网格,每个小格子就是一个像素,它有自己的颜色。这些像素挨在一起,组合起来就形成了我们看到的各种各样的图像。比如一张照片,如果像素很多,就像用很多很细小的画笔画出来的,图像看起来就很清晰、很细腻;如果像素很少,就像用很大的画笔画出来的,图像就会显得很粗糙、模糊。
下面是opencv获取图片尺寸与像素信息案例。
import cv2
import numpy as np
# 步骤 1: 读取图像
image = cv2.imread('images/jpg/panda.jpg')
print("图片形状:",image.shape)
height,width = image.shape[:2]
print("图片宽度:",width)
print("图片高度:",height)
输出结果:
图片形状: (683, 1024, 3)
图片宽度: 1024
图片高度: 683
其中,其中image.shape函数返回了图片的高度,宽度和颜色通道。由于获取图片基本信息比较常用我们封装为一个方法方便我们以后使用。
import cv2 as cv
import numpy as np
def get_image_info(image):
print(image.shape)
height = image.shape[0]
width = image.shape[1]
channels = image.shape[2]
print("宽度:%d,高度:%d,通道:%d" % (width, height, channels))
return width,height,channels
通过调用get_image_info显示图片信息。
import cv2
import numpy as np
import cv2 as cv
import utils.cvutils as tool
# 步骤 1: 读取图像
image = cv2.imread('images/jpg/red.jpg')
width, height, channels = tool.get_image_info(image)
print("图片形状:", image.shape)
print("图片宽度:", width)
print("图片高度:", height)
print("图片通道:", channels)
运行结果:
(128, 128, 3)
宽度:128,高度:128,通道:3
图片形状: (128, 128, 3)
图片宽度: 128
图片高度: 128
图片通道: 3
常用的色彩模式有:HSB、RGB、CMYK、LAB、灰度、位图、双色调、索引颜色和多通道等,每个颜色模式都有其特殊的用途,最常用的是RGB模式、CMYK模式以及HSB模式。
1.HSB色彩模式 HSB由来:H(hue)表示色相;S(saturation)表示饱和度;B(brightness)表示明度。HSB是色相、饱和度、明度的相应英文首字母缩写。平常表述颜色时,一般用的就是HSB模式,因为人眼看到的就是色相、饱和度、明度。
色相(hue)

饱和度(saturation)

表示图像颜色的浓度、鲜艳程度。 - 通俗的讲就是颜色的深浅,如红色可以分为深红、洋红、浅红等。 - 饱和度高色彩较艳丽,饱和度低色彩就接近灰色。 - 白、黑和其他灰色色彩都没有饱和度。
明度(brightness)

也称为亮度,指各种颜色的明暗度。 - 通俗的讲就是表示颜色的强度。 - 明度高色彩明亮,明度低色彩暗淡,明度最高得到纯白,最低得到纯黑。
三者的等级表示:
色相以度为划分,饱和度和明度以百分比划分。

2.RGB模式 RGB称为光学三原色,R(red)红、G(green)绿、B(blue)蓝。光学三原色混合后,组成显示屏显示颜色,三原色同时相加为白色,白色属于无色系(黑白灰)中的一种。

3.CMYK模式
CMYK由四色构成,青色Cyan、品红色Magenta、抄黄色Yellow。而K取的是black最后百一个字母,为了避免与蓝色混淆而用K。CMYK也称作印刷色彩模式,是一种依靠反光的色彩模式,需要有外界光源的情况下才可以看到的。在问印刷品上看到的图像,就是CMYK模式表现的。比如期刊、杂志、报纸、宣传画册等,都是运用了CMYK模式。


4.什么时候运用到RGB什么时候运用到CMYK?
RGB: R.红色(Red) G.绿色(Green) B.蓝色(Blue) CMYK: C. 青色(Cyan) M. 洋红色(Magenta) Y. 黄色(Yellow) K. 黑色(blacK) RGB是光学三原色,所以普遍用于电视、电脑 CMYK是印刷用的颜色,所有彩版色打印权机都装着4个墨盒, CMYK是彩色印刷时采用的一种套色模式,利用青色(Cyan)、洋红色(Magenta)、黄色(Yellow),加上黑色油墨,共计四种颜色混合叠加,形成所谓“全彩印刷”。如果你的图片是用来发布在网络,那用RGB 如果你的图片需要打印,那就用CMYK,因为打印机直接打印RGB的图片会发生色彩失真,所以简单来说就是我们一般用photoshop绘画时候只需要发布到网上,或者以图片保存就用RGB,如果我们需要打印出来,比如一些海报之类的我们就用CMYK。
一般对于初学者我们只需要记住程序处理图像时一般都是使用RGB就可以了。
每个像素的颜色通常由一组数字表示,这些数字对应于红色、绿色和蓝色(RGB)的强度值。在数字图像中,这些值通常是0到255之间的整数。这意味着计算机通过这些数值来“看”颜色。颜色编码是图像处理中的一个重要概念,因为它决定了图像的色调和饱和度。通过调整这些值,可以改变图像的整体外观,或者突出特定的颜色。
注意:OpenCV读取图片默认使用的是 BGR(Blue-Green-Red)格式。
下面是OpenCV使用BGR和RGB模式读取图片像素颜色案例。
import cv2
import numpy as np
# 步骤 1: 读取图像
image1 = cv2.imread('images/png/red.png')
image2 = cv2.imread('images/jpg/red.jpg')
# 步骤 2: 如果需要,将图像从BGR转换到RGB(可选)
image_rgb1 = cv2.cvtColor(image1, cv2.COLOR_BGR2RGB)
image_rgb2 = cv2.cvtColor(image2, cv2.COLOR_BGR2RGB)
x, y = 10, 20 # 假设我们要访问的像素位置
pixel_value1 = image1[y, x] # 直接使用NumPy索引访问
pixel_value2 = image2[y, x] # 直接使用NumPy索引访问
print("----------BGR模式读取----------")
print("PNG image Pixel value at position ({}, {}): {}".format(x, y, pixel_value1))
print("JPG image Pixel value at position ({}, {}): {}".format(x, y, pixel_value2))
# 步骤 3: 访问像素值
x, y = 10, 20 # 假设我们要访问的像素位置
pixel_value1 = image_rgb1[y, x] # 直接使用NumPy索引访问
pixel_value2 = image_rgb2[y, x] # 直接使用NumPy索引访问
print("----------RGB模式读取----------")
print("PNG image Pixel value at position ({}, {}): {}".format(x, y, pixel_value1))
print("JPG image Pixel value at position ({}, {}): {}".format(x, y, pixel_value2))
运行结果:
----------BGR模式读取----------
PNG image Pixel value at position (10, 20): [ 0 0 255]
JPG image Pixel value at position (10, 20): [ 0 0 254]
----------RGB模式读取----------
PNG image Pixel value at position (10, 20): [255 0 0]
JPG image Pixel value at position (10, 20): [254 0 0]
这里我们分别测试读取了两个纯红色背景的图片,一个是jpg格式另一个png格式。由于jpg格式是有损压缩,所以再读取一个纯红色像素点时,显示的颜色值为[0,0,254]或者[254,0,0]。而png格式采用无损压缩,所以可以精确读取一个纯红色的像素点,显示颜色值为[0,0,255]或者[255,0,0]。
下面是opencv读取图片分离出图片的B,R,G颜色通道,并且打印每个通道的像素矩阵。
import cv2
import numpy as np
import cv2 as cv
# 步骤 1: 读取图像
image = cv2.imread('images/png/red_small.png')
print("图片形状:",image.shape)
height,width = image.shape[:2]
# 检查图片是否成功加载
if image is None:
print("Error: Image could not be read.")
else:
# 分割颜色通道
b, g, r = cv2.split(image)
# 输出每个通道的形状(可选)
print("Blue channel shape:", b.shape)
print("Green channel shape:", g.shape)
print("Red channel shape:", r.shape)
# 如果你想查看某个通道的像素值,可以打印出来看看
# 例如,打印蓝色通道的第一个像素的值
print("---------------Blue Channel----------------")
for i in range (0,width):
print("[",end="")
for j in range (0,height):
print(b[i, j]," ",end="")
print("]")
print("---------------Green Channel----------------")
for i in range (0,width):
print("[",end="")
for j in range (0,height):
print(g[i, j]," ",end="")
print("]")
print("---------------Red Channel----------------")
for i in range (0,width):
print("[",end="")
for j in range (0,height):
print(r[i, j]," ",end="")
print("]")
运行结果:
图片形状: (40, 40, 3)
Blue channel shape: (40, 40)
Green channel shape: (40, 40)
Red channel shape: (40, 40)
---------------Blue Channel----------------
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
---------------Green Channel----------------
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ]
---------------Red Channel----------------
[255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 ]
[255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 ]
[255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 ]
[255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 ]
[255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 ]
[255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 ]
[255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 ]
[255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 ]
[255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 ]
[255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 ]
[255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 ]
[255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 ]
[255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 ]
[255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 ]
[255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 ]
[255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 ]
[255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 ]
[255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 ]
[255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 ]
[255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 ]
[255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 ]
[255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 ]
[255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 ]
[255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 ]
[255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 ]
[255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 ]
[255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 ]
[255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 ]
[255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 ]
[255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 ]
[255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 ]
[255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 ]
[255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 ]
[255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 ]
[255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 ]
[255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 ]
[255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 ]
[255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 ]
[255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 ]
[255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 ]