we consider pixels on the shape only for computing the shape context as it does not make any sense to take any pixels not belonging to the shape. but then we are already assuming that all non-zero pixels in the image form the shape, so I'll change that