我有一些带文字的二进制图像,如下所示:
图片1:
图片2:
相应的水平投影是:
似乎我可以通过水平投影进行分割,但是如何?
提前致谢!
PS:进行投影的代码:
from matplotlib import pyplot as plt
import pylab
(rows,cols)=img.shape
h_projection = np.array([ x/255/rows for x in img.sum(axis=0)])
plt.plot(range(cols), h_projection.T)
pylab.savefig(outfile, bbox_inches='tight')
plt.clf()
为了消除误解,当我说横向投影时,我的意思是a projection made on a plane parallel to the horizon.
答案 0 :(得分:-1)
可以使用垂直投影然后水平投影来完成分割。但是为了区分文本字母和其他不需要的东西,你可以使用基于形状的特征描述符,如“方向梯度直方图”和#39;。使用这些功能,您可以训练SVM或基于神经网络的分类器,但是对于训练,您首先需要这些样本字母图像的数据库(如MNIST)。