Use a container field with global storage.
Have the user upload their image file by inserting the file into this container, but without the store a reference option enabled.
Then you export Field contents to export the file to the shared directory where you want it to be stored.
Now insert the file from the shared directory with the store a reference option enabled, into the desired container field and record.
This can all be scripted so that the user clicks a button, gets an open file dialog where they locate and select the file to be inserted and then the script takes it from their to put the file where it needs to be.