zoukankan      html  css  js  c++  java
  • 认识不一定熟悉的opencv

      对很多人来说,opencv就像在旅行路上遇到的某个人,很有可能,这个只是你生命中的匆匆过客。可是,对于一个立志要做熟悉图像处理的人来说,你不能绕过他。

    他是什么?

      OpenCV是一个基于BSD许可(开源)发行的跨平台计算机视觉库,可以运行在Linux、Windows、Android和Mac OS操作系统上。它轻量级而且高效——由一系列 C 函数和少量 C++ 类构成,同时提供了Python、Ruby、MATLAB等语言的接口,实现了图像处理和计算机视觉方面的很多通用算法。

    他的发展历程是咋样的?

      1999年1月,CVL项目启动。主要目标是人机界面,能被UI调用的实时计算机视觉库,为Intel处理器做了特定优化。
      2000年6月,第一个开源版本OpenCV alpha 3发布。
      2000年12月,针对linux平台的OpenCV beta 1发布。
      2006年,支持Mac OS的OpenCV 1.0发布。
      2009年9月,OpenCV 1.2(beta2.0)发布。
      2009年10月1日,Version 2.0发布。
      2010年12月6日,OpenCV 2.2发布。
      2011年8月,OpenCV 2.3发布。
      2012年4月2日,发布OpenCV 2.4。
      2014年8月21日,发布OpenCv 3.0 alpha。
      2014年11月11日,发布OpenCV 3.0 beta。
      2015年6月4日,发布OpenCV 3.0。
      2016年12月,发布OpenCV 3.2版(合并969个修补程序,关闭478个问题)
      2017年8月3日,发布OpenCV 3.3版(最重要的更新是把DNN模块从contrib里面提到主仓库)
    OpenCV 使用类BSDlicense,所以对非商业应用和商业应用都是免费(FREE)的。(细节参考 license)
    OpenCV提供的视觉处理算法非常丰富,并且它部分以C语言编写,加上其开源的特性,处理得当,不需要添加新的外部支持也可以完整的编译链接生成执行程序,所以很多人用它来做算法的移植,OpenCV的代码经过适当改写可以正常的运行在DSP系统和ARM嵌入式系统中,这种移植在大学中经常作为相关专业本科生毕业设计或者研究生课题的选题。
      应用领域?
      1、人机互动
      2、物体识别
      3、图像分割
      4、人脸识别
      5、动作识别
      6、运动跟踪
      7、机器人
      8、运动分析
      9、机器视觉
      10、结构分析
      11、汽车安全驾驶
      从这些领域可以看出,它是为数不多可以横跨很多热门领域的技术,自动驾驶,人工智能,机器人等。这个还是非常有前途的。
     
      参考资料:
      1 官网: https://opencv.org/ 
      2 利用源码: https://sourceforge.net/projects/opencvlibrary/ 
     
  • 相关阅读:
    个人网站
    物理读,逻辑读,预读
    正则表达式
    面向对象五大基本原则
    工作总结
    sql性能优化
    sqlServer游标的使用
    ASP.NET安全[开发ASP.NET MVC应用程序时值得注意的安全问题](转)
    一个简单问题引发对IEnumerable和IQueryable的思考
    EFCodeFirst 各种命令整理
  • 原文地址:https://www.cnblogs.com/dylancao/p/8883533.html
Copyright © 2011-2022 走看看