当我们要预测的是一个离散值时,做的工作就是“分类”。机器学习模型还可以将训练集中的数据划分为若干个组,每个组被称为一个“簇(cluster)”。它的重要特点是在学习过程中不需要用标签对训练样本进行标注。也就是说,学习过程能够根据现有训练集自动完成分类(聚类)。 OpenCV学习笔记(十七) 根据训练数据是否有标签,我们可以将学习划分为监督学习和无监督学习。前面介绍的K近
MediaPipe 是一款由 Google Research 开发并开源的多媒体机器学习模型应用框架,可以直接调用其API完成目标检测、人脸检测以及关键点检测等。本篇文章介绍其手部21个关键点检测。官方文档:https://google.github.io/mediapipe/solutions/hands.html 一. 关键函数解释 (1)mediapipe.solutions
人脸识别是指程序对输入的人脸图像进行判断,并识别出其对应的人的过程。人脸识别程序像我们人类一样,“看到”一张人脸后就能够分辨出这个人是家人、朋友还是明星。当然,要实现人脸识别,首先要判断当前图像内是否出现了人脸,也即人脸检测。只有检测到图像中出现了人脸,才能根据人脸判断这个人到底是谁。本文分别介绍人脸检测和人脸识别的基本原理,并分别给出了使用OpenCV 实现它们的简单案例。
K 近邻算法是最简单的机器学习算法之一,主要用于将对象划分到已知类中,在生活中被广泛使用。例如,教练要选拔一批长跑运动员,如何选拔呢?他使用的可能就是K 近邻算法,会选择个子高、腿长、体重轻,膝、踝关节围度小,跟腱明显,足弓较大者作为候选人。他会觉得这样的孩子有运动员的潜质,或者说这些孩子的特征和运动员的特征很接近。 内容列表 1. 理论基础 2. 计算 3
本节介绍了如何在图像上绘制图形,并且如何用鼠标和滚动条实现用户交互。 1. 绘画基础 OpenCV 提供了绘制直线的函数cv2.line()、绘制矩形的函数cv2.rectangle()、绘制圆的函数cv2.circle()、绘制椭圆的函数cv2.ellipse()、绘制多边形的函数cv2.polylines()、在图像内添加文字的函数cv2.putText()等多种绘
视频信号(以下简称为视频)是非常重要的视觉信息来源,它是视觉处理过程中经常要处理的一类信号。实际上,视频是由一系列图像构成的,这一系列图像被称为帧,帧是以固定的时间间隔从视频中获取的。获取(播放)帧的速度称为帧速率,其单位通常使用“帧/秒”表示,代表在1 秒内所出现的帧数,对应的英文是FPS(Frames Per Second)。如果从视频中提取出独立的帧,就可以使用图像处理的方法对其进行
在图像处理的过程中,经常需要从图像中将前景对象作为目标图像分割或者提取出来。例如,在视频监控中,观测到的是固定背景下的视频内容,而我们对背景本身并无兴趣,感兴趣的是背景中出现的车辆、行人或者其他对象。我们希望将这些对象从视频中提取出来,而忽略那些没有对象进入背景的视频内容。 1. 用分水岭算法实现图像分割与提取 图像分割是图像处理过程中一种非常重要的操作。分水岭算法将图像形象地比喻
直方图是图像处理过程中的一种非常重要的分析工具。直方图从图像内部灰度级的角度对图像进行表述,包含十分丰富而重要的信息。从直方图的角度对图像进行处理,可以达到增强图像显示效果的目的。 1. 直方图的含义 从统计的角度讲,直方图是图像内灰度值的统计特性与图像灰度值之间的函数,直方图统计图像内各个灰度级出现的次数。从直方图的图形上观察,横坐标是图像中各像素点的灰度级,纵坐标是具有该灰度级(像素值
前文链接: OpenCV学习笔记(九)——图像轮廓(上) OpenCV学习笔记(九)——图像轮廓(中) 6. 利用形状场景算法比较轮廓 用矩比较形状是一种非常有效的方法,不过现在有了更有效的方法。从OpenCV 3开始,有了专有模块shape,该模块中的形状场景算法能够更高效地比较形状。 6.1 计算形状场景距离 OpenCV 提供了使用“距离”作为形状比较的度量标准。这是因为形状之间
前文链接:OpenCV学习笔记(九)——图像轮廓(上) 4. 轮廓拟合 在计算轮廓时,可能并不需要实际的轮廓,而仅需要一个接近于轮廓的近似多边形。OpenCV 提供了多种计算轮廓近似多边形的方法。 4.1 矩形包围框 x,y,w,h = cv2.boundingRect( array ) 返回矩形边界左上角顶点的x坐标,y坐标,矩形宽度和高度。 参数 array 是灰度图像或轮
图像金字塔是由一幅图像的多个不同分辨率的子图所构成的图像集合。该组图像是由单个图像通过不断地降采样所产生的,最小的图像可能仅仅有一个像素点。 《OpenCV轻松入门:面向Python》学习笔记(八) 1. 理论基础 1.1 向下采样 1.2 向上采样 2. pyrDown 函数及使用 3. pyrUp 函数及使用 4. 采样
边缘检测虽然能够检测出边缘,但边缘是不连续的,检测到的边缘并不是一个整体。图像轮廓是指将边缘连接起来形成的一个整体,用于后续的计算。图像轮廓是图像中非常重要的一个特征信息,通过对图像轮廓的操作,我们能够获取目标图像的大小、位置、方向等信息。 1. 查找并绘制轮廓 1.1 查找图像轮廓:findContours函数 image, contours, hierarch
图像梯度计算的是图像变化的速度。对于图像的边缘部分,其灰度值变化较大,梯度值也较大;相反,对于图像中比较平滑的部分,其灰度值变化较小,相应的梯度值也较小。一般情况下,图像梯度计算的是图像的边缘信息。 Canny 边缘检测是一种使用多级边缘检测算法检测边缘的方法。1986 年,John F. Canny 发表了著名的论文A Computational Approach to E
模板匹配是指在当前图像A内寻找与图像B最相似的部分,一般将图像A称为输入图像,将图像B称为模板图像。模板匹配的操作方法是将模板图像B在图像A上滑动,遍历所有像素以完成匹配。 1. 模板匹配基础 result = cv2.matchTemplate(image, templ, method[, mask ] ) image 为原始图像,必须是8 位或者32 位的浮点型图像。
1. 腐蚀 腐蚀是最基本的形态学操作之一,它能够将图像的边界点消除,使图像沿着边界向内收缩,也可以将小于指定结构体元素的部分去除。 腐蚀用来“收缩”或者“细化”二值图像中的前景,借此实现去除噪声、元素分割等功能。 需要注意的是,腐蚀操作等形态学操作是逐个像素地来决定值的,每次判定的点都是与结构元中心点所对应的点。 如果结构元完全处于前景图像中(左图),就将结构元中心点所对应的腐蚀结果图像中
在尽量保留图像原有信息的情况下,过滤掉图像内部的噪声,这一过程称为对图像的平滑处理,所得的图像称为平滑图像。 《OpenCV轻松入门:面向Python》学习笔记(五) 内容列表 《OpenCV轻松入门:面向Python》学习笔记(五) 1. 均值滤波 2. 方框滤波 3. 高斯滤波 4. 中值滤波 5. 双边滤波 6. 2D卷积 1.
1. 缩放dst = cv2.resize( src, dsize[, fx[, fy[, interpolation]]] ) dst 代表输出的目标图像,该图像的类型与src 相同,其大小为dsize(当该值非零时),或者可以通过src.size()、fx、fy 计算得到。src 代表需要缩放的原始图像。dsize 代表输出图像大小。fx 代表水平方向的缩放比例。code 是色彩空间转换码。
OpenCV学习笔记
博客
泡泡
积分
勋章
OpenCV学习笔记(十七)——K均值聚类
OpenCV项目实战——基于MediaPipe的手部关键点检测
OpenCV学习笔记(十八)——人脸识别
OpenCV学习笔记(十五)——k近邻算法
OpenCV学习笔记(十四)——绘图及交互
OpenCV学习笔记(十三)——视频处理
OpenCV学习笔记(十二)——图像分割与提取
OpenCV学习笔记(九)——直方图处理
OpenCV学习笔记(九)——图像轮廓(下)
OpenCV学习笔记(九)——图像轮廓(中)
OpenCV学习笔记(八)——图像金字塔
OpenCV学习笔记(九)——图像轮廓(上)
OpenCV学习笔记(七)——图像梯度及边缘检测
OpenCV学习笔记(十一)——模板匹配
OpenCV学习笔记(六)——形态学操作
OpenCV学习笔记(五)——图像平滑处理(滤波)
OpenCV学习笔记(三)——图像几何变换
第三方账号登入
看不清?点击更换
第三方账号登入
QQ 微博 微信