Commit f49f6d52 authored by berak's avatar berak

photo: avoid resizing a const Mat in decolor()

parent 23fc96e9
...@@ -204,14 +204,19 @@ void Decolor::add_to_vector_poly(vector < vector <double> > &polyGrad, const vec ...@@ -204,14 +204,19 @@ void Decolor::add_to_vector_poly(vector < vector <double> > &polyGrad, const vec
idx1++; idx1++;
} }
void Decolor::weak_order(const Mat &img, vector <double> &alf) const void Decolor::weak_order(const Mat &im, vector <double> &alf) const
{ {
const int h = img.size().height; Mat img;
const int w = img.size().width; const int h = im.size().height;
const int w = im.size().width;
if((h + w) > 800) if((h + w) > 800)
{ {
const double sizefactor = double(800)/(h+w); const double sizefactor = double(800)/(h+w);
resize(img, img, Size(cvRound(h*sizefactor), cvRound(w*sizefactor))); resize(im, img, Size(cvRound(h*sizefactor), cvRound(w*sizefactor)));
}
else
{
img = im;
} }
Mat curIm = Mat(img.size(),CV_32FC1); Mat curIm = Mat(img.size(),CV_32FC1);
...@@ -246,16 +251,20 @@ void Decolor::weak_order(const Mat &img, vector <double> &alf) const ...@@ -246,16 +251,20 @@ void Decolor::weak_order(const Mat &img, vector <double> &alf) const
alf[i] -= tmp1[i] * tmp2[i] * tmp3[i]; alf[i] -= tmp1[i] * tmp2[i] * tmp3[i];
} }
void Decolor::grad_system(const Mat &img, vector < vector < double > > &polyGrad, void Decolor::grad_system(const Mat &im, vector < vector < double > > &polyGrad,
vector < double > &Cg, vector <Vec3i>& comb) const vector < double > &Cg, vector <Vec3i>& comb) const
{ {
int h = img.size().height; Mat img;
int w = img.size().width; int h = im.size().height;
int w = im.size().width;
if((h + w) > 800) if((h + w) > 800)
{ {
const double sizefactor = double(800)/(h+w); const double sizefactor = double(800)/(h+w);
resize(img, img, Size(cvRound(h*sizefactor), cvRound(w*sizefactor))); resize(im, img, Size(cvRound(h*sizefactor), cvRound(w*sizefactor)));
}
else
{
img = im;
} }
h = img.size().height; h = img.size().height;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment