- •Preface
- •Biological Vision Systems
- •Visual Representations from Paintings to Photographs
- •Computer Vision
- •The Limitations of Standard 2D Images
- •3D Imaging, Analysis and Applications
- •Book Objective and Content
- •Acknowledgements
- •Contents
- •Contributors
- •2.1 Introduction
- •Chapter Outline
- •2.2 An Overview of Passive 3D Imaging Systems
- •2.2.1 Multiple View Approaches
- •2.2.2 Single View Approaches
- •2.3 Camera Modeling
- •2.3.1 Homogeneous Coordinates
- •2.3.2 Perspective Projection Camera Model
- •2.3.2.1 Camera Modeling: The Coordinate Transformation
- •2.3.2.2 Camera Modeling: Perspective Projection
- •2.3.2.3 Camera Modeling: Image Sampling
- •2.3.2.4 Camera Modeling: Concatenating the Projective Mappings
- •2.3.3 Radial Distortion
- •2.4 Camera Calibration
- •2.4.1 Estimation of a Scene-to-Image Planar Homography
- •2.4.2 Basic Calibration
- •2.4.3 Refined Calibration
- •2.4.4 Calibration of a Stereo Rig
- •2.5 Two-View Geometry
- •2.5.1 Epipolar Geometry
- •2.5.2 Essential and Fundamental Matrices
- •2.5.3 The Fundamental Matrix for Pure Translation
- •2.5.4 Computation of the Fundamental Matrix
- •2.5.5 Two Views Separated by a Pure Rotation
- •2.5.6 Two Views of a Planar Scene
- •2.6 Rectification
- •2.6.1 Rectification with Calibration Information
- •2.6.2 Rectification Without Calibration Information
- •2.7 Finding Correspondences
- •2.7.1 Correlation-Based Methods
- •2.7.2 Feature-Based Methods
- •2.8 3D Reconstruction
- •2.8.1 Stereo
- •2.8.1.1 Dense Stereo Matching
- •2.8.1.2 Triangulation
- •2.8.2 Structure from Motion
- •2.9 Passive Multiple-View 3D Imaging Systems
- •2.9.1 Stereo Cameras
- •2.9.2 3D Modeling
- •2.9.3 Mobile Robot Localization and Mapping
- •2.10 Passive Versus Active 3D Imaging Systems
- •2.11 Concluding Remarks
- •2.12 Further Reading
- •2.13 Questions
- •2.14 Exercises
- •References
- •3.1 Introduction
- •3.1.1 Historical Context
- •3.1.2 Basic Measurement Principles
- •3.1.3 Active Triangulation-Based Methods
- •3.1.4 Chapter Outline
- •3.2 Spot Scanners
- •3.2.1 Spot Position Detection
- •3.3 Stripe Scanners
- •3.3.1 Camera Model
- •3.3.2 Sheet-of-Light Projector Model
- •3.3.3 Triangulation for Stripe Scanners
- •3.4 Area-Based Structured Light Systems
- •3.4.1 Gray Code Methods
- •3.4.1.1 Decoding of Binary Fringe-Based Codes
- •3.4.1.2 Advantage of the Gray Code
- •3.4.2 Phase Shift Methods
- •3.4.2.1 Removing the Phase Ambiguity
- •3.4.3 Triangulation for a Structured Light System
- •3.5 System Calibration
- •3.6 Measurement Uncertainty
- •3.6.1 Uncertainty Related to the Phase Shift Algorithm
- •3.6.2 Uncertainty Related to Intrinsic Parameters
- •3.6.3 Uncertainty Related to Extrinsic Parameters
- •3.6.4 Uncertainty as a Design Tool
- •3.7 Experimental Characterization of 3D Imaging Systems
- •3.7.1 Low-Level Characterization
- •3.7.2 System-Level Characterization
- •3.7.3 Characterization of Errors Caused by Surface Properties
- •3.7.4 Application-Based Characterization
- •3.8 Selected Advanced Topics
- •3.8.1 Thin Lens Equation
- •3.8.2 Depth of Field
- •3.8.3 Scheimpflug Condition
- •3.8.4 Speckle and Uncertainty
- •3.8.5 Laser Depth of Field
- •3.8.6 Lateral Resolution
- •3.9 Research Challenges
- •3.10 Concluding Remarks
- •3.11 Further Reading
- •3.12 Questions
- •3.13 Exercises
- •References
- •4.1 Introduction
- •Chapter Outline
- •4.2 Representation of 3D Data
- •4.2.1 Raw Data
- •4.2.1.1 Point Cloud
- •4.2.1.2 Structured Point Cloud
- •4.2.1.3 Depth Maps and Range Images
- •4.2.1.4 Needle map
- •4.2.1.5 Polygon Soup
- •4.2.2 Surface Representations
- •4.2.2.1 Triangular Mesh
- •4.2.2.2 Quadrilateral Mesh
- •4.2.2.3 Subdivision Surfaces
- •4.2.2.4 Morphable Model
- •4.2.2.5 Implicit Surface
- •4.2.2.6 Parametric Surface
- •4.2.2.7 Comparison of Surface Representations
- •4.2.3 Solid-Based Representations
- •4.2.3.1 Voxels
- •4.2.3.3 Binary Space Partitioning
- •4.2.3.4 Constructive Solid Geometry
- •4.2.3.5 Boundary Representations
- •4.2.4 Summary of Solid-Based Representations
- •4.3 Polygon Meshes
- •4.3.1 Mesh Storage
- •4.3.2 Mesh Data Structures
- •4.3.2.1 Halfedge Structure
- •4.4 Subdivision Surfaces
- •4.4.1 Doo-Sabin Scheme
- •4.4.2 Catmull-Clark Scheme
- •4.4.3 Loop Scheme
- •4.5 Local Differential Properties
- •4.5.1 Surface Normals
- •4.5.2 Differential Coordinates and the Mesh Laplacian
- •4.6 Compression and Levels of Detail
- •4.6.1 Mesh Simplification
- •4.6.1.1 Edge Collapse
- •4.6.1.2 Quadric Error Metric
- •4.6.2 QEM Simplification Summary
- •4.6.3 Surface Simplification Results
- •4.7 Visualization
- •4.8 Research Challenges
- •4.9 Concluding Remarks
- •4.10 Further Reading
- •4.11 Questions
- •4.12 Exercises
- •References
- •1.1 Introduction
- •Chapter Outline
- •1.2 A Historical Perspective on 3D Imaging
- •1.2.1 Image Formation and Image Capture
- •1.2.2 Binocular Perception of Depth
- •1.2.3 Stereoscopic Displays
- •1.3 The Development of Computer Vision
- •1.3.1 Further Reading in Computer Vision
- •1.4 Acquisition Techniques for 3D Imaging
- •1.4.1 Passive 3D Imaging
- •1.4.2 Active 3D Imaging
- •1.4.3 Passive Stereo Versus Active Stereo Imaging
- •1.5 Twelve Milestones in 3D Imaging and Shape Analysis
- •1.5.1 Active 3D Imaging: An Early Optical Triangulation System
- •1.5.2 Passive 3D Imaging: An Early Stereo System
- •1.5.3 Passive 3D Imaging: The Essential Matrix
- •1.5.4 Model Fitting: The RANSAC Approach to Feature Correspondence Analysis
- •1.5.5 Active 3D Imaging: Advances in Scanning Geometries
- •1.5.6 3D Registration: Rigid Transformation Estimation from 3D Correspondences
- •1.5.7 3D Registration: Iterative Closest Points
- •1.5.9 3D Local Shape Descriptors: Spin Images
- •1.5.10 Passive 3D Imaging: Flexible Camera Calibration
- •1.5.11 3D Shape Matching: Heat Kernel Signatures
- •1.6 Applications of 3D Imaging
- •1.7 Book Outline
- •1.7.1 Part I: 3D Imaging and Shape Representation
- •1.7.2 Part II: 3D Shape Analysis and Processing
- •1.7.3 Part III: 3D Imaging Applications
- •References
- •5.1 Introduction
- •5.1.1 Applications
- •5.1.2 Chapter Outline
- •5.2 Mathematical Background
- •5.2.1 Differential Geometry
- •5.2.2 Curvature of Two-Dimensional Surfaces
- •5.2.3 Discrete Differential Geometry
- •5.2.4 Diffusion Geometry
- •5.2.5 Discrete Diffusion Geometry
- •5.3 Feature Detectors
- •5.3.1 A Taxonomy
- •5.3.2 Harris 3D
- •5.3.3 Mesh DOG
- •5.3.4 Salient Features
- •5.3.5 Heat Kernel Features
- •5.3.6 Topological Features
- •5.3.7 Maximally Stable Components
- •5.3.8 Benchmarks
- •5.4 Feature Descriptors
- •5.4.1 A Taxonomy
- •5.4.2 Curvature-Based Descriptors (HK and SC)
- •5.4.3 Spin Images
- •5.4.4 Shape Context
- •5.4.5 Integral Volume Descriptor
- •5.4.6 Mesh Histogram of Gradients (HOG)
- •5.4.7 Heat Kernel Signature (HKS)
- •5.4.8 Scale-Invariant Heat Kernel Signature (SI-HKS)
- •5.4.9 Color Heat Kernel Signature (CHKS)
- •5.4.10 Volumetric Heat Kernel Signature (VHKS)
- •5.5 Research Challenges
- •5.6 Conclusions
- •5.7 Further Reading
- •5.8 Questions
- •5.9 Exercises
- •References
- •6.1 Introduction
- •Chapter Outline
- •6.2 Registration of Two Views
- •6.2.1 Problem Statement
- •6.2.2 The Iterative Closest Points (ICP) Algorithm
- •6.2.3 ICP Extensions
- •6.2.3.1 Techniques for Pre-alignment
- •Global Approaches
- •Local Approaches
- •6.2.3.2 Techniques for Improving Speed
- •Subsampling
- •Closest Point Computation
- •Distance Formulation
- •6.2.3.3 Techniques for Improving Accuracy
- •Outlier Rejection
- •Additional Information
- •Probabilistic Methods
- •6.3 Advanced Techniques
- •6.3.1 Registration of More than Two Views
- •Reducing Error Accumulation
- •Automating Registration
- •6.3.2 Registration in Cluttered Scenes
- •Point Signatures
- •Matching Methods
- •6.3.3 Deformable Registration
- •Methods Based on General Optimization Techniques
- •Probabilistic Methods
- •6.3.4 Machine Learning Techniques
- •Improving the Matching
- •Object Detection
- •6.4 Quantitative Performance Evaluation
- •6.5 Case Study 1: Pairwise Alignment with Outlier Rejection
- •6.6 Case Study 2: ICP with Levenberg-Marquardt
- •6.6.1 The LM-ICP Method
- •6.6.2 Computing the Derivatives
- •6.6.3 The Case of Quaternions
- •6.6.4 Summary of the LM-ICP Algorithm
- •6.6.5 Results and Discussion
- •6.7 Case Study 3: Deformable ICP with Levenberg-Marquardt
- •6.7.1 Surface Representation
- •6.7.2 Cost Function
- •Data Term: Global Surface Attraction
- •Data Term: Boundary Attraction
- •Penalty Term: Spatial Smoothness
- •Penalty Term: Temporal Smoothness
- •6.7.3 Minimization Procedure
- •6.7.4 Summary of the Algorithm
- •6.7.5 Experiments
- •6.8 Research Challenges
- •6.9 Concluding Remarks
- •6.10 Further Reading
- •6.11 Questions
- •6.12 Exercises
- •References
- •7.1 Introduction
- •7.1.1 Retrieval and Recognition Evaluation
- •7.1.2 Chapter Outline
- •7.2 Literature Review
- •7.3 3D Shape Retrieval Techniques
- •7.3.1 Depth-Buffer Descriptor
- •7.3.1.1 Computing the 2D Projections
- •7.3.1.2 Obtaining the Feature Vector
- •7.3.1.3 Evaluation
- •7.3.1.4 Complexity Analysis
- •7.3.2 Spin Images for Object Recognition
- •7.3.2.1 Matching
- •7.3.2.2 Evaluation
- •7.3.2.3 Complexity Analysis
- •7.3.3 Salient Spectral Geometric Features
- •7.3.3.1 Feature Points Detection
- •7.3.3.2 Local Descriptors
- •7.3.3.3 Shape Matching
- •7.3.3.4 Evaluation
- •7.3.3.5 Complexity Analysis
- •7.3.4 Heat Kernel Signatures
- •7.3.4.1 Evaluation
- •7.3.4.2 Complexity Analysis
- •7.4 Research Challenges
- •7.5 Concluding Remarks
- •7.6 Further Reading
- •7.7 Questions
- •7.8 Exercises
- •References
- •8.1 Introduction
- •Chapter Outline
- •8.2 3D Face Scan Representation and Visualization
- •8.3 3D Face Datasets
- •8.3.1 FRGC v2 3D Face Dataset
- •8.3.2 The Bosphorus Dataset
- •8.4 3D Face Recognition Evaluation
- •8.4.1 Face Verification
- •8.4.2 Face Identification
- •8.5 Processing Stages in 3D Face Recognition
- •8.5.1 Face Detection and Segmentation
- •8.5.2 Removal of Spikes
- •8.5.3 Filling of Holes and Missing Data
- •8.5.4 Removal of Noise
- •8.5.5 Fiducial Point Localization and Pose Correction
- •8.5.6 Spatial Resampling
- •8.5.7 Feature Extraction on Facial Surfaces
- •8.5.8 Classifiers for 3D Face Matching
- •8.6 ICP-Based 3D Face Recognition
- •8.6.1 ICP Outline
- •8.6.2 A Critical Discussion of ICP
- •8.6.3 A Typical ICP-Based 3D Face Recognition Implementation
- •8.6.4 ICP Variants and Other Surface Registration Approaches
- •8.7 PCA-Based 3D Face Recognition
- •8.7.1 PCA System Training
- •8.7.2 PCA Training Using Singular Value Decomposition
- •8.7.3 PCA Testing
- •8.7.4 PCA Performance
- •8.8 LDA-Based 3D Face Recognition
- •8.8.1 Two-Class LDA
- •8.8.2 LDA with More than Two Classes
- •8.8.3 LDA in High Dimensional 3D Face Spaces
- •8.8.4 LDA Performance
- •8.9 Normals and Curvature in 3D Face Recognition
- •8.9.1 Computing Curvature on a 3D Face Scan
- •8.10 Recent Techniques in 3D Face Recognition
- •8.10.1 3D Face Recognition Using Annotated Face Models (AFM)
- •8.10.2 Local Feature-Based 3D Face Recognition
- •8.10.2.1 Keypoint Detection and Local Feature Matching
- •8.10.2.2 Other Local Feature-Based Methods
- •8.10.3 Expression Modeling for Invariant 3D Face Recognition
- •8.10.3.1 Other Expression Modeling Approaches
- •8.11 Research Challenges
- •8.12 Concluding Remarks
- •8.13 Further Reading
- •8.14 Questions
- •8.15 Exercises
- •References
- •9.1 Introduction
- •Chapter Outline
- •9.2 DEM Generation from Stereoscopic Imagery
- •9.2.1 Stereoscopic DEM Generation: Literature Review
- •9.2.2 Accuracy Evaluation of DEMs
- •9.2.3 An Example of DEM Generation from SPOT-5 Imagery
- •9.3 DEM Generation from InSAR
- •9.3.1 Techniques for DEM Generation from InSAR
- •9.3.1.1 Basic Principle of InSAR in Elevation Measurement
- •9.3.1.2 Processing Stages of DEM Generation from InSAR
- •The Branch-Cut Method of Phase Unwrapping
- •The Least Squares (LS) Method of Phase Unwrapping
- •9.3.2 Accuracy Analysis of DEMs Generated from InSAR
- •9.3.3 Examples of DEM Generation from InSAR
- •9.4 DEM Generation from LIDAR
- •9.4.1 LIDAR Data Acquisition
- •9.4.2 Accuracy, Error Types and Countermeasures
- •9.4.3 LIDAR Interpolation
- •9.4.4 LIDAR Filtering
- •9.4.5 DTM from Statistical Properties of the Point Cloud
- •9.5 Research Challenges
- •9.6 Concluding Remarks
- •9.7 Further Reading
- •9.8 Questions
- •9.9 Exercises
- •References
- •10.1 Introduction
- •10.1.1 Allometric Modeling of Biomass
- •10.1.2 Chapter Outline
- •10.2 Aerial Photo Mensuration
- •10.2.1 Principles of Aerial Photogrammetry
- •10.2.1.1 Geometric Basis of Photogrammetric Measurement
- •10.2.1.2 Ground Control and Direct Georeferencing
- •10.2.2 Tree Height Measurement Using Forest Photogrammetry
- •10.2.2.2 Automated Methods in Forest Photogrammetry
- •10.3 Airborne Laser Scanning
- •10.3.1 Principles of Airborne Laser Scanning
- •10.3.1.1 Lidar-Based Measurement of Terrain and Canopy Surfaces
- •10.3.2 Individual Tree-Level Measurement Using Lidar
- •10.3.2.1 Automated Individual Tree Measurement Using Lidar
- •10.3.3 Area-Based Approach to Estimating Biomass with Lidar
- •10.4 Future Developments
- •10.5 Concluding Remarks
- •10.6 Further Reading
- •10.7 Questions
- •References
- •11.1 Introduction
- •Chapter Outline
- •11.2 Volumetric Data Acquisition
- •11.2.1 Computed Tomography
- •11.2.1.1 Characteristics of 3D CT Data
- •11.2.2 Positron Emission Tomography (PET)
- •11.2.2.1 Characteristics of 3D PET Data
- •Relaxation
- •11.2.3.1 Characteristics of the 3D MRI Data
- •Image Quality and Artifacts
- •11.2.4 Summary
- •11.3 Surface Extraction and Volumetric Visualization
- •11.3.1 Surface Extraction
- •Example: Curvatures and Geometric Tools
- •11.3.2 Volume Rendering
- •11.3.3 Summary
- •11.4 Volumetric Image Registration
- •11.4.1 A Hierarchy of Transformations
- •11.4.1.1 Rigid Body Transformation
- •11.4.1.2 Similarity Transformations and Anisotropic Scaling
- •11.4.1.3 Affine Transformations
- •11.4.1.4 Perspective Transformations
- •11.4.1.5 Non-rigid Transformations
- •11.4.2 Points and Features Used for the Registration
- •11.4.2.1 Landmark Features
- •11.4.2.2 Surface-Based Registration
- •11.4.2.3 Intensity-Based Registration
- •11.4.3 Registration Optimization
- •11.4.3.1 Estimation of Registration Errors
- •11.4.4 Summary
- •11.5 Segmentation
- •11.5.1 Semi-automatic Methods
- •11.5.1.1 Thresholding
- •11.5.1.2 Region Growing
- •11.5.1.3 Deformable Models
- •Snakes
- •Balloons
- •11.5.2 Fully Automatic Methods
- •11.5.2.1 Atlas-Based Segmentation
- •11.5.2.2 Statistical Shape Modeling and Analysis
- •11.5.3 Summary
- •11.6 Diffusion Imaging: An Illustration of a Full Pipeline
- •11.6.1 From Scalar Images to Tensors
- •11.6.2 From Tensor Image to Information
- •11.6.3 Summary
- •11.7 Applications
- •11.7.1 Diagnosis and Morphometry
- •11.7.2 Simulation and Training
- •11.7.3 Surgical Planning and Guidance
- •11.7.4 Summary
- •11.8 Concluding Remarks
- •11.9 Research Challenges
- •11.10 Further Reading
- •Data Acquisition
- •Surface Extraction
- •Volume Registration
- •Segmentation
- •Diffusion Imaging
- •Software
- •11.11 Questions
- •11.12 Exercises
- •References
- •Index
5 Feature-Based Methods in 3D Shape Analysis |
195 |
the following weak form identity |
|
X φi , fj = λi φi , fj |
(5.19) |
for every basis function fj . Expressing φi as a linear combination |
φi (x) ≈ |
ui1f1(x) + · · · + uiM fM (x), we arrive at the following system of equations:
M |
M |
|
uj i X fi , fj = |
uj i λi fi , fj . |
(5.20) |
j =1 |
j =1 |
|
As the function αi are fixed, the terms aij = X fi , fj and bij = fi , fj are precomputed forming the generalized eigendecomposition problem AU = ΛBU, where A and B are the N × M matrices with the elements aij and bij , respectively, and U is the M × M matrix with the elements uij . Once U is computed, the corresponding eigenfunctions can be found using the columns of U as the coefficients of linear combinations of the basis functions.
For volumetric data, the Laplace-Beltrami operator is usually discretized on a regular Cartesian grid using finite differences.
5.3 Feature Detectors
The goal of a feature detector is to find stable points or regions on a shape. The main requirements of a feature detector are that the points that it selects are (i) repeatable, that is, in two instances of a shape, ideally the same set of corresponding points is detected, and (ii) informative, that is, descriptors built upon these points contain sufficient information to distinguish the shape from others. The outputs of a feature detector are sometimes called interest points or keypoints.
Since there is no single way to define a feature, the construction of the detector depends very much on the shape representation and the application at hand, or more specifically, the desired invariance properties.
5.3.1 A Taxonomy
In the most trivial case, no feature detection is performed and the feature descriptor is computed at all the points of the shape [19] or at some densely sampled subset thereof. The descriptor in this case is usually termed dense. Dense descriptors bypass the problem of repeatability, at the price of increased computational cost and potentially introducing many unimportant points that clutter the shape representation.
Many detectors assume to be given some scalar-valued or vector-valued function defined on the surface. The function can be either photometric information (texture)
196 |
A.M. Bronstein et al. |
or a geometric quantity such as curvature. With this concept in mind, feature detection on shapes resembles very much that in images and many attempts to import methods from image processing and computer vision have been described in the literature. Several methods for feature detection have been inspired by the difference of Gaussians (DOG), a classical feature detection approach used in computer vision. Zaharescu et al. [87] introduce the mesh DOG approach by first applying Gaussian filtering to scalar functions (e.g. mean or Gauss curvature) defined on the shape. This allows representation of the function in scale space and feature points are prominent maxima of the scale space across scales. Castellani et al. [21] apply Gaussian filtering directly on the mesh geometry and create a scale space describing the displacement of the mesh points in the normal direction.
A different class of feature detection methods tries to find stable components or regions in the analyzed shape. In the computer vision and image analysis community, stable component detection is used in the maximally stable extremal regions (MSER) algorithm [55]. MSER represents intensity level sets as a component tree and attempts to find level sets with the smallest area variation across intensity; the use of area ratio as the stability criterion makes this approach affine-invariant, which is an important property in image analysis, as it approximates viewpoint transformations. Methods similar to MSER have been explored in the works on topological persistence [30]. Persistence-based clustering [22] was used by Skraba et al. [76] to perform shape segmentation. In [27, 49] MSER-like features for meshes and volumes have been studied.
Because many feature detectors operate locally on a function defined on the shape, they are usually not very sensitive to non-rigid deformations. Nevertheless, there exist several geometric quantities based on the intrinsic properties of the manifold and thus theoretically invariant to isometric deformations by construction. Feature detectors based on such quantities are called intrinsic and also isometryinvariant or bending-invariant. Examples of intrinsic geometric quantities are the Gaussian curvature (which has been used in several settings of [87]), and heat kernels [33, 81]. Feature detection methods based on the heat kernel define a function on the shape, measuring the amount of heat remaining at a point x after large time t , given a point source at x at time 0, and detect features as local maxima of this function.
Another type of transformation, of interest in practical applications, is changes in topology, manifested as the presence of holes, missing parts, or changes in connectivity. Feature detectors insensitive to such changes (typically, a simpler case of point-wise connectivity change) are referred to as topology-invariant.
Table 5.1 summarizes the properties of known feature detectors, some of which are detailed in what follows.
5.3.2 Harris 3D
An efficient feature detection method, called Harris operator, first proposed for the use in images [36] was extended to 3D shapes by Glomb [35] and Sipiran and Bustos
5 Feature-Based Methods in 3D Shape Analysis |
|
|
197 |
||
Table 5.1 Comparison of 3D feature detectors |
|
|
|
|
|
|
|
|
|
|
|
Descriptor |
Representation |
Invariance |
|
|
|
|
|
|
|
|
|
|
|
Scale |
Rigid |
Bending |
Topology |
|
|
|
|
|
|
Dense |
Any |
Yes |
Yes |
Yes |
Yes |
Harris 3D [74] |
Any |
No |
Yes |
Approx |
Approx |
Mesh DOG [87] |
Mesh |
No |
Yes |
Approxa |
Approx |
Salient features [21] |
Mesh |
No |
Yes |
Approx |
Approx |
Heat kernel [81] |
Any |
No |
Yes |
Yes |
Approx |
MSER [27, 49] |
Mesh, volume |
Yes |
Yes |
Yes |
Approx |
|
|
|
|
|
|
aUnless truly intrinsic quantities are used
[74]. This method is based on measuring variability of the shape in a local neighborhood of the point, by fitting a function to the neighborhood, and identifying feature points as points where the derivatives of this function are high [12]. Unlike images, 3D data might have arbitrary topology and sampling, which complicates the computation of derivatives.
For each point x on the shape, a neighborhood of radius ρ (typically, a k-ring in mesh representation) is selected. The neighborhood points are brought into a canonical system of coordinates by first subtracting the centroid. Next, a plane is fitted to the translated points by applying PCA and choosing the direction corresponding to the smallest eigenvalues as the direction of the normal. The points are rotated so that the normal is aligned with the z-axis. A quadratic function of the form f (u, v) = aT(u2, uv, v2, u, v, 1) is then fitted to the set of transformed points, yielding a parametric representation of the local extrinsic surface properties. Here, u and v denote the tangent plane coordinates, and a stands for the quadratic patch parameters.
A 2 × 2 symmetric matrix
1 |
|
|
− |
u2+v2 |
f 2 |
(u, v) |
||
|
|
|
|
|
2σ 2 |
u |
|
|
E = √ |
|
|
R2 e |
|
||||
2π σ |
|
|
|
fu(u, v)fv (u, v) |
fu(u, v)fv (u, v) |
(5.21) |
|
f 2 |
du dv |
|
(u, v) |
|
|
v |
|
|
is computed. The 3D Harris operator is defined as the map assigning H(x) = det(E) − 0.04tr2(E) to each point x on the shape. A fixed percentage of points with the highest values of H (x) are selected as the feature points.
In [74], the neighborhood radius ρ (alternatively, the k-ring width k) and the Gaussian variance σ are performed adaptively for each point in order to make the method independent on sampling and triangulation.
5.3.3 Mesh DOG
The Mesh DOG descriptor introduced in Zaharescu et al. [87] assumes the shape in mesh representation and in addition to be given some function f defined on the
198 A.M. Bronstein et al.
mesh vertices. The function can be either photometric information (texture) or a geometric quantity such as curvature.
Given a scalar function f on the shape, its convolution with a radially-symmetric
kernel k(r) is defined as |
|
(f k)(x) = k d(x, y) f (y)dy, |
(5.22) |
where d(x, y) is the geodesic distance between points x and y. Zaharescu et al. [87] propose the following r -ring approximation:
(f k)(x) = |
y Nr (x) k( x − y )f (y) |
, |
(5.23) |
y Nr (x) k( x − y ) |
which assumes a uniformly sampled mesh. Here, Nr (x) denotes the r -ring neighborhood of the point x.
By subsequently convolving a function f with a Gaussian kernel gσ of width σ , a scale space f0 = f , fk = fk−1 gσ is constructed. The difference of Gaussians (DOG) operator at scale k is defined as DOGk = fk − fk−1.
Feature points are selected as the maxima of the DOG scale space across scales, followed by non-maximum suppression, using the one ring neighborhood in the current and the adjacent scales. A fixed percentage of points with the highest values of DOG are selected. To further eliminate unstable responses, only features exhibiting corner-like characteristics are retained. For this purpose, the Hessian operator at
every point x is computed as |
|
|
|
H = |
fuu(x) |
fuv (x) |
(5.24) |
fuv (x) |
fvv (x), |
where fuu, fuv and fvv are the second-order partial derivatives of f at x. Second order derivatives are estimated w.r.t. some local system of coordinates u, v (e.g., by fixing u to be the direction of the gradient, u = X f (x), and v perpendicular to it) by applying the directional derivative twice,
fuv (x) = X X f (x), u , v . |
(5.25) |
The condition number λmax/λmin of H (typically, around 10) is independent of the selection of the local system of coordinates and is used to threshold the features.
5.3.4 Salient Features
In Mesh DOG, the scale space is built by filtering a scalar function on the mesh while keeping the mesh geometry intact. Castellani et al. [21] proposed to create a scale space by filtering the shape itself.