文章目录

  • 前言
  • 一、颜色识别原理
  • 二、颜色识别为什么将其转换至HSV颜色空间
  • 三、源代码
  • 写在最后

前言

【Halcon】颜色识别提取
这里以嘉庚建筑风格为例~


一、颜色识别原理

载入图像后,将其转换至HSV颜色空间,通过判断每个像素是否在所选取的范围内(根据所需的颜色而定),并将其标识出来即可。

二、颜色识别为什么将其转换至HSV颜色空间

目前在计算机视觉领域存在着较多类型的颜色空间。HSL作为最常见的圆柱坐标所表示的颜色模型,它重新影射了RGB模型,从而能够视觉上比RGB模型更具有视觉直观性。
简单地说HSV可以用更加直观的数据描述我们需要的颜色,H代表色彩,S代表深浅,V代表明暗,通过阈值的划分,颜色即可被区分出来。(H代表的色调基本上可以确定某种颜色,再结合饱和度S和亮度V信息判断大于某一个阈值即可。)
以下给出颜色参考范围:HSV基本颜色分量范围 - 百度文库 (baidu.com)

至于对RGB、HSV等颜色空间的理解,可自行寻找相应博客,这里不做较多的讲解。

三、源代码

这里以嘉庚建筑风格为例 采用Halcon进行颜色识别提取(具体代码如下)

dev_close_window ()
dev_open_window (0, 0, 640, 480, 'black', WindowHandle)
* 读取嘉庚建筑风格的图像
read_image (Image,'D:/USER/Desktop/tkkc.jpg')
* 进行图像R、G、B分量分离
decompose3 (Image, Red, Green, Blue)
* 将R、G、B分量转为H、S、V分量
trans_from_rgb (Red, Green, Blue, Hue, Saturation, Intensity, 'hsv')
* 令S分量图像进行阈值处理
threshold (Saturation, HighSaturation, 100, 255)
* 提取H分量图像
reduce_domain (Hue, HighSaturation, HueHighSaturation)
* 针对提取的H分量进行阈值处理
threshold (HueHighSaturation, Result, 0, 18)
* 再将其从原始图像中提取出来
reduce_domain (Image, Result, ImageReduced)
* 最后显示读取图片
dev_display (ImageReduced)
write_image (ImageReduced, 'jpg', 0, 'D:/USER/Desktop/tkkc_result.jpg')
stop ()

以下是给出各个步骤所得图像帮助理解。

写在最后

由于作者知识和写作能力有限,难免有缺点,欢迎专家和读者批评指正。

Halcon——颜色识别提取相关推荐

  1. halcon颜色识别的两种简单方式

    颜色识别的两种简单方式: 1.单通道方式: 原理:通过不同颜色在灰度图中的阈值范围不同来区分颜色(理论上这种方式不推荐,但在一定情况下适用) 材料: halcon代码: dev_close_windo ...

  2. halcon第二次尝试以颜色识别为主提取蓝底白字的车牌号码

    用颜色识别为提取车牌区域的特征,有利于将程序的适应度提高 尝试对车牌为"歪"的进行处理 从百度上获取了几张蓝底白字的车牌图,发现由于不同图像的大小和灰度值数量不一样,导致程序无法对 ...

  3. (机器视觉)Halcon下颜色识别与联合C#编程

    一.简介 在上一篇文章中写到了关于用Halcon做颜色识别的一个实验项目,在上一篇中是在Halcon环境中进行开发的,而在实际运用中,现场是不在Halcon中进行运行程序的,而且一些逻辑在Halcon ...

  4. Halcon 学习笔记八:颜色识别

    Halcon 学习笔记八:颜色识别 一.图像处理需要的知识 二.图像处理的预处理和分割过程 二.颜色识别的方法 三.例子一 四.例子二 五.例子三 一.图像处理需要的知识 1.图像处理基础(rgb(h ...

  5. 基于matlab的颜色识别与提取_机器视觉综合实训有得

    一.课程任务设计要求 (1)在编写摄像头采集图像程序,能够对图像进行采集.保存处理: (2)对采集图像进行预处理,RGB 到 YCBCR 的色彩空间转换,用各个通道的阈值对图像进行二值化:形态学处理: ...

  6. 应用halcon进行颜色识别

    应用halcon进行颜色识别 代码如下: * Image Acquisition 01: Code generated by Image Acquisition 01 open_framegrabbe ...

  7. Lesson 6.1 身份证识别: 提取字段

    Lesson 6.1 身份证识别: 提取字段 小编最近试试识别身份证上面的文字. 第一步还是图像分割,第一步还是提取文本行,然后提取字段. 看上去,第一个感觉就是所有文字都是黑色的.可以简单过滤一下图 ...

  8. python红色的颜色表达式_50行Python代码实现视频中物体颜色识别和跟踪(必须以红色为例)...

    目前计算机视觉(CV)与自然语言处理(NLP)及语音识别并列为人工智能三大热点方向,而计算机视觉中的对象检测(objectdetection)应用非常广泛,比如自动驾驶.视频监控.工业质检.医疗诊断等 ...

  9. OpenCV(Python)颜色识别(一)

    1. 基本原理 1.1 彩色模型 数字图像处理中常用的采用模型是RGB(红,绿,蓝)模型和HSV(色调,饱和度,亮度),RGB广泛应用于彩色监视器和彩色视频摄像机,我们平时的图片一般都是RGB模型.而 ...

最新文章

  1. redis基础之有序集合应用
  2. win10如何下载适合自己python版本的pygame?
  3. P1586 四方定理
  4. 【机器学习基础】机器学习训练中常见的问题和挑战!
  5. asp.net 动态添加JavaScript方法
  6. WinDBG 技巧:如何生成Dump 文件(.dump 命令)
  7. 大学计算机基础知识点图文,大学计算机基础知识点超详细总结
  8. python中for循环是可以带else的
  9. iphone数据迁移到新iphone_iphone数据丢失?想要恢复iphone丢失的数据?
  10. [No000083]文件与文件夹操作
  11. ubuntu如何查看系统是多少位和系统版本号
  12. 半导体物理学习札记1
  13. 2021-09-28 网安实验-取证分析-Stuxnet病毒
  14. iOS开发工程师(SDK),U3D主程,制作人 招聘
  15. 量化系统工程师需要学什么?
  16. java使用佳博打印机打印标签
  17. API 接口测试,用这个开源的工具准没错
  18. 《重学 Java 设计模式》PDF 出炉了 - 小傅哥,肝了50天写出18万字271页的实战编程资料...
  19. 情感分析动力学知识框架(晏殊几何学情锚讲义)
  20. mysql如何保证数据不丢失_Mysql 是怎么保证数据不丢的

热门文章

  1. android大漩涡旋转效果(极光星空)
  2. 解决Python的your data either using array.reshape(-1, 1) if your data has a single featur
  3. 微信jsapi开发教程之如何获取jsapi_ticket(第二课)
  4. 300iq Contest 3简要题解
  5. 浏览器标签页形式运行【js代码】,小书签
  6. Redis实战 - 11 Redis GEO 实现附近的人功能
  7. pytorch之词嵌入(三)
  8. 【现代机器人学】学习笔记七:开链动力学(前向动力学Forward dynamics 与逆动力学Inverse dynamics)
  9. mathcad 15.0安装教程
  10. MySQL引擎:InnoDB VS MyISAM