Afnaan04 commited on
Commit
2134839
·
verified ·
1 Parent(s): 7b29013

Upload folder using huggingface_hub

Browse files
This view is limited to 50 files because it contains too many changes.   See raw diff
Files changed (50) hide show
  1. __pycache__/generate_dataset.cpython-312.pyc +0 -0
  2. app.py +63 -0
  3. data/textures/brick/brick_0000.png +0 -0
  4. data/textures/brick/brick_0001.png +0 -0
  5. data/textures/brick/brick_0002.png +0 -0
  6. data/textures/brick/brick_0003.png +0 -0
  7. data/textures/brick/brick_0004.png +0 -0
  8. data/textures/brick/brick_0005.png +0 -0
  9. data/textures/brick/brick_0006.png +0 -0
  10. data/textures/brick/brick_0007.png +0 -0
  11. data/textures/brick/brick_0008.png +0 -0
  12. data/textures/brick/brick_0009.png +0 -0
  13. data/textures/brick/brick_0010.png +0 -0
  14. data/textures/brick/brick_0011.png +0 -0
  15. data/textures/brick/brick_0012.png +0 -0
  16. data/textures/brick/brick_0013.png +0 -0
  17. data/textures/brick/brick_0014.png +0 -0
  18. data/textures/brick/brick_0015.png +0 -0
  19. data/textures/brick/brick_0016.png +0 -0
  20. data/textures/brick/brick_0017.png +0 -0
  21. data/textures/brick/brick_0018.png +0 -0
  22. data/textures/brick/brick_0019.png +0 -0
  23. data/textures/brick/brick_0020.png +0 -0
  24. data/textures/brick/brick_0021.png +0 -0
  25. data/textures/brick/brick_0022.png +0 -0
  26. data/textures/brick/brick_0023.png +0 -0
  27. data/textures/brick/brick_0024.png +0 -0
  28. data/textures/brick/brick_0025.png +0 -0
  29. data/textures/brick/brick_0026.png +0 -0
  30. data/textures/brick/brick_0027.png +0 -0
  31. data/textures/brick/brick_0028.png +0 -0
  32. data/textures/brick/brick_0029.png +0 -0
  33. data/textures/brick/brick_0030.png +0 -0
  34. data/textures/brick/brick_0031.png +0 -0
  35. data/textures/brick/brick_0032.png +0 -0
  36. data/textures/brick/brick_0033.png +0 -0
  37. data/textures/brick/brick_0034.png +0 -0
  38. data/textures/brick/brick_0035.png +0 -0
  39. data/textures/brick/brick_0036.png +0 -0
  40. data/textures/brick/brick_0037.png +0 -0
  41. data/textures/brick/brick_0038.png +0 -0
  42. data/textures/brick/brick_0039.png +0 -0
  43. data/textures/brick/brick_0040.png +0 -0
  44. data/textures/brick/brick_0041.png +0 -0
  45. data/textures/brick/brick_0042.png +0 -0
  46. data/textures/brick/brick_0043.png +0 -0
  47. data/textures/brick/brick_0044.png +0 -0
  48. data/textures/brick/brick_0045.png +0 -0
  49. data/textures/brick/brick_0046.png +0 -0
  50. data/textures/brick/brick_0047.png +0 -0
__pycache__/generate_dataset.cpython-312.pyc ADDED
Binary file (10.8 kB). View file
 
app.py ADDED
@@ -0,0 +1,63 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ from flask import Flask, render_template, request
2
+ import io
3
+ import base64
4
+ from PIL import Image
5
+ import numpy as np
6
+ import random
7
+ # Import procedural generators
8
+ from generate_dataset import generate_wood, generate_marble, generate_fabric, generate_brick, generate_noise
9
+
10
+ app = Flask(__name__)
11
+
12
+ # Configuration
13
+ TEXTURE_TYPES = ["wood", "marble", "fabric", "brick", "noise"]
14
+
15
+ # Map types to generator functions
16
+ GENERATORS = {
17
+ "wood": generate_wood,
18
+ "marble": generate_marble,
19
+ "fabric": generate_fabric,
20
+ "brick": generate_brick,
21
+ "noise": generate_noise,
22
+ }
23
+
24
+ @app.route('/')
25
+ def index():
26
+ return render_template('index.html', texture_types=TEXTURE_TYPES)
27
+
28
+ @app.route('/generate', methods=['POST'])
29
+ def generate():
30
+ try:
31
+ texture_type = request.form.get('texture_type')
32
+ seed = int(request.form.get('seed', 0))
33
+ # Creativity affects randomness parameters
34
+ creativity = float(request.form.get('creativity', 1.0))
35
+
36
+ if texture_type not in GENERATORS:
37
+ return {"error": f"Unknown texture type: {texture_type}"}, 400
38
+
39
+ # Set seed for reproducibility
40
+ random.seed(seed)
41
+ np.random.seed(seed)
42
+
43
+ # Call the procedural generator
44
+ # Note: 'creativity' parameter is not supported by current generate_dataset functions directly,
45
+ # but we can simulate it by just using the seed variation or updating generate_dataset.
46
+ # For now, we rely on the seed.
47
+
48
+ img_pil = GENERATORS[texture_type](size=256) # Generate larger image for UI
49
+
50
+ # Convert to base64
51
+ buf = io.BytesIO()
52
+ img_pil.save(buf, format='PNG')
53
+ buf.seek(0)
54
+ img_b64 = base64.b64encode(buf.getvalue()).decode('utf-8')
55
+
56
+ return {"image": f"data:image/png;base64,{img_b64}"}
57
+
58
+ except Exception as e:
59
+ print(f"Error generating image: {e}")
60
+ return {"error": str(e)}, 500
61
+
62
+ if __name__ == '__main__':
63
+ app.run(debug=True, port=5000)
data/textures/brick/brick_0000.png ADDED
data/textures/brick/brick_0001.png ADDED
data/textures/brick/brick_0002.png ADDED
data/textures/brick/brick_0003.png ADDED
data/textures/brick/brick_0004.png ADDED
data/textures/brick/brick_0005.png ADDED
data/textures/brick/brick_0006.png ADDED
data/textures/brick/brick_0007.png ADDED
data/textures/brick/brick_0008.png ADDED
data/textures/brick/brick_0009.png ADDED
data/textures/brick/brick_0010.png ADDED
data/textures/brick/brick_0011.png ADDED
data/textures/brick/brick_0012.png ADDED
data/textures/brick/brick_0013.png ADDED
data/textures/brick/brick_0014.png ADDED
data/textures/brick/brick_0015.png ADDED
data/textures/brick/brick_0016.png ADDED
data/textures/brick/brick_0017.png ADDED
data/textures/brick/brick_0018.png ADDED
data/textures/brick/brick_0019.png ADDED
data/textures/brick/brick_0020.png ADDED
data/textures/brick/brick_0021.png ADDED
data/textures/brick/brick_0022.png ADDED
data/textures/brick/brick_0023.png ADDED
data/textures/brick/brick_0024.png ADDED
data/textures/brick/brick_0025.png ADDED
data/textures/brick/brick_0026.png ADDED
data/textures/brick/brick_0027.png ADDED
data/textures/brick/brick_0028.png ADDED
data/textures/brick/brick_0029.png ADDED
data/textures/brick/brick_0030.png ADDED
data/textures/brick/brick_0031.png ADDED
data/textures/brick/brick_0032.png ADDED
data/textures/brick/brick_0033.png ADDED
data/textures/brick/brick_0034.png ADDED
data/textures/brick/brick_0035.png ADDED
data/textures/brick/brick_0036.png ADDED
data/textures/brick/brick_0037.png ADDED
data/textures/brick/brick_0038.png ADDED
data/textures/brick/brick_0039.png ADDED
data/textures/brick/brick_0040.png ADDED
data/textures/brick/brick_0041.png ADDED
data/textures/brick/brick_0042.png ADDED
data/textures/brick/brick_0043.png ADDED
data/textures/brick/brick_0044.png ADDED
data/textures/brick/brick_0045.png ADDED
data/textures/brick/brick_0046.png ADDED
data/textures/brick/brick_0047.png ADDED