本文整理汇总了C++中WeakClassifier::GetOneFeature方法的典型用法代码示例。如果您正苦于以下问题:C++ WeakClassifier::GetOneFeature方法的具体用法?C++ WeakClassifier::GetOneFeature怎么用?C++ WeakClassifier::GetOneFeature使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类WeakClassifier
的用法示例。
在下文中一共展示了WeakClassifier::GetOneFeature方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: SingleFeatureClassifier
void SingleFeatureClassifier(const int* const labels,WeakClassifier& sc,const int* const indexes)
{
int i;
REAL min1; REAL min2;
REAL e1,e2;
int pos1,pos2;
// compute errors1, suppose parity is 1, that is f(x)<thresh ==> h(x) = 1
// compute errors2, suppose parity is 0, that is f(x)>thresh ==> h(x) = 1
e1 = 0.0; for(i=0;i<gTotalCount;i++) if(labels[i]!=0) e1+=gWeights[i];
e2 = REAL(1.0)-e1;
min1 = e1; pos1 = 0;
min2 = e2; pos2 = 0;
for(i=0;i<gTotalCount;i++)
{
if(labels[indexes[i]]!=0) e1-=gWeights[indexes[i]]; else e1+=gWeights[indexes[i]];
if(e1<min1) { min1=e1; pos1=i; }
e2 = 1 - e1;
if(e2<min2) { min2=e2; pos2=i; }
}
pos1++; if(pos1==gTotalCount) pos1--;
pos2++; if(pos2==gTotalCount) pos2--;
if(min1<min2)
{
sc.m_iParity = 1;
sc.m_rError = min1;
sc.m_rThreshold = sc.GetOneFeature(gTrainSet[indexes[pos1]]);
}
else
{
sc.m_iParity = 0;
sc.m_rError = min2;
sc.m_rThreshold = sc.GetOneFeature(gTrainSet[indexes[pos2]]);
}
}