def ocr(img): global graph global sess """ 识别图片""" my_image = np.array(img) print(my_image.shape) my_image = np.array([my_image]) print(my_image) with graph.as_default(): set_session(sess) predict = Model.predict(my_image) index = predict.argmax() print("CNN预测", index) target = target_name_zh[index] index2 = np.argsort(predict)[0][-2] target2 = target_name_zh[index2] index3 = np.argsort(predict)[0][-3] target3 = target_name_zh[index3] index4 = np.argsort(predict)[0][-4] target4 = target_name_zh[index4] index5 = np.argsort(predict)[0][-5] target5 = target_name_zh[index5] data, obj = [], [] for x in range(-1, -6, -1): data.append({"name": target_name_zh[np.argsort(predict)[0][x]], "value": float(list(predict)[0][np.argsort(predict)[0][x]])}) return {"target": target, "predict": "%.2f" % (float(list(predict)[0][index] / sum(list(predict)[0])) * 100), "target2": target2, "predict2": "%.2f" % (float(list(predict)[0][index2] / sum(list(predict)[0])) * 100), "target3": target3, "predict3": "%.2f" % (float(list(predict)[0][index3] / sum(list(predict)[0])) * 100), "target4": target4, "predict4": "%.2f" % (float(list(predict)[0][index4] / sum(list(predict)[0])) * 100), "target5": target5, "predict5": "%.2f" % (float(list(predict)[0][index5] / sum(list(predict)[0])) * 100), "data": {"data": data, "obj": obj}, "funfa": funfa[index] }
时间: 2024-01-29 14:02:41 浏览: 52
teverr_image_AndYet..._源码
这是一个使用 CNN 模型进行图像识别的函数。它使用输入的图像进行识别,并返回一个包含预测结果的字典。该函数首先将图像转换为 NumPy 数组,并使用 CNN 模型对其进行预测。然后,它从预测结果中获取前五个可能的对象,并将它们的名称和预测概率添加到一个列表中。最后,它返回一个字典,其中包含预测结果,包括预测对象名称、对象预测概率、前五个可能对象的名称和预测概率,以及一些其他信息。
阅读全文