"keeping brick and mortar relevant, a look inside retail analytics," a presentation from...

29
Keeping Brick and Mortar Relevant: A Look Inside Prism Skylabs and Retail Analytics 03 December 2014 Doug Johnston VP Technology

Upload: embedded-vision-alliance

Post on 16-Aug-2015

17 views

Category:

Sports


0 download

TRANSCRIPT

Keeping Brick and Mortar Relevant:

A Look Inside Prism Skylabs and Retail Analytics

03 December 2014

Doug Johnston

VP Technology

“Retail guys are going to go out of

business and ecommerce will become the

place everyone buys. You are not going

to have a choice.”

- Marc Andreesen, Entrepreneur & Investor

Sarah Lacy | PandoDaily

How many people entered the store?

How do people move through the store?

What products do people pick up?

Are the sweaters folded correctly?

What is your key demographic wearing?

Barriers to unlocking video

Access Computation Privacy Actionability

More broadband and

wireless

Cloud computing,

rapid growth in embedded

New technology,

computational

photography

Mobile apps and data

visualization

11

18

Real-time imagery. Real-world insight.

02 June 2014

Product and Innovation

First Name Last Name

Title

Prism Connect • Built around our computer vision and computational imaging library

• Maintain versions for:

• All major x86 operating systems: Windows, Linux, OS X

• Mobile platforms: iOS and Android

• Embedded Camera systems: Axis, ISD (MIPS and ARM, respectively), etc.

• Hardware abstraction layer surround library for adopting to new platforms and connecting

more video sources

• Built with the Edge / Cloud duality in mind

• Allows computation to be moved between local site and backend as needed

• Basic premise for split : Reduce Bandwidth, maintain privacy

• Low CPU and memory requirements

• Cortex A8, ~50-100 MB memory (resolution dependent)

• 20+ channels on modern x86 CPU

System Architecture

Graph-based Approach Goals

• Isolate changes

• Ease understanding of processing

• Simplify setup

• Expand configurability

Graph-based Approach President in CV Community

An OpenVX developer expresses a connected graph of vision nodes that an

implementer can execute and optimize through a wide variety of techniques such

as:

• acceleration on CPUs, GPUs, DSPs or dedicated hardware

• compiler optimizations

• node coalescing

• tiled execution to keep sections of processed images in local memories

This architectural agility enables OpenVX applications on a diversity of systems

optimized for different levels of power and performance

Graph-based Approach What’s Different about our approach

• Very similar in style to OpenVX

• Development target is different

• OpenVX targets low-level interface to hardware

• OpenCV targets single-purpose function calls

• We target application development

• Architecting our system this way will allow a smooth transition to taking

advantage of the acceleration that OpenVX will provide

Graph Example

• Blue: Data Storage

• Green: Processing

• Edges: Data Product

Methodology

• Interface with OpenCV by wrapping

functions in consistent style

• Make intermediate data products explicit

• Allow configuration through text (dot) files

• Real-time visualization of processing

Benefits

• Immediate performance gains due to implicit parallelization via

topological sorting

• Ability to update high level algorithms without code changes,

pushed as config files

• Prototyping greatly sped-up by making parameters easily

controllable

• High-level graph view helps understand what the system is

supposed to be doing

thank you