My bad, I thought txtText was String?. It's always a good idea to name your variables more descriptively, i.e. in this case, instead of txtText, call it textLabel.
Cannot convert value of type 'UITextField' to expected argument type 'String'
The error here is pretty self-explanatory. You're passing a UITextField to something that expects a String. Since txtText is a UITextField, you need to get the text from it and pass that.
So,
guard let textField = self.txtText, let url = url else { return }
self.saveImage(name: textField.text, profileURL: url) { success in ...}
Hard to tell without the full code. Have you set Photos Library usage in Info.plist? Implemented the func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [UIImagePickerController.InfoKey : Any]){} delegate function from UIImagePickerControllerDelegate?