C/S架构的应用程序开发实战(一)

本文探讨了开发一个大规模图片车辆品牌标注工具的过程,采用C/S架构解决GPU资源分配问题。介绍了后端Flasky与MySQL设计,前端PqQt5的配合,以及详细业务流程和API接口设计。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

项目背景

近期需要开发一个对巨量的图片数据进行车辆品牌信息标注的工具,为了提高标注效率,准备先通过现有车辆品牌识别的算法模型进行下预标注,标注人员在此基础上进行审核和修改即可。另外,需要统计出各个品牌数据的数量等信息。

软件架构确定

用户是分散的,待标注数据量大而且通常存在用户PC机的磁盘上,软件做成一款即开即用的桌面应用是非常合适的。但考虑到要用算法进行预标注,算法模型运行要用到性能较好的GPU资源,为每个用户提供具有这样硬件资源的是不切合实际的,所以可以采用部署后端服务的方法。是采用C/S架构呢,还是B/S架构呢?针对实际应用场景,需要进行大量的数据交互,而且用户数也不算多,对实用性、稳定性的要求较高,因此决定采用C/S架构。
后端服务采用Flasky框架,主要对算法模型进行封装,数据库增删改查接口以及算法运行几个Restfull风格的API实现;数据库采用mysql,建立车辆品牌表;前端GUI采用PqQt5,通过http协议和后端进行通信。

设计方案

  1. 进一步确认沟通、细化需求。时间允许的话,最好进行评审,形成需求文档。
  2. 业务流程梳理。
  3. 数据库表单制定,示例如下图:
    在这里插入图片描述
  4. 接口设计,形成文档,示例如下图:
  • 方法 :POST
  • URI: /vehicle_label/algorithem/get_result
  • 数据格式:json
  • 请求参数:
    参数名 必选 类型 描述
    image 是 base64
  • 应答参数:
    参数名 必选 类型 描述
    errorCode 是 int
    desc 是 string
    result 否 Dic
  • 请求示例:
    {
    “image_data”: ***
    }
  • 应答示例:
    {
    “errorCode”: 0,
    “desc”: “成功”,
    “result”: {
    “brand_a”: “a027_Jeep”,
    “brand_b”: “a027b01_Jeep(进口)”,
    “brand_c”: “a027b01c07_牧马人”,
    “brand_d”: “a027b01c07d13_2010款”
    }
    }
  1. 前端
    时间允许的话,最后画出界面的设计示意图,作为前端界面开发的依据。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值