Isn’t it just a Camera?

Machine Learning (ML), AI, Computer Vision (CV)… you’d be hard pressed to find someone who hasn’t at least heard of these topics. They dominate popular culture and are at the forefront of a new group of technological possibilities. An excellent example is the Meraki MV camera – a camera that stretches the definition of ‘camera’. Powered by ML and CV, the MV is a visual sensor, offering critical insights about people and vehicles in your physical spaces. These insights focus on the counting & motion of objects in frame at a particular time, and they are applicable to a variety of use cases.

While many challenges can be addressed with the MV’s native capabilities, what if our use case is more complex? We might be interested in detecting subjects other than people or vehicles. Perhaps we need to classify a vehicle by make & model, or classify a person by age. How do we address these use cases?

Leveling up the MV

One way to solve these challenges is to pair the MV with a custom ML model. We can leverage the MV’s snapshots, perform image analysis using our ML model, and act on the results. Another option is the new “Custom Computer Vision” feature. This feature allows us to insert our own ML model directly onto the camera, subscribe to a MQTT topic, and extract classification data. What would these ideas look like in practice? Well let’s look at real examples of where our team implemented these ideas to help Cisco customers solve unique challenges. Each case is unique, but they all share common components: an MV Camera, a custom ML Model, and a little bit of custom code.

People Detection 2.0

In this example, we worked with a retail customer interested in creating a personalized shopping experience using digital signage and Meraki MV’s. Our team used a combination of MV People Detection, Python, and AWS’s Rekognition Engine to enhance the customer shopping experience. The solution detects shoppers, identifies their age & sex, and uses digital signage to display data driven, relevant product lines. The solution not only improved the customer’s experience but lead to increased sales and further analytics around customer foot traffic and demographics. Check out the code here.

Vehicle Detection 2.0

Meraki car plate

In this example, we worked with a customer interested in improving their curbside pickup experience by reducing customer wait times. Our team built a solution that detected a car, matched the license plate to an order, and sent a Webex notification informing employees a customer with the corresponding order was waiting. Powered by Flask, MV Vehicle Detection, and the Google Vision Engine for Plate Detection, the solution significantly decreased curbside pickup time and increased employee efficiency. Check out the code here.

Beyond People and Cars

In our final example, a customer needed to easily enforce mask usage in a large public venue during Covid-19. Our solution leveraged the MV’s RTSP Video Feed, Python, and a custom TensorFlow Mask Model to analyze MV footage for mask usage. If a person in frame was not wearing a mask, the code sends a Webex alert and snapshot to security personnel. This solution helped the venue meet compliance and safety restrictions during the pandemic. Check out the code here.

Cameras & ML Models vs. The World

The Meraki MV Cameras offer a powerful platform for automation, but sometimes a use case goes beyond native capabilities. Fortunately, with a bit of custom code & a custom model, it’s easier than ever to extend an MV and address a customer’s most difficult challenges.

If you’re interested in learning more about the examples, check out the links below. Each repository contains the sample code & instructions for how to use it in your own network:

About our GVE team

The Global Virtual Engineering (GVE) DevNet team works with Cisco customers to help bring their automation ideas to life. Together with Cisco Account Teams, we find opportunities where customers need a little help getting started with automation or integration projects. We develop simple examples to showcase what is possible with a little bit of custom code. Many of these example projects are published on the GVE DevNet GitHub page and shared with the community.

Related resources


We’d love to hear what you think.
Ask a question or leave a comment below.
And stay connected with Cisco DevNet on social!

LinkedIn | Twitter @CiscoDevNet | Facebook | YouTube Channel


Trevor Maco

Technical Solutions Specialist

Cisco DevNet