CV 领域这样入门进阶才是对滴(一)

栏目: 编程工具 · 发布时间: 5年前

CV 领域这样入门进阶才是对滴(一)

转眼间,我们都跨进了2019年的大门,“ 计算机视觉战队 ”已经好久没有和您们好好的一起谈论Object Detection、Face Recognition、Video Segmentation等等领域的所有相关知识。在此,也感谢大家长久的陪伴与支持,谢谢!

年后 ,计划在杭州来一次我们线下的交流会,怎么样?我们可以聚集在一起,相互认识,可以相互交流,也可以不谈技术,多认识圈内的朋友,以后一起学习,共同进步!

今天开始,我们平台将会推送一系列计算机视觉类的入门知识及相对应的实践分享,若您感兴趣,请持续关注我们的动态!

为了表示大家对平台的关注与支持,每次推送的末尾留言前十名即将成为幸运儿,本平台会通过私信发送口令红包作为奖励,望大家踊跃参与,不仅可以学习知识还可以得到小小的红包奖励 :confetti_ball:

:eyes: 计算机视觉简单介绍 :eyes:

计算机视觉是一门用计算机模拟生物视觉的学科,其实计算机视觉(Computer Vision)又称为机器视觉(Machine Vision),顾名思义是一门“教”会计算机如何去“看”世界的学科。更具体地讲,其实就是让计算机代替人眼实现对目标的识别、分类、跟踪及场景的理解。

CV 领域这样入门进阶才是对滴(一)

当今,在机器学习火热的前景下,计算机视觉与自然语言处理(Natural Language Process, NLP)及语音识别(Speech Recognition)并列为机器学习领域三大热门方向

然而,计算机视觉领域中的传统的手动设计特征,如 梯度方向直方图(Histogram of Gradient, HOG)、定向光流直方图( Histogramsof Oriented Optical Flow, HOF )以及尺度不变特征变换(Scale-Invariant Feature Transform, SIFT)等特征,还有前期的玻尔兹曼机、人工神经网络等浅层模型,然后就是 传统的手动设计特征与 浅层模型的 组合等技术迅速发展,并且在近几年逐渐转向了以卷积神经网络(Convolutional Neural Network, CNN)为代表的深度学习模型。

:eyes: 入门需要展望的基础技术 :eyes:

既然说到了计算机视觉,那肯定与其最相关的是OpenCV,先来简单说说这个开源的、跨平台的计算机视觉库,好像是由英特尔公司发起并参与开发的一款工具,在研究领域和商业中都是可以免费使用,如果你要进入该领域,必须要有这个 工具 使用的基础技术,尤其是基于 Python 来开发基于OpenCV3的应用。

CV 领域这样入门进阶才是对滴(一)

Python作为当前非常主流的动态语言之一,不仅非常简单,而且功能强大,如果你有了Python的基础,来学习OpenCV框架的话,我觉得应该可以让你更加快速的去理解计算机视觉的基本概念及一些常用算法。

:eyes: 图像基础技术不可少 :eyes:

只要涉及到计算机视觉,应该与图像有着紧密不可分的关系。接下来我简单介绍下图像类的基础,有兴趣或者有需求的您自行去补充自己所需的干货。

像素

像素是图像中最最最基础的构成,算法框架中的每张输入图像都是由像素集合组成, 若将图像看作网格组成的,那每个小块就是由单个像素组成,如下所示:

CV 领域这样入门进阶才是对滴(一)

比如,上面的猫图,其分辨率为720 * 1080,意味着有720像素宽,1080像素高,在图像中则就一共有720 * 1080 = 777600个像素组成。其中, 灰度图中 ,每个像素的值在 [0,255] 的范围之间,0对应黑色,255对应为白色,在0 - 255之间的值是不同程度的灰色,越靠近 0 越黑,越靠近 255 的越白。如下图:

CV 领域这样入门进阶才是对滴(一)

RGB 的颜色通道中,像素则代表了3个值的列表,一个为红色,一个为绿色,一个为蓝色。同样的每个颜色通道取值也在范围 [0,255]  中,0代表不表示当前颜色,255代表全部表示当前颜色。若 给定红绿蓝三种颜色的值,可以将以红、绿和蓝的格式组合成一个元组,这个元组就代表着RGB通道中的图片。

OpenCV案例

每个像素都会有一个值,但是不同格式表示像素的方式会有不同的,比如你用Python和NumPy表示一幅图像的细节,可以通过二维NumPy数组简单创建黑色的正方形图像:

img = numpy.zeros( ( 3 , 3 ) , dtype = numpy.uint8 )

从控制台打印这张图像的话,你可以看到下面的结果:

arry( [ [ 0, 0, 0] ,

[0, 0, 0],

[0, 0, 0], dtype = uint8 )

其实可以用cv2.cvtColor函数将上面的图像转换成BGR (Blue-green-red) 格式:

img = cv2.cvtColor ( img, cv2.COLOR_GRAY2BGR )

从上面的结果可以看出,每个像素都由一个三元数组表示,而且每个整型向量分别表示一个B、G和R通道。其他的色彩空间(HSV)也可以以同样方式表示像素,只是取值范围和通道数不同。(HSV的色度值范围是0 - 180)

今天就先说到这里吧,接下来我们开始一起学习基本图像处理及相关小实践。

如果想加入我们“ 计算机视觉战队 ”,请扫二维码加入学习群,我们一起学习进步,探索领域中更深奥更有趣的知识!

CV 领域这样入门进阶才是对滴(一)


以上所述就是小编给大家介绍的《CV 领域这样入门进阶才是对滴(一)》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

计算机系统基础

计算机系统基础

袁春风 / 机械工业出版社 / 2014-7-1 / CNY 49.00

《计算机类专业系统能力培养系列教材:计算机系统基础》主要介绍与计算机系统相关的核心概念,解释这些概念如何相互关联并最终影响程序执行的结果和性能。共分8章,主要内容包括数据的表示和运算、程序的转换及机器级表示、程序的链接、程序的执行、存储器层次结构、虚拟存储器、异常控制流和I/O操作的实现等。内容详尽,反映现实,概念清楚,通俗易懂,实例丰富,并提供大量典型习题供读者练习。本书可以作为计算机专业本科或......一起来看看 《计算机系统基础》 这本书的介绍吧!

图片转BASE64编码
图片转BASE64编码

在线图片转Base64编码工具

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器