Just use the standard image upload widget (make sure that if you use it in a single object that the image object is created first).
Please read this post on how to do it:
Then read this post on how to add images dynamically into a PDF file:
...Instead of adding them dynamically into a PDF, you can also use the PDF template to show images. To show multiple images in your generated PDF, add a template grid to your template and show the images in there using the dynamic image viewer.