You could use the image viewer widget to call a microflow when the image is clicked. This microflow can have a parameter of the image that you are showing so that you can pass it to a new page.
To setup the widget, place it in a dataview with a data source of the image that you are trying to show or in a dataview with a datasource that has an association to the image that you want to show. Then in your widget properties you can select the data source and set the on click action.
Your microflow will have a parameter of the image that you are showing, and then you can use the show page activity to open a new page and pass the image object.
Hope this helps!
Thanks for the feedback. That's pretty much what I've got.
Here's my domain model:
and here's the page that gets called