m0_58844937 2022-06-21 22:47 采纳率: 85.7%
浏览 27
已结题

django和yolov3的问题

问题遇到的现象和发生背景

将yolov3的coco识别分类嫁接到django框架下出现问题,第一次上传图片识别,没有问题,第二次上传图片识别,就报错了

img

问题相关代码,请勿粘贴截图
运行结果及报错内容

img

我的解答思路和尝试过的方法
我想要达到的结果
  • 写回答

1条回答 默认 最新

  • m0_58844937 2022-06-21 22:50
    关注

    以下是我预测用的代码

    
    def input_model(input_size=416):
        input_layer = tf.keras.layers.Input([input_size, input_size, 3])
        feature_maps = YOLOv3(input_layer)
        bbox_tensors = []
        for i, fm in enumerate(feature_maps):
            bbox_tensor = decode(fm, i)
            bbox_tensors.append(bbox_tensor)
        model = tf.keras.Model(input_layer, bbox_tensors)
        utils.load_weights(model, "ICAR\\yolov3.weights")
        # model.summary()
        return model
        # model.summary()
    
    
    def image_label(original_image, model):
        input_size = 416
    
        original_image = np.array(original_image)  # 将图片转为 numpy array 格式
        original_image_size = original_image.shape[:2]
    
        image_data = utils.image_preporcess(np.copy(original_image), [input_size, input_size])
        image_data = image_data[np.newaxis, ...].astype(np.float32)
    
        # models = input_model(input_size=416)
        pred_bbox = model.predict(image_data)
        pred_bbox = [tf.reshape(x, (-1, tf.shape(x)[-1])) for x in pred_bbox]
        pred_bbox = tf.concat(pred_bbox, axis=0)
        bboxes = utils.postprocess_boxes(pred_bbox, original_image_size, input_size, 0.3)
        bboxes = utils.nms(bboxes, 0.45, method='nms')
    
        _, label = utils.draw_bbox(original_image, bboxes)
        return label
    
    # 方法二:把预测的结果直接返回给前端的文本框中
    @csrf_exempt
    def facedetectDemo2(request):
        result = {"code": None}
        if request.method == 'POST':
            imag = request.FILES.get('image')
            # 3、载入自己写的数字图片并设置大小
            original_image = Image.open(imag)
    
            model = input_model(416)
            label = image_label(original_image, model)
            print(label)
            result.update({"output": label})
           return JsonResponse(result)
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 6月30日
  • 已采纳回答 6月22日
  • 创建了问题 6月21日

悬赏问题

  • ¥15 为什么我运行这个网络会出现以下报错?CRNN神经网络
  • ¥20 steam下载游戏占用内存
  • ¥15 CST保存项目时失败
  • ¥15 树莓派5怎么用camera module 3啊
  • ¥20 java在应用程序里获取不到扬声器设备
  • ¥15 echarts动画效果的问题,请帮我添加一个动画。不要机器人回答。
  • ¥15 Attention is all you need 的代码运行
  • ¥15 一个服务器已经有一个系统了如果用usb再装一个系统,原来的系统会被覆盖掉吗
  • ¥15 使用esm_msa1_t12_100M_UR50S蛋白质语言模型进行零样本预测时,终端显示出了sequence handled的进度条,但是并不出结果就自动终止回到命令提示行了是怎么回事:
  • ¥15 前置放大电路与功率放大电路相连放大倍数出现问题