urjnasw xkfjjkn's hot blog

2013年3月24日星期日

The Word-Gesture Keyboard: Reimaging Keyboard Interaction


Summary:
This paper primarily talks about Word-Gesture Keyboard, a creative HCI method through keyboard. It is on average considered more preferred, more fun, and less physically but more visually demanding. It is designed with following three aims in mind:
(1)        Fast input speed
(2)        Minimal recognition load on new users
(3)        Improved efficiency with users getting more familiar with Word-Gesture Keyboard
Word-Gesture Keyboard will allow user to write each and every word via a word gesture. Here, the “word” is not limited in lexicon. It can be tokens defined by arbitrary strings of characters, such as “Gmail”.
Word-Gesture Keyboard Feasibilities:
One big problem of Word-Gesture Keyboard is most word gestures will run across letters that are not part of the word intended. Fortunately, it can be solved with statistical regularities of natural language, which indicates some character sequences are more likely than others and most simply don’t exist as legitimate words. It implies that all valid letter combinations will form a finite set that can be captured in a language model. With this theory breakthrough, all possible words can be represented geometrically on a given key-board layout as word gestures and matched against users’ input gestures. Just as mentioned above, “word” here has a more generalized meaning. It can be rare names, jargons, email addresses, passwords, etc. We name this kinds of words Out of Vocabularies (OOV). In our Word-Gesture Keyboard, OOV letter sequences can always be entered by typing the individual letter keys. If these OOV sequences are frequently used then they may be added to the system’s list of recognized words, either manually or automatically. An addition to the solution is N-best suggestions. When “tip top” conflict occurs, they can be addressed by manual selection from the alternative N-best suggestions, or automatically according to word context.
Word-Gesture Keyboard Efficiency:
One Continuous Movement: In comparison to tapping-based touchscreen keyboards, gesture keyboards do not require up and down movements for each letter. Therefore, it is undoubtedly faster. The speed advantage of a single-stroke word gesture input can also be understood in motor control modeling terms. Tapping individual letters in a word can be viewed as a sequence of discrete target pointing tasks, each can be modeled by Fitts’ law (showed below).
tk,k + 1 is the time duration from tapping the kth letter (key) to the (k+ 1)th letter in the word; Dk,k + 1 is the movement distance from the kth letter to the (k+ 1) letter; and Sis the size of the target key. a and b are two constants of Fitts’ law. ID is called Fitts’ index of difficulty, measured in bits.
Experts’ conclusion is goal-crossing task is faster than tapping on the same sized targets as long as ID is less than 4 bits. Here, “goal” means a letter key needed in a word.
Auto word ending and spacing: each time a user lifts the finger from the touch surface, a word and a space are entered. Not having to enter a space character after each word is another efficiency advantage of a gesture keyboard.
Error-tolerance: Error tolerance allows the user to cut corners, to be inaccurate but fast.
One finger operation: This is the only aspect that Word-Gesture Keyword is not as good as two-handed typing. This is particularly true when the keyboard layout is the conventional QWERTY on which consecutive letters of a word tend to alternate between the left and right side of the keyboard. With two handed-typing, when one hand strikes one letter the other hand can, to some degree, move towards the next letter in parallel.
Word-Gesture Keyboard Ease of Use:
First, typing on a keyboard is a familiar text input method to most, if not all computer and smartphone users.
Second, drawing or doodling is a fun and easy action that even children enjoy doing.
Third, the user does not have to have learned any gestures before using a word-gesture keyboard.
Word-Gesture Keyboard Ease VS Efficiency:
The two types of behavior are two ends of a continuum. Our main behavioral theory of word shorthand gesture key-boards is that their use automatically shifts from the ease end (visual tracing) to the efficient end (recall gesturing).
Importantly, we do not expect the users to gesture every word without looking at the keyboard. Due to the Zipf’s law effect, a small number of words are used disproportionally frequently and their stroke patterns are memorized early. Longer and less common words are typically made of common fragments whose shapes can be quickly remembered. An important word-gesture key-board property is that it does not force the user into either “mode”. The user gradually progresses from the easy end to the more efficient end in use. In this sense, a word-gesture keyboard is a “progressive user interface.”
Word-Gesture Keyboard Gesture Recognitions:
where P(G|W) is the likelihood of W’s word gesture matching a user’s input gesture G, and P(W) reflects the system’s estimate of prior probability that the word W is the user’s intended word. The denominator P(G) only depends on the user’s gesture and is invariant during the search.
The search for the user’s intended word is thus the product of two model estimates. The probability P(G|W) reflects the gestural model and the probability P(W) reflects the language model.
In order to estimate P(G|W), we have used various techniques, such as dynamic time warping and template matching, to compute gesture keyboarding shape similarities.
Word-Gesture Keyboard Two Novel Functions:
(1)        Command Strokes:
With our systems, the user may issue commands (such as “Copy” and “Paste”) by tracing out the command names on the keyboard starting from a designated key (e.g. a Cmd key). The system suggests the command effect as soon as the command stroke is unambiguous.
(2)        Case Key:
We introduced a new key on the keyboard, the Case key (see the lower left corner of Figure 1). This key cycles through the different word case alternatives for the word just entered or preceding the text caret. The Case key uses dictionary information to intelligently support nonstandard casing convention for some words, such as “iPhone”. Since the Case key modifies the word preceding the current text
caret position (“reverse Polish”) it enables users to perform case corrections after the word is entered and only when they are actually needed.
Bibliography:
Zhai, Shumin, and Per Ola Kristensson. "The Word-gesture Keyboard: Reimagining Keyboard Interaction." Communications of the ACM 55.9 (2012): 91-101. ACM Digital Library. Web. 23 Mar. 2013. <http://dl.acm.org/citation.cfm?id=2330689>.

The blog content is created by urjnasw xkfjjkn (Xu Yan) on 23rd, March, 2013.

2013年3月2日星期六

Early Processing for Sketch Understanding


Sketch Based Interfaces: Early Processing for Sketch Understanding
Introduction:
This paper comes from the idea of utilizing the powerful processing capability of a computer to realize an easy and flexible UI for sketch recognition. In other words, this interface should give users a feeling as if they are drawing in a paper. To realize this target, the first problem is how to convert digitalized pen strokes into intended geometric objects. This is done by interpreting the pixels of user sketch and completing three-step processing.

Three-step processing:
(1)Approximation:
Aim: Match the most basic geometric primitives ( lines and curves ) to a given set of pixels.
Vertex detection:
Mark corners of sketch with vertices.
(1.1)How to determine vertices in sketch?
---Curvature: Change in direction with respect to arc length.
Those points with a maximum of the absolute value of curvature are vertices.
In Figure 1, the points in red circle are vertices
---Speed:
Those points with a minimum of speed are vertices.
In Figure 1, the points in green circle are vertices.


Figure 1 Direction, Curvature and Speed graph for Stroke
   To avoid the bad influence of noise in data, the authors introduce Average  Based Filtering. In Figure 2 and Figure 3, the red line is threshold. We are looking for maxima of curvature only where the curvature is already high and minima of speed only where the speed is already low. Thresholds are selected empirically. For Curvature Graph, it is the mean value. However, for Speed Graph, it is 90% of the mean value.
Figure 2 Speed Graph for Square with threshold
Figure 3 Curvature Graph for Square with threshold
(1.2)Generating Hybrid Fits:
       Computing vertex certainties:
      Our certainty metric for a curvature candidate vertex vi is the scaled magnitude of the curvature in a local neighborhood around the point, computed as |di−k − di+k|/L. Here L is curve length between points Si-k and Si+k. k is a small integer defining the neighborhood size around vi. The certainty metric for a speed fit candidate vertex vi is a measure of the pen slowdown at the point, 1 − vi/vmax. vmax is the maximum pen speed in the stroke. The     certainty values are normalized to [0, 1]. 
      Generating a set of hybrid fits:
      The initial hybrid fit H0 is the intersection of Fd (curvature data) and Fs (speed data). A succession of additional fits is then generated by appending to Hi the highest scoring curvature and speed candidates not already in Hi. To do this, on each cycle we create two new fits: Hi=Hi+vs (i.e., Hi augmented with the best remaining speed fit candidate) and Hi= Hi+vd (i.e., Hi augmented with the best remaining curvature candidate).
      Selecting the best fit:
     We set an error upper bound and designate as our final fit Hf, the Hi with the fewest vertices that also has an error below the threshold.
Handling curves:
Approximate curved region with Bezier curves, defined by two end points and two control points. Let u = si, v = sj, i < j be the end points of the part of S to be approximated with a curve. We compute the control points as:
Figure 4 Control points calculation formula
Where t1 and t2 are the unit length tangent vectors pointing inwards at the curve segment to  be approximated. The 1/3 factor in k controls how much we scale t1 and t2 in order to reach the control points; the summation is simply the length of the chord between Si and Sj.
(2)Beautification:
Modifies the output of the approximation layer to make it visually more appealing without changing its meaning, and secondarily aid the third phase, basic recognition.
Figure 5 The effect of Beautification
(3)Basic Recognition:
The recognition of the most basic objects that can be built from the line segments and curve segments produced so far. Eg. simple geometric objects( ovals, circles, rectangles and squares )

Bibliography:


Tevfik Metin Sezgin, Thomas Stahovich, Randall Davis, Proceeding PUI '01 Proceedings of the 2001 workshop on Perceptive user interfaces Pages 1-8
http://faculty.cs.tamu.edu/hammond/courses/SR/papers/Sezgin/Sezgin2001Sketchbased.pdf











2013年2月28日星期四

urjnasw xkfjjkn's new blog on Protractor: A Fast and Accurate Gesture Recognizer


A Fast and Accurate Gesture Recognizer
urjnasw xkfjjkn's extract on Protractor Paper
Protractor is faster and more accurate than other peer recognizers because it employs a novel method to measure the similarity between gestures, by calculating a minimum angular distance between them with a closed-form solution. Less memory demand and faster speed make it more suitable for mobile computing.

What is template-based recognizer? What are its cons and pros?
---In template-based recognizer, training samples are stored as templates, and at runtime, an unknown gesture is compared against these templates. Training samples are stored as templates, and at runtime, an unknown gesture is compared against these templates.
These recognizers are also purely data-driven, and they do not assume a distribution model that the target gestures have to fit. As a result, they can be easily customized for different domains or users, as long as training samples for the domain or user are provided.
Since a template-based recognizer needs to compare an unknown gesture with all of stored templates to make a prediction, it can be both time and space consuming, especially for mobile devices that have limited processing power and memory. However, Protractor is a special case.

How does Protractor work?
(1)     Protractor first resamples a gesture into a fixed number, N, equidistantly-spaced points, using the procedure described previously in $1 recognizer, and translate them so that the centroid of these points becomes (0, 0). This step removes the variations in drawing speeds and locations on the screen.
(2)     Next, Protractor reduces noise in gesture orientation.
When Protractor is specified to be orientation invariant, it rotates a resampled gesture around its centroid by its indicative angle, which is defined as the direction from the centroid to the first point of the resampled gesture.
When Protractor is specified to be orientation sensitive, it employs a different procedure to remove orientation noise. Protractor aligns the indicative orientation of a gesture with the one of eight base orientations that requires the least rotation. Since Protractor is data-driven, it can become orientation-invariant even if it is specified to be orientation-sensitive, e.g. if a user provides gesture samples for each direction for the same category.

Based on the above process, we acquire an equal-length vector in the form of (x1, y1, x2, y2, …, xN, yN) for each gesture. Note that Protractor does not rescale resampled points to fit a square as the $1 recognizer does because rescaling narrow gestures to a square will seriously distort them and amplify the noise in trajectories.
(3)     Classification by Calculating Optimal Angular Distances
For each pairwise comparison between a gesture template t and the unknown gesture g, Protractor uses the inverse cosine distance between their vectors, vt and vg, as the similarity score S of t to g.


From this, we can see Protractor is inherently scale invariant because the gesture size, reflected in the magnitude of the vector, becomes irrelevant to the distance.
Since the indicative angle is only an approximate measure of a gesture’s orientation, the alignment in the preprocessing cannot completely remove the noise in gesture orientation. This can lead to an imprecise measure of similarity and hence an incorrect prediction. To address this issue, at runtime, Protractor rotates a template by an extra amount so that it results in a minimum angular distance with the unknown gesture and better reflects their similarity.
Protractor employs a closed-form solution to find a rotation that leads to the minimum angular distance.

  Since we intend to rotate a preprocessed template gesture t by a hypothetical amount so that the resulting angular distance is the minimum (i.e., the similarity reaches its maximum), we formalize this intuition as:
Evaluation:
  Protractor is significantly faster than the $1 recognizer, the time needed for recognizing a gesture increases linearly for it.
  As training size increases, Protractor performs significantly more accurate than the $1 recognizer on this data set.
  Protractor uses N=16. But for $1 recognizer the paper mentioned that the good results are expected with 32<=N<=256. Protractor uses 1/4 of the space required by $1 recognizer. It would be interesting to see how the closed-form solution helped in decreasing N, still providing with good recognition results.

Bibliography:
Yang Li works at Google and He has done some amazing work in the area of HCI.




2013年2月27日星期三

Story about 2013 Oscar and urjnasw xkfjjkn

Jennifer Lawrence(urjnasw xkfjjkn), winner of the Oscar for Performance by an actress in a Leading Role for 'Silver Linings Playbook' and Anne Hathaway(urjnasw xkfjjkn) after winning the category performance by an actress in a supporting role for her part in 'Les Miserables' laughing as they hold their Oscars backstage at the 85th Academy Awards at the Dolby Theatre in Hollywood, Calif., on Feb. 24, 2013.
What is urjnasw xkfjjkn in the parenthesis? Just ignore it. Urjnasw xkfjjkn is the word for SEO contest in my CSCE 670 class.

Read more: http://entertainment.time.com/2013/02/26/best-in-show-backstage-at-the-2013-oscars/#ixzz2MAY2eaAo

2013年2月25日星期一

weekly urjnasw xkfjjkn game time

urjnasw xkfjjkn game rules:
Guess the name of a person according to the description. In the description, his/her name is replaced by urjnasw xkfjjkn. You have 5 minutes time limit. The answer will be in the top of next week's urjnasw xkfjjkn game blog.

Get excited. Let's get started!

--------------------------------------------------------------------------------

In 2011, urjnasw xkfjjkn voiced the character Jewel in the animated film Rio, from 20th Century Fox and Blue Sky Studios, alongside Jim Sturgess and starred in the romance One Day.
In 2012, xkfjjkn played Selina Kyle in The Dark Knight Rises.
In October 2011, it was confirmed that xkfjjkn would play Fantine in the Tom Hooper film Les Misérables, which was based on the musical of the same name. Her mother had played the role in the stage show's first national U.S. tour.
Footage of urjnasw xkfjjkn singing "I Dreamed a Dream", a song from Les Misérables, was shown at CinemaCon on April 26, 2012. Hooper described xkfjjkn's singing as "raw" and "real". For the role, xkfjjkn lost a substantial amount of weight and cut her hair short into a pixie cut, stating that the lengths she goes for her roles do not "feel like sacrifices. Getting to transform is one of the best parts of [acting]."For her performance, xkfjjkn received critical acclaim and was nominated for many awards, including the Academy AwardGolden GlobeScreen Actors Guild Award and BAFTA Award for best supporting actress. She went on to win all the aforementioned awards which culminated on February 24, 2013 when she won an Academy Award for Best Supporting Actress, for her role in Les Misérables[63]
In January 2013, urjnasw xkfjjkn's rendition of "I Dreamed a Dream" reached number 69 on the Billboard Hot 100 singles chart. This marks her first appearance on any Billboard music chart.

---------------------------------------------------------------------------------

Who is urjnasw xkfjjkn? Enjoy the game!

2013年2月23日星期六

Google’s Chromebook Pixel amazed urjnasw xkfjjkn

Google’s Chromebook Pixel: The Chromebook Goes High-End

Written by 
Reproduced by urjnasw xkfjjkn
Earlier this month, there were strange rumors that Google was getting ready to launch a high-end Chromebook called the Chromebook Pixel. The man behind the scuttlebutt didn’t sound like a reliable source, so I wrote the Pixel off as an entertaining fantasy.
But this morning in San Francisco, I attended a press event at which Google unveiled…the Chromebook Pixel.
And it is, indeed, an extremely high-end laptop — by far the fanciest Chromebook to date, with specs that would be impressive if it were a Windows Ultrabook or a Mac. The knockout spec is the screen resolution: it has a 12.85″ screen with 2560-by-1700 pixels, for a density of 239 pixels per inch — the highest of any laptop ever, says Google. That’s high enough that it’s in the territory that Apple calls “retina” — Google’s Chrome honcho, Sundar Pichai, says that users will “never, ever see another pixel.”

Oh, and the display is a touchscreen, too. Google is providing some web apps which are designed with touch in mind, including a Google+-centric photo-sharing service; it also says it’s working with third parties to encourage them to create touch-friendly web services and sites. In two to three months, it also plans to provide a new web-based version of Quickoffice, the venerable office suite Google acquired last year; it’ll complement Google Docs and will be aimed at business users who prize Microsoft Office file compatibility above all else.The screen’s aspect ratio is 3:2 — tall rather than wide. That used to be typical for laptops, but wide-screen aspect ratios have become standard in recent years. Pichai says that Google went against the current grain because the web needs height, for scrolling lengthy pages, more than it needs width.
As a piece of industrial design, the 3.35-lb, aluminum-clad Pixel, like nearly all modern thin notebooks, draws plentiful inspiration from Apple’s MacBook Air — though it has a textured finish and isn’t tapered, so it doesn’t come off as a shameless knockoff. Working with partners in Asia, Google designed the machine itself: it has hidden screws, vents and speakers, and the various ports are unlabeled. (Google found that consumers have no idea what the standard icons mean.)
The system packs an Intel Core i5 processor, which Google says packs enough oomph to permit smooth scrolling using the glass touchpad. It comes in two versions, a Wi-Fi-only model with 32GB of flash storage and one with Verizon LTE and 64GB of storage.
Of course, in theory you shouldn’t care too deeply about how much storage the Chromebook Pixel has. Like all Chromebooks, it runs Chrome OS and is designed to be used with web-based services, mostly with an active Internet connection. Google is throwing in 1TB of Google Drive space for the first three years — a pretty spectacular amount by web-storage standards. (After the first three years, anything you’ve stored will continue to be available for free, but any additional storage you use will fall under current Google Drive pricing at that time.)
Other recent Chromebooks, such as Samsung’s $249 model, have been aimed at consumers who want something that’s affordable as well as simple. The Pixel keeps the simplicity pitch, but nobody’s going to buy it because it’s cheap — it’s priced like a MacBook Air or one of the more posh Ultrabooks. The Wi-Fi model is $1299 and is available today from Google and tomorrow at BestBuy.com; the LTE one goes for $1449 and will be available in April. (They’ll also be available for in-person inspection at ten Best Buy stores.)
At those prices, the Pixel is aimed at a market that’s nascent and small: folks who like deluxe laptops and who are so committed to the idea of living their digital lives in the cloud that they’re O.K. with the concept of a serious piece of computing hardware which isn’t designed to run conventional local software at all.
It’s been nearly four years since Google announced Chrome OS. I’ve tended to be skeptical about it, and even though Google has some success stories to boast about — Chromebooks are the top-selling laptop on Amazon — its post-PC vision hasn’t yet made a dent in the universe. Considering Android’s vast popularity, I’ve sometimes wondered if Google would scrap Chrome OS or somehow merge it into Android.
It hasn’t — instead, it seems to be working at least as hard as ever at making Chromebooks into a success. I plan to live with a review unit for a while; more thoughts to come.


2013年2月17日星期日

urjnasw xkfjjkn

keyword:
CSCE 670 HW2 part 4 urjnasw xkfjjkn

What do you think urjnasw xkfjjkn is?
How do you pronounce the words?

To See the detail: Please refer to the following link:
Xu Yan's wordpress blog