通过mmdetection框架进行模型训练后推理。
在深度学习模型中大部分demo例子都是给一个文件夹进行,批量统一推理,给出结果
然而在实际项目中需要提供一个服务接口来处理图片的推理过程。
一般顺序为
模型启动应用服务的时候需要加载上来。
http服务等进行待接收处理。
后台进行推理,发送返回结果。
进入主题DEMO
from mmdet.apis import init_detector, inference_detector, show_result
import glob
import requests
from PIL import Image
import io
import numpy as np
import cv2
config_file = '../configs-us/cascade_rcnn_r101_fpn_1x_new.py'
checkpoint_file = '../checkpoints/epoch_62.pth'
model = init_detector(config_file, checkpoint_file, device='cuda:0')
# 测试网上一张图片不经下载进行推理
#step1 提供url地址
image_url = 'https://img-bss.csdn.net/1561952473667.jpg'
#step2 请求获取url对应的内容
img_data = requests.get(image_url).content
#step3 解码为图像
img = cv2.imdecode(np.frombuffer(img_data, np.uint8), cv2.IMREAD_COLOR)
result = inference_detector(model, img)
show_result(img, result