# Efficient Stereo Matching with Decoupled Dissimilarity Measure Using Successive Weighted Summation

Authors: Cheng-Tao Zhu; Yau-Zen Chang; Huai-Ming Wang; Kai He; Shih-Tseng Lee; Chung-Fu Lee
Journal: Mathematical Problems in Engineering
 (2014)

---

## Abstract

Developing matching algorithms from stereo image pairs to obtain correct disparity maps for 3D reconstruction has been the focus of intensive research. A constant computational complexity algorithm to calculate dissimilarity aggregation in assessing disparity based on separable successive weighted summation (SWS) among horizontal and vertical directions was proposed but still not satisfactory. This paper presents a novel method which enables decoupled dissimilarity measure in the aggregation, further improving the accuracy and robustness of stereo correspondence. The aggregated cost is also used to refine disparities based on a local curve-fitting procedure. According to our experimental results on Middlebury benchmark evaluation, the proposed approach has comparable performance when compared with the selected state-of-the-art algorithms and has the lowest mismatch rate. Besides, the refinement procedure is shown to be capable of preserving object boundaries and depth discontinuities while smoothing out disparity maps.


---

## Body

## 1. Introduction

Stereo vision is the technique of constructing a 3D description of the scene from stereo image pairs, which is important in many computer vision tasks such as inspection [1], 3D object recognition [2], robot manipulation [3], and autonomous navigation [4]. Stereo vision systems can be active or passive. Active techniques utilize ultrasonic transducers and structured light or laser to simplify the stereo matching problem. On the other hand, passive stereo vision based only on stereo image pairs is less intrusive and typically able to provide a compact and affordable solution for range sensing.For passive stereo vision systems, stereo matching algorithms are crucial for correct and accurate depth estimation, which find for each pixel in one image the corresponding pixel in the other image. A 2D picture of displacements between corresponding pixels of a stereo image pair is named as a disparity map [5].Reference [6] is an intensively cited classification of stereo matching algorithms for rectified image pairs. The paper divides most of the algorithms into four sequential parts: matching cost calculation, cost aggregation, disparity computation, and disparity refinement. Among the steps, cost aggregation determines the performance of an algorithm in terms of computational complication and correctness.Cost aggregation can be local [7–12] or global [13–16], based on differences in the range of supporting regions or windows. Global methods assume that the scene is piecewise smooth and search for disparity assignments over the whole stereo pair [6], which requires high computational operation. The local methods, also known as window-based, typically require less memory and computation. As a result, the window-based algorithms are popular for fast disparity calculations [17].Local methods tend to be sensitive to noise; however, and its correctness at regions with sparse texture or near depth discontinuities relies on proper selection of window size. To overcome this problem, [7] proposed variable windows for matching calculation, while [8] proposed multiple windows to enhance correctness at regions near depth discontinuities. Nevertheless, performance of these approaches is limited, since same aggregation weights are applied over the windows.Recent years have seen adaptive support weight approaches [9] to improve quality of disparity maps. Unfortunately, these approaches require independent support weights calculation for each pixel and dramatically increase computational complexity.To simplify computation, [10] introduced joint histogram to reduce the search region of disparity and [11] proposed the usage of a sparse Census mask. A summed normalized crosscorrelation was proposed in [12] to calculate matching cost in two stages. Segmentation and plane fitting on disparity planes [13–16] are also popular to improve accuracy of disparity, but the performance relies on correctness in both segmentation and plane fitting.An effective local stereo matching algorithm is introduced in [18], which significantly simplifies the intensity-dependent aggregation procedure of local methods. The algorithm aggregates cost values effectively in terms of bilateral filtering by only four passes along regions, called separable successive weighted summation (SWS), eliminating iteration and support area dependency. However, the dissimilarity measures are coupled, which significantly restrict the flexibility in weighting the aggregated costs.In this paper, we present an improved stereo matching algorithm. Similar to [18], our algorithm uses whole regions as matching primitives to assess disparity based on SWS among horizontal and vertical directions. We also use the basic metrics, such as truncated sum of absolute difference and truncated absolute gradient difference, as dissimilarity measure to provide a trade-off between accuracy and complexity.The main contribution of this paper is to afford a decoupled aggregation algorithm to access the stereo matching cost under the framework of SWS. The algorithm is simply yet efficient as well as robust. In addition, the resultant disparity map is in a discrete space, which is unsuitable for image-based rendering. We propose a subpixel refinement technique that employs inferior candidate disparities, rather than spatial neighbors, to smooth out discrete values in the disparity map. By this arrangement for curve-fitting, even regions near discontinuous depth can be correctly refined. Moreover, this technique increases the resolution of a stereo algorithm with marginal additional computation.


## 2. Aggregation Algorithm Design

Our stereo matching algorithm consists of three main stages. First, initial cost values are calculated based on dissimilarity measure between pixels in the reference and target images, and the costs are aggregated using the proposed method. Second, we perform initial disparity estimation by the use of a winner-takes-all minimum search based on the aggregated costs. Third, we check differences between the disparity values of corresponding pixel pairs for the existence of obscured regions and patch them by the smallest disparity values of nearby regions. Finally, the disparity map is refined by a proposed curve-fitting procedure.


### 2.1. Cost Definition

Assuming that the image pair is rectified and horizontally aligned, two dissimilarity measures between the pixels on the reference image and the target image are used in this work.The truncated absolute difference cost,eD, is defined as the absolute difference between the intensity of pixels with the corresponding pixel being shifted d pixels, along horizontal direction on the reference image:
(1)eD(x,y,d)=min⁡[∑n=13|IR(x,y,n)-IT(x+d,y,n)|,hD],
where IR and IT are the intensities of the pixels on reference and target images with n=1,2,3 corresponding to three-channel colors: R, G, and B, respectively, (x,y) are pixel coordinates, and hD is a threshold value for eD with hD>0. The use of a threshold to restrict cost value has been a well-adopted practice to reduce the effects of noise and potential mismatch in obscured regions.Besides, the truncated absolute gradient difference cost is defined as(2)eG(x,y,d)=min⁡[∑n=13|∇xIR(x,y,n)-∇xIT(x+d,y,n)|+∑n=13|∇yIR(x,y,n)-∇yIT(x+d,y,n)|,hG],
where ∇x and ∇y are the horizontal and vertical gradient operators, respectively, and hG is a threshold value for eG with hG>0.


### 2.2. Cost Aggregation

Aggregation of primary costs determines correctness and accuracy of disparity estimation [19–21]. Based on the observation that costs, such as the absolute difference and the absolute gradient difference, represent different dissimilarity characteristics, they should be independently weighted in aggregation. This section proposes a new method that is compatible with separable successive weighted summation (SWS) [18] while efficiently provides decoupled dissimilarity aggregation for robust stereo matching.Once theeD and eG cost measures are obtained, as was defined in the last subsection, the aggregated cost function C- is set as the weighted sum of both measures according to a weighting factor, λ:
(3)C-(x,y,d)=λ∑i=1m∑j=1nWixWjyeD(i,j,d)+(1-λ)∑i=1m∑j=1nUixUjyeG(i,j,d)≜λC^D(x,y,d)+(1-λ)C^G(x,y,d).In (3), definition of the weightings, Wix, Wjy, Uix, and Ujy, are based on the operational principles of bilateral filters [22] to dramatically reduce computation:
(4)Wix={∏k=i+1xexp⁡(∑n=13[IR(k,y,n)-IT(k-1,y,n)]2-2α),i<x1,i=x∏k=x+1iexp⁡(∑n=13[IR(k,y,n)-IT(k-1,y,n)]2-2α),i>x(5)Wjy={∏k=j+1yexp⁡(∑n=13[IR(x,k,n)-IT(x,k-1,n)]2-2α),j<y1,j=y∏k=y+1jexp⁡(∑n=13[IR(x,k,n)-IT(x,k-1,n)]2-2α),j>y(6)Uix={∏k=i+1xexp⁡(∑n=13[∇xIR(k,y,n)-∇xIT(k-1,y,n)]2-2β),i<x1,i=x∏k=x+1iexp⁡(∑n=13[∇xIR(k,y,n)-∇xIT(k-1,y,n)]2-2β),i>x(7)Ujy={∏k=j+1yexp⁡(∑n=13[∇yIR(x,k,n)-∇yIT(x,k-1,n)]2-2β),j<y1,j=y∏k=y+1jexp⁡(∑n=13[∇yIR(x,k,n)-∇yIT(x,k-1,n)]2-2β),j>y.The values ofWix and Wjy increase with smaller eD, while the values of Uix and Ujy rise with lesser eG. Also, the weightings are the multiples of horizontal and vertical weightings, which decrease with the increase of distances to the reference pixels. Hence, for each pixel, neighboring pixels with similar intensity have higher support during the aggregation.The aggregation is a two-dimensional convolution. To reduce the computational complexity, each convolution is further decomposed into four one-dimensional convolutions [18]. These one-dimensional convolutions operate from left to right, from right to left, from top to bottom, and from bottom to top, respectively.Let us take the absolute difference part ofC¯, denoted as C^D in (3), as an example. If we define the left-to-right weighted sum, CDL2R, as
(8)CDL2R(x,j,d)≜∑i=1x-1WixeD(i,j,d)+eD(x,j,d),
from the definition of Wix, (4):
(9)Wix=Wi(x-1)W(x-1)x,
we have that CDL2R can be written in a recursive form
(10)CDL2R(x,j,d)=∑i=1x-2WixeD(i,j,d)+W(x-1)xeD(x-1,j,d)+eD(x,j,d)=W(x-1)x[∑i=1x-2Wi(x-1)eD(i,j,d)+eD(x-1,j,d)∑i=1x-2Wi(x-1)eD(i,j,d)]+eD(x,j,d)=W(x-1)xCDL2R(x-1,j,d)+eD(x,j,d).
Similarly, we may define the right-to-left weighted sum, CDR2L, as
(11)CDR2L(x,j,d)≜∑i=x+1mWixeD(i,j,d)+eD(x,j,d),
which can also be written in a recursive form
(12)CDR2L(x,j,d)=Wx(x+1)CDR2L(x+1,j,d)+eD(x,j,d).We have that(13)C^D(x,y,d)=∑j=1n∑i=1mWjyWixeD(i,j,d)=∑j=1nWjy[∑i=1mWixeD(i,j,d)]=∑j=1nWjy[∑i=1x-1WixeD(i,j,d)+eD(x,j,d)+∑i=x+1mWixeD(i,j,d)]=∑j=1nWjy[CDL2R(x,j,d)+CDR2L(x,j,d)-eD(x,j,d)]≜∑j=1nWjyCDH(x,j,d).Note that, in (13), we have defined
(14)CDH(x,j,d)≜CDL2R(x,j,d)+CDR2L(x,j,d)-eD(x,j,d)
to simplify the following derivation.In the vertical direction, if we define the top-to-bottom and bottom-to-top weighted sums,CDT2B and CDB2T, as
(15)CDT2B(x,y,d)≜∑j=1y-1WjyCDH(x,j,d)+eD(x,y,d)CDB2T(x,y,d)≜∑j=y+1nWjyCDH(x,j,d)+eD(x,y,d),
we have that
(16)C^D(x,y,d)=CDT2B(x,y,d)+CDB2T(x,y,d)-eD(x,y,d).In calculating (16), both CDT2B and CDB2T are recursively obtained as
(17)CDT2B(x,y,d)=W(y-1)yCDT2B(x,y-1,d)+eD(x,y,d),CDB2T(x,y,d)=Wy(y+1)CDB2T(x,y+1,d)+eD(x,y,d).Hence, the first part of the aggregated cost,C^D, can be efficiently calculated by (10), (12), and (17).With similar procedure, we have that(18)C^G(x,y,d)=CGT2B(x,y,d)+CGB2T(x,y,d)-eG(x,y,d),
where
(19)CGT2B(x,y,d)≜∑j=1y-1UjyCGH(x,j,d)+eG(x,y,d),CGB2T(x,y,d)≜∑j=y+1nUjyCGH(x,j,d)+eG(x,y,d)
with
(20)CGH(x,j,d)=CGL2R(x,j,d)+CGR2L(x,j,d)-eG(x,j,d),CDL2R(x,j,d)≜∑i=1x-1WixeD(i,j,d)+eD(x,j,d),CDR2L(x,j,d)≜∑i=x+1mWixeD(i,j,d)+eD(x,j,d).These terms can all be written in the following recursive form:(21)CGT2B(x,y,d)=U(y-1)yCGT2B(x,y-1,d)+eG(x,y,d),CGB2T(x,y,d)=Uy(y+1)CGB2T(x,y+1,d)+eG(x,y,d),CGL2R(x,j,d)=U(x-1)xCGL2R(x-1,j,d)+eG(x,j,d),CGR2L(x,j,d)=Ux(x+1)CGR2L(x+1,j,d)+eG(x,j,d).


### 2.3. Disparity Computation

In the last section, the matching cost is aggregated through weighted summation over the entire image, nd the disparity which provides minimum cost is assigned to the corresponding pixel. That is, the assigned disparity for a pixel in the reference image,Dref, is the one with the minimum aggregated matching cost:
(22)d-Ref(x,y)=argmin⁡d∈[0,1,…,dmax⁡]C-(x,y,d),
where [0,1,…,dmax⁡] is the disparity search space with dmax⁡ being the maximum possible disparity value.The initial disparity map normally contains obscured outlier regions. The disparities at these regions are significantly different when they are found from different reference images. Ifd-RefLeft and d-RefRight are the disparities with the left and right images as reference images, respectively, we can apply the Left-Right Consistency Check (LRC) [23] to determine if a pixel is located at an obscured region:
(23)|d-RefLeft(x,y)-d-RefRight(x-d-RefLeft(x,y),y)|>1,|d-RefRight(x,y)-d-RefLeft(x+d-RefRight(x,y),y)|>1.Once the obscured regions are found, occlusion handling [24] can be applied to patch them with the smallest disparity values of nearby regions, and the corresponding costs are also assigned for disparity refinement, as to be used in the next subsection.


### 2.4. Disparity Refinement

The disparity map obtained by the method proposed in the last section is discrete, since the disparity search space is an integer set. We propose a smoothing technique for the disparity refinement in this subsection.Considering that the initial disparity has the smallest aggregation cost in the potential solution space, we may interpolate for refined value by fitting data sets to upward curves. Besides, rather than directly using the neighboring disparity for refinement, we use both the costs and disparity in the curve-fitting.Assuming thatC-(x,y,d-) is the cost value corresponding to disparity d¯ at (x,y) on the reference image, we denote C-d-≜C-(x,y,d-), such that C-d-+1≜C-(x,y,d-+1) and C-d--1≜C-(x,y,d--1), to simplify the following presentation.Firstly, the disparity-cost sets around the pixel,(d--1,C-d--1), (d-,C-d-), and (d-+1,C-d-+1), are fitted to a hyperbolic function
(24)φ=f(ξ)=a1ξ+a2ξ+a3,wherea1,a2,a3∈R,a1>0,a2>0.As the minimum value of the curve is located atd-1*=a2/a1, we have that
(25)d-1*=(d-3-d-)(C-d-+1+C-d--1-2C-d-)d-(C-d-+1+C-d--1-2C-d-)+C-d-+1-C-d--1.Secondly, an upward parabola equation(26)θ=g(ζ)=b1ζ2+b2ζ+b3,whereb1,b2,b3∈R,b1>0,b2<0
is used to fit other disparity-cost sets around the pixel, (d--2,C-d--2), (d-,C-d-), and (d-+2,C-d-+2). As the minimum value of the parabola is located at d-2*=-b2/2b1, we have
(27)d-2*=d--C-d-+2-C-d--2C-d-+2+C-d--2-2C-d-.The averaged value,d-*=(d-1*+d-2*)/2, is then used as the refined disparity.


## 2.1. Cost Definition

Assuming that the image pair is rectified and horizontally aligned, two dissimilarity measures between the pixels on the reference image and the target image are used in this work.The truncated absolute difference cost,eD, is defined as the absolute difference between the intensity of pixels with the corresponding pixel being shifted d pixels, along horizontal direction on the reference image:
(1)eD(x,y,d)=min⁡[∑n=13|IR(x,y,n)-IT(x+d,y,n)|,hD],
where IR and IT are the intensities of the pixels on reference and target images with n=1,2,3 corresponding to three-channel colors: R, G, and B, respectively, (x,y) are pixel coordinates, and hD is a threshold value for eD with hD>0. The use of a threshold to restrict cost value has been a well-adopted practice to reduce the effects of noise and potential mismatch in obscured regions.Besides, the truncated absolute gradient difference cost is defined as(2)eG(x,y,d)=min⁡[∑n=13|∇xIR(x,y,n)-∇xIT(x+d,y,n)|+∑n=13|∇yIR(x,y,n)-∇yIT(x+d,y,n)|,hG],
where ∇x and ∇y are the horizontal and vertical gradient operators, respectively, and hG is a threshold value for eG with hG>0.


## 2.2. Cost Aggregation

Aggregation of primary costs determines correctness and accuracy of disparity estimation [19–21]. Based on the observation that costs, such as the absolute difference and the absolute gradient difference, represent different dissimilarity characteristics, they should be independently weighted in aggregation. This section proposes a new method that is compatible with separable successive weighted summation (SWS) [18] while efficiently provides decoupled dissimilarity aggregation for robust stereo matching.Once theeD and eG cost measures are obtained, as was defined in the last subsection, the aggregated cost function C- is set as the weighted sum of both measures according to a weighting factor, λ:
(3)C-(x,y,d)=λ∑i=1m∑j=1nWixWjyeD(i,j,d)+(1-λ)∑i=1m∑j=1nUixUjyeG(i,j,d)≜λC^D(x,y,d)+(1-λ)C^G(x,y,d).In (3), definition of the weightings, Wix, Wjy, Uix, and Ujy, are based on the operational principles of bilateral filters [22] to dramatically reduce computation:
(4)Wix={∏k=i+1xexp⁡(∑n=13[IR(k,y,n)-IT(k-1,y,n)]2-2α),i<x1,i=x∏k=x+1iexp⁡(∑n=13[IR(k,y,n)-IT(k-1,y,n)]2-2α),i>x(5)Wjy={∏k=j+1yexp⁡(∑n=13[IR(x,k,n)-IT(x,k-1,n)]2-2α),j<y1,j=y∏k=y+1jexp⁡(∑n=13[IR(x,k,n)-IT(x,k-1,n)]2-2α),j>y(6)Uix={∏k=i+1xexp⁡(∑n=13[∇xIR(k,y,n)-∇xIT(k-1,y,n)]2-2β),i<x1,i=x∏k=x+1iexp⁡(∑n=13[∇xIR(k,y,n)-∇xIT(k-1,y,n)]2-2β),i>x(7)Ujy={∏k=j+1yexp⁡(∑n=13[∇yIR(x,k,n)-∇yIT(x,k-1,n)]2-2β),j<y1,j=y∏k=y+1jexp⁡(∑n=13[∇yIR(x,k,n)-∇yIT(x,k-1,n)]2-2β),j>y.The values ofWix and Wjy increase with smaller eD, while the values of Uix and Ujy rise with lesser eG. Also, the weightings are the multiples of horizontal and vertical weightings, which decrease with the increase of distances to the reference pixels. Hence, for each pixel, neighboring pixels with similar intensity have higher support during the aggregation.The aggregation is a two-dimensional convolution. To reduce the computational complexity, each convolution is further decomposed into four one-dimensional convolutions [18]. These one-dimensional convolutions operate from left to right, from right to left, from top to bottom, and from bottom to top, respectively.Let us take the absolute difference part ofC¯, denoted as C^D in (3), as an example. If we define the left-to-right weighted sum, CDL2R, as
(8)CDL2R(x,j,d)≜∑i=1x-1WixeD(i,j,d)+eD(x,j,d),
from the definition of Wix, (4):
(9)Wix=Wi(x-1)W(x-1)x,
we have that CDL2R can be written in a recursive form
(10)CDL2R(x,j,d)=∑i=1x-2WixeD(i,j,d)+W(x-1)xeD(x-1,j,d)+eD(x,j,d)=W(x-1)x[∑i=1x-2Wi(x-1)eD(i,j,d)+eD(x-1,j,d)∑i=1x-2Wi(x-1)eD(i,j,d)]+eD(x,j,d)=W(x-1)xCDL2R(x-1,j,d)+eD(x,j,d).
Similarly, we may define the right-to-left weighted sum, CDR2L, as
(11)CDR2L(x,j,d)≜∑i=x+1mWixeD(i,j,d)+eD(x,j,d),
which can also be written in a recursive form
(12)CDR2L(x,j,d)=Wx(x+1)CDR2L(x+1,j,d)+eD(x,j,d).We have that(13)C^D(x,y,d)=∑j=1n∑i=1mWjyWixeD(i,j,d)=∑j=1nWjy[∑i=1mWixeD(i,j,d)]=∑j=1nWjy[∑i=1x-1WixeD(i,j,d)+eD(x,j,d)+∑i=x+1mWixeD(i,j,d)]=∑j=1nWjy[CDL2R(x,j,d)+CDR2L(x,j,d)-eD(x,j,d)]≜∑j=1nWjyCDH(x,j,d).Note that, in (13), we have defined
(14)CDH(x,j,d)≜CDL2R(x,j,d)+CDR2L(x,j,d)-eD(x,j,d)
to simplify the following derivation.In the vertical direction, if we define the top-to-bottom and bottom-to-top weighted sums,CDT2B and CDB2T, as
(15)CDT2B(x,y,d)≜∑j=1y-1WjyCDH(x,j,d)+eD(x,y,d)CDB2T(x,y,d)≜∑j=y+1nWjyCDH(x,j,d)+eD(x,y,d),
we have that
(16)C^D(x,y,d)=CDT2B(x,y,d)+CDB2T(x,y,d)-eD(x,y,d).In calculating (16), both CDT2B and CDB2T are recursively obtained as
(17)CDT2B(x,y,d)=W(y-1)yCDT2B(x,y-1,d)+eD(x,y,d),CDB2T(x,y,d)=Wy(y+1)CDB2T(x,y+1,d)+eD(x,y,d).Hence, the first part of the aggregated cost,C^D, can be efficiently calculated by (10), (12), and (17).With similar procedure, we have that(18)C^G(x,y,d)=CGT2B(x,y,d)+CGB2T(x,y,d)-eG(x,y,d),
where
(19)CGT2B(x,y,d)≜∑j=1y-1UjyCGH(x,j,d)+eG(x,y,d),CGB2T(x,y,d)≜∑j=y+1nUjyCGH(x,j,d)+eG(x,y,d)
with
(20)CGH(x,j,d)=CGL2R(x,j,d)+CGR2L(x,j,d)-eG(x,j,d),CDL2R(x,j,d)≜∑i=1x-1WixeD(i,j,d)+eD(x,j,d),CDR2L(x,j,d)≜∑i=x+1mWixeD(i,j,d)+eD(x,j,d).These terms can all be written in the following recursive form:(21)CGT2B(x,y,d)=U(y-1)yCGT2B(x,y-1,d)+eG(x,y,d),CGB2T(x,y,d)=Uy(y+1)CGB2T(x,y+1,d)+eG(x,y,d),CGL2R(x,j,d)=U(x-1)xCGL2R(x-1,j,d)+eG(x,j,d),CGR2L(x,j,d)=Ux(x+1)CGR2L(x+1,j,d)+eG(x,j,d).


## 2.3. Disparity Computation

In the last section, the matching cost is aggregated through weighted summation over the entire image, nd the disparity which provides minimum cost is assigned to the corresponding pixel. That is, the assigned disparity for a pixel in the reference image,Dref, is the one with the minimum aggregated matching cost:
(22)d-Ref(x,y)=argmin⁡d∈[0,1,…,dmax⁡]C-(x,y,d),
where [0,1,…,dmax⁡] is the disparity search space with dmax⁡ being the maximum possible disparity value.The initial disparity map normally contains obscured outlier regions. The disparities at these regions are significantly different when they are found from different reference images. Ifd-RefLeft and d-RefRight are the disparities with the left and right images as reference images, respectively, we can apply the Left-Right Consistency Check (LRC) [23] to determine if a pixel is located at an obscured region:
(23)|d-RefLeft(x,y)-d-RefRight(x-d-RefLeft(x,y),y)|>1,|d-RefRight(x,y)-d-RefLeft(x+d-RefRight(x,y),y)|>1.Once the obscured regions are found, occlusion handling [24] can be applied to patch them with the smallest disparity values of nearby regions, and the corresponding costs are also assigned for disparity refinement, as to be used in the next subsection.


## 2.4. Disparity Refinement

The disparity map obtained by the method proposed in the last section is discrete, since the disparity search space is an integer set. We propose a smoothing technique for the disparity refinement in this subsection.Considering that the initial disparity has the smallest aggregation cost in the potential solution space, we may interpolate for refined value by fitting data sets to upward curves. Besides, rather than directly using the neighboring disparity for refinement, we use both the costs and disparity in the curve-fitting.Assuming thatC-(x,y,d-) is the cost value corresponding to disparity d¯ at (x,y) on the reference image, we denote C-d-≜C-(x,y,d-), such that C-d-+1≜C-(x,y,d-+1) and C-d--1≜C-(x,y,d--1), to simplify the following presentation.Firstly, the disparity-cost sets around the pixel,(d--1,C-d--1), (d-,C-d-), and (d-+1,C-d-+1), are fitted to a hyperbolic function
(24)φ=f(ξ)=a1ξ+a2ξ+a3,wherea1,a2,a3∈R,a1>0,a2>0.As the minimum value of the curve is located atd-1*=a2/a1, we have that
(25)d-1*=(d-3-d-)(C-d-+1+C-d--1-2C-d-)d-(C-d-+1+C-d--1-2C-d-)+C-d-+1-C-d--1.Secondly, an upward parabola equation(26)θ=g(ζ)=b1ζ2+b2ζ+b3,whereb1,b2,b3∈R,b1>0,b2<0
is used to fit other disparity-cost sets around the pixel, (d--2,C-d--2), (d-,C-d-), and (d-+2,C-d-+2). As the minimum value of the parabola is located at d-2*=-b2/2b1, we have
(27)d-2*=d--C-d-+2-C-d--2C-d-+2+C-d--2-2C-d-.The averaged value,d-*=(d-1*+d-2*)/2, is then used as the refined disparity.


## 3. Experimental Study

In contrast to the approach of [18], the proposed algorithm applied independent weights to the mismatch measures while preserving comparable computational efficiency. Below, we rewrite the aggregated cost function, (3), for comparison:
(28)C-(x,y,d)=λ∑i=1m∑j=1nWixWjyeD(i,j,d)+(1-λ)∑i=1m∑j=1nUixUjyeG(i,j,d).The aggregated cost function of [18] is equivalent to
(29)C′(x,y,d)=∑i=1m∑j=1nW¯ixW¯jy[μeD(i,j,d)+(1-μ)eCENSUS(i,j,d)],
where eCENSUS is the Census measure [25, 26]. It is clear from the comparison between (28) and (29) that the proposed algorithm (28) enables separate weightings on different measures in the aggregation.A performance comparison between the proposed method and the algorithm of [18], denoted as InfoPerm [18], using the Middlebury stereo test bench [27, 28] is presented in Figure 1. In the computation, the parameters of the proposed algorithm, hD, hG, α, β, and λ, are selected as 22, 38, 32, 23, and 0.6, respectively.A comparison of disparity estimation performance between [18] and the proposed algorithms. Top-to-bottom: (1) first row: images (Tsukuba, Venus, Teddy, and Cones) from Middlebury stereo database, (2) second row: ground truth disparity maps, (3) third row: disparity maps by the InfoPerm [18] algorithm, (4) fourth row: mismatches of the InfoPerm [18] algorithm, (5) fifth row: disparity maps by the proposed algorithm, and (6) sixth row: mismatches of the proposed algorithm.
(a)
(b)
(c)
(d)
(e)
(f)In Figure1, and hence the following presentations, disparities with errors larger than 0.5 disparity levels are named as mismatches, which are denoted in gray at non-occluded regions and black for occluded regions. The percentages of mismatches are further calculated and summarized in Table 1, which shows that the proposed algorithm outperforms InfoPerm [18] in correctness at non-occluded regions in the benchmark tests.Table 1
Comparison of percentage of miss-matches among the proposed algorithm and [18] in nonoccluded regions.
Image set
Algorithm
Proposed
InfoPerm [18]
Tsukuba
3.53%
5.99%
Venus
0.34%
1.32%
Teddy
6.09%
6.20%
Cones
3.60%
4.58%In addition to InfoPerm [18], several state-of-the-art methods, such as SNCC [12], HistAggr2 [10], RTCensus [11], InfoPerm [18], AdaptWeight [9], FeatureGC [13], ObjectStereo [15], and AdaptingBP [16] were also implemented on the Middlebury stereo test bench [25, 26] for a complete performance comparison. Among them, SNCC [12], HistAggr2 [10], RTCensus [11], InfoPerm [18], and AdaptWeight [9] are local stereo match algorithms, while FeatureGC [13], ObjectStereo [15], are AdaptingBP [16] are global techniques.Figure2 shows a comparison of the disparity maps between RTCensus [11], SNCC [12], AdaptWeight [9] and the proposed approach, where all the disparity maps have been refined. The results show that the proposed method has comparable performance with these state-of-the-art methods, and the refinement strategy, introduced in Section 2.4, is able to preserve clear boundaries.Top-to-bottom:(1) color views (Tsukuba, Venus, Teddy, and Cone), (2) ground truth disparity maps, (3) disparity maps via RTCensus [11], (4) disparity maps via SNCC [12], (5) disparity maps via AdaptWeight [9], and (6) disparity maps via the proposed approach.
(a)
(b)
(c)
(d)
(e)
(f)The complete comparison of the mismatch rates between these algorithms is summarized in Table2. In the table, “nonocc.” denotes the pixels in the non-occluded region, and “disc.” represents the discontinuous but visible pixels near the occluded regions. According to Table 2, the proposed algorithm outperforms AdaptWeight [9] in all of the mismatch evaluations, although it seems inferior to AdaptWeight [9] in generating sharp boundary, as shown in Figure 1.Table 2
Comparison of mismatch percentage among the proposed algorithm and several representative algorithms.
Algorithms
Tsukuba
Venus
Teddy
Cones
Average percent of mismatch
nonocc.
all
disc.
nonocc.
all
disc.
nonocc.
all
disc.
nonocc.
all
disc.
SNCC [12]
11.3
12.3
27.5
2.35
3.23
15.4
10.6
15.2
28.6
4.71
11.1
13.2
13.0
HistAggr2 [10]
15.2
15.7
16.4
6.44
7.00
12.5
11.5
18.2
24.4
7.90
13.7
14.2
13.6
RTCensus [11]
12.9
14.1
28.1
3.67
4.63
17.8
11.4
18.6
27.7
5.54
11.8
15.9
14.4
InfoPerm [18]
25.7
26.2
21.2
8.64
9.34
15.0
15.0
22.1
29.2
7.68
15.1
15.1
17.5
AdaptWeight [9]
18.1
18.8
18.6
7.77
8.40
15.8
17.6
23.9
34.0
14.0
19.7
20.6
18.1
FeatureGC [13]
8.22
8.86
13.3
4.58
4.73
10.1
14.7
17.0
32.5
11.5
18.0
21.0
13.7
ObjectStereo [15]
16.4
16.8
16.1
2.56
2.67
7.69
19.6
22.7
30.3
16.3
20.7
19.7
16.0
AdaptingBP [16]
19.1
19.3
17.4
4.84
5.08
7.84
12.8
16.7
26.3
7.02
13.2
14.0
13.6
Proposed
9.12
10.2
15.0
1.04
1.72
8.35
11.2
17.0
26.8
6.36
12.6
15.1
11.2
nonocc.: the pixels in the nonoccluded region; disc.: the visible pixels near the discontinuous regions.It is also interesting to note that the local stereo matching algorithms, such as RTCensus [11] and SNCC [12], outperform other algorithms for the Teddy and Cones image pairs. Nevertheless, the global stereo matching algorithms, such as FeatureGC [13] and AdaptingBP [16], perform better for the Tsukuba and Venus image pairs. This observation indicates that both the local and global approaches are case-sensitive. However, the proposed approach has comparable performance in all of the cases and has the lowest mismatch rate in the benchmark evaluation.


## 4. Conclusion

Stereo matching algorithms are crucial for correct and accurate depth estimation in passive stereo vision systems. A stereo matching algorithm processes rectified stereo image pairs to generate the disparity map, which is used to calculate the depth image (z-map), and hence the 3D point cloud in camera coordinates. For practical applications, the algorithms should require less computational resources and provide precise disparity maps.In this paper, we proposed an efficient stereo matching algorithm and a refinement strategy for the disparity maps. The algorithm effectively aggregates cost values in terms of bilateral filtering by only four passes along regions, which is able to provide a decoupled dissimilarity measure aggregation while preserving computational efficiency. Besides, the refinement strategy is a simple application of the aggregated costs that use both the costs and disparity in the curve-fitting, rather than directly using the neighboring disparity for refinement.Experimental results using the Middlebury stereo test bench [25, 26] show that the algorithm has comparable performance with the state-of-the-art algorithms and outperforms the representative algorithms in the overall mismatch rate.



---

*Source: 127284-2014-01-16.xml*