写在前面:PaddleOCR是百度家出的深度学习based字符识别开源项目。为什么选PaddleOCR呢?在定调之前看过好多其他的开源项目,最初是找开源的CRNN实现,找到了pytorchOCR,并花时间学了一下基本的DL概念。再后来才发现转C++是如此的困难。既然生产难以实现,那对于我来说,实验室的结果再好也无法投入生产,也就没有意义(对于我的项目来说)。群里的大佬指了条明路,才开始了漫漫PaddleOCR挖坑之路。ps:群里的氛围还是不错的,特别对于我这种dl小白。下面就记录一下这段时间的成果吧!
PaddlePaddle
是一系列开发组件,每一个组件都提供了训练部署一条龙全流程的服务。PaddleOCR独立出来,是一个单独的repo。而PaddleX为整个深度学习提供了全流程服务。值得注意的是,Paddle与Pytorch是并列关系,都是深度学习框架,Paddle和Pytorch很像,所以基本能做到无缝切换(听说是)。
为什么要部署(deploy)?
开发环境和生产环境有很大不同,硬件设备上来说,开发电脑的配置高级显卡,而出货电脑就没必要那么高级,能用就行,所以这就要求我们训练好的模型能在出货的电脑上跑起来,牺牲部分精度保证速度。(这个看具体需求,比如医疗影像,是绝对不能牺牲精度的)综上,理由一,**生产电脑性能差。**理由二,python不适合用于生产环境,说白了还是考虑运行速度,尤其是工业环境,用C