$s3->GetObject({ Bucket => $bucket, Key => $filename, }); # use Image::Imlib2 to generate other sizes $s3->PutObject({ Bucket => $bucket, Key => $new_filename, Acl => 'public-read', headers => { 'Content-Type' => 'image/jpg' }, content => $content, });