基于在线示例分类器精化的多示例检测网络及其训练方法与流程

文档序号:11920858阅读:来源:国知局

技术特征:

1.一种基于在线示例分类器精化的多示例检测网络训练方法,其特征在于,所述方法包括下述步骤:

(1)确定训练图片集,所述训练数据集包括训练图片的集合,以及每张训练图片的类别标签,所述类别标签用于表示该训练图中包含哪一类或多类目标示例,并选择每张训练图片中的多个候选区域;

(2)获得所述训练图片集中训练图片的卷积特征图,并将训练图片的各候选区域在其原始训练图片中的位置映射到该训练图片的卷积层特征图上,得到训练图片的各候选区域的卷积特征;

(3)将训练图片的各候选区域的卷积特征输入到全连接层中,得到训练图片的各候选区域的特征向量;

(4)构建一个基准示例分类器,并根据所述训练图片的各候选区域的特征向量和所述基准示例分类器构建多个精化示例分类器,通过更新每个候选区域得分的权重,进行在线示例分类器精化;

(5)合并整个网络中的损失函数,包含基准示例分类器的损失函数和多个精化示例分类器的损失函数,训练端到端的多示例检测网络。

2.如权利要求1所述的基于在线示例分类器精化的多示例检测网络训练方法,其特征在于,所述步骤(4)具体包括:

(4.1)首先构建基准示例分类器,所述基准示例分类器为基础的多示例目标检测网络,训练图片的各候选区域的特征向量计算各候选区域的得分,并根据各候选区域的得分计算训练图片的分数,利用图片的标签信息和由候选区域得分计算的图片分数来训练基准示例分类器;

(4.2)利用图像候选区域的特征向量和上述的基准示例分类器,构建多个精化示例分类器,所述精化示例分类器将步骤(4.1)训练的基准示例分类器中候选区域的分数结果作为第一个精化示例分类器中候选区域的分数的权重系数,将K-1次训练的精化示例分类器中候选区域的分数结果作为第K个训练的精化示例分类器中候选区域的分数的权重,通过更新每个候选区域得分的权重,进行在线示例分类器精化,所述K为精化示例分类器的个数。

3.如权利要求2所述的基于在线示例分类器精化的多示例检测网络训练方法,其特征在于,所述步骤(4.1)具体包括:

(4.1.1)将训练图片的所有候选区域的特征向量输入两个全连接层,得到两个C维度大小的向量Xc和Xd,其中C为类别标签的数目,其中Xc和Xd∈RC*|R|,|R|为每张图片的候选区域的数目;

(4.1.2)将Xc和Xd分别输入两个softmax层,经过该两个softmax层后,得到每个候选区域的两组分数σ(Xc)和σ(Xd),σ(Xc)表示每个候选区域占标签类别中某个类别的概率分数,σ(Xd)表示每个候选区域占该图片做出标签贡献的概率分数,σ(Xc)和σ(Xd)的取值范围为(0,1);两者逐点乘积得到该候选区域的分数XR

其中两个softmax层,表示为:

<mrow> <msub> <mrow> <mo>&lsqb;</mo> <mi>&sigma;</mi> <mrow> <mo>(</mo> <msup> <mi>X</mi> <mi>c</mi> </msup> <mo>)</mo> </mrow> <mo>&rsqb;</mo> </mrow> <mrow> <mi>i</mi> <mi>j</mi> </mrow> </msub> <mo>=</mo> <mfrac> <msup> <mi>e</mi> <msubsup> <mi>x</mi> <mrow> <mi>i</mi> <mi>j</mi> </mrow> <mi>c</mi> </msubsup> </msup> <mrow> <msubsup> <mi>&Sigma;</mi> <mrow> <mi>k</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>C</mi> </msubsup> <msup> <mi>e</mi> <msubsup> <mi>x</mi> <mrow> <mi>k</mi> <mi>j</mi> </mrow> <mi>c</mi> </msubsup> </msup> </mrow> </mfrac> </mrow>

<mrow> <msub> <mrow> <mo>&lsqb;</mo> <mi>&sigma;</mi> <mrow> <mo>(</mo> <msup> <mi>X</mi> <mi>d</mi> </msup> <mo>)</mo> </mrow> <mo>&rsqb;</mo> </mrow> <mrow> <mi>i</mi> <mi>j</mi> </mrow> </msub> <mo>=</mo> <mfrac> <msup> <mi>e</mi> <msubsup> <mi>x</mi> <mrow> <mi>i</mi> <mi>j</mi> </mrow> <mi>d</mi> </msubsup> </msup> <mrow> <msubsup> <mi>&Sigma;</mi> <mrow> <mi>k</mi> <mo>=</mo> <mn>1</mn> </mrow> <mrow> <mo>|</mo> <mi>R</mi> <mo>|</mo> </mrow> </msubsup> <msup> <mi>e</mi> <msubsup> <mi>x</mi> <mrow> <mi>i</mi> <mi>k</mi> </mrow> <mi>d</mi> </msubsup> </msup> </mrow> </mfrac> </mrow>

XR表示为:

XR=σ(Xc)⊙σ(Xd)。

(4.1.3)将该训练图片所有候选区域的分数加和表示为该训练图片的分数表示为:

每张图片的分数是求和池化的结果,其取值范围为(0,1),该分数表示该图片被分类为类别c的概率;

(4.1.4)利用(4.1.3)得到的图片分数,采用标准的多分类交叉熵损失函数训练基准示例分类器;损失函数表示为:

其中Y为训练图片的类别标签,记为:

Y=[y1,y2,…,yC]T∈RC*1

其中,yc的值为1或0,表示该图片中包括或不包括目标c,总共有C个目标类别。

4.如权利要求3所述的基于在线示例分类器精化的多示例检测网络训练方法,其特征在于,所述步骤(4.2)具体包括:

(4.2.1)将所有候选区域的特征向量输入到一个全连接层,得到C+1维度大小的向量XRk,记为:

<mrow> <msubsup> <mi>X</mi> <mi>j</mi> <mrow> <mi>R</mi> <mi>k</mi> </mrow> </msubsup> <mo>&Element;</mo> <msup> <mi>R</mi> <mrow> <mo>(</mo> <mi>C</mi> <mo>+</mo> <mn>1</mn> <mo>)</mo> <mo>&times;</mo> <mn>1</mn> </mrow> </msup> <mo>,</mo> <mi>k</mi> <mo>&Element;</mo> <mo>{</mo> <mn>1</mn> <mo>,</mo> <mn>2</mn> <mo>,</mo> <mo>...</mo> <mo>,</mo> <mi>K</mi> <mo>}</mo> </mrow>

其中,j表示第j个候选区域,k表示第k次精化训练,精化训练的分类器的类别为{C+1};

(4.2.2)将(4.2.1)得到的C+1维度大小的向量XRk输入到一个softmax层,得到每个候选区域的分数,取值范围为(0,1),该分数表示该候选区域占{C+1}类别的概率分数;

(4.2.3)根据候选区域的分数确定每个候选区域的类别;

(4.2.4)利用损失函数:

<mrow> <msubsup> <mi>L</mi> <mi>r</mi> <mi>k</mi> </msubsup> <mo>=</mo> <mo>-</mo> <mfrac> <mn>1</mn> <mrow> <mo>|</mo> <mi>R</mi> <mo>|</mo> </mrow> </mfrac> <msubsup> <mi>&Sigma;</mi> <mrow> <mi>r</mi> <mo>=</mo> <mn>1</mn> </mrow> <mrow> <mo>|</mo> <mi>R</mi> <mo>|</mo> </mrow> </msubsup> <msubsup> <mi>&Sigma;</mi> <mrow> <mi>c</mi> <mo>=</mo> <mn>1</mn> </mrow> <mrow> <mi>C</mi> <mo>+</mo> <mn>1</mn> </mrow> </msubsup> <msubsup> <mi>w</mi> <mi>r</mi> <mi>k</mi> </msubsup> <msubsup> <mi>y</mi> <mrow> <mi>c</mi> <mi>r</mi> </mrow> <mi>k</mi> </msubsup> <msubsup> <mi>logx</mi> <mrow> <mi>c</mi> <mi>r</mi> </mrow> <mrow> <mi>R</mi> <mi>k</mi> </mrow> </msubsup> </mrow>

经过多次精化训练逐渐逼近目标示例的位置,训练各精化示例分类器。

其中,Yjk为所述训练图片集的所有候选区域的标签集:

<mrow> <msubsup> <mi>Y</mi> <mi>j</mi> <mi>k</mi> </msubsup> <mo>=</mo> <msup> <mrow> <mo>&lsqb;</mo> <mrow> <msubsup> <mi>y</mi> <mrow> <mn>1</mn> <mi>j</mi> </mrow> <mi>k</mi> </msubsup> <mo>,</mo> <msubsup> <mi>y</mi> <mrow> <mn>2</mn> <mi>j</mi> </mrow> <mi>k</mi> </msubsup> <mo>,</mo> <mo>...</mo> <mo>,</mo> <msubsup> <mi>y</mi> <mrow> <mo>(</mo> <mi>C</mi> <mo>+</mo> <mn>1</mn> <mo>)</mo> <mi>j</mi> </mrow> <mi>k</mi> </msubsup> </mrow> <mo>&rsqb;</mo> </mrow> <mi>T</mi> </msup> <mo>&Element;</mo> <msup> <mi>R</mi> <mrow> <mo>(</mo> <mi>C</mi> <mo>+</mo> <mn>1</mn> <mo>)</mo> <mo>&times;</mo> <mn>1</mn> </mrow> </msup> </mrow>

权重系数为第k-1个精化示例分类器训练的分数结果,

5.如权利要求4所述的基于在线示例分类器精化的多示例检测网络训练方法,其特征在于,所述步骤(5)具体为:

将(4.1.4)的基准示例分类器的损失函数和(4.2.4)的K个精化示例分类器的损失函数合并,得到多示例检测网络的损失函数如下:

<mrow> <mi>L</mi> <mo>=</mo> <msub> <mi>L</mi> <mi>b</mi> </msub> <mo>+</mo> <msubsup> <mi>&Sigma;</mi> <mrow> <mi>k</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>K</mi> </msubsup> <msubsup> <mi>L</mi> <mi>r</mi> <mi>k</mi> </msubsup> <mo>,</mo> </mrow>

该优化损失函数,将基准示例分类器训练和分类器精化两个阶段融合到一个网络中。

6.如权利要求4或5所述的基于在线示例分类器精化的多示例检测网络训练方法,其特征在于,所述步骤(4.2.3)具体为:

选择训练图片的|R|个候选区域的分数XRk中分数最大的那个候选区域,用该训练图片的类别标签来标记该候选区域的类别;

选择与分数最大的那个候选区域的覆盖率大于设定覆盖率阈值的邻近候选区域,并用该训练图片的类别标签来标记这些邻近候选区域的类别。

7.如权利要求4或5所述的基于在线示例分类器精化的多示例检测网络训练方法,其特征在于,在更新权重系数的过程中,当邻近候选区域与当前分数最大的候选区域的IoU最大时,将该最大分数赋给该邻近候选区域的权重。

8.如权利要求1或2所述的基于在线示例分类器精化的多示例检测网络训练方法,其特征在于,所述步骤(1)中选择每张训练图片中的多个候选区域,具体为:

采用Selective Search方法为每张训练图片选取可能为目标位置的候选区域。

9.如权利要求1或2所述的基于在线示例分类器精化的多示例检测网络训练方法,其特征在于,在所述步骤(2)中将训练图片的各候选区域在其原始训练图片中的位置映射到该训练图片的卷积层特征图上,具体为:

将训练图片的卷积特征图及训练图片的各候选区域输入到具有SPP-NET网络结构的卷积层,从而将训练图片的各候选区域在其原始训练图片中的位置映射到该训练图片的卷积层特征图上,得到训练图片的各候选区域的卷积特征。

10.如权利要求1-9任一项所述方法训练得到的基于在线示例分类器精化的多示例检测网络。

当前第2页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1