40 #ifndef vpImageSimulator_h
41 #define vpImageSimulator_h
130 #include <visp3/core/vpCameraParameters.h>
131 #include <visp3/core/vpColVector.h>
132 #include <visp3/core/vpHomogeneousMatrix.h>
133 #include <visp3/core/vpImage.h>
134 #include <visp3/core/vpPoint.h>
135 #include <visp3/core/vpRect.h>
136 #include <visp3/core/vpTriangle.h>
144 typedef enum {
COLORED, GRAY_SCALED } vpColorPlan;
146 typedef enum { SIMPLE, BILINEAR_INTERPOLATION } vpInterpolationType;
152 std::vector<vpPoint> pt;
153 std::vector<vpPoint> ptClipped;
155 vpInterpolationType interp;
163 double *normal_Cam_optim;
167 double visible_result;
174 double frobeniusNorm_u, fronbniusNorm_v;
180 double *vbase_u_optim;
181 double *vbase_v_optim;
185 double *Xinter_optim;
188 std::vector<vpTriangle> listTriangle;
197 bool setBackgroundTexture;
217 #ifdef VISP_HAVE_MODULE_IO
222 #ifdef VISP_HAVE_MODULE_IO
223 void init(
const char *file_image,
const std::vector<vpPoint> &X);
244 std::vector<vpColVector> get3DcornersTextureRectangle();
246 friend VISP_EXPORT std::ostream &operator<<(std::ostream &os,
const vpImageSimulator & );
261 cleanPrevImage = clean;
273 setBackgroundTexture =
true;
283 bool isVisible() {
return visible; }
288 bool getPixel(
const vpImagePoint &iP,
unsigned char &Ipixelplan);
292 bool getPixelDepth(
const vpImagePoint &iP,
double &Zpixelplan);
293 bool getPixelVisibility(
const vpImagePoint &iP,
double &Zpixelplan);
302 void getRoi(
const unsigned int &Iwidth,
const unsigned int &Iheight,
const vpCameraParameters &cam,
303 const std::vector<vpPoint> &point,
vpRect &rect);
Generic class defining intrinsic camera parameters.
Implementation of column vector and the associated operations.
Class to define RGB colors available for display functionalities.
static const vpColor white
Implementation of an homogeneous matrix and operations on such kind of matrices.
Class that defines a 2D point in an image. This class is useful for image processing and stores only ...
Class which enables to project an image in the 3D space and get the view of a virtual camera.
void setBackGroundTexture(const vpImage< unsigned char > &Iback)
void setCleanPreviousImage(const bool &clean, const vpColor &color=vpColor::white)
void setInterpolationType(const vpInterpolationType interplt)
Implementation of a matrix and operations on matrices.
Defines a rectangle in the plane.