Just some quick ideas off the top of my head:
When you press SPACE:
- Use Find Next Child to loop through the ball prefabs on the stage(since there are only 5), get distance, compare with a value for the range you can pick up in (eg. 1 meter), if it's within that range, pick up (set parent to character)! That's the most basic and quickest way i can think of. You can also do a quick Has Child on the character to check if you are already carrying something and if yes, set the child of that back to wherever it was and bypass the whole distance loop. Throw in a check for rotation too so you know it's in front of you.
Drawbacks: I hear distance checks are a little heavy. The loop will grab the first one that it checks thats in range (even if the next one in the loop is closer) and grab that.
-Use Colliders on your character and the balls and on SPACE, check if there are any balls colliding with your character. Add all of them to an array. Check what is closest to being in front of you. You can go with what i said above and also parent to the character, or do it your way etc. etc.
Colliders are probably the best way to go. There's always quite a few different approaches. And there is alot you need to consider. When picking up the ball, you don't want it rolling around anymore. So you have to enable and disable that together with picking up and dropping. You can use an action to move the ball directly in front of your character when it has picked one up, instead of having it always at the angle it was picked up on. And so on...