1
$\begingroup$

I'm reading a research paper (for the curious, it's from the field of image processing: Curvature-Based Stroke Rendering by S. Saito et al), and I'm stuck on page 4 trying to understand this equation:

$ n = \cases{ 1, (\hat{N_{i}} \otimes(v_i - v_{i-1})) \cdot V_z > 0\cr 0, otherwise } $

$v_i$ and $v_{i-1}$ are consecutive points (vectors) lying on a curve, $\otimes$ is the operator of the outer product, $\hat{N_{i}}$ is the normalized opposite vector of the curvature radius at $v_i$, and $V_z$ is a constant vector normal to the image plane.

I'm new to the concept of outer products. Can someone please explain to me how the dot product of an outer product (which, from what I understand, can be thought of as a directed area) and a vector gives us a scalar (because it's being compared to the scalar $0$)?

I tried to work out a simple example like so, but in vain:

Let $ \hat{N_{i}} = 1 \hat{i} + 0.1 \hat{j} + 0 \hat{k}\\ v_i - v_{i-1} = -0.2 \hat{i} + 1 \hat{j} + 0 \hat{k}\\ V_z = 0 \hat{i} + 0 \hat{j} + 1 \hat{k} $

then

$ \hat{N_{i}} \otimes(v_i - v_{i-1}) = \left\lbrack\matrix{1 \cr 0.1 \cr 0}\right\rbrack \left\lbrack\matrix{-0.2 & 1 & 0}\right\rbrack = \left\lbrack\matrix{-0.2 & 1 & 0 \cr -0.02 & 0.1 & 0 \cr 0 & 0 & 0}\right\rbrack $

and

$ (\hat{N_{i}} \otimes(v_i - v_{i-1})) \cdot V_z = \left\lbrack\matrix{-0.2 & 1 & 0 \cr -0.02 & 0.1 & 0 \cr 0 & 0 & 0}\right\rbrack \left\lbrack\matrix{0 \cr 0 \cr 1}\right\rbrack = \left\lbrack\matrix{0 \cr 0 \cr 0}\right\rbrack $

which is a vector (and, as far as I can see, this vector will always be $= \vec{0}$ by my computation!), which means I'm going horribly wrong somewhere.

  • 0
    @Shiyu following the doubt with $\otimes$ operator, I'd sent an email to the author of the research paper. He replied saying they'd made a mistake, and that the $\otimes$ actually represents cross product here. So I guess this question stands resolved. I'll just answer it myself.2012-10-12

1 Answers 1

2

I emailed the author of the research paper asking for a clarification about the meaning of the notations in the equation, and it turns out there was an error in it: the $\otimes$ operator actually represents a cross product here, not an outer product. So the equation makes perfect sense: $\hat{N_i}\otimes(v_i−v_{i−1})$ gives a vector along the z-axis, which on a dot product with $V_z$ gives us a scalar.