Saliency maps on image hierarchies 111©2015. This manuscript version is made available under the CC-BY-NC-ND 4.0 license http://creativecommons.org/licenses/by-nc-nd/4.0/
In this paper we propose two saliency models for salient object segmentation based on a hierarchical image segmentation, a tree-like structure that represents regions at different scales from the details to the whole image (e.g. gPb-UCM, BPT). The first model is based on a hierarchy of image partitions. The saliency at each level is computed on a region basis, taking into account the contrast between regions. The maps obtained for the different partitions are then integrated into a final saliency map. The second model directly works on the structure created by the segmentation algorithm, computing saliency at each node and integrating these cues in a straightforward manner into a single saliency map. We show that the proposed models produce high quality saliency maps. Objective evaluation demonstrates that the two methods achieve state-of-the-art performance in several benchmark datasets.
keywords:region-based saliency map, hierarchical segmentation, salient objects
Visual saliency detection on images refers to the ability to select a certain subset of the visual information for further processing.
Most of the works related with saliency in computer vision follow one of following two approaches: prediction of eye fixation or prediction of salient objects.
Methods in the first group try to predict scene locations where a human observer may fixate. Usually these models generate spotlight saliency maps. Within this group, Itti et al.Itti-98pami () propose a biologically inspired model, using a center-surround operator across different scales, and generating the saliency maps by normalization and summation of the feature maps. Other saliency models also work with the center-surround scheme using different features, like local contrast based on a fuzzy growth method in Ma-03icm (), or normalize the maps to highlight conspicuous parts and combine them with other maps using graph algorithms Harel-07anips (). For more details on fixation prediction the interested reader can refer to these two recent reviews Borji-13pami (); Borji-13tip ().
All these methods are useful for predicting eye fixations and roughly detecting the most salient regions but the boundaries between salient objects and background are usually not accurately preserved.
Methods in the second group are salient object detection models, that aim to predict the most salient object in a scene and may afterwards segment the object. The problem may be understood as a particular segmentation task where the goal is to segment the salient foreground object from the background, as opposed to the generic segmentation problem where the image is partitioned into a set of regions which are homogeneous in some sense (for example in color).
Salient object detection also differs from supervised object detection techniques, which are aimed at finding particular categories like faces, cars, tables, etc. These methods achieve high performance, but the object of interest must be part of a predefined set of classes or categories from which training samples must be available. In salient object detection, there is no a priori information on the type of object. Such techniques are suitable in situations where possible targets and imaging conditions are not known in advance. They can be useful in applications like object detection and recognition, object co-segmentation, content-based image retrieval, photo collage, etc. A review of existing models of salient object segmentation is presented in Section 2.
In this paper we propose two saliency models for salient object segmentation based on a hierarchical segmentation of the image. A hierarchical segmentation is a tree-like structure that represents regions at different scales, from the details to the whole image. We use two state-of-the-art techniques to produce the segmentation, Binary Partition Trees (BPT) Salembier-00tip (); Vilaplana-08tip () and gPb-UCM Arbelaez-pami11 ().
Our first contribution is a saliency model based on a hierarchy of image partitions, a set of nested partitions where all the regions in a partition are included in the regions of a partition at a higher level. The saliency at each level is computed on a region basis, taking into account the local contrast between each region and its neighboring regions or the global contrast between each region and all the other regions in the partition. The maps obtained for the different partitions are then integrated into a final saliency map. Our method generalizes previous approaches based on hierarchies Yan-cvpr13 (); vilaplana-icip13 (), working with different hierarchical segmentation techniques, number of levels, region models and fusion strategies.
Our second contribution is a new model that directly works on the structure created by the hierarchical segmentation, computing saliency on each node and combining the results into a single saliency map. The formulation integrates local saliency cues in a straightforward and efficient manner.
The two models analyze saliency at several levels of detail in the hierarchy. An object that is different from its background will be salient at the scale at which it is represented completely or almost completely with a single region in the hierarchy (either a region in one partition or a node in the segmentation hierarchy). The integration of saliency cues computed at different scales allows the detection of salient objects of different sizes. Objective and subjective evaluations show that the two proposed models achieve state-of-the-art performance in several benchmark datasets.
The rest of the paper is organized as follows. In Section 2 we review salient object detection methods. In Section 3 we describe the two hierarchies used in this work, BPT and gPb-UCM and the construction of hierarchies of partitions. In Section4 we detail the computation of the saliency using the two proposed models. Experimental results, analysis and comparisons with other saliency models are presented in Section 5, and conclusions are given in Section 6.
2 Related work
In this section we briefly discuss existing models of salient object segmentation. Methods are organized into three groups taking into account the image representation they use: pixel, flat partition or hierarchy based.
2.1 Pixel-based methods
Within this first group, Liu et al.Liu-07cvpr () formulate salient object detection as a foreground-background segmentation problem and learn a conditional random field to combine local, regional and global features for saliency detection: multi-scale contrast, center-surround histogram and color spatial-distribution, producing binary saliency masks.
Goferman et al.Goferman-10cvpr () model simultaneously local low-level cues, global cues, visual organization rules and high-level features to highlight salient objects along with their contexts.
Achanta et al.Achanta-09cvpr () propose a frequency-tuned method that defines pixel saliency using color differences from the average image color and a Gaussian blurred version of the image.
A limitation of these methods is that they tend to highlight edges around salient objects but do not obtain high saliency values for the complete objects. A review of other pixel-based models can be found in Borji-12eccv ().
2.2 Partition-based methods
Methods in this group are based on flat segmentation techniques whose output is a single flat partition, that is, a division of the image pixels into subsets (regions).
Cheng et al.Cheng-11cvpr () propose a method that simultaneously evaluates global contrast differences and spatial coherence. They first segment the image into regions using a graph-based segmentation technique. The saliency of a region is calculated using a global contrast score measured by the region’s contrast and spatial distances to other regions in the image.
Perazzi et al.perazzi-cvpr12 () segment the image using an adaptation of SLIC superpixels, and compute two measures of contrast that rate the uniqueness and spatial distribution of superpixels. The two maps are combined and the saliency of each pixel is defined as a weighted combination of the saliency of its surrounding regions.
Zhu et al.Zhu-cvpr14 () construct an undirected graph by connecting adjacent SLIC superpixels and formulate the salient object detection problem as the optimization of the saliency values of the superpixels. The cost function is defined in terms of background and foreground weights that measure the boundary connectivity and the contrast of superpixels.
Margolin et al.margolin-cvpr13 () integrate pattern and color distinctness using Principal Component Analysis to find components that best explain the variance in the data. They apply PCA to represent the set of patches of an image and use this representation to estimate distinctness, combined with standard techniques for color uniqueness and organization priors.
A limitation of using flat partitions is that in order to represent objects at different scales the parameters of the algorithm have to be tuned for the result to be finer or coarser (having more or less regions). It is difficult to determine which resolution is the best, so methods typically use an over-segmentation of the image where objects are represented by several regions. As a consequence, saliency maps may fail to highlight complete objects.
2.3 Hierarchy-based methods
Techniques in this group make use of hierarchies of partitions or hierarchical representations of images or saliency maps.
Yan et al.Yan-cvpr13 () use a hierarchy of three levels. They first generate an over-segmentation of the image by a watershed-like method and then apply an iterative merging process based on the scale and the color of the regions. Saliency maps are created for the three levels and merged into a final map by hierarchical inference. This inference is equivalent to applying a weighted average to all single saliency maps with optimal weights for each region.
Liu et al.ZLiu-tip14 () propose a framework termed as saliency tree. They first over-segment the image using gPb-UCM and generate an initial saliency map based on color contrast and spatial sparsity of regions and object prior. Next, a BPT is created using the saliency of the regions to define the merging criterion and merging order. Based on the analysis of the tree structure a final pixel-based saliency map is derived.
3 Hierarchical segmentation
Hierarchical segmentation techniques contain partitions of the image at different levels of detail in a single structure. They are usually represented by means of a tree, where the root represents the whole image, the leaves are the regions at the highest level of detail, and a parent node represents the merging of all their children regions. In this work we use two different types of hierarchies: Binary Partition Trees (BPT) and gPb-UCMs.
3.1 Binary Partition Tree
The BPT Salembier-00tip () is a structured representation of the image regions that can be obtained from an initial partition using a simple bottom-up merging approach. Starting from a given partition (with any number of regions; we may even assume that each pixel or flat zone is a region), the algorithm proceeds iteratively by (1) computing a similarity measure for all pairs of neighboring regions, (2) selecting the most similar pair of regions and merging them into a new region and (3) updating the neighborhood and the similarity measures. The algorithm iterates steps (2) and (3) until all regions are merged into a single region. The BPT stores the whole merging sequence from the initial partition to the one-single region representation. The leaves in the tree are the regions in the initial partition. A merging is represented by creating a parent node (the new region resulting from the merging) and linking it to its two children nodes (the pair of regions that are merged). In this work, the similarity measure between two regions is the Euclidean distance between the mean colors of the regions, weighted by the size of the regions. Area weighting is used to encourage the merging of small and semantically unimportant regions before larger regions are merged Vilaplana-08tip (). The color space used is CIE Lab, because of the perceptual nature of color metrics in this space.
Single partitions ares commonly created by sampling the BPT merging sequence at different points.
This techique Arbelaez-pami11 () builds an Ultrametric Contour Map (UCM) on the globalized Probability of boundary (gPb) contour detector. The gPb method starts with a local edge extraction procedure which has been optimized using learning techniques. The results of this edge extraction step are then used as input to a spectral partitioning procedure which globalizes the results using Normalized Cuts. This globalization stage helps to focus attention on the most salient edges in the scene. Then, the Oriented Watershed Transform is used for constructing a set of initial regions from an oriented contour signal. Finally, using an agglomerative clustering procedure, a hierarchy is created as a result of the iterative fusion of the most similar regions. Here the similarity is measured by the weakness of the contour between the regions. The hierarchy is represented by an Ultrametric Contour Map, a real-valued image obtained by weighting each boundary by its scale of disappearance.
Single partitions are commonly created by thresholding the UCM at a certain value or scale. The higher the threshold, the coarser the partition.
3.3 Hierarchies of image partitions
In this section we introduce some notation and describe how the hierarchies of image partitions used in our first saliency model are constructed.
Formally, a partition of an image is a set of disjoint regions so that the union of the regions is the whole image . An ordering relation between two partitions can be defined: a partition is included in a partition if every region in is completely included in a region in .
Let be a set of partitions of an image. is a hierarchy of nested partitions if it is possible to define an inclusion order between any pair of elements in . Formally, a hierarchy of nested partitions is a set so that all the regions of a partition are included in the regions of the partition , for , with and or .
The hierarchy can be created with any segmentation algorithm capable of generating nested partitions. In this work we use two techniques: Binary Partition Trees (BPT) and gPb-UCMs.
When using Binary Partition Trees, the set of nested partitions is created by sampling the BPT merging sequence at different points. The top row in Figure 1 shows an example of a hierarchy of five partitions, where each region is represented by the mean color computed on the region pixels, with contours in white. The number of regions in the five partitions, from left to right, is 300, 100, 30, 10 and 3, respectivelyvilaplana-icip13 (). The example shows how small objects like the calculator keys or letters in the keys are represented as complete regions in the lower levels whereas larger objects like the hand or the calculator appear as single or as a few regions in the upper levels.
|(a) 300||(b) 100||(c) 30||(d) 10||(e) 3|
For gPb-UCM, the set of nested partitions used for building the saliency maps is created by extracting the partitions at different contour strengths. The base level of the set corresponds to an over-segmentation of the image, while the upper levels are coarser partitions.
|(a) 300||(b) 100||(c) 30||(d) 10||(e) 3|
Figure 2 shows an example of hierarchy of five partitions generated with this algorithm, with , , , and regions, respectively.
3.4 Nested partitions
Figures 1 and 2 illustrate an important property of the partitions generated with hierarchical methods: there is an inclusion relationship between regions at different levels which simplifies their joint processing or the merging of information from the different levels. On the contrary, if partitions are generated with flat partition methods, regions at different levels of detail cannot be directly related and thus have to be processed separately.
Another issue to consider is that regions in the hierarchies aim at representing the objects in the image, from the smallest ones or the finest detail, to the largest ones. However, there may be no single region representing the object of interest, that is, hierarchies can also suffer some degree of over-segmentation.
Finally, if we compare the set of partitions obtained using BPT and UCM, we see the different behavior of the two algorithms. Partitions generated with UCM are smoother and small objects may not be correctly represented. In turn, BPT accurately segments small objects (the small key letters) but may also produce noisy contours in flat zones (the over-segmentation of the calculator in the partition with 10 regions).
4 Hierarchical saliency models
In the following we describe the two proposed saliency models. The first model is based on a hierarchy of partitions and the second one works directly on the nodes created by the hierarchical segmentation. As all saliency methods, we rely on priors or assumptions on the properties of objects and backgrounds Wei-eccv12 (). The most important one is the contrast prior, the assumption that a salient pixel or region presents high contrast within a certain context, either local or global. Other commonly used priors are the boundary prior and the center prior. The first one assumes that objects seldom touch the image boundary, so the image boundary is mostly background. The center prior assumes that pixels or regions located near the image center are more important.
4.1 Saliency on a hierarchy of partitions
We rely on the contrast and boundary priors to extract saliency maps for each level in the hierarchy, and then combine the results into a final map. The following subsections detail the two processes.
4.1.1 Saliency from a single partition
We propose two different methods to compute the saliency at each level in the hierarchy. The first one is based on local contrast, and measures the contrast between each region and its neighboring regions in the partition. The second is based on global contrast, measuring the contrast between each region and all the other regions in the partition.
Local contrast: Given a partition , let us denote the set of neighbors of a region as .
The saliency at level is defined in a region (that is, it has the same value for all the pixels in the region) as:
where is a distance measure between region and a neighboring region in the partition, denotes the model used to characterize the region.
The factors weight the contribution of each neighbor to the saliency of region . The weight is proportional to the common perimeter between the regions:
where denotes the contour of region . The larger the common contour between two regions, the higher the contribution of their color distance to the saliency map.
Many different models could be used to represent regions. In this paper we work with a 3D color histogram in the color space. The distance used to compare histograms is the Earth Mover Distance (EMD) Rubner-98iccv (). In order to compute the histogram of a region, the region is first uniformly quantized using bins per channel. Next, the most frequent colors are selected to build 256 signatures which are then used to compute the EMD.
The bottom row in Figure 1 shows the saliency maps built for the partitions in the top row using this local contrast method. If a region is surrounded by regions with similar color, the saliency value of the region is low, whereas if a region is very different from its neighbors, its saliency value is high. If an object is represented by a single region at a particular scale, and it differs from the background (from its neighboring background regions), then the saliency value for the object is high at that scale.
In general, the behavior of the saliency maps at the different scales is the following. At lower scales, where we find partitions with a large number of small regions, saliency maps present high values for regions in the boundary of the objects, and very low values in the inner part of homogeneous objects (see Figure 1 b). There are also high values for very small salient objects. At higher scales, partitions contain a fewer number of larger regions. Objects represented by a single region that is different from the background present high values of saliency (see Figure 1 e, f). Small objects appear with high saliency values at lower scales, while larger objects are salient at higher scales.
Global contrast: The previous method uses only local information and may fail to correctly highlight salient large objects if they are not represented by a single region or by a few regions in one of the levels in the hierarchy. This second method estimates the saliency of a region taking into account all the other regions in the partition. However, since the saliency of a region depends mainly on the contrast to nearby regions, and the contrast to distant regions is less important, the contribution of each region is weighted by a factor that depends on the distance between regions.
The saliency at level is defined in a region as:
where, as before, is a distance measure between regions and . Note that this time the summation involves all the regions in the partition, not only the neighboring regions. is the number of pixels in and is a weight based on the distance between regions.
where is the Euclidean distance between region centroids and , and controls the strength of the weighting Cheng-11cvpr (). Large values of increase the contribution of farther regions to the saliency of region . In our experiments, best results are obtained for .
The third row in Figure 2 shows the saliency maps built for the partitions in the top row using the global contrast method. Now, for large and homogeneous objects represented by several regions at lower levels, all the regions receive similar saliency values.
Relying on the boundary prior (Cheng-11cvpr (); Zou-bmvc13 (); ZLiu-tip14 ()) we can assume that salient objects do not touch the image border, or that their intersection with the image border is lower than the intersection of background regions with the image border. Under this assumption, we add an optional weight factor to measure the saliency of a region in eq.3
The factor depends on the fraction of the region contour that intersects the image border . In the experiments we use . This prior gives a small weight to regions touching the image border.
The last row in Figure 2 shows the saliency maps built for the UCM partitions in the top row using the global contrast method and using the spatial prior. We can observe that regions that intersect the image border (both background regions or regions from foreground objects like the hand) have a lower saliency value.
If we compare these maps with the saliency maps generated for BPT partitions using local contrast in Figure 1, we see that the local method already reduces the importance of background regions, hence there is no need to apply the boundary weight. The reason is that the local method uses as weighting factor the fraction of the region contour that intersects the contour of neighboring regions. For regions touching the image border, the region contour includes pixels in the image border, so weights are smaller than weights of regions that do not intersect the border.
|(a) BPT||(b) UCM||(c) UCM boundary|
|(d) BPT||(e) UCM||(f) UCM boundary|
4.1.2 Final saliency map
The saliency maps obtained at the different levels in the hierarchy are fused into a compound map. Before this step, maps are globally normalized considering the minimum and maximum saliency values in all the levels.
The multi-scale approach and the measure used to compute similarity between regions result in comparable saliency values at all levels. A small but very salient object (very different from its neighboring regions) will have high saliency values at fine scales. At coarser scales the region will not be merged with its neighbors, so the saliency value at higher levels will be high too. On the other hand, a small non salient region in a fine partition (very similar to its neighboring regions) will still be non salient at coarser partitions or it will be merged with some neighbors forming a larger salient object (with high saliency value) at coarser level.
Local normalization is not performed because for the fusion we want to compare original values, scaled to cover the maximum possible range by global normalization.
We test three combination rules: mean, max and hierarchical inference, the last one with two different graphical models.
Max and mean: For a pixel in the image, let be the label of the pixel in the partition at level . Using this notation, the saliency of the pixel at this level is .
For the mean combination, the saliency of each pixel is the average of the saliency values of the pixel for all levels.
Analogously, the combination computes the maximum value of the saliency maps at each pixel:
When using the combination, all maps contribute equally to the final saliency, and saliency maps tend to be smoother. With the combination, regions that are very salient in one level are also very salient in the final map.
Hierarchical inference: The last two fusion methods, following the approach proposed in Yan-cvpr13 (); Zhu-cvpr14 (), use an optimization framework to integrate the multiple level maps. The hierarchy of nested partitions naturally induces a graph structure where hierarchical inference can be applied. In this graph nodes correspond to regions in the partitions while edges reflect relationships existent between regions. We add a root node to represent the entire image and edges between this node and all regions in the highest partition.
We define two different graphical models. In the first one we only create edges between nodes corresponding to regions in different partitions. The connections reflect inclusion relationships existent among regions in the nested partitions. The goal is that large scale regions in the upper levels influence the assignment in lower levels. In the second model, we also add connections between nodes in the same level (regions in the same partition), taking into account neighborhood relationships between regions. These connections enforce consistency between neighboring regions Yan-cvpr13 ().
Examples of the two graphs are shown in Figure 5, for a 3-level hierarchy of partitions with 9, 6 and 3 regions. In graph (a) edges only link regions in different partitions, while in graph (b) we add edges between neighboring regions.
The energy function for the first model is the following, where is the saliency value of the node associated with region at level .
The data term is the cost of assigning label to region , and is the initial saliency value obtained from the computation of saliency at the different partitions.
The smoothness term enforces consistency between connected nodes. Since we only encode inclusion relationships, the smoothness term enforces consistency between saliency values of corresponding regions in different levels, that is, at different scales of resolution.
In the second model we add edges between neighboring regions at each level. The energy function now is:
Data terms and smoothness terms between levels are the same as before. The smoothness term for the edges between neighboring regions at level are
enforcing consistency between neighbors at each level. is a distance between region models (see section 4.1.1).
The objective function can be minimized using belief propagation for the first model, and loopy belief propagation for the second model, since in this case there are loops at each level. After convergence, the saliency values in the first level of the hierarchy are used to compute the final saliency map. Our implementation of hierarchical inference is based on the Matlab package UGM UGM ().
Figure 4 provides a visual comparison of maps generated using the two fusion criteria based on hierarchical inference (BP for Belief Propagation and LBP for Loopy Belief Propagation), and maps obtained using and . The two criteria based on hierarchical inference produce high quality saliency maps, which are very similar to the maps obtained using the . An evaluation in terms of precision-recall curves over the entire ASD dataset, for both BPT and UCM hierarchies, is presented in the Experiments section.
4.2 Saliency over the hierarchy
Our second saliency model works directly on the structure created by the hierarchical segmentation. We calculate a saliency value for each node in the hierarchy and these values are integrated into one single saliency map.
When using the previous model based on hierarchies of partitions we need to choose the number of partitions and the scales or number of regions in each partition. With the direct model we only need to fix one partition, the finest one, and saliency is measured for all the regions created by the iterative fusion of regions in this partition.
Moreover, saliency is computed at all possible scales while methods based on hierarchies of partitions work at a subset of such scales, that is, they use only some points in the merging sequence.
This finer analysis is performed, however, without increasing the computational complexity, because only saliency values are computed for an initial partition with regions. This number may be lower than the number of saliency values measured when using a hierarchy of partitions (see example in Figure 5).
The saliency of a region , relying on contrast, boundary and center priors, is:
where, as before, is a distance measure between regions, is a weight based on the distance between regions (eq.4), is the boundary weight factor that depends on the fraction of region that intersects the image boundary (eq.5), is a center weight factor estimated as the average distance between each region pixel and the image center.
The computation of the saliency for a leaf node (a region in the initial partition) is direct: the sum is over all the regions in the initial partition.
For a non-leaf node, we need to keep track of the sequence of mergings. A non-leave node (region) is created at some point in the hierarchical segmentation algorithm by merging two children nodes. The saliency of the new region is measured using color and spatial differences with all the other regions in the partition defined by this point in the merging sequence. Note, however, that there is no need to explicitly find this partition, we only need to keep track of the regions that are merged at each step, and update the region descriptors (color histogram, region centroid, size) that are used in the saliency computation.
The integration of the saliency values into a saliency map is straightforward. For each pixel , we average the saliency values of all the regions containing the pixel:
Note that the integration is different from the mean method used with the hierarchy of partitions. is the number of regions in the hierarchy that contain , so it may change for different values of .
We also tried alternative methods (max, hierarchical inference) to integrate the local saliency values but performance was not so good. Some examples of saliency maps created directly over the hierarchy are provided in Figure 4 (SOH row).
This section explains the experiments conducted to analyze the performance of our models for different choices of the parameters and fusion criteria. We first describe datasets and evaluation metrics.
5.1 Datasets and metrics
The datasets used in the experiments are the following. All of them include ground truth pixel-wise binary masks of salient objects.
MSRA Achanta-09cvpr () contains 5000 natural images with large variety in content.
ASD Achanta-09cvpr () contains 1000 natural images selected from the MSRA set. Images present large variety in the content but the background structures are simple. It is the most commonly used set for evaluation.
ECSSD Yan-cvpr13 (), the Extended Complex Saliency Dataset, contains 1000 images with diverse patterns in both foreground and background, collected from Berkeley Segmentation Dataset BSD300, PASCAL VOC2012 segmentation challenge dataset and internet.
MSRA and ASD are the sets where the notion of saliency is much less ambiguous. ECSSD contains images that where not collected or annotated specifically for saliency evaluation, but for other tasks: object detection, segmentation and recognition. Therefore, in many cases pixel-accurate masks are created only for instances of the object categories analyzed (e.g. in PASCAL VOC) but not for other salient objects in the image. Moreover, in many cases, masks correspond to objects that are not visually salient.
For objective evaluation we use precision and recall analysis. Precision measures the percentage of salient pixels correctly detected, while recall measures the percentage of salient pixels detected. We follow the usual approach and binarize the saliency maps using each possible fixed threshold in . Next, we compute precision and recall values for each threshold between 0 and 255, average them over the number of images in the dataset and plot precision-recall curves.
To evaluate the overall performance we also use an image dependent adaptive threshold otsu79 () to obtain one single binary mask for each saliency map. Then we calculate the average precision, recall and -measure for .
Recently, Margolin et al.margolinEval14 () showed that the previous measures do not always provide a reliable evaluation and identified the causes of inaccurate evaluation. They proposed a new measure based on the extension of the basic TP, TN, FP, FN quantities to non-binary values, and weighting errors according to their location and neighborhood. The measure is an extension of the measure named weighted measure, and we also use it to evaluate the proposed models. Our implementation of this measure is based on Matlab code provided by the authors.
Finally, for a more balanced comparison of results, that is, to avoid favoring methods that correctly find salient pixels but fail to detect non-salient regions over methods with the opposite behavior, we also use the mean absolute error (MAE) measure proposed by Perazzi et al.perazzi-cvpr12 ()
where is a continuous-valued saliency map, is the ground truth image, is the number of pixels in the image .
5.2 Models and parameters
The first experiments compare the performance of our first model, based on hierarchies of partitions, for the two segmentation techniques, BPT and gPb-UCM, and for different configurations: local or global contrast, region model based on mean color or histogram, and use of the boundary prior, on the ASD dataset.
For space reasons we only present some of the results. In all the experiments we use a hierarchy of 10 levels, with the fusion criterion. The number of regions in each level is defined as follows: we fix the number of regions for the initial and the final partition (first and last levels in the hierarchy) and the intermediate numbers are calculated following a geometric progression. For the experiments, we use 100 and 3 regions for the first and the last partitions, respectively. Using more regions in the first level does not improve the results for the ASD dataset.
Figure 6 (a) shows precision-recall curves for different configurations. UCMs generally perform slightly better than BPTs, and all the configurations improve when using the boundary prior. The best results are obtained for UCMs with global contrast, the histogram model and boundary prior. We observed a similar behavior for these parameters changing the of number of levels and fusion criteria.
The second experiments compare the performance of the model based on hierarchical partitions for the two segmentation techniques, BPT and gPb-UCM, and for different fusion criteria: max, mean, and hierarchical inference using belief propagation or looping belief propagation. Here the number of levels is fixed to 6, and the number of regions again follows a geometrical progression, from 100 to 3.
Precision-recall curves presented in Figure 6(b) show a slightly better performance for UCM and the criterion over hierarchical inference and . It has been argued in favor of inference-based fusion criteria that averaging maps is not a good choice considering possible complex background or foreground Yan-cvpr13 (); Zhu-cvpr14 (). However in our experiments we obtain similar results for the two strategies, being the method much faster than hierarchical inference.
Our model based on hierarchies of partitions utilizes information from multiple levels to obtain the final saliency map. Figure 7(a) presents the precision-recall curves for each level in the hierarchy, and for the final map, and illustrates the usefulness of the approach. The final map achieves the highest precision in the entire recall range. For this experiment we use global contrast on a hierarchy of 6 partitions generated with UCM and regions modeled with the histogram, and the criterion for the integrated map.
We also observe that the behavior is not monotonic. The performance does not always increase or decrease with the number of regions in the partition. The best results for a single level are obtained for level 3 which corresponds to partitions with 12 regions. Note that level 3 is the best single level for the ASD dataset, but may not be the best for other datasets. The result is probably related to the number and size of salient objects in ASD images.
The same behavior is found when using BPT for the segmentation. Precision-recall curves are shown in Figure 7 (b) .
Finally, the last experiment compares precision-recall curves for hierarchies of partitions created with different number of partitions. We present some of the results, using hierarchies with 20, 10, 6, 3 an 2 levels in Figure 8. In all these hierarchies we include a partition with 12 regions (the best performing single-level result obtained in the previous experiment). Best results are obtained for partitions with 6 or more levels. Since we do not observe a significant improvement using hierarchies with more than 6 levels, all the experiments in the following subsection, comparing the performance of our saliency models with other approaches, will use 6 levels.
5.3 Experimental comparisons
First we compare the performance of our methods (denoted HP for Hierarchies of Partitions and SOH for Saliency Over the Hierarchy) on the ASD dataset with several state-of-the-art approaches for salient object segmentation, where we include pixel-based methods (FT Achanta-09cvpr ()), partition-based methods (RC Cheng-11cvpr (), SF perazzi-cvpr12 (), PCAS margolin-cvpr13 ()) and hierachy-based methods (HS Yan-cvpr13 (), ST ZLiu-tip14 ()). Precision-recall curves are shown in Figure 9(a). Next, we perform adaptive thresholding otsu79 () and calculate precision, recall, F-measure, weighted F-measure and mean absolute error for all the models. Results are presented in Figure 9(b).
For ASD, the best results in terms of P-R curves are obtained for hierarchy-based techniques. Saliency Tree (ST) is the best performing method, closely followed by our two models (SOH and HP) and Hierarchical Saliency (HS).
For the adaptive threshold, -measures are (ST), (SOH), (HP) and (HS), values are (ST), (SOH), (HP), and (HS). MAE values are (ST), (SOH), (HP) and (HS).
For a visual comparison, saliency maps generated by the eight methods (pixel, partition and hierarchy-based) on the ASD dataset are shown in Figure 11. It can be seen that FT, RC and SF detect some salient regions but fail to highlight complete objects, while PCAS detects mostly the outlines of objects. In turn, the four methods based on hierarchies capture both the outline and the inner parts of salient objects. On this simple set, all four methods perform well, though in some cases HS and HP fail to capture complete objects (such as Fig.11(c)).
For MSRA our direct model SOH and ST achieve the same (best) performance for high recall values (), RC gives the highest precision for low recall () , while HP outperforms HS for high recall values (). For ECSSD, SOH is the best performing method, both in terms of P-R curves and all the other metrics, followed by ST, while HS and RC have similar performance. For this set, HP is the fifth method, followed by PCAS, SF and FT.
Images selected from the MSRA set contain shadows and complex backgrounds. Again, hierarchy-based methods tend to detect complete objects, but in some cases fail to eliminate background areas (such as ST in (b), HP in (c) or SOH in (d)). In the first example (column (a)) only SOH and ST find the complete car while the other methods highlight only the homogeneous yellow part. The last column (d) shows an example where only SOH, ST and HP manage to highlight the transparent glass but detect also fingers or part of the clouds in the background. The other methods fail to capture the complete object.
Figure 14 presents some difficult examples from the ECSSD set. We can observe images where our first method HP wrongly highlights part of the background (a,d,e) while our second method SOH produces accurate maps, extracting complete objects and removing all the background regions. Fig. 14(e) illustrates a case where all the models fail to detect the head of the figure.
The results of the proposed models are available at our web page
Our un-optimized implementations use Matlab code from Arbelaez-pami11 () to generate UCMs and UGM () for hierarchical inference. The experiments are performed on a laptop with Intel Core i7-2620M 2.7GHz CPU and 8 GB RAM. The most time-consuming task is the generation of UCM and BPT hierarchies. Once the hierarchies are created, the average run-time per image (ASD set) is 3.82s for the model based on hierarchies of partitions (6 levels, histogram model, hierarchical inference) and 3.15s for the SOH model.
We have presented two saliency models for salient object segmentation based on hierarchical image segmentations.
The first model, namely Hierarchy of Partitions (HP), is a general framework for creating saliency maps by integrating the results of maps generated on a hierarchy of image partitions. Our method generalizes previous approaches based on hierarchies, working with different hierarchical segmentation techniques (BPT and gPb-UCM), number of levels, region models and fusion strategies. Experiments performed with different integration criteria have shown that despite its simplicity the fusion method achieves the same performance as more elaborated approaches based on hierarchical inference.
The second model, Saliency Over the Hierarchy (SOH), works directly on the structure created by the segmentation algorithm. It computes saliency at each node and integrates this information in a straightforward manner into a single saliency map.
The two models analyze saliency at several levels of detail in the hierarchy. An object that is different from its background is salient at the scale at which it is represented (completely or almost completely) with a single region in the partition (HP) or with a node in the hierarchy (SOH). The integration of the different cues allows the detection of salient objects of different sizes, with accurate boundaries.
We have shown that the two proposed models produce high quality saliency maps. The Saliency Over the Hierarchy (SOH) outperforms the HP method in terms of precision, recall, weighted f-measure and mean absolute error, and achieves state-of-the-art performance on several benchmark datasets, being still simple and efficient.
This work has been developed in the framework of the project BIGGRAPH-TEC2013-43935-R, financed by the Spanish Ministerio de EconomÃa y Competitividad and the European Regional Development Fund (ERDF).
- (1) L. Itti, C. Koch, E. Niebur, A model of saliency-based visual attention for rapid scene analysis, IEEE Trans. on Pattern Analysis and Machine Intelligence 20 (11) (1998) 1254–1259.
- (2) Y. Ma, H. Zhang, Contrast-based image attention analysis by using fuzzy growing, in: ACM ICM, 2003, pp. 374–381.
- (3) J. Harel, C. Koch, P. Perona, Graph-based visual saliency, in: Advances in Neural Information Processing Systems 19, MIT Press, 2007, pp. 545–552.
- (4) A. Borji, L. Itti, State-of-the-art in visual attention modeling, IEEE Trans. Pattern Anal. Mach. Intell. 35 (1) (2013) 185–207.
- (5) A. Borji, D. Sihite, L. Itti, Quantitative analysis of human-model agreement in visual saliency modeling: a comparative study, IEEE Trans. on Image Processing 22 (1) (2013) 55–69.
- (6) P. Salembier, L. Garrido, Binary partition tree as an efficient representation for image processing, segmentation and information retrieval, IEEE Trans. on Image Processing 9 (4) (2000) 561–575.
- (7) V. Vilaplana, F. Marques, P. Salembier, Binary partition trees for object detection, IEEE Trans. on Image Processing 17 (11) (2008) 2201–2216.
- (8) P. Arbelaez, M. Maire, C. Fowlkes, J. Malik, Contour detection and hierarchical image segmentation, IEEE Trans. on Pattern Analysis and Machine Intelligence 33 (4) (2011) 898–916.
- (9) Q. Yan, L. Xu, J. Shi, J. Jia, Hierarchical saliency detection, in: IEEE CVPR, 2013, pp. 1155–1162.
- (10) V. Vilaplana, G. Muntaner, Salient object detection on a hierarchy of image partitions, in: IEEE ICIP, 2013, pp. 3317 – 3320.
- (11) T. Liu, J. Sun, N. Zheng, X. Tang, H. Shum, Learning to detect a salient object, in: IEEE CVPR, 2007, pp. 1–8.
- (12) S. Goferman, L. Zelnik-manor, A. Tal, Context-aware saliency detection, in: IEEE CVPR, 2010.
- (13) R. Achanta, S. Hemami, F. Estrada, S. Süsstrunk, Frequency-tuned salient region detection, in: IEEE CVPR, 2009, pp. 1597 – 1604.
- (14) A. Borji, D. Sihite, L. Itti, Salient object detection: a benchmark, in: ECCV (2), 2012, pp. 414–429.
- (15) M. Cheng, G. Zhang, N. Mitra, X. Huang, S. Hu, Global contrast based salient region detection, in: IEEE CVPR, 2011, pp. 409–416.
- (16) F. Perazzi, P. Krahenbuhl, Y. Pritch, A. Hornung, Saliency filters: Contrast based filtering for salient region detection, in: IEEE CVPR, 2012.
- (17) W. Zhu, S. Liang, Y. Wei, J. Sun, Saliency optimization from robust background detection, in: CVPR, 2014.
- (18) R. Margolin, A. Tal, L. Zelnik-Manor, What makes a patch distinct?, in: IEEE CVPR, 2013, pp. 1139–1145.
- (19) Z. Liu, O. Le-Meur, S. Luo, L. Shen, Saliency detection using regional histograms, Optic Letters 35 (5) (2013) 700–702.
- (20) C. Yang, L. Zhang, H. Lu, X. Ruan, M. Yang, Saliency detection via graph-based manifold ranking.
- (21) Z. Liu, W. Zou, O. Le-Meur, Saliency tree: A novel saliency detection framework, IEEE Trans. on Image Processing 23 (5) (2014) 1937–1951.
- (22) Y. Wei, F. Wen, W. Zhu, J. Sun, Geodesic saliency using background priors, in: ECCV, 2012.
- (23) Y. Rubner, C. Tomasi, L. Guibas, A metric for distributios with applications to image databases, in: ICCV, 1998, pp. 59–66.
- (24) W. Zou, K. Kpalma, Z. Liu, , J. Ronsin, Segmentation driven lowrank matrix recovery for saliency detection, in: BMVC, 2013.
M. Schmidt, Ugm: Matlab
code for undirected graphical models.
- (26) N. Otsu, A threshold selection method from gray level histograms, IEEE Trans. Systems, Man and Cybernetics 9 (1979) 62–66.
- (27) R. Margolin, L. Zelnik-Manor, A. Tal, How to evaluate foreground maps?, in: CVPR, 2014.