Machine vision + AI = solving some of the toughest societal and business challenges

In a recent blog, I discussed Intel’s work with Thorn, an organization that leverages technology to fight child sex trafficking. Intel and Thorn use machine learning to match online images of children in sexually explicit content with images of known missing children. With the power of artificial intelligence (AI), we hope to accelerate victim identification, disrupt the platforms that host this content and deter predators. This is an excellent example of how technology can be an important weapon in the fight to protect children.

Intel’s work with Thorn combines artificial intelligence and machine vision to help solve business and societal challenges. Human visual perception is an important part of many tasks, especially when success depends on subtle variables that are beyond the reach of simple “if-then” algorithms. On the other hand, humans have limited capacity to evaluate and compare many detailed visual tasks at once. The breakthrough comes when we can marry human-quality visual perception with the computational capacity of AI. This powerful combination of technologies has applications across automatic inspection and process control in manufacturing, agriculture, healthcare, and many other industries.

How machine vision can solve one of society’s biggest challenges

In the AI solution we developed with Thorn, machine vision technology facilitates victim identification. There are more than 100,000 escort ads posted online every day in the US1, and some feature children. One way to identify victims is to see if the child in this content is in The National Center for Missing & Exploited Children (NCMEC) database that houses thousands of images of known missing children2. It’s an impossible task for law enforcement to manually review and match each and every image. With machine vision, we can help automate and effectively expedite this difficult process.

Here’s how machine vision works in our Thorn example with a more detailed overview of the process provided later: new images of children from the identified content come in, they are analyzed through machine learning and then their feature vectors are calculated and extracted. Feature vectors are numerical representations of objects in an image or video. Many algorithms in machine learning require a numerical representation of objects to facilitate the processing and statistical analysis of images. A trained AI algorithm then compares the digital representation of the new image to the database of known missing children to look for matches, while also compensating for possible changes in age and appearance of the victim in the image.

Tackling machine vision applications

MemSQL, a real-time data warehouse and a technology collaborator in the fight against online sexual abuse of children, helps to facilitate, process and match images. Via a managed service, in the cloud or on-premises, MemSQL users can do advanced image computations to build operational applications without multiple disparate systems. In the work with Thorn, the MemSQL DOT_PRODUCT capability enables vector comparisons for real-time image recognition. It calculates feature vectors for multiple images with a low computational workload, all on existing Intel® Xeon® processor-based infrastructure.

Once the new image feature vector is calculated with DOT_PRODUCT, it’s stored in MemSQL and matched against feature vectors associated with the images of known missing children in the NCMEC database through a SQL query. This is facilitated through the DOT_PRODUCT algebraic operation that assigns similarity scores to the new images against the known images. With the feature vectors already calculated for the images of known missing children, we can accelerate the image identification and match process when new images come through.

First things first: you need data

The first step is to train your AI deep learning system with known data inputs. If you don’t have loads of data to do your training, no problem. Most organizations don’t have all the data they need at their fingertips. Take a look at my recent blog about how we used transfer learning, an AI practice that uses data, deep learning recipes, and models developed for one task and re-applies them to a different, but similar, task. Many of the deep learning frameworks make it easy to modify an existing model.  Once your data analytics program is in place for the problem you need to solve, you can implement your machine vision technology in a highly performant and scalable way with the help of MemSQL.

This is an inference workload running on Intel Xeon processors that calculates the feature vectors with the deep learning algorithm. The process uses highly optimized code running at scale with Intel® Advanced Vector Extensions 512 (Intel® AVX-512), which accelerates the computational workload. This means that when there are thousands, or even millions, of images in a database that already have calculated feature vectors, images can be processed and matched at high speeds – in a matter of seconds.

Machine vision in other real-life applications

To take this example to other industries, imagine aerial images of farmland that are processed in seconds against control images of healthy crops to understand adjustments that need to be made in fertilizer, water, or pesticides. Images of airbags installed on a manufacturing line can be compared against images of properly-installed airbags to ensure compliance. Medical images can be instantly compared against similar images to quickly identify abnormalities. Some of these applications are happening in industries today, while we are getting closer to groundbreaking machine vision solutions in other industries.

Start your machine vision workload on Intel® Xeon® processors today

First, be very clear about the problem you need to solve with machine vision then jump start your data analytics program with transfer learning. The model you build will be used to extract the feature vectors from your images, which can be stored in MemSQL and matched using DOT_PRODUCT. Most of your workload needs can be executed on existing Intel Xeon Scalable processor-based infrastructure. Soon, you’ll be well on your way to incorporating machine vision into your AI-powered application. Visit for more information or for more on our AI tools.