supplementary material for “learning structured...

3
Supplementary Material for “Learning Structured Hough Voting for Joint Object Detection and Occlusion Reasoning” Tao Wang Xuming He Nick Barnes NICTA & Australian National University, Canberra, ACT, Australia {tao.wang, xuming.he, nick.barnes}@nicta.com.au In this supplementary material, we include more details on our model and several additional results on both datasets. First, we provide detailed derivation of inference and learn- ing algorithms used in our model, which is followed by more experimental results and analysis. 1. Details on inference and learning For clarity, we introduce the following notations for our scoring functions (i.e., Eqns. 5 and 6 in the main paper), which will be used throughout this section: μ l i = ω l i μ l μ l ij = ω l ij μ l (1) 1.1. Quadratic scoring function for inference We first provide our derivation of the coordinate-ascent method used in the alternating inference, which searches for the best scoring x and v. The overview of our method is given in Algorithm 1 in the main paper. We now show how to rewrite the scoring function S(x, v) as its quadratic form w.r.t. v. Note that γ (v(y)) = (1 - δ)v(y)+ δ. So we can write the first term (i.e., the global mask term) in Eqn. 5 as S c1 (x, v)= 4 X l=1 K l X i=1 ω l i v T (2) " X y (1 - δ)v(y)m G l,i (x, y)p(C l i |y) + δm G l,i (x, y)p(C l i |y) - w l b # = 4 X l=1 K l X i=1 " v T ω l i X y (1 - δ)m G l,i (x, y)p(C l i |y) v + v T ω l i X y δm G l,i (x, y)p(C l i |y) - w l b # The other terms in Eqn. 5 and Eqn. 6 can be written in this form similarly. Summing those terms together, we have the following overall scoring function: S(x, v)= v T A(x)v + v T B(x) (3) where A(x)= ω l i y (1 - δ)m G l,i (x, y)p(C l i |y) . . . μ l i y (1 - δ)m L l,i (x, y)p(C l i |y) . . . ω l ij y (1 - δ)(m G 1,i m G l,j ) · ϕ . . . μ l ij y (1 - δ)(m L 1,i m L l,j ) · ϕ . . . , (4) B(x)= ω l i y δm G l,i (x, y)p(C l i |y) - w l b . . . μ l i y δm L l,i (x, y)p(C l i |y) - w l b . . . ω l ij y δ(m G 1,i m G l,j ) · ϕ - w 1,l b . . . μ l ij y δ(m L 1,i m L l,j ) · ϕ - w 1,l b . . . , (5) where and are the element-wise product and addition operators, respectively. Please refer to Eqn. 5 for the defi- nition of the variables. 1.2. Learning with a max-margin formulation We utilize the max-margin Hough transform [2] frame- work to train our codebook entry and entry pair weight pa- rameters w = {ω l i l j l ij l ij }. During training, our scor- ing function S(x, v) can be interpreted as a weighted sum 1

Upload: others

Post on 26-Apr-2020

14 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Supplementary Material for “Learning Structured …vigir.missouri.edu/~gdesouza/Research/Conference_CDs/...Supplementary Material for “Learning Structured Hough Voting for Joint

Supplementary Material for “Learning Structured Hough Voting forJoint Object Detection and Occlusion Reasoning”

Tao Wang Xuming He Nick BarnesNICTA & Australian National University, Canberra, ACT, Australia

{tao.wang, xuming.he, nick.barnes}@nicta.com.au

In this supplementary material, we include more detailson our model and several additional results on both datasets.First, we provide detailed derivation of inference and learn-ing algorithms used in our model, which is followed bymore experimental results and analysis.

1. Details on inference and learningFor clarity, we introduce the following notations for our

scoring functions (i.e., Eqns. 5 and 6 in the main paper),which will be used throughout this section:

µli = ωliµl

µlij = ωlijµl (1)

1.1. Quadratic scoring function for inference

We first provide our derivation of the coordinate-ascentmethod used in the alternating inference, which searchesfor the best scoring x and v. The overview of our method isgiven in Algorithm 1 in the main paper. We now show howto rewrite the scoring function S(x,v) as its quadratic formw.r.t. v. Note that γ(v(y)) = (1− δ)v(y) + δ. So we canwrite the first term (i.e., the global mask term) in Eqn. 5 as

Sc1(x,v) =

4∑l=1

Kl∑i=1

ωlivT (2)[∑

y

((1− δ)v(y)mG

l,i(x,y)p(Cli |y)

+ δmGl,i(x,y)p(C

li |y)− wlb

)]

=

4∑l=1

Kl∑i=1

[vT(ωli∑y

(1− δ)mGl,i(x,y)p(C

li |y)

)v

+ vT(ωli∑y

δmGl,i(x,y)p(C

li |y)− wlb

)]

The other terms in Eqn. 5 and Eqn. 6 can be written in

this form similarly. Summing those terms together, we havethe following overall scoring function:

S(x,v) = vTA(x)v + vTB(x) (3)

where

A(x) =

ωli∑

y(1− δ)mGl,i(x,y)p(C

li |y)

...µli∑

y(1− δ)mLl,i(x,y)p(C

li |y)

...ωlij∑

y(1− δ)(mG1,i �mG

l,j) · ϕ...

µlij∑

y(1− δ)(mL1,i ⊕mL

l,j) · ϕ...

, (4)

B(x) =

ωli∑

y δmGl,i(x,y)p(C

li |y)− wlb

...µli∑

y δmLl,i(x,y)p(C

li |y)− wlb

...ωlij∑

y δ(mG1,i �mG

l,j) · ϕ− w1,lb

...µlij∑

y δ(mL1,i ⊕mL

l,j) · ϕ− w1,lb

...

, (5)

where � and ⊕ are the element-wise product and additionoperators, respectively. Please refer to Eqn. 5 for the defi-nition of the variables.

1.2. Learning with a max-margin formulation

We utilize the max-margin Hough transform [2] frame-work to train our codebook entry and entry pair weight pa-rameters w = {ωli, µlj , ωlij , µlij}. During training, our scor-ing function S(x,v) can be interpreted as a weighted sum

1

Page 2: Supplementary Material for “Learning Structured …vigir.missouri.edu/~gdesouza/Research/Conference_CDs/...Supplementary Material for “Learning Structured Hough Voting for Joint

of w so it can be trained using the objective function of themax-margin formulation as follows

minw,b,ξ

1

2wTw + C

T∑i=1

ξi

s.t. zi(wTDi + b) ≥ 1− ξi,

w < 0, ξi ≥ 0,∀i = 1, 2, . . . , T (6)

where zi is the label of the training sample, and DTi is the

activation matrix for the i-th sample defined as

DTi =

vT(∑

y γ(v(y))mGl,i(x,y)p(C

li |y)− wlb

)...

vT∑

y γ(v(y))mLl,i(x,y)p(C

li |y)

...

vT(∑

y γ(v(y))(mG1,i �mG

l,j) · ϕ− w1,lb

)...

vT∑

y γ(v(y))(mL1,i ⊕mL

l,j) · ϕ...

(7)

2. More experimental resultsIn this section we present more results of our method on

B3DO and NYU datasets, and provide detailed analysis onsome of the typical cases we observe in our experiments.

Our detailed results are presented in Fig. 1. Each rowfrom (a) to (f) corresponds to one specific object instanceon a test image. From left to right, we present (1) the RGBframe with ground-truth labellings as available in training.Specifically, these are two bounding boxes marked in greenand red respectively. The green bounding box indicatesvisible parts of the instance, while the red one indicates awhole object including both visible and invisible regions.Note that we use a separate pixelwise labelling for evaluat-ing segmentation performance. The pixelwise labelling wasmanually generated on the Berkeley 3D Object Dataset [1],while on NYU Depth Version 2 [3] it is readily available.Then, we show (2) votes from different layers for objectcentroid. From the upper-left corner, we show votes fromthe object layer (red), nearby context layer (green), occluderlayer (yellow), and faraway context layer (blue) in clock-wise direction. In (3), the next column, the aggregated votesfor the object centroid are shown. After that, we show (4)results with our alternating inference algorithm. The wholeobject hypothesis is shown as a red bounding box, with im-age cells inferred as visible highlighted in green. Next, weshow (5) the corresponding mask prediction. Finally, (6)the segmentation results based on GrabCut is presented.

2.1. Analysis of examples

The examples presented in Fig. 1 include some of themost representative results on both datasets, and reflectsvarious aspects of our model.

Firstly, we can see the multi-layer representation helpsbuild a more discriminative centroid voting codebook bysuppressing false alarms in the object layer. This can beeasily observed from examples (a), (b) and (e). Our modelallows the object layer to generate concentrated peaks whileraising or lowering the underlying terrain using the smearedvotes from contextual layers. If a local peak from the objectlayer lacks support from its surrounding context, the votewill be weakened. On the other hand, if all layers have aconsensus, the peak will be strengthened.

Secondly, our model captures the appearance of someoccluders and use that information to strengthen local cen-troid peaks, as well as carving out the shape of an object.This is inherently a very challenging task because the ap-pearance of occluders vary greatly, and our model learnstheir appearances from only coarse-level labels. Success-ful examples include (d) and (f). In contrast, although theoccluder layer gives roughly correct vote positions in (b),the shape voting breaks down on the desktop occluding thechair. In (c), the chair occluding the door is a bit ambiguousand our model fails to fully recover the correct occlusionpattern.

Finally, our model is also capable of localizing truncatedobjects, as shown in (e) and there are some similar examplesin the main paper.

References[1] A. Janoch, S. Karayev, Y. Jia, J. Barron, M. Fritz, K. Saenko,

and T. Darrell. A category-level 3-d object dataset: Puttingthe kinect to work. In ICCV Workshops, 2011. 2, 3

[2] S. Maji and J. Malik. Object detection using a max-marginhough transform. In CVPR, 2009. 1

[3] P. K. Nathan Silberman, Derek Hoiem and R. Fergus. In-door segmentation and support inference from rgbd images.In ECCV, 2012. 2, 3

Page 3: Supplementary Material for “Learning Structured …vigir.missouri.edu/~gdesouza/Research/Conference_CDs/...Supplementary Material for “Learning Structured Hough Voting for Joint

(1) RGB frame (2) layered center (3) final center (4) inference (5) mask (6) segmentation

(a)

(b)

(c)

(d)

(e)

(f)

Figure 1. More experimental results of the proposed approach on Berkeley 3D Object Dataset [1] and NYU Depth Dataset [3]. Each rowcorresponds to a specific instance on a test image. Please refer to Sec. 2 for detailed discussion.