基本信息
文件名称:计算机视觉案例教程 课件 第05章2.pptx
文件大小:20.95 MB
总页数:55 页
更新时间:2025-03-15
总字数:约1.46千字
文档摘要

人工智能学院;;;;;;;;;;;;自行查找资料

读取“lena02.png”

用盒式滤波器进行滤波;知识问答;;;;;FAST

FeaturesfromacceleratedSegmentTest

只负责检测固定尺度的特征点(角点)

速度更快

;选择一个点p,标出其领域内的点

圆周点

p1-p16;计算4个圆周点和中心点p的像素差

p1、p5、p9、p13

定义一个阈值t

0-255

与阈值t比较

是否至少3个差值都大于t或者都小于-t

如是,则p为候选角点

如否,则p不是角点

;对于候选点p,计算所有圆周点和点p的像素差

与阈值t比较,是否至少连续N个大于阈值t或者小于-t

N自选,如9、10、11、12

如是,则p是角点

如否,则p不是角点

;知识链接-FAST算法;BRIEF

BinaryRobustIndependentElementaryFeatures

只负责对已检测到的关键点建立描述符

计算速度快,匹配时间短;计算过程

高斯滤波,减少噪声干扰

选取特征点为中心的邻域窗口,随机选取像素点,比较大小,结果为1或0

重复上一个步骤N次,得到长度N的特征向量----描述符

;ORB

OrientedFASTandRotatedBRIEF

FAST+BRIEF的优化版

计算速度快

旋转不变性;opencv中,ORB算法可以通过cv2.ORB_create()函数进行调用。;知识问答;课堂讨论;特征提取

得到了目标图像与待匹配图像的特征点

然后根据特征点进行特征描述

特征描述符

比如一个128维向量

;课堂讨论;特征提取

特征点查找

描述符生成

特征匹配;暴力匹配

Bruteforce

;opencv-python中,暴力搜索算法可以通过cv2.BFMatcher()函数进行创建

;KNN

邻近算法

K最邻近

K-NearestNeighbor

就是K个最近的邻居的意思

图中k=3

;FLANN

FastApproximateNearestNeighborSearchLibrary

性能优化的KNN

FLANN算法可以通过cv2.FlannBasedMatcher(indexParams,searchParams)函数进行创建

indexParams和searchParams都是dict形式,键值根据用户指定的具体算法而变化

;课堂讨论;01;硬件条件

一台计算机

软件条件

Windows10,64位

PyCharmWindows社区版,Version:2021.1.2

OpenCV-Python4.5.3.56、Numpy1.19.5、Matplotlib3.3.4等;01;任务实施-项目任务概述;根据讲义内容,完成上述综合项目

如果使用讲义中的代码,播放会出现问题

请找到问题,定位相关的代码缺陷,进行修改

最后给我看的是能够流畅播放的版本

;使用摄像头

实时拍摄可??(雪碧)瓶,并显示图像

然后完成可乐(雪碧)瓶上的Logo定位

;任务实施-获取命令行输入;任务实施-初始化特征检测和匹配方法;任务实施-logo图片读取和计算特征点;任务实施-视频读取和特征点匹配;任务实施-提取可信的匹配特征对;任务实施-将匹配的特征区域用四边形方式展示;任务实施-结果示意图;01;项目中使用的是KNN作为特征匹配法

尝试替换为暴力搜索法

比较其效果

;01;学会如何提取图像特征

学会如何将这些特征用在查找和定位特定图像内容上;Thanks!