예제 #1
0
            image = np.pad(image,((0,0),(diff//2,diff//2)),'constant')
        else:
            image = np.pad(image,((diff//2,diff//2),(0,0)),'constant')
        image = dilation(image,disk(max(sx,sy)/32))
        image = misc.imresize(image,(32,32))
        if np.max(image) > 1:
            image = image/255.
        return image


if __name__ == '__main__':
    model_path = join(getcwd(), "model", "model.ckpt")
    with tf.Session() as sess:
        sr = SymbolRecognition(sess, model_path, trainflag=False)
        imgFolderPath = getcwd() + sep + "equations"
        files = [f for f in listdir(imgFolderPath) if isfile(join(imgFolderPath, f)) and imghdr.what(join(imgFolderPath, f))=='png']
        for fname in files:
            # fname='./equations/SKMBT_36317040717260_eq16.png'
            print fname
            seg = Segmentation(join(imgFolderPath, fname))
            d = seg.get_labels()
            mst = MinimumSpanningTree(d).get_mst()
            pa = Partition(mst,seg,sess,sr)
            print pa.getList()
            pa.calculateCount()
            print pa.getCount()
            # for label in seg.labels.keys():
            #     # print label
            #     stroke = seg.get_stroke(label)
            #     scipy.misc.imsave('./tmp/'+ str(label)+'.png', stroke)