计算机视觉 - CSDN
计算机视觉 订阅
计算机视觉是一门研究如何使机器“看”的科学,更进一步的说,就是是指用摄影机和电脑代替人眼对目标进行识别、跟踪和测量等机器视觉,并进一步做图形处理,使电脑处理成为更适合人眼观察或传送给仪器检测的图像。作为一个科学学科,计算机视觉研究相关的理论和技术,试图建立能够从图像或者多维数据中获取‘信息’的人工智能系统。这里所 指的信息指Shannon定义的,可以用来帮助做一个“决定”的信息。因为感知可以看作是从感官信号中提 取信息,所以计算机视觉也可以看作是研究如何使人工系统从图像或多维数据中“感知”的科学。 展开全文
计算机视觉是一门研究如何使机器“看”的科学,更进一步的说,就是是指用摄影机和电脑代替人眼对目标进行识别、跟踪和测量等机器视觉,并进一步做图形处理,使电脑处理成为更适合人眼观察或传送给仪器检测的图像。作为一个科学学科,计算机视觉研究相关的理论和技术,试图建立能够从图像或者多维数据中获取‘信息’的人工智能系统。这里所 指的信息指Shannon定义的,可以用来帮助做一个“决定”的信息。因为感知可以看作是从感官信号中提 取信息,所以计算机视觉也可以看作是研究如何使人工系统从图像或多维数据中“感知”的科学。
信息
外文名
Computer Vision
中文名
计算机视觉
计算机视觉定义
计算机视觉是使用计算机及相关设备对生物视觉的一种模拟。它的主要任务就是通过对采集的图片或视频进行处理以获得相应场景的三维信息,就像人类和许多其他类生物每天所做的那样。计算机视觉是一门关于如何运用照相机和计算机来获取我们所需的,被拍摄对象的数据与信息的学问。形象地说,就是给计算机安装上眼睛(照相机)和大脑(算法),让计算机能够感知环境。我们中国人的成语"眼见为实"和西方人常说的"One picture is worth ten thousand words"表达了视觉对人类的重要性。不难想象,具有视觉的机器的应用前景能有多么地宽广。计算机视觉既是工程领域,也是科学领域中的一个富有挑战性重要研究领域。计算机视觉是一门综合性的学科,它已经吸引了来自各个学科的研究者参加到对它的研究之中。其中包括计算机科学和工程、信号处理、物理学、应用数学和统计学,神经生理学和认知科学等。
收起全文
  • Python+OpenCV计算机视觉

    2018-12-28 17:42:46
    Python+OpenCV计算机视觉系统全面的介绍。
  • 计算机视觉是一门研究如何使机器通过“看”去理解世界的学科,是目前深度学习领域最热门的研究领域之一。具体来说我们可以通过相机与计算单元的结合,在一定场景下机器视觉系统代替人眼对目标进行识别、跟踪和测量等...
  • 计算机视觉入门

    2018-05-18 21:42:00
    目录简介方向热点简介计算机视觉(Computer Vision)又称为机器视觉(Machine Vision),顾名思义是一门“教”会计算机如何去“看”世界的学科。在机器学习大热的前景之下,计算机视觉与自然语言处理(Natural ...

    目录

    • 简介
    • 方向
    • 热点

    简介

    计算机视觉(Computer Vision)又称为机器视觉(Machine Vision),顾名思义是一门“教”会计算机如何去“看”世界的学科。在机器学习大热的前景之下,计算机视觉与自然语言处理(Natural Language Process, NLP)及语音识别(Speech Recognition)并列为机器学习方向的三大热点方向。而计算机视觉也由诸如梯度方向直方图(Histogram of Gradient, HOG)以及尺度不变特征变换(Scale-Invariant Feature Transform, SIFT)等传统的手办特征(Hand-Crafted Feature)与浅层模型的组合逐渐转向了以卷积神经网络(Convolutional Neural Network, CNN)为代表的深度学习模型。

    方式特征提取决策模型
    传统方式SIFT,HOG, Raw Pixel …SVM, Random Forest, Linear Regression …
    深度学习CNN …CNN …

    svm(Support Vector Machine) : 支持向量机 
    Random Forest : 随机森林 
    Linear Regression : 线性回归 
    Raw Pixel : 原始像素

    传统的计算机视觉对待问题的解决方案基本上都是遵循: 图像预处理 → 提取特征 → 建立模型(分类器/回归器) → 输出 的流程。 而在深度学习中,大多问题都会采用端到端(End to End)的解决思路,即从输入到输出一气呵成。本次计算机视觉的入门系列,将会从浅层学习入手,由浅入深过渡到深度学习方面。

    方向

    计算机视觉本身又包括了诸多不同的研究方向,比较基础和热门的几个方向主要包括了:物体识别和检测(Object Detection),语义分割(Semantic Segmentation),运动和跟踪(Motion & Tracking),三维重建(3D Reconstruction),视觉问答(Visual Question & Answering),动作识别(Action Recognition)等。

    物体识别和检测

    物体检测一直是计算机视觉中非常基础且重要的一个研究方向,大多数新的算法或深度学习网络结构都首先在物体检测中得以应用如VGG-net, GoogLeNet, ResNet等等,每年在imagenet数据集上面都不断有新的算法涌现,一次次突破历史,创下新的记录,而这些新的算法或网络结构很快就会成为这一年的热点,并被改进应用到计算机视觉中的其它应用中去,可以说很多灌水的文章也应运而生。

    物体识别和检测,顾名思义,即给定一张输入图片,算法能够自动找出图片中的常见物体,并将其所属类别及位置输出出来。当然也就衍生出了诸如人脸检测(Face Detection),车辆检测(Viechle Detection)等细分类的检测算法。 
    这里写图片描述

    近年代表论文

    1. He, Kaiming, et al. “Deep residual learning for image recognition.” Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. 2016.
    2. Liu, Wei, et al. “SSD: Single shot multibox detector.” European Conference on Computer Vision. Springer International Publishing, 2016.
    3. Szegedy, Christian, et al. “Going deeper with convolutions.” Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. 2015.
    4. Ren, Shaoqing, et al. “Faster r-cnn: Towards real-time object detection with region proposal networks.” Advances in neural information processing systems. 2015.
    5. Simonyan, Karen, and Andrew Zisserman. “Very deep convolutional networks for large-scale image recognition.” arXiv preprint arXiv:1409.1556 (2014).
    6. Krizhevsky, Alex, Ilya Sutskever, and Geoffrey E. Hinton. “Imagenet classification with deep convolutional neural networks.” Advances in neural information processing systems. 2012.

    数据集

    1. IMAGENET
    2. PASCAL VOC
    3. MS COCO
    4. Caltech

    语义分割

    语义分割是近年来非常热门的方向,简单来说,它其实可以看做一种特殊的分类——将输入图像的每一个像素点进行归类,用一张图就可以很清晰地描述出来。 
    这里写图片描述
    很清楚地就可以看出,物体检测和识别通常是将物体在原图像上框出,可以说是“宏观”上的物体,而语义分割是从每一个像素上进行分类,图像中的每一个像素都有属于自己的类别。

    近年代表论文

    1. Long, Jonathan, Evan Shelhamer, and Trevor Darrell. “Fully convolutional networks for semantic segmentation.” Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. 2015.
    2. Chen, Liang-Chieh, et al. “Semantic image segmentation with deep convolutional nets and fully connected crfs.” arXiv preprint arXiv:1412.7062 (2014).
    3. Noh, Hyeonwoo, Seunghoon Hong, and Bohyung Han. “Learning deconvolution network for semantic segmentation.” Proceedings of the IEEE International Conference on Computer Vision. 2015.
    4. Zheng, Shuai, et al. “Conditional random fields as recurrent neural networks.” Proceedings of the IEEE International Conference on Computer Vision. 2015.

    数据集

    1. PASCAL VOC
    2. MS COCO

    运动和跟踪

    跟踪也属于计算机视觉领域内的基础问题之一,在近年来也得到了非常充足的发展,方法也由过去的非深度算法跨越向了深度学习算法,精度也越来越高,不过实时的深度学习跟踪算法精度一直难以提升,而精度非常高的跟踪算法的速度又十分之慢,因此在实际应用中也很难派上用场。 
    那么什么是跟踪呢?就目前而言,学术界对待跟踪的评判标准主要是在一段给定的视频中,在第一帧给出被跟踪物体的位置及尺度大小,在后续的视频当中,跟踪算法需要从视频中去寻找到被跟踪物体的位置,并适应各类光照变换,运动模糊以及表观的变化等。但实际上跟踪是一个不适定问题(ill posed problem),比如跟踪一辆车,如果从车的尾部开始跟踪,若是车辆在行进过程中表观发生了非常大的变化,如旋转了180度变成了侧面,那么现有的跟踪算法很大的可能性是跟踪不到的,因为它们的模型大多基于第一帧的学习,虽然在随后的跟踪过程中也会更新,但受限于训练样本过少,所以难以得到一个良好的跟踪模型,在被跟踪物体的表观发生巨大变化时,就难以适应了。所以,就目前而言,跟踪算不上是计算机视觉内特别热门的一个研究方向,很多算法都改进自检测或识别算法。 
    这里写图片描述

    近年代表论文

    1. Nam, Hyeonseob, and Bohyung Han. “Learning multi-domain convolutional neural networks for visual tracking.” Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. 2016.
    2. Held, David, Sebastian Thrun, and Silvio Savarese. “Learning to track at 100 fps with deep regression networks.” European Conference on Computer Vision. Springer International Publishing, 2016.
    3. Henriques, João F., et al. “High-speed tracking with kernelized correlation filters.” IEEE Transactions on Pattern Analysis and Machine Intelligence 37.3 (2015): 583-596.
    4. Ma, Chao, et al. “Hierarchical convolutional features for visual tracking.” Proceedings of the IEEE International Conference on Computer Vision. 2015.
    5. Bertinetto, Luca, et al. “Fully-convolutional siamese networks for object tracking.” European Conference on Computer Vision. Springer International Publishing, 2016.
    6. Danelljan, Martin, et al. “Beyond correlation filters: Learning continuous convolution operators for visual tracking.” European Conference on Computer Vision. Springer International Publishing, 2016.
    7. Li, Hanxi, Yi Li, and Fatih Porikli. “Deeptrack: Learning discriminative feature representations online for robust visual tracking.” IEEE Transactions on Image Processing 25.4 (2016): 1834-1848.

    数据集

    1. OTB(Object Tracking Benchmark)
    2. VOT(Visual Object Tracking)

    视觉问答

    视觉问答也简称VQA(Visual Question Answering),是近年来非常热门的一个方向,其研究目的旨在根据输入图像,由用户进行提问,而算法自动根据提问内容进行回答。除了问答以外,还有一种算法被称为标题生成算法(Caption Generation),即计算机根据图像自动生成一段描述该图像的文本,而不进行问答。对于这类跨越两种数据形态(如文本和图像)的算法,有时候也可以称之为多模态,或跨模态问题。 
    这里写图片描述

    近年代表论文

    1. Xiong, Caiming, Stephen Merity, and Richard Socher. “Dynamic memory networks for visual and textual question answering.” arXiv 1603 (2016).
    2. Wu, Qi, et al. “Ask me anything: Free-form visual question answering based on knowledge from external sources.” Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. 2016.
    3. Zhu, Yuke, et al. “Visual7w: Grounded question answering in images.” Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. 2016.

    数据集

    1. VQA

    热点

    随着深度学习的大举侵入,现在几乎所有人工智能方向的研究论文几乎都被深度学习占领了,传统方法已经很难见到了。有时候在深度网络上改进一个非常小的地方,就可以发一篇还不错的论文。并且,随着深度学习的发展,很多领域的现有数据集内的记录都在不断刷新,已经向人类记录步步紧逼,有的方面甚至已经超越了人类的识别能力。那么,下一步的研究热点到底会在什么方向呢?就我个人的一些观点如下:

    1. 多模态研究: 目前的许多领域还是仅仅停留在单一的模态上,如单一分物体检测,物体识别等,而众所周知的是现实世界就是有多模态数据构成的,语音,图像,文字等等。 VQA 在近年来兴起的趋势可见,未来几年内,多模态的研究方向还是比较有前景的,如语音和图像结合,图像和文字结合,文字和语音结合等等。
    2. 数据生成: 现在机器学习领域的许多数据还是由现实世界拍摄的视频及图片经过人工标注后用作于训练或测试数据的,标注人员的职业素养和经验,以及多人标注下的规则统一难度在一定程度上也直接影响了模型的最终结果。而利用深度模型自动生成数据已经成为了一个新的研究热点方向,如何使用算法来自动生成数据相信在未来一段时间内都是不错的研究热点。
    3. 无监督学习:人脑的在学习过程中有许多时间都是无监督(Un-supervised Learning)的,而现有的算法无论是检测也好识别也好,在训练上都是依赖于人工标注的有监督(Supervised Learning)。如何将机器学习从有监督学习转变向无监督学习,应该是一个比较有挑战性的研究方向,当然这里的无监督学习当然不是指简单的如聚类算法(Clustering)这样的无监督算法。而LeCun也曾说: 如果将人工智能比喻作一块蛋糕的话,有监督学习只能算是蛋糕上的糖霜,而增强学习(Reinforce Learning)则是蛋糕上的樱桃,无监督学习才是真正蛋糕的本体。

      最后,想要把握领域内最新的研究成果和动态,还需要多看论文,多写代码。 
      计算机视觉领域内的三大顶级会议有:

      Conference on Computer Vision and Pattern Recognition (CVPR) 
      International Conference on Computer Vision (ICCV) 
      European Conference on Computer Vision (ECCV)

      较好的会议有以下几个:

      The British Machine Vision Conference (BMVC) 
      International Conference on Image Processing (ICIP) 
      Winter Conference on Applications of Computer Vision (WACV) 
      Asian Conference on Computer Vision (ACCV)

    当然,毕竟文章的发表需要历经审稿和出版的阶段,因此当会议论文集出版的时候很可能已经过了小半年了,如果想要了解最新的研究,建议每天都上ArXiv的cv板块看看,ArXiv上都是预出版的文章,并不一定最终会被各类会议和期刊接收,所以质量也就良莠不齐,对于没有分辨能力的入门新手而言,还是建议从顶会和顶级期刊上的经典论文入手。


    这是一篇对计算机视觉目前研究领域的几个热门方向的一个非常非常简单的介绍,希望能对想要入坑计算机视觉方向的同学有一定的帮助。由于个人水平十分有限,错误在所难免,欢迎大家对文中的错误进行批评和指正。


    小白入门计算机视觉:这是最全的一份CV技术学习之路

    AI


    最近AI菌决定把自己的机器学习之路向计算机视觉方面发展。所以今天就来给大家分享一下AI菌收集到的资料以及心得


    The M Tank 编辑了一份报告《A Year in Computer Vision》,记录了 2016 至 2017 年计算机视觉领域的研究成果,对开发者和研究人员来说是不可多得的一份详细材料。该材料共包括四大部分


    简介

    第一部分

        分类/定位

        目标检测

        目标追踪

    第二部分

        分割

        超分辨率、风格迁移、着色

        动作识别

    第三部分

        3D 目标

        人体姿势估计

        3D 重建

        其他未分类 3D

        总结

    第四部分

        卷积架构

        数据集

        不可分类的其他材料与有趣趋势

    结论


    有兴趣的同学可以读一读,完整 PDF 地址:http://www.themtank.org/pdfs/AYearofComputerVisionPDF.pdf


    下面是收集到的学习资料与心得的汇总:

    (文中没有发的资源将在之后陆续放出)


    01 掌握好相应的基础能力


    计算机视觉的理念其实与很多概念有部分重叠,包括:人工智能、数字图像处理、机器学习、深度学习、模式识别、概率图模型、科学计算以及一系列的数学计算等。


    所以在入门CV之前,同学们最好对基础的学术课程都有对应的了解,比如数学方面的微积分,概率学,统计学,线性代数这几门基础课程。


    在编程语言方面,Matlab,Python,C++,最好熟悉其中2种,因为计算机视觉离开计算机编程是完全行不通的




     0?wx_fmt=gif

    02 需要的专业工具


    工欲善其事,必先利其器。对于想要学好计算机视觉的同学来说,一个专业的工具,绝对是助攻的不二神器。


    OpenCV(开源计算机视觉库)是一个非常强大的学习资料库,包括了计算机视觉,模式识别,图像处理等许多基本算法。


    它免费提供给学术和商业用途,有C++,C,Python和java接口,支持Windows、Linux、Mac OS、iOS和Android。


    而关于OpenCV的学习,AI菌推荐(其中第三本目前无中文版):


    学习OpenCV(Learning.OpenCV)


    链接:

    https://pan.baidu.com/s/1c2GrPEK 密码:7012



    毛星云老师编著的OpenCV3编程入门


    链接:

    https://pan.baidu.com/s/1c2xuVFq 密码:2s4a


    学习OpenCV3(

    Learning OpenCV 3


    链接:

    https://pan.baidu.com/s/1geQeT0J 密码:cuco


    而深度学习方面,有TensorFlow,PyTorch,Caffe等深度学习框架,它们也内置了OpenCV的API接口。而哪种框架好,就要看你自己的需要了


    推荐资料:

    莫凡教程系列之PyTorch :https://morvanzhou.github.io/tutorials/machine-learning/torch/


    TensorFlow中文社区:

    http://www.tensorfly.cn/



    深度学习 21天实战Caffe




     0?wx_fmt=gif

    03 绕不开的数字图像处理与模式识别


    数字图像处理(Digital Image Processing)是通过计算机对图像进行去除噪声、增强、复原、分割、提取特征等处理的方法和技术。


    入门的同学推荐

    冈萨雷斯的《数字图像处理》《数字图像处理(第3版)(英文版)》和对应的Matlab版本


    一本讲基础的理论,一本讲怎么用Matlab实现。


    除此之外同学们还可以去YouTube上找到相关的课程信息,相信大家会有所收获的。


    模式识别(Pattern Recognition),就是通过计算机用数学技术方法来研究模式的自动处理和判读。我们把环境与客体统称为“模式”。


    计算机视觉很多东西都是基于图像识别的,图像识别就是模式识别的一种。


    模式识别通常是训练一个模型来拟合当前的数据,当我们拿到一堆数据或图片,需要从当中找到它们的关系,最便捷的便是用模式识别算法来训练一个模型。


    AI菌推荐一本模式识别入门级的教材《模式分类》,相对于《模式识别》这本书来说可能比较难,但书中介绍了很多模式识别经典的分类器,还是很值得一读。


    其中的一些思想在神经网络中也可以应用的




     0?wx_fmt=gif


    04 系统的学习下计算机视觉课程


    对于CV新手来说,想要从小白到大神,最快的方法就是先系统的学习一下计算机视觉的课程,全面了解一下计算机视觉这个领域的背景及其发展、这个领域有哪些基本的问题、哪些问题的研究已经比较成熟了,哪些问题的研究还处于基础阶段。


    在这里AI菌推荐3本经典教材:


    《计算机视觉:一种现代方法》(Computer Vision: A Modern Approach)


    《计算机视觉_算法与应用》

    (Computer Vision: Algorithms and Applications)



    《计算机视觉:模型 学习和推理》

    (Computer Vision: Models, Learning, and Inference)


    这三本教材AI菌认为是计算机视觉最好的入门教材了,内容丰富,难度适中,其中第二本书涉及大量的文献,很适合对计算机视觉没什么概念的同学。


    虽然其中的一些方法在现在看来已经过时了,但还是值得一读



     0?wx_fmt=gif

    05 深度学习与CNN


    关于深度学习这几年讲的已经太多了,资料也非常多,AI菌在这里就不在赘述啦


    计算机视觉里经常使卷积神经网络,即CNN,是一种对人脑比较精准的模拟。


    什么是卷积?卷积就是两个函数之间的相互关系,然后得出一个新的值,他是在连续空间做积分计算,然后在离散空间内求和的过程。


    同学们可以试着学习下CNN在计算机视觉当中的应用


    推荐的资料:

    斯坦福CS231n—深度学习与计算机视觉网易云课堂课程:http://study.163.com/course/introduction.htm?courseId=1003223001


    斯坦福CS231n—深度学习与计算机视觉官方课程:http://cs231n.stanford.edu/


    CS231n官方笔记授权翻译总集篇:https://www.52ml.net/17723.html


    吴恩达 deeplearning.ai与网易云课堂的微专业深度学习工程师卷积神经网络


    http://mooc.study.163.com/course/2001281004?tid=2001392030#/info


    神经网络方面的经典教材


    《深度学习》

    (Deep Learning)


    《神经⽹络与深度学习》

    (Neural Networks and Deep Learning(Nielsen,2017))





     0?wx_fmt=gif

    06 了解最新领域动态


    很多同学做研究的时候,容易陷入自我封闭的“怪圈”,过于执着于埋头学习相关知识,有时候会忘记及时了解相关领域的最新动态,这是非常不科学的。


    同学们在学习计算机视觉相关知识的时候,可以通过最新的paper来了解这个领域最新提出的一些概念以及发展的情况。


    计算机视觉的期刊有两个PAMI(模式分析与机器智能汇刊)和IJCV(计算机视觉国际期刊)


    顶级的学术会议有 CVPR、ICCV、 ECCV、 BMVC这四个,同学们可以跟着浏览这些期刊论文以及会议文章,相信一定可以学到不少有用的知识。




     0?wx_fmt=gif

    AI


    听做视觉的师兄师姐硕:做好计算机视觉研究并不是一件容易的事情,在大多数情况下它甚至是一件很枯燥的事情。


    研究成果毫无进展,研究方向不在明朗等等,这一切都会给你前所未有的压力


    所以希望同学们在决定入这一行的时候,是出于自己的热爱,而不是出于当前的趋势。


    因为热爱不会变,但趋势每一年都在变。


    计算机视觉是人工智能技术的一个重要领域,打个比方(不一定恰当),我认为计算机视觉是人工智能时代的眼睛,可见其重要程度。计算机视觉其实是一个很宏大的概念,下图是有人总结的计算机视觉所需要的技能树。 
    这里写图片描述
    如果你是一个对计算机视觉一无所知的小白,千万不要被这棵技能树吓到。没有哪个人能够同时掌握以上所有的技能,这棵树只是让你对计算机视觉有个粗浅的认识。

    以下是我站在一个小白的视角给出一个入门计算机视觉的相对轻松的姿势。

    一、宏观认识

    小白通常看到这么多的细分方向大脑一片茫然,到底是学习人脸识别、物体跟踪,又或者是计算摄影,三维重建呢?不知道该怎么下手。其实这些细分方向有很多共通的知识,我的建议是心急吃不了热豆腐,只有对计算机视觉这个领域有了一个初步的全面了解,你才能够结合实际问题找到自己感兴趣的研究方向,而兴趣能够支持一个自学的小白克服困难持续走下去。

    1、入门书籍

    既然说是入门,这里就不推荐类似《 Multiple View Geometry in Computer Vision》这种虽然经典但是小白看了容易放弃的书了。

    像素级的图像处理知识是计算机视觉的底层基础知识。不管你以后从事计算机视觉的哪个细分领域,这些基础知识都是必须要了解的。即使一个急切入门的小白,这一关也必须走的踏实。看到网上有人说直接从某个项目开始,边做边学,这样学的快。对此我表示部分赞成,原因是他忽略了基础知识的重要性,脑子里没有基本的术语概念知识打底,很多问题他根本不知道如何恰当的表达,遇到问题也没有思路,不知道如何搜索,这会严重拖慢进度,也无法做较深入的研究,欲速则不达。

    入门图像处理的基础知识也不是直接去啃死书,否则几个公式和术语可能就会把小白打翻在地。这里推荐两条途径,都是从实践出发并与理论结合:一个是OpenCV,一个是MATLAB。

    OpenCV以C++为基础,需要具备一定的编程基础,可移植性强,运行速度比较快,比较适合实际的工程项目,在公司里用的较多;MATLAB只需要非常简单的编程基础就可以很快上手,实现方便,代码比较简洁,可参考的资料非常丰富,方便快速尝试某个算法效果,适合做学术研究。当然两者搭配起来用更好啦。下面分别介绍一下。

    用MATLAB学习图像处理

    推荐使用冈萨雷斯的《数字图像处理(MATLAB版)》(英文原版2001年出版,中译版2005年)。不需要一上来就全部过一遍,只需要结合MATLAB学习一下基本原理、图像变换、形态学处理、图像分割,以上章节强烈建议按照书上手动敲一遍代码(和看一遍的效果完全不同),其他章节可快速扫描一遍即可。但这本书比较注重实践,对理论的解释不多,理论部分不明白的可以在配套的冈萨雷斯的《数字图像处理(第二版)》这本书里查找,这本书主要是作为工具书使用,以后遇到相关术语知道去哪里查就好。 
    这里写图片描述

    用OpenCV学习图像处理

    OpenCV(Open Source Computer Vision Library)是一个开源跨平台计算机视觉程序库,主要有C++预研编写,包含了500多个用于图像/视频处理和计算机视觉的通用算法。

    学习OpenCV参考《学习OpenCV》或者《OpenCV 2 计算机视觉编程手册》都可以。这两本都是偏实践的书,理论知识较少,按照书上的步骤敲代码,可以快速了解到OpenCV的强大,想要实现某个功能,只要学会查函数(在https://www.docs.opencv.org/查询对应版本),调函数就可以轻松搞定。由于每个例子都有非常直观的可视化图像输出,所以学起来比较轻松有趣。 
    这里写图片描述

    2、进阶书籍

    经过前面对图像处理的基本学习,小白已经了解了图像处理的基础知识,并且会使用OpenCV或MATLAB来实现某个简单的功能。但是这些知识太单薄了,并且比较陈旧,计算机视觉领域还有大量的新知识在等你。

    同样给你两种选择,当然两个都选更佳。一本书是2010年出版的美国华盛顿大学Richard Szeliski写的《Computer Vision: Algorithms and Application》;一本是2012年出版的,加拿大多伦多大学Simon J.D. Prince写的《Computer Vision: Models, Learning, and Inference》。两本书侧重点不同,前者侧重视觉和几何知识,后者侧重机器学习模型。当然两本书也有互相交叉的部分。虽然都有中文版,但是如果有一定的英语阅读基础,推荐看英文原版(见文末获取方式)。老外写的书,图和示例还是挺丰富的,比较利于 理解。 
    这里写图片描述

    《Computer Vision: Algorithms and Application》

    这本书图文并茂地介绍了计算机视觉这门学科的诸多大方向,有了前面《数字图像处理》的基础,这本书里有些内容你已经熟悉了,没有那么强的畏惧感。相对前面的图像处理基础本书增加了许多新的内容,比如特征检测匹配、运动恢复结构、稠密运动估计、图像拼接、计算摄影、立体匹配、三维重建等,这些都是目前比较火非常实用的方向。如果有时间可以全书浏览,如果时间不够,你可以根据兴趣,选择性的看一些感兴趣的方向。这本书的中文版翻译的不太好,可以结合英文原版看。

    《Computer Vision: Models, Learning, and Inference》

    该书从基础的概率模型讲起,涵盖了计算机视觉领域常用的概率模型、回归分类模型、图模型、优化方法等,以及偏底层的图像处理、多视角几何知识,图文并茂,并辅以非常多的例子和应用,非常适合入门。在其主页: 
    http://www.computervisionmodels.com/ 
    上可以免费下载电子书。此外还有非常丰富的学习资源,包括给教师用的PPT、每章节对应的开源项目、代码、数据集链接等,非常有用。 
    这里写图片描述


    二、深入实践

    当你对计算机视觉领域有了比较宏观的了解,下一步就是选一个感兴趣的具体的领域去深耕。这个时期就是具体编程实践环节啦,实践过程中有疑问,根据相关术语去书里查找,结合Google,基本能够解决你大部分问题。

    那么具体选择什么方向呢?

    如果你实验室或者公司有实际的项目,最好选择当前项目方向深耕下去。如果没有具体方向,那么继续往下看。

    我个人认为计算机视觉可以分为两大方向:基于学习的方法和基于几何的方法。其中基于学习的方法最火的就是深度学习,而基于几何方法最火的就是视觉SLAM。下面就这两个方向给出一个相对轻松的入门姿势。

    1、深度学习

    深度学习(Deep Learning)的概念是Hinton等人于2006年提出的,最早最成功的应用领域就是计算机视觉,经典的卷积神经网络就是为专门处理图片数据而生。目前深度学习已经广泛应用在计算机视觉、语音识别、自然语言处理、智能推荐等领域。

    学习深度学习需要一定的数学基础,包括微积分、线性代数,很多小白一听到这些课程就想起了大学时的噩梦,其实只用了非常基础的概念,完全不用担心。不过如果一上来就啃书本,可能会有强烈的畏难情绪,很容易早早的放弃。

    Andrew Ng (吴恩达)的深度学习视频课程我觉得是一个非常好的入门资料。首先他本人就是斯坦福大学的教授,所以很了解学生,可以很清晰形象、深入浅出的从最基本的导数开始讲起,真的非常难得。 
    这里写图片描述 
    该课程可以在网易云课程上免费观看,有中文字幕,但没有配套习题。也可以在吴恩达自己创办的在线教育平台Coursera上学习,有配套习题,限时免费,结业通过后有相应证书。

    该课程非常火爆,不用担心听不懂,网上有数不清的学习笔记可以参考。简直小白入门必备佳肴。

    2、视觉SLAM

    SLAM(Simultaneous Localization and Mapping)(详见《SLAM初识》),中文译作同时定位与地图创建。视觉SLAM就是用摄像头作为主传感器,用拍摄的视频流作为输入来实现SLAM。视觉SLAM广泛应用于VR/AR、自动驾驶、智能机器人、无人机等前沿领域。

    视觉SLAM最好的入门资料是高翔(清华博士,慕尼黑理工博后)的《视觉SLAM十四讲-从理论到实践》。该书每章节都涵盖了基础理论和代码示例,深入浅出,非常注重理论与实践结合,大大降低了小白的学习门槛。 
    这里写图片描述

    好了,入门介绍到此为止,你可以开始你的计算机视觉学习之旅了! 
    这里写图片描述 
    温馨提示:本文提到的部分书籍资料,公众号:“计算机视觉life” 已经为你准备好了,公众号下方回复“入门”即可获取。

    以下内容整理自 2017 年 6 月 29 日由“趣直播–知识直播平台”邀请的嘉宾实录。 
    分享嘉宾: 罗韵

    目前,人工智能,机器学习,深度学习,计算机视觉等已经成为新时代的风向标。这篇文章主要介绍了下面几点: 
    第一点,如果说你要入门计算机视觉,需要了解哪一些基础知识?

    第二点,既然你要往这方面学习,你要了解的参考书籍,可以学习的一些公开课有哪些?

    第三点,可能是大家都比较感兴趣的,就是计算机视觉作为人工智能的一个分支,它不可避免的要跟深度学习做结合,而深度学习也可以说是融合到了计算机视觉、图像处理,包括我们说的自然语言处理,所以本文也会简单介绍一下计算机视觉与深度学习的结合。

    第四点,身处计算机领域,我们不可避免的会去做开源的工作,所以本文会给大家介绍一些开源的软件。

    第五点,要学习或者研究计算机视觉,肯定是需要去阅读一些文献的,那么我们如何开始阅读文献,以及慢慢的找到自己在这个领域的方向,这些都会在本文理进行简单的介绍。

    1.基础知识

    接下来要介绍的,第一点是计算机视觉是什么意思,其次是图像、视频的一些基础知识。包括摄像机的硬件,以及 CPU 和 GPU 的运算。 
    在计算机视觉里面,我们也不可避免的会涉及到考虑去使用 CPU 还是使用 GPU 去做运算。然后就是它跟其他学科的交叉,因为计算机视觉可以和很多的学科做交叉,而且在做学科交叉的时候,能够发挥的意义和使用价值也会更大。另外,对于以前并不是做人工智能的朋友,可能是做软件开发的,想去转型做计算机视觉,该如何转型?需要学习哪些编程语言以及数学基础?这些都会在第一小节给大家介绍。

    1.0 什么是计算机视觉

    计算机视觉是一门研究如何使机器“看”的科学。 
    更进一步的说,就是指用摄影机和电脑代替人眼对目标进行识别、跟踪和测量等机器视觉,并进一步做图形处理,使电脑处理成为更适合人眼观察或传送给一起检测的图像 
    作为一个科学学科,计算机视觉研究相关的理论和技术,视图建立能够从图像或者多维数据中获取“信息”的人工智能系统。 
    目前,非常火的VR、AR,3D处理等方向,都是计算机视觉的一部分。 
    计算机视觉的应用

    • 无人驾驶
    • 无人安防
    • 人脸识别
    • 车辆车牌识别
    • 以图搜图
    • VR/AR
    • 3D重构
    • 医学图像分析
    • 无人机
    • 其他

    了解了计算机视觉是什么之后,给大家列了一下当前计算机视觉领域的一些应用,几乎可以说是无处不在,而且当前最火的所有创业的方向都涵盖在里面了。其中包括我们经常提到的无人驾驶、无人安防、人脸识别。人脸识别相对来说已经是一个最成熟的应用领域了,然后还有文字识别、车辆车牌识别,还有以图搜图、 VR/AR,还包括 3D 重构,以及当下很有前景的领域–医学图像分析。 
    医学图像分析他在很早就被提出来了,已经研究了很久,但是现在得到了一个重新的发展,更多的研究人员包括无论是做图像的研究人员,还是本身就在医疗领域的研究人员,都越来越关注计算机视觉、人工智能跟医学图像的分析。而且在当下,医学图像分析也孕育了不少的创业公司,这个方向的未来前景还是很值得期待的。然后除此之外还包括无人机,无人驾驶等,都应用到了计算机视觉的技术。

    1.1图像和视频,你要知道的概念

    • 图像 
      一张图片包含了:维数、高度、宽度、深度、通道数、颜色格式、数据首地址、结束地址、数据量等等。 
      • 图像深度:存储每个像素所用的位数(bits) 
        • 当一个像素占用的位数越多时,它所能表现的颜色就更多,更丰富。
        • 举例:一张400*400的8位图,这张图的原始数据量是多少?像素值如果是整型的话,取值范围是多少? 
          1,原始数据量计算:400 * 400 * ( 8/8 )=160,000Bytes 
          (约为160K) 
          2,取值范围:2的8次方,0~255
      • 图片格式与压缩:常见的图片格式JPEG,PNG,BMP等本质上都是图片的一种压缩编码方式 
        • 举例:JPEG压缩 
          1,将原始图像分为8*8的小块,每个block里有64pixels。 
          2,将图像中每个8*8的block进行DCT变换(越是复杂的图像,越不容易被压缩) 
          3,不同的图像被分割后,每个小块的复杂度不一样,所以最终的压缩结果也不一样
    • 视频 
      原始视频=图片序列。 
      视频中的每张有序图片称为“帧(frame)”。压缩后的视频,会采取各种算法减少数据的容量,其中IPB就是最常见的。 
      • I帧:表示关键帧,可以理解为这一幅画面的完整保留;解码时只需要本帧数据就可以完成(因为包含完整画面)
      • P帧:表示的是这一帧跟之前的一个关键帧(或P帧)的差别,解码时需要用之前缓存的画面叠加上本帧定义的差别,生成最终画面。(也就是差别帧,P帧没有完整画面数据,只有与前一帧画面差别的数据)
      • B帧表示双向差别帧,记录的本帧与前后帧的差别(具体比较复杂,有4种情况),换言之,要解码B帧,不仅要取得之前的缓存画面,还要解码之后的画面,要通过前后画面与本帧数据的叠加取得最终的画面。B帧压缩率高,但是解码比较麻烦。
      • 码率:码率越大,体积越大;码率越小,体积越小。 
        码率就是数据传输时单位时间传送的数据位数,一般我们用的单位是kbps即千位每秒。也就是取样率(并不等同于采样率,采样率用的单位是Hz,表示每秒采样的次数),单位时间内取样率越大,精度就越高,处理出来的文件就越接近原始文件,但是文件体积与取样率是成正比的,所以几乎所有的编码格式重视的都是如何用最低的码率达到最少的失真,围绕这个核心衍生出来cbr(固定码率)与vbr(可变码率),码率越高越清晰,反之则画面粗糙而且多马赛克。
      • 帧率 
        影响画面流畅度,与画面流畅度成正比:帧率越大,画面越流畅;帧率越小,画面越有跳动感。如果码率为变量,则帧率也会影响体积,帧率越高,每秒钟经过的画面就越多,需要的码率也越高,体积也越大。 
        帧率就是在一秒钟时间里传输的图片的帧数,也可以理解为图形处理器每秒钟刷新的次数。
      • 分辨率
      • 影响图像大小,与图像大小成正比;分辨率越高,图像越大;分辨率越低,图像越小。
      • 清晰度 
        在码率一定的情况下,分辨率与清晰度成反比关系:分辨率越高,图像越不清晰,分辨率越低,图像越清晰 
        在分辨率一定的情况下,码率与清晰度成正比关系:码率越高,图像越清晰;码率越低,图像越不清晰
      • 带宽、帧率 
        例如在ADSL线路上传输图像,上行带宽只有512Kbps,但要传输4路CIF分辨率的图像。按照常规,CIF分辨率建议码率是512Kbps,那么照此计算就只能传一路,降低码率势必会影响图像质量。那么为了确保图像质量,就必须降低帧率,这样一来,即便降低码率也不会影响图像质量,但在图像的连贯性上会有影响。

    1.2摄像机

    摄像机的分类:

    • 监控摄像机(网络摄像机和摸你摄像机)
    • 不同行业需求的摄像机(超宽动态摄像机、红外摄像机、热成像摄像机等)
    • 智能摄像机
    • 工业摄像机

    当前的摄像机硬件我们可以分为监控摄像机、专业行业应用的摄像机、智能摄像机和工业摄像机。而在监控摄像机里面,当前用的比较多的两个类型一个叫做网络摄像机,一个叫做模拟摄相机,他们主要是成像的原理不太一样。 
    网络摄像机一般比传统模拟摄相机的清晰度要高一些,模拟摄像机当前应该说是慢慢处于一个淘汰的状态,它可以理解为是上一代的监控摄像机,而网络摄像机是当前的一个主流的摄相机,大概在 13 年的时候,可能市场上 70% 到 80% 多都是模拟摄像机,而现在可能 60% 到 70% 都是的网络摄像机。 
    除此之外,不同的行业其时会有特定的相机,想超宽动态摄像机以及红外摄像机、热成像摄像机,都是在专用的特定的领域里面可能用到的,而且他获得的画面跟图像是完全不一样的。如果我们要做图像处理跟计算机视觉分析,什么样的相机对你更有利,我们要学会利用硬件的优势。 
    如果是做研究的话一般是可以控制我们用什么样的摄相机,但如果是在实际的应用场景,这个把控的可能性会稍微小一点,但是在这里你要知道,有些问题可能你换一种硬件,它就能够很好的被解决,这是一个思路。 
    还有些问题你可能用算法弄了很久也没能解决,甚至是你的效率非常差,成本非常高,但是稍稍换一换硬件,你会发现原来的问题都不存在了,都被很好的解决了,这个就是硬件对你的一个新的处境了。 
    包括现在还有智能摄像机、工业摄像机,工业摄像机一般的价格也会比较贵,因为他专用于各种工业领域,或者是做一些精密仪器,高精度高清晰度要求的摄像机。

    1.3 CPU和GPU

    接下来给大家讲一下 CPU 跟 GPU,如果说你要做计算机视觉跟图像处理,那么肯定跳不过 GPU 运算,GPU 运算这一块可能也是接下来需要学习或者自学的一个知识点。 
    因为可以看到,当前大部分关于计算机视觉的论文,很多实现起来都是用 GPU 去实现的,但是在应用领域,因为 GPU 的价格比较昂贵,所以 CPU 的应用场景相对来说还是占大部分。 
    而 CPU 跟 GPU 的差别主要在哪里呢? 它们的差别主要可以在两个方面去对比,第一个叫性能,第二个叫做吞吐量。 
    性能,换言之,性能会换成另外一个单词叫做 Latency(低延时性)。低延时性就是当你的性能越好,你处理分析的效率越高,相当于你的延时性就越低,这个是性能。另外一个叫做吞吐量,吞吐量的意思就是你同时能够处理的数据量。 
    而 CPU 跟 GPU 的差别在哪里呢?主要就在于这两个地方,CPU 它是一个高性能,就是超低延时性的,他能够快速的去做复杂运算,并且能达到一个很好的性能要求。而 GPU是以一个叫做运算单元为格式的,所以他的优点不在于低延时性,因为他确实不善于做复杂运算,他每一个处理器都非常的小,相对来说会很弱,但是它可以让它所有的弱处理器,同时去做处理,那相当于他就能够同时处理大量的数据,那这个就意味着它的吞吐量非常大,所以 CPU重视的是性能,GPU重视的是吞吐量。 
    所以大部分时候,GPU 他会跟另外一个词语联系在一起,叫做并行计算,意思就是它可以同时做大量的线程运算,为什么图像会特别适合用 GPU 运算呢?这是因为 GPU 它最开始的设计就是叫做图形处理单元,它的意思就是我可以把每一个像素,分割为一个线程去运算,每一个像素只做一些简单的运算,这个就是最开始图形处理器出现的原理。 
    它要做图形渲染的时候,要计算的是每一个像素的变换。所以每一个像素变换的计算量是很小很小的,可能就是一个公式的计算,计算量很少,它可以放在一个简单的计算单元里面去做计算,那这个就是 CPU 跟 GPU 的差别。 
    基于这样的差别,我们才会去设计什么时候用 CPU,什么时候用 GPU。如果你当前设计的算法,它的并行能力不是很强,从头到尾从上到下都是一个复杂的计算,没有太多可并性的地方,那么即使你用了 GPU,也不能帮助你很好提升计算性能。

    所以,不要说别人都在用 GPU 那你就用 GPU,我们要了解的是为什么要用 GPU ,以及什么样的情况下用 GPU,它效果能够发挥出来最好。

    1.4计算机视觉与其他学科的关系

    计算机视觉目前跟其他学科的关系非常的多,包括机器人,以及刚才提到的医疗、物理、图像、卫星图片的处理,这些都会经常使用到计算机视觉,那这里呢,最常问到的问题无非就是有三个概念,一个叫做计算机视觉,一个叫做机器视觉,一个叫做图像处理,那这三个东西有什么区别呢? 
    这三个东西的区别还是挺因人而异的,每一个研究人员对它的理解都不一样。 
    首先,Image Processing更多的是图形图像的一些处理,图像像素级别的一些处理,包括 3D 的处理,更多的会理解为是一个图像的处理;而机器视觉呢,更多的是它还结合到了硬件层面的处理,就是软硬件结合的图形计算的能力,跟图形智能化的能力,我们一般会理解为他就是所谓的机器视觉。 
    而我们今天所说的计算机视觉,更多的是偏向于软件层面的计算机处理,而且不是说做图像的识别这么简单,更多的还包括了对图像的理解,甚至是对图像的一些变换处理,当前我们涉及到的一些图像的生成,也是可以归类到这个计算机视觉领域里面的。 
    所以说计算机视觉它本身的也是一个很基础的学科,可以跟各个学科做交叉,同时,它自己内部也会分的比较细,包括机器视觉、图像处理。

    1.5 编程语言AND数学基础

    这一部分的内容可以参见《非计算机专业,如何学习计算机视觉

    2.参考书籍和公开课

    参考书 
    第一本叫《Computer Vision:Models, Learning and Inference》written by Simon J.D. prince,这个主要讲的更适合入门级别的,因为这本书里面配套了非常多的代码,Matlab 代码,C 的代码都有,配套了非常多的学习代码,以及参考资料、文献,都配得非常详细,所以它很适合入门级别的同学去看。

    第二本《Computer Vision:Algorithms and Applications》written by Richard Szeliski,这是一本非常经典,非常权威的参考资料,这本书不是用来看的,是用来查的,类似于一本工具书,它是涵盖面最广的一本参考书籍,所以一般会可以当成工具书去看,去查阅。

    第三本《OpenCV3编程入门》作者:毛星云,冷雪飞 ,如果想快速的上手去实现一些项目,可以看看这本书,它可以教你动手实现一些例子,并且学习到 OpenCV 最经典、最广泛的计算机视觉开源库。

    公开课: 
    Stanford CS223B 
    比较适合基础,适合刚刚入门的同学,跟深度学习的结合相对来说会少一点,不会整门课讲深度学习,而是主要讲计算机视觉,方方面面都会讲到。

    Stanford CS231N 
    这个应该不用介绍了,一般很多人都知道,这个是计算机视觉和深度学习结合的一门课,我们上 YouTube 就能够看到,这门课的授课老师就是李飞飞老师,如果说不知道的话可以查一下,做计算机视觉的话,此人算是业界和学术界的“执牛耳”了。

    3.需要了解的深度学习知识

    深度学习没有太多的要讲的,不是说内容不多,是非常多,这里只推荐一本书给大家,这本书是去年年底才出的,是最新的一本深度学习的书,它讲得非常全面,从基础的数学,到刚才说的概率学、统计学、机器学习以及微积分、线性几何的知识点,非常的全面。 
    这里写图片描述

    4.需要了解和学习的开源软件

    OpenCV 
    它是一个很经典的计算机视觉库,实现了很多计算机视觉的常用算法。可以帮助大家快速上手。 
    Caffe 
    如果是做计算机视觉的话,比较建议 Caffe。Caffe 更擅长做的是卷积神经网络,卷积神经网络在计算机视觉里面用的是最多的。 
    所以无论你后面学什么样其它的开源软件, Caffe 是必不可免的,因为学完 Caffe 之后你会发现,如果你理解了 Caffe,会用 Caffe,甚至是有能力去改它的源代码,你就会发现你对深度学习有了一个质的飞跃的理解。 
    TensorFlow 
    TensorFlow 最近很火,但是它的入门门槛不低,你要学会使用它需要的时间远比其他所有的软件都要多,其次就是它当前还不是特别的成熟稳定,所以版本之间的更新迭代非常的多,兼容性并不好,运行效率还有非常大的提升空间。

    5.如何阅读相关的文献

    先熟悉所在方向的发展历程,然后精读历程中的里程碑式的文献。 
    例如:深度学习做目标检测,RCNN,Fast RCNN,Faster RCNN,SPPNET,SSD和YOLO这些模型肯定是要知道的。又例如,深度学习做目标跟踪,DLT,SO-DLT等。

    计算机视觉的顶会: 
    ICCV:International Conference on Computer Vision,国际计算机视觉大会 
    CVPR:International Conference on Computer Vision and Pattern Recognition,国际计算机视觉与模式识别大会 
    ECCV:European Conference on Computer Vision,欧洲计算机视觉大会 
    除了顶会之外呢,还有顶刊。像 PAMI、IJCV,这些都是顶刊,它代表着这个领域里面最尖端最前沿以及当下的研究方向。


    展开全文
  • 在我的理解里,要实现计算机视觉必须有图像处理的帮助,而图像处理倚仗与模式识别的有效运用,而模式识别是人工智能领域的一个重要分支,人工智能与机器学习密不可分。纵观一切关系,发现计算机视觉的应用服务于机器...

    在我的理解里,要实现计算机视觉必须有图像处理的帮助,而图像处理倚仗与模式识别的有效运用,而模式识别是人工智能领域的一个重要分支,人工智能与机器学习密不可分。纵观一切关系,发现计算机视觉的应用服务于机器学习。各个环节缺一不可,相辅相成。

    计算机视觉(computer vision):用计算机来模拟人的视觉机理获取和处理信息的能力。就是指用摄影机和电脑代替人眼对目标进行识别、跟踪和测量等机器视觉,并进一步做图形处理,用电脑处理成为更适合人眼观察或传送给仪器检测的图像。

    计算机视觉研究相关的理论和技术,试图建立能够从图像或者多维数据中获取‘信息’的人工智能系统。计算机视觉的挑战是要为计算机和机器人开发具有与人类水平相当的视觉能力。

    机器视觉需要图象信号,纹理和颜色建模,几何处理和推理,以及物体建模。一个有能力的视觉系统应该把所有这些处理都紧密地集成在一起。

    图像处理(image processing):用计算机对图像进行分析,以达到所需结果的技术。又称影像处理。

    图像处理一般指数字图像处理。数字图像是指用数字摄像机、扫描仪等设备经过采样和数字化得到的一个大的二维数组,该数组的元素称为像素,其值为一整数,称为灰度值。

    图像处理技术的主要内容包括图像压缩,增强和复原,匹配、描述和识别3个部分。常见的处理有图像数字化、图像编码、图像增强、图像复原、图像分割和图像分析等。

    模式识别(Pattern Recognition)是指对表征事物或现象的各种形式的(数值的、文字的和逻辑关系的)信息进行处理和分析,以对事物或现象进行描述、辨认、分类和解释的过程,是信息科学和人工智能的重要组成部分。

    模式识别又常称作模式分类,从处理问题的性质和解决问题的方法等角度,模式识别分为有监督的分类(Supervised Classification)和无监督的分类(Unsupervised Classification)两种。模式还可分成抽象的和具体的两种形式。前者如意识、思想、议论等,属于概念识别研究的范畴,是人工智能的另一研究分支。我们所指的模式识别主要是对语音波形、地震波、心电图、脑电图、图片、照片、文字、符号、生物传感器等对象的具体模式进行辨识和分类。

    模式识别研究主要集中在两方面:

    一是研究生物体(包括人)是如何感知对象的,属于认识科学的范畴;

    二是在给定的任务下,如何用计算机实现模式识别的理论和方法。

    应用计算机对一组事件或过程进行辨识和分类,所识别的事件或过程可以是文字、声音、图像等具体对象,也可以是状态、程度等抽象对象。这些对象与数字形式的信息相区别,称为模式信息。

    模式识别与统计学、心理学、语言学、计算机科学、生物学、控制论等都有关系。它与人工智能、图像处理的研究有交叉关系。

    机器学习(Machine Learning)是研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。它是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域,它主要使用归纳、综合而不是演绎。

    机器学习在人工智能的研究中具有十分重要的地位。一个不具有学习能力的智能系统难以称得上是一个真正的智能系统,但是以往的智能系统都普遍缺少学习的能力。随着人工智能的深入发展,这些局限性表现得愈加突出。正是在这种情形下,机器学习逐渐成为人工智能研究的核心之一。它的应用已遍及人工智能的各个分支,如专家系统、自动推理、自然语言理解、模式识别、计算机视觉、智能机器人等领域。

    机器学习的研究是根据生理学、认知科学等对人类学习机理的了解,建立人类学习过程的计算模型或认识模型,发展各种学习理论和学习方法,研究通用的学习算法并进行理论上的分析,建立面向任务的具有特定应用的学习系统。这些研究目标相互影响相互促进。

    人类研究计算机的目的,是为了提高社会生产力水平,提高生活质量,把人从单调复杂甚至危险的工作中解救出来。今天的计算机在计算速度上已经远远超过了人,然而在很多方面,特别是在人类智能活动有关的方面例如在视觉功能、听觉功能、嗅觉功能、自然语言理解能力功能等等方面,还不如人。

    这种现状无法满足一些高级应用的要求。例如,我们希望计算机能够及早地发现路上的可疑情况并提醒汽车驾驶员以避免发生事故,我们更希望计算机能帮助我们进行自动驾驶,目前的技术还不足以满足诸如此类高级应用的要求,还需要更多的人工智能研究成果和系统实现的经验。

    什么是人工智能呢?

    人工智能,是由人类设计并在计算机环境下实现的模拟或再现某些人智能行为的技术。一般认为,人类智能活动可以分为两类:感知行为与思维活动。模拟感知行为的人工智能研究的一些例子包括语音识别、话者识别等与人类的听觉功能有关的“计算机听觉”,物体三维表现的形状知识、距离、速度感知等与人类视觉有关的“计算机视觉”,等等。模拟思维活动的人工智能研究的例子包括符号推理、模糊推理、定理证明等与人类思维有关的“计算机思维”,等等。

    从图像处理和模式识别发展起来的计算机视觉研究对象之一是如何利用二维投影图像恢复三维景物世界。计算机视觉使用的理论方法主要是基于几何、概率和运动学计算与三维重构的视觉计算理论,它的基础包括射影几何学、刚体运动力学、概率论与随机过程、图像处理、人工智能等理论。

    计算机视觉要达到的基本目的有以下几个:

    (1) 根据一幅或多幅二维投影图像计算出观察点到目标物体的距离;

    (2) 根据一幅或多幅二维投影图像计算出目标物体的运动参数;

    (3) 根据一幅或多幅二维投影图像计算出目标物体的表面物理特性;

    (4) 根据多幅二维投影图像恢复出更大空间区域的投影图像。

    计算机视觉要达到的最终目的是实现利用计算机对于三维景物世界的理解,即实现人的视觉系统的某些功能。

    在计算机视觉领域里,医学图像分析、光学文字识别对模式识别的要求需要提到一定高度。又如模式识别中的预处理和特征抽取环节应用图像处理的技术;图像处理中的图像分析也应用模式识别的技术。在计算机视觉的大多数实际应用当中,计算机被预设为解决特定的任务,然而基于机器学习的方法正日渐普及,一旦机器学习的研究进一步发展,未来“泛用型”的电脑视觉应用或许可以成真。

    人工智能所研究的一个主要问题是:如何让系统具备“计划”和“决策能力”?从而使之完成特定的技术动作(例如:移动一个机器人通过某种特定环境)。这一问题便与计算机视觉问题息息相关。在这里,计算机视觉系统作为一个感知器,为决策提供信息。另外一些研究方向包括模式识别和机器学习(这也隶属于人工智能领域,但与计算机视觉有着重要联系),也由此,计算机视觉时常被看作人工智能与计算机科学的一个分支。

    机器学习是研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。它是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域,它主要使用归纳、综合而不是演译。

    为了达到计算机视觉的目的,有两种技术途径可以考虑。

    第一种是仿生学方法,即从分析人类视觉的过程入手,利用大自然提供给我们的最好参考系——人类视觉系统,建立起视觉过程的计算模型,然后用计算机系统实现之。

    第二种是工程方法,即脱离人类视觉系统框框的约束,利用一切可行和实用的技术手段实现视觉功能。此方法的一般做法是,将人类视觉系统作为一个黑盒子对待,实现时只关心对于某种输入,视觉系统将给出何种输出。

    这两种方法理论上都是可以使用的,但面临的困难是,人类视觉系统对应某种输入的输出到底是什么,这是无法直接测得的。而且由于人的智能活动是一个多功能系统综合作用的结果,即使是得到了一个输入输出对,也很难肯定它是仅由当前的输入视觉刺激所产生的响应,而不是一个与历史状态综合作用的结果。

    不难理解,计算机视觉的研究具有双重意义。

    其一,是为了满足人工智能应用的需要,即用计算机实现人工的视觉系统的需要。这些成果可以安装在计算机和各种机器上,使计算机和机器人能够具有“看”的能力。
    其二,视觉计算模型的研究结果反过来对于我们进一步认识和研究人类视觉系统本身的机理,甚至人脑的机理,也同样具有相当大的参考意义。

    展开全文
  • 1什么是计算机视觉计算机视觉(Computer Vision)是指用计算机实现人的视觉功能——对客观世界的三维场景的感知、识别和理解。这意味着计算机视觉技术的研究目标是使计算机具有通过二维图像认知三维环境信息的能力。...

    1什么是计算机视觉

    计算机视觉(Computer Vision)是指用计算机实现人的视觉功能——对客观世界的三维场景的感知、识别和理解。


    这意味着计算机视觉技术的研究目标是使计算机具有通过二维图像认知三维环境信息的能力。因此不仅需要使机器能感知三维环境中物体的几何信息(形状、位置、姿态、运动等)而且能对它们进行描述、存储、识别与理解。可以认为,计算机视觉与研究人类或动物的视觉是不同的:它借助于几何、物理和学习技术来构筑模型,用统计的方法来处理数据。


    人工智能的完整闭环包括感知、认知、推理再反馈到感知的过程,其中视觉在我们的感知系统中占据大部分的感知过程。所以研究视觉是研究计算机的感知重要的一步。


    2发展的几个重要节点

    • 视觉研究的开端-Hubel和Wiesel关于大脑视皮层细脑感受野的论述

    感受野-(一个感觉神经元的感受野是指这个位置里适当的刺激能够引起该神经元反应的区域。感受野一词主要是指听觉系统、本体感觉系统和视觉系统中神经元的一些性质。)

    1959年,Hubel和Wiesel猫实验的故事,把微电极埋进猫的视皮质细胞,之后在屏幕上打出一些光影和图形。通过固定猫的头部来控制视网膜上的成像,并测试细胞对线条、直角、边缘线等图形的反应。Hubel和Wiesel告诉我们视觉识别应该从简单的形状开始。


    对于看到鱼和老鼠投像的猫来说,视觉处理的前期并不是对整体的鱼或者老鼠进行处理,视觉处理流程的第一步是对简单的形状的结构处理、边缘排列。只有当图片切换时的反应激烈。


    • 二维到三维- Roberts积木世界让计算机理解三维场景

    20世纪50年代主要分析二维图像,而Lary Roberts 1963年写的论文《block world》(积木世界),运用计算机程序,试图从图像中阐释出诸如立方体等多面体的这些边缘和形状。它根据线画图来理解由多面体构成的景物,并对物体形状物体的空间关系进行描述。


    • 学科的诞生

    计算机视觉真正的诞生时间是在1966年,MIT人工智能实验室成立了计算机视觉学科,标志着CV成为一门人工智能领域中的可研究的学科,同时历史的发展也证明了CV是人工智能领域中增长最快的一个学科。


    • 视觉理论:视觉是分层的

    20世纪80年代初,MIT人工智能实验室的David Marr出版了一本书《视觉》(全名《Vision: A Computational Investigation into the Human Representation and Processing of Visual Information》),他提出了一个观点:视觉是分层的。


    他认为视觉是个信息处理任务,应该从三个层次来研究和理解,即计算理论、算法、实现算法的机制或硬件。

    • 一、信息处理的计算理论,在这个层次研究的是对什么信息进行计算和为什么要进行这些计算。

    • 二、算法,在这个层次研究的是如何进行所要求的计算,即设计特定的算法

    • 三、实现算法的机制或硬件,在这个层次上研究完成某一特定算法的计算机构。

    1. 例如根据 Fourier 分析理论,任意连续函数可用它的 Fourier 频谱来表示,因此 Fourier 变换是属于第一层的理论,而计算Fourier 变换的算法是属于第二个层次的,至于实现快速,Fourier算法的阵列处理机就属于第三层次。

    视觉理论使人们对视觉信息的研究有了明确的内容和较完整的基本体系,仍被看做是研究的主流;


    3计算机视觉是一门交叉学科

    计算机视觉技术是一种典型的交叉学科研究领域,包含了生物、心理,物理,工程,数学,计算机科学等领域,存在与其他许多学科或研究方向之间相互渗透、相互支撑的关系。在概念的理解中我们常常听到AI、图像处理、模式识别、机器视觉等词语,那么他们和计算机视觉之间是怎样的关系呢?


    (图片来自网络)

    计算机视觉与人工智能

    人工智能技术主要研究智能系统的设计和有关智能的计算理论与方法。 人工智能可被分为三个阶段感知 、认知和动作执行。计算机视觉常被视为A I的一分支 。

    计算机视觉与图像处理

    图像处理中,人是最终的解释者;计算机视觉中,计算机是图像的解释者。图像处理算法在机器视觉系统的早期阶段起着很大的作用,它们通常被用来增强特定信息并抑制噪声。计算机视觉系统必须有图像处理模块存在。

    (图片来自wikipedia)

    计算机视觉与模式识别

    模式识别是根据从图像中抽取的统计特性或结构信息,把图像分为设定的类别。图像模式的分类是计算机视觉中的一个重要问题。模式识别中的许多方法可以应用于计算机视觉中。

    计算机视觉与机器视觉

    计算机视觉技术的研究目标是使计算机具有通过一幅或多幅图像认知周围环境的能力(包括对客观世界三维环境的感知 、识别与理解)。 这意味着计算机不仅要模拟人眼的功能,而且更重要的是使计算机完成人眼所不能胜任的工作。而机器视觉则是建立在计算机视觉理论基础之上,偏重于计算机视觉技术的工程化,能够自动获取和分析特定的图像,以控制相应的行为。与计算机视觉所研究的视觉模式识别、视觉理解等内容不同,机器视觉技术重点在于感知环境中物体的形状、位置 、姿态 、运动等几何信息 。两者基本理论框架、底层理论、算法相似,只是研究的最终目的不同。所以实际中并不加以严格划分,对于工业应用常使用“机器视觉” ,而一般情况下则常用“计算机视觉“。(部分选自《基于 OpenCV 的计算机视觉技术实现》


    4计算机视觉的关键任务

    1、物体识别,识别图像物体属于的类别。

    2、物体检测,用框去标出物体的位置,并给出物体的类别。

    3、分类+定位,分类问题就是给输入图像分配标签的任务,找到图像中某一目标物体在图像中的位置,即定位。

    4、图像分割,将数字图像细分为多个图像子区域(像素的集合,也被称作超像素)的过程。


    5值得关注的人工智能开放平台

    Face++人工智能开放平台包含了包括人脸识别、人体识别、证件识别、图像识别在内的CV能力的体现。承接了如手机、营销、教育、汽车等行业的落地解接方案。




    展开全文
  • 关于计算机视觉—随便聊聊zouxy09@qq.comhttp://blog.csdn.net/zouxy09 之前看了这么一本说自然图像统计学的书,本来是想着要好好看,然后每天翻译几页的。但实习的时候太忙了,没有什么时间,所以只把目录给翻译了...

    关于计算机视觉(随谈)

    zouxy09@qq.com

    http://blog.csdn.net/zouxy09

     

           之前看了这么一本说自然图像统计学的书,本来是想着要好好看,然后每天翻译几页的。但实习的时候太忙了,没有什么时间,所以只把目录给翻译了,哈哈。这本书叫:Natural Image Statistics: A Probabilistic Approach to Early Computational Vision大家可以瞧瞧。不过,看到里面视觉概述的时候,自己也想扯扯点东西,按捺不住,就吐了不少文字。如果有什么不对的地方,也还希望大家不吝指正,谢谢。

     

    一、什么叫视觉Vision?

           什么叫视觉?可能这个问题的第一反应就是:不就是看东西么。好吧,那么高大上的问题就被这么轻描淡写了。看东西不是目的,目的是看到后知道是个什么东西,然后基于这种物体与事件的联系服务于高层意识理解。哈哈,瞬间档次又拉上去了。个人浅见,目前大体视觉可以分为生物视觉和机器视觉。生物视觉就是有眼睛的动物能什么看东西的。例如喵星人、汪星人还有地球人啥的。每种动物的视觉感官不同,能感受的光波长也不同。我们如果可以知道它们是怎么工作了,就可以借鉴着做出具有类似强大功能的设备了。这其中涉及到的东西有很多,它们的视觉流是怎样的?包含怎么接受光信号的输入,到如何逐级的提取信息,再到高层的推理,还有高层到底层的反馈等等。有的已经被解密了,有的还犹抱琵琶半遮面,也的神秘依旧。遗憾的是,后者的比重更大。

          目前来说,大家最感兴趣的还是人的视觉系统。它实在是太强大了,但却又太神秘,使得众多探秘者倾注心血也只能窥知一二。不过也还是有令人欣慰的消息可以传出,然后对某些成果,也有种能用之一二,受用一生的感觉。哈哈。

           人脑中大约70%的信息是来自于眼睛。大概20-30%的皮层区域是拿来做视觉处理的。生物视觉的最终目标还是想把人的视觉系统彻底告破于天下。嗯,理想是应该丰满点。那机器视觉又是啥呢?就是机器看东西嘛。因为内在的平台还是计算机,所以叫计算机视觉。Computer Vision!它属于人工智能里面很核心的一部分。机器要像人一样,会看,会听,会说,会学习,会思考等等。其中,像人一样,视觉的信息的比重依旧是最大的。所以计算机视觉的重要性毋庸置疑。计算机视觉研究的终极目标也是如何让机器具有人一样的视觉!这听起来就挺难的是吗?嗯,之前人工智能的发展实在太缓慢了,近几年Deep Learning的出现、大数据和大机器的支撑才给人工智能的发展稍微推进了一段距离,但还有很远的路要走。很远。

           好了,视觉是啥?视觉就是看东西,呃,不是很专业。视觉是为了获取关于环境中物体和事件的信息,从物体发射或者反射出来的光中提取信息的过程。所以我们第一件需要考虑的事情是,这些信息在什么形式的时候才是有效的?

           物体发出或者反射的光会被收集和度量,当然了,这里没有特定任务的信息提取的处理。生物视觉系统和人工视觉系统都通过同一种方式来完成这第一个步骤,也就是将这些光投影到一个二维的图像中。对于人眼和摄像头,虽然存在不少差别,但图像信息的处理基本是相同的。通过非常多的感光的细胞或者感光的原件接受光,然后将这些光的强度变成一个二维图像。然后图像的每个点的光强度就保存了某种信息。

           一般来说,投影图像还具有时间和彩色的维度。但我们大部分关注静态和灰度的图像。这个图像可以表示为二维的标量函数I(x,y),也就是给定每个位置(x,y),会得到一个对应的灰度值I(x,y)。尽管位置和灰度值都应该是连续的,但典型的情况是离散采样。也就是说x和y是整数,而灰度值在每个点采样。在数字系统中,采样一般也是矩形。但实际上,生物系统中的空间采集采样并不是矩形的,甚至是无规律的。

           视觉就是从这种图像数据中提取信息的。物理环境的信息包含在这个图像中的,但很遗憾,是隐含着的。视觉系统必须将这种隐含的信息变换成明确的形式,例如识别环境中的物体。但这不是一件容易的事情。

     

    二、人类视觉系统的魔法

           视觉是个非常棘手的任务。尽管这对搞视觉的人来说没什么可以惊讶的,但对其他人来说,他们可能会觉得非常惊讶,他似乎没有意识到自己与生俱来的双眼是如此的强大和不可复制。因为他几乎毫不费力的无时无刻的既有效又快速执行这个任务。但实际上在你看我的文字的时候,你大脑的整个计算过程是非常复杂的,但可惜呀,我们一般只在乎这个结果,大脑直接给我们它的计算结果,而没有告诉我们它完成这个是多么的辛苦。默默无闻,以使得被忽略和遗忘。

           为了说明视觉的难度,我们看下图。其实一个度量后的图像就是这样子的,每个空间位置有个光的强度值。那请你告诉我,下面这幅图像是个啥?你可以破解吗?

           OK,我知道这个对大家很难,那我们看看他究竟是啥,我们把每个方块的数字换成同等幅度的灰度。瞬间清晰了,有木有,这是一张男人的脸!虽然眼睛接收到的就是上面的那些类似数字之类的东西,但我们的视觉系统把这些数字都变得有意义了,然后发现了真实世界的物体。

           到目前为止,我们做了大量惨绝人寰的简化。实际上人的视网膜的光接收器是可以接收不同波长的光的,同时我们一般是双眼看世界,而不是只用一个。还有一个最大的差别是,我们是看动态的图像,而不是静态的。相机是一次成像,而人眼则是眼睛和大脑的组合,眼睛持续不断把图像信息传递给大脑,并且眼睛在不挺的转动,让高分辨率的感应区域扫过对象的各个细节。大脑把所获得的信息进行动态累加,就得到了我们所感觉到的图像了。你惊呼,差点被忽悠了。但这些差别并没有改变一个事实,就是光信息的确是通过上图那么的数据展示的。所以视觉系统的使命就是读懂这些数据。

           大部分凡人都会同意说,这些任务刚看起来会很难,但经过一定的思考后,就会觉得应该没那么难吧?图像灰度的边缘不是可以检测出来吗?只要找到小数字和大数字相邻的地方就是边缘了呀。嗯,是的,边缘特征检测的方法目前已经可以公式计算和实现了。那边缘得到了,将这些边缘片段连接到一起,那物体的轮廓或者说某种直观的物体表达形式是不是就出来了呢?嗯,你是聪明的,这种直观的想法造就了目前很多计算机视觉的算法。很遗憾的是,这些算法在一些合成图像或者一些在高度限制环境中的图像才有好的表现,但对于无约束的自然图像来说,他们的表现就很一般。经过多年的研究,有一个结论:real-world images is extremely difficult!就算是找到物体轮廓这样一个任务也变得非常困难,因为一般物体的轮廓在物理世界中是不够清晰的,如下图:

           这不就是一个杯子吗?你看,你看,你就只在乎结果!!!我们慢慢分析下嘛。图中放大了两个地方,一个是本来杯子有边缘的地方,在图像中却没有了边缘,因为背景和杯子很像,边缘不清晰了。另一个是本来杯子没有边缘的地方,在图像中因为光照的关系,却变得有边缘了。这无中生有,有中化无,大自然的招数,怎么破!

           也许这还不能说服你。我们看看下图。我们教小孩子识图的时候,是不会拿个这么变态的图来吓他的。但不拿这个给你看,是说服不了你的。说服什么?就一点:视觉有多难,你的视觉系统有多牛掰!

            我们再看看下面的人脸:

            不要惊讶。实际上一个小孩在六岁之前,就已经认识一万到三万类的物体了。而这个物理世界,大约也就是三万种物体。你说,目前的算法如何才能够强大到囊括这三万种物体(包括能识别它们在所有环境下的所有形态)。那你会想,那人为什么可以呢?你终于问出这个问题了,累觉不爱。因为人有种能从少量样本学习的能力!一类物体,变化万千。但人只要认识其中一两个,剩下的就不攻自破了。融会贯通,举一反三,乃人类与生俱来的才能!说这个好像又没什么实际意义,是吧。要怎么利用这个来指导目前的视觉才是王道。但鄙人才疏学浅,往下就讲不了了。这也是生物视觉和机器视觉研究者穷尽一生想要共同探索的神秘世界。希望有生之年,能瞥见这美丽的星空吧。

           我有时候会想。人从呱呱坠地开始,花了六年的时间,来建立自己强大的大脑,也就是硬件设施。在这里,我还是要对人脑的硬件设备惊叹一番。据了解(这三个字就表示了不知道对不对,呵呵),人脑的CPU主频是320GHZ,目前电脑因为半导体工艺的限制,能做到3GHZ左右每个CPU核。所以咱们搞个300个CPU就可以了么?NO,NO。要运算,每个CPU之间还得通信,访问内存数据等,这些通信带宽的限制才是这种大集群的最大瓶颈。但人脑呢?它的存储体您得按斤算,哈哈。据猜测(哈哈,这算严谨么),人脑存储大概10^15GB,这还不是牛的,最牛的来了,这些空间可以作为内存和缓存使用!不要问我这代表什么了!怀疑怀疑为什么自己老忘记前天老师上课讲的东西,我昨天还记得的啊,怎么就忘了呢,这海马体废了么!哈哈,可能是忘了保存到硬盘了!然后大脑一死机,就没有了!所以记得每天要记得好好吃饭,补充能量。再来膜拜下人眼。人眼是很不可思议的精密系统,它能自动对焦,曝光自动补偿,自动运动模糊处理,目前所有让凡人穷三代的单反都望尘莫及的!还包括免费赠送的夜视功能……最神奇的是,实现这些功能,不需要升级windows和安装任何驱动,不需要耗电!每个人出生的时候就被装配了所有这些功能。所以在这里也呼吁大家好好珍爱如此高档的设备吧,追剧不要太晚,打游戏不要太晚,上班看电脑多用眼药水,哈哈。

           扯远了。回来说说大脑的系统和软件吧。我们除了睡觉的时间,每时每刻都在接收输入,然后通过自己强大的硬件设施来处理输入。非常关键的一点是,大脑里面会慢慢的建立历史学习到的东西的知识关联库。随着知识的扩充与完善,大脑的网络越来越复杂。神经元个数,神经元连接的个数,千丝万缕却又理不清。但对于计算机呢?我们的硬件设施呢?最牛掰的就是超算了。我们也建立了一个很大的网络,与人的大脑相当的网络,然后期待着几天、几个月的时间就可以让我们的计算机能达到人脑的水平,这会不会太苛刻了呢?当然了,这其中有几点不公平对比的差别。一是大脑的高层结构和运作机制实际上是不清晰的,所以目前计算机所做的高层模拟是否与大脑高层类似,这个也没有答案。二是到底是计算机快还是人脑快?做同样的事情,超算运作需要消耗一个城市一个月的电量,但人脑只需要你吃个鸡腿补充下就好了。OK,what is your point?! I am Sorry!

           生物上的启发对计算机视觉的研究者是非常重要的。很多视觉的处理过程和算法就是模拟生物视觉系统来进行设计的,而且也显示出了有效性。但到目前为止,人类对自身大脑所知还是九牛一毛,更谈不上对视觉更有力的指导了。但实际上,视觉计算理论和生物界实验没有什么谁靠谁,谁欠谁的说法。这里面官方点算就是相辅相成:视觉计算理论可以指导生物实验性研究,实验性研究结果又可以指导计算理论的研究。

           好了,不说了。

     

    展开全文
  • 随着深度学习的迅猛发展,计算机视觉也成为了目前人工智能领域落地最顺利的技术。计算机视觉(Computer Vision)是一门研究如何用摄影机和计算机代替人眼对目标进行跟踪、识别、分析、处理等。此过程极具挑战性,光...
  • 计算机视觉五大技术

    2019-07-07 16:36:56
    计算机视觉五大技术文章来源:企鹅号 - AI火箭营 计算机视觉五大技术 - 云+社区 - 腾讯云 当前计算机视觉是深度学习领域最热门的研究领域之一。计算机视觉实际上是一个跨领域的交叉学科,包括计算机科学(图形、算法...
  • 计算机视觉

    2019-11-08 12:26:41
    计算机视觉部分,主要侧重在底层特征提取,视频分析,跟踪,目标检测和识别方面等方面。对于自己不太熟悉的领域比如摄像机标定和立体视觉,仅仅列出上google上引用次数比较多的文献。有一些刚刚出版的文章,个人非常...
  • 计算机视觉如何入门

    2017-12-25 09:37:46
    这里有你要入门计算机视觉,需要了解的一些基础知识、参考书籍、公开课。 当前计算机视觉作为人工智能的一个分支,它不可避免的要跟深度学习做结合,而深度学习也可以说是融合到了计算机视觉、图像处理,包括我们说...
  • 计算机视觉入门系列(一) 综述自大二下学期以来,学习计算机视觉及机器学习方面的各种课程和论文,也亲身参与了一些项目,回想起来求学过程中难免走了不少弯路和坎坷,至今方才敢说堪堪入门。因此准备写一个计算机...
  • 计算机视觉从入门到放肆 一、基础知识 1.1 计算机视觉到底是什么? 计算机视觉是一门研究如何让机器“看”的科学 更进一步的说,就是使用摄像机和电脑代替人眼对目标进行识别、跟踪和测量等机器视觉,并进一步...
  • 如何学习计算机视觉

    2018-09-15 10:10:01
    (有关计算机视觉入门的其它只是,可以阅读另一篇文章计算机视觉入门必读)这两年,计算机视觉似乎火了起来,计算机视觉的黄金时代真的到来了吗?生物医学、机械自动化、土木建筑等好多专业的学生都开始研究其在各自...
  • 现在我们回到本系列的核心:计算机视觉,神经网络中的一种特殊版本在计算机视觉中使用最为广泛,这就是大家都知道的卷积神经网络。卷积神经网络和普通的神经网络一样,由『神经元』按层级结构组成,其间的权重和偏移...
  • 讲真在计算机这个庞大的体系下挑选出一个方向来确实蛮难,自己挑来挑去,有种乱花渐欲迷人眼的感觉,不过就目前自己的兴趣、性格和学习能力,远景规划来看,计算机视觉这个方向目前来看对我自己来说确实是一个十分...
  • 计算机视觉前沿技术探索   摘要:计算机视觉与最前沿技术如何结合? 计算机视觉软件正在改变行业,使用户的生活变得不仅更容易,而且更有趣。作为一个有潜力的领域,计算机视觉已经获得了大量的投资。北美计算机...
  • 计算机视觉顾名思义,就是让计算机具备像人眼一样观察和识别的能力,更进一步的说,就是指用摄像机和电脑代替人眼对目标进行识别、跟踪和测量,并进一步做图形处理,使电脑处理成为更适合人眼观察或传送给仪器检测的...
  • 计算机视觉是人工智能技术的一个重要领域,打个比方(不一定恰当),我认为计算机视觉是人工智能时代的眼睛,可见其重要程度。计算机视觉其实是一个很宏大的概念,下图是有人总结的计算机视觉所需要的技能树。 ...
  • 搞了CV一段时间,仍时不时因为概念问题而困惑,搞不清楚计算机视觉(Computer Vision),计算机图形学(Computer Graphics)和图像处理(Image Processing)的区别和联系。在知乎上看到了一个帖子,觉得解释的很好,结合...
1 2 3 4 5 ... 20
收藏数 148,312
精华内容 59,324
热门标签
关键字:

计算机视觉