CSCI1430 : Project 2 pb-lite: Boundary Detection

yunzhang

The goal of this assignment is to implement a light weighted pb boundary detector - pb-lite - combining with Canny detector.

Algorithm

  1. Creating Filter Bank
  2. We added an extra center surround filter in the filter bank as suggested in Arbelaez et al. 2011. The two gaussian kernels here we chose have variances of Sigma=1 and Sigma=1.1 respectively. The difference between the two sigma values seems need to be small because a big difference will lead to a big puddle in the center and very small bump on the edge, which should not be an ideal shape to be a band-pass filter. One can experiment with more DOG filter to see if it can help improve final result further.
  3. Create Oriented Masks
  4. We computed the half disc masks on 3 scales and 8 orientations as proposed on handout. We also tried to use a half-gaussian masks instead of binary masks, while it didn't contribute to the performance.
  5. Compute gradient for texture, brightness and color
  6. To compute the gradient for texture and brightness we used the algorithm suggested on the handout. To compute the gradient of color, we first convert the image from RGB color space to CIE L*a*b* space, then compute the gradient vector separately on both a* and b* channel. Pictures below show the mean of metrics of each kind. Input image is show in Test 7. Here we can see how these three different gradient metrics responses to texture, brightness and color changes.
  7. Combine pixel-wise gradient metrics with canny baseline
  8. We combine reulst from tg, bg and cg into a big 3-dimensional matrix. For each pixel, this is a feature vector of length 3*8*4= 96. We then take means of these 96-D vectors as our pb score for each pixel. Below is our combined metrics for each pixel.

Extra Credit

  1. Color gradients are used as features. Computation is done in CIE L*a*b* space.
  2. A center-surround filter is added in filter bank.

Results

Leftmost: input image; 2nd column: Sobel detector; 3rd column: Canny Detector; Rightmost: Our results

P-R Curve: Baseline:

P-R Curve: Canny + texture gradient + brightness gradient:

P-R Curve: Canny + tg + bg + color gradient:


We can see by adding color information, we gain big performance improvement.


P-R Curve: Canny + tg + bg + cg + an extra center-surround filter in filter bank:

Adding a center-surround filter doesn't improve results a lot. We may want to try adding more these kinds of filters to cover more frequency bands.