ESP-WHO 얼굴 인식을 사용해본 분 있나요? 공식 예제를 사용하는 데 SDK 설정이 안 되고, 컴파일도 안 되며 모든 헤더 파일을 찾을 수 없습니다.

ESP-WHO 얼굴 인식 기능을 사용해본 분 있으신가요? 저는 IDF 버전 5.5.1을 사용하고 있으며 공식 예제 코드를 사용하고 있습니다. SDK 구성이 불가능하고 컴파일도 되지 않으며 모든 헤더 파일을 찾을 수 없습니다.

SDK 구성 실패 알림:

컴파일 오류 알림:

공식 저장소는 다음과 같습니다:
GitHub - espressif/esp-who: Face detection and recognition framework
GitHub - espressif/esp-dl: Espressif deep-learning library for AIoT applications

저는 https://blog.csdn.net/qq_37429313/article/details/121531716의 절차를 따랐지만 여전히 컴파일이 되지 않습니다.

ESP-WHO 관련 자료를 검색해보았지만 정보가 부족하고 대부분의 사용자가 저와 비슷한 문제가 발생했습니다. 해결 방법을 아시는 분이 있으신가요?

ESP-IDF 5.5.1에서 ESP-WHO 설정 및 컴파일 문제를 해결하기 위해 환경 변수, 종속성 초기화, 구성 요소 설정의 세 가지 핵심 요소를 다뤄야 합니다. 다음은 단계별 해결 방법입니다:

단계 1: ESP-WHO 서브모듈 종속성 초기화

ESP-WHO는 esp-dl과 같은 서브모듈에 의존하므로 먼저 해당 종속성을 올바르게 가져와야 합니다. 터미널을 열고 esp-who-master 디렉토리로 이동한 후 다음 명령어를 실행하세요:

git submodule update --init --recursive

단계 2: IDF_EXTRA_ACTIONS_PATH 환경 변수 설정

오류 메시지에서 "IDF_EXTRA_ACTIONS_PATH가 올바르게 설정되지 않음"은 핵심입니다. 이 변수는 ESP-WHO의 bsp 디렉토리(보드 레벨 지원 패키지 경로)를 가리켜야 합니다.

  • Windows 시스템 설정 방법:
    1. esp-who-master 경로(예: C:\\Users\\49864\\Desktop\\esp-who-master)를 확인하고 bsp 디렉토리 전체 경로는 C:\\Users\\49864\\Desktop\\esp-who-master\\bsp입니다.
    2. 시스템 환경 변수 설정을 엽니다(내 컴퓨터 우클릭 → 속성 → 고급 시스템 설정 → 환경 변수).
    3. “사용자 변수” 또는 "시스템 변수"에서 새 변수를 추가합니다:
      • 변수 이름: IDF_EXTRA_ACTIONS_PATH
      • 변수 값: C:\\Users\\49864\\Desktop\\esp-who-master\\bsp (실제 경로로 대체)
    4. VSCode를 재시작하여 환경 변수를 적용합니다.

단계 3: ESP-IDF 환경이 올바르게 로드되었는지 확인

VSCode에서 ESP-IDF 확장의 "명령 패널"을 통해 환경을 로드해야 합니다:

  1. Ctrl+Shift+P를 눌러 명령 패널을 열고 "ESP-IDF: Show Examples Projects"를 입력하여 ESP-IDF 경로가 정상적으로 인식되는지 확인합니다.
  2. 프로젝트 터미널을 열 때 "ESP-IDF: New Terminal"을 통해 실행하여 IDF_PATH와 같은 IDF 환경 변수가 올바르게 로드되었는지 확인합니다.

단계 4: CMakeLists.txt 및 구성 요소 등록 확인

ESP-WHO 예제 프로젝트는 구성 요소와 헤더 파일 경로를 올바르게 등록해야 합니다. human_face_recognition 예제에서 CMakeLists.txt를 확인하세요:

  • idf_component_register를 통해 필요한 구성 요소와 헤더 파일 경로를 포함해야 합니다:
    idf_component_register(
        SRCS "app_main.cpp" "frame_cap_pipeline.cpp"
        INCLUDE_DIRS "."
        REQUIRES esp_who esp_camera esp_dl  # 필요에 따라 종속성 구성 요소 추가
    )
    

단계 5: 프로젝트 정리 및 재빌드

build 디렉토리를 삭제하고 빌드 프로세스를 다시 실행하세요:

idf.py fullclean
idf.py set-target esp32  # 대상 칩으로 변경(예: esp32s3)
idf.py build

추가 참고: 버전 호환성

위 단계로도 문제가 해결되지 않으면 ESP-WHO가 ESP-IDF 5.5.1과 호환되는지 확인하세요. ESP-WHO의 README 또는 GitHub Issues를 참조하시기 바랍니다. 공식 지원 버전이 5.5.1보다 낮다면 ESP-IDF를 5.0 또는 4.4와 같은 호환 가능한 버전으로 다운그레이드한 후 설정 절차를 반복해 보세요.

위 단계를 수행하면 “SDK 설정 실패” 및 “헤더 파일을 찾을 수 없음” 문제가 해결됩니다. 추가 오류 발생 시 c_cpp_properties.jsonincludePathbrowse.path에 ESP-WHO 헤더 디렉토리가 포함되었는지 확인하거나 ESP-WHO GitHub 저장소에 Issue를 제기해 공식 지원을 받을 수 있습니다.