A Continuous 3-D Medial Shape Model with Branching

Similar documents
Subdivision overview

CS354 Computer Graphics Surface Representation IV. Qixing Huang March 7th 2018

Subdivision Surfaces

Subdivision. Outline. Key Questions. Subdivision Surfaces. Advanced Computer Graphics (Spring 2013) Video: Geri s Game (outside link)

From curves to surfaces. Parametric surfaces and solid modeling. Extrusions. Surfaces of revolution. So far have discussed spline curves in 2D

UNIVERSITY OF CALGARY. Subdivision Surfaces. Advanced Geometric Modeling Faramarz Samavati

Subdivision Surfaces

Subdivision curves and surfaces. Brian Curless CSE 557 Fall 2015

Subdivision Curves and Surfaces

Subdivision Surfaces

u 0+u 2 new boundary vertex

Curve Corner Cutting

Example: Loop Scheme. Example: Loop Scheme. What makes a good scheme? recursive application leads to a smooth surface.

Subdivision Curves and Surfaces: An Introduction

The goal is the definition of points with numbers and primitives with equations or functions. The definition of points with numbers requires a

Subdivision surfaces. University of Texas at Austin CS384G - Computer Graphics Fall 2010 Don Fussell

Approximate Catmull-Clark Patches. Scott Schaefer Charles Loop

CS337 INTRODUCTION TO COMPUTER GRAPHICS. Describing Shapes. Constructing Objects in Computer Graphics. Bin Sheng Representing Shape 9/20/16 1/15

Using Semi-Regular 4 8 Meshes for Subdivision Surfaces

Modified Catmull-Clark Methods for Modelling, Reparameterization and Grid Generation

CS123 INTRODUCTION TO COMPUTER GRAPHICS. Describing Shapes. Constructing Objects in Computer Graphics 1/15

INF3320 Computer Graphics and Discrete Geometry

Generalizing the C 4 Four-directional Box Spline to Surfaces of Arbitrary Topology Luiz Velho Abstract. In this paper we introduce a new scheme that g

Subdivision surfaces for CAD: integration through parameterization and local correction

On Smooth Bicubic Surfaces from Quad Meshes

Near-Optimum Adaptive Tessellation of General Catmull-Clark Subdivision Surfaces

Subdivision Surfaces. Homework 1: Questions on Homework? Last Time? Today. Tensor Product. What s an illegal edge collapse?

Information Coding / Computer Graphics, ISY, LiTH. Splines

Rendering Curves and Surfaces. Ed Angel Professor of Computer Science, Electrical and Computer Engineering, and Media Arts University of New Mexico

Subdivision Surfaces. Homework 1: Questions/Comments?

Interpolation in Discrete Single Figure Medial Objects

Appendix E Calculating Normal Vectors

Parametric curves. Reading. Curves before computers. Mathematical curve representation. CSE 457 Winter Required:

Subdivision Surfaces. Homework 1: Last Time? Today. Bilinear Patch. Tensor Product. Spline Surfaces / Patches

Local Modification of Subdivision Surfaces Based on Curved Mesh

Approximating Catmull-Clark Subdivision Surfaces with Bicubic Patches

Polar Embedded Catmull-Clark Subdivision Surface

Subdivision Depth Computation for Extra-Ordinary Catmull-Clark Subdivision Surface Patches

Modeling. Simulating the Everyday World

Physically-Based Modeling and Animation. University of Missouri at Columbia

Grid Generation and Grid Conversion by Subdivision Schemes

Surfaces for CAGD. FSP Tutorial. FSP-Seminar, Graz, November

2D Spline Curves. CS 4620 Lecture 18

Until now we have worked with flat entities such as lines and flat polygons. Fit well with graphics hardware Mathematically simple

Non-Uniform Recursive Doo-Sabin Surfaces (NURDSes)

Curves and Surfaces. CS475 / 675, Fall Siddhartha Chaudhuri

Subdivision on Arbitrary Meshes: Algorithms and Theory

Computer Graphics Curves and Surfaces. Matthias Teschner

Geometric Modeling in Graphics

G 2 Interpolation for Polar Surfaces

Normals of subdivision surfaces and their control polyhedra

SURFACE FAIRING FOR SHIP HULL DESIGN

Surface Modeling. Polygon Tables. Types: Generating models: Polygon Surfaces. Polygon surfaces Curved surfaces Volumes. Interactive Procedural

Know it. Control points. B Spline surfaces. Implicit surfaces

Introduction to Geometry. Computer Graphics CMU /15-662

Geometry Vocabulary. acute angle-an angle measuring less than 90 degrees

Approximate Geodesics on Smooth Surfaces of Arbitrary Topology

1. Introduction. 2. Parametrization of General CCSSs. 3. One-Piece through Interpolation. 4. One-Piece through Boolean Operations

First of all, we need to know what it means for a parameterize curve to be differentiable. FACT:

FINAL REPORT. Tessellation, Fairing, Shape Design, and Trimming Techniques for Subdivision Surface based Modeling

Parametric curves. Brian Curless CSE 457 Spring 2016

Geometry Processing & Geometric Queries. Computer Graphics CMU /15-662

Curves and Surfaces 2

Computergrafik. Matthias Zwicker Universität Bern Herbst 2016

Surface Quality Assessment of Subdivision Surfaces on Programmable Graphics Hardware

Normals of subdivision surfaces and their control polyhedra

Subdivision curves. University of Texas at Austin CS384G - Computer Graphics

Geometric Representations. Stelian Coros

3D Modeling techniques

Evaluation of Loop Subdivision Surfaces

Interpolatory 3-Subdivision

Multi-level Partition of Unity Implicits

Scientific Visualization Example exam questions with commented answers

Technical Report. Removing polar rendering artifacts in subdivision surfaces. Ursula H. Augsdörfer, Neil A. Dodgson, Malcolm A. Sabin.

Outline. Visualization Discretization Sampling Quantization Representation Continuous Discrete. Noise

2D Spline Curves. CS 4620 Lecture 13

Curves D.A. Forsyth, with slides from John Hart

Lecture 15: Segmentation (Edge Based, Hough Transform)

For each question, indicate whether the statement is true or false by circling T or F, respectively.

Outline. Reconstruction of 3D Meshes from Point Clouds. Motivation. Problem Statement. Applications. Challenges

REPORT DOCUMENTATION PAGE

Efficient GPU Rendering of Subdivision Surfaces. Tim Foley,

Image Morphing. The user is responsible for defining correspondences between features Very popular technique. since Michael Jackson s clips

1. CONVEX POLYGONS. Definition. A shape D in the plane is convex if every line drawn between two points in D is entirely inside D.

Advanced Graphics. Subdivision Surfaces. Alex Benton, University of Cambridge Supported in part by Google UK, Ltd

IMAGE-BASED RENDERING

Joe Warren, Scott Schaefer Rice University

An Efficient Data Structure for Representing Trilateral/Quadrilateral Subdivision Surfaces

Lecture notes: Object modeling

03 - Reconstruction. Acknowledgements: Olga Sorkine-Hornung. CSCI-GA Geometric Modeling - Spring 17 - Daniele Panozzo

ATIP A Tool for 3D Navigation inside a Single Image with Automatic Camera Calibration

Real-Time Shape Editing using Radial Basis Functions

MA 323 Geometric Modelling Course Notes: Day 36 Subdivision Surfaces

The Essentials of CAGD

BS-Patch: Constrained Bezier Parametric Patch

Splines. Connecting the Dots

Design by Subdivision

Subdivision Surfaces. Course Syllabus. Course Syllabus. Modeling. Equivalence of Representations. 3D Object Representations

Smooth Multi-Sided Blending of bi-2 Splines

Advanced Modeling 2. Katja Bühler, Andrej Varchola, Eduard Gröller. March 24, x(t) z(t)

Transcription:

A Continuous 3-D Medial Shape Model with Branching Timothy B. Terriberry Guido Gerig

Outline Introduction The Generic 3-D Medial Axis Review of Subdivision Surfaces Boundary Reconstruction Edge Curves Branch Curves Fin Points Conclusion

Introduction Computing the medial axis is unstable Lots of little branches, different topology for every shape Generating shapes from a fixed medial topology is stable Works great in 2-D In 3-D, have infinitely many singular points infinitely many constraints, but finite number of parameters

The Generic 3-D Medial Axis Most points belong to flat sheets with exactly two spokes (healthy left caudate)

The Generic 3-D Medial Axis (a) edge curve (b) branch curve (c) fin point (d) 6-junction

Catmull-Clark Subdivision Face points added with F-mask Edge points added with E-mask Old vertex positions updated with V-mask

Catmull-Clark Subdivision Subdivide once: quadrilaterals Subdivide twice: at most one extraordinary vertex Most patches are B-splines Evaluate rest with (Stam 1999)

Boundary Reconstruction Defined by a continuous medial axis m and radius function r. Boundary recovered via: B=m r U 2 U = r± 1 r n Here r is the Riemannian gradient: 1 r u r = [ mu mv ] I m rv [ ]

Edge Curves Challenge: Edge boundary condition r = 1 Yushkevich's first solution (23) Implicitly solve for a curve that satisfies it Different curve found for each object Makes statistics on groups of objects hard Yushkevich s second solution (25) Parametrize the model with a potential field ρ and solve a differential equation to recover r. Not enough free parameters for branches

Our Approach Start with a B-spline patch

Our Approach Interpolate in the v direction

Our Approach Convert to an interpolating basis in u

Our Approach Replace the curve on the left with a control curve

Our Approach Finish interpolating in the u direction

Edge Curves Interpolation is given by the B-spline: T 2 3 T 2 3 m, r =[ 1 u u u ] B P B [ 1 v v v ] Change to Catmull-Rom basis C on left: T 2 3 T 2 3 1 [ ] [ ] m, r = 1 u u u C P' B 1 v v v, P' =C BP Now r, v and r v, v are independent of P ', j Hold mv, v, r v, v and mu, v fixed and solve for r u, v

Edge Curves Split r into two components: r v rv = Gm r v = r u G m r v F m G m E m G m F m 2 Solving r = 1 for r u yields: 1 2 2 r u= r v F m± G m r v E m G m F m Gm Note r is always pointing inwards with the + solution v

Edge Curves Replace P ', jwith control curve r v Interpolate remaining columns in v r i v =[ P ' i, P ' i, 1 P ' i, 2 P ' i,3 ] BT [ 1 v v 2 v 3 ], i=1 3 Solve for r v r v = 1 r u, v C 11 r 1 v C 12 r 2 v C 13 r 3 v C 1 Finish the interpolation 2 3 r u, v =[ 1 u u u ] C [ r v r 1 v r 2 v r 3 v ] T

Edge Curves Final Result

Edge Curves Interpolation is asymmetric in u and v Therefore the mesh must have no corners Trivial example: regular grid with corners deleted Extraordinary vertices on the edge are also disallowed All edge vertices will have valence 3, except at fin points

Edge Curves Complete model (healthy left ventricle)

Edge Curves Complete model (healthy left ventricle)

Branch Curves If we can get a succinct expression of the condition to enforce, can use exactly the same method Assume all 3 patches meet on the u= curve (share control points)

Branch Curves The tips of - r and U lie in the same plane in all three patches

Branch Curves Project everything into this plane Need 2 1 = And i i i 1 =

Branch Curves Using right triangles shows r v, i = 1 r 2v Gm cos i (i) u Solving for r produces 1 i i 2 i i 2 r = r v F m cos G m r v E m G m F m Gm i u

Fin Points Edge curve meets branch curve Enforce edge condition on patch () as normal, take θ as fixed (1) Use a control curve on r to set θ (2) and θ so they all sum to π ( v,1) and Use another on m to set mu mu( v,2) to bisect them

Fin Points 3 more constraints required at fin point itself (detailed in paper) But only 3! Can enforce by adjusting control points using the masks: [ r ' r ' ] [ m' m ' ][ 2 r '' r '' 2 r '' ] Adjusts ru()(,) Adjusts mu()(,) Adjusts ruu()(,)

Fin Points Final result

Conclusion Demonstrated a new, continuously defined, generative 3-D medial model First such model to support branches Restricted to a mesh without corners Bad for synthetic objects, good for biological Don t explicitly enforce several additional inequality constraints needed to prevent overfolding, etc. Enforce during model fitting process

Questions?

Extra Slides

Catmull-Clark Subdivision Handle extraordinary vertices via eigendecomposition (Stam 1999) P1=A P 1= A P P n Pn =A Pn 1=A P n 1 n= A P n 1= A A P P

Catmull Clark Subdivision ¾ of domain is now a B-spline P1=A P P P1= A n Pn =A Pn 1=A P n 1 n= A P n 1= A A P P

Catmull-Clark Subdivision No explicit subdivision required Diagonalize A: 1 A=V Λ V n 1 n 1 1 n= A A P = A V Λ V P P 1 V P can be computed once per patch V can be precomputed A

Edge Curves Sympathetic overfolding sometimes appears on the right side C2 continuity does not help Choosing P = 12 P P, P = 118 P 38 P helps slow down r without changing the edge Choosing P =P, P = 32 P 12 P gives infinite slowdown, but ill-defined tangent plane, j, j 1, j 2, j 2, j 1, j 1, j 1, j 1, j 2, j 2, j

Sympathetic Overfolding Using a 4th-order spline lets us add an extra condition: a well-defined tangent plane via reparameterization