Distinctive point extraction and recognition algorithm for various kinds of banknote counting