added image frame implementation