1. A method for specifying a machine vision process, the method comprising: displaying an image on a display; displaying a graphical user interface on the display, wherein the graphical user interface comprises a plurality of possible image processing steps; receiving user input selecting a plurality of image processing steps to be applied to the image; creating a process specification in response to the user input, wherein the process specification comprises the plurality of image processing steps, wherein the process specification specifies a first portion of the machine vision process; and creating a block diagram in response to user input, wherein the block diagram specifies a second portion of the machine vision process; wherein the process specification and the block diagram collectively specify the machine vision process.