Python人工智能技术与应用 课件 11.【课件】4-2 完成OpenCV与图像处理基础实训_第1页
Python人工智能技术与应用 课件 11.【课件】4-2 完成OpenCV与图像处理基础实训_第2页
Python人工智能技术与应用 课件 11.【课件】4-2 完成OpenCV与图像处理基础实训_第3页
Python人工智能技术与应用 课件 11.【课件】4-2 完成OpenCV与图像处理基础实训_第4页
Python人工智能技术与应用 课件 11.【课件】4-2 完成OpenCV与图像处理基础实训_第5页
已阅读5页,还剩24页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

《Python人工智能技术与应用》能力模块四

掌握基于深度学习的计算机视觉技术应用任务二完成OpenCV与图像处理基础实训TaskImport任务导入你们公司的公交车改造方案已经成功中标,公司的整体方案是通过计算机视觉技术实现公交车的智能交互。图像数据的清洗和预处理是机器学习和计算机视觉任务中至关重要的步骤,你作为图像处理工程师,主要岗位职责是对于特定的应用场景,设计和实现相关的图像处理算法,以实现对图像的增强、分割、识别等操作,满足具体的业务需求。现需要你使用OpenCV处理数据,为后续训练模型构造交互系统提供高质量的数据。素养目标引导问题的过程中,培养学生形成勤于思考的能力获得分析解决问题以及多元化思考解决问题的方法,形成创新意识。TaskObject任务目标知识目标了解数字图像处理技术基础。了解图像数据预处理技术功能与常见方法。了解OpenCV特点与功能模块。了解图像数据预处理的常用方法。掌握使用OpenCV实现图像数据的加载、显示与保存。掌握OpenCV实现对实时视频的获取和处理。技能目标掌握使用OpenCV实现对文件中视频数据的加载和处理。掌握使用OpenCV实现对图像数据的色彩空间转换。掌握使用OpenCV实现对图像数据的大小放缩。掌握使用OpenCV实现对图片方框加工与文字标记处理,培养注重细节的职业态度。新

授利用OpenCV进行图像数据预处理的方法04CONTENTS目录数字图像处理技术基础认知01图像数据预处理技术功能与常见方法02OpenCV特点与功能横块03数字图像处理技术基础认知01定义数字图像处理技术是指使用数字计算机对数字图像进行处理、分析、识别、压缩和传输的技术。它涵盖了从图像获取、预处理、分割、特征提取、图像恢复和增强等多个方面,广泛应用于医学影像、安防监控、工业检测、机器人视觉、虚拟现实等领域。

数字图像处理技术过程数字图像处理技术基础认知01(二)分类算法的流程

数字图像处理技术的出现,使得人们能够以数字方式对图像进行处理和传输,极大地提高了图像的处理效率和准确性。随着计算机性能的提高和图像处理算法的不断优化,数字图像处理技术的应用前景越来越广阔。数字图像处理技术可以对CT、MRI等医学影像进行快速分析和诊断,提高医疗效率和准确性。数字图像处理技术可以自动检测和识别异常行为,提高监控的效率和准确性。医学领域安防监控领域数字图像处理技术基础认知01(二)分类算法的流程医学领域安防监控领域图像数据预处理技术功能与常见方法02(一)图像数据预处理技术的功能改进特征抽取、图像分割、匹配和识别的可靠性。消除图像中无关的信息,恢复有用的真实信息。增强有关信息的可检测性和最大限度地简化数据。图像数据预处理技术功能与常见方法02(二)图像数据预处理的常用方法灰度转换是指将图像从彩色转换为黑白。它通过降低图像中的像素数量降低机器学习算法中的计算复杂度。由于大多数图片识别场景不需要识别颜色,因此通过灰度转换可以大幅减少所需的计算量。灰度转换猫图片的灰度转换图像数据预处理技术功能与常见方法02(二)图像数据预处理的常用方法图像标准化是指将图像的值缩放到预定义范围,0到1之间或-1到1之间。这种标准化的目的是使不同图像的像素值在相同的范围内,从而使它们可以在同一模型中使用。图像的像素是图像最小的单位,通常用于描述图像的分辨率。每个像素都是由数字表示的,这些数字指示了该像素在红、绿、蓝(RGB)颜色空间中的强度。标准化例如,RGB彩色图像中的像素值可以表示为一个三元组,如(255,0,0),表示该像素在红色通道上的值为255,而在绿色和蓝。色通道上的值为0。图像数据预处理技术功能与常见方法02(二)图像数据预处理的常用方法数据扩充是在不收集新数据的情况下对现有数据进行微小改动以增加其多样性的过程。它是一种用于扩大数据集的技术。标准数据增强技术包括水平和垂直翻转、旋转、裁剪、剪切等。数据扩充03OpenCV特点与功能模块

OpenCV(OpenSourceComputerVisionLibrary)是由英特尔公司资助的开源计算机视觉库。可实现图像处理和计算机视觉方面的很多通用算法,例如特征检测与跟踪、运动分析、目标分割与识别以及3D重建等。OpenCV检测出宠物实例03OpenCV特点与功能模块(一)OpenCV优势兼容性好:OpenCV作为基于C/C++语言编写的跨平台开源软件具有很大的兼容性。多个操作系统和语言接口兼用:可以运行在Linux、Windows、Android和MacOS操作系统上,同时提供了Python、Ruby、MATLAB等语言的接口。算法通用:OpenCV实现了图像处理和计算机视觉方面的很多通用算法。应用领域广泛:OpenCV图像处理可以使用到多个领域当中,包括生物医学、工业、军事安防、机器视觉、航空航天等领域,例如在航空航天定位、卫星地图绘制、工厂大规模生产视觉检测、无人飞行器的视觉捕捉技术。03OpenCV特点与功能模块(二)OpenCV的主要模块介绍OpenCV具有模块化结构,包含多个共享或静态库。——定义基本数据结构的紧凑模块,包括密集的多维数组和所有其他模块使用的基本功能。——包括线性和非线性图像过滤、几何图像变换(调整大小、仿射和透视变形、通用的基于表格的重新映射)、色彩空间转换、直方图等。——视频分析模块,包括运动估计、背景减除和对象跟踪算法。核心模块图像处理VideoAnalysis(video)03OpenCV特点与功能模块(二)OpenCV的主要模块介绍OpenCV具有模块化结构,包含多个共享或静态库。——基本的多视图几何算法、单相机和立体相机校准、物体姿态估计、立体对应算法和3D重建的元素。——显著特征检测器、描述符和描述符匹配器。——检测预定义类的对象和实例(例如,面部、眼睛、杯子等)。相机校准和3D重建2D特征框架对象检测03OpenCV特点与功能模块(二)OpenCV的主要模块介绍OpenCV具有模块化结构,包含多个共享或静态库。——简单UI功能的易于使用的界面。——一个易于使用的视频捕获和视频编解码器接口。——例如FLANN和Google测试包装器、Python绑定等。高级GUI视频I/0其他04利用OpenCV进行图像数据预处理的方法

OpenCV具备强大的图像和矩阵运算能力,提供了大量的图像处理和矩阵运算函数,例如图像处理函数:cv::resize,cv::flip,cv::warpAffine、矩阵运算函数:cv::invert,cv::solve,cv::determinant。可以实现:图像的滤波0102图像分割视频处理0503图像特征提取图像识别0404利用OpenCV进行图像数据预处理的方法通过OpenCV的API可以很方便地进行图片的加载和展示。OpenCV的API分别准备imread()、imshow()、wait-Key()和destroyAllWondows()等方法,分别代表图片的加载、图片的展示、图片展示延迟和窗口的关闭等操作。K的含义(一)图像的识别与处理常用的图片处理方式04利用OpenCV进行图像数据预处理的方法(一)图像的识别与处理命令解释说明imread(filename,flag=none)表示从文件中加载图像并返回图像。imshow(winname,mat)在窗口中展示1张图片,其中,winnam和mat分别代表窗口和图片名字。waitKey(delay)参数delay表示图片展示延迟的时间,单位为ms。如果delay数值为0,则表达一直等到有键盘事件响应为止。destroyAllWindows()关闭窗口,销毁当前对象。OpenCV图像识别的常用命令及其解释说明04导入OpenCV,其语法为importcv2,然后通过cv2.imread(“文件路径/文件名”)进行加载;展示图片,如:cv2.imshow(“win1”,img1);设置延迟时间,如:waitKey(0)表示接收到键盘事件后才停止;cv2.destroyAllWindows()关闭窗口,销毁对象;01020304利用OpenCV进行图像数据预处理的方法(一)图像的识别与处理使用上述方法进行图片加载和展示时,一般需要如下4步:04利用OpenCV进行图像数据预处理的方法(二)捕获视频OpenCV通过cv2.VideoCapture捕获视频

OpenCV除了可以获得和识别静态图像外,还可以捕获视频图像。

应用OpenCV捕获视频实际上是捕获视频中的一帧帧图片,要捕获视频可以使用OpenCV提供的VideoCapture()方法,捕获视频的对象可以通过摄像头,也可以直接针对视频文件。04利用OpenCV进行图像数据预处理的方法(二)捕获视频

示例代码04利用OpenCV进行图像数据预处理的方法(三)图片的方框加工与文字标记处理OpenCV分别提供了rectangle()和putText()方法进行处理,其语法为:rectangleimg,pt1,pt2,color,thinkness=none

putText(img,,fontFace,fontScale,color,thinkness=none).

OpenCV对加载的图片可以进行加方框以及添加文字标记处理,对图片加方框和添加文字。

通过OpenCV给图片添加方框和绘制文字

04利用OpenCV进行图像数据预处理的方法(三)图片的方框加工与文字标记处理

其中各个参数分别代表的含义是:OpenCV常用命令及其含义参数含义Img要加方框的图片pt1图片的左上角坐标Pt2图片的右下角坐标Color方框线条或文字的颜色Thinlness线条或文字的厚度Text要添加的文本内容Org添加文本框的左下角位置Org添加文本框的左下角位置Fontface字体类型:常用的FONT_HERESHEY_DU-fontScale以原有字体为基准,对字体进行缩放04图像放缩可以通过使用cv2.resize()函数来实现,它接受三个参数:源图像目标图像大小插值方法。插值方法指的是指定如何在图像缩放时处理像素值的转换方式。图像放缩(四)OpenCV支持图像放缩和色彩空间转换利用OpenCV进行图像数据预处理的方法04(四)OpenCV支持图像放缩和色彩空间转换方法函数说明等比例缩放cv2.resize(img,(new_width,new_height))将图像按照指定的宽度和高度进行等比例缩放指定缩放因子cv2.resize(img,None,fx=scale_factor,fy=scale_factor)按照指定的缩放因子对图像进行缩放最邻近插值cv2.resize(img,(new_width,new_height),interpolation=cv2.INTER_NEAREST)使用最邻近插值对图像进行缩放双线性插值cv2.resize(img,(new_width,new_height),interpolation=cv2.INTER_LINEAR)使用双线性插值对图像进行缩放像素区域重采样cv2.resize(img,(new_width,new_height),interpolation=cv2.INTER_AREA)使用像素区域重采样对图像进行缩放Lanczos插值cv2.resize(img,(new_width,new_height),interpolation=cv2.INTER_LANCZOS4)使用Lanczos插值对图像进行缩放利用OpenCV进行图像数据预处理的方法OpenCV常用

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论