LAWS纹理滤波

texture_laws(Image, 原图像
ImageTexture, 输出值,滤波后图像
FilterType, 过滤器类型
Shift, 灰度值转换,滤波后的灰度值可能会比较大,转换后的灰度值Gray=Gray/(Shift2),要根据滤波器选择合适的灰度值转换
FilterSize) 过滤器大小,3, 7, 5可选
过滤器类型帮助文档中有详细列举,
各种大小的过滤器都是由leswruo这几个向量构成,文档中单个向量都有原型,对于组合出来的滤波器矩阵,就是两个向量的点积,例如5
5大小的le滤波器:
l = [1 4 6 4 1],
e = [-1 -2 0 2 1]
那么le就是:
\[
le = \begin{bmatrix} 1 \\ 4 \\ 6 \\4 \\1 \end{bmatrix} \begin{bmatrix} -1 & -2 & 0 & 2 & 1\end{bmatrix}
\]
5*5的filter,记录一下,稍后研究一下每一种filter的作用。Filter
使用LAWS做缺陷检测的步骤:

  1. 收集几张没有缺陷的图片,使用多种laws滤波作为特征,组合成多通道图片,作为训练样本;
  2. 创建高斯混合分类器,使用样本进行训练;
  3. 将测试图片与样本做相同处理后,使用高斯混合分类器做分类;
  4. 将分类后的区域与原区域做减法,减出来的部分就是不能被分类的部分,也就是有问题的部分;
  5. 筛选出面积较大的区域,可以适当选择开闭运算将区域修整一下。

这里使用到的图像预处理:
使用zoom_image_factor将图像的尺寸减小,可以降低运算时间;
使用smooth_image对混合后的五通道图片做光滑处理

模型的保存与读取:
write_class_gmm
read_class_gmm

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 分割线 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

应用

字符分割识别

halcon中有一些已经训练好的ocr模板可供直接使用。
使用已有模板做字符识别的主要步骤:

  1. 找出图像区域,将字符串做分割,分割成单个的字符;
  2. 读取已经训练好的模板'read_ocr_class_' ,这里有多个分类器可选;
  3. 使用 ‘do_ocr_multi_class_’ 对分割后的区域做字符识别或使用do_ocr_single_class_ 对分割后的单个区域做字符识别。

使用这种方式的局限性:必须找到字符区域并对字符做好分割,只能用于事先已经很了解测试图片的情况。已经定义好的模板不一定好用,自己训练可能更适合。
测试的时候还发现一个特点,对于图像上字母是亮的,背景是暗的情况,识别到的结果一般都是错的,只有在__背景是亮的,字母是暗的__ 情况下,是被才是有效的。

其实我们可以自己训练,怎么训练呢?
这是网上找到的一个例子
由于一时半会儿弄不到那么多字母图片,所以没有尝试。待实现。

图像处理笔记(二十):LAWS纹理滤波应用于缺陷检测的更多相关文章

  1. python3.4学习笔记(二十六) Python 输出json到文件,让json.dumps输出中文 实例代码

    python3.4学习笔记(二十六) Python 输出json到文件,让json.dumps输出中文 实例代码 python的json.dumps方法默认会输出成这种格式"\u535a\u ...

  2. python3.4学习笔记(二十五) Python 调用mysql redis实例代码

    python3.4学习笔记(二十五) Python 调用mysql redis实例代码 #coding: utf-8 __author__ = 'zdz8207' #python2.7 import ...

  3. python3.4学习笔记(二十四) Python pycharm window安装redis MySQL-python相关方法

    python3.4学习笔记(二十四) Python pycharm window安装redis MySQL-python相关方法window安装redis,下载Redis的压缩包https://git ...

  4. python3.4学习笔记(二十二) python 在字符串里面插入指定分割符,将list中的字符转为数字

    python3.4学习笔记(二十二) python 在字符串里面插入指定分割符,将list中的字符转为数字在字符串里面插入指定分割符的方法,先把字符串变成list然后用join方法变成字符串str=' ...

  5. python3.4学习笔记(二十) python strip()函数 去空格\n\r\t函数的用法

    python3.4学习笔记(二十) python strip()函数 去空格\n\r\t函数的用法 在Python中字符串处理函数里有三个去空格(包括'\n', '\r', '\t', ' ')的函数 ...

  6. (C/C++学习笔记) 二十四. 知识补充

    二十四. 知识补充 ● 子类调用父类构造函数 ※ 为什么子类要调用父类的构造函数? 因为子类继承父类,会继承到父类中的数据,所以子类在进行对象初始化时,先调用父类的构造函数,这就是子类的实例化过程. ...

  7. (C/C++学习笔记) 二十二. 标准模板库

    二十二. 标准模板库 ● STL基本介绍 标准模板库(STL, standard template library): C++提供的大量的函数模板(通用算法)和类模板. ※ 为什么我们一般不需要自己写 ...

  8. (C/C++学习笔记) 二十. 文件和流

    二十. 文件和流 ● 文件的概念 文件(file) 一. C/C++语言将文件作为字节序列(sequence of characters)来对待,但从编码角度,或说从对字节信息的解释来看,文件分为:文 ...

  9. Java基础学习笔记二十五 MySQL

    MySQL 在dos中操作mysql 连接mysql命令: mysql -uroot -p密码 ,连接OK,会出现mysql> 对数据库的操作 创建一个库 create database 库名 ...

随机推荐

  1. 实现非管理型UPS在linux主机上的停电自动关机

    买了个山特的SANTAK TG-BOX 850 UPS,自带USB通讯线缆.本以为官方软件提供Linux下的CLI命令以监控UPS状态. 官网提供的下载链接巨慢无比不说,CLI下只提供了安装脚本,没有 ...

  2. .NetCore 网站DELETE请求错误405.0 - Method Not Allowed 因为使用了无效方法

    .netCore网站Delete请求405错误 解决方案 1:在启用或关闭Windows功能 –> Internet Information Services 关闭WebDAV发布(这种方式可能 ...

  3. 彻底关闭Windows10的更新

    Windows10的自动更新太恶心,关闭之后总能死灰复燃,更新偶尔占用大量的CPU内存,非常影响使用.而网上大多数都是关闭服务之类的方法,但是关闭之后没过多久又会重新自动启动,如何彻底摆脱wiondo ...

  4. 10.Django基础八之cookie和session

    一 会话跟踪 我们需要先了解一下什么是会话!可以把会话理解为客户端与服务器之间的一次会晤,在一次会晤中可能会包含多次请求和响应.例如你给10086打个电话,你就是客户端,而10086服务人员就是服务器 ...

  5. F#周报2019年第39期

    新闻 宣告F# 4.7 宣告.NET Core 3.0 .NET Core 3.0中ASP.NET Core与Blazor的更新 .NET Conf 2019里提到的ML.NET与模型构建器 参与.N ...

  6. python-字符编码、字符串格式化、进制转化、数据类型、列表、元组、字典总结

    目录: 一.字符编码 二.字符串格式化 三.进制转换 四.数据类型及其操作 五.字符串转换 六.列表 七.元组 八.字典 一.字符编码: 计算机由美国人发明,最早的字符编码为ASCII,只规定了英文字 ...

  7. idea 环境变量设置编码

    1.打开Run/Debug Configuration,选择你的tomcat 2.然后在  Server > VM options 设置为 -Dfile.encoding=UTF-8

  8. 2017春季_京东_Java后端研发岗面经

    纸上得来终觉浅,绝知此事要躬行  ——2017春季Java后端研发工程师面试心得 收获offer:上海汉得+北京中科软+成都百词斩+成都诺基亚研发中心+清华大学计算机研究所等offer.阿里一面猝.京 ...

  9. Shell之Xargs命令

    目录 Shell之Xargs命令 参考 xargs命令简介 xargs命令格式 xargs实例说明 Shell之Xargs命令

  10. Windows和Mac系统下安装Docker

    在windows和mac系统中使用Docker Desktop安装Docker对系统的要求是很高的. 对于 Windows 系统来说,安装 Docker for Windows 需要符合以下条件: 必 ...