real time and high resolution feature tracking and object
play

Real-Time and High Resolution Feature Tracking and Object - PowerPoint PPT Presentation

Real-Time and High Resolution Feature Tracking and Object Recognition Peter Andreas Entschev - peter@arrayfire.com HPC Engineer Definition: Feature Tracking The act of finding highly distinctive image properties (features) in a given scene


  1. Real-Time and High Resolution Feature Tracking and Object Recognition Peter Andreas Entschev - peter@arrayfire.com HPC Engineer

  2. Definition: Feature Tracking The act of finding highly distinctive image properties (features) in a given scene

  3. Definition: Object Recognition The act of identifying an object based on its geometry Image Source: Visual Geometry Group (2004). University of Oxford, http://www.robots.ox.ac.uk/~vgg/data/data-aff.html

  4. Feature Tracking Phases 1. Feature detection: Finding highly distinctive properties of objects (e.g., corners) ➔ 2. Descriptor extraction: Encoding of a texture patch around each feature ➔ 3. Descriptor matching: Finding similar texture patches in distinct images ➔

  5. Feature Tracking History - 17 Year Review ● SIFT - Scale Invariant Feature Transform (1999, 2004) ● SURF - Speeded Up Robust Features (2006) ● FAST - High-speed Corner Detection (2006, 2010) ● BRIEF - Binary Robust Independent Elementary Features (2010) ● ORB - Oriented FAST and Rotated BRIEF (2011) ● KAZE/Accelerated KAZE Features (2012, 2013)

  6. Computer Vision Applications ● 3D scene reconstruction ● Image registration ● Object recognition ● Content retrieval

  7. Computational Challenges ● Computationally expensive ● Real-time requirement ● Memory access patterns

  8. FAST - High-speed Corner Detection Image source: Rosten, Edward, and Tom Drummond. "Machine learning for high- speed corner detection." Computer Vision–ECCV 2006 . Springer Berlin Heidelberg, 2006. 430-443. This is “FAST” because the number of comparisons is pruned (explained in the next slides)

  9. FAST - High-speed Corner Detection Image source: Rosten, Edward, and Tom Drummond. "Machine learning for high- speed corner detection." Computer Vision–ECCV 2006 . Springer Berlin Heidelberg, 2006. 430-443. p > I p - t p < I p + t - Arc pixels must match one condition

  10. FAST - High-Speed Test 1 p > I p - t p < I p + t - Discard if pixels don’t match condition

  11. FAST - High-Speed Test 2 p > I p - t p < I p + t - Discard if pixels don’t match condition

  12. FAST - High-Speed Test 3 p > I p - t p < I p + t - Discard if pixels don’t match condition

  13. Parallel FAST ● Each block contains TxU threads T - Number of "horizontal" threads ○ U - Number of "vertical" threads ○ ● Block will read from shared memory, (T+r+r)x(U+r+r) pixels, where r is the radius (3 for 16 pixel ring)

  14. Parallel FAST (Cont.) ● General case GPU execution flow: avoid using “if” statements Branch divergence ○

  15. Parallel FAST (Cont.) ● General case GPU execution flow: avoid using “if” statements Branch divergence ○ ● Parallel FAST: use “if” statements Entire block work is discarded after high-speed test ○ Good “if” condition usage! ○

  16. Parallel FAST (Cont.) ● Two binary strings 16 pixel ring = 16 bits ○ Condition 1: p > I p - t ○ Condition 2: p < I p + t ○ ● Look-Up Table Contains maximum length of a segment (2 16 = 65,536 conditions) ○ ● Check the LUT Matching segment length ○

  17. BRIEF - Binary Robust Independent Elementary Features ● Pair-wise intensity comparisons ● Pairs sampled from Gaussian isotropic distribution ● Descriptor is a binary vector ● Fast comparison (Hamming distance)

  18. BRIEF - Binary Robust Independent Elementary Features

  19. FAST + BRIEF - Issues ● Rotation ● Scale

  20. ORB - Oriented FAST and Rotated BRIEF ● Detects FAST features in multiple scales ● Calculates feature orientation using intensity centroid ● Extract oriented BRIEF descriptor

  21. Rotation Robustness Image source: Rube, Ethan, et al. “ORB: an efficient alternative to SIFT and SURF.” In Computer Vision (ICCV), 2011 IEEE International Conference on , pp. 2564-2571. IEEE. 2011

  22. Noise Robustness Image source: Rube, Ethan, et al. “ORB: an efficient alternative to SIFT and SURF.” In Computer Vision (ICCV), 2011 IEEE International Conference on , pp. 2564-2571. IEEE. 2011

  23. Performance Analysis Software: ● Ubuntu Linux 14.10 ● ArrayFire Development Version ● OpenCV 2.4.10 Hardware: ● Intel Xeon E5-2600 ● 32 GB RAM ● NVIDIA K20 GPU

  24. FAST Performance: ArrayFire vs. OpenCV

  25. ORB Performance: ArrayFire vs. OpenCV

  26. SIFT Performance: OpenCV

  27. SURF Performance: OpenCV

  28. Questions? www.arrayfire.com github.com/arrayfire

  29. ORB Timings Image Size (pixels) Compute Time (ms) Frames per second 512x512 8 125 800x600 9 111.1 1920x1080 11 90.9 2560x1600 14 71 4096x2304 27 37 7020x9930 163 6.1 10400x10400 300 3.3 14384x11682 624 1.6

Recommend


More recommend