Tensorflow服务器可以更快地推断图像

时间:2019-05-09 05:18:01

标签: python rest tensorflow object-detection grpc

我正在使用tensorflow服务器来推断tensorflow对象检测API。为此,我创建了一个Rest api客户端。我将请求发布到服务器,如下所示:

server_url = 'http://localhost:8501/v1/models/omr_500:predict'
headers = {"content-type": "application/json"}
image_path = 'test_images/19_inp.jpg'

def pre_process(image_path):
    image = Image.open(image_path).convert("RGB")
    image_np = plot_util.load_image_into_numpy_array(image)
    image_tensor = np.expand_dims(image_np, 0)
    formatted_json_input = json.dumps({"signature_name": "serving_default", "instances": image_tensor.tolist()})

    return formatted_json_input

requests.post(server_url, pre_process(image_path), headers)

此类请求的问题在于,要发布100张图像的请求,我需要对其进行预处理。在函数pre_process()中,numpy到python list的转换花费了大部分时间(image_tensor.tolist())。对于50张图像,预处理本身大约需要20秒。这增加了我的推理时间。有什么有效的推理方法吗?

0 个答案:

没有答案