Skip to content

Commit a100729

Browse files
committed
wip
1 parent f6dc01d commit a100729

File tree

1 file changed

+21
-4
lines changed

1 file changed

+21
-4
lines changed

apps/99_streamlit_examples/pages/12_Video_processing.py

Lines changed: 21 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,13 +7,20 @@
77

88

99
class Processor:
10-
def __init__(self, model_name):
10+
def __init__(
11+
self,
12+
model_name: str,
13+
):
1114
self.model = YOLO(model_name)
1215

13-
def process(self, frame):
16+
def process(
17+
self,
18+
frame: cv2.UMat,
19+
confidence: float,
20+
) -> cv2.UMat:
1421
results = self.model(
1522
frame,
16-
conf=0.5,
23+
conf=confidence,
1724
classes=[0],
1825
)
1926
output_img = results[0].plot(
@@ -27,24 +34,33 @@ def process(self, frame):
2734

2835

2936
with st.sidebar:
37+
# model_name: https://docs.ultralytics.com/models/yolov8/#supported-tasks-and-modes
3038
model_name = st.selectbox(
3139
label="Select a model",
3240
options=[
3341
"yolov8n.pt",
3442
"yolov9c.pt",
3543
"yolov10n.pt",
36-
# https://docs.ultralytics.com/models/yolov8/#supported-tasks-and-modes
3744
],
3845
key="model_name",
3946
index=0,
4047
)
48+
# device: https://docs.opencv.org/4.10.0/d8/dfe/classcv_1_1VideoCapture.html#a5d5f5dacb77bbebdcbfb341e3d4355c1
4149
device = st.text_input(
4250
label="input your video/camera device",
4351
value="0",
4452
)
4553
if device.isnumeric():
4654
# e.g. "0" -> 0
4755
device = int(device)
56+
# confidence: https://docs.ultralytics.com/usage/cfg/#predict-settings
57+
confidence = st.slider(
58+
label="Confidence",
59+
min_value=0.0,
60+
max_value=1.0,
61+
value=0.5,
62+
step=0.01,
63+
)
4864

4965
st.title("Video processing")
5066

@@ -68,6 +84,7 @@ def process(self, frame):
6884

6985
processed_frame = processor.process(
7086
frame=frame,
87+
confidence=confidence,
7188
)
7289

7390
image_loc.image(

0 commit comments

Comments
 (0)