미리 학습된 계단식 이미지 분류
중요
Machine Learning Studio(클래식)에 대한 지원은 2024년 8월 31일에 종료됩니다. 해당 날짜까지 Azure Machine Learning으로 전환하는 것이 좋습니다.
2021년 12월 1일부터 새로운 Machine Learning Studio(클래식) 리소스를 만들 수 없습니다. 2024년 8월 31일까지는 기존 Machine Learning Studio(클래식) 리소스를 계속 사용할 수 있습니다.
- ML Studio(클래식)에서 Azure Machine Learning으로 기계 학습 프로젝트 이동에 대한 정보를 참조하세요.
- Azure Machine Learning에 대한 자세한 정보.
ML Studio(클래식) 설명서는 사용 중지되며 나중에 업데이트되지 않을 수 있습니다.
OpenCV 라이브러리를 사용하여 전면에 대해 미리 학습된 이미지 분류 모델 만들기
범주: OpenCV 라이브러리 모듈
모듈 개요
이 문서에서는 Machine Learning Studio(클래식)에서 미리 학습된 Cascade 이미지 분류 모듈을 사용하여 이미지에서 얼굴을 감지하는 방법을 설명합니다.
모델은 OpenCV 라이브러리를 기반으로 합니다. OpenCV 라이브러리는 특정 유형의 개체를 검색하도록 최적화된 미리 정의된 모델 목록을 제공합니다.
미리 학습된 모델에 대한 자세한 정보
이 이미지 인식 모델은 이미지 인식 작업에 널리 사용되는 대규모 이미지 모음에서 이미 학습되었습니다. 이 특정 분류 모델은 얼굴 감지에 최적화되었으며 Viola-Jones 개체 감지 알고리즘을 사용합니다. 모델의 목적은 정면 보기에서 사람의 얼굴을 포함하는 이미지를 식별하는 것입니다.
현재 하나의 OpenCV 이미지 분류 모델만 제공되지만, 추가 미리 학습된 모델은 이후 릴리스에서 사용할 수 있습니다.
미리 학습된 모델 사용
분석하려는 이미지 집합이 있는 경우 이 항목에 설명된 대로 모델 점수 매기 기 모듈에 입력으로 제공하고 미리 학습된 OpenCV 라이브러리 모델을 제공하는 이 모듈을 연결합니다.
모델 점수 매기기 모듈은 이미지 분류 모델을 사용하여 이미지에 사람의 얼굴이 포함되어 있는지 여부를 확인하고 입력으로 사용되는 각 이미지에 대한 확률 점수를 반환합니다.
미리 학습된 Cascade 이미지 분류를 기반으로 하는 모델은 새 이미지 데이터에 대해 다시 학습할 수 없습니다.
모델이 저장되는 형식은 모델 학습 및 모델 간 유효성 검사 모듈과 호환되지 않습니다.
미리 학습된 Cascade 이미지 분류를 구성하는 방법
Machine Learning 이미지 분류 모델은 이미 큰 데이터 세트를 사용하여 학습되었으며 특정 이미지 유형에 최적화되어 있습니다. 따라서 점수 매기기 데이터 세트로 이미지 집합을 제공하기만 하면 됩니다. 출력으로 모듈은 각 이미지에 대상 이미지 형식이 포함되어 있는지 여부를 나타내는 점수를 생성합니다.
점수 매기기에서 사용하려는 이미지의 데이터 세트를 준비하고 가져옵니다. 일반적으로 데이터 세트의 모든 이미지는 크기가 같아야 합니다.
이미지 가져오기 모듈을 사용하여 실험에 이미지를 추가합니다. 사용하는 이미지가 요구 사항을 충족하는지 확인하기 위해 이미지 가져오기 에 대한 도움말을 자세히 읽어보세요. 또한 정의된 스토리지 옵션에서 이미지에 액세스할 수 있는지 확인해야 합니다.
Studio(클래식)에서 미리 학습된 Cascade 이미지 분류 모듈을 실험에 추가합니다. OpenCV 라이브러리 범주에서 이 모듈을 찾을 수 있습니다.
미리 학습된 분류자의 목록에서 미리 학습된 분류자 중 하나를 선택합니다.
현재는 기본적으로 선택된 정면 얼굴이라는 하나의 분류자만 사용할 수 있습니다.
배율 인수: 각 이미지 눈금에서 이미지 크기가 감소되는 정도를 지정하는 값을 입력합니다.
OpenCV 라이브러리에서 분류자는 다양한 크기로 관심 있는 개체를 찾을 수 있도록 쉽게 "크기 조정"할 수 있도록 설계되었습니다. 이는 이미지 자체의 크기를 조정하는 것보다 더 효율적입니다. 따라서 이미지에서 알 수 없는 크기의 개체를 찾으려면 스캔 프로시저를 여러 번 다른 눈금으로 수행해야 합니다.
최상의 이미지 분류 결과를 제공하는 다양한 배율 인수를 시도하는 것이 좋습니다.
인접 항목의 최소 수: 얼굴이 영역에 포함되는 것을 감지하는 데 필요한 최소 겹치는 사각형 수를 나타내는 정수를 입력합니다.
OpenCV 라이브러리에서 분류자는 입력 이미지에서 다양한 크기의 개체를 검색합니다. 검색된 개체는 사각형 목록으로 반환됩니다. 인접 매개 변수는 감지된 얼굴 또는 기능으로 한정하는 데 필요한 가능한 일치 횟수를 제어합니다. 따라서 이 값을 늘리면 적용 범위의 비용으로 정밀도가 증가하는 경향이 있습니다.
이웃을 계산하는 방법의 예는 OpenCv 라이브러리 설명서에서 이 문서를 참조하세요. OpenCV의 Eigenfaces
필요에 따라 다음 설정을 사용하여 더 나은 예측을 수행할 수 있도록 모델에 이미지 크기를 지정할 수 있습니다. 요구 사항에 맞지 않는 이미지는 제거됩니다.
최소 높이: 가장 작은 이미지의 픽셀 높이를 입력합니다. 이 속성의 값을 지정하면 이 속성보다 작은 이미지는 무시됩니다.
최대 높이입니다. 가장 큰 이미지의 픽셀 너비를 입력합니다. 이 속성의 값을 지정하면 이보다 큰 이미지는 무시됩니다.
최소 너비: 가장 작은 이미지의 픽셀 너비를 입력합니다. 이 속성의 값을 지정하면 이 속성보다 작은 이미지는 무시됩니다.
최대 너비: 가장 큰 이미지의 픽셀 너비를 입력합니다. 이 속성의 값을 지정하면 이보다 큰 이미지는 무시됩니다.
채점에 사용되는 이미지 데이터 세트를 커넥트.
모델 점수 매기기 모듈을 실험에 추가하고 미리 학습된 이미지 분류자와 이미지 데이터 세트를 연결합니다.
실험을 실행합니다.
결과
모델 점수 매기기 출력에는 이미지 이름, 점수가 매표된 레이블 및 레이블의 확률 점수(0 또는 1)가 포함됩니다. 이미지가 개체(얼굴)를 표시할 가능성이 있는 경우 분류자는 "1"을 출력하고, 그렇지 않으면 "0"을 출력합니다. 예:
이미지 이름 | 점수가 매겨진 레이블 | 채점된 확률 |
---|---|---|
MAN001.png | TRUE | 1 |
TABLE001.PNG | FALSE | 0 |
CHAIR001.PNG | FALSE | 0 |
팁
출력에는 데이터 세트의 모든 색 채널에 대한 RGB 값도 포함됩니다. 따라서 데이터를 더 쉽게 보려면 실험에서 데이터 세트의 열 선택을 사용하여 결과 열만 출력하는 것이 좋습니다.
기술 정보
이 모듈에서 제공하는 얼굴 인식 모델은 Viola-Jones 얼굴 감지 알고리즘을 기반으로 합니다. 이러한 응용 프로그램은 Azure AD Graph API를 사용할 수 있습니다. 자세한 내용은 다음 리소스를 참조하세요.
이 비디오에서는 Haar 기능 정의 및 얼굴 감지에 사용되는 방법을 포함하여 얼굴 인식의 기본 개념을 설명합니다. 얼굴 감지 - 1부
이 위키백과 문서에서는 Navneet Dalal 및 Bill Triggs: 지향 그라데이션 히스토그램의 논문을 기반으로 분류자를 위해 사용되는 방법을 설명합니다.
OpenCV 라이브러리에 제공된 얼굴 인식 알고리즘에 대한 설명서는 Cascade 분류자를 참조하세요.
참고
이 모듈은 OpenCV 라이브러리에서 생성된 정보의 전체 컬렉션을 출력하지 않습니다. 특히 이 모듈은 얼굴이 존재하는지 여부에 대한 예측만 출력하며 얼굴의 좌표나 기타 정보는 포함하지 않습니다.
이 추가 정보가 필요한 경우 Microsoft Cognitive Services에서 제공하는 Face API와 같은 다른 라이브러리를 사용하는 것이 좋습니다.
모듈 매개 변수
Name | 범위 | Type | 기본값 | 설명 |
---|---|---|---|---|
미리 학습된 분류자 | 목록 | PretrainedClassifier | 전면 | 표준 OpenCV 배포의 미리 학습된 분류자입니다. |
배율 | >=1.00000000000000002 | Float | 1.1 | 각 이미지 배율에서 이미지 크기를 줄이는 정도를 지정하는 매개 변수입니다. |
최소 인접한 항목 수 | >=0 | 정수 | 3 | 각 후보 사각형을 유지하려면 포함되어야 하는 인접한 항목의 수를 지정하는 매개 변수입니다. |
최소 높이 | >=1 | 정수 | 100 | 가능한 최소 개체 높이(픽셀)입니다. 이 너비보다 작은 개체는 무시됩니다. 매개 변수는 선택 사항입니다. |
최소 너비 | >=1 | 정수 | 100 | 가능한 최소 개체 너비(픽셀)입니다. 이 너비보다 작은 개체는 무시됩니다. 매개 변수는 선택 사항입니다. |
최대 높이 | >=1 | 정수 | 200 | 가능한 최대 개체 높이(픽셀)입니다. 이 너비보다 큰 개체는 무시됩니다. 매개 변수는 선택 사항입니다. |
최대 너비 | >=1 | 정수 | 200 | 가능한 최대 개체 너비(픽셀)입니다. 이 너비보다 큰 개체는 무시됩니다. 매개 변수는 선택 사항입니다. |
출력
Name | 유형 | Description |
---|---|---|
학습된 모델 | ILearner 인터페이스 | 학습된 이진 분류 모델입니다. |
예외
예외 | 설명 |
---|---|
오류 0005 | 매개 변수가 특정 값보다 작으면 예외가 발생합니다. |
Studio(클래식) 모듈과 관련된 오류 목록은 Machine Learning 오류 코드를 참조하세요.
API 예외 목록은 MACHINE LEARNING REST API 오류 코드를 참조하세요.