我在“单词检测器”上工作,我想用字母创建一个数据库。 我试图将字母图像(在.jpg上)转换为Numpy矩阵,但结果不可行。
我的节目带有'G'字母:
import numpy as np
from PIL import Image as img
g=img.open('G.png')
tabg=np.array(g)
print(tabg,tabg.shape)
以及该计划的结果:
[[[255 255 255 255]
[255 255 255 255]
[255 255 255 255]
...
[255 255 255 255]
[255 255 255 255]
[255 255 255 255]]
[[255 255 255 255]
[255 255 255 255]
[255 255 255 255]
...
[255 255 255 255]
[255 255 255 255]
[255 255 255 255]]
[[255 255 255 255]
[255 255 255 255]
[255 255 255 255]
...
[255 255 255 255]
[255 255 255 255]
[255 255 255 255]]
...
[[255 255 255 255]
[255 255 255 255]
[255 255 255 255]
...
[255 255 255 255]
[255 255 255 255]
[255 255 255 255]]
[[255 255 255 255]
[255 255 255 255]
[255 255 255 255]
...
[255 255 255 255]
[255 255 255 255]
[255 255 255 255]]
[[255 255 255 255]
[255 255 255 255]
[255 255 255 255]
...
[255 255 255 255]
[255 255 255 255]
[255 255 255 255]]] (28, 28, 4)
如果可以提供帮助,我会提供我的图片:G
如果可能,我想在矩阵大小=(28,28)上转换此结果。 谢谢你的帮助。
答案 0 :(得分:1)
您查看图片,并建议使用opencv lib中的cv2来阅读它。既然是
import numpy as np
import cv2
G = cv2.imread(‘%imagepath’,0) #open in gray scale or it will load the image into rgb
print(G.shape)
答案 1 :(得分:0)
因此分辨率为28 px x 28 px
和4种颜色尺寸。我无法从docs找到它们(可能是RGBA),但也许您只是使用PIL自己的方法通过Image.convert
将此图像转换为灰度:
import numpy as np
from PIL import Image as img
g=img.open('G.png')
g=g.convert(mode="L")
tabg=np.array(g)
print(tabg,tabg.shape)