版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
项目一手写数字图像处理计算机视觉技术应用纸张边缘轮廓检测任务二职业能力目标01任务描述与要求02任务分析与计划03知识储备04任务实施05任务检查与评价06任务小结07任务拓展08任务二纸张边缘轮廓检测了解图像二值化知识(固定阈值二值化和自适应阈值二值化);了解形态学中的图像腐蚀和膨胀;了解轮廓检测。能够掌握边缘轮廓检测的具体流程;能够掌握轮廓检测过程中干扰项的应对方法;能够实现绘制图像轮廓。职业能力目标01知识目标技能目标职业能力目标01任务描述与要求02任务分析与计划03知识储备04任务实施05任务检查与评价06任务小结07任务拓展08任务二纸张边缘轮廓检测
此任务的主要内容是学会使用OpenCV的边缘轮廓检测和在轮廓检测过程中干扰项的应对方法。任务描述任务要求安装任务所需环境;使用OpenCV克服轮廓检测过程中的干扰;使用OpenCV实现绘制图像轮廓。任务描述与要求02职业能力目标01任务描述与要求02任务分析与计划03知识储备04任务实施05任务检查与评价06任务小结07任务拓展08任务二纸张边缘轮廓检测任务计划表通过上面的思考,你是否对本任务要完成的工作有所了解?让我们一起来制订完成本次任务的实施计划吧!任务分析与计划03项目名称手写数字图像处理任务名称纸张边缘轮廓检测计划方式自主设计计划要求请用8个计划步骤来完整描述出如何完成本次任务序号任务计划1
2
3
4
5
6
7
8职业能力目标01任务描述与要求02任务分析与计划03知识储备04任务实施05任务检查与评价06任务小结07任务拓展08任务二纸张边缘轮廓检测腐蚀与膨胀204知识储备图像二值化1轮廓检测3图像二值化04彩色图像图像二值化04灰度图像图像二值化04二值图像图像二值化04图像的二值化处理就是将图像上的点的灰度值为0或255,也就是将整个图像呈现出明显的黑白效果。将256个亮度等级的灰度图像通过适当的阈值选取而获得仍然可以反映图像整体和局部特征的二值化图像。图像二值化04图像的二值化处理就是将图像上的点的灰度值为0或255,也就是将整个图像呈现出明显的黑白效果。将256个亮度等级的灰度图像通过适当的阈值选取而获得仍然可以反映图像整体和局部特征的二值化图像。图像二值化(全局阈值法)04全局阈值法是指在二值化过程中只使用一个全局阈值的方法。它将图像的每个像素的灰度值与进行比较,若大于,则取为前景色(白色);否则,取为背景色。根据文本图像的直方图或灰度空间分布确定一个阈值,以此实现灰度文本图像到二值图像的转化。图像二值化(局部二值化法)04局部二值化方法,也称自适应阈值二值化。局部自适应阈值是根据像素的邻域块的像素值分布来确定该像素位置上的二值化阈值。这样做的好处在于每个像素位置处的二值化阈值不是固定不变的,而是由其周围邻域像素的分布来决定的。04知识储备腐蚀与膨胀2图像二值化112轮廓检测3腐蚀(erode)04腐蚀操作类似于中值平滑,会使图像中较暗的区域面积增大,较亮的的区域面积减小。如果是一张黑底,白色前景的二值图,就会使白色的前景物体颜色变小,就像被腐蚀了一样。腐蚀与膨胀腐蚀与膨胀(腐蚀)04膨胀(dilate)04膨胀操作和腐蚀操作正好相反,是取核中像素值的最大值代替锚点位置的像素值,这样会使图像中较亮的区域增大,较暗的区域减小。如果是一张黑底,白色前景的二值图,就会使白色的前景物体颜色面积变大,就像膨胀了一样。腐蚀与膨胀腐蚀与膨胀(膨胀)0404知识储备腐蚀与膨胀2图像二值化112轮廓检测3轮廓检测04轮廓是一个物像大体的形,是构成图形或物体的外缘的线条,显示其概貌特征。
轮廓检测04轮廓检测可以检测图图像或者视频中物体的轮廓,可以计算多边形边界,形状逼近和计算感兴趣区域。职业能力目标01任务描述与要求02任务分析与计划03知识储备04任务实施05任务检查与评价06任务小结07任务拓展08任务二纸张边缘轮廓检测05任务实施重点函数详解2依赖库的安装与导入1依赖库的安装与导入05本实验主要依赖OpenCV库,主流的图像处理工具。OpenCV用C++语言编写,它具有C++,Python,Java和MATLAB接口,并支持Windows,Linux,Android和MacOS,OpenCV主要倾向于实时视觉应用,并在可用时利用MMX和SSE指令,如今也提供对于C#、Ch、Ruby,GO的支持。安装依赖库依赖库的安装与导入05numpy:Python语言的一个扩展程序库,支持大量的维度数组与矩阵运算,此外也针对数组运算提供大量的数学函数库。cv2:OpenCV,强大的图像处理库,能够快速的实现一些图像处理和识别的任务。matplotlib.pyplot:Matplotlib是Python的一个绘图库,是Python中最常用的可视化工具之一,可以非常方便地创建2D图表和一些基本的3D图表,常用于显示图片。导入依赖库05任务实施重点函数详解2依赖库的安装与导入12重点函数详解05读入图片cv2.imread()函数使用函数cv2.imread(filepath,flags)读入一副图片,有以下两个参数: 1、filepath:要读入图片的完整路径; 2、flags:读入图片的标志。其中flags参数有以下三个选择: 1、cv2.IMREAD_COLOR:默认参数,读入一副彩色图片,忽略alpha通道; 2、cv2.IMREAD_GRAYSCALE:读入灰度图片;3、cv2.IMREAD_UNCHANGED:读入完整图片,包括alpha通道。cv2.imread()函数05读入图片cv2.imread()函数cv2.imread()函数重点函数详解05固定阈值二值化cv2.threshold()函数固定阈值二值化即根据自定义的阈值划分界限,超过阈值的像素值全部划分为255,低于阈值的像素值全归为0。cv2.threshold(src,thresh,maxval,type)返回两个值,第一个为得到的阈值值,第二个就是阈值化后的图像。对应参数如下:
src:表示的是图片源
thresh:表示的是阈值(起始值)
maxval:表示的是最大值
type:表示的是这里划分的时候使用的是什么类型的算法,常用值为0(cv2.THRESH_BINARY)cv2.threshold()函数重点函数详解05重点函数详解cv2.threshold()函数固定阈值二值化cv2.threshold()函数05自适应阈值二值化cv2.adaptiveThreshold()函数自适应阈值二值化函数对每个像素点作为中心取BlockSize*BlockSize大小的区域。cv2.adaptiveThreshold(src,maxval,thresh_type,type,BlockSize,C)返回处理后的图像,参数解释如下:
src:输入图,只能输入单通道图像,即需要进行二值化的一张灰度图像。
maxval:当像素值超过了阈值(或者小于阈值,根据type来决定),所赋予的值。
thresh_type:阈值的计算方法。cv2.adaptiveThreshold()函数重点函数详解05自适应阈值二值化cv2.adaptiveThreshold()函数
thresh_type:阈值的计算方法,包含以下2种类型:
cv2.ADAPTIVE_THRESH_MEAN_C;
cv2.ADAPTIVE_THRESH_GAUSSIAN_C。
ADAPTIVE_THRESH_MEAN_C:为局部邻域块的平均值,该算法是先求出块中的均值。
ADAPTIVE_THRESH_GAUSSIAN_C:为局部邻域块的高斯加权和。该算法是在区域中(x,y)周围的像素根据高斯函数按照他们离中心点的距离进行加权计算。cv2.adaptiveThreshold()函数重点函数详解05自适应阈值二值化cv2.adaptiveThreshold()函数
type:二值化操作的类型,与固定阈值函数相同,包含以下5种类型:
(1)cv2.THRESH_BINARY;(2)cv2.THRESH_BINARY_INV;
(3)cv2.THRESH_TRUNC;(4)cv2.THRESH_TOZERO;
(5)cv2.THRESH_TOZERO_INV。BlockSize:要分成的区域大小,上面的N值,一般取奇数。当BlockSize越大,参与计算阈值的区域也越大,细节轮廓就变得越少,整体轮廓越粗越明显。C:阈值计算方法中的常数项。每个区域计算出的阈值的基础上在减去这个常数作为这个区域的最终阈值,可以为负数。当C越大,每个像素点的N*N邻域计算出的阈值就越小,中心点大于这个阈值的可能性也就越大,设置成255的概率就越大,整体图像白色像素就越多,反之亦然。cv2.adaptiveThreshold()函数重点函数详解05重点函数详解自适应阈值二值化cv2.adaptiveThreshold()函数cv2.adaptiveThreshold()函数05构造卷积核cv2.getStructuringElement()函数二值图像的膨胀或腐蚀操作,类似于对图像的卷积操作。因此需要有个kernel操作矩阵,类似于卷积核。常见的是3X3的矩阵。在使用腐蚀或膨胀函数之前,我们需要使用构造卷积核函数构造一个特定大小和形状的结构元素,用于图像形态学处理。进行腐蚀或膨胀操作的核,不仅可以是矩形,还可以是十字形和椭圆形,opencv提供cv2.getStructuringElement(shape,ksize,anchor)函数来获得核,其参数如下:
shape:核的形状
cv2.MORPH_RECT:矩形
cv2.MORPH_CROSS:十字形(以矩形的锚点为中心的十字架)
cv2.MORPH_ELLIPSE:椭圆(矩形的内切椭圆)
ksize:核的大小,矩形的宽,高格式为(width,height)
anchor:核的锚点,默认值为(-1,-1),即核的中心点cv2.getStructuringElement()函数重点函数详解05腐蚀cv2.erode()函数cv2.erode(src,kernel,anchor,iterations,borderType,borderValue)函数进行腐蚀操作,其对应参数如下:
src:输入图像对象矩阵,为二值化图像
kernel:进行腐蚀操作的核,可以通过函数getStructuringElement()获得
anchor:锚点,默认为(-1,-1)
iterations:操作的次数,默认为1
borderType:边界种类
borderValue:边界值cv2.erode()函数重点函数详解05腐蚀cv2.erode()函数cv2.erode()函数重点函数详解05寻找轮廓cv2.findContours()函数轮廓对应着一系列的点的集合,opencv提供了函数cv2.findContours(image,mode,method)来获得这些点的集合。
image:寻找轮廓的图像;
mode:表示轮廓的检索模式,有四种:
cv2.RETR_EXTERNAL表示只检测外轮廓
cv2.RETR_LIST检测的轮廓不建立等级关系
cv2.RETR_CCOMP建立两个等级的轮廓,上面的一层为外边界,里面的一层为内孔的边界信息。如果内孔内还有一个连通物体,这个物体的边界也在顶层。
cv2.RETR_TREE建立一个等级树结构的轮廓。cv2.findContours()函数重点函数详解05提取纸张轮廓cv2.drawContours()函数函数cv2.drawContours(image,contours,contourIdx,color[,thickness[,lineType[,hierarchy[,maxLevel[,offset]]]])被用来绘制轮廓。
image:需要绘制轮廓的目标图像,注意会改变原图
contours:轮廓点,前函数cv2.findContours()的第一个返回值,是轮廓本身,在Python中是一个list
contourIdx:轮廓的索引,表示绘制第几个轮廓,-1表示绘制所有的轮廓
color:绘制轮廓的颜色
thickness:(可选参数)轮廓线的宽度,-1表示填充
lineType:(可选参数)轮廓线型,包括cv2.LINE_4,cv2.LINE_8(默认),cv2.LINE_AA,分别表示4邻域线,8领域线,抗锯齿线(可以更好地显示曲线)
hierarchy:(可选参数)层级结构,上述函数cv2.findContours()的第二个返回值,配合maxLevel参数使用
maxLevel:(可选参数)等于0表示只绘制指定的轮廓,等于1表示绘制指定轮廓及其下一级子轮廓,等于2表示绘制指定轮廓及其所有子轮廓
offset:(可选参数)轮廓点的偏移量cv2.drawContours()函数重点函数详解05提取纸张轮廓cv2.drawContours()函数cv2.drawContours()函数重点函数详解05保存图片cv2.imwrite()函数保存图片cv2.imwrite(filepath,image)函数,用于将图片以文件形式保存,函数内有两个参数:
1、filepath:要保存图片的完整路径; 2、image:要保存的图像名cv2.imwrite()函数重点函数详解职业能力目标01任务描述与要求02任务分析与计划03知识储备04任务实施05任务检查与评价06任务小结07任务拓展08任务二纸张边缘轮廓检测任务检查与评价061、请参照评价标准完成自评和对其他小组的互评。2、各组请代表分析本组任务实施经验。项目名称手写数字图像处理任务名称纸张边缘轮廓检测评价方式可采用自评、互评、老师评价等方式说明主要评价学生在项目学习过程中的操作技能、理论知识、学习态度、课堂表现、学
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026西安运动创伤医院招聘(18人)笔试备考题库及答案解析
- 2026年连云港市海州区公务员人员招聘笔试备考题库与答案详解
- 2026年哈尔滨市香坊区事业单位人员招聘考试试题与答案详解
- 2026年宁波市江北区公务员人员招聘笔试模拟试题与答案详解
- 2026年保洁部培训考核试卷(含答案)
- 2026年安全生产月《安全知识》模拟试题(含答案)
- 2026年塑料鞋制造行业分析报告及未来五至十年竞争格局分析
- 2026年磷霉素钙片行业洞察报告及未来五至十年发展趋势报告
- 长宁国恒竹都人力资源开发有限公司面向社会招聘派遣制人员考试参考题库及答案解析
- 2026年山西省临汾市公务员人员招聘笔试试题与答案详解
- 2026统考专升本英语:语法专项800题
- 花茶直播运营方案设计
- 2026抖音生活服务通案
- 食品企业5S管理培训
- 中介溢价协议书
- 《精密和超精密加工技术》课件-第9章 纳米技术与3D打印技术
- 水印相机管理办法
- T-HAS 147-2025 化妆刷标准规范
- QGDW11451-2015架空输电线路标识及安装规范
- 国家职业标准 4-07-03-02 劳动关系协调师 (2025年版)
- 9《生活离不开他们》(教学设计)2023-2024学年统编版道德与法治四年级下册
评论
0/150
提交评论