欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    4-halcon简介教学课件.pptx

    • 资源ID:12048592       资源大小:1.28MB        全文页数:32页
    • 资源格式: PPTX        下载积分:20金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要20金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    4-halcon简介教学课件.pptx

    机器视觉及应用第四章halcon简介3/ Halcon介绍主要内容 界面认识菜单栏工具栏子窗口 Halcon数据类型Image图像Region区域XLD轮廓Tuple元组 Halcon机器视觉程序示例 Halcon控制语句If条件语句While循环语句For循环语句Switch分支语句中断语句4/halcon是德国慕尼黑MVTec公司开发的机器视觉软件。1996年成立至今,只关注于机器视觉算法与软件的研究与开发,是世界知名的视觉软件世界知名的视觉软件开发公司。halcon源自学术界,它是由一千多个各自独立的函一千多个各自独立的函数数,以及底层的数据管理核心构成的一套图像处理库。halcon中这些图像处理函数称为算子算子。只要用得到图像处理的地方,就可以用halcon提供的算子进行处理。Halcon的应用涵盖了几乎所有范围所有范围,包括常见的工业应用,也包括医学,遥感探测,监控等各方面的应用。5/Image是halcon中用于表示图像图像的数据数据类型。Image对应各种格式的图像,如BMP、JPG、PNG、TIFF等,也可以直接从相机获取图像数据。有三种打开方式。第一种,选择选择“文件文件”菜单的“读取图像”菜单;第二种,直接利用算子算子read_imageread_image读取图像;第三种,利用图像获取助手图像获取助手打开图像。例例 读取Image图像数据并获取图像信息以及通道分解、合并、彩色模式转换、灰度图转换等操作。 *打开图像文件read_image (Image,E:/示例/例4-1.bmp)*得到图像的宽高信息get_image_size (Image, Width, Height)*得到图像的数据类型get_image_type (Image, Type)*得到图像的通道数,结果在控制变量Channels中count_channels (Image, Channels)*将彩色图像分解为多个单通道图像decompose3 (Image,ImageR,ImageG,ImageB)*打开图像文件read_image (Image,E:/示例/例4-1.bmp)*得到图像的宽高信息get_image_size (Image, Width, Height)*得到图像的数据类型get_image_type (Image, Type)*得到图像的通道数,结果在控制变量Channels中count_channels (Image, Channels)*将彩色图像分解为多个单通道图像decompose3 (Image,ImageR,ImageG,ImageB)*将多个单通道图像合并为一个多通道图像compose3 (ImageR, ImageG, ImageB, MultiChannelImage)*将RGB图像转换成hsv制式图像trans_from_rgb (ImageR,ImageG,ImageB,ImageH,ImageS,ImageV,hsv)*将hsv制式的三个单通道图H、S、V转成RGB格式的R、G、Btrans_to_rgb (ImageH,ImageS,ImageV,R,G,B,hsv)*将三个单通道的R、G、B图像合并为一个多通道图像compose3 (R, G, B, MultiChannelImage1)*从一个多通道图像转换成灰度图像rgb1_to_gray (MultiChannelImage1, GrayImage)*将三个单通道图像R、G、B转成一个灰度图像rgb3_to_gray(R,G,B,ImageGray1)halcon中,用RegionRegion来表示图像中的某个区域区域。Region可以通过交互式绘制交互式绘制得到,也可以通过图像处理算法自动生成自动生成。如二值化算法、区域分割算法等。图像生成Region之后,可以只对Region部分包含的图像数据进行处理。在halcon中,用类似于游程编码的方式来表示Region。Region是一个几何形状几何形状,如点、直线、矩形、圆、椭圆以及任意形状等。绘制的Region几何形状的边界可以超越图像边界超越图像边界,但是生成Region之后超过图像边界部分自动忽略。Region之间可以进行交集、并集、补集交集、并集、补集等操作,每个Region区域是用户自定义的或算法自动生成的图像中的连通域。每个Region代表一幅图像中的某块子图像。Region附带多种图像特征信息图像特征信息,可以通过统计每个Region特征信息实现对不同Region的区分。 例例对Region进行操作示意。*读取图像read_image (Image,E:/示例/例4-3.bmp)*得到图像大小get_image_size (Image, Width, Height)*对图像进行二值化处理,得到Regionthreshold (Image, Regions, 111, 255)*得到Rgions中的每个联通Regionconnection (Regions, ConnectedRegions)*根据每个Region的面积大小筛选Regionselect_shape (ConnectedRegions, SelectedRegions, area, and, 23526.9, 50000)*将筛选出来的每个Region组合成一个Regionunion1 (SelectedRegions, RegionUnion)*根据组合后的Region从原图像中取出Region包含的图像reduce_domain (Image, RegionUnion, ImageReduced)*得到Region包含的图像的大小,该大小与原图像一样大get_image_size (ImageReduced, Width1, Height1)*将Region包含的图像从原图像中单独取出来作为一幅独立的图像crop_domain (ImageReduced, ImagePart)*得到取出的图像的大小,该图像大小与原图像不相同get_image_size (ImagePart, Width2, Height2)*组合后的Region再次分解为每个连通域Regionconnection (RegionUnion, ConnectedRegions1)*统计每个连通域Region的面积和中心位置area_center (ConnectedRegions1, Area, Row, Column)可以将XLD理解为图像中某个区域的轮廓区域的轮廓。轮廓是不同区域之间的边界边界。通过对轮廓的不同特征的统计,可以区分图像中不同的区域。XLDXLD代表亚像素精度的轮廓代表亚像素精度的轮廓。亚像素精度是指相邻两像素之间的细分情况,通常为二分之一,三分之一或四分之一,这意味着每个像素将被分为更小的单元从而对这些更小的单元实施插值算法。因此,XLD代表的不是图像中每个像素点,而是亚像素精度的点集而是亚像素精度的点集。采用亚像素精度表示提高了轮廓表达的精度。与Region类似,XLD也附带了多种特征,可以利用这些特征信息实现对图像中不同区域的分割。XLD的特征分为四类:基本特征、形状特征、点特征和基本特征、形状特征、点特征和矩特征矩特征。 例例4-44-4 对XLD进行操作示意*读取图像read_image (Image, E:/示例/例4-4.bmp)*以亚像素精度从图像中提取水平交叉点作为XLD轮廓边界threshold_sub_pix (Image, Border, 128)*计算轮廓边界的面积和中心中心area_center_xld (Border, Area, Row, Column, PointOrder)*利用XLD的面积特征刷选轮廓select_shape_xld (Border, SelectedXLD, area, and, 25000, 100000)*利用XLD的等效椭圆方向刷选轮廓select_shape_xld (SelectedXLD, SelectedXLD1, phi, and, 0.8519, 2)*从XLD轮廓生成Regiongen_region_contour_xld (SelectedXLD1, Region, filled)*从Region生成XLD轮廓gen_contour_region_xld (Region, Contours, border)*计算XLD轮廓的面积和中心area_center_xld (SelectedXLD1, Area1, Row1, Column1, PointOrder1)Halcon中的Tuple元组与其他语言如C语言中的数组类似。可以直接将Tuple理解为数组数组。其数据类型可以是intint、stringstring等各种类型等各种类型。Tuple元组的索引值从从0 0开始开始,最后一个索引是Tuple的长度减去1。Tuple有多个操作函数多个操作函数。包括基本的数学运算、指数与对数运算、字符串运算、三角函数运算、位运算、比较运算等。例例 Tuple基本操作*定义一个空元组Tuple1 :=* 将一个Tuple元组赋值给变量Tuple1 := 1,2,3,4,5,6,7,8,9*给Tuple元组指定元素赋值Tuple11 := 0* 批量改变元组元素的值Tuple11,3,5 := hello* 批量给Tuple元组赋值,其值为0到100连续数值Tuple2 := 0:100* 批量给Tuple元组赋值,其值为1到100连续数值,步长为2Tuple3 := 1: 2: 100Tuple4 := 100: -10: -100* 对两个Tuple元组进行合并操作TupleInt1 := 1,2,3,4,5TupleInt2 := 6,7,8,9,10tuple_union (TupleInt1, TupleInt2, UnionInt)* 对两个Tuple元组进行交集操作TupleInt3 := 1,2,3,4,5TupleInt4 := 3,4,5,6,7tuple_intersection (TupleInt3, TupleInt4, IntersectionInt)* 对Tuple元组元素进行替换OriginalTuple := 0,1,2,3,4,5tuple_replace (OriginalTuple, 0, 1, x, y, Replaced)* 向Tuple元组插入数值OriginalTuple := 0,1,2,3,4,5tuple_insert (OriginalTuple, 3, x, InsertSingleValueA) if条件语句条件语句(1)if (表达式) 满足if条件后执行的语句 endif (2)if (表达式) 满足if条件后执行的语句 else 不满足if条件后执行的语句 endif(3)if (表达式) 满足if条件后执行的语句 elseif 不满足if条件后执行的语句 else 不满足以上条件后执行的语句 endif while循环循环语句语句while(条件)循环语句Endwhile例例 while循环语句示意,计算从1到100的累加和。*定义初始值a等于1,thesun等于0a := 1theSum := 0*while循环While (a = 100) theSum := theSum + a a := a + 1endwhile for循环循环语句语句for (index := start to end by step) 循环体endfor例例利用for循环计算从1到100的累加和。theSum := 0for Index := 1 to 100 by 1 theSum := theSum + Indexendfor switch分支条件分支条件语句语句switch(条件) case 常量表达式1: 执行语句1breakcase 常量表达式2: 执行语句2breakcase 常量表达式n: 执行语句nbreakdefault:执行语句Endswitch例例 switch语句使用示意。a := 2switch (a) case 2: b := 1 break case 1: b := 0 break case 0: b := -1 break default: b := -2 endswitch 中断中断语句语句在halcon中,中断语句有两种,一种是continue,另一种是break。continue用于跳出当前循环体余下的语句执行下一次循环;break用于跳出当前循环或switch分支。例例 continue和break使用示意。theSum := 0for Index := 1 to 10 by 1 if (Index =5) continue elseif (Index = 8) break endif theSum := theSum + Indexendfor第一个机器视觉第一个机器视觉例子例子例例 提取回形针的位置和方向*读取图像read_image (Clip, E:/示例/clip.png)*设置颜色dev_set_color (green)*一种二值化算法,分割出回形针与背景binary_threshold (Clip, Dark, max_separability, dark, UsedThreshold)*提取每个连通域connection (Dark, Single)*根据面积大小过滤无关部分,只保留回形针区域select_shape (Single, Selected, area, and, 5000, 10000)第一个机器视觉第一个机器视觉例子例子*计算每个回形针的方向orientation_region (Selected, Phi)*计算每个回形针的面积大小和位置area_center (Selected, Area, Row, Column)*设置显示样式如线宽、填充样式等dev_set_line_width (3)dev_set_draw (margin)Length := 80*得到窗体句柄dev_get_window (WindowID)*在窗体上指定位置显示箭头disp_arrow (WindowID, Row, Column, Row - Length * sin(Phi), Column + Length * cos(Phi), 4)第一个机器视觉第一个机器视觉例子例子*在窗体上显示每个回形针的角度disp_message (WindowID, deg(Phi)$3.1f + deg, image, Row, Column - 100, black, false) (a)原图(b)图像显示检测结果

    注意事项

    本文(4-halcon简介教学课件.pptx)为本站会员(春哥&#****71;)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开