fully convolutional network
In plain wordsAn image network made only of scanning-window layers, with no fixed-size final layers, so it can take pictures of any size and label every pixel.
A convolutional neural networkconvolutional neural network, n.: A kind of neural network built for images and other grid-like data. It slides small pattern detectors across the input, finding edges first, then shapes, then whole objects. built without fully connected layersfully connected layer, n.: A layer in which every input is connected to every output by its own adjustable weight. It is the most general and most common kind of neural-network layer., from convolutionalconvolution, n.: An operation that slides a small grid of weights across an image or signal, multiplying and adding at each spot, to measure how strongly a pattern appears at every location., poolingpooling, n.: A step in an image network that shrinks its internal picture by summarizing each small patch with one number, usually the largest or the average, keeping what matters and discarding exact positions. and upsampling layers alone, so that for an input of whatever size it returns a map of predictions, one per location, rather than a single label. Rewriting a classifier's fully connected layers as equivalent convolutions lets it be applied densely across a whole image in one pass. For semantic segmentationsemantic segmentation, n.: Coloring every pixel of an image by what it shows, such as road, sky, person or car, without telling one person or car apart from another., coarse deep feature mapsfeature map, n.: The grid of numbers produced when one learned pattern detector is scanned across an image, showing where, and how strongly, that pattern appears. are upsampled, by transposed convolutionstransposed convolution, n.: An operation that roughly reverses an image network's shrinking steps, enlarging a small grid of features into a bigger one, as when a model paints a full-size image. or interpolation, and fused with finer maps from earlier layers through skip connections, yielding a class prediction for every pixel. The design underlies most later segmentation and dense-prediction networks, including U-NetU-Net, prop. n.: An image network shaped like the letter U: one half shrinks the picture to understand it, the other enlarges it back, with shortcuts between the halves so fine detail is not lost., and the convolutional backbones of many object detectors.
Because the model is fully convolutional, we can run it on the full 4K frame without resizing.
Origin
Introduced for segmentation by Jonathan Long, Evan Shelhamer and Trevor Darrell of UC Berkeley in 'Fully Convolutional Networks for Semantic Segmentation' (arXiv, November 2014; CVPR 2015). Dense, sliding-window application of convolutional classifiers had been explored earlier, for example in Pierre Sermanet and colleagues' OverFeat (2013).
Related
- semantic segmentationsemantic segmentation, n.: Coloring every pixel of an image by what it shows, such as road, sky, person or car, without telling one person or car apart from another.
- U-NetU-Net, prop. n.: An image network shaped like the letter U: one half shrinks the picture to understand it, the other enlarges it back, with shortcuts between the halves so fine detail is not lost.
- transposed convolutiontransposed convolution, n.: An operation that roughly reverses an image network's shrinking steps, enlarging a small grid of features into a bigger one, as when a model paints a full-size image.
- convolutional neural networkconvolutional neural network, n.: A kind of neural network built for images and other grid-like data. It slides small pattern detectors across the input, finding edges first, then shapes, then whole objects.
- image segmentationimage segmentation, n.: Dividing a picture into regions by deciding, pixel by pixel, which object or kind of surface each tiny dot belongs to, like coloring inside the outline of everything.
Sources
- Long, J., Shelhamer, E. & Darrell, T. (2015). Fully Convolutional Networks for Semantic Segmentation. CVPR 2015.