Skip to content

Commit ae5fc3b

Browse files
Update multiple files (#134)
* update file * update files * Add type ignore for bbox tuple conversion Silence static type checker complaints by adding a '# type: ignore' comment when converting status.bbox to a tuple of floats. This does not change runtime behavior—only suppresses type errors for the bbox conversion. --------- Co-authored-by: jerinpeter <jerinpeter@gmail.com>
1 parent 91afae3 commit ae5fc3b

2 files changed

Lines changed: 21 additions & 2 deletions

File tree

src/om1_vlm/anonymizationSys/face_recog_stream/run.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -261,12 +261,12 @@ def main() -> None:
261261
logger.info("Starting realtime_stream...")
262262

263263
script_dir = os.path.dirname(os.path.abspath(__file__))
264-
models_dir = os.path.join(script_dir, "..", "engine")
264+
models_dir = os.path.join(script_dir, "..", "engines")
265265

266266
platform_prefix = get_platform_prefix()
267267
scrfd_name = f"{platform_prefix}_scrfd_10g.engine"
268268
arc_name = f"{platform_prefix}_adaface_ir101.engine"
269-
pose_name = "yolo11s-pose.engine"
269+
pose_name = f"{platform_prefix}_yolo11s-pose.engine"
270270

271271
default_scrfd_engine = os.path.join(models_dir, scrfd_name)
272272
default_arc_engine = os.path.join(models_dir, arc_name)

src/om1_vlm/anonymizationSys/face_recog_stream/who_tracker.py

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,13 @@ class FallInfo:
2727

2828
identity: Optional[str] # Matched face name or None
2929
is_fallen: bool
30+
bbox: Tuple[float, float, float, float] = (
31+
0.0,
32+
0.0,
33+
0.0,
34+
0.0,
35+
) # x1, y1, x2, y2 (pose bbox = full body)
36+
confidence: float = 0.0 # Fall detection confidence (0-1)
3037

3138

3239
def _expand_bbox(bbox, margin: float):
@@ -113,6 +120,8 @@ def match_falls_to_faces(
113120
FallInfo(
114121
identity=matched_identity,
115122
is_fallen=status.is_fallen,
123+
bbox=tuple(float(x) for x in status.bbox), # type: ignore
124+
confidence=float(status.confidence),
116125
)
117126
)
118127

@@ -312,9 +321,18 @@ def is_named(x: str) -> bool:
312321

313322
# ----- Fall detection (unchanged) -----
314323
fallen_now: List[str] = []
324+
fallen_now_details: List[Dict] = (
325+
[]
326+
) # name + bbox + confidence per fallen person
315327
fallen_unknown_now = 0
316328
for fall in now_falls:
317329
if fall.is_fallen:
330+
detail = {
331+
"name": fall.identity if fall.identity else "unknown",
332+
"bbox": list(fall.bbox),
333+
"confidence": float(fall.confidence),
334+
}
335+
fallen_now_details.append(detail)
318336
if fall.identity and fall.identity != "unknown":
319337
if fall.identity not in fallen_now:
320338
fallen_now.append(fall.identity)
@@ -360,6 +378,7 @@ def is_named(x: str) -> bool:
360378
"unknown_recent": int(unknown_recent_peak),
361379
# Fall detection (unchanged)
362380
"fallen_now": fallen_now,
381+
"fallen_now_details": fallen_now_details,
363382
"fallen_now_count": len(fallen_now) + fallen_unknown_now,
364383
"fallen_unknown_now": fallen_unknown_now,
365384
"fallen_recent": fallen_recent,

0 commit comments

Comments
 (0)