参考文献:[1]赵朗月,吴一全.基于机器视觉的表面缺陷检测方法研究进展[J/OL].仪器仪表学报:1-22[2022-02-17].http://kns.cnki.net/kcms/detail/11.2179.TH.20220128.1056.008.html.
1.1 提及的缺陷检测技术缺 陷 检 测 = { 传 统 图 像 处 理 方 式 { 图 像 分 割 { 阈 值 分 割 边 缘 检 测 区 域 生 长 特 征 提 取 : 颜 色 、 纹 理 、 形 状 机 器 学 习 { 无 监 督 学 习 { 聚 类 : 按 照 一 定 的 规 则 对 样 本 进 行 划 分 , 是 一 种 分 类 问 题 无 监 督 特 征 学 习 { 主 成 分 分 析 P C A 稀 疏 编 码 法 S C 自 编 码 器 A E 概 率 密 度 估 计 { 生 成 对 抗 网 络 G A N 变 分 自 编 码 器 V A E 有 监 督 学 习 { 非 概 率 模 型 { 多 层 感 知 机 M L P 支 持 向 量 机 S V M K 近 邻 K N N 概 率 判 别 模 型 { 决 策 树 逻 辑 回 归 最 大 熵 模 型 条 件 随 机 场 生 成 模 型 { 朴 素 贝 叶 斯 受 限 玻 尔 兹 曼 机 隐 马 尔 可 夫 模 型 深 度 学 习 { 检 测 网 络 { 双 阶 段 网 络 : F a s t e r R − C N N 单 阶 段 网 络 { S S D Y O L O 分 割 网 络 { 语 义 分 割 { F C N S e g N e t D e e p L a b 系 列 U − N e t 实 力 分 割 { M a s k R − C N N 图 像 金 字 塔 卷 积 神 经 网 络 I P C N N 分 类 网 络 ( 被 用 于 特 征 提 取 和 分 类 的 B a c k b o n e ) { V G G G o o g L e N e t R e s N e t 是 V G G − 16 的 延 申 , 增 添 了 残 差 单 元 缺陷检测=\left\{\begin{array}{l} 传统图像处理方式\left\{\begin{array}{l} 图像分割\left\{\begin{array}{l}阈值分割\边缘检测\区域生长\end{array}\right.\ 特征提取:颜色、纹理、形状 \end{array}\right.\ 机器学习\left\{\begin{array}{l} 无监督学习\left\{\begin{array}{l} 聚类:按照一定的规则对样本进行划分,是一种分类问题\ 无监督特征学习\left\{\begin{array}{l}主成分分析PCA\稀疏编码法SC\自编码器AE\end{array}\right.\ 概率密度估计\left\{\begin{array}{l}生成对抗网络GAN\变分自编码器VAE\end{array}\right. \end{array}\right.\ 有监督学习\left\{\begin{array}{l} 非概率模型\left\{\begin{array}{l}多层感知机MLP\支持向量机SVM\K近邻KNN\end{array}\right.\ 概率判别模型\left\{\begin{array}{l}决策树\逻辑回归\最大熵模型\条件随机场\end{array}\right.\ 生成模型\left\{\begin{array}{l}朴素贝叶斯\受限玻尔兹曼机\隐马尔可夫模型\end{array}\right. \end{array}\right. \end{array}\right.\ 深度学习\left\{\begin{array}{l} 检测网络\left\{\begin{array}{l} 双阶段网络:Faster R-CNN\ 单阶段网络\left\{\begin{array}{l}SSD\YOLO\end{array}\right. \end{array}\right.\ 分割网络\left\{\begin{array}{l} 语义分割\left\{\begin{array}{l}FCN\SegNet\DeepLab系列\U-Net\end{array}\right.\ 实力分割\left\{\begin{array}{l}Mask R-CNN\图像金字塔卷积神经网络IPCNN\end{array}\right. \end{array}\right.\ 分类网络(被用于特征提取和分类的Backbone)\left\{\begin{array}{l}VGG\GoogLeNet\ResNet是VGG-16的延申,增添了残差单元\end{array}\right. \end{array}\right. \end{array}\right. 缺陷检测=⎩⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎧传统图像处理方式⎩⎪⎪⎨⎪⎪⎧图像分割⎩⎨⎧阈值分割边缘检测区域生长特征提取:颜色、纹理、形状机器学习⎩⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎧无监督学习⎩⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎧聚类:按照一定的规则对样本进行划分,是一种分类问题无监督特征学习⎩⎨⎧主成分分析PCA稀疏编码法SC自编码器AE概率密度估计{生成对抗网络GAN变分自编码器VAE有监督学习⎩⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎧非概率模型⎩⎨⎧多层感知机MLP支持向量机SVMK近邻KNN概率判别模型⎩⎪⎪⎨⎪⎪⎧决策树逻辑回归最大熵模型条件随机场生成模型⎩⎨⎧朴素贝叶斯受限玻尔兹曼机隐马尔可夫模型深度学习⎩⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎧检测网络⎩⎨⎧双阶段网络:FasterR−CNN单阶段网络{SSDYOLO分割网络⎩⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎧语义分割⎩⎪⎪⎨⎪⎪⎧FCNSegNetDeepLab系列U−Net实力分割{MaskR−CNN图像金字塔卷积神经网络IPCNN分类网络(被用于特征提取和分类的Backbone)⎩⎨⎧VGGGoogLeNetResNet是VGG−16的延申,增添了残差单元
表面缺陷的检测定义
缺陷的检测,通常是指对物体表面的缺陷进行检测,可采用传统的图像处理算法,也可使用先进的机器学习技术,不管采用哪种方法,其目的都是对工件表面的斑点、裂痕、腐蚀、残缺等进行检测。在对缺陷进行检测时包含 3 个方面:第一,需要对其进行识别分类,判断是否为缺陷并区分缺陷的类型;第二,定位缺陷,给出其位置信息;第三,对其进行分割,确定其形状、尺寸。
使用传统方法进行处理
一般步骤为:图像采集、图像预处理(去噪、增强等)、图像分割、特征提取及分类识别。在此部分,主要概括了图像分割和特征提取两个方面,其中图像分割包含阈值分割、边缘检测和区域生长;特征提取则从颜色、纹理、形状 3个角度进行概括。
检测网络
依据网络中是否含有候选框,将网络分为单阶段和双阶段。单阶段网络中输入图像、输出备选框与分类是在一体化完成的;而双阶段网络中一半选择备选框,一半对备选框进行判断,两者之间进行级联。
1.2 30种工业缺陷数据集没写完,太多了,自己到时候看论文去。
应用对象 | 数据集 | 是否带有分割标签 | 缺陷类型 | 下载地址 |
---|---|---|---|---|
电子产品 | KolektorSDD | √ | 裂纹 | https://www.vicos.si/Downloads/KolektorSDD |
PCB板 | DeepPCB | √ | 开路、短路、孔洞、杂散、伪铜 | https://github.com/tangsanli5201/DeepPCB |
金属表面 | GC10-DET | 一 | 麻点、刮伤、凹痕 | https://github.com/lvxiaoming2019/GC10-DET-Metallic-Surface-Defect-Datasets |
钢轨 | RSDDs | √ | 孔洞、磨损、裂纹 | http://icn.bjtu.edu.cn/Visint/resources/RSDDs.aspx |
NEU | √ | 斑块、划痕、破裂、点腐蚀、内含物 | http://faculty.neu.edu.cn/yunhyan/NEU_surface_defect_database.html | |
钢材 | Micro | √ | 点状、凹痕 | http://faculty.neu.edu.cn/yunhyan/SCACM.html |
Oil pollution | √ | 油污干扰下划痕、擦痕 | http://faculty.neu.edu.cn/yunhyan/SLSM.html | |
Kaggle | √ | 斑块、划痕、裂缝 | https://www.kaggle.com/c/severstal-steel-defect-detection/data |
1.3 性能评价指标 1、二分类问题
正样本(positive)、负样本(negative)
TP(truepositive)、FN(false negative)、FP(false positive)、TN(true negative)
混淆矩阵Confusion matrix
召回率(recall),也称真阳性率(true positive rate,TPR),灵敏度,查全率。
Recall
(
T
P
R
)
=
T
P
T
P
+
F
N
\operatorname{Recall}(T P R)=\frac{T P}{T P+F N}
Recall(TPR)=TP+FNTP
精确度(precision)也称精度,查准率,阳性预测值(positive predictive value, PPV)
Precision
(
P
P
V
)
=
T
P
T
P
+
F
P
\operatorname{Precision}(PPV)=\frac{TP}{TP+FP}
Precision(PPV)=TP+FPTP
Dice 相似系数也称 F1 分数(F1-Score),描述的是召回率与精确度之间的关系,公式为:
Dice
=
2
T
P
2
T
P
+
F
P
+
F
N
\operatorname{Dice}=\frac{2TP}{2TP+FP+FN}
Dice=2TP+FP+FN2TP
或
F
1
=
2
×
P
P
V
×
T
P
R
P
P
V
+
T
P
R
\operatorname{F_1}=\frac{2×PPV×TPR}{PPV+TPR}
F1=PPV+TPR2×PPV×TPR
F1 是一个特殊值,其更一般的表示为 F-Score或 F-Measure:
F
−
S
c
o
r
e
=
(
α
2
+
1
)
P
P
V
×
T
P
R
α
2
P
P
V
+
T
P
R
F-Score=(α^2+1)\frac{PPV×TPR}{α^2PPV+TPR}
F−Score=(α2+1)α2PPV+TPRPPV×TPR
其中α为对TPR与PPV的加权求和。召回率与精确度一样重要时,令α=1,即为
F
1
F_1
F1;当认为精确度重要时,令α<1;反之认为召回率重要些时,则令α>1。
特效度(specificity)也称 TNR(true negativerate),表示负样本被准确预测,公式为:
S
p
e
c
i
f
i
c
i
t
y
(
T
N
R
)
=
T
N
T
N
+
F
P
Specificity(TNR)=\frac{TN}{TN+FP}
Specificity(TNR)=TN+FPTN
特效度与误判率成反比,在检测中特效度低,则说明部分样本原本是负样本被模型误判成了缺陷。
假阳性率(false positive rate, FPR),又称误检率,虚警率:
F
P
R
=
F
P
T
N
+
F
P
FPR=\frac{FP}{TN+FP}
FPR=TN+FPFP
假阴性率(false negative rate, FNR),又称漏检率,漏警率:
F
N
R
=
F
N
T
N
+
T
P
FNR=\frac{FN}{TN+TP}
FNR=TN+TPFN
准确率(accuracy, ACC),一般情况下,ACC 越高模型越好,但样本不平衡时,ACC 不能很好地评估模型性能。
A
C
C
=
T
P
+
T
N
T
P
+
F
P
+
T
N
+
F
N
A C C=\frac{T P+T N}{T P+F P+T N+F N}
ACC=TP+FP+TN+FNTP+TN
平衡准确率(balanced accuracy,BA):
B
A
=
F
N
T
N
+
T
P
BA=\frac{FN}{TN+TP}
BA=TN+TPFN
马 修 斯 相 关 系 数 ( Matthews correlation coefficient, MCC)综合了 TPR、TNR、FPR、FNR,是一种比较全面的指标,可以评估样本不平衡下的缺陷检测模型性能。
M
C
C
=
T
P
×
T
N
−
F
P
×
F
N
(
T
P
+
F
P
)
(
T
P
+
F
N
)
(
T
N
+
F
P
)
(
T
N
+
F
N
)
M C C=\frac{T P \times T N-F P \times F N}{\sqrt{(T P+F P)(T P+F N)(T N+F P)(T N+F N)}}
MCC=(TP+FP)(TP+FN)(TN+FP)(TN+FN)
TP×TN−FP×FN
mAP(mean average precision)是指各个类别预测正确的样本数占总样本数的平均值,越大越好。mAP 中的“AP(average precision)”是指平均精确度。当n=2时,则为二分类问题。当遇到多分类问题时n=类别数+1,因为需要加上背景。
A
P
=
∑
P
P
V
n
AP=\frac{\sum PPV}{n}
AP=n∑PPV
像素准确率(pixel accuracy, PA),常用于语义分割判断分对的像素数量占总像素数量的比率:
P
A
=
∑
i
=
0
k
p
i
i
∑
i
=
0
k
∑
j
=
0
k
p
i
j
P A=\frac{\sum_{i=0}^{k} p_{i i}}{\sum_{i=0}^{k} \sum_{j=0}^{k} p_{i j}}
PA=∑i=0k∑j=0kpij∑i=0kpii
平均像素准确率(mean pixel accuracy, mPA),是对 PA 求平均。
m
P
A
=
1
k
+
1
∑
i
=
0
k
p
i
i
∑
i
=
0
k
p
i
j
m P A=\frac{1}{k+1} \sum_{i=0}^{k} \frac{p_{i i}}{\sum_{i=0}^{k} p_{i j}}
mPA=k+11i=0∑k∑i=0kpijpii
平均交并比(mean intersection over union, mIoU)表示标注的准确性。
m
I
o
U
=
1
k
+
1
∑
i
=
0
k
p
i
i
∑
i
=
0
k
p
i
j
+
∑
j
=
0
k
p
j
i
−
p
i
i
m I o U=\frac{1}{k+1} \sum_{i=0}^{k} \frac{p_{i i}}{\sum_{i=0}^{k} p_{i j}+\sum_{j=0}^{k} p_{j i}-p_{i i}}
mIoU=k+11i=0∑k∑i=0kpij+∑j=0kpji−piipii
PA、mPA、mIoU 都为判断语义分割准确率的指标,其中 k 为总类别数, k+1 为加上背景,
P
i
j
P_{ij}
Pij为第
i
i
i类像素被判为
j
j
j类的数量,
P
i
j
P_{ij}
Pij、
P
i
i
P_{ii}
Pii的含义以此类推。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)