OCR手写数据显示svm.train()中的错误

时间:2016-08-29 06:01:41

标签: python opencv svm ocr categorical-data

我正在使用OpenCV3.1.0和Python2.7。 我已经从here实现了OCR手写数据的代码。

responses = np.float32(np.repeat(np.arange(10),250)[:,np.newaxis])
svm.train(trainData,cv2.ml.ROW_SAMPLE, responses)

并收到这些错误

  

svm.train(trainData,cv2.ml.ROW_SAMPLE,回复)   cv2.error:C:\ builds \ master_PackSlaveAddon-win64-vc12-static \ opencv \ modules \ ml \ src \ svm.cpp:1618:错误:( - 5)在分类问题的情况下,响应必须是分类的;在创建TrainData时指定varType,或在函数cv :: ml :: SVMImpl :: train

中传递整数响应

注意:自从使用opencv3.x以来,我在必要时使用了cv2.ml.svm,其余部分相同

如果使用

responses = np.int32(np.repeat(np.arange(10),250)[:,np.newaxis])

获得0准确度

1 个答案:

答案 0 :(得分:-1)

尝试使用pytesseract。它比训练SVM分类器好得多。如果您想查看,请按此link。另外,对于高级示例,请查看此site