Libmv: Update to latest upstream version
[blender.git] / extern / libmv / ChangeLog
1 commit e0ef5b09203e3906a555e6c2010f25cb667da9cd
2 Author: Sergey Sharybin <sergey.vfx@gmail.com>
3 Date:   Thu Dec 31 16:15:59 2015 +0500
4
5     GLog: Solve some compilation warnings
6     
7     Those are actually sent to a pull-request, see
8     
9       https://github.com/google/glog/pull/81
10
11 commit 2072b213d4d3a55d099a063ed1e7331cc773454e
12 Author: Sergey Sharybin <sergey.vfx@gmail.com>
13 Date:   Thu Dec 31 16:13:53 2015 +0500
14
15     Add Martijn Berger to the AUTHORS file
16
17 commit 4dd0770d98d67896e4f936356e281f63d927410e
18 Author: Martijn Berger <martijn.berger@gmail.com>
19 Date:   Thu Dec 31 16:13:08 2015 +0500
20
21     Fix compilation error of Glog and Gflags with MSVC2015
22
23 commit 2712f42be2ad79e7d3a6c9905f6d8d1e3b7133ac
24 Author: Brecht Van Lommel <brechtvanlommel@gmail.com>
25 Date:   Thu Dec 31 14:00:58 2015 +0500
26
27     Fix OS X (with 10.11 SDK) glog build errors due to using deprecated code.
28     
29     Some values are now restored to the ones from before the upgrade today.
30
31 commit d249280fdf7c937fd6ebbc465508843a70aafd4c
32 Author: Sergey Sharybin <sergey.vfx@gmail.com>
33 Date:   Wed Dec 30 16:59:28 2015 +0500
34
35     Tweaks to Glog to support building on all platforms
36     
37     This makes it possible to compile Libmv on all platforms,
38     amount of hacks is lower, which could bring some warnings
39     up, but those are better be addressed via upstream which
40     is now rather active.
41
42 commit 86c57750ddb857643fb5dd2c83b4953da83dd57d
43 Author: Sergey Sharybin <sergey.vfx@gmail.com>
44 Date:   Wed Dec 30 16:15:47 2015 +0500
45
46     Enable explicit Schur complement matrix by default
47     
48     Gives up to 2x speed up of camera solving process in average scene.
49     In the really huge one it might be slower, but that we need to investigate.
50
51 commit d6c52a70b5a0664b7c74bda68f59a895fe8aa235
52 Author: Sergey Sharybin <sergey.vfx@gmail.com>
53 Date:   Wed Dec 30 16:13:03 2015 +0500
54
55     Fix one frame memory leak when tracking last frame
56
57 commit 6e2ac41d25d5923b2a62c96d27d919a36eff9b48
58 Author: Brecht Van Lommel <brechtvanlommel@gmail.com>
59 Date:   Wed Dec 30 16:11:24 2015 +0500
60
61     Motion tracking not workig with Xcode 7 on OS X.
62     
63     Caused by use of the uninitialized shape_ variable in Resize().
64
65 commit fc72ae06fb4ae559ac37d14d1b34d6669505cc86
66 Author: Sergey Sharybin <sergey.vfx@gmail.com>
67 Date:   Wed Dec 30 15:56:40 2015 +0500
68
69     Update GLog to latest upstream
70     
71     Should fix issues building with MSVC2015.
72
73 commit d4b2d15bd3d195074b074331354de96a1b51042f
74 Author: Sergey Sharybin <sergey.vfx@gmail.com>
75 Date:   Wed Dec 30 16:01:10 2015 +0500
76
77     Fix wrong README file reference
78
79 commit 2b4aa0b7720cae9a408284834559bea9960157ee
80 Author: Keir Mierle <mierle@gmail.com>
81 Date:   Mon May 11 02:16:53 2015 -0700
82
83     Make README more informative for GitHub viewers
84     
85     Reviewers: sergey
86     
87     Reviewed By: sergey
88     
89     Differential Revision: https://developer.blender.org/D1295
90
91 commit 514e4491aea655d20be047ed87f002fb7854d5c9
92 Author: Keir Mierle <mierle@gmail.com>
93 Date:   Mon May 11 01:54:09 2015 -0700
94
95     Simplify the modal solver Ceres cost function
96     
97     Fix test by flipping the quaternion.
98     
99     Reviewers: sergey
100     
101     Reviewed By: sergey
102     
103     Projects: #libmv
104     
105     Differential Revision: https://developer.blender.org/D756
106
107 commit e55fafd31f7d53d42af7c6b7df2eebe3c2568da9
108 Author: Sergey Sharybin <sergey.vfx@gmail.com>
109 Date:   Wed Dec 31 19:05:51 2014 +0500
110
111     Synchronize MSVC compilation fixes from Blender
112
113 commit 7d6020d2ec42c6cb2749bc891186b4880d26d40b
114 Author: Sergey Sharybin <sergey.vfx@gmail.com>
115 Date:   Wed Dec 31 15:32:07 2014 +0500
116
117     Update GLog to latest upstream revision 143
118     
119     Mainly to solve compilation error with demangle.cc.
120
121 commit 5dc746700eaf85cb674f0fb73ff3c1b49a7f6315
122 Author: Sergey Sharybin <sergey.vfx@gmail.com>
123 Date:   Fri Dec 12 14:59:55 2014 +0500
124
125     Update GFlags to latest release 2.1.1
126     
127     Main purpose of this (andsome of upcoming) update is to check if the
128     upstream sources are useable without any modifications for us. And if
129     not, then we'll need to consider moving some changes into upstream.
130     
131     This commit contains an one-to-one copy of the upstream GFlags library
132     and also changes namespace usage since it's changed in the upstream.
133
134 commit 6fe6d75f7e90e161b44643b953f058a3829a5247
135 Author: Sergey Sharybin <sergey.vfx@gmail.com>
136 Date:   Sat Nov 1 02:53:36 2014 +0500
137
138     Libmv: Code cleanup, mixed class/struct in declaration/definition
139
140 commit d2a5f7953812d2d09765431b59c6c4ac72faf35b
141 Author: Sergey Sharybin <sergey.vfx@gmail.com>
142 Date:   Thu Oct 30 23:13:53 2014 +0500
143
144     Libmv: Support disabled color channels in tracking settings
145     
146     This was never ported to a new tracking pipeline and now it's done using
147     FrameAccessor::Transform routines. Quite striaghtforward, but i've changed
148     order of grayscale conversion in blender side with call of transform callback.
149     
150     This way it's much easier to perform rescaling in libmv side.
151
152 commit d976e034cdf74b34860e0632d7b29713f47c5756
153 Author: Keir Mierle <mierle@gmail.com>
154 Date:   Sat Aug 23 00:38:01 2014 -0700
155
156     Minor keyframe selection cleanups
157     
158     Reviewers: sergey
159     
160     Reviewed By: sergey
161     
162     Differential Revision: https://developer.blender.org/D757
163
164 commit bc99ca55dadfca89fde0f93764397c2fe028943d
165 Author: Sergey Sharybin <sergey.vfx@gmail.com>
166 Date:   Sat Aug 23 01:55:32 2014 +0600
167
168     implement backward prediction
169     
170     The title actually says it all, just extend current implementation
171     of PredictMarkerPosition() to cases when tracking happens in the reverse
172     order (from the end frame to start).
173     
174     it's still doesn't solve all the ambiguity happening in the function
175     in cases when one tracks the feature and then re-tracks it in order
176     to refine the sliding. This is considered a separate TODO for now and
177     will likely be solved by passing tracking direction to the prediction
178     function.
179     
180     Reviewers: keir
181     
182     Reviewed By: keir
183     
184     Differential Revision: https://developer.blender.org/D663
185
186 commit 5b87682d98df65ade02638bc6482d824cf0dd0b3
187 Author: Keir Mierle <mierle@gmail.com>
188 Date:   Thu Aug 21 22:45:22 2014 -0700
189
190     Make libmv compile on Ubuntu 14.04
191     
192     Reviewers: fsiddi
193     
194     Reviewed By: fsiddi
195     
196     Subscribers: sergey
197     
198     Differential Revision: https://developer.blender.org/D755
199
200 commit 0a81db623c458e0384b4f7060d1bcff8993fb469
201 Author: Sergey Sharybin <sergey.vfx@gmail.com>
202 Date:   Wed Jul 23 00:42:00 2014 +0600
203
204     Fix wrong residual blocks counter
205     
206     This happened in cases when having zero-weighted tracks
207     and could lead to some assert failures on marking parameter
208     block constant.
209
210 commit 2824dbac54cacf74828678be7a5c9fd960ce83e2
211 Author: Sergey Sharybin <sergey.vfx@gmail.com>
212 Date:   Fri Jul 18 12:52:03 2014 +0600
213
214     Fix search area sliding issue
215     
216     The only way to do this is to store search region in floats
217     and round when we need to sample it. Otherwise you'll always
218     have sliding effect caused by rounding the issues, especially
219     when doing incremental offset (thing which happens in the
220     prediction code).
221     
222     Pretty much straightforward change apart from stuff to be kept
223     in mind: offset calculation int should happen relative to the
224     rounded search region. This is because tracker works in the space
225     of the search window image which get's rounded on the frame access,
226     
227     This makes API a bit creepy because frame accessor uses the same
228     Region struct as the search window in Marker and ideally we would
229     need to have either IntRegion or Region<int> in order to make
230     Libmv fully track on what's getting rounded and when.
231     
232     Reviewers: keir
233     
234     Reviewed By: keir
235     
236     Differential Revision: https://developer.blender.org/D616
237
238 commit 04862c479332308be47a0f27361402444ace8880
239 Author: Keir Mierle <mierle@gmail.com>
240 Date:   Fri May 9 23:00:03 2014 +0200
241
242     Start the automatic 2D tracking code
243     
244     This starts the 2D automatic tracking code. It is totally unfinished.
245     
246     Reviewers: sergey
247     
248     Reviewed By: sergey
249     
250     Differential Revision: https://developer.blender.org/D523
251
252 commit be679f67d807a2139c1f7d7e2ca45141940b30d5
253 Author: Keir Mierle <mierle@gmail.com>
254 Date:   Fri May 9 14:36:04 2014 +0200
255
256     Also shift the search window
257     
258     Reviewers: sergey
259     
260     Reviewed By: sergey
261     
262     Differential Revision: https://developer.blender.org/D520
263
264 commit 66b8f5eef2633ebcde32a388fc14c60171011821
265 Author: Keir Mierle <mierle@gmail.com>
266 Date:   Fri May 9 13:06:28 2014 +0200
267
268     Change the search region to absolute frame coordinates
269     
270     Smarter Eigen usage
271     
272     Better error logging
273     
274     Reviewers: sergey
275     
276     Reviewed By: sergey
277     
278     Differential Revision: https://developer.blender.org/D519
279
280 commit a08193319ae409fad8f08887eae1f79f02e91eaa
281 Author: Keir Mierle <mierle@gmail.com>
282 Date:   Fri May 9 12:02:47 2014 +0200
283
284     First cut at predictive tracing
285     
286     This adds a Kalman filter-based approach to predict where a marker
287     will go in the next frame to track. Hopefully this will make the
288     tracker work faster by avoiding lengthy searches. This code
289     compiles, but is otherwise untested, and likely does not work.
290     
291     Fix else branch
292     
293     Add some tests
294     
295     Update patch coordinates as well (and test)
296     
297     Reviewers: sergey
298     
299     Reviewed By: sergey
300     
301     Differential Revision: https://developer.blender.org/D518
302
303 commit 607ffb2f62b56e34a841abbb952d83e19cd1e23c
304 Author: Keir Mierle <mierle@gmail.com>
305 Date:   Thu May 8 16:05:28 2014 +0200
306
307     Add constructor to AutoTrack
308
309 commit c39e20a0c27da3733804c3848454b5d4c4f0e66b
310 Author: Keir Mierle <mierle@gmail.com>
311 Date:   Thu May 8 16:04:20 2014 +0200
312
313     Fix GetMarker compilation issue
314
315 commit 8dd93e431b6e44439c803bfd26ec2669b656177e
316 Author: Keir Mierle <mierle@gmail.com>
317 Date:   Thu May 8 15:50:26 2014 +0200
318
319     Expose GetMarker() in AutoTrack
320     
321     Reviewers: sergey
322     
323     Reviewed By: sergey
324     
325     Differential Revision: https://developer.blender.org/D516
326
327 commit 4405dff60ea08d454b64da1a7c0595d9328cf8a3
328 Author: Keir Mierle <mierle@gmail.com>
329 Date:   Thu May 8 15:38:14 2014 +0200
330
331     Add public SetMarkers to AutoTrack
332     
333     Reviewers: sergey
334     
335     Reviewed By: sergey
336     
337     Differential Revision: https://developer.blender.org/D515
338
339 commit c90837f6db276a3b1f610eaad509155f6a43b24f
340 Author: Keir Mierle <mierle@gmail.com>
341 Date:   Thu May 8 15:17:48 2014 +0200
342
343     Make autotrack skeleton compile
344     
345     Reviewers: sergey
346     
347     Reviewed By: sergey
348     
349     Differential Revision: https://developer.blender.org/D514
350
351 commit be01baa2e82e36f63e548f073157e68d2ff870c0
352 Author: Keir Mierle <mierle@gmail.com>
353 Date:   Wed May 7 18:48:55 2014 +0200
354
355     Add preliminary TrackMarkerToFrame in autotrack
356     
357     Reviewers: sergey
358     
359     Reviewed By: sergey
360     
361     Differential Revision: https://developer.blender.org/D509
362
363 commit 0cab028d591b3d08672ca86eb6c6e4ac1aacf1d0
364 Author: Sergey Sharybin <sergey.vfx@gmail.com>
365 Date:   Wed May 7 17:59:11 2014 +0200
366
367     Remove assert from ArrayND Resize
368     
369     That assert broke initialization of arrays which doesn't
370     own the data since constructor uses Resize to set shape
371     and strides.
372     
373     Strides are still to be fixed, but that's for later.
374
375 commit 64f9c118029a9351e9023e96527c120e1d724d5b
376 Author: Sergey Sharybin <sergey.vfx@gmail.com>
377 Date:   Wed May 7 17:42:21 2014 +0200
378
379     Fix ArrayND freeing the data it doesn't own
380     
381     Can't really guarantee it works fully correct now,
382     but at least this check is needed anyway and compilation
383     works just fine.
384     
385     Reviewers: keir
386     
387     Reviewed By: keir
388     
389     Differential Revision: https://developer.blender.org/D508
390
391 commit 0618f1c8e88dfc738cdde55784da80b889905e7c
392 Author: Keir Mierle <mierle@gmail.com>
393 Date:   Wed May 7 12:03:32 2014 +0200
394
395     Minor changes
396     
397     Reviewers: sergey
398     
399     Reviewed By: sergey
400     
401     Differential Revision: https://developer.blender.org/D505
402
403 commit 5c34335e1bb90c4ed701ee830c718ed4e20dbffa
404 Author: Sergey Sharybin <sergey.vfx@gmail.com>
405 Date:   Wed May 7 11:12:23 2014 +0200
406
407     Fix compilation error in frame accessor
408     
409     - int64 is not a standard type, we've got int64_t defined in
410       std int. We also have an msvc port of this header, so should
411       not be an issue.
412     
413     - Fixed inconsistency in usage of CacheKey and Key, used Key.
414     
415     - Some functions weren't marked as virtual.
416     
417     Additional change: added self to authors.
418     
419     Reviewers: keir
420     
421     Reviewed By: keir
422     
423     Differential Revision: https://developer.blender.org/D504
424
425 commit 06bc207614e262cd688e2c3ed820ade7c77bdb66
426 Author: Keir Mierle <mierle@gmail.com>
427 Date:   Tue May 6 22:30:59 2014 +0200
428
429     Start new Tracks implementation
430     
431     This adds the new Tracks implementation, as well as a
432     trivial test to show it compiles.
433     
434     Reviewers: sergey
435     
436     Reviewed By: sergey
437     
438     Differential Revision: https://developer.blender.org/D502
439
440 commit 25ce061e6da69881460ba7718bb0d660a2380a02
441 Author: Keir Mierle <mierle@gmail.com>
442 Date:   Tue May 6 19:10:51 2014 +0200
443
444     Add Reconstruction class for new API
445     
446     This starts the new Reconstruction class (with support for e.g. planes). This
447     also starts the new namespace "mv" which will eventually have all the symbols
448     we wish to export.
449     
450     Reviewers: sergey
451     
452     Reviewed By: sergey
453     
454     Differential Revision: https://developer.blender.org/D501
455
456 commit 0a6af3e29016048978aea607673340500e050339
457 Author: Keir Mierle <mierle@gmail.com>
458 Date:   Tue May 6 17:52:53 2014 +0200
459
460     Add a new Tracks implementation
461     
462     Reviewers: sergey
463     
464     Reviewed By: sergey
465     
466     Differential Revision: https://developer.blender.org/D500
467
468 commit 887b68d29c2b198f4939f9ab5153881aa2c1806e
469 Author: Keir Mierle <mierle@gmail.com>
470 Date:   Tue May 6 17:01:39 2014 +0200
471
472     Initial commit of unfinished AutoTrack API
473     
474     This starts the creating the new AutoTrack API. The new API will
475     make it possible for libmv to do full autotracking, including
476     predictive tracking and also support multiple motion models (3D
477     planes etc).
478     
479     The first goal (not in this patch) is to convert Blender to use
480     the new API without adding any new functionality.
481     
482     Note: This does not add any of the API to the build system!
483     It likely does not compile.
484     
485     Reviewers: sergey
486     
487     Reviewed By: sergey
488     
489     Differential Revision: https://developer.blender.org/D499
490
491 commit 08cc227d431d257d27f300fbb8e6991e663302da
492 Author: Sergey Sharybin <sergey.vfx@gmail.com>
493 Date:   Tue May 6 13:09:22 2014 +0200
494
495     Fix homography test failure
496     
497     It was caused by assuming that reconstructed homography matrix
498     should look exactly the same as the matrix used to generate a
499     test case.
500     
501     It's not actually valid assumption because different-looking
502     matrices could correspond to the same exact transform.
503     
504     In this change we make it so actual "re-projected" vectors
505     are being checked, not the values in matrix. This makes it
506     more predictable verification.
507     
508     Reviewers: keir
509     
510     Reviewed By: keir
511     
512     Differential Revision: https://developer.blender.org/D488
513
514 commit 0b7d83dc9627447dc7df64d7e3a468aefe9ddc13
515 Author: Sergey Sharybin <sergey.vfx@gmail.com>
516 Date:   Wed Apr 23 19:14:55 2014 +0600
517
518     Fix compilation on OSX after previous commit
519     
520     EXPECT_EQ wasn't defined in the scope.
521
522 commit d14049e00dabf8fdf49056779f0a3718fbb39e8f
523 Author: Sergey Sharybin <sergey.vfx@gmail.com>
524 Date:   Wed Apr 23 15:08:16 2014 +0600
525
526     Move aligned malloc implementation into own file
527     
528     It was rather stupid having it in brute region tracker,
529     now it is in own file in base library (which was also
530     added in this commit, before this it consist of header
531     files only).
532     
533     Reviewers: keir
534     
535     Reviewed By: keir
536     
537     Differential Revision: https://developer.blender.org/D479
538
539 commit 0ddf3851bfcb8de43660b119a25a77a25674200d
540 Author: Sergey Sharybin <sergey.vfx@gmail.com>
541 Date:   Mon Apr 21 14:14:03 2014 +0600
542
543     Optimization of PearsonProductMomentCorrelation
544     
545     Pass the arrays by reference rather than by value,
546     should give some percent of speedup.
547     
548     Also don't pass the dimensions to the function but
549     get them from the images themselves.
550     
551     Hopefully this will give some %% of tracker speedup.
552
553 commit f68fdbe5896a6c5bd8b500caeec61b876c5e44c6
554 Author: Sergey Sharybin <sergey.vfx@gmail.com>
555 Date:   Mon Apr 21 14:10:43 2014 +0600
556
557     Fix wrong assert in ResizeImage()
558     
559     The assert didn't make any sense because ComputeBoundingBox()
560     is intended to return bounding box in the following way:
561     (xmin, xmax, ymin, ymax).
562
563 commit 1d386b6775a71c499e9b8e4a288c0785c4937677
564 Author: Sergey Sharybin <sergey.vfx@gmail.com>
565 Date:   Thu Apr 17 18:42:43 2014 +0600
566
567     Add unit tests for buffer (un)distortion
568     
569     Currently only uses identity camera intrinsics just to
570     see whether lookup grids are properly allocated.
571     
572     Should prevent accidents like that one happened recently
573     with crashing Blender after Libmv re-integration.
574
575 commit e1fe41b6604771ba769a9b15eb2f489fbf7af251
576 Author: Sergey Sharybin <sergey.vfx@gmail.com>
577 Date:   Thu Apr 17 17:52:23 2014 +0600
578
579     Fix offset array not being properly allocated
580     
581     We really do need unit test for buffer (un)distortion,
582     didn't notice this bug for until new Libmv has been
583     integrated into Blender.
584
585 commit ee21415a353396df67ef21e82adaffab2a8d2a0a
586 Author: Sergey Sharybin <sergey.vfx@gmail.com>
587 Date:   Thu Apr 17 16:26:12 2014 +0600
588
589     Support multiple distortion models, including a new division model
590     
591     This commit makes it so CameraIntrinsics is no longer hardcoded
592     to use the traditional polynomial radial distortion model. Currently
593     the distortion code has generic logic which is shared between
594     different distortion models, but had no other models until now.
595     
596     This moves everything specific to the polynomial radial distortion
597     to a subclass PolynomialDistortionCameraIntrinsics(), and adds a
598     new division distortion model suitable for cameras such as the
599     GoPro which have much stronger distortion due to their fisheye lens.
600     
601     This also cleans up the internal API of CameraIntrinsics to make
602     it easier to understand and reduces old C-style code.
603     
604     Reviewers: keir
605     
606     Reviewed By: keir
607     
608     CC: jta
609     
610     Differential Revision: https://developer.blender.org/D335
611
612 commit 313252083f6dfa69a93c287bed81dec616503c1b
613 Author: Sergey Sharybin <sergey.vfx@gmail.com>
614 Date:   Tue Apr 15 18:23:38 2014 +0600
615
616     Fix failure of the image transform linear test
617     
618     Mainly was caused by the flakyness of image rotation in cases
619     when image has even size. The test was expecting the transform
620     code to rotate the image around pixel corner, which isn't a
621     common behavior in image processing applications. Rotation
622     is usually done around the pixel center.
623     
624     So now made it so RotateImage() rotates the image around the
625     pixel center which gives 100% proper result for odd sized images
626     (i.e. center pixel stays untouched).
627     
628     Also made the tests to use odd image sizes which are more
629     predictable by the humans. We can use even sized images in the
630     tests as well but their result wouldn't be so much spectacular.
631     
632     Another issue with the tests was caused by RescaleImageTranslation
633     test which did expect things which are not happening in the
634     function.
635     
636     Reviewers: keir
637     
638     Reviewed By: keir
639     
640     Differential Revision: https://developer.blender.org/D463
641
642 commit 80d6945bf5f996b97cd41df0e422afce5e10e7f9
643 Author: Sergey Sharybin <sergey.vfx@gmail.com>
644 Date:   Mon Apr 14 00:01:32 2014 +0600
645
646     Unit tests for feature detector
647     
648     Currently covers only simplest cases with synthetic images.
649     Also at this point mainly Harris detector is being testes,
650     other detectors behaves a bit unexpected on synthetic images
651     and this is to be investigated further.
652     
653     Tests will be extended further later.
654     
655     Additional change:
656     
657     - Added constructor to Feature structure
658     - Added operator << for feature for easier debug dumps.
659     
660     TODO: Some tests are not giving the result which i was expected
661     to. This is to be investigated further by finding the reference
662     detector implementation. For until then keeping that tests
663     commented out.
664     
665     Reviewers: keir
666     
667     Reviewed By: keir
668     
669     Differential Revision: https://developer.blender.org/D316