Halcon算子实现——Texture_Laws

  • 什么是texture_laws()
  • 实现步骤
    • 第一步,认识Laws基础向量
    • 第二步,Laws核
    • 第三步,Laws核与图像做卷积
  • 运行结果与时间
  • 参考资料

什么是texture_laws()

  Laws方法在论文中主要用于检测纹理信息,尤其是对比度比较低的纹理,具有很好的效果,即一张原始图像通过laws变换后得到一系列的图片,把这一系列的图片塞入分类器,分类精度还是比较高的 。在Halcon中使用texture_laws()特殊的滤波核与地对比度低的图像做卷积,得到效果很好的灰度图。
  小编的碎碎念念:这个原理具体怎么实现的,各位读者可以看参考资料中的论文,尤其那篇博士论文,写的很细的,小编飘走~~。

实现步骤

  网上有许多文章讲的和Halcon中的texture_laws()算子步骤是不一样的,这一点我也是走过了网上套路后才发现的。网上说的是 Laws的整个过程,但是在Halcon中的算子不是完整的Laws,只是运用Laws核对图像做卷积。

第一步,认识Laws基础向量

  在构建kernel之前需要了解Laws的基础向量。论文中给出了三种尺寸的基础向量。

1. 尺寸为3的基础向量:


2. 尺寸为5的基础向量:


3. 尺寸为7的基础向量:

每一行前面的字母分别代表:”level“, “edge” ,“spot”, “wave”, “ripple”, “undulation”, “oscillation”(中文意思就不翻译过来了,感觉翻译完了,就变味了~~),这些单词就代表对应向量检测的类型。可以选择滤波向量中的 “l”, “e”, “s”, “r”, “w”, "o"与滤波向量"l"组合来增强图像的低频部分,或者与滤波向量"o"组合来增强图像的高频部分,例如,”le“检测低频部分。Laws的论文介绍最基础的是尺寸3的向量,尺寸5和尺寸7都是由尺寸3得来的。

第二步,Laws核

  每一组基础向量都可任意两两组合(即两个向量相乘),所以第一组有9种,第二组有25中,第三组有49种,可以前面的字母来表示,例如尺寸3的第一个和第二个组合,即”le“。”le“由两个两个向量组成,第一个向量代表垂直向量,第二个代表水平向量,所以第一个向量要转置后再与第二个向量相乘,变成一个3X3的矩阵。这个过程如图所示:

其他尺寸的卷积核和上面的过程是一样的。在Laws的论文中说5X5的效果是最好的。

第三步,Laws核与图像做卷积

  Laws与图像正常做卷积,重点在处理卷积之后的结果,卷积后的图片的每个像素要做绝对值处理,取完绝对值后,对大于255的像素做截断。这个部分就是Halcon中与Laws论文中记载不同的地方。

运行结果与时间

  模拟的算法是基于opencv3.4.1版本的,除了Halcon中shift还没有实现,图片显示效果与Halcon几乎无异,时间与Halcon时间也很接近,1.5~2ms。所以基于Opencv模拟Halcon中texture_laws()算子可行。

参考资料

[1] K. Laws. Textured Image Segmentation , Ph.D. Dissertation, University of Southern California, January 1980.
[2] K. Laws. Rapid texture identification. In SPIE Vol. 238 Image Processing for Missile Guidance , pages 376-380, 1980.
[3] 《Laws’ Texture Measures》这篇文章没有署名,不知是哪位大神写的,但是百度一下就能看到这篇文章。
[4] Halcon 帮助文档

  • 这几篇文章对小编有用的部分,简单的翻译了一下(翻译小白级别),如果有需要的可以看一下。

参考文献

学习使我进步,分享使我快乐,您的点赞是对小编最大的鼓励!


作者声明:本文属于原创,转载请注明出处。

Halcon算子实现——Texture_Laws相关推荐

  1. halcon算子中文解释

    halcon算子中文解释 comment ( : : Comment : )   注释语句 exit ( : : : )  退出函数 open_file ( : : FileName, FileTyp ...

  2. Halcon算子大全

    ##Halcon算子大全 Halcon算子大全 Chapter 1 :Classification 1.1 Gaussian-Mixture-Models 1.add_sample_class_gmm ...

  3. Halcon算子解释大全

                                             Halcon算子解释大全 Halcon/Visionpro视频教程和资料,请访问 重码网,网址: http://www ...

  4. Halcon算子翻译——dev_set_line_width

    名称 dev_set_line_width - 定义region,contour输出的线宽. 用法 dev_set_line_width( : : LineWidth : ) 描述 dev_set_l ...

  5. Halcon算子--图像、区域、轮廓、测量、拟合、垂足、夹角

    Halcon算子–图像.区域.轮廓.测量.拟合.垂足.夹角 read_image (Image,'fabrik') 画矩形 draw_rectangle1 (3600, Row1, Column1, ...

  6. halcon算子翻译——dev_set_paint

    名称 dev_set_paint - 定义灰度值输出模式. 用法 dev_set_paint( : : Mode : ) 描述 dev_set_paint定义了用于在图形窗口中显示图形对象的输出模式. ...

  7. Halcon算子:min_max_gray和gray_histo的区别

    一.说明 halcon算子需要一个一个抠明白,逐步去除拦路虎.本片介绍几个算子,没看透的算子也是很唬人的. 二.算子min_max_gray min_max_gray(Regions, Image : ...

  8. Halcon算子知识:optical_flow_mg

    一.说明 本文是对halcon手册的整理,如果真正掌握光流法,恐怕一个博文是不够的.作者只能先呈现这个博文,再对文中的晦涩理论进行逐步阐述,参考文章将放在文后,期望读者能从中学到全部知识. 二.关于光 ...

  9. halcon/c++接口基础 之 构造函数与Halcon算子

    Halcon/C++提供了构造函数,主要基于适合的Halcon算子.比如说HImage和HBarCode基于read_image and create_bar_code_model. 请注意当前的Ha ...

  10. Halcon算子学习:图像阈值分割-threshold、binary_threshold、dyn_threshold算子

    Halcon算子学习:图像阈值分割算子 前言 1.threshold-全局固定阈值分割 2.Binary Threshold-自动全局阈值分割 3.dyn_threshold-局部动态阈值分割 小结: ...

最新文章

  1. Tomcat服务器环境配置--查看bat文件(解决Neither the JAVA_HOME nor the JRE_HOME environment variable is defined问题)
  2. 记事本贪吃蛇游戏代码_如何用Python10分钟绘制贪吃蛇小游戏?
  3. Nuxt中如何使用Vuex-Store异步获取数据
  4. Swagger介绍及使用
  5. SQL Server全局禁用及打开指定的跟踪标记
  6. 推荐几篇开源论文,包含人脸、目标检测跟踪、分割、去噪、超分辨率等
  7. vue-cli部署ngixs_nginx部署访问vue-cli搭建的项目的方法
  8. 行内元素(内联元素)与块级元素
  9. Git Extensions 2.33出现unhandled exception has ……解决方法
  10. CF1047D Little C Loves 3 II
  11. OpenDRIVE工具介绍及地址
  12. 创业教父Paul Graham: 穷途末路还是康庄大道
  13. jdk1.8的环境配置
  14. PPT文件怎么转换成图片
  15. html5 logo背景透明度,使用纯洁的CSS实现HTML5的新logo
  16. 一个比较稳定的PLC通讯模块设计
  17. 人民币换算美元java计算_美元和人民币换算(人民币转换美元计算)
  18. 跑步机健身器材标准ENISO20957检测范围有哪些
  19. 国外开源IoT平台Thingsboard社区版本(V3.3.2)在Win10环境下进行源码编译及运行指南
  20. CocosCreator-精灵动态加载图片资源,实例化精灵

热门文章

  1. Linux从删库到跑路的命令,从删库到跑路——重写 rm -rf
  2. 路由器、DDNS、花生壳
  3. 华为深圳数据分析外包
  4. 【清华大学陈渝】第五章 虚拟存储
  5. 小米发布会的米8探索者——很吓人的技术分析
  6. __ieee80211_data_to_8023
  7. 微信小程序项目实例SSM在线考试管理系统+后台
  8. 二行代码解决全部网页木马
  9. 服务器显示媒体已断开,媒体断开是什么?Win10专业版如何修复媒体断开?
  10. 数据分析 线性回归分析 方差分析表