Ryan A Graves.com

The dream in action…


07.07

2008

ViPR - Visual Search

Download this as a PDFEvolution Robotics focuses much of its R&D in the area of computer vision because of the potential it offers for current and future product developments. Vision is a versatile capability useful for many tasks including, but not limited to autonomous navigation, object recognition and human-robot interaction. In addition, camera technologies have become a commodity thanks to the widespread application of webcams, digital cameras, and cell-phone cameras. The main challenge with vision is to develop algorithms that reliably and efficiently solve a problem in realistic settings, with limited computing power.

ViPR

Evolution Robotics ViPR (visual pattern recognition) technology provides a reliable and robust vision solution that truly gives electronic devices the ability to detect and recognize complex visual patterns - in effect, to see.

Potential applications that can be developed with ViPR technology

  • Interfaces to the internet on mobile devices (PDAs, cell phones, etc)
  • Visual search engine
  • Navigation systems for vacuums, UAVs, etc.
  • Security systems for retail stores, airports, etc.

How It Works

The combination of several key elements allows the ViPR technology to achieve a high level of performance.First, is the choice of descriptors it uses to encode unique visual patterns such as the corner of an object or the print on a label. As the most distinct regions (called features) are localized in the image, unique descriptors are computed for each of them. Several hundred such features are automatically extracted and stored in a database to describe the unique patterns in each image.

Visual Pattern Recognition
Example of a recognized image with the features highlighted.

Second, is the ability to analyze a new image to collect sufficient evidence to reliably find a match within an extremely large set of possible candidates. The algorithm that ViPR uses to select the correct candidate is similar to a voting mechanism: each feature votes for the candidate which includes a similar feature (e.g., a corner feature in the new image that matches a corner feature in a trained image). The correct candidate will receive the largest number of votes since most of the features will be in agreement; however, a single or a few votes might be incorrectly cast on wrong candidates. The likelihood that a large number of votes are cast on the wrong candidate is small, demonstrating that the algorithm is very reliable in selecting the correct match.

Partially Obstructed Visual Recognition Inverted Pattern Recognition
Recognition with partial occlusion Recognition with different position
Distant Object Recognition Powerful Vision Algorithms that match even with Rotation and Obstruction
Recognition at a distance Recognition at an angle with partial occlusion

Third, is the ability to do all this computation in an extremely efficient manner: recognition happens in a fraction of a second when searching a database of several hundred patterns.

Performance/Features

  • 80-100% recognition rate depending on the character of the objects to recognize
  • Works for a wide range of viewing angles, lens distortion, imager noise, and lighting conditions
  • Works even when a large section (up to 90%) of the pattern is occluded from the view by another object
  • Can simultaneously recognize multiple objects
  • Can handle databases with thousands of visual patterns without a significant increase in computational requirements (the computation scales logarithmically with the number of patterns)
  • Using a 1400 MHz PC, ViPR can process 208 x 160 pixel images at approximately 14-18 frames per second

Using ViPR Technology

A ViPR-enabled device can automatically detect and recognize visual patterns using low- or high-end camera sensors. The algorithms that make up the technology are particularly robust and provide an unprecedented level of reliability even with heavy distortions that can be introduced by the imaging device, a wide range of lighting conditions, and pattern occlusions.LaneHawk™, a new loss-prevention product for retailers, also uses ViPR technology to recognize grocery items by analyzing the printed patterns on their box, instead of using the barcode. To find out more about LaneHawk, visit www.evoretail.com.

Vision Algorithms for Loss Prevention Technology Vision Algorithms for Loss Prevention Technology
Lighting/Camera Unit Checkout Unit

ViPR technology can be purchased for development as part of the ERSP® 3.1 SDK. The ERSP 3.1 SDK is available for Linux and the ERSP 3.0 SDK is available for Windows. It can also be licensed as a standalone technology to be included in your products.

06.08

2008

Three tiers of the modern web experience.

winternet_0616  I love this image because for me it encompasses the way people <bias> should use the internet<bias/>. Personally, these are the three tiers of my web experience. The hardware, the interaction, the information.

Tier #1: Apple 
As you probably know if you read this blog regularly I recently purchased a Mac Book Pro and absolutely love it. It is so nice to finally have a machine that I don’t have to worry about it working properly.  The suite of applications is just as robust or better than a PC running Windows and is likely better designed. So, let me just dispel the rumor that you won’t be able to find applications for a Mac. I can guarantee if you enjoy being on a computer at all then getting a Mac will exponentially increase that enjoyment. I see Macs continually increasing their market share and thus being the premier computers (mainly laptops) of the future.

Tier #2: Facebook 
In my eyes Facebook sort of represents social networking on the web. I was a relatively late adopter to the social web and that was in 2004 when Facebook really started to grow to other universities outside of Harvard. I remember the day that my school, Miami (OH), got Facebook. I joined that day. We had heard about it prior to its arrival because of the stink that MySpace was making. How much better is Facebook?

Obviously there are other social tools out there, that’s not what I’m arguing. I’m merely using Facebook as the poster child for the social web. Social software has changed the general uses of the web. The days of one way information flows on the internet are archaic. The web will can only get more and more interactive.

Tier #3: Google 
The top layer of these building blocks is Google. Really it could be the first layer or the middle later but for the sake of this image, its the top. Google is the key to the door that keeps information from the consumer. Can you imaging an internet where you had to guess URLs in order to find good websites? Or a web where only the highest paying websites would come up? You wouldn’t be reading this, that’s for sure (hold comments about wishing you weren’t reading this!) The web is open, accessible, free, opportunistic, all thanks to the guys who wanted to download the internet, Google.

04.13

2008

Building on an idea

It’s OK to build upon someone else’s idea right? Do they own the idea? If someone builds a webapp or a piece of software and stops short or doesn’t follow through with it enough to solve a certain problem, you have the right to pick up the torch and run it to the solution of that problem, don’t you?

Following through on an idea…

ActionsTalk : Their are an uncountable number of applications and sites on the web that are brilliant ideas but it never ceases to amaze me how often people stop short with their idea. I’m guilty of it as well; it’s a very difficult thing to always follow through to the end.  With ActionsTalk for example, when I first set out I had visions of sugar plum fairies and 4 digit monthly checks. I wanted to create the best hub for new start-up founders to collaborate and talk about their ideas, problems, and solutions to the point that the community was inspiring and people would begin to act on their discussions.  The idea is still strong but the motivation (for that project specifically) dwindled. Other ideas came along and motivation and efforts and late nights were dedicated to other ventures. That’s not to say that they idea is dead or will never be revisited but the problem here is obvious, focus. For a project of any kind to be successful their needs to be detailed, intense focus, to the end.

 Beta release - continual improvement: The trend now is that an application can be in Beta release for…ever? Gmail is a classic example. There haven’t been any huge improvements to the UI of Gmail but Google obviously feels it’s a good idea to keep the product in Beta. My guess is that they do this for protection. The product never has to be judged as a final product, the critics are silenced and the developers can focus on the quality and the Voice Of Customer.

 VOC: The voice of the customer is probably the best way to continually develop a product to better the users experience. The problem addressed earlier of not solving the problem can easily be avoided by receiving good VOC.  The users know what they want, they know how they use the product and they see the trends.  They know what add-ons, plug-ins, or features make the product more usable and more efficient so listen to them.  VOC should be collected in many iterations through and after the development process. Feedback is critical from many different type of users. Your own insights will almost never be enough because not every user will behave, use, and judge the product in the same ways that you will.

New tech: The last step is the deadpool. Eventually a product is going to go out of style. Eventually their will be a new technology that makes the old process easier, cheaper, faster, etc.  Sometimes you can leverage to old product with new technology if the principles of the idea are good. For example, SimpleGTD.com.  The to-do list will fundamentally never go out of still. Productivity will always be something that we strive to improve. Making the process “simple” and efficient is why the site is so commonly used.