Sephfox commited on
Commit
1b009d6
·
verified ·
1 Parent(s): aafbfb7

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +34 -3
app.py CHANGED
@@ -495,6 +495,8 @@ def generate_ai_response(keypoints, sensation_map):
495
 
496
  uploaded_file = st.file_uploader("Choose an image...", type=["jpg", "jpeg", "png"])
497
 
 
 
498
  if uploaded_file is not None:
499
  # Read the image
500
  image_path = 'temp.jpg'
@@ -507,14 +509,43 @@ if uploaded_file is not None:
507
  # Apply touch points to the image
508
  processed_image = apply_touch_points(image_path, keypoints)
509
 
510
- # Display the processed image
511
- st.image(processed_image, caption='Processed Image with Touch Points', use_column_width=True)
512
-
513
  # Create sensation map
514
  image = cv2.imread(image_path)
515
  image_height, image_width, _ = image.shape
516
  sensation_map = create_sensation_map(image_width, image_height, keypoints)
517
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
518
  # Display heatmaps for different sensations
519
  sensation_types = ["Pain", "Pleasure", "Pressure", "Temperature", "Texture", "EM Field",
520
  "Tickle", "Itch", "Quantum", "Neural", "Proprioception", "Synesthesia"]
 
495
 
496
  uploaded_file = st.file_uploader("Choose an image...", type=["jpg", "jpeg", "png"])
497
 
498
+ # ... (rest of your code)
499
+
500
  if uploaded_file is not None:
501
  # Read the image
502
  image_path = 'temp.jpg'
 
509
  # Apply touch points to the image
510
  processed_image = apply_touch_points(image_path, keypoints)
511
 
 
 
 
512
  # Create sensation map
513
  image = cv2.imread(image_path)
514
  image_height, image_width, _ = image.shape
515
  sensation_map = create_sensation_map(image_width, image_height, keypoints)
516
 
517
+ # Display the processed image
518
+ fig, ax = plt.subplots()
519
+ ax.imshow(processed_image)
520
+
521
+ # Create a list to store the clicked points
522
+ clicked_points = []
523
+
524
+ def onclick(event):
525
+ if event.xdata is not None and event.ydata is not None:
526
+ clicked_points.append((int(event.xdata), int(event.ydata)))
527
+ st.write(f"Clicked point: ({int(event.xdata)}, {int(event.ydata)})")
528
+
529
+ # Update sensation values based on the clicked point
530
+ sensation = sensation_map[int(event.ydata), int(event.xdata)]
531
+ (
532
+ pain, pleasure, pressure_sens, temp_sens, texture_sens,
533
+ em_sens, tickle_sens, itch_sens, quantum_sens, neural_sens,
534
+ proprioception_sens, synesthesia_sens
535
+ ) = sensation
536
+
537
+ st.write("### Sensory Data Analysis")
538
+ st.write(f"Interaction Point: ({int(event.xdata):.1f}, {int(event.ydata):.1f})")
539
+ st.write(f"Pain: {pain:.2f} | Pleasure: {pleasure:.2f} | Pressure: {pressure_sens:.2f}")
540
+ st.write(f"Temperature: {temp_sens:.2f} | Texture: {texture_sens:.2f} | EM Field: {em_sens:.2f}")
541
+ st.write(f"Tickle: {tickle_sens:.2f} | Itch: {itch_sens:.2f} | Quantum: {quantum_sens:.2f}")
542
+ st.write(f"Neural: {neural_sens:.2f} | Proprioception: {proprioception_sens:.2f} | Synesthesia: {synesthesia_sens:.2f}")
543
+
544
+ fig.canvas.mpl_connect('button_press_event', onclick)
545
+
546
+ # Display the plot
547
+ st.pyplot(fig)
548
+
549
  # Display heatmaps for different sensations
550
  sensation_types = ["Pain", "Pleasure", "Pressure", "Temperature", "Texture", "EM Field",
551
  "Tickle", "Itch", "Quantum", "Neural", "Proprioception", "Synesthesia"]