我的图像由一些离散的颜色组成,如绿色,蓝色,红色,黄色,海军蓝。我想阅读这个图像,并创建一个具有以下两个属性的数组:
P.S。:我在阅读图像方面遇到的所有问题都与rgb /像素有关。如果问题的目标被颠倒过来,This只是一个有用的问题,在这种情况下它可能与我提出的问题类似。
答案 0 :(得分:1)
不确定这是否接近你想要的,但如果我使用安装在大多数Linux发行版上并可用于OSX和Windows的ImageMagick,我可以在终端中运行此命令:
convert image.png -alpha off -colors 6 -sample 50x20! result.png
而且,如果我要求输出文本而不是图像,我会得到这个:
convert image.png -alpha off -colors 6 -sample 50x20! txt:
# ImageMagick pixel enumeration: 50,20,255,srgb
0,0: (47517,15011,17755) #B93A45 srgb(185,58,69)
1,0: (50918,44309,39507) #C6AC9A srgb(198,172,154)
2,0: (17144,20406,18979) #434F4A srgb(67,79,74)
3,0: (52533,46293,16329) #CCB440 srgb(204,180,64)
4,0: (52533,46293,16329) #CCB440 srgb(204,180,64)
5,0: (50918,44309,39507) #C6AC9A srgb(198,172,154)
6,0: (47517,15011,17755) #B93A45 srgb(185,58,69)
7,0: (52533,46293,16329) #CCB440 srgb(204,180,64)
8,0: (50918,44309,39507) #C6AC9A srgb(198,172,154)
9,0: (50918,44309,39507) #C6AC9A srgb(198,172,154)
10,0: (50918,44309,39507) #C6AC9A srgb(198,172,154)
11,0: (50918,44309,39507) #C6AC9A srgb(198,172,154)
12,0: (17144,20406,18979) #434F4A srgb(67,79,74)
13,0: (52533,46293,16329) #CCB440 srgb(204,180,64)
14,0: (50918,44309,39507) #C6AC9A srgb(198,172,154)
15,0: (50918,44309,39507) #C6AC9A srgb(198,172,154)
16,0: (50918,44309,39507) #C6AC9A srgb(198,172,154)
17,0: (17144,20406,18979) #434F4A srgb(67,79,74)
18,0: (17144,20406,18979) #434F4A srgb(67,79,74)
19,0: (52533,46293,16329) #CCB440 srgb(204,180,64)
20,0: (47517,15011,17755) #B93A45 srgb(185,58,69)
21,0: (17144,20406,18979) #434F4A srgb(67,79,74)
22,0: (17144,20406,18979) #434F4A srgb(67,79,74)
23,0: (50918,44309,39507) #C6AC9A srgb(198,172,154)
24,0: (17144,20406,18979) #434F4A srgb(67,79,74)
25,0: (17144,20406,18979) #434F4A srgb(67,79,74)
26,0: (50918,44309,39507) #C6AC9A srgb(198,172,154)
27,0: (17144,20406,18979) #434F4A srgb(67,79,74)
28,0: (17144,20406,18979) #434F4A srgb(67,79,74)
29,0: (17144,20406,18979) #434F4A srgb(67,79,74)
30,0: (17144,20406,18979) #434F4A srgb(67,79,74)
31,0: (17144,20406,18979) #434F4A srgb(67,79,74)
32,0: (17144,20406,18979) #434F4A srgb(67,79,74)
33,0: (17144,20406,18979) #434F4A srgb(67,79,74)
34,0: (47517,15011,17755) #B93A45 srgb(185,58,69)
35,0: (17144,20406,18979) #434F4A srgb(67,79,74)
36,0: (17144,20406,18979) #434F4A srgb(67,79,74)
37,0: (17144,20406,18979) #434F4A srgb(67,79,74)
38,0: (17144,20406,18979) #434F4A srgb(67,79,74)
39,0: (47517,15011,17755) #B93A45 srgb(185,58,69)
40,0: (17144,20406,18979) #434F4A srgb(67,79,74)
41,0: (17144,20406,18979) #434F4A srgb(67,79,74)
42,0: (17144,20406,18979) #434F4A srgb(67,79,74)
43,0: (17144,20406,18979) #434F4A srgb(67,79,74)
44,0: (17144,20406,18979) #434F4A srgb(67,79,74)
45,0: (17144,20406,18979) #434F4A srgb(67,79,74)
46,0: (17144,20406,18979) #434F4A srgb(67,79,74)
47,0: (17144,20406,18979) #434F4A srgb(67,79,74)
48,0: (50918,44309,39507) #C6AC9A srgb(198,172,154)
49,0: (50918,44309,39507) #C6AC9A srgb(198,172,154)
0,1: (50918,44309,39507) #C6AC9A srgb(198,172,154)
1,1: (52533,46293,16329) #CCB440 srgb(204,180,64)
2,1: (50918,44309,39507) #C6AC9A srgb(198,172,154)
3,1: (52533,46293,16329) #CCB440 srgb(204,180,64)
4,1: (50918,44309,39507) #C6AC9A srgb(198,172,154)
5,1: (52533,46293,16329) #CCB440 srgb(204,180,64)
6,1: (52533,46293,16329) #CCB440 srgb(204,180,64)
7,1: (52533,46293,16329) #CCB440 srgb(204,180,64)
8,1: (52533,46293,16329) #CCB440 srgb(204,180,64)
9,1: (50918,44309,39507) #C6AC9A srgb(198,172,154)
10,1: (50918,44309,39507) #C6AC9A srgb(198,172,154)
11,1: (17144,20406,18979) #434F4A srgb(67,79,74)
12,1: (17144,20406,18979) #434F4A srgb(67,79,74)
13,1: (50918,44309,39507) #C6AC9A srgb(198,172,154)
14,1: (50918,44309,39507) #C6AC9A srgb(198,172,154)
15,1: (50918,44309,39507) #C6AC9A srgb(198,172,154)
16,1: (52533,46293,16329) #CCB440 srgb(204,180,64)
17,1: (50918,44309,39507) #C6AC9A srgb(198,172,154)
18,1: (50918,44309,39507) #C6AC9A srgb(198,172,154)
19,1: (52533,46293,16329) #CCB440 srgb(204,180,64)
20,1: (52533,46293,16329) #CCB440 srgb(204,180,64)
21,1: (52533,46293,16329) #CCB440 srgb(204,180,64)
22,1: (52533,46293,16329) #CCB440 srgb(204,180,64)
23,1: (50918,44309,39507) #C6AC9A srgb(198,172,154)
24,1: (50918,44309,39507) #C6AC9A srgb(198,172,154)
25,1: (17144,20406,18979) #434F4A srgb(67,79,74)
26,1: (50918,44309,39507) #C6AC9A srgb(198,172,154)
27,1: (52533,46293,16329) #CCB440 srgb(204,180,64)
28,1: (17144,20406,18979) #434F4A srgb(67,79,74)
29,1: (17144,20406,18979) #434F4A srgb(67,79,74)
30,1: (50918,44309,39507) #C6AC9A srgb(198,172,154)
31,1: (50918,44309,39507) #C6AC9A srgb(198,172,154)
32,1: (50918,44309,39507) #C6AC9A srgb(198,172,154)
33,1: (52533,46293,16329) #CCB440 srgb(204,180,64)
34,1: (50918,44309,39507) #C6AC9A srgb(198,172,154)
35,1: (52533,46293,16329) #CCB440 srgb(204,180,64)
36,1: (50918,44309,39507) #C6AC9A srgb(198,172,154)
37,1: (17144,20406,18979) #434F4A srgb(67,79,74)
38,1: (17144,20406,18979) #434F4A srgb(67,79,74)
39,1: (50918,44309,39507) #C6AC9A srgb(198,172,154)
40,1: (52533,46293,16329) #CCB440 srgb(204,180,64)
41,1: (50918,44309,39507) #C6AC9A srgb(198,172,154)
42,1: (52533,46293,16329) #CCB440 srgb(204,180,64)
43,1: (17144,20406,18979) #434F4A srgb(67,79,74)
44,1: (50918,44309,39507) #C6AC9A srgb(198,172,154)
45,1: (50918,44309,39507) #C6AC9A srgb(198,172,154)
46,1: (52533,46293,16329) #CCB440 srgb(204,180,64)
47,1: (52533,46293,16329) #CCB440 srgb(204,180,64)
48,1: (52533,46293,16329) #CCB440 srgb(204,180,64)
49,1: (52533,46293,16329) #CCB440 srgb(204,180,64)
0,2: (52533,46293,16329) #CCB440 srgb(204,180,64)
1,2: (52533,46293,16329) #CCB440 srgb(204,180,64)
2,2: (52533,46293,16329) #CCB440 srgb(204,180,64)
3,2: (52533,46293,16329) #CCB440 srgb(204,180,64)
4,2: (52533,46293,16329) #CCB440 srgb(204,180,64)
5,2: (50918,44309,39507) #C6AC9A srgb(198,172,154)
6,2: (50918,44309,39507) #C6AC9A srgb(198,172,154)
7,2: (50918,44309,39507) #C6AC9A srgb(198,172,154)
8,2: (50918,44309,39507) #C6AC9A srgb(198,172,154)
9,2: (47517,15011,17755) #B93A45 srgb(185,58,69)
10,2: (17144,20406,18979) #434F4A srgb(67,79,74)
11,2: (50918,44309,39507) #C6AC9A srgb(198,172,154)
12,2: (17144,20406,18979) #434F4A srgb(67,79,74)
13,2: (50918,44309,39507) #C6AC9A srgb(198,172,154)
14,2: (17144,20406,18979) #434F4A srgb(67,79,74)
15,2: (17144,20406,18979) #434F4A srgb(67,79,74)
16,2: (50918,44309,39507) #C6AC9A srgb(198,172,154)
17,2: (50918,44309,39507) #C6AC9A srgb(198,172,154)
18,2: (50918,44309,39507) #C6AC9A srgb(198,172,154)
19,2: (50918,44309,39507) #C6AC9A srgb(198,172,154)
20,2: (17144,20406,18979) #434F4A srgb(67,79,74)
21,2: (17144,20406,18979) #434F4A srgb(67,79,74)
22,2: (17144,20406,18979) #434F4A srgb(67,79,74)
23,2: (50918,44309,39507) #C6AC9A srgb(198,172,154)
24,2: (50918,44309,39507) #C6AC9A srgb(198,172,154)
25,2: (17144,20406,18979) #434F4A srgb(67,79,74)
26,2: (17144,20406,18979) #434F4A srgb(67,79,74)
27,2: (50918,44309,39507) #C6AC9A srgb(198,172,154)
28,2: (17144,20406,18979) #434F4A srgb(67,79,74)
29,2: (17144,20406,18979) #434F4A srgb(67,79,74)
30,2: (50918,44309,39507) #C6AC9A srgb(198,172,154)
31,2: (52533,46293,16329) #CCB440 srgb(204,180,64)
32,2: (52533,46293,16329) #CCB440 srgb(204,180,64)
33,2: (50918,44309,39507) #C6AC9A srgb(198,172,154)
34,2: (17144,20406,18979) #434F4A srgb(67,79,74)
35,2: (17144,20406,18979) #434F4A srgb(67,79,74)
36,2: (17144,20406,18979) #434F4A srgb(67,79,74)
37,2: (17144,20406,18979) #434F4A srgb(67,79,74)
38,2: (52533,46293,16329) #CCB440 srgb(204,180,64)
39,2: (52533,46293,16329) #CCB440 srgb(204,180,64)
40,2: (52533,46293,16329) #CCB440 srgb(204,180,64)
41,2: (52533,46293,16329) #CCB440 srgb(204,180,64)
42,2: (52533,46293,16329) #CCB440 srgb(204,180,64)
43,2: (50918,44309,39507) #C6AC9A srgb(198,172,154)
44,2: (52533,46293,16329) #CCB440 srgb(204,180,64)
45,2: (17144,20406,18979) #434F4A srgb(67,79,74)
46,2: (17144,20406,18979) #434F4A srgb(67,79,74)
47,2: (52533,46293,16329) #CCB440 srgb(204,180,64)
48,2: (52533,46293,16329) #CCB440 srgb(204,180,64)
49,2: (52533,46293,16329) #CCB440 srgb(204,180,64)
0,3: (50918,44309,39507) #C6AC9A srgb(198,172,154)
1,3: (50918,44309,39507) #C6AC9A srgb(198,172,154)
...
...
46,18: (50918,44309,39507) #C6AC9A srgb(198,172,154)
47,18: (50918,44309,39507) #C6AC9A srgb(198,172,154)
48,18: (17144,20406,18979) #434F4A srgb(67,79,74)
49,18: (50918,44309,39507) #C6AC9A srgb(198,172,154)
0,19: (50918,44309,39507) #C6AC9A srgb(198,172,154)
1,19: (52533,46293,16329) #CCB440 srgb(204,180,64)
2,19: (50918,44309,39507) #C6AC9A srgb(198,172,154)
3,19: (17144,20406,18979) #434F4A srgb(67,79,74)
4,19: (50918,44309,39507) #C6AC9A srgb(198,172,154)
5,19: (17144,20406,18979) #434F4A srgb(67,79,74)
6,19: (50918,44309,39507) #C6AC9A srgb(198,172,154)
7,19: (17144,20406,18979) #434F4A srgb(67,79,74)
8,19: (50918,44309,39507) #C6AC9A srgb(198,172,154)
9,19: (52533,46293,16329) #CCB440 srgb(204,180,64)
10,19: (50918,44309,39507) #C6AC9A srgb(198,172,154)
11,19: (17144,20406,18979) #434F4A srgb(67,79,74)
12,19: (17144,20406,18979) #434F4A srgb(67,79,74)
13,19: (50918,44309,39507) #C6AC9A srgb(198,172,154)
14,19: (17144,20406,18979) #434F4A srgb(67,79,74)
15,19: (47517,15011,17755) #B93A45 srgb(185,58,69)
16,19: (17144,20406,18979) #434F4A srgb(67,79,74)
17,19: (17144,20406,18979) #434F4A srgb(67,79,74)
18,19: (17144,20406,18979) #434F4A srgb(67,79,74)
19,19: (17144,20406,18979) #434F4A srgb(67,79,74)
20,19: (47517,15011,17755) #B93A45 srgb(185,58,69)
21,19: (50918,44309,39507) #C6AC9A srgb(198,172,154)
22,19: (17144,20406,18979) #434F4A srgb(67,79,74)
23,19: (17144,20406,18979) #434F4A srgb(67,79,74)
24,19: (50918,44309,39507) #C6AC9A srgb(198,172,154)
25,19: (50918,44309,39507) #C6AC9A srgb(198,172,154)
26,19: (50918,44309,39507) #C6AC9A srgb(198,172,154)
27,19: (17144,20406,18979) #434F4A srgb(67,79,74)
28,19: (17144,20406,18979) #434F4A srgb(67,79,74)
29,19: (50918,44309,39507) #C6AC9A srgb(198,172,154)
30,19: (50918,44309,39507) #C6AC9A srgb(198,172,154)
31,19: (47517,15011,17755) #B93A45 srgb(185,58,69)
32,19: (50918,44309,39507) #C6AC9A srgb(198,172,154)
33,19: (50918,44309,39507) #C6AC9A srgb(198,172,154)
34,19: (50918,44309,39507) #C6AC9A srgb(198,172,154)
35,19: (50918,44309,39507) #C6AC9A srgb(198,172,154)
36,19: (17144,20406,18979) #434F4A srgb(67,79,74)
37,19: (50918,44309,39507) #C6AC9A srgb(198,172,154)
38,19: (17144,20406,18979) #434F4A srgb(67,79,74)
39,19: (50918,44309,39507) #C6AC9A srgb(198,172,154)
40,19: (17144,20406,18979) #434F4A srgb(67,79,74)
41,19: (52533,46293,16329) #CCB440 srgb(204,180,64)
42,19: (17144,20406,18979) #434F4A srgb(67,79,74)
43,19: (17144,20406,18979) #434F4A srgb(67,79,74)
44,19: (17144,20406,18979) #434F4A srgb(67,79,74)
45,19: (50918,44309,39507) #C6AC9A srgb(198,172,154)
46,19: (50918,44309,39507) #C6AC9A srgb(198,172,154)
47,19: (17144,20406,18979) #434F4A srgb(67,79,74)
48,19: (50918,44309,39507) #C6AC9A srgb(198,172,154)
49,19: (52533,46293,16329) #CCB440 srgb(204,180,64)
也许这会让你开始......
在-median 7
之后添加-colors 6
会稍微减少小的"嘈杂" 补丁。
convert image.png -alpha off -colors 6 -median 7 -sample 50x20! result.png
请注意,ImageMagick也有Python绑定。
另一种选择可能是制作您想要识别的6种颜色的小色板,如下所示:
convert xc:"rgb(255,230,11)" xc:"rgb(16,128,90)" xc:"rgb(200,160,120)" xc:"rgb(200,0,40)" xc:"rgb(18,140,190)" xc:"rgb(14,17,116)" +append swatch.png
然后告诉ImageMagick将图像中的所有颜色映射到样本:
convert image.png -quantize sRGB -alpha off -remap swatch.png -sample 50x20! result.png
如果你想要使用颜色的调色板,在末尾添加-verbose info:
而不是输出图像名称,那么你将得到这个 - 看看最后6行 - 它们显示颜色的索引:< / p>
convert image.png -alpha off -colors 6 -sample 50x20! -type palette -verbose info:
Image: image.png
Format: PNG (Portable Network Graphics)
Mime type: image/png
Class: PseudoClass
Geometry: 50x20+0+0
Resolution: 59.05x59.05
Print size: 0.84674x0.338696
Units: PixelsPerCentimeter
Type: Palette
Base type: Palette
Endianess: Undefined
Colorspace: sRGB
Depth: 8/16-bit
Channel depth:
red: 16-bit
green: 16-bit
blue: 16-bit
Channel statistics:
Pixels: 1000
Red:
min: 2 (0.00935378)
max: 204 (0.801602)
mean: 114.15 (0.447646)
standard deviation: 85.674 (0.335977)
kurtosis: -1.77949
skewness: -0.174985
entropy: 0.994611
Green:
min: 58 (0.229053)
max: 180 (0.706386)
mean: 127.02 (0.498117)
standard deviation: 45.2218 (0.17734)
kurtosis: -1.4666
skewness: -0.2851
entropy: 0.994611
Blue:
min: 64 (0.249165)
max: 175 (0.687266)
mean: 107.26 (0.420626)
standard deviation: 43.1734 (0.169307)
kurtosis: -1.48194
skewness: 0.477601
entropy: 0.994611
Image statistics:
Overall:
min: 2 (0.00935378)
max: 204 (0.801602)
mean: 116.143 (0.455463)
standard deviation: 61.2345 (0.240135)
kurtosis: -1.14278
skewness: -0.180352
entropy: 0.994611
Colors: 6
Histogram:
146: ( 2,144,105) #029069 srgb(2,144,105)
150: ( 10,125,175) #0A7DAF srgb(10,125,175)
199: ( 67, 79, 74) #434F4A srgb(67,79,74)
148: (185, 58, 69) #B93A45 srgb(185,58,69)
200: (198,172,154) #C6AC9A srgb(198,172,154)
157: (204,180, 64) #CCB440 srgb(204,180,64)
Colormap entries: 6
Colormap:
0: ( 67, 79, 74) #434F4A srgb(67,79,74) <--- index 0 in palette
1: (185, 58, 69) #B93A45 srgb(185,58,69) <--- index 1 in palette
2: ( 2,144,105) #029069 srgb(2,144,105)
3: (204,180, 64) #CCB440 srgb(204,180,64)
4: (198,172,154) #C6AC9A srgb(198,172,154)
5: ( 10,125,175) #0A7DAF srgb(10,125,175) <--- last palette entry
答案 1 :(得分:1)
我的另一个答案是变得有点太长了,我想要分享一些更多的想法...把这个答案看作是另一个之前的预处理步骤。
如果您在HSL颜色空间中转换图像,请执行以下操作:
convert image.png -colorspace hsl -separate hsl.png
您将在文件hsl-0.png
中获取Hue,如下所示:
和文件hsl-1.png
中的饱和度如下:
你可以看到,饱和的红色,绿色,蓝色和黄色的饱和度图像更亮,而棕色是你不感兴趣的颜色更深。你还可以看到颜色在色调图像。这让我想到使用饱和度通道作为遮罩,将Hue通道分成颜色......
convert image.png -colorspace hsl -channel s -threshold 80% -channel h -colors 12 -colorspace rgb result.png
或者,从原始图片开始,您可以直接使用:
convert image.png -fx "u.saturation>0.8?u:0" -median 3 result.png
您可以将-median 3
增加到5以删除更多斑点。
所以,我想说我目前最好的拍摄方法如下:
# Make a swatch of the colours want in the output image
convert xc:black xc:"rgb(255,230,11)" xc:"rgb(16,128,90)" xc:"rgb(200,0,40)" xc:"rgb(18,140,190)" xc:"rgb(14,17,116)" +append swatch.png
# Clean up image using Saturation to select coloured areas, median to reduce speckles, then remap to swatch created above and resample down to 50x20
convert image.png -fx "u.saturation>0.8?u:0" -median 3 -remap swatch.png -sample 50x20! result.png
现在打印调色板索引 - 这就是你实际要求的内容 - 我知道如何在PHP中轻松完成这项工作:
#!/usr/local/bin/php
<?php
// Read in a palettised image
$im = imagecreatefrompng("result.png");
for ($r = 0; $r < imagesy($im); $r++) {
printf("Row %d: ",$r);
for ($c = 0; $c < imagesx($im); $c++) {
$pixel = imagecolorat($im, $c, $r);
$index = $pixel & 0xFF;
printf("%d ",$index);
}
printf("\n");
}
?>
<强>输出强>
Row 0: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Row 1: 0 0 0 0 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Row 2: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 0 0 0 0 0 0 2 0 0 0
Row 3: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 1 1 1 1 1 1
Row 4: 0 1 1 1 1 2 1 3 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 1 0 0 1 1 1 1 0 2 2 0 0 2 0 1 0 0 0 4 0
Row 5: 0 2 2 2 2 2 2 2 2 2 0 0 4 5 2 2 5 2 5 2 2 2 2 2 2 2 2 2 5 2 2 2 2 2 2 2 2 2 2 0 0 0 0 0 0 0 0 0 2 2
Row 6: 0 2 2 2 2 2 2 2 2 2 5 2 2 2 2 2 2 2 2 2 2 2 5 2 2 5 2 2 5 5 2 4 4 2 5 2 5 2 5 2 2 2 2 2 2 2 2 2 2 2
Row 7: 0 0 0 2 0 0 2 2 2 2 2 2 2 0 0 0 0 0 0 0 0 0 0 0 2 0 0 0 0 0 0 0 2 2 0 0 2 0 2 2 5 2 2 2 2 5 5 2 5 5
Row 8: 0 2 2 2 2 2 2 2 2 2 2 2 2 2 5 5 2 5 5 5 2 5 2 2 2 2 5 2 5 5 5 2 5 5 2 2 2 2 2 2 2 2 2 2 2 2 5 5 5 4
Row 9: 0 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5
Row 10: 0 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 0 0 4 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5
Row 11: 0 4 0 0 1 1 1 1 1 1 1 1 1 1 1 3 3 3 3 3 3 3 3 1 3 3 3 3 0 0 0 0 0 4 0 2 5 5 5 5 5 5 5 5 0 0 5 2 5 5
Row 12: 0 1 1 1 1 1 0 3 3 1 3 1 3 3 3 3 1 3 3 3 3 3 5 3 3 3 5 3 3 3 3 0 0 4 0 0 0 3 3 5 3 1 3 5 3 3 3 3 3 3
Row 13: 0 3 3 1 1 1 3 3 3 3 3 3 3 3 3 0 2 0 0 0 0 0 5 0 5 0 3 3 3 3 3 3 3 3 3 3 3 3 1 3 3 3 3 3 3 3 3 3 3 5
Row 14: 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 3 3 0 0 0 3 3 3 3 3 3 3 3 0 0 0
Row 15: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 4 4 4 4 4 4 4 0 0 0 0 0 0 0 0 0 4 0 0 0
Row 16: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Row 17: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Row 18: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4
Row 19: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0