Commit 4530c7ad authored by Vadim Pisarevsky's avatar Vadim Pisarevsky

trying to fix builds

parent 25746371
...@@ -3405,12 +3405,11 @@ and want to compute value of the "virtual" pixel ``Point(-5, 100)`` in a floatin ...@@ -3405,12 +3405,11 @@ and want to compute value of the "virtual" pixel ``Point(-5, 100)`` in a floatin
borderInterpolate(-5, img.cols, BORDER_WRAP)); borderInterpolate(-5, img.cols, BORDER_WRAP));
Normally, the function is not called directly. It is used inside :ocv:class:`FilterEngine` Normally, the function is not called directly. It is used inside filtering functions
and :ocv:func:`copyMakeBorder` to compute tables for quick extrapolation. and also in :ocv:func:`copyMakeBorder`.
.. seealso:: .. seealso::
:ocv:class:`FilterEngine`,
:ocv:func:`copyMakeBorder` :ocv:func:`copyMakeBorder`
...@@ -3443,7 +3442,7 @@ Forms a border around an image. ...@@ -3443,7 +3442,7 @@ Forms a border around an image.
The function copies the source image into the middle of the destination image. The areas to the The function copies the source image into the middle of the destination image. The areas to the
left, to the right, above and below the copied source image will be filled with extrapolated pixels. left, to the right, above and below the copied source image will be filled with extrapolated pixels.
This is not what :ocv:class:`FilterEngine` or filtering functions based on it do (they extrapolate This is not what filtering functions based on it do (they extrapolate
pixels on-fly), but what other more complex functions, including your own, may do to simplify image pixels on-fly), but what other more complex functions, including your own, may do to simplify image
boundary handling. boundary handling.
......
...@@ -46,8 +46,9 @@ ...@@ -46,8 +46,9 @@
#define dprintf(x) #define dprintf(x)
#define print_matrix(x) #define print_matrix(x)
namespace cv{ namespace cv
{
using std::vector; using std::vector;
#ifdef ALEX_DEBUG #ifdef ALEX_DEBUG
......
...@@ -43,6 +43,7 @@ ...@@ -43,6 +43,7 @@
#define __OPENCV_HIGHGUI_H__ #define __OPENCV_HIGHGUI_H__
#include "opencv2/core/core_c.h" #include "opencv2/core/core_c.h"
#include "opencv2/imgproc/imgproc_c.h"
#include "opencv2/imgcodecs/imgcodecs_c.h" #include "opencv2/imgcodecs/imgcodecs_c.h"
#include "opencv2/videoio/videoio_c.h" #include "opencv2/videoio/videoio_c.h"
......
...@@ -48,8 +48,8 @@ enum ...@@ -48,8 +48,8 @@ enum
KERNEL_ASYMMETRICAL = 2, // kernel[i] == -kernel[ksize-i-1] , and the anchor is at the center KERNEL_ASYMMETRICAL = 2, // kernel[i] == -kernel[ksize-i-1] , and the anchor is at the center
KERNEL_SMOOTH = 4, // all the kernel elements are non-negative and summed to 1 KERNEL_SMOOTH = 4, // all the kernel elements are non-negative and summed to 1
KERNEL_INTEGER = 8 // all the kernel coefficients are integer numbers KERNEL_INTEGER = 8 // all the kernel coefficients are integer numbers
}; };
/*! /*!
The Base Class for 1D or Row-wise Filters The Base Class for 1D or Row-wise Filters
......
...@@ -387,7 +387,27 @@ _exit_: ...@@ -387,7 +387,27 @@ _exit_:
return code; return code;
} }
TEST(Imgproc_FindContours, accuracy) { CV_FindContourTest test; test.safe_run(); } TEST(Imgproc_FindContours, accuracy) { CV_FindContourTest test; test.safe_run(); }
TEST(Core_Drawing, _914)
{
const int rows = 256;
const int cols = 256;
Mat img(rows, cols, CV_8UC1, Scalar(255));
line(img, Point(0, 10), Point(255, 10), Scalar(0), 2, 4);
line(img, Point(-5, 20), Point(260, 20), Scalar(0), 2, 4);
line(img, Point(10, 0), Point(10, 255), Scalar(0), 2, 4);
double x0 = 0.0/pow(2.0, -2.0);
double x1 = 255.0/pow(2.0, -2.0);
double y = 30.5/pow(2.0, -2.0);
line(img, Point(int(x0), int(y)), Point(int(x1), int(y)), Scalar(0), 2, 4, 2);
int pixelsDrawn = rows*cols - countNonZero(img);
ASSERT_EQ( (3*rows + cols)*3 - 3*9, pixelsDrawn);
}
/* End of file. */ /* End of file. */
...@@ -196,7 +196,7 @@ The function converts image to CIELAB colorspace and then separately denoise L a ...@@ -196,7 +196,7 @@ The function converts image to CIELAB colorspace and then separately denoise L a
:ocv:func:`fastNlMeansDenoisingColored` :ocv:func:`fastNlMeansDenoisingColored`
denoise_TVL1 denoise_TVL1
--------------------------------- ---------------------------------
...@@ -240,4 +240,3 @@ into play. ...@@ -240,4 +240,3 @@ into play.
.. [ChambolleEtAl] A. Chambolle, V. Caselles, M. Novaga, D. Cremers and T. Pock, An Introduction to Total Variation for Image Analysis, http://hal.archives-ouvertes.fr/docs/00/43/75/81/PDF/preprint.pdf (pdf) .. [ChambolleEtAl] A. Chambolle, V. Caselles, M. Novaga, D. Cremers and T. Pock, An Introduction to Total Variation for Image Analysis, http://hal.archives-ouvertes.fr/docs/00/43/75/81/PDF/preprint.pdf (pdf)
.. [Mordvintsev] Alexander Mordvintsev, ROF and TV-L1 denoising with Primal-Dual algorithm, http://znah.net/rof-and-tv-l1-denoising-with-primal-dual-algorithm.html (blog entry) .. [Mordvintsev] Alexander Mordvintsev, ROF and TV-L1 denoising with Primal-Dual algorithm, http://znah.net/rof-and-tv-l1-denoising-with-primal-dual-algorithm.html (blog entry)
...@@ -92,7 +92,7 @@ CV_EXPORTS_W void fastNlMeansDenoisingColoredMulti( InputArrayOfArrays srcImgs, ...@@ -92,7 +92,7 @@ CV_EXPORTS_W void fastNlMeansDenoisingColoredMulti( InputArrayOfArrays srcImgs,
int imgToDenoiseIndex, int temporalWindowSize, int imgToDenoiseIndex, int temporalWindowSize,
float h = 3, float hColor = 3, float h = 3, float hColor = 3,
int templateWindowSize = 7, int searchWindowSize = 21); int templateWindowSize = 7, int searchWindowSize = 21);
CV_EXPORTS_W void denoise_TVL1(const std::vector<Mat>& observations,Mat& result, double lambda=1.0, int niters=30); CV_EXPORTS_W void denoise_TVL1(const std::vector<Mat>& observations,Mat& result, double lambda=1.0, int niters=30);
enum { LDR_SIZE = 256 }; enum { LDR_SIZE = 256 };
......
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