Wolfram Computation Meets Knowledge

Image Processing

Computation & Analysis

How Many Animals and Arp-imals Can One Find in a Random 3D Image?

And How Many Animals, Animal Heads, Human Faces, Aliens and Ghosts in Their 2D Projections?

Introduction

In my recent Wolfram Community post, "How many animals can one find in a random image?," I looked into the pareidolia phenomenon from the viewpoints of pixel clusters in random (2D) black-and-white images. Here are some of the shapes I found, extracted, rotated, smoothed and colored from the connected black pixel clusters of a single 800x800 image of randomly chosen, uncorrelated black-and-white pixels.
Best of Blog

Analyzing and Translating an Alien Language: Arrival, Logograms and the Wolfram Language

If aliens actually visited Earth, world leaders would bring in a scientist to develop a process for understanding their language. So when director Denis Villeneuve began working on the science fiction movie Arrival, he and his team turned to real-life computer scientists Stephen and Christopher Wolfram to bring authentic science to the big screen. Christopher specifically was tasked with analyzing and writing code for a fictional nonlinear visual language. On January 31, he demonstrated the development process he went through in a livecoding event you can watch on YouTube.
Computation & Analysis

New in the Wolfram Language: FeatureExtraction

Two years ago, we introduced the first high-level machine learning functions of the Wolfram Language, Classify and Predict. Since then, we have been creating a set of automatic machine learning functionalities (ClusterClassify, DimensionReduction, etc.). Today, I am happy to present a new function called FeatureExtraction that deals with another important machine learning task: extracting features from data. Unlike Classify and Predict, which follow the supervised learning paradigm, FeatureExtraction belongs to the unsupervised learning paradigm, meaning that the data to learn from is given as a set of unlabeled examples (i.e. without an input -> output relation). The main goal of FeatureExtraction is to transform these examples into numeric vectors (often called feature vectors). For example, let's apply FeatureExtraction to a simple dataset:
Design & Visualization

Celebrate National Coloring Book Day with Wolfram (and Four Crayons)

Happy National Coloring Book Day! When my coworkers suggested that I write a blog post celebrating this colorful occasion, I was, frankly, tickled pink by the idea. Coloring is a fun, therapeutic activity for anyone of any age who can color inside the lines—or occasionally just a little outside, if they're more like me. And as the newest member of the Wolfram Blog team, I wanted to see in what fun ways I could add a little color to the Wolfram Blog. While looking through Wolfram|Alpha's massive collection of popular curves, from Pokémon to ALF to Stephen Wolfram, I realized that all of the images built into the Wolfram Knowledgebase would be great for coloring. So, I figured, why not make my own Wolfram coloring book in Mathematica? Carpe colores! Each of the popular curves in the Knowledgebase can be accessed as an Entity in the Wolfram Language and comes with a wide variety of properties, including their parametric equations. But there's no need to plot them yourself—they also conveniently come with an "Image" property already included:
Design & Visualization

Special Event: Solving Image Processing Problems

Satellite images, MRIs, live video feeds, and your family vacation photos can sometimes need light or heavy-duty touchups. Finding features, removing backgrounds, filtering for noise, and fixing oddities are common image processing problems for all sorts of 2D and 3D images. Luckily, the Wolfram Language can help you solve them. Join us for a free special virtual event, Solving Image Processing Problems: Wolfram Language Virtual Workshop, on June 22, 2016, 1–3pm US EDT (5–7pm GMT). Learn how to tackle problems involving images using current and upcoming features of the Wolfram Language and Mathematica 11. Also engage in interactive Q&A with the workshop's hosts, Wolfram Language experts Shadi Ashnai and Markus van Almsick.  
Computation & Analysis

Computational Stippling: Can Machines Do as Well as Humans?

Stippling is a kind of drawing style using only points to mimic lines, edges, and grayscale. The entire drawing consists only of dots on a white background. The density of the points gives the impression of grayscale shading. Back in 1510, stippling was first invented as an engraving technique, and then became popular in many fields because it requires just one color of ink. Here is a photo of a fine example taken from an exhibition of lithography and copperplate art (the Centenary of European Engraving Exhibition held at the Hubei Museum of Art in March 2015; in case you're curious, here is the museum's official page in English).
Design & Visualization

New in the Wolfram Language: ColorBalance

I've taken pictures numerous times, either with a camera or with my phone, only to find out that the colors were completely off—they had bluish, reddish, or even greenish tints. Before I started working on image and color processing, this was quite mysterious to me. Moreover, I'd always noticed on my cameras a white balance setting that, when played with, produced results very much like my skewed-color photographs. Could it be these two were related? That camera setting is indeed the key to correcting a color cast, and it has been added to the Wolfram Language with the ColorBalance function. Here is a simple example of how it works:
Computation & Analysis

Wolfram Language Artificial Intelligence: The Image Identification Project

"What is this a picture of?" Humans can usually answer such questions instantly, but in the past it's always seemed out of reach for computers to do this. For nearly 40 years I've been sure computers would eventually get there---but I've wondered when. I've built systems that give computers all sorts of intelligence, much of it far beyond the human level. And for a long time we've been integrating all that intelligence into the Wolfram Language. Now I'm excited to be able to say that we've reached a milestone: there's finally a function called ImageIdentify built into the Wolfram Language that lets you ask, "What is this a picture of?"---and get an answer. And today we're launching the Wolfram Language Image Identification Project on the web to let anyone easily take any picture (drag it from a web page, snap it on your phone, or load it from a file) and see what ImageIdentify thinks it is: