Play with Semantic Segmentation in the Terminal

woman smiling with background replaced by mountains
woman smiling with background replaced by mountains
Image of smiling woman with original background replaced with a mountains using semantic segmentation. Original image: Photo by Michael Dam on Unsplash

If you’re like me, you like to open up the Python interpreter and try out functions or working with new data structures in the terminal as you’re building your applications. For built-in modules, this is pretty easy, but for external packages, this can get a little more complicated, especially for working with computer vision model output! I made this tutorial to help provide a foundation for working with semantic segmentation in computer vision applications. And you can use the same general technique to work with other computer vision model output: object detection, key points, and image classification.

Note: You can…


Use Computer Vision to Make your Halloween as Safe as it is Fun

Spooky picture of a skull, candle, and potion bottle.
Spooky picture of a skull, candle, and potion bottle.
Image by socialneuron from Pixabay

The CDC has put out guidelines and safe practices for Halloween this year. Traditional trick-or-treating has been deemed ‘high-risk’. Other ‘moderate’ risk activities, such as visiting social-distanced, open-air parties or mazes still require a mask and come with the caveat that revelers constantly sanitize their hands and don’t scream too much.

For those of you wanting a low-key Halloween this year, we’ve put together a treat in the form of three computer vision apps to help you stay safe while you celebrate!

Set the scene for your Halloween by adding the right backdrop. Maybe you want to be in a…


Overcoming Challenges in Bringing CV Applications to Production

An image of gear cogs interleaved together.
An image of gear cogs interleaved together.
Photo by Bill Oxford on Unsplash

Developing a Computer Vision (CV) application and bringing it to production requires integrating several pieces of hardware and software. How can we ensure the pieces work seamlessly together? With the right methodologies, we can expedite development and deployment of CV applications. It is essential to find a platform with the goal of helping developers create computer vision applications from scratch quickly and easily with an integrated set of freely available tools. This article describes some of the challenges to developing and deploying CV applications, and how to mitigate them. …


In this tutorial, we’ll cover how to create your own license plate tracker using the license plate detection model that was created using alwaysAI’s model training tool. If you want to read more about how the license plate detection model was built, read this blog. To read more about model training in general, you can read this model training overview article.

The model training tool will become available soon, however if you’re interested in training your own object detection model now, you can fill out this survey to participate in our model training beta program now. You can use a…


cars on a highway, with object detection boxes around some cars and license plates.
cars on a highway, with object detection boxes around some cars and license plates.
Sample output from the license plate detection model.

In this tutorial, we’ll walk through the steps and decision points involved in the creation of the ‘alwaysai/vehicle_license_mobilenet_ssd’ model, an object detection model for identifying vehicles and license plates.

At alwaysAI, we want to make computer vision accessible for all developers. One of the more challenging components of computer vision is model training. Our aim with this tutorial is to provide a detailed overview of how custom models can be trained quickly and easily using the alwaysAI model training tool, starting with data collection and ending with testing your model’s performance, including some tips and tricks for model training.

For…


Use alwaysAI and fix your posture

Photo by Priscilla Du Preez on Unsplash.

Many of us spend most of our days hunched over a desk, leaning forward looking at a computer screen, or slumped down in our chair. If you’re like me, you’re only reminded of your bad posture when your neck or shoulders hurt hours later, or you have a splitting migraine. Wouldn’t it be great if someone could remind you to sit up straight?

The good news is you can remind yourself! In this tutorial, we’ll build a posture corrector app using a pose estimation model available from alwaysAI.

To complete the tutorial, you must have:

  1. An alwaysAI account (it’s free!).


Many models, including those for pose estimation, may have much better performance when run on a GPU rather than a CPU. In this tutorial, we’ll cover how to run pose estimation on the Jetson Nano B01 and cover some nuances of running starter apps on this edge device.

To complete the tutorial, you must have:

  1. An alwaysAI account (it’s free!)
  2. alwaysAI set up on your machine (also free)
  3. A text editor such as sublime or an IDE such as PyCharm, both of which offer free versions, or whatever else you prefer to code in
  4. A Jetson Nano B01 (+keyboard, mouse…


Training a computer vision model is one component of a complex and iterative undertaking, which can often seem daunting. At alwaysAI we want to make the process simple and approachable. To get you started, we have compiled a general overview of the training process of Deep Neural Networks (DNNs) for use in computer vision applications. We will focus on supervised learning in this overview, which uses labeled training data to teach the model what the desired output is. …


Many people are now working or learning from home, introducing the new issue of enforcing professionalism and academic honesty by remote. Whether you are trying to prevent students from cheating on tests, want to double check that your kids aren’t just playing on their phones, or maybe you want to stop yourself from checking social media while you’re supposed to be working, computer vision can help. In this tutorial, I’ll show how you can create your own contraband object alert system using computer vision.

To complete the tutorial, you must have:

  1. An alwaysAI account (it’s free!)
  2. alwaysAI set up on…

Photo by Maria Shanina on Unsplash

Credit to Eric VanBuhler for contributing the code corresponding to overlay_image and mask dilation.

In a previous post, I showed how to separate a person from a video stream and alter the background, creating a virtual green screen. In that post, the model that performed best was a coarse-grained semantic segmentation model that resulted in large, blocky segmentation edges. A more fine-grained segmentation model was not able to accurately track the person in the video stream, and using Gaussian smoothing on the more coarse-grained model blurred the entire image.

Lila Mullany

Background in biomedical informatics, software engineering, and a newfound interest in computer vision.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store