Comments (2)
Thanks for the find. This is actually a very old and sloppy part of the code. I think I will rewrite it in the next version.
A much better algorithm would be to get a list of random row indices using Knuth shuffles, then copy those rows into the output.
However, mathematically speaking, the existing implementation does indeed return a uniformly random subset of the rows. It does not, however, permute those rows in a random way--the order of the remaining row indices is strictly increasing.
I never bothered to improve this before, since this function is only used in the RANSAC procedure, which so far hasn't been contributing much to the overall execution time.
from sift3d.
Refactored in version 1.4.5
from sift3d.
Related Issues (20)
- manual linking instructions do not have DCMTK libs HOT 1
- don't assume slice thickness == slice spacing HOT 1
- changing certain parameters invalidates Gaussian pyramid HOT 1
- Usage with videos? HOT 15
- Adjust the coordinates to the base octave HOT 2
- How rotation matrix is computed? HOT 4
- build error on Ubuntu 14.04 HOT 1
- Usage in Visual Studio,Windows with C
- coordinate values is partly different between keypoints file and Descriptor file HOT 2
- SIFT3D can run on win7 64,but can't run on win10 64? HOT 1
- Do you have the code to compile in Python? HOT 2
- document CSV files HOT 4
- about matlab HOT 6
- Accurate keypoint localization HOT 2
- General questions about SIFT3D outputs and usage HOT 2
- Would SIFT3D work in multi modality registration - Heart MRI/XRay? HOT 1
- Installation on Ubuntu 20.04 HOT 3
- Matlab Mex functions HOT 1
- Would like to try with CLI, but...
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from sift3d.