added image processing