snavely / bundler_sfm

Bundler Structure from Motion Toolkit
1.54k stars 482 forks source link

SIFT alternative #52

Open kevinchiu opened 7 years ago

kevinchiu commented 7 years ago

SIFT is patented and makes using Bundler difficult for real world purposes. Would it be straightforward to replace SIFT with, for example, AKAZE from OpenCV?

snavely commented 7 years ago

It is definitely doable to switch to another feature, although one it looks like AKAZE uses binary descriptors, rather than integer-valued descriptors, which means that for that particular feature would need to use another approximate nearest neighbors library. In general, switching to another feature would require changes to the feature I/O code and possibly other places where for instance 128-dimensional descriptors are assumed.

Depending on the specific problem you are trying to solve, you could also consider other SfM/SLAM packages and see if they have dependencies on different features.

Noah

On Mon, May 22, 2017 at 7:43 PM Kevin Chiu notifications@github.com wrote:

SIFT is patented and makes using Bundler difficult for real world purposes. Would it be straightforward to replace SIFT with, for example, AKAZE from OpenCV?

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/snavely/bundler_sfm/issues/52, or mute the thread https://github.com/notifications/unsubscribe-auth/ABt6qwnMpngSF8BeYdWXs8E8hjhdZGAEks5r8h28gaJpZM4NjA10 .

--


Noah Snavely Associate Professor Email: snavely@cs.cornell.edu Dept. of Computer Science Phone: (607) 255 4280 <(607)%20255-4280> Cornell University URL : www.cs.cornell.edu/~snavely 307 Gates Hall Ithaca, NY 14853

snavely commented 7 years ago

For instance, I think Theia might support AKAZE:

https://github.com/sweeneychris/TheiaSfM

Noah

On Wed, May 24, 2017 at 9:47 AM Noah Snavely noah.snavely@gmail.com wrote:

It is definitely doable to switch to another feature, although one it looks like AKAZE uses binary descriptors, rather than integer-valued descriptors, which means that for that particular feature would need to use another approximate nearest neighbors library. In general, switching to another feature would require changes to the feature I/O code and possibly other places where for instance 128-dimensional descriptors are assumed.

Depending on the specific problem you are trying to solve, you could also consider other SfM/SLAM packages and see if they have dependencies on different features.

Noah

On Mon, May 22, 2017 at 7:43 PM Kevin Chiu notifications@github.com wrote:

SIFT is patented and makes using Bundler difficult for real world purposes. Would it be straightforward to replace SIFT with, for example, AKAZE from OpenCV?

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/snavely/bundler_sfm/issues/52, or mute the thread https://github.com/notifications/unsubscribe-auth/ABt6qwnMpngSF8BeYdWXs8E8hjhdZGAEks5r8h28gaJpZM4NjA10 .

--


Noah Snavely Associate Professor Email: snavely@cs.cornell.edu Dept. of Computer Science Phone: (607) 255 4280 <(607)%20255-4280> Cornell University URL : www.cs.cornell.edu/~snavely 307 Gates Hall Ithaca, NY 14853

--


Noah Snavely Associate Professor Email: snavely@cs.cornell.edu Dept. of Computer Science Phone: (607) 255 4280 Cornell University URL : www.cs.cornell.edu/~snavely 307 Gates Hall Ithaca, NY 14853