Machine vision and applications