Ultralytics YOLO27: 대기자 명단에 등록하세요.
YOLO 라이선스 받기
Ultralytics YOLO

컴퓨터 비전 프로젝트의 데이터 라벨링 살펴보기

컴퓨터 비전에서 데이터 라벨링이 중요한 이유, 바운딩 박스부터 키포인트까지 주요 어노테이션 유형, YOLO 형식으로 이미지를 라벨링하는 방법을 알아보세요.

Abirami VinaAbirami Vina7 분 읽기
컴퓨터 비전 프로젝트를 위한 데이터 라벨링

인공지능(AI)은 기계에 인간과 유사한 능력을 부여하는 데 중점을 두며, 이를 구현하는 가장 널리 쓰이는 방법 중 하나는 지도 학습입니다. 즉, 레이블이 지정된 예시를 보여 주어 AI 모델을 학습시키면 패턴을 통해 배우고 작업 수행 능력을 향상할 수 있습니다. 이는 인간이 경험을 통해 배우는 방식과 매우 비슷합니다. 그렇다면 이러한 레이블이 지정된 예시는 어떻게 만들어질까요?

데이터 어노테이션은 머신러닝 알고리즘이 데이터를 이해하도록 데이터에 레이블이나 태그를 지정하는 작업입니다. 컴퓨터 비전에서는 이미지나 동영상에 표시를 추가해 객체, 동작, 장면을 정확하게 인식하고 분류하도록 합니다. AI 모델의 성공은 학습에 사용하는 레이블 데이터의 품질에 크게 좌우되므로 데이터 레이블링은 매우 중요합니다.

연구에 따르면 AI 프로젝트 시간의 80% 이상이 데이터 수집 및 통합부터 정제와 레이블링에 이르기까지 데이터 관리에 사용됩니다. 이는 AI 모델 개발에서 데이터 어노테이션이 얼마나 중요한지 보여 줍니다. 고품질 어노테이션 데이터를 사용하면 AI 모델이 얼굴 인식과 객체 감지와 같은 작업을 실제 환경에서 더 높은 정확도와 신뢰도로 수행할 수 있습니다.

데이터 어노테이션이 필요한 이유#

데이터 어노테이션은 컴퓨터 비전 모델의 성능을 좌우하는 기반입니다. 레이블이 지정된 데이터는 모델이 학습하고 예측하는 데 사용하는 정답 데이터입니다. 정답 데이터는 모델이 이해하려는 현실 세계를 나타내므로 중요합니다. 이러한 신뢰할 수 있는 기준이 없다면 AI 모델은 나침반 없이 항해하는 배와 같습니다.

정답 데이터와 예측 비교

그림 1. 정답 데이터와 예측 비교.

정확한 레이블링은 모델이 대상을 올바르게 이해하고 더 나은 의사결정을 내리는 데 도움이 됩니다. 데이터 레이블이 부정확하거나 일관성이 없다면 잘못된 교재로 공부하는 학생처럼 모델도 올바른 예측과 결정을 내리는 데 어려움을 겪습니다. 어노테이션 데이터를 통해 모델은 이미지와 동영상에서 객체의 인스턴스 세그멘테이션, 이미지 분류, 포즈 추정과 같은 작업을 학습할 수 있습니다.

데이터 세트를 위한 최적의 자료#

새 데이터셋을 만들고 이미지와 동영상에 꼼꼼히 레이블을 지정하기 전에 프로젝트에서 기존 데이터셋을 사용할 수 있는지 확인하는 것이 좋습니다. 고품질 데이터셋을 무료로 이용할 수 있는 오픈 소스 저장소가 여러 곳 있습니다. 가장 인기 있는 저장소는 다음과 같습니다.

  • ImageNet: 이미지 분류 모델 학습에 일반적으로 사용됩니다.
  • COCO: 객체 탐지, 세그멘테이션, 이미지 캡셔닝을 위해 설계된 데이터 세트입니다.
  • PASCAL VOC: 객체 탐지 및 세그멘테이션 작업을 지원합니다.

COCO 데이터 세트의 데이터 예시

그림 2. COCO 데이터 세트의 데이터 예시.

데이터셋을 선택할 때는 프로젝트 적합성, 데이터셋 크기와 다양성, 레이블 품질 등의 요소를 고려해야 합니다. 법적 문제를 방지하기 위해 데이터셋의 라이선스 조건을 검토하고, 데이터 형식이 워크플로와 도구에 적합한지도 확인하세요.

기존 데이터 세트가 요구 사항에 잘 맞지 않는다면 사용자 지정 데이터 세트를 만드는 것이 좋은 방법입니다. 프로젝트의 필요에 따라 웹캠, 드론, 스마트폰과 같은 도구로 이미지를 수집할 수 있습니다. 사용자 지정 데이터 세트는 다양하고 균형이 잡혀 있으며 해결하려는 문제를 충실히 반영하는 것이 이상적입니다. 이를 위해 조명 조건과 촬영 각도를 달리하고 여러 환경에서 이미지를 촬영해야 할 수 있습니다.

수집할 수 있는 이미지나 동영상의 수가 적다면 데이터 증강이 유용한 기법입니다. 기존 이미지에 회전, 반전, 색상 조정과 같은 변환을 적용해 데이터 세트의 규모를 확장합니다. 이를 통해 데이터 세트의 크기를 늘리고 모델의 견고성과 데이터 변화에 대한 대응력을 높일 수 있습니다. 오픈 소스 데이터 세트, 사용자 지정 데이터 세트, 증강 데이터를 조합하면 컴퓨터 비전 모델의 성능을 크게 향상할 수 있습니다.

이미지 어노테이션 기법의 종류#

이미지에 어노테이션을 시작하기 전에 다양한 어노테이션 유형을 알아 두는 것이 중요합니다. 그래야 프로젝트에 적합한 유형을 선택할 수 있습니다. 이제 주요 어노테이션 유형을 살펴보겠습니다.

바운딩 박스#

바운딩 박스는 컴퓨터 비전에서 가장 일반적인 어노테이션 유형입니다. 이미지에서 객체의 위치를 표시하는 직사각형 상자입니다. 각 상자의 모서리 좌표로 정의되며, AI 모델이 객체를 식별하고 위치를 찾도록 돕습니다. 바운딩 박스는 주로 객체 감지에 사용됩니다.

보행자 1명과 교통 콘 4개를 각각 클래스 이름 및 신뢰도 점수와 함께 표시한 바운딩 박스

그림 3. 바운딩 박스 예시.

세그멘테이션 마스크#

때로는 객체 주변에 바운딩 박스만 그리는 것보다 더 정확하게 객체를 감지해야 합니다. 이미지에서 객체의 경계에 관심이 있을 수도 있습니다. 이 경우 세그멘테이션 마스크를 사용해 복잡한 객체의 윤곽을 표시할 수 있습니다. 세그멘테이션 마스크는 픽셀 단위로 더 상세하게 표현합니다.

이러한 마스크는 시맨틱 세그멘테이션과 인스턴스 세그멘테이션에 사용할 수 있습니다. 시맨틱 세그멘테이션은 이미지의 모든 픽셀에 보행자, 자동차, 도로, 인도 등 해당 픽셀이 나타내는 객체나 영역에 따라 레이블을 지정합니다. 반면 인스턴스 세그멘테이션은 한 단계 더 나아가 각 객체를 개별적으로 식별하고 분리합니다. 예를 들어 같은 종류의 자동차가 모두 동일하더라도 이미지에서 각각을 구분합니다.

시맨틱 세그멘테이션(왼쪽)과 인스턴스 세그멘테이션(오른쪽) 예시

그림 4. 시맨틱 세그멘테이션(왼쪽)과 인스턴스 세그멘테이션 마스크(오른쪽) 예시.

3D 직육면체#

3D 직육면체는 바운딩 박스와 비슷하지만 깊이 정보를 추가해 객체를 3D로 표현합니다. 이 추가 정보로 시스템은 3D 공간에서 객체의 모양, 부피, 위치를 이해할 수 있습니다. 3D 직육면체는 자율주행차에서 차량과 객체 사이의 거리를 측정하는 데 자주 사용됩니다.

고속도로의 트럭과 자동차를 둘러싼 3D 직육면체 어노테이션으로 각 차량의 깊이와 부피를 표현한 모습

그림 5. 3D 직육면체 예시.

키포인트와 랜드마크#

또 다른 흥미로운 어노테이션 유형은 키포인트입니다. 눈, 코, 관절과 같은 특정 지점을 객체에 표시합니다. 랜드마크는 이러한 지점을 연결해 얼굴이나 신체 자세와 같은 복잡한 형태의 구조와 움직임을 포착하는 방식으로 한 단계 더 나아갑니다. 이러한 어노테이션은 얼굴 인식, 모션 캡처, 증강 현실과 같은 애플리케이션에 사용됩니다. 또한 제스처 인식이나 스포츠 경기력 분석과 같은 작업에서 AI 모델의 정확도를 높여 줍니다.

육상 트랙에서 주자의 관절을 표시하고 스켈레톤으로 연결한 포즈 키포인트

그림 6. 키포인트 예시.

LabelImg를 사용한 데이터 어노테이션 방법#

다양한 어노테이션 유형을 살펴보았으니 이제 널리 사용되는 도구인 LabelImg를 사용해 이미지를 어노테이션하는 방법을 알아보겠습니다. LabelImg는 이미지 어노테이션을 간편하게 해 주는 오픈 소스 도구이며, YOLO(You Only Look Once) 형식의 데이터셋을 만드는 데 사용할 수 있습니다. 소규모 Ultralytics YOLOv8 프로젝트를 진행하는 초보자에게 적합합니다.

LabelImg 설정은 간단합니다. 먼저 컴퓨터에 Python 3이 설치되어 있는지 확인합니다. 그런 다음 간단한 명령어를 실행해 LabelImg를 설치할 수 있습니다.

pip3 install labelImg

설치가 완료되면 다음 명령어로 도구를 실행할 수 있습니다.

labelImg

LabelImg는 Windows, macOS, Linux 등 여러 플랫폼에서 작동합니다. 설치 중 문제가 발생하면 공식 LabelImg 저장소에서 자세한 안내를 확인할 수 있습니다. LabelImg는 유지 관리자에 의해 보관 처리되었습니다. AI 지원 도구를 사용한 브라우저 기반 레이블링은 Ultralytics Platform 어노테이션 편집기를 참조하세요.

이미지 어노테이션에 LabelImg 사용하기

그림 7. 이미지 어노테이션에 LabelImg 사용하기.

도구를 실행한 후 다음의 간단한 단계를 따라 이미지에 레이블을 지정해 보세요.

  • 클래스 설정: 먼저 “predefined_classes.txt”라는 파일에 어노테이션할 클래스(범주) 목록을 정의합니다. 이 파일을 통해 소프트웨어는 이미지에서 어떤 객체에 레이블을 지정할지 알 수 있습니다.
  • YOLO 형식으로 전환: LabelImg는 기본적으로 PASCAL VOC 형식을 사용하지만, YOLO로 작업하는 경우 형식을 전환해야 합니다. 툴바에서 “PascalVOC” 버튼을 클릭하면 YOLO로 전환됩니다.
  • 주석 시작: "Open" 또는 "OpenDIR" 옵션으로 이미지를 불러옵니다. 그런 다음 주석을 추가할 객체 주위에 바운딩 박스를 그리고 올바른 클래스 레이블을 지정합니다. 각 이미지에 레이블을 지정한 후 작업을 저장합니다. LabelImg는 YOLO 주석이 포함된 텍스트 파일을 생성하며, 파일 이름은 이미지와 동일합니다.
  • 저장 및 검토: 주석은 YOLO 형식의 .txt 파일에 저장됩니다. 또한 소프트웨어는 모든 클래스 이름을 나열하는 “classes.txt” 파일도 저장합니다.

효율적인 데이터 레이블링 전략#

데이터 레이블링을 원활하게 진행하려면 몇 가지 핵심 전략을 염두에 두어야 합니다. 예를 들어 명확한 어노테이션 지침이 매우 중요합니다. 지침이 없으면 어노테이터마다 작업을 다르게 해석할 수 있습니다.

이미지에서 새의 바운딩 박스를 주석 처리하는 작업을 예로 들어보겠습니다. 한 작업자는 새 전체에 레이블을 지정할 수 있지만, 다른 작업자는 머리나 날개에만 레이블을 지정할 수 있습니다. 이러한 불일치는 학습 중 모델을 혼란스럽게 할 수 있습니다. "날개와 꼬리를 포함해 새 전체에 레이블을 지정하세요"와 같이 명확한 정의를 제공하고 까다로운 사례에 대한 예시와 지침을 함께 제시하면 데이터를 정확하고 일관되게 태깅할 수 있습니다.

높은 품질 기준을 유지하려면 정기적인 품질 검사도 중요합니다. 기준점을 설정하고 구체적인 지표를 사용해 작업을 검토하면 데이터의 정확성을 유지하고 지속적인 피드백을 통해 프로세스를 개선할 수 있습니다.

데이터 레이블링 한눈에 보기#

데이터 주석은 단순한 개념이지만 컴퓨터 비전 모델에 상당한 영향을 미칠 수 있습니다. LabelImg와 같은 도구로 이미지에 주석을 추가하거나 오픈 소스 데이터셋으로 모델을 학습시키는 경우 모두 데이터 레이블링을 이해하는 것이 중요합니다. 데이터 레이블링 전략은 전체 프로세스를 간소화하고 효율성을 높이는 데 도움이 됩니다. 주석 방식을 개선하는 데 시간을 들이면 더 나은, 더 신뢰할 수 있는 AI 결과를 얻을 수 있습니다.

계속 탐구하고 역량을 키워 보세요! AI에 대해 꾸준히 알아가려면 커뮤니티와 계속 소통하세요! GitHub 저장소를 확인하고 제조업과 헬스케어 같은 산업에서 AI를 활용해 혁신적인 솔루션을 만드는 방법을 알아보세요.

작성자

Abirami Vina
Abirami Vina

콘텐츠 크리에이터 · Ultralytics

컴퓨터 비전 엔지니어로 경력을 시작한 Abirami Vina는 비전 AI와 머신러닝에 대한 탄탄한 기반을 다졌습니다. 그녀는 Ultralytics의 콘텐츠 제작자이자 Scribe of AI의 창립자 겸 수석 작가로, AI 중심 기업을 위한 고품질 기술 콘텐츠를 작성합니다. AI를 이해하기 쉽고 흥미롭게 만들려는 열정을 바탕으로, 그녀의 글은 최첨단 기술과 실제 영향 사이의 간극을 좁힙니다.

댓글

질문하거나 결과를 공유하거나 다른 사람을 도와주세요.

솔루션 살펴보기

스포츠 분야의 컴퓨터 비전

스포츠 분야의 컴퓨터 비전

Ultralytics YOLO가 선수 및 공 추적, 경기력 분석, 코칭 인사이트, 선수 재활을 통해 스포츠 비전을 구현하는 방법을 알아보세요.
자세히 알아보기
항공 이미지 컴퓨터 비전

항공 이미지 컴퓨터 비전

Ultralytics YOLO를 활용해 드론 및 항공 이미지를 농업, 양식업, 보전, 지리 공간 분석을 위한 실시간 인사이트로 전환하세요.
자세히 알아보기
항공우주 분야의 컴퓨터 비전

항공우주 분야의 컴퓨터 비전

Ultralytics YOLO를 활용해 항공기 검사, 활주로 FOD 감지, 공항 지상 운영, 복합재 결함 감지 등 항공우주 분야에 컴퓨터 비전을 적용하세요.
자세히 알아보기
보안 분야의 컴퓨터 비전

보안 분야의 컴퓨터 비전

Ultralytics YOLO 모델로 모든 시설을 보호하세요. Vision AI는 경계 모니터링, 위협 감지, 번호판 인식, 작업장 안전을 지원합니다.
자세히 알아보기
로보틱스 분야의 컴퓨터 비전

로보틱스 분야의 컴퓨터 비전

Ultralytics YOLO 모델로 더 스마트한 머신을 구현하세요. 로보틱스 분야의 Vision AI는 자율 주행, 인식, 객체 추적, 실시간 제어를 지원합니다.
자세히 알아보기
물류 분야의 컴퓨터 비전

물류 분야의 컴퓨터 비전

Ultralytics YOLO 모델로 물류를 간소화하세요. 비전 AI는 화물 검사, 분류, 차량 추적, 실시간 창고 안전 모니터링을 지원합니다.
자세히 알아보기
리테일 분야의 컴퓨터 비전

리테일 분야의 컴퓨터 비전

Ultralytics YOLO 모델로 리테일의 새로운 가능성을 열어 보세요. 비전 AI는 재고 추적, 선반 모니터링, 대기열 관리, 더욱 심층적인 고객 인사이트를 지원합니다.
자세히 알아보기
의료 분야의 컴퓨터 비전

의료 분야의 컴퓨터 비전

Ultralytics YOLO 모델로 의료 솔루션을 구축하세요. 의료 분야의 비전 AI는 의료 영상 판독을 가속화하고, 진단을 개선하며, 환자 모니터링을 지원합니다.
자세히 알아보기
제조 분야의 컴퓨터 비전

제조 분야의 컴퓨터 비전

Ultralytics YOLO 모델로 제조 공정을 최적화하세요. 비전 AI는 품질 관리, 결함 탐지, PPE 규정 준수, 조립 라인 자동화를 지원합니다.
자세히 알아보기
자동차 분야의 컴퓨터 비전

자동차 분야의 컴퓨터 비전

Ultralytics YOLO 모델로 자동차 분야에 컴퓨터 비전을 적용하세요. 비전 AI는 도로 안전, 운전자 지원, 차량 자동화를 개선해 더 스마트한 도로를 구현합니다.
자세히 알아보기
농업 분야의 컴퓨터 비전

농업 분야의 컴퓨터 비전

Ultralytics YOLO 모델로 스마트 농업에 비전 AI를 도입하세요. 작물 모니터링, 가축 추적, 정밀 농업을 지원하여 더 높은 수확량과 더 스마트한 농업을 실현합니다.
자세히 알아보기

함께 AI의 미래를 만들어 가세요!

머신러닝의 미래와 함께 여정을 시작하세요