[Bf-blender-cvs] [6a9a861bbaf] soc-2016-multiview: the first revision according to D2570
Tianwei Shen
noreply at git.blender.org
Thu Mar 30 08:21:06 CEST 2017
Commit: 6a9a861bbaf82ebd70b132db6657b47ec47a9aee
Author: Tianwei Shen
Date: Thu Mar 30 00:33:56 2017 +0800
Branches: soc-2016-multiview
https://developer.blender.org/rB6a9a861bbaf82ebd70b132db6657b47ec47a9aee
the first revision according to D2570
===================================================================
M intern/libmv/intern/reconstructionN.cc
M intern/libmv/intern/reconstructionN.h
M intern/libmv/intern/tracksN.cc
M intern/libmv/intern/tracksN.h
M intern/libmv/libmv/autotrack/reconstruction.h
M intern/libmv/libmv/autotrack/tracks.cc
M intern/libmv/libmv/autotrack/tracks.h
===================================================================
diff --git a/intern/libmv/intern/reconstructionN.cc b/intern/libmv/intern/reconstructionN.cc
index f3a81af8421..63a8d6fbd7c 100644
--- a/intern/libmv/intern/reconstructionN.cc
+++ b/intern/libmv/intern/reconstructionN.cc
@@ -47,7 +47,6 @@
using mv::Tracks;
using mv::Marker;
using mv::Reconstruction;
-using mv::Correspondences;
using libmv::CameraIntrinsics;
using libmv::ProgressUpdateCallback;
@@ -254,7 +253,7 @@ Marker libmv_projectMarker(const mv::Point& point,
reprojected_marker.track = point.track;
return reprojected_marker;
}
-} // end of anonymous namespace
+} // namespace
void libmv_reconstructionNDestroy(libmv_ReconstructionN* libmv_reconstructionN)
{
@@ -266,7 +265,6 @@ libmv_ReconstructionN** libmv_solveMultiviewReconstruction(
const int clip_num,
const libmv_TracksN **all_libmv_tracks,
const libmv_CameraIntrinsicsOptions *all_libmv_camera_intrinsics_options,
- const libmv_CorrespondencesN *libmv_correspondences,
libmv_MultiviewReconstructionOptions *libmv_reconstruction_options,
multiview_reconstruct_progress_update_cb progress_update_callback,
void* callback_customdata)
diff --git a/intern/libmv/intern/reconstructionN.h b/intern/libmv/intern/reconstructionN.h
index 4e4e330f078..daa7fefa7b1 100644
--- a/intern/libmv/intern/reconstructionN.h
+++ b/intern/libmv/intern/reconstructionN.h
@@ -15,7 +15,7 @@
* along with this program; if not, write to the Free Software Foundation,
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
- * The Original Code is Copyright (C) 2011 Blender Foundation.
+ * The Original Code is Copyright (C) 2017 Blender Foundation.
* All rights reserved.
*
* Contributor(s): Blender Foundation,
@@ -34,7 +34,6 @@ extern "C" {
#endif
typedef struct libmv_ReconstructionN libmv_ReconstructionN;
-typedef struct libmv_CorrespondencesN libmv_CorrespondencesN;
typedef struct libmv_MultiviewReconstructionOptions {
int select_keyframes;
@@ -51,7 +50,6 @@ void libmv_reconstructionNDestroy(libmv_ReconstructionN *libmv_reconstructionN);
libmv_ReconstructionN** libmv_solveMultiviewReconstruction(const int clip_num,
const struct libmv_TracksN **all_libmv_tracks,
const libmv_CameraIntrinsicsOptions *all_libmv_camera_intrinsics_options,
- const libmv_CorrespondencesN *libmv_correspondences,
libmv_MultiviewReconstructionOptions *libmv_reconstruction_options,
multiview_reconstruct_progress_update_cb progress_update_callback,
void *callback_customdata);
diff --git a/intern/libmv/intern/tracksN.cc b/intern/libmv/intern/tracksN.cc
index ecb549cf352..9e1da88ef10 100644
--- a/intern/libmv/intern/tracksN.cc
+++ b/intern/libmv/intern/tracksN.cc
@@ -31,7 +31,6 @@
using mv::Marker;
using mv::Tracks;
-using mv::Correspondences;
void libmv_apiMarkerToMarker(const libmv_Marker& libmv_marker,
Marker *marker) {
@@ -137,18 +136,3 @@ int libmv_tracksMaxTrackN(libmv_TracksN* libmv_tracks) {
int libmv_tracksNumMarkersN(libmv_TracksN* libmv_tracks) {
return ((Tracks*) libmv_tracks)->NumMarkers();
}
-
-/* -------- libmv_CorrespondencesN ------------------- */
-libmv_CorrespondencesN* libmv_correspondencesNewN(void) {
- Correspondences* corrs = LIBMV_OBJECT_NEW(Correspondences);
- return (libmv_CorrespondencesN*) corrs;
-}
-
-void libmv_CorrespondencesDestroyN(libmv_CorrespondencesN* libmv_correspondences) {
- LIBMV_OBJECT_DELETE(libmv_correspondences, Correspondences);
-}
-
-void libmv_AddCorrespondenceN(libmv_CorrespondencesN* libmv_correspondences,
- int clip1, int clip2, int track1, int track2) {
- ((Correspondences*) libmv_correspondences)->AddCorrespondence(clip1, clip2, track1, track2);
-}
diff --git a/intern/libmv/intern/tracksN.h b/intern/libmv/intern/tracksN.h
index 0366da3fc29..0f00220a3ff 100644
--- a/intern/libmv/intern/tracksN.h
+++ b/intern/libmv/intern/tracksN.h
@@ -36,7 +36,6 @@ extern "C" {
#endif
typedef struct libmv_TracksN libmv_TracksN;
-typedef struct libmv_CorrespondencesN libmv_CorrespondencesN;
// Keep order in this enums exactly the same as in mv::Marker.
// Otherwise API wouldn't convert the values properly.
@@ -118,12 +117,6 @@ int libmv_tracksMaxFrameN(libmv_TracksN* libmv_tracks, int clip);
int libmv_tracksMaxTrackN(libmv_TracksN* libmv_tracks);
int libmv_tracksNumMarkersN(libmv_TracksN* libmv_tracks);
-/* -------- libmv_CorrespondencesN ------------------- */
-libmv_CorrespondencesN* libmv_correspondencesNewN(void);
-void libmv_CorrespondencesDestroyN(libmv_CorrespondencesN* libmv_correspondences);
-void libmv_AddCorrespondenceN(libmv_CorrespondencesN* libmv_correspondences,
- int clip1, int clip2, int track1, int track2);
-
#ifdef __cplusplus
}
#endif
diff --git a/intern/libmv/libmv/autotrack/reconstruction.h b/intern/libmv/libmv/autotrack/reconstruction.h
index 880ef386634..20eb3c2a1c4 100644
--- a/intern/libmv/libmv/autotrack/reconstruction.h
+++ b/intern/libmv/libmv/autotrack/reconstruction.h
@@ -39,7 +39,8 @@ class Model;
struct Marker;
class Tracks;
-struct CameraPose {
+class CameraPose {
+public:
CameraPose(): clip(-1), frame(-1) {} // uninitilized CameraPose is (-1, -1)
CameraPose(int clip_, int frame_, int intrinsics_, Mat3 R_, Vec3 t_):
clip(clip_), frame(frame_), intrinsics(intrinsics_), R(R_), t(t_) {}
@@ -51,7 +52,8 @@ struct CameraPose {
Vec3 t;
};
-struct Point {
+class Point {
+public:
Point(int track_ = -1, Vec3 X_ = Vec3(0, 0, 0))
: track(track_), X(X_){}
Point(const Point &p) : track(p.track), X(p.X) {}
diff --git a/intern/libmv/libmv/autotrack/tracks.cc b/intern/libmv/libmv/autotrack/tracks.cc
index b78f0483196..98a503d93c7 100644
--- a/intern/libmv/libmv/autotrack/tracks.cc
+++ b/intern/libmv/libmv/autotrack/tracks.cc
@@ -238,19 +238,4 @@ void CoordinatesForMarkersInFrame(const vector<Marker> &markers,
coordinates->col(i) = coords[i];
}
}
-
-//--------------------- Correspondence data structure ---------------------
-void Correspondences::AddCorrespondence(int clip1, int clip2, int track1, int track2) {
- Correspondence corr(clip1, clip2, track1, track2);
- corrs.push_back(corr);
-}
-
-void Correspondences::AddCorrespondence(const Correspondence &corr) {
- corrs.push_back(corr);
-}
-
-int Correspondences::GetCorrNum() const {
- return corrs.size();
-}
-
} // namespace mv
diff --git a/intern/libmv/libmv/autotrack/tracks.h b/intern/libmv/libmv/autotrack/tracks.h
index 09e5bd982ca..dbb23951606 100644
--- a/intern/libmv/libmv/autotrack/tracks.h
+++ b/intern/libmv/libmv/autotrack/tracks.h
@@ -92,23 +92,6 @@ class Tracks {
void CoordinatesForMarkersInFrame(const vector<Marker> &markers,
int clip, int frame,
libmv::Mat *coordinates);
-
-struct Correspondence {
- Correspondence(int clip1_, int clip2_, int track1_, int track2_):
- clip1(clip1_), clip2(clip2_), track1(track1_), track2(track2_) {}
- int clip1, clip2; /* clip id is indexed by the order of clips when constructing context */
- int track1, track2; /* track id is the per clip id */
-};
-
-class Correspondences {
-public:
- void AddCorrespondence(const Correspondence &corr);
- void AddCorrespondence(int clip1, int clip2, int track1, int track2);
- int GetCorrNum() const;
-private:
- vector<Correspondence> corrs;
-};
-
} // namespace mv
#endif // LIBMV_AUTOTRACK_TRACKS_H_
More information about the Bf-blender-cvs
mailing list