In simple terms, this is impossible. However you try to prevent it, in the end, even an non-savvy web user can just take a screenshot of your web site.
However, as a simple deterrent you can just create a <div> that is the same dimensions as your image, and then set the image as background to this <div> via CSS. Then when a user right clicks on an image to download it, this option won't appear in the menu. It should also prevent this image from appearing in search engine search results as it is only referenced in CSS.