Free-Hand Stroke Approximation for Intelligent Sketching Systems

Similar documents
Sketch Based Interfaces: Early Processing for Sketch Understanding

Segmentation of Pen Strokes Using Pen Speed

A New Approach to Early Sketch Processing

Ink Segmentation. WeeSan Lee Apr 5, 2005

Revisiting ShortStraw Improving Corner Finding in Sketch-Based Interfaces

What We Can Learn From SILK and DENIM

A Sketch Interpreter System with Shading and Cross Section Lines

Extraction of Line Segments and Circular Arcs From Freehand Strokes Based on Segmental Homogeneity Features

A-SSE.1.1, A-SSE.1.2-

Robust line segmentation for handwritten documents

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

Towards the completion of assignment 1

Use Derivatives to Sketch the Graph of a Polynomial Function.

A Survey of Light Source Detection Methods

Recognizing Multi-Stroke Symbols

AP Calculus. Extreme Values: Graphically. Slide 1 / 163 Slide 2 / 163. Slide 4 / 163. Slide 3 / 163. Slide 5 / 163. Slide 6 / 163

1-1. What you'll Learn About Critical Points/Extreme Values. 1 P a g e

Additive Manufacturing Defect Detection using Neural Networks

Hidden Loop Recovery for Handwriting Recognition

An Efficient Single Chord-based Accumulation Technique (SCA) to Detect More Reliable Corners

Progressive Surface Modeling Based On 3D Motion Sketch

Research in Computational Differential Geomet

Hexahedral Mesh Generation for Volumetric Image Data

Ellipse fitting using orthogonal hyperbolae and Stirling s oval

Online Graphics Recognition: State-of-the-Art

Motion Detection Algorithm

TRANSPARENT OBJECT DETECTION USING REGIONS WITH CONVOLUTIONAL NEURAL NETWORK

Vectorization Using Stochastic Local Search

Sung-Eui Yoon ( 윤성의 )

Reducing Points In a Handwritten Curve (Improvement in a Note-taking Tool)

Staff Line Detection by Skewed Projection

Using temporal seeding to constrain the disparity search range in stereo matching

Lesson 2: Wireframe Creation

Model-based segmentation and recognition from range data

OBJECT RECOGNITION: OBTAINING 2-D RECONSTRUCTIONS FROM COLOR EDGES. G. Bellaire**, K. Talmi*, E. Oezguer *, and A. Koschan*

Parameterized Sketches from Stereo Images

HOUGH TRANSFORM CS 6350 C V

Decomposing and Sketching 3D Objects by Curve Skeleton Processing

Local invariant features

Describe Plane Shapes


COMPUTER AND ROBOT VISION

Digital Image Processing Fundamentals

A Method of Annotation Extraction from Paper Documents Using Alignment Based on Local Arrangements of Feature Points

Introduction. Introduction. Related Research. SIFT method. SIFT method. Distinctive Image Features from Scale-Invariant. Scale.

CATIA V5 Parametric Surface Modeling

Let s start with occluding contours (or interior and exterior silhouettes), and look at image-space algorithms. A very simple technique is to render

OBJECT TRACKING AND RECOGNITION BY EDGE MOTOCOMPENSATION *

Appendix 1: Manual for Fovea Software

Project Report DIAGRAM DRAWING USING SHAPE RECOGNITION

Computational Geometry

Escher s Circle Limit Anneke Bart Saint Louis University Introduction

Outcomes List for Math Multivariable Calculus (9 th edition of text) Spring

Google SketchUp. and SketchUp Pro 7. The book you need to succeed! CD-ROM Included! Kelly L. Murdock. Master SketchUp Pro 7 s tools and features

Shape Modeling and Geometry Processing

Corner Detection. GV12/3072 Image Processing.

Lesson 1: Analyzing Quadratic Functions

Combining Appearance and Topology for Wide

Corner Detection using Difference Chain Code as Curvature

ShortStraw: A Simple and Effective Corner Finder for Polylines

Intermediate Representation in Model Based Recognition Using Straight Line and Ellipsoidal Arc Primitives

Introduction to Computer Graphics

Sketch Input of Engineering Solid Models

Object Classification Using Tripod Operators

BROWN UNIVERSITY Department of Computer Science Master's Project CS-97-M12. "Sketching Curved Three-Dimensional Surfaces" by Bing Chin

3D Modeling: Surfaces

Divided-and-Conquer for Voronoi Diagrams Revisited. Supervisor: Ben Galehouse Presenter: Xiaoqi Cao

Requirements for region detection

Surface Topology ReebGraph

Chapter 3. Sukhwinder Singh

Chapter 11 Arc Extraction and Segmentation

An Introduction to B-Spline Curves

Robust Methods for Geometric Primitive Recovery and Estimation from Range Images

Fitting: The Hough transform

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

Shape Modeling. Differential Geometry Primer Smooth Definitions Discrete Theory in a Nutshell. CS 523: Computer Graphics, Spring 2011

Lecture IV Bézier Curves

Edge and corner detection

Properties of Blending Functions

3D Modeling Parametric Curves & Surfaces

Scientific Visualization Example exam questions with commented answers

Geometric Entities for Pilot3D. Copyright 2001 by New Wave Systems, Inc. All Rights Reserved

MATH CIRCLE ACTIVITY: STARS AND CYCLIC GROUPS

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

EXAMINATIONS 2017 TRIMESTER 2

(Refer Slide Time: 00:02:00)

A Comparative Study of Region Matching Based on Shape Descriptors for Coloring Hand-drawn Animation

Computer Science 474 Spring 2010 Viewing Transformation

Design, Computation and Computer Controlled Devices

Feature Detectors - Canny Edge Detector

A Two-stage Scheme for Dynamic Hand Gesture Recognition

Development of an Automated Fingerprint Verification System

Ground Plane Motion Parameter Estimation For Non Circular Paths

Fitting: The Hough transform

Chapter 4.1 & 4.2 (Part 1) Practice Problems

MIME: A Gesture-Driven Computer Interface

Evaluating Qualitative Models of Shape Representation

In other words, we want to find the domain points that yield the maximum or minimum values (extrema) of the function.

Object Recognition. The Chair Room

Patch-based Object Recognition. Basic Idea

Transcription:

MIT Student Oxygen Workshop, 2001. Free-Hand Stroke Approximation for Intelligent Sketching Systems Tevfik Metin Sezgin MIT Artificial Intelligence Laboratory mtsezgin@ai.mit.edu Abstract. Free-hand sketching is used extensively during the early design phases as an important tool for conveying ideas, guiding the thought process, and serving as documentation [5]. It also provides a natural way of interaction desirable in the context of E21 and intelligent design spaces. Unfortunately there is little computer support forsketching. The first step in building a sketch understanding system is generating more meaningful descriptions of free-hand strokes. We describe a system that takes strokes described by an array of points along with timing data, and generates such concise descriptions in terms of geometric primitives such as circles, polylines, curves and their combinations. 1 System description 1.1 Issues Loss of information due to digitization, noise in the data, imprecision due to freehand sketching and sparseness of sampled data points which may be as low as 4-5 dpi as opposed to scanned drawings that may have 1200-2400 dpi complicate the stroke approximation task. 1.2 Feature point detection Stroke processing starts by looking for vertices. We want to avoid picking points on the curved regions as much as possible 1.Vertexlocalization is a frequent subject in the extensive literature on graphics recognition (e.g., [4] compares 21 methods). However these methods produce piecewise linear approximations. 1 Piecewise linear approximation algorithms don t satisfy this requirement.

644 Tevfik Metin Sezgin Our approach takes advantage of the interactive nature of sketching by combining information from both curvature and speed data for detecting corners while avoiding a piecewise linear approximation. Feature points are indicated by the maxima of curvature 2 data and the minima of the pen speed. Both speed and curvature data are noisy and simply picking the extrema introduces many false positives. Below we describe two methods for selecting the extrema in each case. Average based filtering The basic idea in average based filtering is confining our search for the vertices to only those regions where the curvature/speed data is above/below a threshold computed by the mean of the data. Then we search for the global extremum within each region to find the feature points. Scale space filtering Our experiments show that the above method is satisfactory for settings where noise is relatively small but doesn t deal with extremely noisy data as in Fig. 1 very well, because it doesn t differentiate between vertices due to the fine scale structure of the noise and those due to the high level structure of the stroke. The scale space based method deals with this problem by looking at the number of feature points present at different scales in the scale space. As seen in Fig. 2, the feature count graph has two distinct regions where the feature count drops with different rates. This behavior is typical for freehand strokes. Our task is selecting a scale where most of the noise is filtered out. This is done by modeling the feature count graph by fitting two lines to it: one to the region with the steep drop corresponding to places where the feature points due to noise disappear and the other to the flatter region where real feature points disappear. We take the scale corresponding to the intersection ofthesetwolines as our scale. The results obtained by applying this technique to curvature and speed data are in Fig. 3. Generating hybrid fits The above methods separately may miss feature points, so we combine them to generate hybrid fits. We start the hybrid fit generation by letting the intersection of the generated fits 2 From this point on, by curvature we will refer to the absolute value of the curvature data defined as d/ s where d is the angle between the tangent to the curve at a point and the xaxisands is the distance traveled along the curve.

Free-Hand Stroke Approximation 645 Fig. 1. A very noisy stroke along with the fits generated using curvature and speed data with average based filtering. Both fits have picked many false positives due to noise. 800 120 700 100 600 500 80 400 60 300 40 200 100 20 0 0 50 100 150 200 250 300 350 400 0 0 100 200 300 400 500 600 700 800 Fig. 2. The scale space and feature count graph for the noisy stroke in Fig. 1. Fig.3. Curvature and speed fits generated using the scale space approach. These fits contain 9 vertices for the curvature and 7 vertices for the speed fit compared to 69 and 82 vertices for the fits obtained using average based filtering in Fig. 1.

646 Tevfik Metin Sezgin to be our initial hybrid fit. At each iteration, we form a list of candidate vertices by picking the vertex with the highestcertainty fromeachof the original fits. We augment the most recent hybrid fit by the candidate from this list that reduces the least squares error of the fit by the largest amount. 1.3 Handling curves Our system also supports strokes that may contain curves. First we detect curved regions by comparing the curve length l 1 between the consecutive detected feature points to the Euclidean distance l 2 between the two points. l 2 /l 1 is significantly larger than 1 in curved regions. The curved regions are then approximated by Bézier curves. 2 Evaluation For purposes of evaluation, we built a higher level recognizer that takes the output of our system and interprets strokes in the mechanical engineering domain. Fig. 4 shows a number of free hand sketches and the output of the recognizer 3. Fig. 4. Input-output figures for the rough sketch of the direction reversal mechanism of a walkman. 3 Related work Related work can be found in [2, 1, 6, 3] but these systems either don t support drawing arbitrary shapes or don t do automatic vertex detec- 3 Some domain specific objects such as springs and ground symbols are recognized by the recognizer.

Free-Hand Stroke Approximation 647 tion. Some of them require drawing modes making them unnatural freehand sketching interfaces. 4 Future work Future directions include potential improvements, user studies and integration with other systemsincluding systems that can learn and classify strokes, patterns or objects taking the concise representation of strokes generated by our system as inputs. 5 Acknowledgements Iwouldlike to thank my thesis advisor Prof. Randall Davis for his supervision. References 1. L. Eggli. Sketching with constraints. Master s thesis, University of Utah, 1994. 2. James A. Landay and Brad A. Myers. Sketching interfaces: Toward more human interface design. IEEE Computer, vol. 34, no. 3, March 2001, pp. 56-64., 2001. 3. A. Rattarangsi and R. T. Chin. Scale-based detection of corners of planar curves. IEEE Transactionsos Pattern Analysis and Machine Intelligence, 14(4):430 339, April 1992. 4. R. Rosin. Techniques for assessing polygonal approximations of curves. 7th British Machine Vision Conf., Edinburgh, 1996. 5. David G. Ullman, Stephen Wood, and David Craig. The importance of drawing in the mechanical design process. Computers and Graphics, 14(2):263 274, 1990. 6. R. Zeleznik. Sketch: An interface for sketching 3d scenes. In Proceedings of SIGGRAPH 96, pages 163 170, 1996.