47 #include <visp3/core/vpConvert.h>
50 #if (VISP_HAVE_OPENCV_VERSION >= 0x020101)
57 vpImagePoint vpConvert::keyPointToVpImagePoint(
const cv::KeyPoint &keypoint) {
67 vpImagePoint vpConvert::point2fToVpImagePoint(
const cv::Point2f &point) {
77 vpImagePoint vpConvert::point2dToVpImagePoint(
const cv::Point2d &point) {
86 vpPoint vpConvert::point3fToVpObjectPoint(
const cv::Point3f &point3f) {
100 vpPoint vpConvert::point3fToVpCamPoint(
const cv::Point3f &point3f) {
114 vpPoint vpConvert::point3dToVpObjectPoint(
const cv::Point3d &point3d) {
128 vpPoint vpConvert::point3dToVpCamPoint(
const cv::Point3d &point3d) {
143 cv::Point2f vpConvert::vpImagePointToPoint2f(
const vpImagePoint &point) {
144 return cv::Point2f((
float) point.
get_u(), (float) point.
get_v());
153 cv::Point2d vpConvert::vpImagePointToPoint2d(
const vpImagePoint &point) {
154 return cv::Point2d(point.
get_u(), point.
get_v());
163 cv::Point3f vpConvert::vpCamPointToPoint3f(
const vpPoint &point) {
164 return cv::Point3f((
float) point.
get_X(), (float) point.
get_Y(), (float) point.
get_Z());
173 cv::Point3d vpConvert::vpCamPointToPoint3d(
const vpPoint &point) {
183 cv::Point3f vpConvert::vpObjectPointToPoint3f(
const vpPoint &point) {
184 return cv::Point3f((
float) point.
get_oX(), (float) point.
get_oY(), (float) point.
get_oZ());
193 cv::Point3d vpConvert::vpObjectPointToPoint3d(
const vpPoint &point) {
203 int vpConvert::dMatchToTrainIndex(
const cv::DMatch &match) {
204 return match.trainIdx;
214 to = keyPointToVpImagePoint(from);
223 to = point2fToVpImagePoint(from);
232 to = point2dToVpImagePoint(from);
243 to = point3fToVpCamPoint(from);
245 to = point3fToVpObjectPoint(from);
257 to = point3dToVpCamPoint(from);
259 to = point3dToVpObjectPoint(from);
269 to.resize(from.size());
270 std::transform(from.begin(), from.end(), to.begin(), keyPointToVpImagePoint);
279 to.resize(from.size());
280 std::transform(from.begin(), from.end(), to.begin(), point2fToVpImagePoint);
289 to.resize(from.size());
290 std::transform(from.begin(), from.end(), to.begin(), point2dToVpImagePoint);
300 to.resize(from.size());
302 std::transform(from.begin(), from.end(), to.begin(), point3fToVpCamPoint);
304 std::transform(from.begin(), from.end(), to.begin(), point3fToVpObjectPoint);
315 to.resize(from.size());
317 std::transform(from.begin(), from.end(), to.begin(), point3dToVpCamPoint);
319 std::transform(from.begin(), from.end(), to.begin(), point3dToVpObjectPoint);
332 to.resize(from.size());
333 std::transform(from.begin(), from.end(), to.begin(), dMatchToTrainIndex);
342 to = vpImagePointToPoint2f(from);
351 to = vpImagePointToPoint2d(from);
362 to = vpCamPointToPoint3f(from);
364 to = vpObjectPointToPoint3f(from);
376 to = vpCamPointToPoint3d(from);
378 to = vpObjectPointToPoint3d(from);
388 to.resize(from.size());
389 std::transform(from.begin(), from.end(), to.begin(), vpImagePointToPoint2f);
398 to.resize(from.size());
399 std::transform(from.begin(), from.end(), to.begin(), vpImagePointToPoint2d);
409 to.resize(from.size());
411 std::transform(from.begin(), from.end(), to.begin(), vpCamPointToPoint3f);
413 std::transform(from.begin(), from.end(), to.begin(), vpObjectPointToPoint3f);
424 to.resize(from.size());
426 std::transform(from.begin(), from.end(), to.begin(), vpCamPointToPoint3d);
428 std::transform(from.begin(), from.end(), to.begin(), vpObjectPointToPoint3d);
431 #elif !defined(VISP_BUILD_SHARED_LIBS)
433 void dummy_vpConvert() {};
void set_oZ(const double oZ)
Set the point Z coordinate in the object frame.
double get_oY() const
Get the point Y coordinate in the object frame.
void set_X(const double X)
Set the point X coordinate in the camera frame.
Class that defines what is a point.
static void convertToOpenCV(const vpImagePoint &from, cv::Point2f &to)
void set_oW(const double oW)
Set the point W coordinate in the object frame.
void set_Z(const double Z)
Set the point Z coordinate in the camera frame.
void set_W(const double W)
Set the point W coordinate in the camera frame.
double get_oZ() const
Get the point Z coordinate in the object frame.
void set_oX(const double oX)
Set the point X coordinate in the object frame.
void set_Y(const double Y)
Set the point Y coordinate in the camera frame.
double get_Y() const
Get the point Y coordinate in the camera frame.
double get_Z() const
Get the point Z coordinate in the camera frame.
double get_oX() const
Get the point X coordinate in the object frame.
void set_oY(const double oY)
Set the point Y coordinate in the object frame.
Class that defines a 2D point in an image. This class is useful for image processing and stores only ...
double get_X() const
Get the point X coordinate in the camera frame.
static void convertFromOpenCV(const cv::KeyPoint &from, vpImagePoint &to)