PSI: Patch-based script identification using non-negative matrix factorization. (July 2017)