Spaces:
Build error
Build error
Commit
·
080099f
1
Parent(s):
e7aada3
think CSV is almost here
Browse files
app.py
CHANGED
|
@@ -85,12 +85,18 @@ def generate_caption(processor, model, image):
|
|
| 85 |
return generated_caption
|
| 86 |
|
| 87 |
|
| 88 |
-
# Function to save dataframe results to a CSV string for download
|
| 89 |
def save_dataframe_to_csv(df):
|
| 90 |
csv_buffer = io.StringIO()
|
| 91 |
df.to_csv(csv_buffer, index=False)
|
| 92 |
csv_string = csv_buffer.getvalue()
|
| 93 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 94 |
|
| 95 |
# Main function to perform image captioning and image-text matching
|
| 96 |
def process_images_and_statements(image):
|
|
@@ -138,17 +144,17 @@ def process_images_and_statements(image):
|
|
| 138 |
return results_df, csv_results # <--- Return results_df and csv_results
|
| 139 |
|
| 140 |
# Gradio interface
|
| 141 |
-
image_input = inputs.Image()
|
| 142 |
-
output_df = outputs.Dataframe(type="pandas", label="Results")
|
| 143 |
-
output_csv = outputs.File(label="Download CSV")
|
| 144 |
|
| 145 |
iface = gr.Interface(
|
| 146 |
fn=process_images_and_statements,
|
| 147 |
inputs=image_input,
|
| 148 |
-
outputs=[output_df, output_csv],
|
| 149 |
title="Image Captioning and Image-Text Matching",
|
| 150 |
theme='sudeepshouche/minimalist',
|
| 151 |
-
css=".output { flex-direction: column; } .output .outputs { width: 100%; }"
|
| 152 |
)
|
| 153 |
|
| 154 |
iface.launch()
|
|
|
|
| 85 |
return generated_caption
|
| 86 |
|
| 87 |
|
|
|
|
| 88 |
def save_dataframe_to_csv(df):
|
| 89 |
csv_buffer = io.StringIO()
|
| 90 |
df.to_csv(csv_buffer, index=False)
|
| 91 |
csv_string = csv_buffer.getvalue()
|
| 92 |
+
|
| 93 |
+
# Save the CSV string to a temporary file
|
| 94 |
+
with tempfile.NamedTemporaryFile(mode="w+", delete=False, suffix=".csv") as temp_file:
|
| 95 |
+
temp_file.write(csv_string)
|
| 96 |
+
temp_file_path = temp_file.name # Get the file path
|
| 97 |
+
|
| 98 |
+
# Reopen the file with "rb" mode and return the file object
|
| 99 |
+
return open(temp_file_path, "rb")
|
| 100 |
|
| 101 |
# Main function to perform image captioning and image-text matching
|
| 102 |
def process_images_and_statements(image):
|
|
|
|
| 144 |
return results_df, csv_results # <--- Return results_df and csv_results
|
| 145 |
|
| 146 |
# Gradio interface
|
| 147 |
+
image_input = gr.inputs.Image()
|
| 148 |
+
output_df = gr.outputs.Dataframe(type="pandas", label="Results")
|
| 149 |
+
output_csv = gr.outputs.File(label="Download CSV")
|
| 150 |
|
| 151 |
iface = gr.Interface(
|
| 152 |
fn=process_images_and_statements,
|
| 153 |
inputs=image_input,
|
| 154 |
+
outputs=[output_df, output_csv],
|
| 155 |
title="Image Captioning and Image-Text Matching",
|
| 156 |
theme='sudeepshouche/minimalist',
|
| 157 |
+
css=".output { flex-direction: column; } .output .outputs { width: 100%; }"
|
| 158 |
)
|
| 159 |
|
| 160 |
iface.launch()
|