다쏘시스템 3DEXCITE 및 Amazon Rekognition Custom Labels을 활용한 합성 데이터셋 기반 컴퓨터 비전
이 글은 스톰 리플라이(Storm Reply)의 CTO인 버나드 팩스(Bernard Packes)와 다쏘시스템 3DEXCITE의 선임 전략가인 칼 헉트(Karl Herkt)가 공동 작성한 포스팅입니다.
컴퓨터 비전은 산업 유지보수, 제조, 물류 및 소비자 애플리케이션에 매우 중요하지만 트레이닝 데이터세트를 매뉴얼로 생성해야 한다는 점에서 도입이 쉽지 않습니다. 산업 환경에서 레이블링이 된 사진을 만드는 작업은 주로 매뉴얼로 진행되기 때문에 인식 기능이 제한적이고, 업무 확장이 어려우며, 인건비의 발생과 사업적 가치 창출의 지연이라는 단점이 있습니다. 이는 제품 설계, 제품 엔지니어링 및 제품 구성을 빠르게 반복하는 비즈니스의 민첩성을 방해하는 요소입니다. 또한, 자동차, 비행기나 현대적 빌딩과 같은 복잡한 제품으로는 확장이 어렵습니다. 이러한 시나리오 상에서는 모든 레이블링 프로젝트가 고유성(특수한 제품과 관련됨)을 갖기 때문입니다. 따라서 컴퓨터 비전 기술은 데이터 준비 단계부터 많은 노력을 기울이지 않고는 대규모의 특수한 프로젝트에 적용하기 어려우며, 때로는 사례를 만들어내는 데에도 제한이 있을 수 있습니다.
이 포스팅에서는 고도로 전문화된 컴퓨터 비전 시스템을 설계 및 CAD 파일로부터 만들어 내는 새로운 접근 방식을 제시합니다. 우선 시각적으로 정확한 디지털 트윈과 합성 레이블링 된 이미지를 생성합니다. 그런 다음 이러한 이미지를 Amazon Rekognition Custom Labels에 전달하여 맞춤형 객체 인식 모델로 훈련을 시킵니다. 이때, 소프트웨어의 기존 IP를 사용함으로써 컴퓨터 비전을 경제적이고 다양한 산업적 상황에 적절하게 활용할 수 있습니다.
맞춤형 인식 시스템은 비즈니스 성과를 이끌어내는 데 도움이 됩니다.
디지털 트윈으로 생성된 전문적인 컴퓨터 비전 시스템은 특별한 장점을 가지고 있으며, 이는 다음의 사례에서 살펴볼 수 있습니다.
- 고유한 제품에 대한 추적성 제공 – 에어버스, 보잉 등 항공기 제조업체들은 모든 항공기에 고유 제조업체 일련 번호(MSN, Manufacturer Serial Numbers)을 부여합니다. 이 번호는 내공성 문서를 생성하고 비행 허가를 얻는 생산 공정 전체에서 관리됩니다. 디지털 트윈(물리적 제품을 나타내는 가상 3D 모델)은 각 MSN의 구성에서 파생될 수 있으며 산업 시설 전반에서 이 MSN의 진행 상황을 추적하는 분산 컴퓨터 비전 시스템을 생성합니다. 맞춤형 인식을 통해 항공사에 주어진 투명성을 자동화하고 항공사가 수동으로 수행하는 대부분의 체크포인트를 대체할 수 있습니다. 고유한 제품에 대한 품질 보장 자동화는 항공기, 자동차, 건물 및 심지어 공예품 생산에도 적용할 수 있습니다.
- 상황에 맞는 증강 현실 – 전문가급 컴퓨터 비전 시스템은 제한된 상황을 대상으로 하지만 식별 능력은 더욱 우수합니다. 예를 들어, 산업용 유지 보수 목적으로 사용되는 사진에서 스크류 드라이버를 찾는 것 자체는 중요하지 않습니다. 스크류 드라이버의 모델이나 일련 번호를 식별할 수 있어야 합니다. 이러한 제한된 상황에서는 맞춤형 인식 시스템이 인식한 객체와 관련된 더 많은 사항을 찾기 때문에 일반 인식 시스템보다 성능이 우수합니다. 맞춤형 인식 시스템은 HMI나 모바일 장치에서 제공되는 전용 증강 현실을 통해 정확한 피드백 루프를 가능하게 합니다.
- 엔드 투 엔드 품질 관리 – 시스템 엔지니어링을 통해 부분적인 구조를 디지털 트윈으로 생성하고, 제조 및 생산 프로세스의 다양한 단계에 적응하는 컴퓨터 비전 시스템을 생성할 수 있습니다. 시각적 제어를 제조 워크스테이션과 연계하여 엔드 투 엔드 검사 및 결함의 조기 탐지도 가능합니다. 이렇게 엔드 투 엔드 검사에 대한 맞춤형 인식을 통해 결함이 조립 라인으로 이어지는 것을 효과적으로 방지할 수 있습니다. 불량률을 줄이고 생산량을 극대화하는 것이 궁극적인 목표입니다.
- 유연한 품질 검사 – 현대의 품질 검사는 설계 변형과 유연한 제조에 대응해야 합니다. 제품 사용 및 제품 유지 보수에 대한 피드백 과정에서 디자인의 변형이 발생할 수 있습니다. 유연한 제조는 주문 제작 전략의 핵심 기능이며, 비용 최적화라는 린(lean) 제조 원칙에 부합합니다. 디지털 트윈에서 설계 변형과 제품 구성 옵션을 통합함으로써 맞춤형 인식을 통해 생산 계획 및 설계 변형에 컴퓨터 비전 시스템을 활발하게 적용할 수 있습니다.
Amazon Rekognition과 다쏘시스템의 3DEXCITE로 컴퓨터 비전을 향상 시키세요.
다쏘시스템은 유럽 2위의 소프트웨어 회사로 디지털 트윈에 대한 전문 지식을 보유하고 있으며, 3DEXCITE 팀은 그 중에서도 색다른 길을 모색하고 있습니다. Karl Herkt는 ‘합성 이미지로부터 훈련된 신경 모델이 물리적 제품을 인식할 수 있다면?’ 이라는 질문을 던졌습니다. 3DEXCITE는 그들의 기술을 AWS 인프라와 결합하여 이 문제를 해결했고, 이 독특한 접근 방식의 실현 가능성을 증명했습니다. 교차 도메인 객체 감지라고도 하는데, 여기서 탐지 모델은 소스 도메인(합성 이미지)의 레이블 이미지로부터 학습하고 레이블이 되지 않은 대상 도메인(물리적 구성 요소)에 대해 예측을 합니다.
다쏘시스템 3DEXCITE와 AWS 프로토타이핑 팀이 힘을 합쳐 산업용 기어박스의 일부를 인식하는 데모 시스템을 구축했습니다. 이 프로토타입은 3주 만에 제작되었으며, 98%의 F1 점수를 얻었습니다. 인식 모델은 소프트웨어 파이프라인에서 완전히 학습되었으며, 실제 부품의 사진은 제공되지 않습니다. 산업용 기어박스의 설계 및 CAD 파일에서 3DEXCITE는 시각적으로 정확한 디지털 트윈을 만들었습니다. 또한 디지털 트윈으로 수 천개의 합성 레이블 이미지를 생성했습니다. 그런 다음 Rekognition Custom Labels을 사용하여 이러한 이미지들로 고도로 전문화된 신경 모델을 훈련하고 관련 인식 API를 제공했습니다. 그들은 모든 웹캠에서 기어박스의 물리적 부품을 인식할 수 있도록 웹사이트를 구축했습니다.
Amazon Rekognition은 딥 러닝 기술을 사용하여 머신 러닝(ML) 전문지식이 필요 없이 객체, 사람, 텍스트, 장면, 활동, 잠재적으로 부적절한 콘텐츠를 식별하는 등 이미지와 비디오에서 의미 있는 메타데이터를 추출할 수 있도록 하는 AI 서비스입니다. 또한, 매우 정확한 얼굴 분석 및 얼굴 검색 기능을 제공하여 다양한 사용자 확인, 사람 수 및 안전 사용 사례에 대해 얼굴을 감지, 분석 및 비교할 수 있습니다. 마지막으로 Rekognition Custom Labels을 사용하면 가지고 있는 자체 데이터를 사용하여 객체 감지 및 이미지 분류 모델을 구축할 수 있습니다.
컴퓨터 비전을 위한 다쏘시스템의 합성 레이블 이미지 생성기술과 아마존의 Rekognition Custom Labels의 조합으로 인식 시스템의 워크플로우를 확장할 수 있습니다. 여기서 사용이 쉽다는 것은 상당히 중요한 장점입니다. Rekognition Custom Labels을 전체적인 소프트웨어 파이프라인에 추가하는 것은 API를 워크플로우에 통합하는 것 만큼 간단하고, 어렵지 않기 때문입니다. ML 전문가가 될 필요 없이 캡처된 프레임을 AWS로 전송하면 데이터베이스에 입력하거나 웹 브라우저에 표시할 수 있는 결과를 얻을 수 있습니다.
이는 트레이닝 데이터셋을 매뉴얼로 생성하는 것과 비교했을 때 상당히 개선되었음을 확인할 수 있습니다. 비용이 많이 드는 불필요한 작업 없이 보다 빠르고 정확하게 더 나은 결과를 얻을 수 있습니다. 수많은 잠재적 사용 사례에서 다쏘시스템과 Rekognition Custom Labels의 조합은 오늘날의 비즈니스에 중요하고 즉각적인 ROI를 제공할 수 있는 잠재력을 가지고 있습니다.
솔루션 개요
이 솔루션의 첫 번째 단계는 트레이닝 데이터셋을 생성하는 이미지를 렌더링하는 것입니다. 작업은 3DEXCITE 솔루션을 통해 수행됩니다. 스크립트를 사용하여 프로그래밍 방식으로 레이블링 데이터를 생성할 수 있습니다. Amazon SageMaker Ground Truth는 분류 및 객체 감지를 위해 이미지와 비디오에 쉽게 레이블을 지정할 수 있는 주석 도구를 제공합니다. Amazon Rekognition으로 모델을 훈련하려면 레이블링 파일이 Ground Truth 형식을 준수해야 합니다. 이러한 레이블은 이미지 크기, 경계 상자 좌표 및 클래스 ID와 같은 정보를 포함한 JSON형식입니다.
그런 다음 합성 이미지와 매니페스트를 Amazon Simple Storage Service, Amazon S3에 업로드하면 Rekognition Custom Labels이 이를 트레이닝 데이터셋의 구성 요소로 가져올 수 있습니다. Rekognition Custom Labels이 모델과 실제 이미지 세트를 테스트할 수 있도록 카메라로 촬영한 실제 엔진 부품의 사진 세트를 제공하고 테스트 데이터셋으로 사용하기 위해 Amazon S3에 업로드합니다.
마지막으로 Rekognition Custom Labels은 합성 트레이닝 데이터셋과 실제 객체의 사진으로 구성된 테스트 데이터셋을 사용하여 최상의 객체 감지 모델을 훈련하고, 애플리케이션에서 객체 인식을 실행하는데 사용할 모델로 엔드포인트를 만듭니다.
다음 다이어그램은 이 솔루션의 워크플로우를 보여 줍니다.
합성 이미지 만들기
합성 이미지는 다쏘시스템의 제품인 3DEXPERIENCE 플랫폼에서 생성됩니다. 이 플랫폼을 사용하여 객체의 CAD(Computer-aided design) 파일을 기반으로 사진과 같은 이미지를 생성하고 렌더링할 수 있습니다. 플랫폼에서 이미지 변환을 위한 구성을 변경하여 몇 시간 안에 수천 개의 다양한 이미지를 생성할 수 있습니다.
이 프로토타입에서는 물체 감지를 위해 시각적으로 구별되는 다음 다섯 가지 기어박스 부품을 선택했습니다. 여기에는 기어 하우징, 기어비, 베어링 커버, 플랜지 및 웜 기어가 있습니다.
우리는 이미지의 다양성을 높이고 합성 데이터를 보다 사실적으로 만들기 위해 다음과 같은 데이터 증강 기법을 사용했습니다. 이는 모델 일반화 오류를 줄이는 데도 도움이 됩니다.
- 확대/축소 – 이 방법은 이미지의 객체를 임의로 확대/축소합니다.
- 회전 – 이 방법은 이미지에서 물체를 회전시키며, 가상 카메라가 360도 각도에서 물체를 무작위로 촬영하는 것처럼 보입니다.
- 소재의 look & feel 개선 – 초기 렌더링 시 일부 기어 부품의 소재의 사실성이 떨어지는 점을 확인했습니다. 3DEXCITE 팀은 합성 이미지를 개선하기 위해 금속 효과를 추가했습니다.
- 다양한 조명 설정 사용 – 이 프로토타입에서는 두 가지 조명 조건을 시뮬레이션 했습니다.
- 창고 – 사실적인 조명 분배; 그림자와 반사가 가능합니다.
- 스튜디오 – 물체 주위로 균일한 빛이 비춰집니다. 사실적이지는 않지만 그림자나 반사가 없습니다.
- 물체가 실시간으로 어떻게 보이는 지에 대한 현실적인 위치 사용 – 실제로 플랜지 및 베어링 커버와 같은 일부 물체는 일반적으로 물체의 표면에 배치되며 모델은 상단 및 하단 측면을 기준으로 물체를 감지합니다. 따라서 edge position이라고 하는 부품의 얇은 가장자리를 보여주는 트레이닝 이미지를 제거하고 평평한 위치에 있는 물체의 이미지를 늘렸습니다.
- 하나의 이미지에 여러 객체 추가 – 실제 시나리오에서는 여러 기어 부품이 모두 하나의 뷰에 나타날 수 있으므로 여러 기어 부품이 포함된 이미지를 준비했습니다.
3DEXPERIENCE 플랫폼에서는 이미지에 다양한 배경을 적용할 수 있어 이미지 다양성을 더욱 높일 수 있습니다. 이번 프로토타입에서는 시간적 제한 때문에 구현하지 못했습니다.
합성 트레이닝 데이터셋 가져오기
ML에서 레이블이 지정된 데이터는 트레이닝 데이터가 목표를 표시하도록 주석 처리됨을 의미하며, 이 목표가 ML 모델이 예측해야 하는 답입니다. Rekognition Custom Labels에서 사용할 수 있는 레이블링된 데이터는 Ground Truth 매니페스트 파일 요구 사항을 준수해야 합니다. 매니페스트 파일은 하나 이상의 JSON 라인으로 구성되며, 각 라인은 하나의 이미지에 대한 정보를 포함하고 있습니다. 합성 트레이닝 데이터의 경우, 레이블링 정보는 앞에서 언급한 CAD 파일 및 이미지 변환 구성을 통해 프로그래밍 방식으로 생성될 수 있으므로 레이블링을 위한 매뉴얼 작업을 상당 부분 줄일 수 있습니다. 레이블 파일 형식에 대한 자세한 내용은 매니페스트 파일에서 매니페스트 파일 생성 및 객체 위치 지정을 참조하십시오. 다음은 이미지 레이블링의 예입니다.
매니페스트 파일이 준비되면 S3 버킷에 업로드한 후 Amazon SageMaker Ground Truth 로 레이블링된 이미지 가져오기 옵션을 선택하여 Rekognition Custom Labels에 트레이닝 데이터셋을 생성합니다.
매니페스트 파일을 가져온 후에는 Amazon Rekognition 콘솔에서 레이블링 정보를 시각적으로 볼 수 있습니다. 이렇게 매니페스트 파일이 생성되어 불려온 것을 확인할 수 있습니다. 특히 경계 상자는 이미지의 객체와 정렬되어야 하며 객체의 클래스 ID가 올바르게 할당되어야 합니다.
테스트 데이터셋 생성
테스트 이미지는 실제 상황에서 핸드폰이나 카메라를 이용해 다양한 각도와 조명 조건으로 촬영이 됩니다. 이를 비교하여 합성 데이터를 통해 훈련시킨 모델의 정확도를 검증하려 합니다. 이러한 테스트 영상을 S3 버킷에 업로드한 다음 Rekognition Custom Labels에서 데이터셋으로 가져옵니다. 또는 로컬 컴퓨터에서 데이터셋으로 직접 업로드할 수 있습니다.
Rekognition Custom Labels은 이미지 주석 기능을 내장하고 있으며, 이는 Ground Truth와 비슷한 경험을 제공합니다. 테스트 데이터를 가져오면서 레이블링 작업을 시작할 수 있습니다. 객체 감지 사용 사례의 경우 경계 상자는 객체 주위에 밀접하게 만들어져야 하며, 이는 모델이 대상 객체에 속하는 영역과 픽셀을 정확하게 학습하는 데 도움이 됩니다. 또한 부분적으로 시야에서 벗어나거나 다른 객체에 의해 가려진 경우에도 모든 영상에서 대상 객체의 모든 인스턴스에 레이블을 지정해야 합니다. 그렇지 않을 경우모델이 부정확한 오류를 예측하는 경우가 많아집니다.
교차 도메인 객체 감지 모델 생성하기
Rekognition Custom Labels은 완전 관리형 서비스이기 때문에, 여러분은 훈련 및 테스트 데이터셋만 제공하면 됩니다. 일련의 모델을 훈련시키고 제공된 데이터를 기반으로 가장 성능이 좋은 모델을 선별합니다. 이 프로토타입에서는 앞에서 언급한 이미지 어그멘테이션 방법의 다른 조합을 반복적으로 실험하여 합성 트레이닝 데이터셋을 준비합니다. Rekognition Custom Labels로 각 트레이닝 데이터셋 당 한개의 모델이 생성되며, 이를 통해 해당 사례에 대한 최적의 트레이닝 데이터셋을 비교하고 찾을 수 있습니다. 각 모델은 최소의 트레이닝 이미지를 가지고 있고, 다양한 이미지를 포함하고 있으며, 최고의 모델 정확도를 제공합니다. 15회 반복 실험 후 약 10,000개의 합성 트레이닝 이미지를 사용하여 98%의 모델 정확도의 F1 점수를 달성했으며, 이는 객체당 평균 2,000개의 이미지입니다.
모델 추론 결과 (학습을 마친 모델로 실제 과제를 수행한 결과)
다음 이미지는 실시간 추론 애플리케이션에서 사용되는 Amazon Rekognition 모델을 보여줍니다. 모든 부품이 높은 정확도를 바탕으로 올바르게 감지됩니다.
결론
이 포스팅에서는 순수 합성 이미지로 컴퓨터 비전 모델을 교육하는 방법과 모델이 실제 물체를 안정적으로 인식할 수 있는 방법을 시연했습니다. 본 과정을 통해 트레이닝 데이터를 수집하고 레이블을 지정하는 매뉴얼 작업을 크게 절약할 수 있습니다. 다쏘시스템은 이러한 방식으로 디자이너와 엔지니어가 만들어 낸 3D 제품 모델의 비즈니스 가치를 확대할 수 있었습니다. 이는 CAD, CAE 및 PLM 데이터를 실제 세계의 이미지 인식 시스템에 사용할 수 있기 때문입니다.
Rekognition Custom Labels의 주요 기능과 사용 사례에 대한 자세한 내용은 Amazon Rekognition Custom Labels을 참조하십시오. 이 프로젝트처럼 기본 레이블로 Ground Truth가 표시되지 않는 경우 레이블링 데이터를 Rekognition Custom Labels 에서 사용할 수 있는 형식으로 변환하는 매니페스트 파일 만들기를 참조하십시오.