HyperLPR icon indicating copy to clipboard operation
HyperLPR copied to clipboard

server api开启后如何使用api命令接口

Open zhjygit opened this issue 9 months ago • 2 comments

看到python的例子中,开启一个server后,例如10.168.1.108:8715,在其他程序中如何通过这个api进行使用呢? 就是说,在程序中如何远程使用这个api来进行车牌识别,而不是通过web的鼠标操作。

zhjygit avatar Mar 24 '25 01:03 zhjygit

哈罗,邮件收到了,我会尽快查看,回复,谢谢!

qianxiaoer avatar Mar 24 '25 01:03 qianxiaoer

已解决,这是我的远端python调用api的程序,仅供参考:

import requests

def recognize_license_plate(image_path, server_url):
    """
    调用远程车牌识别服务,识别指定图片中的车牌信息。

    :param image_path: 图片路径
    :param server_url: 远程车牌识别服务的 URL
    :return: 车牌识别结果
    """
    # 构造完整的 API 地址
    api_url = f"{server_url}/api/v1/rec"

    try:
        # 打开图片文件
        with open(image_path, 'rb') as file:
            # 构造文件上传的请求数据
            files = {'file': (image_path, file, 'image/jpeg')}

            # 发送 POST 请求
            response = requests.post(api_url, files=files)

        # 检查响应状态码
        if response.status_code == 200:
            # 解析返回的 JSON 数据
            result = response.json()
            return result
        else:
            # 如果响应状态码不是 200,打印错误信息
            print(f"Error: Received status code {response.status_code}")
            print(f"Response: {response.text}")
            return None

    except Exception as e:
        print(f"An error occurred: {e}")
        return None


# 调用函数
if __name__ == "__main__":
    # 远程服务器地址
    server_url = "http://10.168.1.108:8087"
    
    # 待识别的图片路径
    image_path = "1.jpg"
    
    # 调用车牌识别服务
    result = recognize_license_plate(image_path, server_url)
    
    # 打印识别结果
    if result:
        print("License Plate Recognition Result:")
        print(result)
    else:
        print("Failed to recognize the license plate.")

zhjygit avatar Mar 24 '25 02:03 zhjygit