【论文阅读 08】Adaptive Anomaly Detection within Near-regular Milling Textures

news2024/11/25 15:49:16

        2013年,太老了,先不看 比较老的一篇论文,近规则铣削纹理中的自适应异常检测

1 Abstract

        在钢质量控制中的应用,我们提出了图像处理算法,用于无监督地检测隐藏在全局铣削模式内的异常。因此,我们考虑了基于全局傅里叶的方法和局部剪切波分解来阻尼铣削纹理。这些基于频率的方法与空间域基于模板的自相关进行了比较。作为一种替代方法,所谓的匹配追踪是通过联合傅立叶和基于小波的字典提出的,可以同时利用全局铣削槽和局部异常的两个模型。所有这些方法都使用定量和特定领域的定性指标针对手动注释的真实世界数据集进行评估。

2 Introduction

        钢的清洁度是其质量的一个重要属性。它由钢基体中非金属夹杂物的数量、大小、形态、分布和化学组成定义。这些不受欢迎的遏制是钢加工过程的固有副产品。然而,清洁因素对钢的力学性能有直接影响,因此需要不断监测。在[1]中,我们提出了一种组合铣削和光学扫描方法,用于评估原始生产输出的钢样品中不同类型非金属夹杂物的3D分布。因此,通过铣削刀将钢样品切成数百层。在本文中,我们将介绍和评估图像处理技术,用于将铣削模式的周期性背景纹理与非金属夹杂、收缩孔和微裂纹等钢基体中包含的各种相关异常分离。这是一个具有挑战性的任务,因为铣削纹理是实际机械钢性能、铣削工具磨损、铣削机的振动、铣削刀具的旋转和前进速度、铣削刀具的旋转和前进速度、照明特性、插值和拼接伪影的复杂相互作用的结果,这是由于图像捕获、相机设备的噪声特性和许多其他其他因素。因此,准周期铣削纹理中总是有一些变化,因此结果只是近正则的。因此,我们的目标是检测异常,我们松散地定义为与通常的铣削纹理的偏差,同时承认铣削纹理本身本质上是不同的。我们所有的图像分割方法都是考虑到异常的这种模糊定义而设计的。然而,在评估部分,我们将针对一组手动标记的图像测试算法,以评估它们在仅检测验证异常方面的实际有效性。

A.问题陈述

        铣削刀具示意图如图1所示。铣削工具不断旋转,同时向前移动,以磨表面。因此,在整个钢表面创建了一个周期性的铣削纹理模式。当表面图像转换为频域时,可以最好地评估该信号的周期性,如图2所示。因此,不同的基于频率的变换显示了铣削纹理与非金属夹杂物(圆形缺陷)的质量不同的分离。例如,在D4小波变换下,它们与较高的频段很好地分离,而Haar小波变换仍然显示与高频异常相关的系数。在下文中,我们希望利用信号中的这些类型的规律,以便将铣削纹理与异常分离。因此,需要一种数据驱动和高度自适应的方法,因为即使是转换后的信号仍然有噪声,因为铣削纹理的唯一近规则(即不完全规则)属性。

B. Previous Work

        近正则纹理的问题在[2]中得到了广泛的讨论和分析。工业图像处理中表面检测领域有很多出版物,其中讨论了其他规则表面纹理中的异常检测[3]、[4]、[5]、[6]。然而,通常情况下,背景纹理被假定为均匀随机的,否则由于印刷材料的检查,它具有很高的规则质量,没有太多的图像噪声。一个值得注意的例外是网络检查领域,它在质量上接近此处讨论的纹理分离问题。然而,网络纹理通常是 2D 周期性的,并且由于它们的正交性,这些可以通过特征值 [7] 或共现矩阵 [8] 进行分析。[9]描述了一种基于频率的自滤波方法,用于常规背景模式内的异常检测。它只进行了测试在合成图像数据和我们的真实近规则纹理的结果并不令人鼓舞。

 

3 APPROACHES

A.基于模型的分离

        假设每个表面图像可以建模为铣削槽F、非金属夹杂E和图像噪声R的叠加。在这里,我们不考虑裂纹样缺陷,因为这些缺陷与拉长的铣削槽太相似。因此,图像 B 可以定义为:B = F + E + R。
        a) 匹配追踪:匹配追踪 (MP) [10] 是一种用于稀疏近似的贪心算法。该方法通过使用基函数字典找到与信号 f 最佳匹配。迭代地,选择字典(ψi)i∈i的基函数ψi,其内积|<R,ψi>|与当前残差R最大,其中初始残差是信号f本身。然后,residuum 更新为 Rnew = Rold −<Rold, ψmax i >ψmax i。重复此过程,直到满足某些终止标准,例如最大迭代次数。最后,原始信号f将稀疏地近似为最多n个基函数:

其中索引 m 描述了第 m 次迭代。 

        b) 全局和局部字典:我们提出了一种与两种类型的字典的匹配追踪,其中全局字典包含近似铣削纹理的基函数,局部字典包含适合拟合非金属夹杂等局部异常的基函数。假设铣削纹理是准周期性的,其行周期为2πc1c2。周期函数可以描述为正弦波和余弦波的叠加,因此逐行一维傅里叶变换为我们提供了两种构建全局字典基函数:

 对于本地字典像Haar和Daubechies (D4)这样的小波是合适的。由于我们想对非常本地化的异常进行建模,我们只使用两个级别,即两个不同的缩放小波和缩放函数。因此,我们的非金属夹杂物最好用缩放函数来描述。但是,小波函数可以更好地描述边界。由于异常自然地出现在沿图像像素的每一行的未知位置,因此我们额外翻译字典中的小波和缩放函数。最后,这两个词典由欧几里得 L2 范数归一化,因此它们被平等对待。每次迭代的数值复杂度结合了小波变换的线性复杂度和表示两个模型的傅里叶变换:O(N + N log2 N )。

        c) 匹配追踪异常检测:借助两个先前定义的字典,我们扩展了通常的匹配追踪,现在需要在两个全局和局部字典之间切换。因此,与本地字典完全匹配只会更新输出图像,因为我们只对仅由本地字典描述的异常感兴趣。因此,最后,我们得到了非金属夹杂物的稀疏近似E,即局部异常。引入全局字典dglobal的加权因子w,以避免局部字典DLocal的过拟合问题,因为全局铣削模式只是准周期的,因此全局字典并不总是解释最佳拟合(尽管它是预期的)。清单 1 显示了扩展匹配追踪与附加归一化的完整伪代码。

        到目前为止,我们的图像模型的噪声分量 R 被忽略了。然而,由于我们的近似 E 仅包含最少数量的稀疏基函数,因此大部分噪声已经得到充分处理。对于更稳健的结果,输入图像 B 可以通过高斯核预先平滑,例如。然而,这个预处理步骤也模糊了异常的确切轮廓。总而言之,本文提出的扩展匹配追踪是基于模型的分离[11]方法的成功例子,其中分别联合利用了代表背景和前景纹理的全局和局部模型。[12]给出了类似的几何分离字典。然而,这是一个缺点,我们只能使用一维模型,因此我们忽略了图像中相邻行的空间相关性。另一方面,此属性可以实现高效和并发处理。

 B.基于剪切分解

        如果感兴趣的区域足够小(例如在我们的例子中为 256 × 256 或 512 × 512 像素),弯曲的铣削槽往往看起来相当直线。对于像剪切波[13]、[14]这样的方向敏感变换,我们可以建立一个类似于定向梯度直方图(HoG)的剪切波系数的直方图,其中[15]表明剪切波的性能优于HoG。其他可能的转换可能是Gabor滤波器组[16]或曲线[17],但只有剪切波可以很容易地离散化(锥体[18]上的剪切波),是可逆的,并且具有多分辨率能力。剪切波是通过额外的剪切变换对小波的扩展。因此,剪切波可以支持图像中边缘的检测,而唯一的小波变换只能表示点奇点。在我们的应用中,我们希望使用剪切波变换对图像补丁进行变换,然后将最突出的方向(即系数)设置为零或抑制,因为这些方向肯定代表了全局铣削纹理。最后,使用滤波系数和反剪切波变换再次重建输入图像。该结果图像将不受铣削纹理的影响。它只包含来自重建过程的异常和额外的伪影,这些伪影被进一步过滤,以便可以对异常进行二值化。快速剪切波变换[18]的复杂度为O(N 2 log2 N2),这是由于多次FFT乘以尺度的数量。

        d)剪切波:我们使用基于频率的剪切波变换,定义为

 典型的剪切函数ψ,如[18]所述。图3显示了剪切波变换的结果系数三个层次。对于更高级别的方向分辨率更精细,但更可疑的图像噪声。较亮的像素意味着较大的系数,很明显,当剪切波核的电流方向与铣削槽的角度匹配时,成功地检测到铣削模式。此外,圆形异常往往具有局部较大的响应。然而,我们也不使用这些信息,因为我们只想匹配铣削纹理。

 图4:使用剪切波分解从图像2a中分割圆形缺陷,如图3所示。第一个结果4a是在k-means聚类最显著的系数后得到的。第二个结果 4b 是系数自适应邻域的加权和。在这里,背景更加均匀,重建伪影更少,从而允许稳健的二值化。

        e)剪切波系数的滤波:为了自适应地检测和去除铣削槽,我们使用每个系数图像的对数欧氏L2范数的kmeans聚类。有两个簇,一个用于表示铣削模式的方向,另一个用于所有其他方向的第二个簇。属于第一个簇的所有系数都设置为零,并且图像被重建为示例,如图 4a 所示。为了减少重建伪影,由于系数的严厉切割可能属于铣削纹理,我们实现了系数的软加权,它考虑了局部邻域[19],从而产生稍微更平滑的背景纹理,如图4b所示。

        由于裂纹状缺陷具有与铣削槽相似的拉长线性外观,如果它们的方向与铣削模式相似,则无法识别这些外观。因此,系数永远不应该设置为零,而是对所有系数进行加权求和,其权重由聚类为非铣削纹理的系数图像的平均 L2 范数自适应计算。中值绝对偏差 (MAD) 是在未分类为表示铣削纹理的所有图像 Gl(如图 3 所示的系数图像)上计算的:M AD(Gl(x, y))) = 中值(|中位数(Gl))−Gl(x, y)|)。标准偏差为 σ = M AD0.675。最终加权图像Gw的阈值选择为t =中位数(Gl)+k·σ,其中k > 1。使用这种方法,面向整体铣削纹理的微裂纹分割结果如图5所示。请注意,即使是这种微裂纹的精细细节也明显与铣削纹理分离。

 

 图 5:使用剪切波分解分割微裂纹。由于裂纹的线状性质,它们与背景铣削纹理的相似性本身就很高。因此,所有系数的加权和,如 5b 所示,对于它们在 5c 中的最终可检测性至关重要。

 C.傅里叶空间中的楔形滤波器

        模式的2D傅里叶谱揭示了一个大幅度的楔形区域(见图2b),它与空间铣削纹理线条的方向正交。楔形主要代表铣削槽对应的较高频率。楔形的参数可以通过沿从光谱中心辐射为铅笔的虚直线采样平均幅度来估计。通过对平均幅度[1]应用kmeans聚类,可以找到定义楔形区域的开始和结束旋转角度。最后,可以对傅立叶谱应用掩码,该谱将楔形内的值设置为零,以便投射较低的频率。在傅里叶反变换之后,可以使用马氏距离分割铣削图案的周期部分和被认为是不规则缺陷。在这里,我们只自适应地参数化铣削纹理的全局楔形模型。然而,由于傅立叶分析中频谱的全局性质,我们省略了局部细化。因此,由于铣削纹理的近正则性引起的小扰动不包括在模型中,因此铣削纹理的二值化会产生伪影(即异常的假阳性分类),但也会产生假阴性,因为极端局部异常的傅里叶信号变为与铣削纹理的变化纠缠在一起。由于沿对角线轴的傅里叶变换遵循复杂度可以近似为 O(√N + N log2 N )。

D.纯相位变换

        仅相位变换 (PHOT) [20] 对 2D 傅里叶域中的幅度进行归一化,从而消除所有规律。图像I(x, y)的归一化二维傅里叶谱F(u, v)计算为

 然后,应用逆变换得到 ^I(x, y) =F−1(u, v)。由于傅里叶谱的大小被丢弃,因此仅使用包含图像重要部分的相位信息。PHOT检测已经很好地符合我们的表面模型的图案区域的小缺陷和边界。此外,我们将标准 PHOT 与多尺度扩展 MPHOT [21] 进行比较,后者使用应用于纹理高斯金字塔的 PHOT 滤波器的融合。这允许精确分割更大的缺陷。数值复杂度由系数归一化的傅里叶变换定义:O(N 2 log2 N )。

E.基于模板的自相关

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1024060.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

with ldid... /opt/MonkeyDev/bin/md: line 326: ldid: command not found

吐槽傻逼xcode 根据提示 执行了这个脚本/opt/MonkeyDev/bin/md 往这里面添加你brew install 安装文件的目录即可

ETLCloud工具让美团数据管理更简单

美团为第三方开发者和商家提供了一系列开放的API接口和工具&#xff0c;使其可以与美团的业务进行对接和集成&#xff0c;从而获得更多的业务机会和增长空间。 通过美团开放平台&#xff0c;第三方开发者和商家可以实现以下功能&#xff1a; 开放接口&#xff1a;美团开放平台…

联想y7000 y7000p 2018/2019 不插电源 不插充电器, 直接关机 ,电量一直89%/87%/86%,V0005如何解决?

这种问题&#xff0c;没有外力破坏的话&#xff0c;电池不可能突然出事。这种一般是联想的固件问题&#xff0c;有可能发生在系统更新&#xff0c;或者突然的不正常关机或长时间电池过热&#xff0c;原因我不是很清楚。 既然发生了&#xff0c;根据我收集的解决方法&#xff0c…

软件测试-基本概念

软件测试-基本概念 1.什么是软件测试 测试指的是对我们生产出来的产品特性进行一些校验&#xff0c;例如对传感器、手机等的测试&#xff0c;而软件测试是对我们开发出的软件进行校验是否存在问题&#xff0c;测试软件特性是否符合用户需求。 2.软件测试的基本概念 软件测试…

Itsycal for Mac: 精美日历软件的魅力之旅

在这个数字化时代&#xff0c;管理时间和日程变得尤为重要。macOS 平台上的 Itsycal 日历软件可以帮助你有效管理你的日程和时间。 Itsycal 是一款轻量级且直观的日历应用程序&#xff0c;专门为 macOS 用户设计。通过这款软件&#xff0c;你可以轻松查看、管理和跟踪你的日常…

分布式多级缓存SDK设计的思考

分布式多级缓存SDK设计的思考 背景整体架构多层级组装回调埋点分区处理一致性问题缓存与数据库之间的一致性问题不同层级缓存之间的一致性问题不同微服务实例上&#xff0c;非共享缓存之间的一致性问题 小结 之前实习期间编写过一个简单的多级缓存SDK&#xff0c;后面了解到一些…

Postman脚本——断言测试

pm对象提供了测试相关功能&#xff1a; pm.test(testName:String, specFunction:Function):Function&#xff1a;测试函数。pm.expect(assertion:*):Function → Assertion&#xff1a;允许在响应数据上做测试&#xff0c;使用ChaiJS expect BDD语法。 可以使用pm.response.t…

SQL模板-用户留存率计算

在这段实习中&#xff0c;我遇到了用户留存率计算的需求&#xff0c;这里做个总结。 首先来讲下&#xff0c;什么是用户留存&#xff1f; 在互联网行业中&#xff0c;用户在某段时间内开始使用应用&#xff0c;经过一段时间后&#xff0c;仍然继续使用该应用的用户。用户留存一…

Windows账号和密码的获取与破解 相关工具集合

Windows账号和密码的获取与破解 相关工具集合 1.概述2.GetHashes3.gsecdump4.SAMInside5.oclHashcat 1.概述 在通过SQL注入等方式获取网站的WebShell后&#xff0c;就可以利用系统的各种漏洞进行提权&#xff0c;提权成功后&#xff0c;就可以通过远程终端登录系统。此时&…

什么是设备运维管理系统?它对企业有什么帮助?

如果企业在生产过程中遭遇设备故障的突发情况&#xff0c;不仅会对生产计划产生直接的影响&#xff0c;还会导致生产成本的不必要增加。这就是没有采用设备运维管理系统的潜在风险和问题。因此&#xff0c;许多制造企业已开始积极引入并实施设备运维管理系统&#xff0c;其主要…

kubevirt v1.1.0-alpha.0 offline deploy on kubernetes v1.23.17

文章目录 准备条件下载介质部署查看安装 virtctl 前天&#xff0c;kubevirt 更新了&#xff0c;尝鲜。 准备条件 二进制 Deploy Kubernetes v1.23.17 下载介质 export VERSION$(curl -s https://api.github.com/repos/kubevirt/kubevirt/releases | grep tag_name | grep -v…

uni-app 之 解决u-button始终居中问题

uView中u-button始终居中问题如何解决的简单方法&#xff1f; 1&#xff1a;给该元素margin-right: 0;可以达到向右靠齐&#xff1b; 2&#xff1a;给该元素的父元素设置float: right image.png <u-button style"width: 50px; margin-left: 0;" plain"t…

arm ubuntu 换源

sudo gedit /etc/apt/sources.list 将里面内容替换成下面 网址链接 清华源 截图如下 自行选着系统

摸鱼也摸鱼之在线数独自动求解

背景 在发现被老板CPU之后&#xff0c;大家想做的基本上都是摸鱼&#xff0c;像我这种没什么手法的人不可能摸鱼打MOBA游戏&#xff0c;所以只能选择数独这种对时间要求不怎么急促的小游戏。然而&#xff0c;有时候搞半天才发现从一开始就错了&#xff0c;这让我很苦恼&#x…

毕业设计|基于stm32单片机的app视频遥控抽水灭火小车设计

基于stm32单片机的app视频遥控抽水灭火水泵小车设计 1、项目简介1.1 系统构成1.2 系统功能 2、部分电路设计2.1 L298N电机驱动电路设计2.2 继电器控制电路设计 3、部分代码展示3.1 小车控制代码3.1 水泵控制代码 4 演示视频及代码资料获取 1、项目简介 视频简介中包含资料http…

开源日报 0822 | 语音识别与推理

这些项目包括 JavaScript 算法示例、系统编程语言 Rust、高性能的自动语音识别推理项目 Whisper.cpp 以及键盘工作者的单词记忆与英语肌肉记忆锻炼软件 Qwerty Learner。 trekhleb/javascript-algorithms Stars: 174.1k License: MIT 这个项目是一个包含许多流行算法和数据结…

mmc20创建进程c/c++实现

背景 最近写了一份遍历clsid所有接口的代码&#xff08;链接点这里&#xff09;&#xff0c;在查找有意思的包含exe方法的时候发现了mmc20&#xff0c;且接口是6efc2da2-b38c-457e-9abb-ed2d189b8c38。 但常见的使用mmc20都是用的vbs和powershell来创建的进程&#xff0c;这里…

Hadoop的HDFS高可用方案

一、Hadoop高可用简介 Hadoop 高可用 (High Availability) 分为 HDFS 高可用和 YARN 高可用&#xff0c;两者的实现基本类似&#xff0c;但 HDFSNameNode 对数据存储及其一致性的要求比 YARN ResourceManger 高得多&#xff0c;所以它的实现也更加复杂 1、HDFS系统高可用简介…

链家网房源价格信息的爬虫分析工具

导语 链家网是中国最大的房地产交易平台之一&#xff0c;提供了全国各地的房源信息&#xff0c;包括价格、面积、户型、楼层、朝向、小区、地理位置等。这些信息对于房地产市场的分析和预测有着重要的价值&#xff0c;但是链家网并没有提供方便的数据接口&#xff0c;因此需要…

用flask框架flask-sock和websocket创建一个自己的聊天界面

WebSocket 协议在10年前就已经标准化了(在2011年&#xff0c;你能相信吗?)所以我相信你不需要介绍。但是如果你不熟悉它&#xff0c;WebSocket 是 HTTP 协议的一个扩展&#xff0c;它在客户端和服务器之间提供了一个永久的、双向的通信通道&#xff0c;在这里双方可以实时地发…