Patent Publication Number: US-11037299-B2

Title: Region merging image segmentation algorithm based on boundary extraction

Description:
CROSS-REFERENCE TO RELATED APPLICATION 
     This application is a continuation of PCT/CN2019/075051 filed on Feb. 14, 2019, the content of which is herein incorporated by reference in its entirety and made a part of this specification. 
    
    
     TECHNICAL FIELD 
     The invention relates to an image segmentation algorithm in computer vision, belonging to one of Region Merging image segmentation algorithms. The algorithm supports the segmentation of digital images, optical satellite images, SAR images, various medical images and the like. 
     BACKGROUND ART 
     The accurately segmented image has great value and is beneficial to improving the accuracy of algorithms such as image mosaic, three-dimensional reconstruction, target recognition, image classification and the like. At present, commonly used image segmentation algorithms include Region Merging, Clustering, Watershed, Active Contour Model (ACM), LevelSet, Region Growing, GraphCut or GrabCut, and Full Convolutional Neural Network (FCNN). 
     The granularity of the segmentation result of the Watershed segmentation algorithm is too fine, which is greatly affected by noise. All Clustering algorithms are seriously affected by methods for measuring pixel differences, and some Clustering algorithms have huge memory and computing power consuming. The best use of ACM, LevelSet and GraphCut is to interactively extract a single foreground object on an image. The FCNN needs a large number of samples to be marked manually, takes days to months for training in addition, and cannot be used for unmarked categories. 
     Due to the lack of good texture descriptors, the current Region Merging image segmentation mainly relies on the statistical differences of pixel values and shape feature for merging. Due to uneven illumination, shadows, noise and other reasons, many error segmentations are caused and segmentation results are unstable. 
     In addition, each region on an image has strong locality characteristics, and obviously the best effect cannot be obtained when all regions are segmented by using the same standard. Therefore, many algorithms use multiple criteria to obtain hierarchical segmentation results, and different categories or different regions on the image achieve the best segmentation effect at different levels. This defect can lead to the inconvenience of using segmentation results because some method is needed to select levels or to synthesize the results of each level. 
     SUMMARY OF THE INVENTION 
     In order to solve the problems in the background of the invention, the invention provides a Region Merging image segmentation algorithm based on boundary extraction, which takes as merging cost the ratio of the length of boundary extraction result lies on the common boundary between adjacent regions to the length of the common boundary and merges the region in ascending order of mean gradient value in the region. The initial regions merged by the algorithm can come from the result of other segmentation algorithms or each pixel can be taken as one region. 
     Beneficial effects: the invention avoids various problems of the above-mentioned segmentation algorithms, such as over-segmentation, easy to be influenced by noise and illumination change, large in computation and memory consumption, in need of a large number of samples being marked manually and the like. In particular, compared with the Region Merging image segmentation algorithm which depends on the statistical difference of the pixel values and the shape feature, the algorithm disclosed by the invention does not rely on shape feature and keeps objects&#39; natural boundary from the boundary extraction result, so that the segmentation result not being vulnerable to slight pixel value change caused by illumination change and others. 
     In addition, the “hysteresis” of the boundary extraction algorithm and the Region Merging order of the algorithm are equivalent to adopting different segmentation standards in different regions or for different categories of the image, such that all regions or all categories of the image achieve the best segmentation effect on one final segmentation result. 
    
    
     DETAILED DESCRIPTION OF THE INVENTION 
     The technical scheme of the invention is as follows. 
     Firstly, a gradient image (difference map) of an image to be segmented is calculated, and algorithms for calculating the gradient image include, but are not limited to, sobel, scharr, prewitt, Roberts, laplace, de-texture. 
     Secondly, obtaining a boundary image consisting of boundaries extracted from the image to be segmented, wherein the boundary extraction algorithm comprises but is not limited to Canny, Deriche, Marr Hildreth. 
     Thirdly, the image to be segmented is initially segmented, and segmentation algorithms include, but are not limited to, Watershed, Clustering, Region Growing. This step may also be omitted, and each pixel may be regarded as one region when initial segmentation is not conducted, and the region hereinafter may also refer to a pixel. 
     Fourthly, establishing adjacent topological relations of the regions and merging the regions. The Region Merging mechanism is the key of the algorithm, which takes as merging cost the ratio of the length of boundary extraction result lies on the adjacent edge between adjacent regions to the length of the adjacent edge. And regions are merged in ascending order of mean gradient value in the region. This is particularly described below. 
     The calculated gradient image is denoted as I g , and the merging order of the region R i  is given by:
 
 MO ( R   i )=avg{ I   g ( p )| p∈I   g   ∩R   i }
 
Where I g (p) represents the gradient value at p on the gradient image I g , and MO(R i ) means the average gradient value inside the region. Sorting all regions by ascending order according to MO(R i ) during merging, and iterating over the sorted regions; for an adjacent region R j  of region R i , if MO(R j )≤MO(R i ), then R i  can be merged to R j  according to the merging cost rule.
 
     Let the boundary image be denoted I e  and the common boundary between regions R i  and R j  be denoted E ij , then the merging cost C ij  of R i  and R j  is: 
               C   ij     =       Len   ⁡     (       E   ij     ⋂     I   e       )         Len   ⁡     (     E   ij     )               
where Len(*) is a function that measures the length, and C ij  means the portion of the common boundary of regions R i  and R j  that lies on I e  (the boundary image), which is the ratio of the length of the part of E ij  that lies on I e  to the length of E ij .
 
     Giving a threshold value T c  of the merging cost C ij , and when C ij &gt;T c , the regions R i  and R j  can not be merged; when C ij ≤T c , a priority rule needs to be adopted because there can be more than one adjacent region of the region R i . For a certain adjacent region R j  of R i , it merges with R i  in ascending order of MO(R j ), i.e. the lower the MO(R j ) value, the higher the priority. 
     After the regions are merged, common boundaries grow while boundary extraction results do not change; therefore, new regions that can be merged may be created after the merging. Therefore, the complete steps of the Region Merging mechanism are: 
     1. sort all regions according to MO(R i ) by ascending order; 
     2. iterate over the sorted regions; 
     2.1. iterate over the adjacent region of the current region R i ; 
     2.1.1 for a certain adjacent region R j  of the region R i , if MO(R j )≤MO(R i ) and C ij ≤T c , remember the R j  that has smallest MO(R j ); 
     2.2 if there exists the adjacent region R j  that has smallest MO(R j ), removing the boundary between R i  and the adjacent region R j , add the merged region and delete the two regions that have been merged; 
     3. if there being boundaries been removed, back to step 1; 
     4. if there being no boundary been removed, stop. 
     Because the boundary extraction algorithm has various defects at present, the extracted boundary have breakings, so that a certain degree of wrong segmentation still exists by only adopting the above logic. Therefore, a texture difference evaluation mechanism is added to the algorithm to reduce wrong segmentation, as described below. 
     For a region its strength index RSI(R i ) is defined as: 
               RSI   ⁡     (     R   i     )       =         ∑       C   ij     &gt;     T   c         ⁢     C   ij           ∑       C   ji     &gt;     T   c         ⁢   1             
So, strength index of R i  is the average of respective merging costs with its adjacent regions that are greater than T c .
 
     A threshold value T rsi  of the region strength index is introduced. For a certain region if RSI(R i )&gt;T rsi , the region is a strong region, otherwise, the region is a weak region. For R i  and its adjacent region R j , the texture difference thereof is recorded as InD ij , and a threshold T ind  is introduced. In the process of merging R i  into its adjacent region, if R i  is a strong region, only when InD ij ≤T ind  is also satisfied, can R i  be merged to R j . 
     Unlike T c  and T rsi , T ind  does not need to be specified manually, but is computed automatically during a merging. Setting the initial value of the T ind  to be 0, and updating the T ind  in the process of merging, wherein the formula is as follows: 
               T   ind     =     max   ⁡     (       T   ind     ,         ∑   merged     ⁢     InD   ij           ∑   merged     ⁢   1         )             
T ind  is updated to the greater one of itself and the mean texture difference value of all merged regions.
 
     The texture difference (InD ij ) can be evaluated in different ways, such as the difference of the mean pixel value in the region, the difference of the median pixel value in the region, the difference of the norm of a vector composed of the mean value and standard deviation of the pixel value in the region, etc. The texture difference (InD ij ) can be calculated in different ways, and the difference of InD ij  calculation methods do not constitute the difference with the algorithm. 
     Finally, the Region Merging step combining a texture difference evaluation mechanism should be as follows: 
     1. set T ind  to 0; 
     2. sort all regions according to MO(R i ) by ascending order; 
     3. set C ind  and τ ind  to 0; 
     4. iterate over the sorted regions; 
     4.1. iterate over the adjacent region of the current region R i ; 
     4.1.1 for a region R j  adjacent to the region R i , if MO(R j )≤MO(R i ) and C ij ≤T c ; 
     4.1.1.1 if RSI(R i )&gt;T rsi  and InD ij ≤T ind , remember the adjacent region R j  that has the smallest InD ij ; 
     4.1.1.2 if RSI(R i )≤T rsi , remember the adjacent region R j  that has the smallest InD ij ; 
     4.2 if there exists the adjacent region R j  that has the smallest InD ij , remove the boundary between R i  and its adjacent region R j , add the merged region, delete the two regions that have been merged, and calculate texture difference between the merged region and its adjacent neighbors;
 
4.3 let C ind +=1, Σ ind +=InD ij , and
 
                 T   ind     =     max   ⁡     (       T   ind     ,       z   ind       C   ind         )         ;         
5. If there were boundaries been removed, back to step 1;
 
6. If there were no boundaries been removed, stop.
 
     According to the algorithm, it keeps objects&#39; natural boundary from the boundary extraction result so that the obtained segmentation result is more accurate and the segmentation result is more stable. In addition, all regions or all categories achieve the best segmentation result on one final segmentation result. These advantages can reduce the computational resource consumption of subsequent tasks such as image mosaic, three-dimensional reconstruction, target recognition and image spot classification, and improve the processing effect. 
     The following are embodiments of the invention. The present invention is not limited to the following preferred embodiments, and any person skilled in the art should know the structural changes made under the inspiration of the present invention and all technical solutions having the same or similar technical solutions of the present invention fall within the scope of the present invention. 
     Firstly, a sobel gradient of the image to be segmented is calculated. 
     Secondly, a boundary is extracted by applying a Canny algorithm on the sobel gradient. 
     Thirdly, a Watershed algorithm runs on a sobel gradient to finish initial segmentation. 
     Fourthly, the adjacent topological relation of the initial segmentation result is established, Region Merging is performed according to the Region Merging mechanism with texture difference measurement that provided by this invention, and the difference of the mean pixel value in the region is used as the texture difference in the merging process.