1. A mobile platform comprising: a base structure; a drive mechanism coupled to the base structure; a machine vision system including: an optical input module configured to capture an image in the form of a signal; a pre-processing module configured to: receive the signal from the optical input module, convert the signal into a first digital image, set a first threshold comprising: 
 I L =max{ i|f ( i −δ)> f ( i ), f ( i +δ)> f ( i )} set a second threshold comprising: 
 I R =min{ j|f ( j −δ)> f ( j ), f ( j +δ)> f ( j )} wherein i and j are each an intensity, f(i) is a number of pixels having the intensity i found from an intensity histogram, and δ is a resolution parameter; invert the first digital image; an image normalizing module configured to normalize the inverted digital image by: setting a first plurality of pixels in the inverted digital image having an intensity less than the first threshold or greater than the second threshold to a first predetermined intensity, and setting a second plurality of pixels in the inverted digital image having an intensity greater than or equal to the first threshold or less than or equal to the second threshold to a second predetermined intensity; an edge detection module configured to: receive the normalized digital image, and perform edge detection on the normalized digital image, thereby outputting a bounding graph indicating edges of detected objects in the image; and a detection module configured to: receive the bounding graph, determine local maximums and zeros in the bounding graph, and determine a dynamic mask based on the local maximums and zeros, wherein the dynamic mask is applied to a second digital image to determine the presence of an object.