initial upload image implementation