extract features method added