텍스트 프롬프트를 통해 객체를 식별할 수 있는 혁신적인 객체 감지 모델인 YOLO-World에 대해 알아보세요. YOLO-World의 작동 방식과 애플리케이션을 살펴보고 간단한 코드 예제를 통해 직접 실습해 보세요.

텍스트 프롬프트를 통해 객체를 식별할 수 있는 혁신적인 객체 감지 모델인 YOLO-World에 대해 알아보세요. YOLO-World의 작동 방식과 애플리케이션을 살펴보고 간단한 코드 예제를 통해 직접 실습해 보세요.
컴퓨터 비전 프로젝트에는 데이터에 주석을 달고 객체 감지 모델을 훈련하는 데 많은 시간이 소요되는 경우가 많습니다. 하지만 이제 곧 과거의 일이 될지도 모릅니다. 텐센트 AI Lab은 2024년 1월 31일에 실시간 오픈 어휘 객체 감지 모델인 YOLO-World를 출시했습니다. YOLO-World는 제로 샷 모델로, 별도의 학습 없이도 이미지에서 객체 감지 추론을 실행할 수 있습니다.
제로샷 모델은 컴퓨터 비전 애플리케이션에 접근하는 방식을 바꿀 수 있는 잠재력을 가지고 있습니다. 이 블로그에서는 제로샷 모델의 작동 방식과 잠재적 용도를 살펴보고, 시작하기 위한 실용적인 코드 예제를 공유합니다.
찾고 있는 대상을 설명하는 이미지와 텍스트 프롬프트를 YOLO-World 모델에 전달할 수 있습니다. 예를 들어, 사진에서 '빨간 셔츠를 입은 사람'을 찾고자 하는 경우 YOLO-World는 이 입력을 받아 작업을 시작합니다.
이 모델의 독특한 아키텍처는 세 가지 주요 요소를 결합합니다:
YOLO 감지기는 입력 이미지를 스캔하여 잠재적인 물체를 식별합니다. 텍스트 인코더는 사용자의 설명을 모델이 이해할 수 있는 형식으로 변환합니다. 그런 다음 이 두 가지 정보 스트림은 다단계 크로스 모달리티 융합을 사용하여 RepVL-PAN을 통해 병합됩니다. 이를 통해 YOLO-World는 이미지 내에서 프롬프트에 설명된 물체를 정확하게 감지하고 위치를 찾을 수 있습니다.
욜로월드 사용의 가장 큰 장점 중 하나는 특정 클래스를 위해 모델을 훈련시킬 필요가 없다는 점입니다. 이미 이미지와 텍스트 쌍을 통해 학습했기 때문에 설명을 기반으로 사물을 찾는 방법을 알고 있습니다. 데이터 수집, 데이터 주석 달기, 고가의 GPU 학습 등에 많은 시간을 들이지 않아도 됩니다.
YOLO-World를 사용하면 얻을 수 있는 다른 혜택은 다음과 같습니다:
욜로 월드 모델은 다양한 애플리케이션에 사용할 수 있습니다. 그 중 몇 가지를 살펴보겠습니다.
조립 라인에서 제조된 제품은 포장하기 전에 육안으로 결함이 있는지 확인합니다. 결함 검사는 종종 수작업으로 이루어지므로 시간이 오래 걸리고 실수가 발생할 수 있습니다. 이러한 실수는 높은 비용과 수리 또는 리콜의 필요성과 같은 문제를 야기할 수 있습니다. 이러한 문제를 해결하기 위해 특수 머신 비전 카메라와 AI 시스템이 개발되어 이러한 검사를 수행합니다.
욜로월드 모델은 이 분야에서 큰 발전을 이루었습니다. 이들은 특정 문제에 대한 교육을 받지 않은 경우에도 제로 샷 능력을 사용하여 제품의 결함을 찾아낼 수 있습니다. 예를 들어, 물병을 제조하는 공장에서 YOLO-World를 사용하면 병뚜껑이 제대로 밀봉된 병과 뚜껑이 누락되었거나 결함이 있는 병을 쉽게 구분할 수 있습니다.
욜로 월드 모델을 사용하면 로봇이 낯선 환경과 상호작용할 수 있습니다. 방에 있을 수 있는 특정 물체에 대한 훈련을 받지 않아도 어떤 물체가 있는지 식별할 수 있습니다. 로봇이 한 번도 가본 적이 없는 방에 들어왔다고 가정해 봅시다. YOLO-World 모델을 사용하면 로봇은 의자, 테이블, 램프와 같은 사물에 대해 특별히 학습하지 않았더라도 이를 인식하고 식별할 수 있습니다.
YOLO-World는 물체 감지 외에도 '프롬프트 후 감지' 기능을 통해 물체의 상태도 파악할 수 있습니다. 예를 들어, 농업 로봇 공학에서는 로봇이 과일을 감지하도록 프로그래밍하여 익은 과일과 덜 익은 과일을 식별하는 데 사용할 수 있습니다.
자동차 산업에는 움직이는 부품이 많기 때문에 YOLO-World는 다양한 자동차 애플리케이션에 사용할 수 있습니다. 예를 들어, 자동차 정비의 경우 수동 태깅이나 광범위한 사전 교육 없이도 다양한 물체를 인식할 수 있는 YOLO-World의 기능은 매우 유용합니다. 교체가 필요한 자동차 부품을 식별하는 데 YOLO-World를 사용할 수 있습니다. 심지어 품질 검사, 결함이나 누락된 부품을 발견하는 등의 작업을 자동화할 수도 있습니다.
또 다른 응용 분야는 자율주행 차량의 제로 샷 물체 감지입니다. YOLO-World의 제로 샷 감지 기능은 자율주행 차량이 보행자, 교통 표지판, 다른 차량 등 도로 위의 물체를 실시간으로 감지하고 분류하는 능력을 향상시킬 수 있습니다. 이를 통해 장애물을 감지하고 사고를 예방하여 더 안전한 주행을 할 수 있습니다.
소매점의 진열대에 있는 물체를 식별하는 것은 재고 추적, 재고 유지, 프로세스 자동화에 있어 중요한 부분입니다. 수동 태깅이나 광범위한 사전 교육 없이도 다양한 물체를 인식할 수 있는 Ultralytics YOLO-World의 기능은 재고 관리에 매우 유용합니다.
예를 들어, 재고 관리에서 YOLO-World는 다양한 브랜드의 에너지 드링크와 같이 진열대에 있는 품목을 신속하게 파악하고 분류할 수 있습니다. 소매점은 정확한 재고를 유지하고, 재고 수준을 효율적으로 관리하며, 공급망 운영을 원활하게 할 수 있습니다.
모든 애플리케이션은 독특하며 YOLO-World가 얼마나 광범위하게 사용될 수 있는지 보여줍니다. 이제 YOLO-World를 직접 사용해보고 코딩 예제를 살펴보겠습니다.
앞서 언급했듯이 욜로월드는 자동차의 다양한 부품을 감지하여 유지보수가 필요한 부분을 찾아내는 데 사용할 수 있습니다. 필요한 수리를 감지하는 컴퓨터 비전 애플리케이션은 자동차 사진을 찍고, 자동차 부품을 식별하고, 각 부품의 손상 여부를 검사하고, 수리를 추천하는 작업을 포함합니다. 이 시스템의 모든 부분은 서로 다른 AI 기술과 접근 방식을 사용합니다. 이 코드 워크스루에서는 자동차 부품이 감지되는 부분에 초점을 맞춰 보겠습니다.
YOLO-World를 사용하면 5분 이내에 이미지에서 다양한 자동차 부품을 식별할 수 있습니다. 이 코드를 확장하여 YOLO-World를 사용하여 다른 애플리케이션도 시험해 볼 수 있습니다! 시작하려면 아래 그림과 같이 Ultralytics 패키지를 핍 설치해야 합니다.
설치 과정과 관련된 자세한 지침과 모범 사례는 울트라틱스 설치 가이드를 참조하세요. YOLOv8에 필요한 패키지를 설치하는 동안 문제가 발생하면 일반적인 문제 가이드를 참조하여 해결 방법과 팁을 확인하세요.
필요한 패키지를 설치했으면 인터넷에서 이미지를 다운로드하여 추론을 실행할 수 있습니다. 아래 이미지를 사용하겠습니다.
그런 다음 필요한 패키지를 임포트하고 모델을 초기화하며 입력 이미지에서 원하는 클래스를 설정합니다. 여기서는 자동차, 바퀴, 자동차 문, 자동차 거울, 번호판 등의 클래스에 관심이 있습니다.
그런 다음 예측 방법을 사용하여 이미지의 경로와 함께 최대 감지 횟수에 대한 매개변수, IoU(intersection over union) 및 conf(신뢰도)에 대한 임계값을 제공하여 이미지에 대한 추론을 실행합니다. 마지막으로 감지된 객체는 'result.jpg'라는 파일에 저장됩니다.
다음 출력 이미지가 파일에 저장됩니다.
코딩 없이 YOLO-World가 무엇을 할 수 있는지 확인하고 싶다면 YOLO-World 데모 페이지로 이동하여 입력 이미지를 업로드하고 사용자 지정 클래스에 들어가면 됩니다.
사용자 지정 클래스를 반복해서 입력하지 않고도 나중에 바로 사용할 수 있도록 사용자 지정 클래스와 함께 모델을 저장하는 방법을 알아보려면 YOLO-World의 문서 페이지를 참조하세요.
출력 이미지를 다시 살펴보면 사용자 정의 클래스 "자동차 문"이 감지되지 않은 것을 알 수 있습니다. 훌륭한 성과에도 불구하고 YOLO-World에는 몇 가지 한계가 있습니다. 이러한 한계를 극복하고 YOLO-World 모델을 효과적으로 사용하려면 올바른 유형의 텍스트 프롬프트를 사용하는 것이 중요합니다.
이에 대한 몇 가지 인사이트를 소개합니다:
고급 객체 감지 기능을 통해 강력한 도구로 만들 수 있으며, 효율성과 정확성이 뛰어나며 실제로 논의한 자동차 부품 식별의 예처럼 다양한 애플리케이션에서 다양한 작업을 자동화하는 데 도움이 됩니다.
컴퓨터 비전과 AI에 대한 유니티의 기여에 대해 자세히 알아보려면 GitHub 리포지토리를 살펴보세요. AI가 의료 기술과 같은 분야를 어떻게 재편하고 있는지 궁금하다면 솔루션 페이지를 확인해 보세요. 욜로 월드와 같은 혁신의 가능성은 무궁무진해 보입니다!