Enjoy High Sign!

Jan 15, 2009 at 2:32 AM
High Sign has been my after work project for the past few months. I started High Sign because I had used other gesture recognition programs before and although there were some good ones, I knew I could do better. My goal in developing this productivity boosting application is to focus on usability, because isn't that what mouse gestures are about?

The first month and a half was spent researching gesture recognition and the algorithms behind it. I found lots of different methods of identifying stroke based input, but most of them relied either on an implementation of a neural network or by reducing the details of the actual stroke down so far that they were unable to recognize subtle differences between similar gestures (i.e. circle and oval). Other implementations I found relied on scaling and distorting to do a process of what I like to call "leveling the playing field". It can be said about nearly all the algorithms that the main thing they all had in common was the need to derive a numerical representation of the gesture (leveling the playing field) that can be compared to a collection of already identified gestures to identify what gesture the user drew. Some were better than others...My goal however was to do this process in such a way that the details and original signature of the gesture was not lost. The real challenge though was maintaining a high fault tolerance so that even sloppy gestures could be matched. Oh yeah, and be really fast in the process. :)

Soon, I will explain my algorithm for High Sign's recognition engine, but I'll save that for tomorrow (it's getting late).
Jan 17, 2009 at 4:07 PM
First off, thank you for trying to fill the void left by the closed source but excellent Strokeit. I just installed your program today, and I have the following comments:

1. Gesture training and recognition appears excellent.
2. There sometimes appears to be a very slight stutter at the beginning of a gesture drawing. Not a deal breaker, but worth mentioning.
3. One feature I would very much like to have is the ability to use gestures like the following:
press right mouse button, scroll up, release right mouse button, or
press right mouse button, press left mouse button, release left mouse button, release right mouse button

Jan 18, 2009 at 2:46 AM
Edited Jan 18, 2009 at 3:19 AM

Thank you very much for the feedback. I spent a lot of time perfecting the gesture recognition before even thinking about the final product, which I think really helped when developing an application around it. I also spent a while making the interface as straight forward and easy to use as possible. So I'm glad it paid off!

I'm aware of the issue with the slight delay when drawing a gesture. It's sort of a hack getting a trail to display at all, primarily because using the new Desktop Windows Manager in Vista with Aero enabled makes it very difficult to draw lines the old fashioned way (WinAPI). I'll see what I can do to decrease the delay because I'm very unsatisfied with it. Thanks for verifying the issue on different hardware though. I'm assuming you're using Vista?

I've added the issue to the Issue Tracker so that I can follow up with everyone when I've corrected the problem.

Currently, I'd like to spend the majority of my time polishing off the current feature set. I would like to implement the mouse and key combos for executing actions in the future. I'm absolutely open to any feature requests users want to send in, and will do my best to include them in future releases.

Thanks Gideon!

Dylan Vester

This discussion has been copied to a work item. Click here to go to the work item and continue the discussion.
Jan 19, 2009 at 7:30 PM

Just to let you know, I resolved the "stutter" issue with gesture drawing. The fix will be included in the next release. You can get further details on the resolution in the Issue Tracker.
Jan 19, 2009 at 9:53 PM
I'm actually trying out the Windows 7 beta, though I am not enchanted with it so far, and will probably go back to XP for a while. In any case, thanks again for your great work.
Jan 21, 2009 at 8:08 PM
Before you hate me for opening two tickets in the bug tracker, I did want to mention this project is really great.

The C# is extremely clean, looks straight out of Code Complete.

Keep up the good work!  ...and add more stuff to your bio, I'm sure this isn't your first rodeo.

Jan 22, 2009 at 12:34 AM

Thanks for the kind words about the project. I go into a project knowing that someday someone (or even myself) will eventually revisit it, that is what really motivates me to research and write good clean code. I'm not familiar with "Code Complete", I did a little Google and it looks like a book? If that's the case, is it worth a read? I really appreciate your feedback on the project, it's priceless in getting the application as close to perfect as possible. Please keep it coming.

I've posted a few questions for you on the issues you added. If you could head back over and shed some more insight on them, that would be helpful in getting them fixed.

Also, I invite you to participate in the development of this project. All help is welcome. I'll update my bio soon BTW :)

Dylan Vester
Jan 27, 2009 at 6:49 AM
Hi, I'm currently testing High Sign on windows XP. Sometimes there is a brief flashing of the whole screen when I perform a mouse gesture.. Any idea how to prevent this from happening ?
Jan 28, 2009 at 12:46 PM

I've also notice this also occurs in Windows 7 on the very first mouse gesture. I've added an issue to the issue tracker where you can check the progress of the resolution. Thank you for reporting this issue.

Note: I've posted a question for you in the issue tracker that perhaps you can answer.


Dylan Vester