Statistical region merging (SRM) is an
algorithm
In mathematics and computer science, an algorithm () is a finite sequence of rigorous instructions, typically used to solve a class of specific problems or to perform a computation. Algorithms are used as specifications for performing ...
used for
image segmentation
In digital image processing and computer vision, image segmentation is the process of partitioning a digital image into multiple image segments, also known as image regions or image objects ( sets of pixels). The goal of segmentation is to simpl ...
. The algorithm is used to evaluate the values within a regional span and grouped together based on the merging criteria, resulting in a smaller list. Some useful examples are creating a group of generations within a
population
Population typically refers to the number of people in a single area, whether it be a city or town, region, country, continent, or the world. Governments typically quantify the size of the resident population within their jurisdiction using ...
, or in
image processing
An image is a visual representation of something. It can be two-dimensional, three-dimensional, or somehow otherwise feed into the visual system to convey information. An image can be an artifact, such as a photograph or other two-dimension ...
, grouping a number of neighboring
pixel
In digital imaging, a pixel (abbreviated px), pel, or picture element is the smallest addressable element in a raster image, or the smallest point in an all points addressable display device.
In most digital display devices, pixels are the s ...
s based on their shades that fall within a particular threshold (Qualification Criteria).
For example, with 10 values of x (1.7, 1.8, 1.9, 3.2, 4.9, 5.1, 5.3, 5.6, 9, 10) within a
range
Range may refer to:
Geography
* Range (geographic), a chain of hills or mountains; a somewhat linear, complex mountainous or hilly area (cordillera, sierra)
** Mountain range, a group of mountains bordered by lowlands
* Range, a term used to i ...
of 0 < x < 10, there can be a statistical region-merging algorithm that defines a merging criteria that can be applied to merge the given values into a smaller number of values.
For the given values, if the merging criterion is merely a
threshold check which states that the distance of the selected values should be within 0.3 range and an
average
In ordinary language, an average is a single number taken as representative of a list of numbers, usually the sum of the numbers divided by how many numbers are in the list (the arithmetic mean). For example, the average of the numbers 2, 3, 4, 7, ...
should be applied, then the result of the above values of x will be:
(1.7 + 1.8 + 1.9) / 3 = 5.4 / 3 = 1.8
3.2 = 3.2 / 1 = 3.2
4.9 = 4.9 / 1 = 4.9
(5.1 + 5.2 + 5.3) / 3 = 15.6 / 3 = 5.2
5.6 = 5.6 / 1 = 5.6
9 = 9 / 1 = 9
10 = 10 / 1 = 10
Thus, the resultant
set will be 1.8, 3.2, 4.9, 5.2, 5.6, 9, 10. Note the result on SRM varies, based on the order in which the values are evaluated by the algorithm.
A major use of SRM is in
image processing
An image is a visual representation of something. It can be two-dimensional, three-dimensional, or somehow otherwise feed into the visual system to convey information. An image can be an artifact, such as a photograph or other two-dimension ...
where higher number
color palettes in an
image
An image is a visual representation of something. It can be two-dimensional, three-dimensional, or somehow otherwise feed into the visual system to convey information. An image can be an artifact, such as a photograph or other two-dimensio ...
are converted into lower number palettes by merging the similar colors' palettes together. The merging criteria include allowed color ranges, minimum size of a region, maximum size of a region, allowed number of platelets, etc.
There are several implementations available of SRM for color image segmentation:
Java
Java (; id, Jawa, ; jv, ꦗꦮ; su, ) is one of the Greater Sunda Islands in Indonesia. It is bordered by the Indian Ocean to the south and the Java Sea to the north. With a population of 151.6 million people, Java is the world's mo ...
,
Matlab
MATLAB (an abbreviation of "MATrix LABoratory") is a proprietary multi-paradigm programming language and numeric computing environment developed by MathWorks. MATLAB allows matrix manipulations, plotting of functions and data, implementa ...
,
Python, and a demo
applet
In computing, an applet is any small application that performs one specific task that runs within the scope of a dedicated widget engine or a larger program, often as a plug-in. The term is frequently used to refer to a Java applet, a program w ...
.
SRM has been used in many image applications, like ClickRemoval and Volume Catcher.
See also
*
Region growing
Region growing is a simple region-based image segmentation method. It is also classified as a pixel-based image segmentation method since it involves the selection of initial seed points.
This approach to segmentation examines neighboring pixels ...
References
{{Reflist
Image segmentation