diff options
author | Sergey Sharybin <sergey.vfx@gmail.com> | 2012-06-11 15:40:54 +0400 |
---|---|---|
committer | Sergey Sharybin <sergey.vfx@gmail.com> | 2012-06-11 15:40:54 +0400 |
commit | 6ab087ff994fab9557d99a4ba58393c7821b228c (patch) | |
tree | 38329b25a3dc70d37ac349241aeb42d6d9a1cbb9 /extern | |
parent | 6674106d30a010c590aec1e7ab0b929155bde2bd (diff) |
Scale search area when doing planar tracking
Helps keeping features tracked when there's large scale happens
without need to manually re-adjust search area.
Currently using factor of pattern's boundbox scale, but probably
could be done in more accurate way?
Diffstat (limited to 'extern')
-rw-r--r-- | extern/libmv/libmv-capi.cpp | 8 | ||||
-rw-r--r-- | extern/libmv/libmv-capi.h | 4 |
2 files changed, 6 insertions, 6 deletions
diff --git a/extern/libmv/libmv-capi.cpp b/extern/libmv/libmv-capi.cpp index ffa065f08fe..8751e1e190b 100644 --- a/extern/libmv/libmv-capi.cpp +++ b/extern/libmv/libmv-capi.cpp @@ -357,8 +357,8 @@ void libmv_regionTrackerDestroy(libmv_RegionTracker *libmv_tracker) /* TrackRegion (new planar tracker) */ int libmv_trackRegion(const struct libmv_trackRegionOptions *options, - const float *image1, const float *image2, - int width, int height, + const float *image1, int image1_width, int image1_height, + const float *image2, int image2_width, int image2_height, const double *x1, const double *y1, struct libmv_trackRegionResult *result, double *x2, double *y2) @@ -400,8 +400,8 @@ int libmv_trackRegion(const struct libmv_trackRegionOptions *options, /* Convert from raw float buffers to libmv's FloatImage. */ libmv::FloatImage old_patch, new_patch; - floatBufToImage(image1, width, height, 1, &old_patch); - floatBufToImage(image2, width, height, 1, &new_patch); + floatBufToImage(image1, image1_width, image1_height, 1, &old_patch); + floatBufToImage(image2, image2_width, image2_height, 1, &new_patch); libmv::TrackRegionResult track_region_result; libmv::TrackRegion(old_patch, new_patch, xx1, yy1, track_region_options, xx2, yy2, &track_region_result); diff --git a/extern/libmv/libmv-capi.h b/extern/libmv/libmv-capi.h index 6f4b5dea384..fe759b06fe4 100644 --- a/extern/libmv/libmv-capi.h +++ b/extern/libmv/libmv-capi.h @@ -65,8 +65,8 @@ struct libmv_trackRegionResult { double correlation; }; int libmv_trackRegion(const struct libmv_trackRegionOptions *options, - const float *image1, const float *image2, - int width, int height, + const float *image1, int image1_width, int image1_height, + const float *image2, int image2_width, int image2_height, const double *x1, const double *y1, struct libmv_trackRegionResult *result, double *x2, double *y2); |