Возможны проблемы если файл только для чтения?
или он действительно занят другим процессом.
P.s. А попробуй создать 2 файла. Img1 , Img2. Загружаешь Img1 выполняешь действия а сохраняешь в Img2. если произойдет удачно, тогда просто не освобождаешь дескриптор.