The overall objective of the research is to automate the contruction of computer programs for machine vision, thus reducing the cost of vision systems, and expanding the scope of their applicability to industrial tasks. Automatic vision programming entails two major steps: feature selection, and program construction. The major goal of the project is to develop automatic vision programming techniques that combine two previously developed feature selection techniques construction of a search tree for a given task entailing object recognition and location. The proposed system would semi-automatically generate a complete and realistic list of potentially useful object features and evaluate their effectiveness, identify the best sequence of features for a matcher's backtracking search tree, and allow the programmer to debug and refine the program interactively.