Parallel implementation of the N-FINDR endmember extraction algorithm on commodity graphics processing units