Halcon例程分析2:颜色检测识别
打开halcon,按下ctrl+e打开halcon自带例程。应用范围->颜色检测->color_fuses.hdev
颜色检测是通过把图像转化为hsv图像,然后对Hue图像值范围进行检测的,Hue值范围可通过显示Hue图像,按住ctrl键,鼠标移动到图像上查看某一颜色的Hue值范围。
* color_fuses.hdev: classify fuses by color
dev_update_window ('off')
* ****
* step: set up fuse properties and hue ranges
* ****
*颜色字符串定义,纯粹是为后面显示颜色准备的
FuseColors := ['Orange','Red','Blue','Yellow','Green']
*类型字符串定义,对这个保险丝承受的安培值的一个定义
FuseTypes := [5,10,15,20,30]
* HueRanges: Orange 10-30, Red 0-10...
*Hue颜色范围定义,即以上定义的橙色对应的Hue值范围为10-30,红色Hue值范围为0-10,依次类推
*这个值通过双击变量窗口上Hue图像,按住ctrl键,鼠标移动到相应的颜色位置查看其值
HueRanges := [10,30,0,10,125,162,30,64,96,128]Count := 0
dev_close_window ()
dev_open_window (0, 0, 800, 600, 'black', WH)
*总共有4幅图像
while (Count <= 4)* ***** step: acquire image* *****读图,把图像名称显示在正上方read_image (Image, 'color/color_fuses_0' + Count)dev_display (Image)set_tposition (WH, 12, 512)write_string (WH, 'color/color_fuses0' + Count + '.png')* ***** step: extract saturated hues* *****分离图像,把Rgb图分离decompose3 (Image, Red, Green, Blue)*转换为HSV图像trans_from_rgb (Red, Green, Blue, Hue, Saturation, Intensity, 'hsv')*抠图,只处理感兴趣区域,这里是处理有物品的区域,把背景去掉threshold (Saturation, Saturated, 60, 255)reduce_domain (Hue, Saturated, HueSaturated)for Fuse := 0 to |FuseTypes| - 1 by 1* ***** step: classify specific fuse* *****对Hue图像检测,检测值在某一颜色范围内的区域。例如橙色是Hue值在10-30范围内的区域threshold (HueSaturated, CurrentFuse, HueRanges[Fuse * 2], HueRanges[Fuse * 2 + 1])*分离检测出来的区域connection (CurrentFuse, CurrentFuseConn)*填充区域fill_up (CurrentFuseConn, CurrentFuseFill)*选择区域。在图像区域右键-》工具-》特征检测查看值大小,设置相应的选择值范围select_shape (CurrentFuseFill, CurrentFuseSel, 'area', 'and', 6000, 20000)*检测区域中心坐标area_center (CurrentFuseSel, FuseArea, Row1, Column1)dev_set_color ('magenta')for i := 0 to |FuseArea| - 1 by 1set_tposition (WH, Row1[i], Column1[i])*相应的颜色在图像上显示出来write_string (WH, FuseColors[Fuse] + ' ' + FuseTypes[Fuse] + ' Ampere')endforset_tposition (WH, 24 * (Fuse + 1), 12)dev_set_color ('slate blue')write_string (WH, FuseColors[Fuse] + ' Fuses: ' + |FuseArea|)endforstop ()Count := Count + 1
endwhile
dev_update_window ('on')
原始图像:
ji
检测结果
Halcon例程分析2:颜色检测识别相关推荐
- Halcon例程分析8:投影变换矫正倾斜图像
打开halcon,按下ctrl+e打开halcon自带例程.方法->二维码识别->2d_data_codesrectify_symbol.hdev *This program demons ...
- Halcon例程分析6:圆弧测量工具
* Example for the application of the measure package * including a lot of visualization operators * ...
- opencv中关于轮廓检测识别Contours及相关函数的介绍
最近在用vs和opencv库在做图像处理的项目,关于轮廓识别部分,我查阅了一些资料, 现结合自己的理解整理出来,希望能对你有用. 1.contours概述 在利用openCV对图像进行处理时,我们可能 ...
- Halcon例程学习:adaption_ocv.hev(光学字符检测)
**************************************************************************************************** ...
- HALCON示例程序ball电路板焊点识别、检测、测量程序2剖析(与上篇文章使用了不同方法)
HALCON示例程序ball电路板焊点识别.检测.测量程序2 示例程序源码(加注释) *这是关于显示的函数,已经介绍过了 dev_update_off () *定义一个字符串变量ImageNames, ...
- HALCON示例程序ball电路板焊点识别、检测、测量程序剖析
HALCON示例程序ball电路板焊点识别.检测.测量程序剖析 示例程序源码(加注释) 介绍: ball.hdev: Inspection of Ball Bonding *halcon窗口实时更新关 ...
- Halcon例程学习:print_check.hev(光学字符检测)
**************************************************************************************************** ...
- HALCON联合C#检测表面缺陷——HALCON例程autobahn
前面的文章我们讨论了最基本的框架原理,大家如果想看哪一方面的知识可以留言,我在专栏中来说一说. 这段时间我打算分享一下HALCO的一系列例程.我们在检测中很多时候都无从下手,原因很简单我们积累的算子太 ...
- AI烟火检测识别算法在视频监控场景中的预警应用分析
计算机视觉中的烟火检测,可在监控视频和图像中进行烟火定位或者烟火图像分类,在消防安全领域具有独特的意义.AI烟火识别算法可通过已经训练好的烟火检测模型,识别出图片中的烟雾和火焰,并标记出目标的具体位置 ...
- 视觉成长之路Halcon——颜色检测:GMM分类器
视觉成长之路Halcon--颜色检测:GMM分类器 前言 一.算子介绍 二.程序 总结 前言 通过系统案例学习GMM分类器在颜色识别中的应用 一.算子介绍 1.gen_rectangle1通过两个坐标 ...
最新文章
- 运动想象脑机接口中迁移学习的完整流程
- redis 主从复制功能 原理
- ES6新特性之转码器(UmiJS入门)
- leetcode 278. 第一个错误的版本(Java版)
- MyBatis(三)
- JPA @Embeddable和@Embedded
- Python : *args和**kwargs是什么东东呢?
- 获取本地ip(一个或多个都能取)
- 2012北理机试题——已知中序和后序遍历序列,求先序
- Qt核心剖析: moc
- 厉害了我的Qunar!看我工程师写轮眼!
- dsf5.0 element ui表单相关验证
- 几种取时间的方法(附代码)
- ARM Coresight
- 【opencv-python】 cv2.subtract(...)图片减法
- xmanager linux 远程桌面,Xmanager连接CentOS的远程桌面
- Objective中调用Swift代码
- ESP32入门教程-怎么跑起来
- 无人机设计中的下一个进化步骤
- 自己写一个PRISMA 让两张图片融合起来