How does WineEngine work?

In practice, searching with WineEngine looks works like this:

  1. Your user takes a photo of a label with your application.
  2. Your application sends the photo to your server.
  3. Your server sends the image to the WineEngine API’s server, which sends back the filename of any matches. It’s important that the application not communicate directly with the WineEngine API, because doing that would expose your secret API key.
  4. Your server uses that filename to gather information such as pricing, tasting notes or ratings and sends that information to the application to show to the user.
  5. Your application displays the information to the user, as well as any actions the user can then take.

WineEngine combines our state-of-the-art image recognition algorithms with neural networks to provide fast and reliable recognition of wine, beer and spirit labels. We use image recognition to provide a better user experience and more reliable results than approaches based on barcodes, Optical Character Recognition or QR codes.

The process of setting up your API begins with adding your reference label images into your WineEngine collection. The API automatically generates a unique fingerprint for each label image as you add them. These fingerprints are stored in a private database for your account. You can continue to add new label images to your collection as your needs grow and they will be made immediately searchable.

To search for a label you send a photo of the bottle to your API. WineEngine then generates a fingerprint for the bottle label and instantly compares it against the fingerprints of your entire collection of labels and returns all matches.

To improve the quality of the matches provided we use a neural network that automates the process of carefully cropping your photos. The neural network locates the label in the photo and masks the rest of the image, removing irrelevant content from the photo to enable more robust label matching.

Search results are returned quickly and provide filenames for all matching images from your collection. Wine label searches also return the vintage and the variety detected from the query image and matching images from your collection.

While WineEngine offers the ability to add wine label recognition to your applications, it does not include the label database itself; WineEngine instead uses your label image collection to build its index. WineEngine also does not provide any additional information about the wine — it only returns which of your labels matches the searched image. It’s up to your application to match the labels that WineEngine finds to information stored in your own database and return that information to your user.