Message ID | 20251014075252.2876485-10-stefan.klug@ideasonboard.com |
---|---|
State | New |
Headers | show |
Series |
|
Related | show |
2025. 10. 14. 9:52 keltezéssel, Stefan Klug írta: > In preparation for the upcoming rework, pass the crop rectangle as > parameter to samplePolynomial(). This patch contains no functional > change. > > Signed-off-by: Stefan Klug <stefan.klug@ideasonboard.com> > --- Reviewed-by: Barnabás Pőcze <barnabas.pocze@ideasonboard.com> > src/ipa/rkisp1/algorithms/lsc.cpp | 22 ++++++++++++---------- > 1 file changed, 12 insertions(+), 10 deletions(-) > > diff --git a/src/ipa/rkisp1/algorithms/lsc.cpp b/src/ipa/rkisp1/algorithms/lsc.cpp > index 2fbc8bd1b242..29cd7efd83ef 100644 > --- a/src/ipa/rkisp1/algorithms/lsc.cpp > +++ b/src/ipa/rkisp1/algorithms/lsc.cpp > @@ -91,7 +91,8 @@ private: > std::vector<double> sizesListToPositions(const std::vector<double> &sizes); > std::vector<uint16_t> samplePolynomial(const LscPolynomial &poly, > const std::vector<double> &xPositions, > - const std::vector<double> &yPositions); > + const std::vector<double> &yPositions, > + const Rectangle &cropRectangle); > > Size sensorSize_; > Rectangle cropRectangle_; > @@ -134,10 +135,10 @@ int LscPolynomialLoader::parseLscData(const YamlObject &yamlSets, > > std::vector<double> xPos(sizesListToPositions(xSizes_)); > std::vector<double> yPos(sizesListToPositions(ySizes_)); > - set.r = samplePolynomial(*pr, xPos, yPos); > - set.gr = samplePolynomial(*pgr, xPos, yPos); > - set.gb = samplePolynomial(*pgb, xPos, yPos); > - set.b = samplePolynomial(*pb, xPos, yPos); > + set.r = samplePolynomial(*pr, xPos, yPos, cropRectangle_); > + set.gr = samplePolynomial(*pgr, xPos, yPos, cropRectangle_); > + set.gb = samplePolynomial(*pgb, xPos, yPos, cropRectangle_); > + set.b = samplePolynomial(*pb, xPos, yPos, cropRectangle_); > } > > if (lscData.empty()) { > @@ -176,13 +177,14 @@ std::vector<double> LscPolynomialLoader::sizesListToPositions(const std::vector< > > std::vector<uint16_t> LscPolynomialLoader::samplePolynomial(const LscPolynomial &poly, > const std::vector<double> &xPositions, > - const std::vector<double> &yPositions) > + const std::vector<double> &yPositions, > + const Rectangle &cropRectangle) > { > double m = poly.getM(); > - double x0 = cropRectangle_.x / m; > - double y0 = cropRectangle_.y / m; > - double w = cropRectangle_.width / m; > - double h = cropRectangle_.height / m; > + double x0 = cropRectangle.x / m; > + double y0 = cropRectangle.y / m; > + double w = cropRectangle.width / m; > + double h = cropRectangle.height / m; > std::vector<uint16_t> samples; > > samples.reserve(xPositions.size() * yPositions.size());
diff --git a/src/ipa/rkisp1/algorithms/lsc.cpp b/src/ipa/rkisp1/algorithms/lsc.cpp index 2fbc8bd1b242..29cd7efd83ef 100644 --- a/src/ipa/rkisp1/algorithms/lsc.cpp +++ b/src/ipa/rkisp1/algorithms/lsc.cpp @@ -91,7 +91,8 @@ private: std::vector<double> sizesListToPositions(const std::vector<double> &sizes); std::vector<uint16_t> samplePolynomial(const LscPolynomial &poly, const std::vector<double> &xPositions, - const std::vector<double> &yPositions); + const std::vector<double> &yPositions, + const Rectangle &cropRectangle); Size sensorSize_; Rectangle cropRectangle_; @@ -134,10 +135,10 @@ int LscPolynomialLoader::parseLscData(const YamlObject &yamlSets, std::vector<double> xPos(sizesListToPositions(xSizes_)); std::vector<double> yPos(sizesListToPositions(ySizes_)); - set.r = samplePolynomial(*pr, xPos, yPos); - set.gr = samplePolynomial(*pgr, xPos, yPos); - set.gb = samplePolynomial(*pgb, xPos, yPos); - set.b = samplePolynomial(*pb, xPos, yPos); + set.r = samplePolynomial(*pr, xPos, yPos, cropRectangle_); + set.gr = samplePolynomial(*pgr, xPos, yPos, cropRectangle_); + set.gb = samplePolynomial(*pgb, xPos, yPos, cropRectangle_); + set.b = samplePolynomial(*pb, xPos, yPos, cropRectangle_); } if (lscData.empty()) { @@ -176,13 +177,14 @@ std::vector<double> LscPolynomialLoader::sizesListToPositions(const std::vector< std::vector<uint16_t> LscPolynomialLoader::samplePolynomial(const LscPolynomial &poly, const std::vector<double> &xPositions, - const std::vector<double> &yPositions) + const std::vector<double> &yPositions, + const Rectangle &cropRectangle) { double m = poly.getM(); - double x0 = cropRectangle_.x / m; - double y0 = cropRectangle_.y / m; - double w = cropRectangle_.width / m; - double h = cropRectangle_.height / m; + double x0 = cropRectangle.x / m; + double y0 = cropRectangle.y / m; + double w = cropRectangle.width / m; + double h = cropRectangle.height / m; std::vector<uint16_t> samples; samples.reserve(xPositions.size() * yPositions.size());
In preparation for the upcoming rework, pass the crop rectangle as parameter to samplePolynomial(). This patch contains no functional change. Signed-off-by: Stefan Klug <stefan.klug@ideasonboard.com> --- src/ipa/rkisp1/algorithms/lsc.cpp | 22 ++++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-)