commit a190933e3518d5196bbdbd0999df459d6be4ee25
Author: nizhangdaye <2508022039@qq.com>
Date: Mon Jun 17 18:08:24 2024 +0800
第一次递交:能够实现图片分割,开头数字识别
diff --git a/.idea/.gitignore b/.idea/.gitignore
new file mode 100644
index 0000000..359bb53
--- /dev/null
+++ b/.idea/.gitignore
@@ -0,0 +1,3 @@
+# 默认忽略的文件
+/shelf/
+/workspace.xml
diff --git a/.idea/.name b/.idea/.name
new file mode 100644
index 0000000..ac0be0d
--- /dev/null
+++ b/.idea/.name
@@ -0,0 +1 @@
+TLD_Code
\ No newline at end of file
diff --git a/.idea/TLD_Code.iml b/.idea/TLD_Code.iml
new file mode 100644
index 0000000..e61883f
--- /dev/null
+++ b/.idea/TLD_Code.iml
@@ -0,0 +1,8 @@
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/deployment.xml b/.idea/deployment.xml
new file mode 100644
index 0000000..fef5aab
--- /dev/null
+++ b/.idea/deployment.xml
@@ -0,0 +1,14 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/inspectionProfiles/Project_Default.xml b/.idea/inspectionProfiles/Project_Default.xml
new file mode 100644
index 0000000..9bf1c57
--- /dev/null
+++ b/.idea/inspectionProfiles/Project_Default.xml
@@ -0,0 +1,20 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/inspectionProfiles/profiles_settings.xml b/.idea/inspectionProfiles/profiles_settings.xml
new file mode 100644
index 0000000..105ce2d
--- /dev/null
+++ b/.idea/inspectionProfiles/profiles_settings.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/misc.xml b/.idea/misc.xml
new file mode 100644
index 0000000..1e4b6b5
--- /dev/null
+++ b/.idea/misc.xml
@@ -0,0 +1,7 @@
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/modules.xml b/.idea/modules.xml
new file mode 100644
index 0000000..d381cb9
--- /dev/null
+++ b/.idea/modules.xml
@@ -0,0 +1,8 @@
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/vcs.xml b/.idea/vcs.xml
new file mode 100644
index 0000000..94a25f7
--- /dev/null
+++ b/.idea/vcs.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/data/1-D2K286+520-300GD P_1.JPG b/data/1-D2K286+520-300GD P_1.JPG
new file mode 100644
index 0000000..4588750
Binary files /dev/null and b/data/1-D2K286+520-300GD P_1.JPG differ
diff --git a/data/1-D2K999+150-D2K999+350-ZQ-12 P_1.JPG b/data/1-D2K999+150-D2K999+350-ZQ-12 P_1.JPG
new file mode 100644
index 0000000..00730fa
Binary files /dev/null and b/data/1-D2K999+150-D2K999+350-ZQ-12 P_1.JPG differ
diff --git a/data/1-DK199+530-470GD.JPG b/data/1-DK199+530-470GD.JPG
new file mode 100644
index 0000000..63e7003
Binary files /dev/null and b/data/1-DK199+530-470GD.JPG differ
diff --git a/data/2-DK199+580-530GD.JPG b/data/2-DK199+580-530GD.JPG
new file mode 100644
index 0000000..8aa872f
Binary files /dev/null and b/data/2-DK199+580-530GD.JPG differ
diff --git a/data/3-DK199+635-580GD.JPG b/data/3-DK199+635-580GD.JPG
new file mode 100644
index 0000000..7eaa197
Binary files /dev/null and b/data/3-DK199+635-580GD.JPG differ
diff --git a/data/4-DK199+000-DK198+920YY P_111.JPG b/data/4-DK199+000-DK198+920YY P_111.JPG
new file mode 100644
index 0000000..ce018a7
Binary files /dev/null and b/data/4-DK199+000-DK198+920YY P_111.JPG differ
diff --git a/data/5-DK199+680-635GD.JPG b/data/5-DK199+680-635GD.JPG
new file mode 100644
index 0000000..5bf6f0d
Binary files /dev/null and b/data/5-DK199+680-635GD.JPG differ
diff --git a/data/7-D2K285+600-845GD P_1.JPG b/data/7-D2K285+600-845GD P_1.JPG
new file mode 100644
index 0000000..7c7b4c7
Binary files /dev/null and b/data/7-D2K285+600-845GD P_1.JPG differ
diff --git a/data/num/num_0.png b/data/num/num_0.png
new file mode 100644
index 0000000..257639e
Binary files /dev/null and b/data/num/num_0.png differ
diff --git a/data/num/num_1.png b/data/num/num_1.png
new file mode 100644
index 0000000..fb660ae
Binary files /dev/null and b/data/num/num_1.png differ
diff --git a/data/num/num_2.png b/data/num/num_2.png
new file mode 100644
index 0000000..a6802c0
Binary files /dev/null and b/data/num/num_2.png differ
diff --git a/data/num/num_3.png b/data/num/num_3.png
new file mode 100644
index 0000000..0307c70
Binary files /dev/null and b/data/num/num_3.png differ
diff --git a/data/num/num_4.png b/data/num/num_4.png
new file mode 100644
index 0000000..e45f7c8
Binary files /dev/null and b/data/num/num_4.png differ
diff --git a/data/num/num_5.png b/data/num/num_5.png
new file mode 100644
index 0000000..2fc4923
Binary files /dev/null and b/data/num/num_5.png differ
diff --git a/data/num/num_6.png b/data/num/num_6.png
new file mode 100644
index 0000000..cde3212
Binary files /dev/null and b/data/num/num_6.png differ
diff --git a/data/num/num_7.png b/data/num/num_7.png
new file mode 100644
index 0000000..d224c5e
Binary files /dev/null and b/data/num/num_7.png differ
diff --git a/data/num/num_8.png b/data/num/num_8.png
new file mode 100644
index 0000000..d9bfa9b
Binary files /dev/null and b/data/num/num_8.png differ
diff --git a/data/num/num_9.png b/data/num/num_9.png
new file mode 100644
index 0000000..d7324af
Binary files /dev/null and b/data/num/num_9.png differ
diff --git a/data/num1.PNG b/data/num1.PNG
new file mode 100644
index 0000000..5b12d10
Binary files /dev/null and b/data/num1.PNG differ
diff --git a/data/num2.PNG b/data/num2.PNG
new file mode 100644
index 0000000..9aaeff2
Binary files /dev/null and b/data/num2.PNG differ
diff --git a/data/num3.PNG b/data/num3.PNG
new file mode 100644
index 0000000..2fcf5ea
Binary files /dev/null and b/data/num3.PNG differ
diff --git a/data/num4.PNG b/data/num4.PNG
new file mode 100644
index 0000000..da4f15f
Binary files /dev/null and b/data/num4.PNG differ
diff --git a/data/saved_img/data_interest.PNG b/data/saved_img/data_interest.PNG
new file mode 100644
index 0000000..bf4118a
Binary files /dev/null and b/data/saved_img/data_interest.PNG differ
diff --git a/data/saved_img/image_1.PNG b/data/saved_img/image_1.PNG
new file mode 100644
index 0000000..ae4e177
Binary files /dev/null and b/data/saved_img/image_1.PNG differ
diff --git a/data/saved_img/image_10.PNG b/data/saved_img/image_10.PNG
new file mode 100644
index 0000000..c42de58
Binary files /dev/null and b/data/saved_img/image_10.PNG differ
diff --git a/data/saved_img/image_11.PNG b/data/saved_img/image_11.PNG
new file mode 100644
index 0000000..53011df
Binary files /dev/null and b/data/saved_img/image_11.PNG differ
diff --git a/data/saved_img/image_12.PNG b/data/saved_img/image_12.PNG
new file mode 100644
index 0000000..ef18f06
Binary files /dev/null and b/data/saved_img/image_12.PNG differ
diff --git a/data/saved_img/image_13.PNG b/data/saved_img/image_13.PNG
new file mode 100644
index 0000000..41fb27b
Binary files /dev/null and b/data/saved_img/image_13.PNG differ
diff --git a/data/saved_img/image_14.PNG b/data/saved_img/image_14.PNG
new file mode 100644
index 0000000..fbbf705
Binary files /dev/null and b/data/saved_img/image_14.PNG differ
diff --git a/data/saved_img/image_15.PNG b/data/saved_img/image_15.PNG
new file mode 100644
index 0000000..19b2fe5
Binary files /dev/null and b/data/saved_img/image_15.PNG differ
diff --git a/data/saved_img/image_16.PNG b/data/saved_img/image_16.PNG
new file mode 100644
index 0000000..0bb19f4
Binary files /dev/null and b/data/saved_img/image_16.PNG differ
diff --git a/data/saved_img/image_17.PNG b/data/saved_img/image_17.PNG
new file mode 100644
index 0000000..adfab3d
Binary files /dev/null and b/data/saved_img/image_17.PNG differ
diff --git a/data/saved_img/image_18.PNG b/data/saved_img/image_18.PNG
new file mode 100644
index 0000000..b726efe
Binary files /dev/null and b/data/saved_img/image_18.PNG differ
diff --git a/data/saved_img/image_19.PNG b/data/saved_img/image_19.PNG
new file mode 100644
index 0000000..ee9d10b
Binary files /dev/null and b/data/saved_img/image_19.PNG differ
diff --git a/data/saved_img/image_2.PNG b/data/saved_img/image_2.PNG
new file mode 100644
index 0000000..915660c
Binary files /dev/null and b/data/saved_img/image_2.PNG differ
diff --git a/data/saved_img/image_20.PNG b/data/saved_img/image_20.PNG
new file mode 100644
index 0000000..14aeebd
Binary files /dev/null and b/data/saved_img/image_20.PNG differ
diff --git a/data/saved_img/image_21.PNG b/data/saved_img/image_21.PNG
new file mode 100644
index 0000000..3d294aa
Binary files /dev/null and b/data/saved_img/image_21.PNG differ
diff --git a/data/saved_img/image_22.PNG b/data/saved_img/image_22.PNG
new file mode 100644
index 0000000..3d296fb
Binary files /dev/null and b/data/saved_img/image_22.PNG differ
diff --git a/data/saved_img/image_23.PNG b/data/saved_img/image_23.PNG
new file mode 100644
index 0000000..b276503
Binary files /dev/null and b/data/saved_img/image_23.PNG differ
diff --git a/data/saved_img/image_24.PNG b/data/saved_img/image_24.PNG
new file mode 100644
index 0000000..c8d91f5
Binary files /dev/null and b/data/saved_img/image_24.PNG differ
diff --git a/data/saved_img/image_25.PNG b/data/saved_img/image_25.PNG
new file mode 100644
index 0000000..d948048
Binary files /dev/null and b/data/saved_img/image_25.PNG differ
diff --git a/data/saved_img/image_26.PNG b/data/saved_img/image_26.PNG
new file mode 100644
index 0000000..49340f7
Binary files /dev/null and b/data/saved_img/image_26.PNG differ
diff --git a/data/saved_img/image_27.PNG b/data/saved_img/image_27.PNG
new file mode 100644
index 0000000..a901ec6
Binary files /dev/null and b/data/saved_img/image_27.PNG differ
diff --git a/data/saved_img/image_28.PNG b/data/saved_img/image_28.PNG
new file mode 100644
index 0000000..315a3e7
Binary files /dev/null and b/data/saved_img/image_28.PNG differ
diff --git a/data/saved_img/image_29.PNG b/data/saved_img/image_29.PNG
new file mode 100644
index 0000000..247e7a7
Binary files /dev/null and b/data/saved_img/image_29.PNG differ
diff --git a/data/saved_img/image_3.PNG b/data/saved_img/image_3.PNG
new file mode 100644
index 0000000..d4d2f57
Binary files /dev/null and b/data/saved_img/image_3.PNG differ
diff --git a/data/saved_img/image_30.PNG b/data/saved_img/image_30.PNG
new file mode 100644
index 0000000..1f4a5f6
Binary files /dev/null and b/data/saved_img/image_30.PNG differ
diff --git a/data/saved_img/image_31.PNG b/data/saved_img/image_31.PNG
new file mode 100644
index 0000000..1afc6c2
Binary files /dev/null and b/data/saved_img/image_31.PNG differ
diff --git a/data/saved_img/image_32.PNG b/data/saved_img/image_32.PNG
new file mode 100644
index 0000000..aed3c92
Binary files /dev/null and b/data/saved_img/image_32.PNG differ
diff --git a/data/saved_img/image_33.PNG b/data/saved_img/image_33.PNG
new file mode 100644
index 0000000..f1a19e9
Binary files /dev/null and b/data/saved_img/image_33.PNG differ
diff --git a/data/saved_img/image_34.PNG b/data/saved_img/image_34.PNG
new file mode 100644
index 0000000..341dd45
Binary files /dev/null and b/data/saved_img/image_34.PNG differ
diff --git a/data/saved_img/image_35.PNG b/data/saved_img/image_35.PNG
new file mode 100644
index 0000000..9a37b4b
Binary files /dev/null and b/data/saved_img/image_35.PNG differ
diff --git a/data/saved_img/image_36.PNG b/data/saved_img/image_36.PNG
new file mode 100644
index 0000000..6481eae
Binary files /dev/null and b/data/saved_img/image_36.PNG differ
diff --git a/data/saved_img/image_37.PNG b/data/saved_img/image_37.PNG
new file mode 100644
index 0000000..87bd1b4
Binary files /dev/null and b/data/saved_img/image_37.PNG differ
diff --git a/data/saved_img/image_38.PNG b/data/saved_img/image_38.PNG
new file mode 100644
index 0000000..f054105
Binary files /dev/null and b/data/saved_img/image_38.PNG differ
diff --git a/data/saved_img/image_39.PNG b/data/saved_img/image_39.PNG
new file mode 100644
index 0000000..147ed5d
Binary files /dev/null and b/data/saved_img/image_39.PNG differ
diff --git a/data/saved_img/image_4.PNG b/data/saved_img/image_4.PNG
new file mode 100644
index 0000000..dc97029
Binary files /dev/null and b/data/saved_img/image_4.PNG differ
diff --git a/data/saved_img/image_40.PNG b/data/saved_img/image_40.PNG
new file mode 100644
index 0000000..2556b6e
Binary files /dev/null and b/data/saved_img/image_40.PNG differ
diff --git a/data/saved_img/image_41.PNG b/data/saved_img/image_41.PNG
new file mode 100644
index 0000000..dff0401
Binary files /dev/null and b/data/saved_img/image_41.PNG differ
diff --git a/data/saved_img/image_42.PNG b/data/saved_img/image_42.PNG
new file mode 100644
index 0000000..99f0e56
Binary files /dev/null and b/data/saved_img/image_42.PNG differ
diff --git a/data/saved_img/image_43.PNG b/data/saved_img/image_43.PNG
new file mode 100644
index 0000000..271ea14
Binary files /dev/null and b/data/saved_img/image_43.PNG differ
diff --git a/data/saved_img/image_44.PNG b/data/saved_img/image_44.PNG
new file mode 100644
index 0000000..b5c119e
Binary files /dev/null and b/data/saved_img/image_44.PNG differ
diff --git a/data/saved_img/image_5.PNG b/data/saved_img/image_5.PNG
new file mode 100644
index 0000000..5213728
Binary files /dev/null and b/data/saved_img/image_5.PNG differ
diff --git a/data/saved_img/image_6.PNG b/data/saved_img/image_6.PNG
new file mode 100644
index 0000000..e4e21ba
Binary files /dev/null and b/data/saved_img/image_6.PNG differ
diff --git a/data/saved_img/image_7.PNG b/data/saved_img/image_7.PNG
new file mode 100644
index 0000000..a305e51
Binary files /dev/null and b/data/saved_img/image_7.PNG differ
diff --git a/data/saved_img/image_8.PNG b/data/saved_img/image_8.PNG
new file mode 100644
index 0000000..0fac583
Binary files /dev/null and b/data/saved_img/image_8.PNG differ
diff --git a/data/saved_img/image_9.PNG b/data/saved_img/image_9.PNG
new file mode 100644
index 0000000..a5b9292
Binary files /dev/null and b/data/saved_img/image_9.PNG differ
diff --git a/data/saved_img/number_interest.PNG b/data/saved_img/number_interest.PNG
new file mode 100644
index 0000000..be3d40d
Binary files /dev/null and b/data/saved_img/number_interest.PNG differ
diff --git a/data/无效/image_29.PNG b/data/无效/image_29.PNG
new file mode 100644
index 0000000..247e7a7
Binary files /dev/null and b/data/无效/image_29.PNG differ
diff --git a/data/无效/image_30.PNG b/data/无效/image_30.PNG
new file mode 100644
index 0000000..1f4a5f6
Binary files /dev/null and b/data/无效/image_30.PNG differ
diff --git a/data/无效/image_31.PNG b/data/无效/image_31.PNG
new file mode 100644
index 0000000..1afc6c2
Binary files /dev/null and b/data/无效/image_31.PNG differ
diff --git a/data/无效/image_32.PNG b/data/无效/image_32.PNG
new file mode 100644
index 0000000..aed3c92
Binary files /dev/null and b/data/无效/image_32.PNG differ
diff --git a/data/无效/image_33.PNG b/data/无效/image_33.PNG
new file mode 100644
index 0000000..f1a19e9
Binary files /dev/null and b/data/无效/image_33.PNG differ
diff --git a/img_processing.py b/img_processing.py
new file mode 100644
index 0000000..264eafd
--- /dev/null
+++ b/img_processing.py
@@ -0,0 +1,89 @@
+import cv2 as cv
+import numpy as np
+from matplotlib import pyplot as plt
+import number_processing
+
+
+def cv_show(name, img):
+ """定义cv_show函数,用于显示图像"""
+ cv.namedWindow(name, cv.WINDOW_NORMAL) # 窗口大小可调
+ cv.resizeWindow(name, img.shape[1], img.shape[0]) # 窗口大小可调
+ cv.imshow(name, img)
+ cv.waitKey(0)
+ cv.destroyAllWindows()
+
+
+def cv_info(name, img):
+ """
+ 定义cv_info函数,确认图像是否成功读取,并且打印图像的基本信息
+ """
+ print(f"图像 {name} 信息如下:")
+ if img is None:
+ print("无法读取图像")
+ else:
+ print("图像数据类型:", img.dtype)
+ print("图像类型:", type(img))
+ print("图像尺寸:", img.shape)
+ print("图像行数:", img.shape[0])
+ print("图像列数:", img.shape[1])
+ print()
+
+
+def find_line(img):
+ """
+ 定义find_line函数,用于寻找分界线
+ 返回一段图像的宽度
+ """
+ for i in range(img.shape[1]): # 遍历 a 列
+ if np.all(img[0, i] >= [230, 230, 230]):
+ # 求该列像素均值,判断是否为白色
+ mean = np.mean(img[:, i])
+ if mean >= 240: # 像素均值大于 230 判断为白色
+ print(f"分界线位置:{i}, 像素均值:{mean}", end="\n\n")
+ return i
+ return -1 # 如果没有找到符合条件的分界线,则返回图像的宽度
+
+
+def split_img(img):
+ """
+ 定义split_img函数,用于将图像分割并保存
+ 无返回值
+ """
+ img_width = find_line(img) # 返回图像的宽度
+ n = 0 # 用于计数分割得到的图像数
+ for i in range(0, img.shape[1], img_width + 1): # 遍历 img 的每一列
+ image = img[:, i: i + img_width]
+ n += 1
+ cv.imwrite(f"data/saved_img/image_{n}.PNG", image) # 保存图片 无损压缩格式 PNG
+
+
+def split_num(img):
+ """
+ 定义split_num函数,用于分割数字并保存
+ 返回数字
+ """
+ # 将彩色图像转化为灰度图像
+ img_gray = cv.cvtColor(img, cv.COLOR_BGR2GRAY)
+ # 二值化处理,你可以根据需要调整阈值
+ _, thresh = cv.threshold(img_gray, 128, 255, cv.THRESH_BINARY_INV)
+ # 查找轮廓
+ contours, _ = cv.findContours(thresh, cv.RETR_EXTERNAL, cv.CHAIN_APPROX_SIMPLE)
+ # 对轮廓进行排序,以便从左到右处理数字(可选)
+ contours = sorted(contours, key=lambda x: cv.boundingRect(x)[0])
+
+ # 用于存储识别出的数字字符串
+ recognized_digits = []
+
+ # 遍历每个轮廓,并保存每个数字的图片
+ for i, contour in enumerate(contours):
+ x, y, w, h = cv.boundingRect(contour)
+ digit = thresh[y:y + h, x:x + w]
+ # print(f"第{i+1}个数字的尺寸:{digit.shape[0]}")
+ if digit.shape[0] < 5: # 小数点的轮廓太小,跳过
+ break
+
+ recognized_digits.append(str(number_processing.num_list.index(digit.tolist())))
+
+ # # 保存数字图片
+ # cv.imwrite(f'data/saved_img/digit_{i}.png', digit)
+ return int("".join(recognized_digits))
diff --git a/mian.py b/mian.py
new file mode 100644
index 0000000..8a0f857
--- /dev/null
+++ b/mian.py
@@ -0,0 +1,30 @@
+import cv2 as cv
+import numpy as np
+from matplotlib import pyplot as plt
+import img_processing as ip
+
+print(cv.__version__)
+
+img_path = 'data/1-D2K286+520-300GD P_1.JPG'
+img = cv.imread(img_path, cv.IMREAD_COLOR) # 读取图像 三通道彩色图
+
+# 起始点假设为固定位置,即 44 行,65 列
+data_interest = img[44:, 65:-2] # 感兴趣的数据区域
+number_interest = img[8:20, 64:175] # 感兴趣的数字区域 横向
+
+ip.cv_info(f"data_interest", data_interest)
+ip.cv_info(f"number_interest", number_interest)
+
+# 切割图像
+ip.split_img(data_interest)
+
+# 获取数字
+num = ip.split_num(number_interest)
+print(type(num))
+print(num)
+
+# gi.cv_show('data', data_interest)
+# gi.cv_show('number', a)
+
+cv.imwrite('data/saved_img/data_interest.PNG', data_interest) # 保存图片
+cv.imwrite('data/saved_img/number_interest.PNG', number_interest) # 保存图片
diff --git a/number_processing.py b/number_processing.py
new file mode 100644
index 0000000..e4fa947
--- /dev/null
+++ b/number_processing.py
@@ -0,0 +1,61 @@
+import cv2
+import os
+
+
+def get_num_list(folder_path):
+ """
+ 读取文件夹中的所有.png格式图片,并进行二值化处理,并返回包含二值化图片的列表。
+ """
+ binary_images = []
+ # 遍历文件夹中的所有文件
+ for filename in sorted(os.listdir(folder_path)):
+ # 检查文件是否是.png格式
+ if filename.endswith('.png'):
+ # 构建图片的完整路径
+ img_path = os.path.join(folder_path, filename)
+
+ # 使用OpenCV读取图片为灰度图
+ img = cv2.imread(img_path, cv2.IMREAD_GRAYSCALE)
+
+ # 检查图片是否成功读取
+ if img is not None:
+ # 使用阈值进行二值化处理
+ # 假设我们使用127作为阈值,但这可以根据你的需求进行调整
+ _, binary_img = cv2.threshold(img, 127, 255, cv2.THRESH_BINARY)
+
+ # 将二值化后的图片添加到列表中
+ binary_images.append(binary_img.tolist())
+
+ return binary_images
+
+
+num_list = [
+ [[0, 255, 255, 255, 255, 0], [255, 255, 0, 0, 255, 255], [255, 255, 0, 0, 255, 255], [255, 255, 0, 0, 255, 255],
+ [255, 255, 0, 0, 255, 255], [255, 255, 0, 0, 255, 255], [255, 255, 0, 0, 255, 255], [255, 255, 0, 0, 255, 255],
+ [255, 255, 0, 0, 255, 255], [0, 255, 255, 255, 255, 0]],
+ [[0, 0, 255, 255], [255, 255, 255, 255], [0, 0, 255, 255], [0, 0, 255, 255], [0, 0, 255, 255], [0, 0, 255, 255],
+ [0, 0, 255, 255], [0, 0, 255, 255], [0, 0, 255, 255], [0, 0, 255, 255]],
+ [[0, 255, 255, 255, 255, 0], [255, 255, 0, 0, 255, 255], [255, 255, 0, 0, 255, 255], [0, 0, 0, 0, 255, 255],
+ [0, 0, 0, 255, 255, 0], [0, 0, 255, 255, 0, 0], [0, 255, 255, 0, 0, 0], [255, 255, 0, 0, 0, 0],
+ [255, 255, 0, 0, 0, 0], [255, 255, 255, 255, 255, 255]],
+ [[0, 255, 255, 255, 255, 0], [255, 255, 0, 0, 255, 255], [0, 0, 0, 0, 255, 255], [0, 0, 0, 0, 255, 255],
+ [0, 0, 255, 255, 255, 0], [0, 0, 0, 0, 255, 255], [0, 0, 0, 0, 255, 255], [0, 0, 0, 0, 255, 255],
+ [255, 255, 0, 0, 255, 255], [0, 255, 255, 255, 255, 0]],
+ [[0, 0, 0, 0, 255, 255], [0, 0, 0, 255, 255, 255], [0, 0, 255, 255, 255, 255], [0, 0, 255, 255, 255, 255],
+ [0, 255, 255, 0, 255, 255], [0, 255, 255, 0, 255, 255], [255, 255, 0, 0, 255, 255], [255, 255, 255, 255, 255, 255],
+ [0, 0, 0, 0, 255, 255], [0, 0, 0, 0, 255, 255]],
+ [[255, 255, 255, 255, 255, 255], [255, 255, 0, 0, 0, 0], [255, 255, 0, 0, 0, 0], [255, 255, 0, 0, 0, 0],
+ [255, 255, 255, 255, 255, 0], [255, 255, 0, 0, 255, 255], [0, 0, 0, 0, 255, 255], [0, 0, 0, 0, 255, 255],
+ [255, 255, 0, 0, 255, 255], [0, 255, 255, 255, 255, 0]],
+ [[0, 255, 255, 255, 255, 0], [255, 255, 0, 0, 255, 255], [255, 255, 0, 0, 0, 0], [255, 255, 0, 0, 0, 0],
+ [255, 255, 255, 255, 255, 0], [255, 255, 0, 0, 255, 255], [255, 255, 0, 0, 255, 255], [255, 255, 0, 0, 255, 255],
+ [255, 255, 0, 0, 255, 255], [0, 255, 255, 255, 255, 0]],
+ [[255, 255, 255, 255, 255, 255], [0, 0, 0, 0, 255, 255], [0, 0, 0, 255, 255, 0], [0, 0, 0, 255, 255, 0],
+ [0, 0, 255, 255, 0, 0], [0, 0, 255, 255, 0, 0], [0, 0, 255, 255, 0, 0], [0, 255, 255, 0, 0, 0],
+ [0, 255, 255, 0, 0, 0], [0, 255, 255, 0, 0, 0]],
+ [[0, 255, 255, 255, 255, 0], [255, 255, 0, 0, 255, 255], [255, 255, 0, 0, 255, 255], [255, 255, 0, 0, 255, 255],
+ [0, 255, 255, 255, 255, 0], [255, 255, 0, 0, 255, 255], [255, 255, 0, 0, 255, 255], [255, 255, 0, 0, 255, 255],
+ [255, 255, 0, 0, 255, 255], [0, 255, 255, 255, 255, 0]],
+ [[0, 255, 255, 255, 255, 0], [255, 255, 0, 0, 255, 255], [255, 255, 0, 0, 255, 255], [255, 255, 0, 0, 255, 255],
+ [255, 255, 0, 0, 255, 255], [0, 255, 255, 255, 255, 255], [0, 0, 0, 0, 255, 255], [0, 0, 0, 0, 255, 255],
+ [255, 255, 0, 0, 255, 255], [0, 255, 255, 255, 255, 0]]]