UIImagePicker returns without an image

Currently I'm using UIImagePickerController to allow our users to take photos within the app like so:

UIImagePickerController *picker = [UIImagePickerController new];
picker.sourceType = UIImagePickerControllerSourceTypeCamera;
picker.mediaTypes = @[(NSString *)kUTTypeImage];
picker.delegate = self;
[self presentViewController:picker animated:YES completion:nil];

And I use the delegate method to get the image out and do what is needed:

-(void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary<NSString *,id> *)info {

// Do stuff.

}

This seems to work fine for 99.9% of our users but for some reason we occasionally have an odd info dictionary with no image in it. When I print the info dictionary, it looks like this every time:

{
   UIImagePickerControllerMediaMetadata =     {
       "{MakerApple}" =         {
           25 = 0;
       };
   };
   UIImagePickerControllerMediaType = "public.image";
}

As you can see there is no UIImagePickerControllerEditedImage or UIImagePickerControllerOriginalImage in that dictionary.

Anyone have any ideas on what this is, and what I might be able to do to 'fix it' ?