深度学习应用部署与计算机视觉实践
一、Web 应用的部署与扩展
1.1 应用部署
若你想知道如何托管应用程序,我们构建的应用程序结构可直接与 Flask 应用托管服务(如 AWS Elastic Beanstalk)配合使用。
1.2 应用扩展
我们构建的应用虽然能正常运行,但远非最优设计,存在以下可改进之处:
- 任务处理瓶颈 :主应用程序同时处理 Web 功能(如模板渲染、请求处理)和深度学习推理任务,同一应用线程需处理这两类任务,会导致部分功能出现瓶颈。
- 计算资源消耗 :推理和图像预处理计算密集,而 Web 功能相对简单。将 Web 和深度学习组件放在一起,会不必要地分配处理/机器资源。
- 资源使用优化 :实现计算密集型函数时,最好限制其并行调用次数以减少资源使用,且这些函数应异步执行。
考虑到上述因素,更好的做法是将应用拆分为两个独立的微服务,分别处理 Web 组件和深度学习部分,并在两者之间实现作业队列机制作为限流手段。通过在设计时考虑这些因素,可使应用能够同时处理数千到数百万个请求。
二、计算机视觉入门
2.1 所需工具和库
在进行计算机视觉和图像处理任务时,我们需要以下工具和库:
- OpenCV :强大的计算机视觉库,可完成从简单的图像加载和操作到基于深度学习的图像识别等复杂任务。
- Dlib :机器学习库,内置一些优化且易用的计
超级会员免费看
订阅专栏 解锁全文

1万+

被折叠的 条评论
为什么被折叠?



