Wednesday, July 15, 2009

A nonlinear approach for face sketch synthesis and recognition

Authors:
Qingshan, Liu
Xiaoou, Tang
Hongliang, Jin
Hanqing, Lu
Songde, Ma

Summary:
This method uses LLE to probe sketch based on the pseudo sketch generated from the photos. The idea behind LLE is to compute neighbhor preserving mapping between high dimensiion data to the low dimension feature space (usually based on simple geometric intuition in this case this is complex). In the case of faces, patch based strategy is followed - the photos are divided into overlapping patches. The pseudo sketch and artist sketch is normalized by fixing the position of the eye. KNN is used to calculate the weights of patches - to provide smooth transition between patches k=5 is chosen. KNDA - non linear version of LDA is used to classify the sketch. KNDA provides a better classification rate than LDA and PCA.

Discussion:
Need to read the paper in detail and understand how the patch based transformation works. How does KNN help in the transformation.

Face Sketch Recognition System to Support Security Investigation

Authors:
Setiawan Hadi,
Iping Supriana Suwardi,
Farid Wazdi

Summary:
The three ideas behind component based face feature detection First, some object classes can be described well by a few characteristic object parts and theirgeometrical relation. Second, the patterns of some object parts might vary less under pose changes than the pattern belonging to the whole object. Third, a component based approach might be more robust against partial occlusions than a global approach. The method is performed in two stages. On the first stage, component classifiers independently detect components of the face. In the example shown these components are the eyes, the nose and the mouth. On the second stage, the geometrical configuration classifier performs the final face sketch detection by linearly combining the results of the component classifiers. Then SVMs are used to classify the faces based on the components in the sketch.

Discussion:
The interesting idea here is to divide the face into component features and compare them with features of the sketch which is kind of finding the middle ground between photos and the sketches.

Face sketch synthesis and recognition

Authors:
Xiaoou, Tang
Xiaogang, Wang

Summary:
The algorithm uses eigenfaces on sketch of the faces to find the weight vectors. This algorithm assumes that the transformation from the image of face to its sketch is linear. This is important because the mean representation of the face can converted to mean sketch using the linear transformation matrix. This linear assumption is also reasonable because the high pass filter can give rise to good sketch approximation.
The fiducial points in the sketch may not be the same when compared to the fiducial points on the face since the artist drawing the sketch may have exaggerated some features. This makes it difficult to find the linear transformation for the mapping of features and mapping of gray areas around the fiducial points. In order to remove this exaggeration and map the different fiducial points of the photos, The images are warped to mean image. affine transformation is performed on the face images and sketches to fix the different fiducial points. Eigenface method is then applied on the reduced sketch. To minimize the effect of transformation errors on the classification, the artist drawn sketch is classified using a bayesian classifier using the mahalanobis distance from the artist sketch vector to the eigenfaces of the reduced sketches of photos. The method than uses eigenfaces + bayes works better than PCA alone and PCA + eigenfaces.

Discussion:
This method again needs training data to find the eigenfaces.

Face sketch recognition

Authors:
Xiaoou, Tang
Xiaogang, Wang

Summary:
To compare geometric features in ideal condition, a fiducial grid model is designed. 35 fiducial grid points are identified.
The eigenface method uses Karhunen–Loeve Transform (KLT) transform to transform images to vectors. This gives a highly compressed representation of images but when compared with sketches, the distance between vectors of same image may be larger than the vectors of different images. To overcome this difficulty, the images are first transformed to sketches and KLT is performed on them. Once the face image is converted to a sketch then comparison sketch is done using the eigenface method. The face to sketch comparison works better than theface image comparison with sketch (ordinary eigenface method) and geometry method.

Discussion:
This method needs training data to calculate the average and weight vectors of each image. We cannot afford this in IcanDraw since we have just one sketch drawn by user and the photo.

Face Recognition by Expression-Driven Sketch Graph Matching

Authors:
Zijian, Xu
Jiebo, Luo

Abstract:
We present a novel face recognition method using automatically extracted sketch by a multi-layer grammatical face model. First, the observed face is parsed into a 3-layer (face, parts and sketch) graph. In the sketch layer, the nodes not only capture the local features (strength, orientation and profile of the edge), but also remember the global information inherited from the upper layers (i.e. the facial part they belong to and status of the part). Next, a sketch graph matching is performed between the parsed graph and a pre-built reference graph database, in which each individual has a parsed sketch graph. Similar to the other successful edge-based methods in the literature, the use of sketch increases the robustness of recognition under varying lighting conditions. Furthermore, with high-level semantic understanding of the face, we are able to perform an intelligent recognition process driven by the status of the face, i.e. changes in expressions and poses. As shown in the experiment, our method overcomes the significant drop in accuracy under expression changes suffered by other edge-based methods

Summary:
The face features are divided into 3 layers - face ( whole - high level feature) , part layers ( features like mouth,eyes,...) and sketch layer( features like line segment, blob, ...) .The sketch layer which is the low level features carries the knowledge from the higher level parent ( like position, length, orientation,...). This is helps in differential weighting of the features where the mouth can be given lower weight (to minimize difference in open and closed mouths) while giving greater weights to the eyebrows. This paper also provides a similarity measure to find the similarity between the sketches and photos.

Accurate Dynamic Sketching of Faces from Video

Authors:
Zijian, Xu
Jiebo, Luo

Abstract:
A sketch captures the most informative part of an object, in a much more concise and potentially robust representation (e.g., for face recognition or new capabilities of manipulating faces). We have previously developed a framework for generating face sketches from still images. A more interesting question is can we generate an animated sketch from video? We adopt the same hierarchical compositional graph model originally developed for still images for face representation, where each graph node corresponds to a multimodal model of a certain facial feature (e.g., close mouth, open mouth, and wide-open mouth). To enforce temporal-spatial consistency and improve tracking efficiency, we constrain the transition of a graph node to be only between immediate neighboring modes (e.g. from closed mouth to open mouth but not to wide-open mouth), as well as by its corresponding parts in the neighboring frames. To improve the matching accuracy, we model the local structure of a given mode as a shape-constrained Markov network (SCMN) of image patches. The preliminary results show accurate sketching results from video clips.

Summary:
The method similar to the face to sketch recognition, it uses 3 layers - face --> parts --> sketch layers. AS it moves from one layer to the other, the algorithm identifies the miniscule details. First, moving to the parts layer, the face is fragmented into its parts (eyes, mouth,...) and the orientation, length, position and other features are found. Then moving on to the next layer, the line segments, interesections,... are identified and the information from the parts layer are then embedded on them.

Pen based interface for a notepad - Patent 7032187

Summary:
Selection / Highlighting - proximity of the pointer to the object and orientation of the pen.
Tools / icons - located on the side of sheet - fades away when the pointer is moved away from it - moves to the front when focused on it.
2 types of navigation - page based
dog - ear pop up for prev next page navigation - a folded page like interface is provided on the bottom right corner of the current page. The shadow of the fold (prev page) and the fold is the next page.
multiple page stack - the pages are listed on the right side bottom vertically similar to the alphabets on telephone directory.

Discussion:
The mode switch seems to be nice idea. But there would arise certain conflicting cases where the mode switch was done wrong. How would the interface react to such wrong recognitions?
How intuitive is the mode switch based on the orientation of the pen? How can the user identify this feature? I believe this interface depends on the user's adaptability in this case.


Wednesday, May 6, 2009

EFIT-V -: interactive evolutionary strategy for the construction of photo-realistic facial composites

Authors:
Ben George
Stuart J. Gibson
Matthew I.S. Maylin
Christopher J. Solomon
University of Kent, Canterbury, United Kngdm

Summary:
Method to identify a suspect from a list of pictures and generating composites from the images. The users repeats this process till a satisfactory image composite is generated. The features of the face are first divided into landmark points(X) and gestures(G). PCA is run over each of them to find the eigenvectors for each face and the mean vector for the space. A combined X,G vector is then formed for each image and PCA is run over the data which give Q - eigenvector for the combined data and c - vector of appearance / model parameters. A composite can be generated out of Q and c. Composites are then generated based on the a genetic algorithm called SMM - Select , multiply, mutate. The identified face is first cloned and multiplied by 8. Then each of the 8 faces are mutated and a face is generated. The user then repeats these steps till a satisfied likeness is got.

I'm sorry, Dave: i'm afraid i won't do that: social aspects of human-agent conflict

Authors:
Takayama,Leila
Groom,Victoria
Nass, Clifford

Summary:
People respond to the interacting system with the same rules and hueristics that applies to human. Negative politeness - politeness that would irritate the user in case of a disagreement. It need be negative experience if the system properly negotiates with the user.
Hypothesis: H1. People will change their decisions more often when the robot disagreed with them than when it always agreed with them, even with identical substantive content.
H2. People will feel more similar to (H2a) and more positively toward (H2b) the agreeing robot than the disagreeing one.
H3. A disagreeing voice coming from a separate control box will be more acceptable than a disagreeing voice that came from the robotic body (because of the effectiveness of linguistic distancing in politeness strategies among humans
User Study was then done with 40 users. A scenario was given to each user and were asked to make a choice. The robot would then comment on the choice. The user would then make a choice again. The manipulations done to the study were changing the degree agreement of robot with choices made by the user ( 0 - 60%) and changing the location of the robots voice( from body or separate box). The user's attitude change (likert scale feeback from user) and behavioral change of user ( change in choice) were measured. Users liked the robot when the voice was separated from it in case of disagreement and in case of agreement, the robot which had its own voice. All the hypothesis had a satisfactory results.

Discussion:
A media equation like paper. Can these principles be applied in tutoring applications? In a sketch tutoring application, the disagreements are so common. how to negotiate with users to make them understand the mistakes? How to make such negotiations effective without voice just with text based feedback?

GestureBar: improving the approachability of gesture-based interfaces

Author
Bragdon, Andrew
Zeleznik, Robert
Williamson, Brian

Miller, Timothy

LaViola, Joseph J.Jr.


Summary:
Ease of use of any gesture based system for a novice user. Learnability is an issue for a novice user. The approach here is to integrate the tool bar icons with the corresponding gesture. This allows users to click on the tool bar functions and check the gesture related to it. This application also shows how to draw a gesture and provides a practise area for practise without affecting any user entered data. Four design principles identified - familiarity/ consistency, searchability, expressivity (gesture set to express complex interactions) and low cost.

Thursday, April 9, 2009

Improving the Sketch-Based Interface - Forming Curves from Many Small Strokes

Authors:
Richard Pusch, Faramarz Samavati,
University of Calgary,

Ahmad Nasri,
American University of Beirut,

Brian Wyvill

University of Victoria

Summary:
There is a divide in interaction between user / pen & paper and user / touch interfaces while drawing. One important problem is the ability the correct the stroke in the paper by over drawing a long stroke with small strokes to make local corrections.

This paper proposes a new method to create a smooth stroke out of many small strokes.
First important step is to find the global ordering of the stroke. This is done by running a PCA over the starting points of the stroke. This process is made easier by dividing the strokes in to boxes and connecting them. The boxes obtained are sub - divided until they become simple. Condition for simple box - closeness of the strokes inside the box to the straight line (measured by ratio of eigenvalues) / box containing single line.

metric for dividing a box - a largely horizontal box will be divided into 2 horizontal halves rather than vertical divisions. A straight stroke / stroke with more points should be taken as dominant strokes in deciding the division of the box. In order to find the method of division, a metric is formed using weighted average of the angle between the x-axis and each stroke's primary eigenvector. This is weighted using the ratio of the eigen values. This metric is used to find which of the 3 following division will be made - vertical, horizontal or both.

Once the box is chosen, then the ordering of strokes is performed by projecting the strokes on the dominant eigen vector. for overlapping strokes, the overlap is substituted by a average curve.

Next step, the boxes are connected by finding the last point of the local ordering and finding the stroke which it belongs to and continue on that stroke.After this step, a b-spline curve is fit to the strokes.

Discussion:
It would be interesting to implement something like a fudge tool. Move over every point in base line, any line that falls with in a particular radius should be merged with the base stroke.

Wednesday, April 8, 2009

Sketch- and Constraint-based Design of B-spline Surfaces

Authors:
Paul Michalik, Dae Hyun Kim, Beat D. Bruderlin
Computer Graphics Group, Dept. of CS
Technical University of Ilmenau, Germany

Summary:
To join 2 splines- first the portion of the base curve relevant for merging is identified. Then merged with correction curve. A part to the left and right of base stroke is identified as the transition part, to give a gradual merging to the corrected curve.

Modes provided for 3D image editing:
1. Sweeping mode - mode to draw the initial set of curves
2. Skinning mode - to add curves to the already identified surfaces.
3. Sculpting mode
The sketch space. surface is showed using blue hatch lines. In the sculpting mode, each line drawn by the user leads to a constraint graph. each node is a constraint given by the user and the error calculated for the surface on the constraint. each node has weight associated with it which helps solve the over-constrained graphs.

Discussion:
the summary is not complete.. The lot of these mathematical modeling techniques expect the user to understand the maths behind it which might not be possible. This can affect the interaction between the user and the system considerably. A system that defines the method of user drawing constraints the user ability. "A good idea is to start with relatively simple surface, and let the system automatically introduce new DOFs at appropriate locations, if errors at the constraints exceed defined limits."

Wednesday, March 25, 2009

The Draw-a-Secret (DAS) Scheme

Authors:
Ian Jermyn, New York University
Alain Mayer, Fabian Monrose, Michael K. Reiter, Bell Labs, Lucent Technologies
Aviel D. Rubin, AT&T Labs--Research

Summary:
This article proposes a different scheme for user authentication. The scheme that allows user to draw a password rather typing in a password. Prior studies show 50% reduction in retention power of words and humans possess an remarkable ability for recalling pictures( lines diagrams / objects).

This scheme uses a grid of squares and the sequence in which the user crosses the grid is used as the password. The advantage of this approach is that unlike text passwords where there is a specific scheme followed in setting the password( there will not be any specific pattern followed by the user. The number of combinations of 12 dots is way to high when compared to textual passwords of length 8.
What constitutes a memorable password? Any memorable text password is set based on the semantic content of the password. Such semantic content is difficult to identify from the DAS.

Discussion:
Interesting idea. This scheme avoids recognition by using grids of squares. This removes errors of recognition.
It would interesting to know if any 2 users have chosen to set the password. The frequency of users getting the same password. My guess is though there are a lot of possibilities of connecting dots, users would choose a pattern that is easy to remember. This could by some alphabets, greek letters, numbers, line diagrams,.. which leaves us with lesser number of variations than originally stated.

Tuesday, March 17, 2009

Kinematic Templates: End-User Tools for Content-Relative Cursor Manipulations

Author:

Richard Fung, Edward Lank, Michael Terry,

David R. Cheriton School of Computer Science, University of Waterloo

Celine Latulipe,

Department of Software and Information Systems, University of North Carolina at Charlotte

Summary:

This paper discusses about kinematic templates, a cursor manipulation method that help users draw strokes. Initial analysis on 2 artist drawings showed that the artists use 2 types of strokes fine, controlled motor movements and coarse movements.

Drawing a sun – A conduroy template is used to draw straight, parallel line and sandpaper template to keep stroke within predefined circular region. 'dimple chad' template to guide lines from one point to the other. The strength of the manipulation depends on the templates chosen – active / passive templates. Passive templates vary control ratio and active templates represent functions that actively apply forces for changing the pointing devices independent of the cursor movement.


End-user interface:

Authoring,editing and attenuating templates:

involves creating an instance of template. This template gets added to the 'list of instantiated templates'. User can switch it ON/OFF according to the needs. The template can be moved by non-dominant hand.

Visual feedback: The template provides visual cues on what the changes would be when the cursor is hovered over the template.

Actively working against templates:


Discussion:

Need to read it once more. I like to know how comfortable are the user when their cursor position changes according to some function that they do not understand. Does the current pointer change according to template / does it change the set of points previous to the stroke?


Saturday, March 14, 2009

Issues in User Authentication

Authors:
Sonia Chiasson, Robert Biddle, Carleton University
Ottawa, Ontario, CANADA

Summary:

This paper describes some alternate methods for text based password.

Password Manager: User has to enter a single master password to get access to all the other passwords. The user study of 26 people showed their inaccurate mental models of the password manager and the password itself which caused serious errors.

Mental models: The user interface should convey enough information to be able to predict and understand.

Persuasive technology: The password technology must also be persuasive. Most of the times, the problem comes from the unmotivated user.

Identity theft: Other major problem is identity theft (e.g. phishing). Using the identity of the user for fraudulent purposes.

Discussion:

This paper gives an overview of the certain important problems with user authentication.

Scribble-a-Secret: Similarity-Based Password Authentication Using Sketches

Authors:
Mizuki Oka, Kazuhiko Kato, University of Tsukuba
Yingqing Xu, Lin Liang, Fang Wen, Microsoft Research Asia


Summary:
A graphical password scheme which allows user to sketch a password( sequence of strokes does not matter).
Edge Orientation Pattern feature: This feature is known for its robustness in recognition. It accommodates change in direction and spatial orientation. The image captured from user input is characterized by R orientations and then reduced to N orientations. Larger R results in less robustness. So it is reduced to N which is trade off between variation capturing and robustness.

Template creation: The templates are matched to user data using correlation factor. Given a set of edge orientation pattern, the correlation factor with the template is calculated.
The evaluation was done using 87 users. The effectiveness of edge orientation and blurring were studied. The false +ve and -ve rates were studied.

Disccusion:
The scheme looks similar to the Brendon's idea of searching photos with Annotation. Why not show the user an image he knows and ask him to draw a sketch . Can this be used as the password?
About this idea, there are a lot of things that needs to be measured. How many passwords can a user remember at a time? Average(time) retaining power of the user, time to set up a password, variations in password set by single user,...

Saturday, March 7, 2009

Fluid Inking: Augmenting the Medium of Free-Form Inking with Gestures

Authors: Robert Zeleznik,Timothy Miller from CS Dept, Brown University.

Summary:
Three areas that this paper concentrates on - Pen based menu interaction, gesturing while inking and gestures and widgets.

Pen based menu interaction: The press and hold interaction is used to invoke menus. The user should hold till a timeout (500ms). This may be reduced when pressure exceeds a threshold.Gestural shortcuts are similar to CTRL / ALT keys. A flick or a terminal punctuation(pause) is used for triggering shortcuts. The menus can be copies / torn off as buttons to facilitate repetitive actions(Tear - off shortcuts). Gesture sequence and context is used to differentiate similar tokens.
Self contained gestures: Examples are paste(L), select and delete gestures.
Mnemonic punctuates gestures - 'C' gesture can be confused with 'Cut' / 'Copy' functionality, so a longer form both these commands are provided. 'C' and 'X' are shorter versions and 'Copy' / 'Cut' mnemonics are made available.
Mimetic punctuated gestures - mimetic action is marking menus of the flowMenu, just that the menu does not appear on the screen. Example: User draws a stroke hook on the NE direction of the lasso( selecting stroke gesture), since the cut menu appears in the NE direction of the flowMenu. The menu doesnot appear on the screen but the position of the stroke hook corresponds to the 'Cut' menu in the flow Menu list.

Feedback: 2 mechanisms of feedback
* Verbose Feedback - The gesture strokes are different in color and there are text prompts on the screen on the possible set of gestures that can follow.
* Subdued feedback - Different color patterns are followed for non - gesture strokes, incomplete gestures and completed gestures.

Widgets - Widget is provided at tap location for scaling and dragging. At time, this causes problems, when users accidentally pass through the widget causing inadvertent drags / when users miss widget target.

Discussion:
this paper has listed almost all the possible methods of interacting in the pen based input scenario.I need to go through this once more.

A mark-based interaction paradigm for free-hand drawing

Author:Thomas Baudel

Summary:
This paper gives a different view of editing splines. This paper claims this method of editing splines is more closer to our interaction model than the editing splines with control points and tangents.
This method is very suitable for the graphical designers (closer to their conceptual model). Sketch recognition is used to provide complex modifications and re parametrization.
The method can decomposed into 2 operations:
Given a first F and second m,
1. find the starting point S and end point E that would match best with m. These points are found by finding the visually closest points on F from m. Equal length matching is done and a list of all possible candidate curves are maintained for the user to choose. This search can be further optimized. When the curves are discretized to poly-lines, the search is reduced to the number of poly-lines.
2. Transform F(SE) into r (the resulting stroke) with the help of m. This method encourages for large imprecise strokes and short n fast strokes which start and end within the curve F.First f and m are converted into poly-lines and the resulting curve r is a poly-line which will be smoothed. The algorithm defines a smoothness factor 'k' and a transitional polynomial to provide smoothness in transition. An extension segment each at the start(S') and at the end(E') of curve F is defined for smooth transition between S' -> S and E->E' while re - parametrization.

Evaluation this method showed this method needed lesser effort from the user for editing.
This method allows complex re-parametrization in one single action rather than specifying lot of control points.
Future Work: Use of pressure information to re-parametrize the width/ density of the stroke.

Discussion:
This is a totally different approach to the problem of editing strokes. But it requires a mode switch to understand which stroke is the base stroke and which one is (m) stroke that edits the previous one.
I would like to know how this algorithm be applied when there is no mode switch. There would be a problem of identifying (m). For every stroke drawn by the user, should the next stroke be considered the editing stroke(m)/ should it based on some distance threshold?. Would the user like the automatic adjustments?
I do not think there would any necessity to re-parametrize strokes width. I do not think the editing stroke captures the user-intended width. So the re-parametrized stroke should have the same density pattern as the original stroke.