본문 바로가기
OpenCV

Xcode에서 Mac의 내장 카메라 사용 방법

by 김현이 magnae2016 2019. 5. 5.

 

VisualCapture 클래스를 이용하면 PC 카메라나 비디오 파일에서 쉽게 프레임을 가져와서 행렬에 저장할 수 있다.

다음은 카메라로부터 프레임을 가져와서 영상을 윈도우 창에 표시하는 프로그램이다.

VideoCapture::isOpened() 함수를 이용해서 카메라가 정상적으로 연결되었는지 확인한다.

 

#include <opencv2/opencv.hpp>
using namespace cv;
using namespace std;

int main(int argc, const char * argv[]) {
    
    VideoCapture capture(0);
    if (!capture.isOpened()) {
        exit(1);
    }
    
    for (;;) {
        Mat frame;
        capture.read(frame);
        
        imshow("카메라 영상보기", frame);
        if (waitKey(30) >= 0)   break;
    }
    
    return 0;
}

 

Xcode에서 위의 코드를 실행하여 Mac의 내장 카메라를 사용하려고 하면 다음과 같이 메세지를 출력하고 종료한다.

 

[access] This app has crashed because it attempted to access privacy-sensitive data without a usage description. The app's Info.plist must contain an NSCameraUsageDescription key with a string value explaining to the user how the app uses this data.

 

Xcode에서 Mac의 내장 카메라를 사용하는 방법

 


 

1. Info.plist 파일 생성

  1. Navigator area의 Project에서 마우스 오른쪽 클릭 ▶︎ New File... 선택

  2. Choose a template for your new file에서 Resource ▷ Property List 선택

  3. 아래와 같이 파일명은 Info.plist로 하고 아래와 같이 Group을 지정

 

2. Info.plist 파일에 NSCameraUsageDescription 추가

아래와 같이 Privacy - Camera Usage Description 항목을 추가한다.

 

 

3. Info.plist를 프로젝트에 설정

  1. Navigator area의 Project명 클릭

  2. General ▶︎ Identity ▶︎ Choose Info.plist file... 클릭하여 위에서 생성한 info.plist파일 지정

  3. Build Phases ▶︎ Copy Files에서 아래와 같이 설정

    ✔︎ Destination ☞ Products Directory
    ✔︎ Subpath ☞ empty
    ✘ Copy only when installing ☞ Unchecked
    ✔︎ Info.plist 추가

 

4. main.cpp 파일 실행

실행했을 때 Build Succeeded가 뜨고, 위와 같이 접근 허용 Prompt가 뜬다면 

Mac의 내장 카메라를 사용하기 위한 Info.plist가 정상적으로 설정되었음을 의미한다.

 

 


 

참고 자료

  • 정성환·배종욱. OpenCV로 배우는 영상처리 및 응용. (주)생능출판사. 2017

 

OpenCV로 배우는 영상 처리 및 응용

OpenCV로 배우는 영상 처리의 기본 이론과 응용 방법OpenCV(Open Source Computer Vision Library)는 영상 처리와 컴퓨터 비전 관련 오픈 소스 라이브러리이다. 오픈소스 라이브러리로 공개되어 있으므로 누구나 사용할 수 있다. 그리고 영상 처리와 관련된 많은 함수가 이미 구현되어 있어서, 영상 처리 이론을 쉽게 구현해 ...

www.yes24.com

'OpenCV' 카테고리의 다른 글

Xcode에서 Mac의 내장 카메라 사용 방법  (2) 2019.05.05
Xcode에 OpenCV – 4.1.0 설정  (4) 2019.05.04

댓글2

  • 학부생1 2019.09.19 13:36

    감사합니다 ㅜㅜ opencv 너무 안돼서 몇 주 째 고생하고 있었는데 덕분에 수월하게 해결했네여 ㅠㅠ
    답글

  • pmh5050 2019.12.01 22:42

    감사합니다. 카메라 접근 권한 문제로 실행이 계속 안되서 원인을 찾다가 덕분에 쉽게 해결했습니다.
    과정이 친절하고 자세하게 기록되어 있네요.

    답글