Files
video/core/all.py
2025-09-04 22:59:27 +08:00

45 lines
1.2 KiB
Python
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

from core.ocr import load_model as ocrLoadModel, detect as ocrDetect
from core.face import load_model as faceLoadModel, detect as faceDetect
from core.yolo import load_model as yoloLoadModel, detect as yoloDetect
# 添加一个标记变量用于监控load_model是否已被调用
_model_loaded = False
def load_model():
global _model_loaded
# 如果已经调用过,直接忽略
if _model_loaded:
return
# 首次调用时加载模型
ocrLoadModel()
faceLoadModel()
yoloLoadModel()
# 标记为已调用
_model_loaded = True
def detect(frame):
# 先进行YOLO检测
yolo_flag, yolo_result = yoloDetect(frame)
print("YOLO检测结果", yolo_result)
if yolo_flag:
return (True, yolo_result, "yolo")
# YOLO未检测到进行人脸检测
face_flag, face_result = faceDetect(frame)
print("人脸检测结果:", face_result)
if face_flag:
return (True, face_result, "face")
# 人脸未检测到进行OCR检测
ocr_flag, ocr_result = ocrDetect(frame)
print("OCR检测结果", ocr_result)
if ocr_flag:
return (True, ocr_result, "ocr")
# 所有检测都未检测到
return (False, "未检测到任何内容", "none")