-
摘要: 针对热轧带钢表面缺陷检测存在的智能化水平低、检测精度低和检测速度慢等问题, 提出了一种基于自适应全局定位网络(Adaptive global localization network, AGLNet)的深度学习缺陷检测算法. 首先, 引入一种残差网络(Residual network, ResNet)与特征金字塔网络(Feature pyramid network, FPN)集成的特征提取结构, 减少缺陷语义信息在层级传递间的消失; 其次, 提出基于TPE (Tree-structure Parzen estimation)的自适应树型候选框提取网络(Adaptive tree-structure region proposal extraction network, AT-RPN), 无需先验知识的积累, 避免了人为调参的训练模式; 最后, 引入全局定位回归算法, 以全局定位的模式在复杂的缺陷检测中实现缺陷更精确定位. 本文实现一种快速、准确、更智能化、更适用于实际应用的热轧带钢表面缺陷的算法. 实验结果表明, AGLNet在NEU-DET热轧带钢表面缺陷数据集上的检测速度保持在11.8帧/s, 平均精度达到79.90 %, 优于目前其他深度学习带钢表面缺陷检测算法. 另外, 该算法还具备较强的泛化能力.
-
关键词:
- 表面缺陷检测 /
- 深度学习 /
- 特征金字塔网络 /
- 自适应树型候选框提取 /
- 全局定位
Abstract: A deep learning defect detection model based on adaptive global localization network (AGLNet) is presented to solve the problems of low intelligence, low detection accuracy and slow detection speed in hot-rolled strip surface defect detection. First, the feature extraction structure is combined with residual network (ResNet) and feature pyramid network (FPN) to reduce the disappearance of defect semantic information between layers transfers. Secondly, an adaptive tree-structure region proposal extraction network (AT-RPN) based on tree-structure Parzen estimation (TPE) algorithm is proposed, which does not need the accumulation of prior knowledge, and avoids the training model by manual parameter adjustment. Finally, a global localization regression algorithm is proposed to locate defects more accurately in complex defect detection using global positioning mode. In this paper, a fast, accurate, more intelligent and more applicable algorithm for surface defects detection of hot-rolled strips is realized. The experimental results show that the detection speed of AGLNet remains 11.8 frame/s and the average accuracy is 79.90 %, which is better than other deep learning algorithms for strip surface defect detection on NEU-DET dataset. In addition, the algorithm has a strong generalization ability. -
近年来, 张量方法在控制理论及其应用的各个领域得到了广泛的应用, 如基于张量数据表示的深度学习模型[1]、基于非负张量分析的时序链路预测方法[2]、局部图像描述中基于结构张量的HDO (Histograms of dominant orientations)算法[3]、二维解析张量投票算法[4]等.
张量动力系统已经广泛应用于Volterra系统识别[5]、张量乘积TP (Tensor product)模型变换[6]、人体动作识别[7-8]和塑性模型[9]等各个领域.因此, 由于在张量常微分方程解中的关键作用, 张量指数函数的计算已经成为一个重要的研究领域.
考虑如下常微分方程[9]
$$ \begin{align}\label{equation1-1} \left\{ \begin{array}{ll} \dot{\mathcal{Y}}(t)=\mathcal{A}\mathcal{Y}(t) \\ {\mathcal{Y}}(t_0)=\mathcal{Y}_{0} \end{array} \right. \end{align} $$ (1) 这里$\mathcal{A}$和$\mathcal{Y}_{0}$是给定张量, 一般是非对称的, 那么关于系统(1)的张量指数函数${\rm exp}(\cdot)$有如下唯一解:
$$ \begin{align}\label{equation1-2} {\mathcal{Y}}(t)={\rm exp}[(t-t_0)\mathcal{A}]{\mathcal{Y}}_{0} \end{align} $$ (2) 对于一般的张量$\mathcal{A}$, 它的指数函数可以表示为它的级数形式:
$$ \begin{align*}{\rm exp}(\mathcal{A})=\sum\limits_{n=0}^\infty \frac{1}{n!}\mathcal{A}^n\end{align*} $$ 目前计算张量指数函数(2)通常使用的方法是截断法[10], 其实质就是将张量指数函数展开成无穷级数后, 取前$n_{\rm{max}}$项, 得到近似解, 即:
$$ \begin{align*}{\rm exp}(\mathcal{A}) \approx \sum\limits_{n=0}^{n_{\rm{max}}} \frac{1}{n!}\mathcal{A}^n\end{align*} $$ 张量指数函数选取的项数$n_{\rm{max}}$受限于所需的精度:
$$ \begin{align*}\frac{1}{n_{\rm{max}}!}\|\mathcal{A}^{n_{\rm{max}}}\|\le \epsilon_{\rm{tol}}\end{align*} $$ 显然有截断法的精度与张量指数函数选取的项数$n_{\rm{max}}$有关, 保留的项数越多, 精度越高, 但是需要进行的张量乘积次数也就越多; 保留的项数越少, 计算量越少, 但是精度也就越低.因此, 计算张量指数函数的截断法有待改进.
为研究上述问题, 本文首次定义了张量的一种广义逆, 并以此为基础构造了张量广义逆Padé逼近GITPA (Generalized inverse tensor Padé approximation)的一种$\varepsilon$-算法. GITPA方法的优势在于:在计算过程中, 不必用到张量的乘积, 也不要计算张量的逆, 另外, 该方法对奇异张量也是适用的.目前在国内外, 关于计算张量的逆还没有找到一种比较可行的计算方法.作为GITPA方法的一个重要应用, 本文在后面给出计算张量指数函数的数值实验, 来说明$\varepsilon$-算法的有效性.
本文组织如下:第1节简单介绍本文用到的张量基础知识, 并定义张量的一种广义逆; 第2节, 首先给出广义逆张量Padé逼近的定义, 并以此为基础给出张量$\varepsilon$-算法; 第3节将$\varepsilon$-算法用来计算张量指数函数值, 并与通常使用的的级数截断法相比较; 最后给出简单的小结.
1. 一种张量广义逆
1.1 张量基础知识
本节介绍本文将要用到的张量基础知识.张量是一种多维数组, 其中向量是一阶张量, 矩阵是二阶张量, 特别地, 一个$ p $阶张量拥有$ p $个下标, 是$ p $个拥有独立坐标系的向量空间的外积(张量积).一个$ p $阶$ n_1\times n_2\times \cdots \times n_p $维张量可以表示为:
$$ \mathcal{A} = (a_{i_{1}i_{2}\cdots i_{p}})\in {\bf C}^{n_{1}\times n_{2}\times\cdots \times n_{p}} $$ 文献[11]提出了张量的切片方法.对一个三阶张量, 可以固定其中任意一个下标, 从而得到该张量的一种表示形式.设$ \mathcal{A} = (a_{i_{1}i_{2}i_{3}})\in {\bf C}^{2\times 2\times3} $, 固定其第三个下标, 则张量可以表示为
$$ \begin{align*} \mathcal{A} = \, &\left[ \begin{array}{c|c|c} \mathcal{A}_{1} &\mathcal{A}_{2}& \mathcal{A}_{3} \end{array}\right] = \nonumber\\ &\left[ \begin{array}{cc|cc|cc} a_{111} & a_{121} & a_{112} & a_{122} & a_{113} & a_{123}\\ a_{211} & a_{221} & a_{212} & a_{222} & a_{213} & a_{223}\\ \end{array} \right] \end{align*} $$ 下面定义两个三阶张量的$ t $-积, 可以通过递归自然地推广到高阶张量的$ t $-积.
定义1[12]. (块循环矩阵)令$ \mathcal{A} \in {\bf R}^{l\times p\times n} $, 则$ \mathcal{A} $的块循环矩阵被定义为
$$ \begin{equation*} bcirc(\mathcal{A}) = {\left[ \begin{array}{ccccc} \mathcal{A}_{1} & \mathcal{A}_{n} & \mathcal{A}_{n-1} & \cdots & \mathcal{A}_{2} \\ \mathcal{A}_{2} & \mathcal{A}_{1} & \mathcal{A}_{n} & \cdots & \mathcal{A}_{3} \\ \vdots & \vdots & \vdots & \ddots & \vdots \\ \mathcal{A}_{n} & \mathcal{A}_{n-1} & \cdots & \mathcal{A}_{2} & \mathcal{A}_{1} \\ \end{array} \right]}_{ln\times pn} \end{equation*} $$ 定义一个展开算子: $ unfold(\cdot)$[12], 用以下方式将一个${p\times m\times n}$的张量展开成一个${pn\times m}$的矩阵:
$$ \begin{equation*} unfold(\mathcal{B}) = \left[ \begin{array}{c} \mathcal{B}_{1}^{\rm{T}} \mathcal{B}_{2}^{\rm{T}} \cdots \mathcal{B}_{n}^{\rm{T}}\\ \end{array} \right]^{\rm{T}} \end{equation*} $$ 这里$fold(\cdot)$[12]是它的逆算子, 它会将一个$ {pn\times m} $的矩阵转化成$ {p\times m\times n} $的张量.因此,
$$ \begin{equation*} fold(unfold(\mathcal{B})) = \mathcal{B} \end{equation*} $$ 定义2[12-13]. (张量$ t $-积)令$ \mathcal{A} $是一个$ l\times p\times n $的张量, $ \mathcal{B} $是一个$ p\times m\times n $的张量, 则张量$ t $-积$ \mathcal{A}*\mathcal{B} $将得到一个$ l\times m\times n $的张量, 定义如下:
$$ \begin{equation*} \mathcal{A}\ast \mathcal{B} = fold(bcirc(\mathcal{A}) \cdot unfold(B)) \end{equation*} $$ 例1. 设$ \mathcal{A}, \mathcal{B}\in {\bf R}^{2\times 2\times3} $, 现固定其第三个下标, 分别产生
$$ \begin{align*} \begin{array}{rl} \mathcal{A} = &\left[ \begin{array}{cc|cc|cc} 1 & 2 & 5 & 6 & 9 & 10 \\ 3 & 4 & 7 & 8 & 11 & 12 \\ \end{array} \right]\\ \mathcal{B} = &\left[ \begin{array}{cc|cc|cc} 1 & 2 & 4 & 3 & 1 & 0 \\ 3 & 4 & 2 & 1 & 0 & 1 \\ \end{array} \right]\end{array} \end{align*} $$ 则由定义2得到
$$ \begin{align*} \begin{array}{rl} \mathcal{A}\ast\! \mathcal{B} = \\&fold\left[ \begin{array}{c} \left[ \begin{array}{ccc} \mathcal{A}_{1} & \mathcal{A}_{3} & \mathcal{A}_{2} \\ \mathcal{A}_{2} & \mathcal{A}_{1} & \mathcal{A}_{3} \\ \mathcal{A}_{3} & \mathcal{A}_{2} & \mathcal{A}_{1} \\ \end{array} \right]\cdot\left[ \begin{array}{c} \mathcal{B}_{1} \\ \mathcal{B}_{2} \\ \mathcal{B}_{3} \\ \end{array} \right] \\ \end{array} \right] = \\ &fold\left[ \begin{array}{c} \mathcal{A}_{1}\mathcal{B}_{1}+\mathcal{A}_{3}\mathcal{B}_{2}+\mathcal{A}_{2}\mathcal{B}_{3} \\ \mathcal{A}_{2}\mathcal{B}_{1}+\mathcal{A}_{1}\mathcal{B}_{2}+\mathcal{A}_{3}\mathcal{B}_{3} \\ \mathcal{A}_{3}\mathcal{B}_{1}+\mathcal{A}_{2}\mathcal{B}_{2}+\mathcal{A}_{1}\mathcal{B}_{3} \\ \end{array} \right] = \\ &\left[ \begin{array}{cc|cc|cc} 68 & 53 & 40 & 49 & 72 & 81 \\ 90 & 75 & 62 & 71 & 94 & 103 \\ \end{array} \right] \end{array} \end{align*} $$ 下面定义张量的范数.令$ \mathcal{A}\in {\bf C}^{n_{1}\times n_{2}\times\cdots \times n_{p}} $, 张量的范数就等于它所有元素平方和的平方根[11], 即
$$ \begin{align} \|\mathcal{A}\| = \sqrt{\sum^{n_{1}}_{i_{1} = 1}\sum^{n_{2}}_{i_{2} = 1}\cdots\sum^{n_{p}}_{i_{p} = 1}a^2_{i_{1}i_{2}\cdots i_{p}}} \end{align} $$ (3) 这和矩阵的$ Frobenius $-模是类似的.两个大小相同的张量$ \mathcal{A} $, $ \mathcal{B}\in {\bf C}^{n_{1}\times n_{2}\times\cdots \times n_{p}} $的内积等于它们对应元素的乘积的和[11], 即
$$ \begin{align} (\mathcal{A}, \mathcal{B}) = \sum^{n_{1}}_{i_{1} = 1}\sum^{n_{2}}_{i_{2} = 1}\cdots\sum^{n_{p}}_{i_{p} = 1}a_{i_{1}i_{2}\cdots i_{p}}b_{i_{1}i_{2}\cdots i_{p}} \end{align} $$ (4) 于是显然成立$ (\mathcal{A}, \mathcal{A}^\ast) = \|\mathcal{A}\|^2 $, 其中记号"$ \ast $''表示取复共轭.
1.2 张量广义逆
参考复数、向量和矩阵的倒数, 容易得到以下结论:
1) 若$ b $是一个复数, $ b\in {\bf C} $, 则$ bb^\ast = |b|^2 $, $ {1}/{b} = b^{-1} = {b^\ast}/{|b|^2} $;
2) 若$ {\pmb v} $是一个向量, $ {\pmb v}\in {\bf C}^n $, 则$ {\pmb v}\cdot {\pmb v}^\ast = |{\pmb v}|^2 $, $ {1}/{{\pmb v}} = {\pmb v}^{-1} = {{\pmb v}^\ast}/{|{\pmb v}|^2} $ (见Graves-Morris [14]);
3) 若$ A = a_{ij} $, $ B = b_{ij}\in {\bf C}^{s\times t} $, 则$ A\cdot B = \sum^s_{i = 1}\sum^t_{j = 1}(a_{ij}b_{ij})\in {\bf C} $, $ {1}/{A} = A_r^{-1} = {A^\ast}{\|A\|^2} $ (见顾传青[15-17]).因此, 下面张量的广义逆可以看作是向量和矩阵的推广:
定义3. 令$ \mathcal{A}, \mathcal{B}\in {\bf C}^{n_1\times n_2\times \cdots\times n_p} $, 其内积为
$$ \begin{equation*} (\mathcal{A}, \mathcal{B}) = \sum\limits^{n_{1}}_{i_{1} = 1}\sum\limits^{n_{2}}_{i_{2} = 1}\cdots\sum\limits^{n_{p}}_{i_{p} = 1}a_{i_{1}i_{2}\cdots i_{p}b_{i_{1}i_{2}\cdots i_{p}}} \end{equation*} $$ $ \mathcal{A}\cdot\mathcal{A}^\ast = \parallel\mathcal{A}\parallel^2 $, 则张量$ \mathcal{A} $的广义逆被定义为
$$ \begin{align} \begin{aligned} \mathcal{A}_r^{-1}& = \frac{1}{\mathcal{A}} = \frac{\mathcal{A}^\ast}{\parallel\mathcal{A}\parallel^2}, \mathcal{A}\neq 0, \mathcal{A}\in {\bf C}^{n_1\times n_2\times \cdots\times n_p} \end{aligned} \end{align} $$ (5) 其中张量的范数由式(3)给出.
引理1. 令$ \mathcal{A}, \mathcal{B}\in {\bf C}^{n_1\times n_2\times \cdots\times n_p}, \mathcal{A}, \mathcal{B}\neq0 $且$ b\in {\bf R}, b\neq0 $, 则下列关系成立:
1) $ \frac{b}{\mathcal{A}} = \frac{1}{\mathcal{B}}\Longleftrightarrow\mathcal{A} = b\mathcal{B} $;
2) $ (\mathcal{A}^{-1}_r)^{-1}_r = \mathcal{A}, (b\mathcal{A})^{-1}_r = \frac{1}{b}\mathcal{A}^{-1}_r $.
证明. 根据定义3, 结论2)是显然的.现在证明结论1).因为$ \mathcal{A}, \mathcal{B}\neq0 $, 从$ \mathcal{A} = b\mathcal{B} $, 容易推得$ \frac{b}{\mathcal{A}} = \frac{1}{\mathcal{B}} $.利用定义3, 得到引理1的左端, $ \frac{b\mathcal{A}^\ast}{\|\mathcal{A}\|^2} = \frac{\mathcal{B}^\ast}{\|\mathcal{B}\|^2} $, 即
$$ \begin{align*} \mathcal{A}^\ast = \frac{\parallel\mathcal{A}\parallel^2}{b\parallel\mathcal{B}\parallel^2}\mathcal{B}^\ast, \mathcal{A} = \frac{\parallel\mathcal{A}\parallel^2}{b\parallel\mathcal{B}\parallel^2}\mathcal{B} \end{align*} $$ 因此
$$ \begin{align*} \parallel\mathcal{A}\parallel^2 = \mathcal{A}\cdot\mathcal{A}^\ast = \frac{\parallel\mathcal{A}\parallel^4\parallel\mathcal{B}\parallel^2}{b^2\parallel\mathcal{B}\parallel^4} \end{align*} $$ 即$ b^2 = \frac{\parallel\mathcal{A}\parallel^2}{\parallel\mathcal{B}\parallel^2} $, 所以$ \mathcal{A} = b\mathcal{B} $.
2. 张量广义逆$ \pmb{\varepsilon} $-算法
2.1 广义逆张量Padé逼近的定义
设$ f(t) $是给定的张量多项式, 其系数为张量, 即
$$ \begin{equation} f(t) = \mathcal{C}_0+\mathcal{C}_1t+\mathcal{C}_2t^2+\cdots+\mathcal{C}_nt^n+\cdots \end{equation} $$ (6) $$ \begin{equation*} \mathcal{C}_i = (c_i^{(i_1i_2\cdots i_p)})\in {\bf C}^{n_{1}\times n_{2}\times\cdots \times n_{p}}, t\in {\bf C} \end{equation*} $$ 定义4. 令$ C^{n_1\times n_2\times \cdots\times n_p}[t] $是一个$ p $阶张量的多项式集合, 维数分别为$ n_1\times n_2\times \cdots\times n_p $.一个张量多项式$ \mathcal{A}(t) = (a_{i_1i_2 \cdots i_p}(t))\in {\bf C}^{n_1\times n_2\times \cdots\times n_p}[t] $是$ m $阶的, 表示为$ \partial\mathcal{A}(t) = m $, 若$ \partial(a_{i_1i_2 \cdots i_p}(t))\leq m $对于所有$ i_i = 1, 2, \cdots, n_i, 1\leq i\leq p $都成立, 且$ \partial(a_{(i_1i_2 \cdots i_p)}(t)) = m $对于某些$ i_i = 1, 2, \cdots, n_i, 1\leq i\leq p $成立.
定义5. 定义$ [\frac{n}{2k}] $型广义逆张量Padé逼近(GITPA)是一个张量有理函数
$$ \begin{equation} \mathcal{R}(t) = \frac{\mathcal{P}(t)}{q(t)} \end{equation} $$ (7) 其中, $ \mathcal{P}(t) $是一个张量多项式, $ q(t) $是一个数量多项式, 满足以下条件:
1) $ \partial{ \mathcal{P}(t)}\leq n, \partial{q(t)} = 2k; $
2) $ q(t)\mid \parallel\mathcal{P}(t)\parallel^2; $
3) $ q(t)f(t)-\mathcal{P}(t) = O(t^{n+1}); $
其中, $ \mathcal{P}(t) = (p_{(i_1i_2 \cdots i_p)}(t))\in {\bf C}^{n_1\times n_2\times \cdots \times n_p} $, 其范数$ \|\mathcal{P}(t)\|^2 $由式(3)给出, 而整除性条件2)表明分母数量多项式$ q(t) $能够整除分子张量多项式$ \mathcal{P}(t) $范数的平方.
2.2 张量$ \pmb\varepsilon $-算法
给定张量多项式(6), 根据张量广义逆(5), 定义张量$ \varepsilon $-算法如下:
$$ \begin{align*} &\varepsilon_{-1}^{(j)} = 0 , j = 0, 1, 2, \cdots \end{align*} $$ (8) $$ \begin{align*} &\varepsilon_0^{(j)} = \sum\limits_{i = 0}^j C_i z^i , j = 0, 1, 2, \cdots \end{align*} $$ (9) $$ \begin{align*} &\varepsilon_{k+1}^{(j)} = \varepsilon_{k-1}^{(j+1)}+(\varepsilon_k^{(j+1)}-\varepsilon_k^{(j)})^{-1} , j, k\ge0 \end{align*} $$ (10) 类似于矩阵情况, 根据式(8)$ \, \sim\, $(10), 上述张量$ \varepsilon $-算法组成了一个称为$ \varepsilon $-表的二维数组:
其中, 根据$ \varepsilon $-算法产生的元素$ \varepsilon_{k+1}^{(j)} $, 它的上标$ j $表示斜行数, 下标$ k+1 $表示列数.每个元素的产生与一个菱形有关, 例如, 由$ \varepsilon_0^{(1)}, \varepsilon_1^{(0)}, \varepsilon_1^{(1)}, \varepsilon_2^{(0)} $所组成的菱形, 现在要计算$ \varepsilon_2^{(0)} $, 由式(10), 将$ \varepsilon_1^{(1)} $减去$ \varepsilon_1^{(0)} $, 再取广义逆(3), 然后将结果加上$ \varepsilon_0^{(1)} $, 从而得到$ \varepsilon_2^{(0)} $.
定理1. (恒等定理)利用张量广义逆(5), 根据$ \varepsilon $-算法(8)$ \, \sim\, $(10)构造$ \varepsilon_{2k}^{(j)} $, 如果在计算过程中没有出现分母为零的情形, 则广义逆Padé逼近$ [\frac{j+2k}{2k}]_f $存在, 且成立恒等式:
$$ \begin{equation} \varepsilon_{2k}^{(j)} = \left[\frac{j+2k}{2k}\right]_f, j, k\ge 0 \end{equation} $$ (11) 证明. 该证明与矩阵情况类似, 可以参考文献[15].
设张量指数函数为
$$ \begin{equation} {\rm exp}(\mathcal{A}t) = \mathcal{I}+\mathcal{A}t+\frac{1}{2!}\mathcal{A}^2t^2+\frac{1}{3!}\mathcal{A}^3t^3+\cdots \end{equation} $$ (12) 给出计算张量指数函数(9)的张量$ \varepsilon $-算法如下:
算法1. (计算张量指数函数的$ \varepsilon $-算法):
输入:张量$ \mathcal{A} $、自变量$ t $和需要逼近的阶数$ j_{\rm{max}} $和$ k_{\rm{max}} $ (偶数)的值.
1) 计算$ \varepsilon $-表的第一列,
$ \varepsilon_{-1}^{(j)} = 0, j = 0, 1, 2, \cdots, j_{\rm{max}}+1 $.
2) 计算$ \varepsilon $-表的第二列,
$ \varepsilon_0^{(j)} = \sum_{i = 0}^j \frac{1}{i!}\mathcal{A}^it^i, j = 0, 1, 2, \cdots, j_{\rm{max}} $.
3) 逐列计算$ \varepsilon $-表的第三列至第$ k_{\rm{max}}+2 $列,
$ \varepsilon_{k+1}^{(j)} = \varepsilon_{k-1}^{(j+1)}+(\varepsilon_k^{(j+1)}-\varepsilon_k^{(j)})^{-1}, j, k\ge0 $.
输出:计算结果$ \varepsilon_{2k}^{(j)} = [\frac{j+2k}{2k}]_e $, 即为所求张量指数的$ [\frac{j+2k}{2k}] $型广义逆Padé逼近, 其中在第2)步计算$ \mathcal{A}^i $时用到定义1给出的张量$ t $-积.
2.3 张量$ \pmb\varepsilon $-算法的常用格式
给定张量指数函数(12), 下面给出张量$ \varepsilon $-算法的几个常用格式:
格式Ⅰ: $ \varepsilon_2^{-1} = [\frac{1}{2}]_e = \varepsilon_{0}^{(0)}+(\varepsilon_1^{(0)}-\varepsilon_1^{(-1)})^{-1} $, 其中
$$ \begin{align*} &\varepsilon_{0}^{(0)} = \mathcal{I}, \varepsilon_{0}^{(1)} = \mathcal{I}+\mathcal{A}t\\ &\varepsilon_{1}^{(0)} = (\varepsilon_0^{(1)}-\varepsilon_0^{(0)})^{-1} = \frac{1}{\mathcal{A}t}\\ &\varepsilon_{0}^{(-1)} = 0, \varepsilon_{1}^{(-1)} = (\varepsilon_0^{(0)}-\varepsilon_0^{(-1)})^{-1} = \frac{1}{\mathcal{I}} \end{align*} $$ 格式Ⅱ: $ \varepsilon_2^{0} = [\frac{2}{2}]_e = \varepsilon_{0}^{(1)}+(\varepsilon_1^{(1)}-\varepsilon_1^{(0)})^{-1} $, 其中
$$ \begin{align*} &\varepsilon_{1}^{(1)} = (\varepsilon_0^{(2)}-\varepsilon_0^{(1)})^{-1} = \frac{2}{\mathcal{A}^2t^2}\\ &\varepsilon_{0}^{(2)} = \mathcal{I}+\mathcal{A}t+\frac{\mathcal{A}^2t^2}{2} \end{align*} $$ 格式Ⅲ: $ \varepsilon_2^{1} = [\frac{3}{2}]_e = \varepsilon_{0}^{(2)}+(\varepsilon_1^{(2)}-\varepsilon_1^{(1)})^{-1} $, 其中
$$ \begin{align*} &\varepsilon_{1}^{(2)} = (\varepsilon_0^{(3)}-\varepsilon_0^{(2)})^{-1} = \frac{6}{\mathcal{A}^3t^3}\\ &\varepsilon_{0}^{(3)} = \mathcal{I}+\mathcal{A}t+\frac{\mathcal{A}^2t^2}{2}+\frac{\mathcal{A}^3t^3}{6} \end{align*} $$ 格式Ⅳ: $ \varepsilon_4^{-1} = [\frac{3}{4}]_e = \varepsilon_{2}^{(0)}+(\varepsilon_3^{(0)}-\varepsilon_3^{(-1)})^{-1} $, 其中
$$ \begin{align*} &\varepsilon_{3}^{(0)} = \varepsilon_{1}^{(1)}+(\varepsilon_2^{(1)}-\varepsilon_2^{(0)})^{-1}\\ &\varepsilon_{3}^{(-1)} = \varepsilon_{1}^{(0)}+(\varepsilon_2^{(0)}-\varepsilon_2^{(-1)})^{-1} \end{align*} $$ 格式Ⅴ: $ \varepsilon_4^{0} = [\frac{4}{4}]_e = \varepsilon_{2}^{(1)}+(\varepsilon_3^{(1)}-\varepsilon_3^{(0)})^{-1} $, 其中
$$ \begin{align*} &\varepsilon_{3}^{(1)} = \varepsilon_1^{(2)}+(\varepsilon_2^{(2)}-\varepsilon_2^{(1)})^{-1} \end{align*} $$ 格式Ⅵ: $ \varepsilon_4^{1} = [\frac{5}{4}]_e = \varepsilon_{2}^{(2)}+(\varepsilon_3^{(2)}-\varepsilon_3^{(1)})^{-1} $, 其中
$$ \begin{align*} &\varepsilon_{3}^{(2)} = \varepsilon_1^{(3)}+(\varepsilon_2^{(3)}-\varepsilon_2^{(2)})^{-1} \end{align*} $$ 例2. 设张量$ \mathcal{A}\in {\bf R}^{2\times 2\times 2} $, 其张量指数函数为
$$ \begin{equation*} \label{equation3-8} \begin{aligned} {\rm exp}(\mathcal{A}t) = \, &\left[ \begin{array}{cc|cc} 1 & 0 & 0 & 0 \\ 0 & 1 & 0 & 0 \\ \end{array} \right] +\\ &\left[ \begin{array}{cc|cc} 0 & 1 & 0 & 2 \\ 0 & -2 & 0 & -1 \\ \end{array} \right]t+\\ &\left[ \begin{array}{cc|cc} 0 & -2 & 0 & -\dfrac{5}{2} \\ 0 & \dfrac{5}{2} & 0 & 2 \\ \end{array} \right]t^2 +\end{aligned} \end{equation*} $$ $$ \begin{align} &\left[ \begin{array}{cc|cc} 0 & \dfrac{13}{6} & 0 & \dfrac{7}{3} \\ 0 & -\dfrac{7}{3} & 0 & -\dfrac{13}{6} \\ \end{array} \right]t^3+\\ &\left[ \begin{array}{cc|cc} 0 & -\dfrac{5}{3} & 0 & -\dfrac{41}{24} \nonumber\\ 0 & \dfrac{41}{24} & 0 & \dfrac{5}{3} \nonumber\\ \end{array} \right]t^4+\cdots = \\ &\mathcal{I}+\mathcal{A}t+\frac{1}{2!}\mathcal{A}^2t^2+ \frac{1}{3!}\mathcal{A}^3t^3+\\ &\frac{1}{4!}\mathcal{A}^4t^4+\cdots \end{align} $$ (13) 计算$ [\frac{2}{2}] $型GITPA.
由常用格式Ⅱ得
$$ \begin{equation*} \begin{aligned} &\varepsilon_2^{(0)} = \left[\frac{2}{2}\right]_e = \varepsilon_{0}^{(0)}+(\varepsilon_1^{(0)}-\varepsilon_1^{(-1)})^{-1} = \\ &\mathcal{I}+\mathcal{A}t+\frac{1}{\frac{2}{\mathcal{A}^2t^2}-\frac{1}{\mathcal{A}t}} = \\ &\frac{\left[ \begin{array}{cc|cc} a_1 & a_2 & 0 & a_3\\ 0 & a_1-a_3 & 0 & -a_2\\ \end{array} \right]}{a_1} = \frac{\mathcal{P}_2(t)}{q_2(t)} \end{aligned} \end{equation*} $$ 其中
$$ \begin{array}{rl} a_1 = &41+140t+125t^2\\ a_2 = &40t^2+41t\\ a_3 = &155t^2+82t \end{array} $$ 由定义5, $ \varepsilon_2^{(0)} = \frac{\mathcal{P}_2(t)}{q_2(t)} $是式(13)的$ [\frac{2}{2}] $型GITPA, 满足以下条件:
1) $ \partial{\mathcal{P}_2(t)} = 2, \partial{q_2(t)} = 2; $
2) $ q_2(t)\mid \parallel\mathcal{P}_2(t)\parallel^2; $这里
$$ \begin{align*} \|\mathcal{P}_2(t)\|^2 = \, &2(a_1^2+a_2^2+a_3^2)-2a_1a_3 = \\ &2(a_1^2+205t^2a_1-a_1a_3) = \\ &2a_1(a_1+205t^2-a_3) \end{align*} $$ 3) $ q_2(t){\rm exp}(\mathcal{A}t)-\mathcal{P}_2(t) = O(t^{3}) $.
3. 数值实验
本节计算张量$\varepsilon$-算法的近似值和精确值的误差, 并将本文的方法与计算张量指数函数的截断法进行比较.首先给出目前通常使用的无穷序列截断法:
算法2. (无穷序列截断法[10])
输入:张量$\mathcal{A}$、自变量$t$和误差限$\epsilon_{\rm{tol}}$的值.
1) 初始化$n=0$和${\rm exp}(\mathcal{A}t):=\mathcal{I}$.
2) $n:=n+1$.
3) 计算$\frac{t^n}{n!}$和$\mathcal{A}^n$.
4) 将该项计算结果加到
$$ {\rm exp}(\mathcal{A}t):={\rm exp}(\mathcal{A}t)+\frac{t^n}{n!}\mathcal{A}^n $$ 5) 判断是否停止, 若
$$ \begin{equation*} \frac{\|\mathcal{A}^n\|t^n}{n!} <\epsilon_{\rm{tol}} \end{equation*} $$ 则停止, 否则回到第2)步.
输出: ${\rm exp}(\mathcal{A}t)$.
例3. 设张量$\mathcal{A}\in {\bf R}^{2\times 2\times 2}$, $\mathcal{A}$中的元素为
$$ a_{121}=\frac{1}{2}, a_{221}=-\frac{2}{3}, a_{122}=-\frac{1}{2}, a_{222}=\frac{2}{3} $$ 其余均为0, 它的指数函数展开式为
$$ \begin{equation}\label{equation4-1} \begin{aligned} {\rm exp}(\mathcal{A}t)=\, &\left[ \begin{array}{cc|cc} 1 & 0 & 0 & 0 \\ 0 & 1 & 0 & 0 \\ \end{array} \right] +\\ &\left[ \begin{array}{cc|cc} 0 & \dfrac{1}{2} & 0 & \dfrac{2}{3} \\[2mm] 0 & -\dfrac{2}{3} & 0 & -\dfrac{1}{2} \\ \end{array} \right]t+\\ &\left[ \begin{array}{cc|cc} 0 & -\dfrac{1}{3} & 0 & -\dfrac{15}{72} \\[2mm] 0 & \dfrac{15}{72} & 0 & \dfrac{1}{3} \\ \end{array} \right]t^2+\\ &\left[ \begin{array}{cc|cc} 0 & \dfrac{19}{144} & 0 & \dfrac{43}{324} \\[2mm] 0 & -\dfrac{43}{324} & 0 & -\dfrac{19}{144} \\ \end{array} \right]t^3+\\ &\left[ \begin{array}{cc|cc} 0&-\dfrac{25}{648}&0&-\dfrac{128}{3315}\\[2mm] 0&\dfrac{128}{3315}&0&\dfrac{25}{648}\\ \end{array} \right]t^4+\cdots=\\ &\mathcal{I}+\mathcal{A}t+\frac{1}{2!}\mathcal{A}^2t^2+ \frac{1}{3!}\mathcal{A}^3t^3+\\ &\frac{1}{4!}\mathcal{A}^4t^4+\cdots \end{aligned} \end{equation} $$ (14) 用$\varepsilon$-算法和截断法计算该指数函数.
3.1 $\pmb{[\frac{4}{4}]}$型GITPA的数值实验
由常用格式V计算$[\frac{4}{4}]$型GITPA, 数值实验结果见表 1.
表 1 $[\frac{4}{4}]$型GITPA-算法数值实验Table 1 The numerical experiment of $[\frac{4}{4}]$ type GITPA-algorithm$x$ $(1, 2, 1)$ $(2, 2, 1)$ $(1, 2, 2)$ $(2, 2, 2)$ $ RES $ 0.2 $E$值 0.08766299 0.87955329 0.12044671 -0.08766299 $5.69\times10^{-13}$ $A$值 0.08766327 0.87955283 0.12044717 -0.08766327 0.4 $E$值 0.15420167 0.78130960 0.21869040 -0.15420167 $3.74\times10^{-10}$ $A$值 0.15420895 0.78129804 0.21870196 -0.15420895 0.6 $E$值 0.20408121 0.70078192 0.29921808 -0.20408121 $1.40\times10^{-8}$ $A$值 0.20412606 0.70071136 0.29928864 -0.20412606 0.8 $E$值 0.24081224 0.63444735 0.36555265 -0.24081224 $1.63\times10^{-7}$ $A$值 0.24096630 0.63420702 0.36579298 -0.24096630 1 $E$值 0.26715410 0.57953894 0.42046106 -0.26715410 $1.01\times10^{-6}$ $A$值 0.26753925 0.57894247 0.42105753 -0.26753925 表 1中由常用格式V计算的近似值记作$A$值, 根据截断法即算法2取指数函数展开式(14)前15项计算得到的结果为精确值, 记作$E$值.表 1中分别列出张量下标为(1, 2, 1), (2, 2, 1), (1, 2, 2), (2, 2, 2)在点0.2, 0.4, 0.6, 0.8, 1相应的近似值与精确值.表 1中最后一列表示近似值与精确值残差的范数的平方, 记作$RES$, 其计算公式如下:
$$ \begin{equation*} RES(t)=\|{\rm exp}(\mathcal{A}t)-\left[\frac{4}{4}\right]_{e^{\mathcal{A}t}}(t)\|^2 \end{equation*} $$ 其中, 模范数$\|\cdot\|$由式(3)定义.
表 1显示, 张量$\varepsilon$-算法得到的近似值能够达到较高的计算精度.可以发现, 自变量的值越接近0, 张量$\varepsilon$-算法的逼近效果越好, 计算结果基本符合理论预期.
3.2 两个算法数值实验的比较
首先, 在张量指数函数(14)中令$t=2$, 取前15项计算得到的精确值为
$$ \begin{equation*} \left[ \begin{array}{cc|cc} 1 & ~~0.3098~~&~~0 & ~~0.5932 \\ 0 & ~~0.4068~~&~~0 & ~~-0.3098 \\ \end{array} \right] \end{equation*} $$ 根据算法1分别计算$[\frac{2}{2}], [\frac{4}{4}], [\frac{6}{6}]$型GITPA, 并与截断算法2进行比较, 得到的数值实验结果见表 2.
表 2 算法1和算法2的数值实验比较Table 2 The numerical experiment comparison of Algorithm 1 and Algorithm 2$[\frac{j+2k}{2k}]$ 张量$\varepsilon$-算法 $n_{\rm{max}}$ $\sum^{n_{\rm{max}}}_{n=0}\frac{1}{n!}\mathcal{A}^nt^n $ $a_{121}$ $a_{221}$ $a_{122}$ $a_{222}$ $a_{121}$ $a_{221}$ $a_{122}$ $a_{222}$ $[\frac{2}{2}]$ 0.4235 0.3513 0.6487 -0.4235 1 1.0000 -0.3333 1.3333 -1.0000 $[\frac{4}{4}]$ 0.3049 0.4141 0.5859 -0.3049 2 -0.3333 1.0556 -0.0556 0.3333 $[\frac{6}{6}]$ 0.3098 0.4068 0.5932 -0.3098 3 0.7222 -0.0062 1.0062 -0.7222 - - - - 4 0.1049 0.6116 0.3884 -0.1049 - - - - 5 0.3931 0.3234 0.6766 -0.3931 - - - - 6 0.2810 0.4355 0.5645 -0.2810 - - - - 7 0.3184 0.3981 0.6019 -0.3184 - - - - 8 0.3075 0.4090 0.5910 -0.3075 - - - - 9 0.3103 0.4062 0.5938 -0.3103 - - - - 10 0.3097 0.4069 0.5931 -0.3097 - - - - 11 0.3098 0.4067 0.5933 -0.3098 - - - - 12 0.3098 0.4068 0.5932 -0.3098 表 2显示, $[\frac{6}{6}]$型GITPA计算的数值结果与截断法取前13项相加的数值结果的精确度相近, 由此说明本文给出的张量$\varepsilon$-算法是有效的.
3.3 两个算法计算复杂度的比较
下面从计算复杂度的角度来对两种算法进行比较.由于需要自乘, 前两维的维数必须相等.对于一个$l\times l\times n$的三阶张量$\mathcal{A}$, 1次张量$t$-积的计算复杂度为$ {\rm O}(l^3n^2)$; 而1次张量的广义逆等价于2次张量的数乘计算, 其计算复杂度为$ {\rm O}(l^2n)$.因此, 随着张量维数的增大, 计算张量$t$-积显然要比计算张量的广义逆付出更大的成本.
根据张量$\varepsilon$-算法计算$[\frac{6}{6}]$型GITPA所使用的是张量指数函数(14)的前7项, 需要进行5次张量$t$-积和21次广义逆计算, 而达到相同精度, 截断法需要取前13项, 需要进行11次张量$t$-积和12次数乘运算.两种算法的计算复杂度比较见表 3.从表 3可以看出:在计算过程中, 张量$\varepsilon$-算法计算复杂度为$5l^3n^2+42l^2n$, 截断法计算复杂度为$11l^3n^2+12l^2n$.
表 3 算法1和算法2的计算复杂度分析Table 3 The analysis of computational complexity of Algorithm 1 and Algorithm 2计算一次 $\varepsilon$-算法: $[\frac{6}{6}]$型 截断法:取13项 复杂度 计算 计算 $t$-积运算 $l^3n^2$ 5 11 数乘运算 $l^2n$ 21 12 范数运算 $l^2n$ 21 0 总和 $5l^3n^2+42l^2n$ $11l^3n^2+12l^2n$ 例4. 为了比较两种算法所需的时间, 在Matlab中选取$'seed~'=1:100$, 随机生成张量$\mathcal{A}$如下: $3\times 3\times 3, 10\times 10\times 10, 20\times 20\times 20, 30\times 30\times 30, 40\times 40\times 40$各100个张量, 分别使用算法1和算法2计算其张量指数函数(12), 其中, 本文给出的算法1计算的是$[\frac{6}{6}]$型GITPA, 算法2计算的是指数函数展开的前13项之和.两个算法计算所需时间见表 4, 表中数据均是由内存8 GB, 主频2.50 GHz, 操作系统Windows 10, 处理器Inter(R) Core(TM) i5-7300HQ的笔记本电脑的Matlab (R2015b)得到.
表 4 不同维数下两种算法的运行时间表(s)Table 4 The consuming time of two algorithms in different dimensions (s)张量维数 张量$\varepsilon$-算法运行时间 截断法运行时间 $ 3~\times ~3\times ~3$ 1.755262 1.103832 $10\times 10\times 10$ 2.272663 2.164860 $20\times 20\times 20$ 3.831094 4.805505 $30\times 30\times 30$ 6.419004 10.545785 $40\times 40\times 40$ 15.814063 30.012744 图 1显示, 算法1计算$[\frac{6}{6}]$型GITPA与算法2即截断法计算前13项之和相比, 在维数较低的情况下(维数低于$10\times 10\times 10$), GITPA的运行时间略高于截断法; 当维数较高时, 本文的算法1逐渐显示出优越性, 可以很好地降低计算时间.
4. 结论
目前, 国内外还没有看到计算张量的逆和广义逆的有效算法, 本文提出的一种张量广义逆即定义3是一个实用的计算方法, 它是同一类型的向量广义逆(Graves-Morris [14])和矩阵广义逆(顾传青[15-16, 18])在张量上的推广.在该张量广义逆的基础上, 本文得到了计算张量指数函数(12)的张量$\varepsilon$-算法.从计算张量指数函数(14)的数值实验来看, 与目前通用的无穷序列截断法相比较, 在计算精度和计算复杂度上具有一定的优势, 在张量维数比较大时, 这个优势会更加明显.下面的研究工作从两个方面进行, 一是用本文提出的广义逆张量Padé逼近(GITPA)方法来考虑控制论中的模型简化问题, 二是对张量$\varepsilon$-算法的稳定性进行探讨.
-
表 1 各个模型在NEU-DET数据集的缺陷检测平均精度结果(%)
Table 1 The average precision results of defect detection for each model in the NEU-DET dataset (%)
方法 平均精度均值 裂纹 夹杂 斑块 麻点 压入氧化 划痕 Faster R-CNN 79.20 71.31 84.63 82.92 80.17 80.31 75.87 RetinaNet 75.36 53.02 78.74 93.33 91.37 62.21 73.49 FCOS 75.18 52.41 75.03 91.48 84.85 62.86 84.43 Grid R-CNN 73.14 41.52 78.68 86.23 86.47 59.74 86.21 YOLO-v1 62.90 42.35 63.42 68.23 66.49 69.37 67.53 YOLO-v2 66.53 47.35 70.47 72.23 65.82 65.49 77.84 YOLO-v3 69.40 68.39 61.88 71.44 68.33 72.66 73.71 YOLO-v4 77.99 64.87 70.84 93.24 83.83 69.52 85.63 YOLO-v5 76.82 62.42 75.76 84.23 81.27 64.59 92.63 YOLOF 77.32 63.48 71.82 90.56 85.21 64.24 88.63 AGLNet 79.90 54.72 83.31 88.63 91.67 64.42 96.64 表 2 AGLNet、Grid R-CNN and Faster R-CNN基于NEU-DET数据集的对比测试结果
Table 2 Comparison results of AGLNet, Grid R-CNN and Faster R-CNN based on NEU-DET dataset
裂纹 夹杂 斑块 麻点 压入氧化 划痕 AGLNet Grid R-CNN Faster R-CNN 表 3 各模型FLOPs, Params和FPS对比结果
Table 3 Comparison of FLOPs, Params and FPS of each model
方法 FLOPs (GMAC) Params (M) FPS (帧/s) Faster R-CNN 408.36 98.25 ~8.2 RetinaNet 239.32 37.74 ~12.3 FCOS 438.68 89.79 ~9.3 Grid R-CNN 329.51 64.32 ~10.2 YOLO-v3 89.45 27.84 ~15.4 YOLOF 151.47 63.24 ~13.4 AGLNet 273.95 79.80 ~1.8 表 4 各类缺陷在不同IoU阈值下的测试结果
Table 4 Detection results of various defects under different IoU thresholds
IoU阈值 缺陷类型 gts Dets Recall mAP IoU0.5 裂纹 139 1 886 0.935 54.72 IoU0.75 裂纹 139 1 823 0.923 47.48 IoU0.5 夹杂 181 1 188 0.945 83.31 IoU0.75 夹杂 181 1 163 0.932 82.17 IoU0.5 斑块 151 627 0.960 88.63 IoU0.75 斑块 151 591 0.942 89.45 IoU0.5 麻点 88 689 0.955 91.67 IoU0.75 麻点 88 636 0.938 89.24 IoU0.5 压入氧化 126 1 034 0.893 64.42 IoU0.75 压入氧化 126 1 051 0.882 59.66 IoU0.5 划痕 117 317 0.991 96.64 IoU0.75 划痕 117 322 0.986 92.79 IoU0.5 全部缺陷 802 5 741 0.947 79.90 IoU0.75 全部缺陷 802 5 586 0.934 76.79 表 5 消融实验结果
Table 5 Results of ablation experiments
序号 ResNet50_FPN ResNet50 AT-RPN RPN mAP (%) FPS GPU 存贮占用量(MiB) 1 √ √ 79.90 11.8 5568 2 √ √ 78.64 10.3 7039 3 √ √ 77.97 12.2 5024 4 √ √ 76.82 10.6 6436 表 6 消融实验对比结果
Table 6 Comparison results of ablation experiments
序号 对比实验 mAP提升(%) FPS提升 节约显存占用率(%) 1 实验1/实验2 1.26 1.5 20.89 2 实验3/实验4 1.15 1.6 21.93 3 实验1/实验3 1.93 −0.4 −10.82 4 实验2/实验4 1.82 −0.3 −9.36 5 实验1/实验4 3.08 1.2 13.49 表 7 PCB-Master数据集基本信息
Table 7 Basic information of PCB-Master dataset
缺陷类型 图像数量 缺陷数量 漏孔 115 497 鼠咬 115 492 断路 115 482 短路 115 491 毛刺 115 488 余铜 116 503 全部缺陷总计 693 2 953 表 8 各个模型在PCB-Master数据集上测试结果
Table 8 Test results of each model on PCB-Master dataset
Faster R-CNN RetinaNet FCOS Grid R-CNN YOLO-v3 YOLOF AGLNet AP (漏孔) (%) 87.43 91.54 90.73 95.55 85.83 94.22 99.45 AP (鼠咬) (%) 84.90 90.50 85.24 93.37 79.25 93.35 95.17 AP (断路) (%) 86.15 89.65 84.74 91.45 74.73 88.63 92.93 AP (短路) (%) 89.45 92.16 92.83 99.70 83.23 99.70 99.70 AP (毛刺) (%) 86.91 95.26 91.50 95.36 82.62 98.86 99.65 AP (余铜) (%) 86.53 87.48 88.03 90.48 73.10 95.39 94.22 mAP (%) 86.90 91.10 88.85 94.32 79.79 95.03 96.85 FPS (帧/s) ~4.20 ~6.67 ~5.41 ~5.88 ~9.52 ~7.69 ~6.25 表 9 PCB-Master测试集检测数据统计
Table 9 Data statistics of PCB-Master defect detection test set
缺陷类别 gts Dets Recall AP 漏孔 169 696 0.998 0.995 鼠咬 142 665 0.990 0.952 断路 142 667 0.990 0.929 短路 132 590 1.000 0.997 毛刺 143 687 1.000 0.997 余铜 137 644 0.979 0.942 全部缺陷总计 865 3949 -
[1] 王典洪, 甘胜丰, 张伟民, 雷维新. 基于监督双限制连接Isomap算法的带钢表面缺陷图像分类方法. 自动化学报, 2014, 40(5): 883−891Wang Dian-Hong, Gan Sheng-Feng, Zhang Wei-Min, Lei Wei-Xin. Strip surface defect image classification based on double-limited and supervised-connect Isomap algorithm. Acta Automatica Sinica, 2014, 40(5): 883−891 [2] Song K C, Yan Y H. A noise robust method based on completed local binary patterns for hot-rolled steel strip surface defects. Applied Surface Science, 2013, 285: 858−864 doi: 10.1016/j.apsusc.2013.09.002 [3] Neogi N, Mohanta D K, Dutta P K. Review of vision-based steel surface inspection systems. EURASIP Journal on Image and Video Processing, 2014, 2014(1): Article No. 50 doi: 10.1186/1687-5281-2014-50 [4] 许志祥, 卢宏, 沈剑. 摄像机定标及其误差分析. 自动化学报, 1993, 19(1): 115−117Xu Zhi-Xiang, Lu Hong, Shen Jian. Camera calibration and its error analysis. Acta Automatica Sinica, 1993, 19(1): 115−117 [5] 李少波, 杨静, 王铮, 朱书德, 杨观赐. 缺陷检测技术的发展与应用研究综述. 自动化学报, 2020, 46(11): 2319−2336Li Shao-Bo, Yang Jing, Wang Zheng, Zhu Shu-De, Yang Guan-Ci. Review of development and application of defect detection technology. Acta Automatica Sinica, 2020, 46(11): 2319−2336 [6] 刘国梁, 余建波. 基于堆叠降噪自编码器的神经−符号模型及在晶圆表面缺陷识别. 自动化学报, 2022, 48(11): 2688−2702Liu Guo-Liang, Yu Jian-Bo. Application of neural-symbol model based on stacked denoising auto-encoders in wafer map defect recognition. Acta Automatica Sinica, 2022, 48(11): 2688−2702 [7] Ren S Q, He K M, Girshick R, Sun J. Faster R-CNN: Towards real-time object detection with region proposal networks. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2017, 39(6): 1137−1149 doi: 10.1109/TPAMI.2016.2577031 [8] He K M, Gkioxari G, Dollár P, Girshick R. Mask R-CNN. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2020, 42(2): 386−397 doi: 10.1109/TPAMI.2018.2844175 [9] Redmon J, Divvala S, Girshick R, Farhadi A. You only look once: Unified, real-time object detection. In: Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR). Las Vegas, USA: IEEE, 2016. 779−788 [10] Liu W, Anguelov D, Erhan D, Szegedy C, Reed S, Fu C Y, et al. SSD: Single shot MultiBox detector. In: Proceedings of the 14th European Conference on Computer Vision (ECCV). Amsterdam, The Netherlands: Springer, 2016. 21−37 [11] Lin T Y, Dollár P, Girshick R, He K M, Hariharan B, Belongie S. Feature pyramid networks for object detection. In: Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR). Honolulu, USA: IEEE, 2017. 936−944 [12] Tao X, Zhang D P, Wang Z H, Liu X L, Zhang H Y, Xu D. Detection of power line insulator defects using aerial images analyzed with convolutional neural networks. IEEE Transactions on Systems, Man, and Cybernetics: Systems, 2020, 50(4): 1486−1498 doi: 10.1109/TSMC.2018.2871750 [13] He Y, Song K C, Meng Q G, Yan Y H. An end-to-end steel surface defect detection approach via fusing multiple hierarchical features. IEEE Transactions on Instrumentation and Measurement, 2020, 69(4): 1493−1504 doi: 10.1109/TIM.2019.2915404 [14] Cheng X, Yu J B. RetinaNet with difference channel attention and adaptively spatial feature fusion for steel surface defect detection. IEEE Transactions on Instrumentation and Measurement, 2021, 70: Article No. 2503911 [15] Chen J W, Liu Z G, Wang H R, Núñez A, Han Z W. Automatic defect detection of fasteners on the catenary support device using deep convolutional neural network. IEEE Transactions on Instrumentation and Measurement, 2018, 67(2): 257−269 doi: 10.1109/TIM.2017.2775345 [16] Zhang C B, Chang C C, Jamshidi M. Concrete bridge surface damage detection using a single-stage detector. Computer-Aided Civil and Infrastructure Engineering, 2020, 35(4): 389−409 doi: 10.1111/mice.12500 [17] Zhang S F, Chi C, Yao Y Q, Lei Z, Li S Z. Bridging the gap between anchor-based and anchor-free detection via adaptive training sample selection. In: Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR). Seattle, USA: IEEE, 2020. 9756−9765 [18] Law H, Deng J. CornerNet: Detecting objects as paired keypoints. International Journal of Computer Vision, 2020, 128(3): 642−656 doi: 10.1007/s11263-019-01204-1 [19] Duan K W, Bai S, Xie L X, Qi H G, Huang Q M, Tian Q. CenterNet: Keypoint triplets for object detection. In: Proceedings of the IEEE/CVF International Conference on Computer Vision (ICCV). Seoul, South Korea: IEEE, 2019. 6568−6577 [20] Jia X G, Yang X Q, Yu X H, Gao H J. A modified CenterNet for crack detection of sanitary ceramics. In: Proceedings of the 46th Annual Conference of the IEEE Industrial Electronics Society (IECON). Singapore: IEEE, 2020. 5311−5316 [21] Zhu C C, He Y H, Savvides M. Feature selective anchor-free module for single-shot object detection. In: Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR). Long Beach, USA: IEEE, 2019. 840−849 [22] Tian Z, Shen C H, Chen H, He T. FCOS: Fully convolutional one-stage object detection. In: Proceedings of the IEEE/CVF International Conference on Computer Vision (ICCV). Seoul, South Korea: IEEE, 2019. 9626−9635 [23] Kong T, Sun F C, Liu H P, Jiang Y N, Li L, Shi J B. FoveaBox: Beyound anchor-based object detection. IEEE Transactions on Image Processing, 2020, 29: 7389−7398 doi: 10.1109/TIP.2020.3002345 [24] Lu X, Li B Y, Yue Y X, Li Q Q, Yan J J. Grid R-CNN. In: Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR). Long Beach, USA: IEEE, 2019. 7355−7364 [25] Wang J Q, Zhang W W, Cao Y H, Chen K, Pang J M, Gong T, et al. Side-aware boundary localization for more precise object detection. In: Proceedings of the 16th European Conference on Computer Vision (ECCV). Glasgow, UK: Springer, 2020. 403−419 [26] Bergstra J, Bardenet R, Bengio Y, Kégl B. Algorithms for hyper-parameter optimization. In: Proceedings of the 24th International Conference on Neural Information Processing Systems (NIPS). Granada, Spain: Curran Associates Inc., 2011. 2546−2554 [27] Cao J L, Cholakkal H, Anwer R M, Khan F S, Pang Y W, Shao L. D2Det: Towards high quality object detection and instance segmentation. In: Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR). Seattle, USA: IEEE, 2020. 11482−11491 [28] Ding R W, Dai L H, Li G P, Liu H. TDD-net: A tiny defect detection network for printed circuit boards. CAAI Transactions on Intelligence Technology, 2019, 4(2): 110−116 doi: 10.1049/trit.2019.0019 期刊类型引用(1)
1. 蒋祥龙,顾传青. Thiele型张量连分式插值及其在张量指数计算中的应用. 上海大学学报(自然科学版). 2021(04): 650-658 . 百度学术
其他类型引用(0)
-