Update app.py
Browse files
app.py
CHANGED
@@ -35,7 +35,6 @@ def add_background_image(image_path):
|
|
35 |
def display_images(image_collection, query_text, max_distance=None, debug=False):
|
36 |
"""
|
37 |
Display images in a Streamlit app based on a query.
|
38 |
-
|
39 |
Args:
|
40 |
image_collection: The image collection object for querying.
|
41 |
query_text (str): The text query for images.
|
@@ -54,19 +53,18 @@ def display_images(image_collection, query_text, max_distance=None, debug=False)
|
|
54 |
# Combine uris and distances, then sort by URI in ascending order
|
55 |
sorted_results = sorted(zip(uris, distances), key=lambda x: x[0])
|
56 |
|
57 |
-
#
|
58 |
-
|
|
|
|
|
59 |
if max_distance is None or distance <= max_distance:
|
60 |
-
if debug:
|
61 |
-
st.write(f"URI: {uri} - Distance: {distance}")
|
62 |
try:
|
63 |
img = PILImage.open(uri)
|
64 |
-
|
|
|
65 |
except Exception as e:
|
66 |
-
st.error(f"Error loading image
|
67 |
-
|
68 |
-
if debug:
|
69 |
-
st.write(f"URI: {uri} - Distance: {distance} (Filtered out)")
|
70 |
|
71 |
|
72 |
|
@@ -272,7 +270,7 @@ def page_2():
|
|
272 |
st.markdown(f"```markdown\n{response}\n```")
|
273 |
|
274 |
st.markdown("### Images")
|
275 |
-
display_images(image_collection, query, max_distance=1.55, debug=
|
276 |
|
277 |
st.markdown("### Videos")
|
278 |
frame = inputs["frame"]
|
|
|
35 |
def display_images(image_collection, query_text, max_distance=None, debug=False):
|
36 |
"""
|
37 |
Display images in a Streamlit app based on a query.
|
|
|
38 |
Args:
|
39 |
image_collection: The image collection object for querying.
|
40 |
query_text (str): The text query for images.
|
|
|
53 |
# Combine uris and distances, then sort by URI in ascending order
|
54 |
sorted_results = sorted(zip(uris, distances), key=lambda x: x[0])
|
55 |
|
56 |
+
# Display images side by side, 3 images per row
|
57 |
+
cols = st.columns(3) # Create 3 columns for the layout
|
58 |
+
|
59 |
+
for i, (uri, distance) in enumerate(sorted_results):
|
60 |
if max_distance is None or distance <= max_distance:
|
|
|
|
|
61 |
try:
|
62 |
img = PILImage.open(uri)
|
63 |
+
with cols[i % 3]: # Use modulo to cycle through columns
|
64 |
+
st.image(img, use_column_width=True)
|
65 |
except Exception as e:
|
66 |
+
st.error(f"Error loading image: {e}")
|
67 |
+
|
|
|
|
|
68 |
|
69 |
|
70 |
|
|
|
270 |
st.markdown(f"```markdown\n{response}\n```")
|
271 |
|
272 |
st.markdown("### Images")
|
273 |
+
display_images(image_collection, query, max_distance=1.55, debug=False)
|
274 |
|
275 |
st.markdown("### Videos")
|
276 |
frame = inputs["frame"]
|