Selectable Image Grid for Data Explorer Application

Hi, I am working on a image based data explorer and want to show the images in a grid like layout with filters in side bar, so user can apply filters and traverse through images and select one/multiple images by clicking on them.

I tried to show images with st.columns() but also want to implement selection of images. Based on selected images, I need to create a list of them to process further so would need some ID also for each image.

I am new to streamlit so I may not aware of all functionalities/features, kindly suggest a way to achieve above requirements.

Thanks in advance!!

See if these 2 links help: