mirror of
https://github.com/opencv/opencv.git
synced 2025-06-13 13:13:26 +08:00
Merge pull request #12169 from berak:photo_decolor
This commit is contained in:
commit
377e51df83
@ -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
|
|||||||
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;
|
||||||
|
Loading…
Reference in New Issue
Block a user