6464
6565#include " opencv2/opencv_modules.hpp"
6666
67- #ifdef HAVE_OPENCV_OBJDETECT
68- # include " opencv2/objdetect .hpp"
67+ #ifdef HAVE_OPENCV_XOBJDETECT
68+ # include " opencv2/xobjdetect .hpp"
6969// # include "opencv2/objdetect/objdetect_c.h"
7070#endif
7171
@@ -1843,16 +1843,16 @@ static NCVStatus loadFromXML(const cv::String &filename,
18431843 std::vector<HaarClassifierNode128> &haarClassifierNodes,
18441844 std::vector<HaarFeature64> &haarFeatures)
18451845{
1846- const char *CUDA_CC_SIZE = " size" ;
1847- const char *CUDA_CC_STAGES = " stages" ;
1848- const char *CUDA_CC_STAGE_THRESHOLD = " stage_threshold" ;
1849- const char *CUDA_CC_TREES = " trees" ;
1850- const char *CUDA_CC_FEATURE = " feature" ;
1851- const char *CUDA_CC_RECT = " rects" ;
1852- const char *CUDA_CC_TILTED = " tilted" ;
1853- const char *CUDA_CC_THRESHOLD = " threshold" ;
1846+ const char *CUDA_CC_SIZE = " size" ;
1847+ const char *CUDA_CC_STAGES = " stages" ;
1848+ const char *CUDA_CC_STAGE_THRESHOLD = " stage_threshold" ;
1849+ const char *CUDA_CC_TREES = " trees" ;
1850+ const char *CUDA_CC_FEATURE = " feature" ;
1851+ const char *CUDA_CC_RECT = " rects" ;
1852+ const char *CUDA_CC_TILTED = " tilted" ;
1853+ const char *CUDA_CC_THRESHOLD = " threshold" ;
18541854 const char *CUDA_CC_LEFT_VAL = " left_val" ;
1855- const char *CUDA_CC_RIGHT_VAL = " right_val" ;
1855+ const char *CUDA_CC_RIGHT_VAL = " right_val" ;
18561856 const char *CUDA_CC_LEFT_NODE = " left_node" ;
18571857 const char *CUDA_CC_RIGHT_NODE = " right_node" ;
18581858
@@ -1873,60 +1873,60 @@ static NCVStatus loadFromXML(const cv::String &filename,
18731873 haarClassifierNodes.resize (0 );
18741874 haarFeatures.resize (0 );
18751875
1876- cv::FileStorage fs (filename, cv::FileStorage::READ | cv::FileStorage::FORMAT_XML);
1877-
1878- if (!fs.isOpened ())
1876+ cv::FileStorage fs (filename, cv::FileStorage::READ | cv::FileStorage::FORMAT_XML);
1877+
1878+ if (!fs.isOpened ())
18791879 return NCV_FILE_ERROR;
18801880
1881- const cv::FileNode &root = fs.getFirstTopLevelNode ();
1881+ const cv::FileNode &root = fs.getFirstTopLevelNode ();
18821882 const cv::FileNode &fnSize = root[CUDA_CC_SIZE];
18831883
18841884 // collect the cascade classifier window size
18851885 haar.ClassifierSize .width = (int )fnSize[CUDA_CC_SIZE_W];
18861886 haar.ClassifierSize .height = (int )fnSize[CUDA_CC_SIZE_H];
18871887 CV_Assert (haar.ClassifierSize .height > 0 && haar.ClassifierSize .width > 0 );
18881888
1889- const cv::FileNode &fnStages = root[CUDA_CC_STAGES];
1889+ const cv::FileNode &fnStages = root[CUDA_CC_STAGES];
18901890 cv::FileNodeIterator it = fnStages.begin (), it_end = fnStages.end ();
18911891
1892- for (; it != it_end; ++it) // by stages
1893- {
1894- cv::FileNode fnStage = *it;
1892+ for (; it != it_end; ++it) // by stages
1893+ {
1894+ cv::FileNode fnStage = *it;
18951895 HaarStage64 curStage;
18961896
1897- curStage.setStartClassifierRootNodeOffset (static_cast <Ncv32u>(haarClassifierNodes.size ()));
1897+ curStage.setStartClassifierRootNodeOffset (static_cast <Ncv32u>(haarClassifierNodes.size ()));
18981898 curStage.setStageThreshold ((float )fnStage[CUDA_CC_STAGE_THRESHOLD]);
18991899
1900- // iterate over the trees
1901- const cv::FileNode &fnTrees = fnStage[CUDA_CC_TREES];
1902- cv::FileNodeIterator it1 = fnTrees.begin (), it1_end = fnTrees.end ();
1903-
1904- for (; it1 != it1_end; ++it1) // by trees
1905- {
1906- cv::FileNode tree = *it1;
1907- Ncv32u nodeId = (size_t )0 ;
1908- HaarClassifierNode128 curNode;
1909-
1910- curNode.setThreshold ((float )tree[0 ][CUDA_CC_THRESHOLD]);
1911-
1912- NcvBool bIsLeftNodeLeaf = false ;
1913- NcvBool bIsRightNodeLeaf = false ;
1914-
1900+ // iterate over the trees
1901+ const cv::FileNode &fnTrees = fnStage[CUDA_CC_TREES];
1902+ cv::FileNodeIterator it1 = fnTrees.begin (), it1_end = fnTrees.end ();
1903+
1904+ for (; it1 != it1_end; ++it1) // by trees
1905+ {
1906+ cv::FileNode tree = *it1;
1907+ Ncv32u nodeId = (size_t )0 ;
1908+ HaarClassifierNode128 curNode;
1909+
1910+ curNode.setThreshold ((float )tree[0 ][CUDA_CC_THRESHOLD]);
1911+
1912+ NcvBool bIsLeftNodeLeaf = false ;
1913+ NcvBool bIsRightNodeLeaf = false ;
1914+
19151915 HaarClassifierNodeDescriptor32 nodeLeft;
19161916
19171917 cv::FileNode leftNode = tree[0 ][CUDA_CC_LEFT_NODE];
19181918
19191919 if (leftNode.fs == NULL )
19201920 {
1921- Ncv32f leftVal = tree[0 ][CUDA_CC_LEFT_VAL];
1922- ncvStat = nodeLeft.create (leftVal);
1921+ Ncv32f leftVal = tree[0 ][CUDA_CC_LEFT_VAL];
1922+ ncvStat = nodeLeft.create (leftVal);
19231923 ncvAssertReturn (ncvStat == NCV_SUCCESS, ncvStat);
19241924 bIsLeftNodeLeaf = true ;
19251925 }
19261926 else
19271927 {
1928- Ncv32u leftNodeOffset = (int )tree[0 ][CUDA_CC_LEFT_NODE];
1929- nodeLeft.create ((Ncv32u)(h_TmpClassifierNotRootNodes.size () + leftNodeOffset - 1 ));
1928+ Ncv32u leftNodeOffset = (int )tree[0 ][CUDA_CC_LEFT_NODE];
1929+ nodeLeft.create ((Ncv32u)(h_TmpClassifierNotRootNodes.size () + leftNodeOffset - 1 ));
19301930 haar.bHasStumpsOnly = false ;
19311931 }
19321932
@@ -1937,15 +1937,15 @@ static NCVStatus loadFromXML(const cv::String &filename,
19371937
19381938 if (rightNode.fs == NULL )
19391939 {
1940- Ncv32f rightVal = tree[0 ][CUDA_CC_RIGHT_VAL];
1941- ncvStat = nodeRight.create (rightVal);
1940+ Ncv32f rightVal = tree[0 ][CUDA_CC_RIGHT_VAL];
1941+ ncvStat = nodeRight.create (rightVal);
19421942 ncvAssertReturn (ncvStat == NCV_SUCCESS, ncvStat);
19431943 bIsRightNodeLeaf = true ;
19441944 }
19451945 else
19461946 {
1947- Ncv32u rightNodeOffset = (int )tree[0 ][CUDA_CC_RIGHT_NODE];
1948- nodeRight.create ((Ncv32u)(h_TmpClassifierNotRootNodes.size () + rightNodeOffset - 1 ));
1947+ Ncv32u rightNodeOffset = (int )tree[0 ][CUDA_CC_RIGHT_NODE];
1948+ nodeRight.create ((Ncv32u)(h_TmpClassifierNotRootNodes.size () + rightNodeOffset - 1 ));
19491949 haar.bHasStumpsOnly = false ;
19501950 }
19511951
@@ -1955,9 +1955,9 @@ static NCVStatus loadFromXML(const cv::String &filename,
19551955 Ncv32u tiltedVal = (int )fnFeature[CUDA_CC_TILTED];
19561956 haar.bNeedsTiltedII = (tiltedVal != 0 );
19571957
1958- cv::FileNodeIterator it2 = fnFeature[CUDA_CC_RECT].begin (), it2_end = fnFeature[CUDA_CC_RECT].end ();
1958+ cv::FileNodeIterator it2 = fnFeature[CUDA_CC_RECT].begin (), it2_end = fnFeature[CUDA_CC_RECT].end ();
19591959
1960- Ncv32u featureId = 0 ;
1960+ Ncv32u featureId = 0 ;
19611961 for (; it2 != it2_end; ++it2) // by feature
19621962 {
19631963 cv::FileNode rect = *it2;
0 commit comments