学习《opencv3计算机视觉:python语言实现》page164代码
win8 + winpython3.6.3 + opencv3.4.0
import cv2
import numpy as np
ann = cv2.ml.ANN_MLP_create()
ann.setLayerSizes(np.array([9, 5, 9], dtype = np.uint8))
ann.setTrainMethod(cv2.ml.ANN_MLP_BACKPROP)
ann.train(np.array([[1.2, 1.3, 1.9, 2.2, 2.3, 2.9, 3.0, 3.2, 3.3]],
dtype = np.float32),
cv2.ml.ROW_SAMPLE,
np.array([[0, 0, 0, 0, 0, 1, 0, 0, 0]], dtype = float32))
print(ann.predict(np.array([[1.4, 1.5, 1.2, 2., 2.5, 2.8, 3., 3.1, 3.8]],
dtype = np.float32)))
弹出错误
Traceback (most recent call last):
File "C:/WinPython/notebooks/ann_sample01.py", line 11, in <module>
np.array([[0, 0, 0, 0, 0, 1, 0, 0, 0]], dtype = float32))
NameError: name 'float32' is not defined
经查,在使用float32前从numpy导入,原因待细查