get_sketch_result

ZumiAI.get_sketch_result(name: str = 'Sketch') list

스트리밍되는 카메라 영상에서 인식된 스케치의 결과(이름과 인식률)를 가져옵니다.

이 함수는 sketch_detector_start() 로 스케치 인식이 활성화된 상태에서, 현재 영상에 스케치가 인식되었다면 해당 스케치의 이름과 인식률(신뢰도 점수)을 리스트 형태로 반환합니다. 인식률은 주미가 스케치를 얼마나 정확하게 인식했는지 나타내는 값으로, 0.0부터 1.0 사이의 숫자로 표현됩니다. (예: 0.95는 95% 정확도)

매개변수:

name (str, optional) – 결과를 가져올 스케치의 이름. 기본값은 “Sketch”입니다.

반환:

인식된 스케치의 이름과 신뢰도 점수를 담은 리스트.

  • [0] 인식된 스케치 이름 (str): 인식된 스케치의 이름.

  • [1] 신뢰도 점수 (float): 스케치 인식의 정확도를 나타내는 0.0 ~ 1.0 사이의 값.

스케치가 인식되지 않았거나, 지정된 name`의 스케치 데이터가 없으면 `[“None”, 0.0]`을 반환합니다. 예시: `[“my_drawing”, 0.85] (인식된 스케치는 ‘my_drawing’이며, 85%의 신뢰도)

반환 형식:

list

예제

>>> zumiAI.camera_stream_start()  # 카메라 스트리밍 시작
>>> zumiAI.sketch_detector_init() # 스케치 인식 초기화
>>> zumiAI.sketch_detector_start() # 스케치 인식 시작
>>> while True:
>>>     sketch_name, confidence = zumiAI.get_sketch_result(name="my_car_drawing")
>>>     if sketch_name != "None": # 스케치가 감지되어 유효한 결과가 반환된 경우
>>>         print(f"인식된 스케치: {sketch_name}, 신뢰도: {confidence:.2f}")
>>>         if confidence > 0.7:
>>>             print("스케치가 아주 잘 인식되었네요!")
>>>     else:
>>>         print("스케치 감지 대기 중...")
>>>     time.sleep(1) # 1초 대기
>>> zumiAI.sketch_detector_stop() # 스케치 인식 중지

참고

  • 이 함수를 사용하기 전에 camera_stream_start() 로 영상 스트리밍을 시작하고, sketch_detector_init() 로 스케치 인식 기능을 초기화한 후, sketch_detector_start() 를 호출하여 스케치 인식을 활성화해야 합니다.

  • 스케치 인식은 흰 종이에 검은 펜으로 사각형 테두리를 그리고, 그 안에 그린 그림을 보여줄 때 가장 잘 작동합니다.

  • 이 기능은 주미 자체의 하드웨어 기능이 아니라, PC 기반 소프트웨어로 처리됩니다.