26 lines
824 B
Python
26 lines
824 B
Python
from PIL import Image
|
|
from collections import Counter
|
|
|
|
with Image.open("./cc_font.png") as im:
|
|
pixels = im.load()
|
|
weights = [0 for _ in range(6 * 9)]
|
|
for char in range(256):
|
|
ctx, cty = (char % 16) * 8, (char // 16) * 11
|
|
for oy in range(9):
|
|
for ox in range(6):
|
|
pix = int(pixels[ctx + ox + 1, cty + oy + 1][0]) # type: ignore
|
|
weights[ox + 6 * oy] += 1 if pix else 0
|
|
|
|
with Image.new("L", (6, 9), 0) as im_out:
|
|
for y in range(9):
|
|
for x in range(6):
|
|
print("%3d" % weights[x + 6 * y], end="\t")
|
|
im_out.putpixel((x, y), weights[x + 6 * y])
|
|
print()
|
|
|
|
im_out.save("avg.png")
|
|
|
|
print(dict(enumerate([
|
|
iv[0] for iv in sorted(enumerate(weights), key=lambda iv: iv[1])
|
|
])))
|