1. A method of selecting an algorithm for use in processing hyperspectral data comprising: providing a set of algorithms, each having qualities for processing certain characteristics of hyperspectral data; accessing frame characteristics of the hyperspectral data; selecting at least one characteristic of the hyperspectral data; establishing a tolerance for variations in the at least one characteristic from a reference sample of the at least one characteristic; comparing the at least one characteristic in the hyperspectral data to the tolerance; and if the at least one characteristic exceeds the tolerance, selecting an algorithm from the set best associated with the at least one characteristic to process the hyperspectral data.