1
0
mirror of https://github.com/opencv/opencv_contrib.git synced 2025-10-18 17:24:28 +08:00

Replace a dummy pointer with the smart in ERStat

This commit is contained in:
Vladislav Sovrasov
2016-11-18 17:17:12 +03:00
parent f3ca1a2f08
commit bedd1f763c
2 changed files with 5 additions and 11 deletions

View File

@@ -82,7 +82,7 @@ public:
Rect rect;
double raw_moments[2]; //!< order 1 raw moments to derive the centroid
double central_moments[3]; //!< order 2 central moments to construct the covariance matrix
std::deque<int> *crossings;//!< horizontal crossings
Ptr<std::deque<int> > crossings;//!< horizontal crossings
float med_crossings; //!< median of the crossings at three different height levels
//! 2nd stage features

View File

@@ -97,7 +97,7 @@ ERStat::ERStat(int init_level, int init_pixel, int init_x, int init_y) : pixel(i
central_moments[0] = 0.0;
central_moments[1] = 0.0;
central_moments[2] = 0.0;
crossings = new deque<int>();
crossings = makePtr<deque<int> >();
crossings->push_back(0);
}
@@ -526,9 +526,7 @@ void ERFilterNM::er_tree_extract( InputArray image )
ERStat *stat = er_stack.at(r);
if (stat->crossings)
{
stat->crossings->clear();
delete(stat->crossings);
stat->crossings = NULL;
stat->crossings.release();
}
deleteERStatTree(stat);
}
@@ -665,9 +663,7 @@ void ERFilterNM::er_merge(ERStat *parent, ERStat *child)
child->med_crossings = (float)m_crossings.at(1);
// free unnecessary mem
child->crossings->clear();
delete(child->crossings);
child->crossings = NULL;
child->crossings.release();
// recover the original grey-level
child->level = child->level*thresholdDelta;
@@ -714,9 +710,7 @@ void ERFilterNM::er_merge(ERStat *parent, ERStat *child)
// free mem
if(child->crossings)
{
child->crossings->clear();
delete(child->crossings);
child->crossings = NULL;
child->crossings.release();
}
delete(child);
}