wunderkinds07 commited on
Commit
708388b
·
verified ·
1 Parent(s): 8801173

Create app.py

Browse files
Files changed (1) hide show
  1. app.py +70 -0
app.py ADDED
@@ -0,0 +1,70 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import gradio as gr
2
+ from datasets import load_dataset
3
+ import os
4
+
5
+ # Set your HF token
6
+ HF_TOKEN = os.getenv("HF_TOKEN")
7
+
8
+ # Load dataset (streaming mode for large datasets)
9
+ dataset = load_dataset(
10
+ "Aowrow/behance_interiordesign",
11
+ split="train",
12
+ streaming=True,
13
+ token=HF_TOKEN
14
+ )
15
+
16
+ def get_images(num_images=50, start_idx=0):
17
+ """Get a batch of images from the dataset"""
18
+ images = []
19
+ for i, example in enumerate(dataset):
20
+ if i < start_idx:
21
+ continue
22
+ if len(images) >= num_images:
23
+ break
24
+ if 'image' in example:
25
+ images.append(example['image'])
26
+ return images
27
+
28
+ def show_gallery(num_images, start_idx):
29
+ images = get_images(num_images, start_idx)
30
+ return images
31
+
32
+ # Create Gradio interface
33
+ with gr.Blocks(title="Behance Interior Design Dataset Viewer") as demo:
34
+ gr.Markdown("# 🏠 Behance Interior Design Dataset Viewer")
35
+ gr.Markdown("Browse 500K+ interior design images from Behance")
36
+
37
+ with gr.Row():
38
+ num_images = gr.Slider(
39
+ minimum=10,
40
+ maximum=100,
41
+ value=50,
42
+ step=10,
43
+ label="Images to Display"
44
+ )
45
+ start_idx = gr.Number(
46
+ value=0,
47
+ label="Start from Image #",
48
+ precision=0
49
+ )
50
+
51
+ btn = gr.Button("Load Images")
52
+ gallery = gr.Gallery(
53
+ label="Interior Design Images",
54
+ columns=5,
55
+ height="auto"
56
+ )
57
+
58
+ btn.click(show_gallery, inputs=[num_images, start_idx], outputs=gallery)
59
+
60
+ # Load initial batch
61
+ demo.load(show_gallery, inputs=[num_images, start_idx], outputs=gallery)
62
+
63
+ demo.launch()
64
+ ```
65
+
66
+ **File 2: `requirements.txt`**
67
+ ```
68
+ gradio>=4.0.0
69
+ datasets
70
+ Pillow