is_obj_detected
- ZumiAI.is_obj_detected(name: str) bool
스트리밍되는 카메라 영상에서 특정 이름의 물체가 감지되었는지 확인합니다.
이 함수는
object_detector_start()
로 물체 인식이 활성화된 상태에서, 주미의 카메라 영상 속에 지정된 name을 가진 물체(예: “person”, “car”)가 화면에 나타났는지 여부를 True 또는 False로 반환합니다.- 매개변수:
name (str) – 감지 여부를 확인할 물체의 이름. 이 이름은
object_detector_start()
를 통해 인식하도록 설정된 물체 목록(기본 목록 또는object_check_add_obj()
,object_check_all_add_obj()
로 추가된 물체)에 포함되어야 합니다. (예: “person”, “stop sign”, “traffic light”, “car”등) 만약 한글 이름으로 입력할 경우, 내부적으로 정의된 매핑 사전을 통해 자동으로 영어 이름으로 변환됩니다. (예: “사람” 입력 시 “person”으로 변환)- 반환:
- 해당 물체가 영상에서 감지되었는지 여부.
True: 지정된 name의 물체가 현재 영상에 감지되었습니다.
False: 지정된 name의 물체가 현재 영상에 감지되지 않았습니다.
- 반환 형식:
bool
예제
>>> zumiAI.camera_stream_start() # 카메라 스트리밍 시작 >>> zumiAI.object_detector_init() # 물체 인식 초기화 >>> zumiAI.object_detector_start() # 물체 인식 시작
>>> print("--- 영어 이름으로 'person' 감지 예시 ---") >>> while True: >>> if zumiAI.is_obj_detected(name="person"): # 영어 이름 사용 >>> print("사람(person)이 감지되었습니다!") >>> break # 감지되면 반복 중단 >>> else: >>> print("사람(person) 감지 대기 중...") >>> time.sleep(1) # 1초 대기
>>> print("--- 한글 이름으로 'car' 감지 예시 ---") >>> # KOREAN_TO_ENGLISH_OBJ_MAP이 미리 정의되어 있다고 가정합니다. >>> while True: >>> if zumiAI.is_obj_detected(name="자동차"): # 한글 이름 사용 >>> print("자동차(car)가 감지되었습니다!") >>> break # 감지되면 반복 중단 >>> else: >>> print("자동차(car) 감지 대기 중...") >>> time.sleep(1) # 1초 대기
>>> zumiAI.object_detector_stop() # 물체 인식 중지
참고
이 함수를 사용하기 전에
camera_stream_start()
로 영상 스트리밍을 시작하고,object_detector_init()
로 물체 인식 기능을 초기화한 후,object_detector_start()
를 호출하여 물체 인식을 활성화해야 합니다.name으로 지정하는 물체 이름은 COCO 데이터셋에 정의된 클래스 이름이어야 합니다. 한글 이름으로 변환해서 사용할 수도 있습니다.
이 기능은 주미 자체의 하드웨어 기능이 아니라, PC 기반 소프트웨어로 처리됩니다.