OpenCV深度学习应用与性能优化实践

吴至文 郭叶军 宗炜 李鹏 赵娟
序一 OpenCV以其易得、易懂、易用为国内学术界和工业界所熟知。作为经典的图形图像类开源软件,OpenCV可以说是兼具“大而全”和“小而精”特点。“大而全”是指OpenCV全面涵盖了从教科书式的基本图像处理单元算法,到更复杂的高级算法,直至最新的围绕机器学习的算法。“小而精”是指其每个算法的实现被社区反复锤炼、优化,甚至满足一些项目需求的KPI,可以直接用于产品化。 本书的作者团队长期从事图形图像和视频编解码处理的算法研究、软件的功能实现及性能加速,各自在OpenCV项目里都有重要贡献,直至成为一些模块的维护者。本书从OpenCV入门,结合行业热点,花大量笔墨介绍机器学习相关实现及平台相关的性能优化,贴近实战,为学生、工程技术人员提供了实用指导。 作者团队所在的Intel开源软件中心音视频团队,自2008年开始从事GPU内核驱动开发,开发项目贯穿整个图形图像软件栈,涵盖开源软件桌面(X.org)、3D加速协议OpenGL(Mesa)、通用计算加速协议OpenCL(Project Beignet)、视频编解码与处理(FFmpeg/GStreamer)及基于软件的全栈式摄像头流水线处理算法实现(libXCam)。很多团队成员如今在流媒体框架、图形图像处理等主要开源软件社区成长为项目维护者。 开源软件开发作为一种开发模式,社区互动是必不可少的组成部分。我们和OpenCV社区的互动,最早可以追溯到2010年。彼时OpenCV已经在业内流行了,但来自国内的贡献很少。最初,我们也经历了彷徨和不安,担心代码会不被接受。经过一些尝试后,我们逐渐与社区、OpenCV项目的维护者Vadim先生建立了良好的合作关系。待后来Intel收购了Itseez公司之后,大家成为同事,合作就变得更多了。本书的各位作者作为参与OpenCV项目的开发者,贡献了重要算法的优化和实现。他们希望通过本书,分享自己…