宝贝儿好
李园园
展开
-
opencv案例: 车辆检测
车辆检测原创 2023-12-07 09:07:08 · 5273 阅读 · 5 评论 -
opencv案例: 检测人脸、检测眼睛,给人脸打框、给眼睛打框
【代码】opencv案例: 检测人脸、检测眼睛,给人脸打框、给眼睛打框。原创 2023-12-07 09:41:49 · 380 阅读 · 0 评论 -
【OpenCV】第二十五章: 图像查找、图像拼接
所以相同平面上的一个点,两个相机的角度不一样,这个平面上的点在照片上映射的点的位置就不一样。image1上的点和H运算就得到image2上对应点的位置,同理,image1和H运算可以得到对应点的实景位置,image2和H运算也可以得到对应点的实景位置。如果拍摄实景是三维立体的,就不是这么简单的一一对应了,还会有一些比如相机的中心点,三维实景的深度等细节,图形学中有这部分知识点,这里不讲。如下图所示,当我们拍摄信用卡的时候,是斜着拍的,要提取信用卡上的卡号,那就得先把斜着的照片转正,这样才能很好的提取数字。原创 2023-12-07 09:38:59 · 1040 阅读 · 0 评论 -
【OpenCV】第二十四章: 图像特征匹配:暴力特征匹配算法、FLANN特征匹配算法
参数match就是匹配器的匹配结果;参数crossCheck表示交叉检查,意思就是用第一组中的每个描述子和第二组的所有描述子进行匹配完后,再用第二组中的每个描述子和第一组的所有描述子进行匹配,这两步做完后,两步同时找到的相同的匹配对儿就是有效的匹配。方法一:用匹配器的match方法,进行特征匹配:match = bf.match(des1, des2),就是对两幅图的描述子进行计算,返回匹配的结果。匹配的时候是计算两个描述子之间的相似度,然后返回相似度最高的一对儿匹配点,也就是最终的匹配结果。原创 2023-12-07 09:34:46 · 4072 阅读 · 1 评论 -
【OpenCV】第二十三章: 图像特征检测之SURF、FAST、BRIEF、OBR算法
4、由于在检测特征点时是需要对图像中所有的像素点进行检测,然而图像中的绝大多数点都不是特征点,如果对每个像素点都进行上述的检测过程,那显然是种浪费,所以FAST采用一种进行非特征点判别的方法:首先对候选点的周围90度的点(1,9,5,13)四个点进行测试,而且是先测试1和9,如果它们两个符合阈值要求再测试5和13。继SIFT和SURF后,大家在特征点检测的速度上又进行了很多的改进尝试,但速度的提升效果都不是非常明显,直到FAST算法诞生,特征点检测的速度才有了一个质的飞跃。无法计算描述符的特征点将被删除。原创 2023-12-07 09:32:03 · 1788 阅读 · 0 评论 -
【OpenCV】第二十二章: 图像特征检测之SIFT算法
第二十二章: 图像特征检测之SIFT算法本章是二十一章的延续,继续讲图像特征的提取。我们知道Harris角点检测最大的缺陷是不具有尺度不变性,当图片放大后,原来能检测到的角点就变成边线了,就检测不到了。本章讲SIFT算法提取特征点。SIFT,全称是Scale-Invariant Feature Transform,是与缩放无关的特征检测,也就是具有尺度不变性。SIFT算法可以说是传统CV领域中达到巅峰的一个算法,这个算法强大到即使对图片进行放缩、变形、模糊、明暗变化、光照变化、添加噪声,甚至是使用不原创 2023-12-07 09:27:32 · 2675 阅读 · 1 评论 -
【OpenCV】第二十一章: 角点检测之:harris算法以及Shi-Tomasi算法
一、Harris角点检测二、Shi-Tomasi角点检测原创 2023-12-07 09:14:50 · 3891 阅读 · 0 评论 -
【OpenCV】第二十章: 图像及视频去背景
图片及视频去背景原创 2023-12-07 09:06:30 · 6072 阅读 · 2 评论 -
【OpenCV】第十九章: 视频操作入门
一、读取视频二、保存视频原创 2023-12-06 08:25:52 · 3487 阅读 · 1 评论 -
【OpenCV】第十八章: 绘图及交互
一、绘图二、鼠标交互三、滚动条控件交互原创 2023-12-06 08:24:57 · 1926 阅读 · 0 评论 -
【OpenCV】第十七章: 图像分割与提取
一、分水岭算法二、交互式前景提取:GrabCut算法原创 2023-12-06 08:24:28 · 3462 阅读 · 0 评论 -
【OpenCV】第十六章: 霍夫变换
一、霍夫变换原理二、实现流程三、API四、霍夫圆环变换原创 2023-12-06 08:23:54 · 2083 阅读 · 0 评论 -
【OpenCV】第十五章: 模板匹配
一、单模板匹配二、多模板匹配原创 2023-12-06 08:23:03 · 4309 阅读 · 0 评论 -
【OpenCV】第十四章: 傅里叶变换
一、用Numpy实现傅里叶变换二、用opencv实现傅里叶变换原创 2023-12-06 08:22:28 · 2489 阅读 · 4 评论 -
【OpenCV】第十三章: 直方图处理
一、什么是图像直方图(image histogram)?二、绘制图像直方图三、直方图均衡化四、自适应的直方图均衡化原创 2023-12-06 08:21:59 · 2509 阅读 · 0 评论 -
【OpenCV】第十二章: 图像轮廓
一、轮廓检测函数:cv2.findContours()二、轮廓绘制函数:cv2.drawContours(img, contours, contourIdx, color [, thickness, lineType, hierarchy, maxLevel, offset] )三、轮廓特征四、根据轮廓的矩特征进行图像匹配五、轮廓拟合六、凸包七、利用形状场景算法比较轮廓八、计算轮廓的特征(续)原创 2023-12-06 08:21:33 · 6777 阅读 · 0 评论 -
【OpenCV】第十一章: 图像金字塔
一、什么是图像金字塔二、为什么要生成图像金字塔,图像金字塔能干啥?三、理论基础:下采样、上采样、滤波器四、上下采样API五、高斯金字塔六、拉普拉斯金字塔原创 2023-12-06 08:20:08 · 6056 阅读 · 3 评论 -
【OpenCV】第十章: Canny边缘检测
第十章: Canny边缘检测canny边缘检测是一种一阶微分算子检测算法,但为什么还要单独拿出来讲呢,因为它几乎是边缘检测算子中最优秀的边缘检测算子,你很难找到一种边缘检测算子能显著地比Canny算子做的更好。Canny提出了边缘检测算子优劣评判的三条标准:1、较高的检测率。边缘检测算子应该只对边缘进行响应,检测算子不漏检任何边缘,也不应该将非边缘标记为边缘。2、精确定位。检测到的边缘与实际边缘之间的距离要尽可能的小。3、明确的响应。对每一条边缘只有一次响应,只得到一个点。Canny边缘检原创 2023-12-06 08:19:30 · 4761 阅读 · 0 评论 -
【OpenCV】第九章: 图像梯度
第九章: 图像梯度图像梯度是用来做边缘检测的一种方法。为什么要检测边缘?比如自动驾驶里面,我们至少要做的一个工作就是道路的边缘检测,只有正确的检测到道路的边缘我们的车才会行驶在道路上而不是开到马路牙子外。或者从另一个角度解释,我们做边缘检测不是让人眼去欣赏一张道路图片里面的道路边缘的,我们正确检测出一张图像的边缘是为了让模型更好的去认识这张图片中的道路。所以精确的边缘检测可以帮助电脑模型很好的识别这是道路还是道路外面,从而做出正确的反馈——指导汽车正确行使。图像梯度的原理: 梯度是微积分中的概原创 2023-12-06 08:17:58 · 3128 阅读 · 0 评论 -
【OpenCV】第八章: 形态学操作
第八章: 形态学操作 什么是形态学操作? 形态学,morphology, 形态学最初是生物学中研究动物和植物结构的一个分支,被引入图像处理领域后,图像形态学就指以形态为基础对图像进行分析的一种方法或技术。 图像形态学操作的核心思想是:从图像中提取 用于表达或描绘图像形状 的信息。 图像形态学操作的目的是:使计算机更够更好的对图像进行识别和理解。因为图像形态学处理后可以简化图像数据,同时保存了它们基本的形状特性,去除了不相干的结构。 关键点:图像形态学操作主要是对二值图像原创 2023-12-06 08:17:32 · 3444 阅读 · 4 评论 -
【OpenCV】第七章: 图像平滑处理
第七章: 图像平滑处理 1、什么是图像平滑处理 图像平滑处理就是,将图像中与 周围像素点的像素值差异较大的像素点 调整成 和周围像素点像素值 相近的值。 例如: 2、为什么要进行平滑处理? 因为图像在采集(生成)、传输、处理的过程中常常会存在一定的噪声干扰,比如,在图像拍摄的时候,也就是图像生成的时候,实际中往往会出现比如镜头污染、光线较强、较弱、大气折射、镜头角度等问题,导致拍摄出来的图片某些像素亮度变化过大,比如过亮或者过暗,导致人眼看到的图像画面不清晰,也就是图像有噪声,影响画质原创 2023-12-06 08:16:36 · 6663 阅读 · 1 评论 -
【OpenCV】第六章: 阈值处理、自适应阈值处理、Otsu阈值处理
第六章: 阈值处理为什么要对图像进行阈值处理? 当同一幅图像不同部分具有不同的亮度时,对其进行阈值处理后,我们可以得到一张对比度不同的图片。图像阈值处理也是图像分割操作的一个环节。一、简单阈值处理(全局阈值处理)二、自适应阈值处理(采取局部阈值的方式进行处理)三、Otsu阈值处理(自动寻找最佳的全局阈值)一、简单阈值处理阈值处理函数:cv2.threshold(src, thresh, maxval, type, dst=None) Argument: src:原图像,就是.原创 2023-12-06 08:15:11 · 4309 阅读 · 0 评论 -
【OpenCV】第五章: 几何变换:放缩、翻转、仿射变换、透视变换、重映射
第五章: 几何变换 1、什么是图像的几何变换? 图像的几何变换就是将一组图像数据经过某种数学运算,映射成另外一组图像数据的操作。所以,几何变换的关键就是要确定这种空间映射关系。 几何变换又称空间变换。对于图像数据来说,就是将一幅图像中的坐标位置映射到另一幅图像中的新坐标位置。或者说,几何变换不改变图像的像素值,只是在图像平面上进行像素的重新安排。 2、为什么要对图像进行几何变换? 对图像进行几何变换可以一定程度上的消除图像由于角度、透视关系、拍摄等原因造成的几何失真,进而造成计算机模型原创 2023-12-05 09:04:32 · 5083 阅读 · 0 评论 -
【OpenCV】第四章: 色彩空间类型转换
第四章: 色彩空间类型转换 为什么有色彩空间这个概念? 世界本是无颜色的,我们人类看到的各种有色光只是特定波长的电磁波能够刺激人眼的锥体细胞,进而在人脑中形成颜色信号而已,实际上电磁波的波长域是非常广的,而我们人类只能感知很小一块区域,并且我们眼睛的光感细胞把特定波长的电磁波刺激信号传递给大脑,大脑反馈出不同的颜色。所以对于人类来讲人类的色彩空间就是一个特定的空间。 但是如果对于打印机来讲,它的色彩空间和人类的就完全不一样,比如,在黑暗中,光越强,人类就看到越清晰的色彩,但是对于打印机来说某种颜色原创 2023-12-05 09:03:55 · 1681 阅读 · 0 评论 -
【OpenCV 】第三章: 图像运算:加法运算、位运算、掩码、位平面分解、加密、数字水印、脸部打码
第三章: 图像运算图像加法运算 1、"+" 2、cv2.add()函数 3、图像加权和:cv2.addWeighted()函数 图像位运算(位逻辑运算) 1、按位与运算:cv2.bitwise_and()函数 2、按位或运算:cv2.bitwise_or()函数 3、按位非运算:cv2.bitwise_not()函数 4、按位异或运算:cv2.bitwise_xor()函数 掩模(掩码)参数 图像与数值的运算 图像位平面分解 图像加密解密 数字水印原创 2023-12-05 09:03:21 · 3920 阅读 · 1 评论 -
【OpenCV】第二章: 图像处理基本操作:图像表示、像素处理、ROI、通道、属性
第二章: 图像处理基本操作一、图像的表示方法二值图像:每个像素点不是白色就是黑色;一个像素点只要一个bit位就能表示;用0或1表示每个像素点。 灰度图像:图像只有一种颜色,比如图像可以是红色,可以是灰色,可以蓝色,可以是绿色等等,但不管什么颜色都是只有一种颜色。但是这一种颜色我们给它分成了256个等级,就是256个灰度级,可以理解成256个不同程度的明暗度。比如一张红色的灰度图像,像素值=0就是最暗,黑色,像素值=255就是最亮,就是最亮的红色。255中明暗度正好可以用8位也就是1字节byte..原创 2023-12-05 09:01:39 · 2944 阅读 · 1 评论 -
【OpenCV 】第一章: OpenCV简介、环境搭建、安装、入门代码展示
一、人工智能介绍AI、5G、物联网 ---> 人工智能+物联网、互联网+移动互联网+物联网随着5G设备的商用,越来越多的设备开始能够联网,比如通过语音控制,比如扫地机器人、智能音响、智能家居、自动驾驶等就是互联网+移动互联网+物联网的产物。所以,软件和硬件的结合就更为重要。理论、实践 机器视觉(Machine Vision) vs 计算机视觉(Computer Vision) 通俗的说二者都是研究如何使机器看懂东西。或者说,二者都是研究如何用摄像机和电脑代替人眼对目标进行识别、跟踪和测量原创 2023-12-05 08:58:53 · 3629 阅读 · 1 评论