Mathematics Stack Exchange is a question and answer site for people studying math at any level and professionals in related fields. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

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} $$


$$ \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 $$


$$ (\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.

share|cite|improve this question
Inner product applies to two vectors. If $\otimes$ means outer product, it will be an inner product between a matrix and a vector. That's odd. Is it possible that $\otimes$ stands for the Kronecker product? – Shiyu Oct 9 '12 at 9:01
No, $\otimes$ is definitely the outer product; the paper mentions it explicitly. It does not, however, mention what the ($\cdot$) stands for. Could it be some operation other than the dot product? – Vicky Chijwani Oct 9 '12 at 9:28
I'm not sure. Since $(*)\cdot V_z>0$, the $\cdot$ results in a scalar from a matrix and a vector, so it may not be an inner product. You'd better confirm about the meaning of the notations. – Shiyu Oct 9 '12 at 15:02
I've been through the entire paper. Unfortunately they haven't mentioned anywhere what that dot means :( – Vicky Chijwani Oct 10 '12 at 5:17
@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. – Vicky Chijwani Oct 12 '12 at 11:02
up vote 1 down vote accepted

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.

share|cite|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.