xmrt commited on
Commit
a21de06
1 Parent(s): f5c3d48

visualization

Browse files
Files changed (2) hide show
  1. Dockerfile +1 -0
  2. main.py +27 -4
Dockerfile CHANGED
@@ -25,6 +25,7 @@ WORKDIR /..
25
 
26
  RUN pip install --no-cache-dir --upgrade gradio
27
  RUN pip install --no-cache-dir --upgrade numpy
 
28
 
29
  #https://stackoverflow.com/questions/55313610/importerror-libgl-so-1-cannot-open-shared-object-file-no-such-file-or-directo
30
  RUN apt-get update && apt-get install ffmpeg libsm6 libxext6 -y
 
25
 
26
  RUN pip install --no-cache-dir --upgrade gradio
27
  RUN pip install --no-cache-dir --upgrade numpy
28
+ RUN pip install --no-cache-dir --upgrade opencv-python
29
 
30
  #https://stackoverflow.com/questions/55313610/importerror-libgl-so-1-cannot-open-shared-object-file-no-such-file-or-directo
31
  RUN apt-get update && apt-get install ffmpeg libsm6 libxext6 -y
main.py CHANGED
@@ -5,6 +5,7 @@ print("[INFO]: Imported modules!")
5
 
6
  import gradio as gr
7
  import numpy as np
 
8
 
9
  inferencer = MMPoseInferencer('human')
10
  print("[INFO]: Downloaded models!")
@@ -15,15 +16,37 @@ def poses(photo):
15
  vis_out_dir =".",
16
  return_vis=True,
17
  thickness=2)
18
- print(next(result_generator)["visualization"])
19
- results = [result["visualization"] for result in result_generator]
20
- print(results)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
21
  print(os.listdir())
22
  print("[INFO]: Visualizing results!")
23
  print(os.listdir())
24
  print()
 
 
 
 
 
25
 
26
- return "000000.avi"
27
 
28
 
29
  # # specify detection model by alias
 
5
 
6
  import gradio as gr
7
  import numpy as np
8
+ import cv2
9
 
10
  inferencer = MMPoseInferencer('human')
11
  print("[INFO]: Downloaded models!")
 
16
  vis_out_dir =".",
17
  return_vis=True,
18
  thickness=2)
19
+
20
+
21
+
22
+ video = cv2.VideoCapture(photo)
23
+
24
+ # Prepare to save video
25
+ output_file = os.path.join("output.mp4")
26
+
27
+ fourcc = cv2.VideoWriter_fourcc(*"mp4v") # Codec for MP4 video
28
+ fps = video.get(cv2.CAP_PROP_FPS)
29
+ height = 480
30
+ width = 640
31
+ size = (width,height)
32
+
33
+ out_writer = cv2.VideoWriter(output_file, fourcc, fps, size)
34
+
35
+ for result in result_generator:
36
+ frame = result["visualization"]
37
+ out_writer.write(frame)
38
+
39
  print(os.listdir())
40
  print("[INFO]: Visualizing results!")
41
  print(os.listdir())
42
  print()
43
+
44
+ out_writer.release()
45
+
46
+ cv2.destroyAllWindows() # Closing window
47
+
48
 
49
+ return output_file
50
 
51
 
52
  # # specify detection model by alias