KITECH: Building a factory digital twin and synthetic data pipeline for manufacturing AI

Sep 4, 2026
KITECH factory digital twin - point cloud, URP, and HDRP shown together

이 녹화된 발표에서 박사님은 한국산업기술원의 제조 AI 협업팀을 이끄는 홍인원과 Unity Korea의 테크니컬 어카운트 매니저 박우진이 주조 공장을 디지털 트윈으로 탈바꿈시킨 14주간의 프로젝트를 소개합니다. 그들은 Unity Industry를 사용하여 CAD 없이 포인트 클라우드 데이터로 장면을 구축한 방법, Unity AI를 사용하여 최적화 및 UI 작업을 가속화한 방법, 그리고 트윈을 인간-로봇 협업에 AI를 훈련하는 합성 데이터 파이프라인으로 전환한 방법을 다룹니다.

무엇을 배우게 될지

  • 팀이 CAD 소스 파일 없이 포인트 클라우드 데이터로 금속 주조 공장 디지털 트윈을 구축한 방법
  • Unity AI, Asset Manager, Asset Transformer, 그리고 Version Control이 프로덕션 파이프라인에 어떻게 들어맞는지
  • 디지털 트윈을 실제 측정값에 맞추고 남은 격차를 보정하는 방법
  • 수동으로 프레임을 주석 처리하는 대신 레이블이 지정된 훈련 데이터를 자동으로 생성하는 방법
수치로 보면 - 발표에서
측정 기준
프로젝트 기간
가치
킥오프 후 14주
소스 에셋 정리됨
가치
627에서 218로
소스 코드 체크인
가치
77
시각화된 데이터셋
가치
39개 중 20개
증강을 위해 사용되는 물리 기반 세계 모델
가치
10개 이상
캡처된 데이터셋 에피소드
가치
17 (9 인간-로봇, 8 로봇만)
센서 동기화율
가치
20 Hz
캡처된 원본 프레임
가치
100,000 이상
총 캡처 시간
가치
80분 이상

로봇과 휴머노이드가 공존할 수 있는 다가오는 AI 팩토리 시대에, 우리는 파이프라인이 시뮬레이션 및 데이터 계층 역할을 할 수 있다고 믿습니다.

Dr. Hongin Won
Dr. Hongin Won - Korea Institute of Industrial Technology
Manufacturing AI Collaboration Team Lead
KITECH – 제조 AI를 위한 Unity 기반 합성 데이터 파이프라인

이 발표는 2026년 7월 Unite 서울 컨퍼런스에서 녹화되었습니다.

비디오 대본

강연자

  • 박우진, 테크니컬 어카운트 매니저, Unity 코리아
  • VR3S 홍인원, 리드, 제조 AI 협업팀, 제조 AI 연구센터, 한국산업기술대학교(KITECH)
  • 황재훈, 연구원, KITECH

런타임: 41분

이 녹취록에 대하여: 이 녹취록은 읽기 쉽도록 편집되었습니다.

서론: 살아있는 디지털 트윈이 된 골격 공장 장면

[00:00] Woojin Park: 오늘 저는 제조 AI를 위한 Unity 디지털 트윈 기반 합성 데이터 파이프라인에 대해 이야기할 것입니다. 저는 Unity 코리아의 테크니컬 어카운트 매니저 박우진입니다. Unity 저는 산업 고객들을 위한 기술 지원을 담당하고 있습니다. 이 프로젝트에서 저는 KITECH와 함께 14주 동안 진행한 공장 디지털 트윈 구축 지원 활동을 발표할 것입니다.

오늘 발표를 한 문장으로 요약하자면 이렇습니다. 그것은 살아있는 디지털 트윈이 된 골격 공장 장면의 여정입니다.

[00:51] 저는 한국산업기술원과 Unity가 Unity AI를 사용하여 걸어온 여정에 대해 이야기할 것입니다. 먼저 Unity AI 관련 제품들을 소개하겠습니다. 그럼 저는 프로젝트 자체인 KITECH VPH-Metal로 넘어가겠습니다.

시작하기 전에 최종 결과 영상 보여드릴게요. 지금 보고 계신 곳은 몰드 기계가 모래 주형을 만드는 곳입니다. 여기서 캐스트 제품들은 스퍼(sprue)가 제거되고, 디게이팅(degating) 구역을 통과한 후, 최종 그라인딩 및 후처리 구역으로 이동합니다. 이 발표가 끝나면 이 장면이 Unity 어떻게 만들어졌는지 이해하게 될 것이라고 생각합니다.

[01:38] 저는 물리 AI 및 관련 주제에 대한 많은 세션과 세미나에 참석해 보았습니다. 보통 그런 세션에서는 이런 공장의 사진, 이미지 또는 비디오를 보게 되고, "알겠어, Unity 다른 도구로 디지털 트윈을 만들 수 있구나"라고 생각하게 되죠. 하지만 실제로 몇 명이 필요한지, 계획하는 데 얼마나 많은 시간이 걸리는지, 그리고 무엇이 속도를 높일 수 있나요? 솔직히 그런 종류의 정보는 얻기 어려운 경우가 많습니다. 그래서 오늘 저는 우리가 어떤 제품을 사용했고 어떻게 구축했는지, 그리고 AI를 통해 어떻게 프로세스를 가속화할 수 있었는지에 대해 이야기하겠습니다.

Unity AI 포함된 것: 에이전트, MCP 서버 및 생성기

[02:23] Unity AI는 다음으로 구성되어 있습니다. 첫 번째는 Unity 에이전트입니다. 그리고 MCP 서버와 제너레이터도 있습니다. 지금은 이 핵심 용어들을 염두에 두는 것으로 충분합니다.

Unity 에이전트는 Claude나 Gemini와 같은 AI를 에디터 내에서 직접 사용할 수 있게 해줍니다. MCP 서버의 경우, 한국의 많은 환경이 폐쇄망에서 운영됩니다. 따라서 귀사에서 클로드나 코덱스 같은 에이전트를 내부적으로 설정했다면, 프로토콜을 통해 연결하여 Unity 사용할 수 있습니다.

Unity 에이전트와 MCP 서버의 가장 큰 차이점은 무엇인가요? Unity 에이전트는 우리가 직접 구축한 스킬들 중 약 70~80개를 백엔드에서 실행합니다. 그래서 Unity 개발을 훨씬 더 가속화할 수 있습니다.

[03:12] Unity가 궁극적으로 목표로 하는 것은 3D 실시간 애플리케이션입니다. 3D 실시간 애플리케이션을 생각할 때, 애니메이션이 필요하고, 사운드가 필요하며, 객체가 필요하고, 많은 텍스처와 이미지가 필요합니다. 그러니까 코드를 작성하는 것만이 전부는 아니군요. Unity Agent 또는 MCP Server를 사용하면 각 에셋 유형에 대해 생성기가 생성하는 AI 에셋도 사용할 수 있습니다.

Unity Industry 도구: Asset Manager, 버전 관리, Asset Transformer

[03:45] 또한 Unity Industry에는 에셋 관리를 위한 도구인 Asset Manager, 버전 관리를 위한 도구인 Version Control, 그리고 시뮬레이션에서 직접 사용될 수 있도록 에셋이나 CAD 모델을 준비하는 Asset Transformer가 포함됩니다. 그것들이 세 가지 도구입니다.

CAD 없이 시작하기: 포인트 클라우드에서 메시로

[04:15] 오늘 프로젝트의 완성된 버전을 미리 보신 분들은 아마도 이것이 어디서 시작되었는지 궁금해하실 겁니다. 이러한 프로젝트에서는 보통 CAD 데이터를 가지고 있는 사람들이 그 CAD를 Unity 가져와서 프로젝트를 진행합니다. 하지만 저희는 작업할 CAD가 없어서 포인트 클라우드 데이터부터 시작했습니다.

그런 다음 해당 포인트 클라우드를 단순화된 로우 폴리 메시로 변환했고, 그 후 Asset Transformer, Asset Manager, Unity Version Control, Unity AI 및 기타 여러 도구와 패키지를 사용하여 14주 동안 프로젝트를 진행했습니다. 지금 보고 계신 것은 동일한 각도에서 Unity 시각화된 포인트 클라우드입니다.

[05:04] 왼쪽에 에셋들이 있고, 그 다음에는 Asset Transformer, Asset Manager, 자동화, Editor, AI와 같은 다양한 도구들이 있습니다. 제가 이 도구들이 어디에 사용되었는지 설명하겠습니다. 당신이 가장 관심 있을 부분은 맨 오른쪽에 있는 훈련 섹션이거나 시뮬레이션 및 디지털 트윈 부분일 것입니다. 궁극적으로 저는 포인트 클라우드가 Unity Asset Manager 및 디지털 트윈과 같은 출력에 어떻게 연결되었는지 설명할 것입니다.

Asset Transformer: 에셋 최적화 및 시뮬레이션 준비

[05:42] Asset Transformer와 Unity AI로 시작해 봅시다. 왼쪽 옷이 약간 변하고 있습니다. 오른쪽 아래에서 동일한 의상이 11,000 폴리곤과 110만 폴리곤으로 렌더링된 모습과 각 경우에 폴리곤 모양이 어떻게 다른지 볼 수 있습니다.

Asset Transformer CAD 파일이나 오브젝트 파일이 있을 때, 이를 쉽게 최적화하고 경량화할 수 있게 해주는 도구입니다. 왼쪽에 있는 옷은 육안으로 거의 차이가 없습니다. 그래서 Asset Transformer 눈에 띄는 차이를 최소화하면서 컴퓨터가 렌더링하기에 모델을 가능한 한 가볍게 만듭니다.

[06:38] 아래쪽에서 회전하는 큐브들을 보면, 같은 코드를 가진 큐브들을 회전시킬 때조차도 흰색 큐브는 자신의 중심을 기준으로 오른쪽으로 회전하는 반면, 노란색 큐브는 다른 지점을 중심으로 회전하는 것처럼 보입니다. CAD 모델링에서 이것은 원점의 개념에 해당합니다. 그 원점이 우리가 질량 중심, 경계 상자 중심, 또는 단순히 임의의 값으로 설정되었는지에 따라, 코드를 올바르게 작성하더라도 결과가 완전히 다르게 나올 수 있습니다. 그래서 이 부분들은 수정되고 개선되어야 했고, 우리는 이 과정을 "시뮬레이션 준비 완료"라고 불렀습니다.

[07:26] Unity에서 우리는 Asset Transformer를 사용했고 최적화를 수행하는 방법에 대해 KITECH와 협력했습니다. 모든 작업이 완벽하게 수행된 것은 아닙니다. 예를 들어 사다리의 경우, 피벗을 이동할 때 직선으로 압축되는 문제가 있었습니다. 이 경우, 우리는 Unity AI 사용하여 실제 기하학적 원인을 분석했고, 그런 다음 프로젝트 전체에 적용할 수 있는 기술 세트를 만들었습니다. 그래서 저희는 스킬 마크다운을 작성하여 KITECH의 전체 공장 장면에 적용했고, 이러한 정적 객체들을 움직일 수 있는 객체로 만들었으며, 첫 번째 최적화 작업을 수행했습니다.

Asset Manager 버전 관리하기: 627개 소스 파일에서 218개로 감소

[08:25] 저희가 프로젝트를 진행하면서 처음에 보여드린 것은 포인트 클라우드 데이터였고, 그다음 그것을 메시로 변환하여 생성한 로우 폴리 데이터, 그리고 방금 보여드린 최적화 및 경량화된 시뮬레이션 준비 데이터였습니다. 그래서 데이터의 세 가지 버전이 있었습니다. 하지만 솔직히 말해서, 그보다 훨씬 더 많은 버전들이 있었을 거예요. 이 모든 버전들로 인해 혼란을 피하고 필요한 데이터를 적절한 시점에 가져오기 위해 Version Control 필수적이었습니다.

[08:45] 그래서 우리가 사용한 도구는 Asset Manager였습니다. CAD 파일의 경우 일반적으로 미리보기가 지원되지 않습니다. CAD는 많은 장점이 있지만, 3D 객체는 렌더링하기에 무겁고 미리보기가 없으면 어떤 에셋이 필요한 것인지 알기 어려울 수 있습니다.

[09:03] Asset Manager는 모든 객체에 대한 미리보기를 제공합니다. 편집기에서 직접 다운로드하거나 업로드하여 바로 사용할 수 있습니다. 또한 다른 형식으로 변환하거나 자동으로 최적화하는 기능도 포함하고 있습니다.

각 모델 파일을 하나씩 업로드하는 대신, 우리는 일련의 규칙을 정의하고 온톨로지 기반 AAS 데이터를 생성한 다음 Asset Manager 업로드했습니다. 일반 목적의 FBX뿐만 아니라 USD와 필요한 다른 형식으로도 업로드했습니다. 그래서 원래 627개의 소스 파일이 있었는데, 단일 표준을 적용한 후 218개 파일로 줄여서 업로드했습니다.

URP, HDRP 및 USD 전반의 Unity Version Control

[10:07] 다음에 작업한 부분은 Version Control이었습니다. 많은 분들에게 Version Control 아마 Git 떠올리게 할 것입니다. 하지만 Git 사용하면 이미지나 대용량 파일을 관리하기가 기본적으로 매우 어렵습니다.

저희의 경우, 이 포인트 클라우드를 Unity URP 렌더링 파이프라인에서 실행했고, 더 높은 충실도의 HDRP 실행했습니다. 두 버전을 유지하고 기능을 추가하기 위해 Unity Version Control 사용했습니다. 14주 동안 URP, HDRP, USD 브랜치를 분리하고, 에디터를 통합 구성 관리 하에 유지했으며, 변경 세트를 기반으로 77개 버전을 처리했습니다.

Unity AI 사용하여 런타임 대시보드 구축하기

[11:18] 에셋이 준비되고 Version Control이 갖춰지자, 본격적인 개발에 착수할 시간이었다.

사람들이 처음 디지털 트윈을 원할 때, 가장 먼저 요구하는 것은 대시보드입니다. 과거에는 이 대시보드를 구축하는 것이 UI 및 UX 디자이너를 영입하고, 각 기능을 클래스로 깔끔하게 구축하는 것 등을 의미했습니다. 그게 예전에 걸리던 시간이었어요.

[11:32] 하지만 이제 이 공장에서 보여주고 싶은 데이터의 이미지를 만들거나 컨셉 이미지를 만들면, Unity AI 내부의 기술이 백엔드에서 실행되어 그것을 바로 인터랙티브 UI 대시보드로 만들어 줍니다.

보통 현장에서는 PLC 데이터가 직접 연결되지 않는 경우가 많습니다. 저희의 경우에도 방화벽 및 보안 관련 문제가 있었기 때문에 연구원들과 협력하여 일종의 더미 PLC 데이터셋을 만들고, 이를 Unity 내부의 대시보드에 연결했습니다. 우리는 그 전체 과정을 함께 진행했습니다.

자석 시나리오용 사용자 지정 편집기 도구

[12:21] 우리가 다음에 작업한 것은 단순히 시각적으로 설득력 있는 시뮬레이션이 아니라, 진정으로 사실에 기반한 프로젝트였습니다. 런타임에 대시보드를 생성한 후, 에디터 자체 내부에 대시보드나 사용자 지정 편집기를 생성해야 했습니다.

이 공장에서는 첫 번째 시나리오에서 자석이 움직이며 자기력을 사용하여 물체를 집는 것이 포함되었습니다. 금속 조각을 들어 올리거나 들어 올리지 않기 위해 필요한 자기력의 양을 하드 코딩하는 대신, 에디터에 직접 노출했습니다. 그래서 각 카트의 상태와 자석의 상태, 심지어 물리 시뮬레이션이 어떻게 작동하는지도 모두 Unity AI 사용하여 개발되었습니다.

컨셉 이미지에서 용광로 효과 만들기

[13:21] 제가 다음에 이야기할 것은 화로 효과입니다. 여러분 중 일부는 시각 효과가 필요하다고 생각할 수 있습니다.

Unity AI MCP의 가장 강력한 기능 중 하나는 씬 뷰 또는 게임 뷰를 캡처할 수 있다는 것입니다. 프로젝트를 작업할 때, 전화기가 색상 보정을 적용하는 것처럼 Unity 에디터 게임 뷰 내부에서 색상이 다르게 보일 수 있습니다. 원하는 효과를 그 색상들 안에서 만들려면 색상 조합과 같은 것들이 필요합니다. 과거에는 그게 예술가들이 다루어야 하는 영역이었습니다.

[14:01] 하지만 이제 AI에게 "장면에 네 개의 구체를 만들고, 그 구체에 용광로 효과를 적용하고, 내가 제공하는 컨셉이나 컨셉 이미지와 가장 비슷해 보일 때까지 계속 업데이트해 줘"라고 말할 수 있습니다. Unity AI 가장 적합한 효과를 찾아 생성하고, 심지어 실제 장면에 한 번에 적용합니다.

URP를 HDRP 변환하기

[14:24] 그 후 URP 버전을 만든 다음 HDRP로 변환했습니다. URP를 HDRP 변환하는 과정 중에 다른 일로 바빠서, 준비해 두었던 그래픽 설정, 개념 및 기타 세부 사항을 AI에게 제공했습니다. 여기서 보시는 영상은 AI가 시간이 지남에 따라 그 콘셉트 이미지와 일치하도록 단계적으로 개선한 결과물입니다.

[14:51] 처음에는 검은 화면이거나 너무 밝은 화면이었습니다. 그러고 나서 원래대로 돌아가서 약간 더 밝아졌고 스스로 이 단계를 거치면서 공장 장면이 계속 업데이트되었습니다. 점차적으로 개선되었고, 결국 제가 생각했던 세련된 HDRP 장면이 되었다고 말할 수 있습니다.

런타임 USD 내보내기

[15:18] 마지막으로 언급할 것은 URP와 HDRP에서 멈추지 않았다는 것입니다. 저는 다른 대기업들의 디지털 트윈 프로젝트도 담당하고 있는데, 그들이 가장 흔하게 하는 말은 "우리 회사 내의 다른 팀이나 부서에서 이 잘 정리되고 시뮬레이션 준비가 된 데이터를 다른 도구나 다른 플랫폼에서 사용하고 싶어 한다"는 것입니다.

[15:44] 그래서 우리가 작업한 것은 런타임에서 USD 내보내기를 활성화하는 것이었습니다. 런타임 내보내기는 시뮬레이션을 실행하는 동안 레이아웃을 어느 정도 변경하고, 이를 저장한 다음, 해당 정확한 상태를 USD 형식으로 내보낼 수 있음을 의미합니다. 그렇게 하면 다른 플랫폼에서 텍스처, 지오메트리 및 모든 것을 있는 그대로 보존하고 바로 사용할 수 있습니다.

쌍둥이를 월드 모델에 공급하기

[16:18] 이렇게 디지털 트윈을 갖게 되면, 단순히 연결하고 대시보드를 보는 것만이 아닙니다. 오늘 가장 뜨거운 주제인 월드 모델에 대해서도 이야기하고 싶습니다.

FLUX, Qwen 또는 NVIDIA Cosmos 3와 같은 월드 모델을 사용하면 Unity 구축한 디지털 트윈의 화면을 캡처하여 해당 화면이나 이미지를 입력하고, 거기서 공장 노후화, 증기 배출, 시뮬레이션-실제(sim-to-real) 시나리오 또는 심지어 하루 중 시간 변화와 같은 것들을 보여줄 수 있습니다. 저희는 이 분야들에 대해 다양한 데이터셋을 확보할 수 있었습니다.

프로젝트 결과 수치로

[16:55] 저희 결과를 수치로 말씀드리자면, 프로젝트는 시작부터 14주 동안 진행되었습니다. 우리는 627개의 자산을 218개로 정리했습니다. 저희는 77개의 소스 코드 체크인을 했고, 포인트 클라우드부터 HDRP 진행했습니다. 저희가 가지고 있던 39개의 데이터셋 중에서 20개를 시각화했습니다. 나중에 우리는 10개 이상의 물리 기반 월드 모델을 기반으로 데이터 증강을 수행했습니다.

병렬 비교 및 제조 도메인 격차

[17:27] 저희가 최종 비교 영상을 만들었습니다. 여기서 포인트 클라우드를 먼저, 중간에 URP를, 그리고 HDRP 볼 수 있습니다. 그 후 우리는 확산, 월드 모델 시뮬레이션 및 데이터 증강을 실행했습니다.

이 과정에서 제가 지적하고 싶은 한 가지가 있습니다. 일반 데이터로 훈련된 모델은 제조 도메인 데이터에 대한 이해가 부족합니다. 그래서 우리는 제조 분야에서 데이터 격차를 해소하는 방법에 대해 많은 시간을 들여 연구했습니다. 이 부분은 박사님께서 다음에 설명하실 것입니다. 홍인원

저는 박사님께 감사드립니다. 홍인원, 연구원 한영석, 연구원 황재훈 및 이 프로젝트에 함께 참여한 많은 분들께 감사드립니다.

KITECH: 디지털 트윈을 AI가 학습할 수 있는 환경으로 전환

[18:47] Dr. 홍인원: 저는 한국산업기술원에서 온 홍인원입니다.

이전에 박우진 매니저는 주조 공장을 위한 Unity 공장 디지털 트윈을 구축하고 확장하는 방법을 설명했습니다. 다음 단계로, 해당 디지털 트윈을 AI가 학습하고 테스트할 수 있는 환경으로 만드는 방법에 대해 이야기하겠습니다.

오늘 발표 제목은 제조 AI를 위한 Unity 디지털 트윈 기반 합성 데이터 파이프라인입니다. 제목에 합성 데이터 파이프라인이 언급되어 있으므로, "그럼 데이터를 정확히 어떻게 합성하는 걸까?"라고 생각하실 수 있습니다. 하지만 그 전에 가장 중요한 질문은 "디지털 트윈이 실제 시스템과 일치하도록 정말 구축되었는가?"입니다. 그것을 정확히 어떻게 검증하는지에 좀 더 집중하고 싶습니다. 우리는 현실과 일치하는 디지털 트윈 모델을 구축하는 과정을 "접지(grounding)"라고 불렀으며, 저는 그 관점에서 설명하겠습니다.

팀 및 연구 방향

[19:49] 저는 KITECH 제조 AI 연구 센터의 제조 AI 협업 팀을 이끌고 있는 홍인원입니다. 저의 전문 분야는 제조 AI, Digital Twins, 산업 데이터 인프라입니다. 특히, 제가 관심을 가지는 Digital Twins 분야는 가상화, 즉 실제 세계의 문제를 가상 환경으로 옮기는 방법; 생성, 즉 그 환경 내에서 필요한 데이터를 만드는 방법; 그리고 검증, 즉 그 결과를 실제 세계 검증으로 되돌리는 방법입니다.

[20:18] 이 프로젝트에 참여한 주요 연구원은 저희 센터의 황재훈 연구원과 하승엽 연구원입니다. 연구원 황재훈은 센서를 실제 환경에서 트윈으로 옮긴 후 남은 차이를 측정하고 보정하는 작업을 담당했고, 연구원 하승엽은 인간-로봇 시뮬레이션 및 동작을 담당했으며 광범위한 조건에서 데이터를 확장했습니다.

[20:48] 제조용 Digital Twins에 대한 우리의 연구 방향은 한 줄로 요약됩니다. AI를 위한 Digital Twins, Digital Twins를 위한 AI입니다. 이는 AI가 학습하고 테스트될 수 있는 환경을 만들고, AI를 사용하여 Digital Twins 재구성하고 업데이트하는 것을 의미합니다. 저희는 또한 멀티 에이전트 시스템 및 LLM 기반의 고급 Digital Twins 연구하고 있습니다.

[21:09] 저희 센터에서 구축한 모델들에 대한 짧은 비디오입니다. 이 비디오는 EV 조립 라인, 도시 물류, 주조 공장 등을 트윈으로 전환하고 단일 공급망으로 연결하는 모델을 소개합니다. 저희는 Unity 시뮬레이터를 많이 사용하지만, 백엔드에서는 더 가벼운 시뮬레이션으로 시나리오를 모델링하기도 하며, 그 결과물은 Unity 통합 파이프라인으로 가져옵니다. 그것은 저희 연구의 주요 방향입니다.

[21:48] 해당 영상에서는 센서 융합 및 LLM 기반 에이전트가 로봇 경로를 계획하는 연구를 포함하여 그곳에서 개발된 시뮬레이션 및 검증 기술도 소개합니다. 또한 Unity MCP 기능을 사용하여 로봇 경로를 계획하는 예제도 포함하고 있습니다.

인간-로봇 협업과 HRC 데이터가 부족한 이유

[22:09] 오늘 주제는 AI가 학습하고 테스트할 수 있는 환경을 구축하는 것입니다. 이 발표에서 다루는 시나리오는 인간과 로봇이 협력하는 제조 현장입니다. 인간과 로봇이 같은 공간에서 함께 일하는 환경을 인간-로봇 협업(HRC)이라고 합니다.

[22:25] 발표 흐름에 관해서는, 먼저 왜 이러한 종류의 HRC 데이터가 실제 세계에서 그렇게 희소한지, 그리고 왜 우리가 그것을 디지털 트윈 모델에 완전히 구축해야 하는지를 말씀드리겠습니다. 그러면 저희가 이 문제를 극복하기 위해 취한 접근 방식과 개발한 데이터 합성 방법론을 소개하겠습니다. 그리고 디지털 트윈 모델을 구축할 때, 많은 부분이 실제 세계와 완전히 일치하지 않습니다. 다시 말해, 실제와 시뮬레이션 간의 격차가 발생하며, 저는 그 격차를 어떻게 보정하고 해결했는지도 설명할 것입니다.

[23:02] 데이터 문제부터 시작하겠습니다. 여러분 모두 아시다시피, AI는 데이터로부터 학습합니다. 하지만 어떤 필드는 충분한 데이터가 있는 반면, 다른 필드는 그렇지 않습니다. 예를 들어, 자율 주행의 경우 수백만 킬로미터의 주행 기록을 쉽게 얻을 수 있으며, 일반적인 Vision 데이터의 경우 웹이나 일상생활에서 이미지와 비디오를 가져올 수 있습니다. 언어 모델은 전체 인터넷의 데이터를 훈련에 사용할 수도 있습니다.

하지만 제조 현장, 특히 인간과 로봇이 함께 작업하는 경우, 작업자가 로봇에 가까이 접근하거나, 신체 일부가 가려지거나, 사람이 안전 구역 안팎으로 이동하는 데이터가 필요합니다. 그런 종류의 데이터는 공개 데이터셋에서 찾기가 매우 어렵습니다.

데이터 부족의 네 가지 이유

[23:54] 우리는 제조 현장에서 이러한 데이터 부족의 네 가지 이유를 확인했습니다.

첫째는 안전입니다. 사람이 로봇의 위험 구역에 들어서는 순간은 데이터를 수집하기 위해 반복적으로 연출할 수 있는 일이 아닙니다.

두 번째는 비용입니다. 실제 라인을 설치하고 센서를 설치하며 조건이 변하는 동안 촬영하는 것은 많은 시간과 비용이 듭니다.

세 번째는 우리가 가장 어려움을 겪었던 부분입니다: 라벨링. AI 훈련을 위해 정답(ground truth)을 만들기 위한 주석과 레이블이 필요합니다. 하지만 여러 센서에서 인간과 로봇의 3D 위치, 거리, 관절 정보, 배경, 객체 및 픽셀 수준 영역을 같은 순간에 정렬하는 것은 순전히 수동적인 노동이었습니다.

[24:36] 마지막은 희귀도입니다. 시나리오 희귀도, 정확히 말하자면. 제조 현장에서 사람과 로봇 간의 충돌에 대한 데이터를 얻는 것은 매우 어렵습니다. 충돌 직전 상황을 롱테일 이벤트라고 합니다. 그러한 상황들은 현실에서는 거의 일어나지 않으며, 우리가 인위적으로 만들어내기에는 극도로 어렵습니다. 그리고 잘 운영되는 사이트에서는 그러한 데이터가 더 자주 발생하는 것이 아니라 덜 발생해야 합니다.

근접 데이터: 우리가 실제로 훈련하는 데 필요한 것

[25:16] 우리가 훈련시키고자 했던 것은 단순히 사람이 있는지 없는지가 아니라, 그 사람이 로봇으로부터 얼마나 떨어져 있는지, 어느 방향에 있는지, 그리고 어떤 자세로 접근하고 있는지를 파악하는 것이었습니다. 이러한 종류의 정보를 우리는 근접성 데이터라고 부릅니다. 인간과 로봇이 협력하고 안전 구역을 판단하며, 로봇의 경우 사람이 얼마나 가까이 있는지 감시하거나 속도를 늦추고 멈출 수 있는 시나리오를 만드는 데 이 관계를 이해해야 합니다.

[25:43] 간단히 말해서 상황은 이랬습니다. 데이터가 너무 부족했습니다. 그러면 수집할 수 없으면 생성하세요. 그것이 우리가 하려고 했던 일입니다. 하지만 데이터를 생성하려면, 생성하는 모델 자체적으로 탄탄한 데이터가 필요합니다. 그래서 먼저 실제 세계에서 측정된 값을 참조로 삼고 Unity 디지털 트윈 합성 데이터 파이프라인을 구축했습니다.

우리가 Unity 선택한 이유: 하나의 런타임에 네 가지 기술을 담다

[26:09] 네 가지 기술을 단일 런타임 내에서 연결하는 것이 비교적 쉽다고 느꼈기 때문에 Unity를 사용했습니다.

첫 번째는 로봇, 사람, 물체가 물리적으로 타당한 방식으로 상호 작용하는 물리 시뮬레이션입니다. 두 번째는 도메인 간극을 줄이기 위해 조명, 재질 등을 현실과 일치시키는 HDRP 렌더링입니다. 세 번째는 센서 시뮬레이션으로, 여러 유형의 센서를 가상으로 재현합니다. 네 번째는 트윈에서 데이터를 생성하여 모든 것을 수동으로 표시할 필요 없이 주석 및 레이블링을 수행할 수 있는 적용 기술입니다.

[26:48] 이 네 가지가 분리되어 있었다면, 우리는 AI 훈련을 위한 데이터를 생성할 수 없었을 것입니다. 이들을 동일한 실행 환경과 동일한 시간 축에 통합함으로써 필요한 데이터를 생성할 수 있었습니다.

Industrial HRC-Bench 데이터셋

[27:03] 해당 훈련 데이터를 얻는 과정은 데이터셋 구축을 위한 전문적이고 신뢰할 수 있는 방법론을 따라야 했습니다. 이를 위해 제조 분야 전문가들을 초빙하여 실제 인간-로봇 협업 시나리오를 공동으로 설계했습니다. 저희는 한국시험연구원의 로봇 시험 인증 센터에 권위 있는 실험 환경을 구축했습니다.

[27:33] 이러한 실험의 결과로, 우리는 Industrial HRC-Bench 데이터셋을 구축했습니다. 지금까지 수집된 HRC 시나리오 중 공개 가능한 수준에 도달한 것은 팔레타이징과 생산 부품 검사라는 두 가지 유형으로 나뉩니다. 데이터셋은 총 17개의 에피소드로 구성되어 있습니다. 이 중 아홉 개는 인간과 로봇이 함께 작동했고, 나머지 여덟 개는 로봇만 작동했습니다.

[28:02] 여기에 사용된 센서 시스템은 RGB 카메라, LiDAR, 360도 비디오 및 모션 캡처 시스템을 통합합니다. 이 센서 모달리티들은 모두 20Hz로 동기화되었으며, 이를 통해 100,000개 이상의 원시 프레임 데이터를 얻을 수 있었습니다. 순수 시간으로 계산하면 이는 80분 이상에 해당합니다.

여기서 우리에게 중요했던 것은 데이터의 규모뿐만 아니라 그 구조였습니다. 이 모든 데이터가 관측 및 레이블에 대해 동일한 시간 축을 공유했기 때문에 정확한 비교와 의미 있는 데이터 생성이 가능했습니다. 저희는 곧 Hugging Face 또는 외부 저장소를 통해 Industrial HRC-Bench 데이터셋을 공개할 계획입니다.

파이프라인 세 단어: 접지, 보정, 생성

[28:53] 전체적인 흐름을 세 단어로 요약할 수 있다고 생각합니다: 기반, 보정, 생성.

첫 번째는 단순히 쌍둥이를 만드는 것이 아니라, 현실 세계에서 측정된 가치를 그것에 고정하는 것입니다. 그것은 현실과 쌍둥이를 일치시키는 접지입니다. 그런 다음은 실제와 시뮬레이션 간의 격차를 줄이는 보정(calibration)이 있습니다. 그리고 거기서 데이터 생성 단계입니다.

접지: 환경, 센서, 로봇 및 레이블

[29:35] Jaehoon Hwang: 저는 황재훈이며, 실사-시뮬레이션 구현을 담당했습니다. 접지 단계에서 우리는 현실로부터 네 가지를 가져왔습니다: 환경, 센서, 로봇, 그리고 레이블입니다.

환경

[29:49] 우리는 KTL 테스트베드의 공간적 치수와 주요 장비 배치를 측정했고, 그 값들을 바탕으로 Unity 내에서 장비와 작업 영역을 일대일로 매칭했습니다. 게다가, 우리는 실제 환경과 일치하도록 HDRP 적용하여 재질과 조명을 맞추었습니다. 배경의 경우, 현장에서 촬영한 360도 파노라마 이미지를 사용하여 현실과 시뮬레이션 간의 격차를 줄이기 위해 사실적인 3D 가우시안 스플래팅 장면을 구축했습니다.

우리의 궁극적인 목표는 카메라가 보는 구조와 가려짐, 물체들이 서로 어떻게 위치하는지, 그리고 빛과 재료가 관찰되는 것에 어떻게 영향을 미치는지에 대해 실제 세계와 나란히 비교할 수 있는 참조 셀을 만드는 것이었습니다. 화면 속 이미지에서 왼쪽은 실제 장면이고 오른쪽은 같은 시점의 디지털 트윈입니다.

센서 장치

[30:34] 실험을 위해 RGB 및 뎁스 카메라, LiDAR, 360도 카메라, 모션 캡처 및 두 로봇의 상태 데이터를 사용했습니다. 우리가 구축한 가상 환경 내에서 이것을 단일 카메라로 단순화하지 않았습니다. 실제 장비에 각 센서가 어디에 설치되었고 무엇을 관찰했는지 확인한 후, 우리는 동일한 구조를 가진 가상 센서를 구축했습니다.

[30:59] Unity 런타임 내에서 모든 관측값이 동일한 시뮬레이션 클록을 공유하도록 사용자 지정 센서 구성 요소를 구축했습니다. 또한 로봇 상태와 인간 움직임을 연결하여 같은 순간에 동기화되도록 했습니다. 이 동기화가 중요한 이유는 근접성을 단 하나의 이미지로 요약할 수 없기 때문입니다. 동시에 비디오, 뎁스, 로봇 관절, 인간 자세가 모두 존재해야 거리를 계산하고 안전 구역 레이블을 일관성 있게 지정할 수 있습니다.

로봇

[31:27] 우리는 하나의 표준을 가지고 있었습니다. 단순히 그럴듯해 보이는 움직임이 아니라 물리적으로 타당한 움직임이어야 했다. 실제 테스트베드에서 기록된 공동 궤적을 가져와 원래 시간 순서대로 프레임 단위로 재생하도록 설정했습니다. Unity Articulation Body를 사용하여 로봇의 링크와 조인트, 자유도 및 물리적 구조를 구성한 다음, 그 위에 기록된 조인트 상태를 실행했습니다. 관성과 접촉이 함께 계산되기 때문에, 우리는 단일 물리적 구조 내에서 로봇 동작과 주변 물체 간의 상호 작용을 처리할 수 있었습니다.

레이블

[32:02] 동일한 시뮬레이션 상태에서 네 가지 유형의 정답 정보가 함께 생성됩니다: 사람, 로봇 및 부품의 위치를 포함하는 2D 및 3D 바운딩 박스; 픽셀 수준에서 객체를 분리하는 의미론적 및 인스턴스 분할; 자세 추정을 위해 사용되는 관절 좌표; 그리고 근접 거리 참조를 위한 뎁스 그라운드 트루스. 화면에는 3D 경계 상자가 적용된 장면이 표시됩니다.

이 라벨들은 누군가가 모든 프레임을 손으로 표시하여 만든 것이 아닙니다. 그것들은 Unity 시뮬레이션 상태에서 직접 나옵니다. 그것은 라벨링 비용과 주석 오류를 동시에 줄입니다.

카메라의 실사-시뮬레이션 격차

[32:52] 다음으로, 디지털 트윈 모델을 구축하면서 겪었던 실제-시뮬레이션 간의 격차와 그것을 어떻게 해결했는지 설명하겠습니다. 이것들은 전송 후에도 남아있는 실제와 가상 간의 차이인 잔여 격차입니다. 그중에서 우리는 근접 값과 실제 소스에 직접적인 영향을 미치는 두 가지 요인을 식별했습니다.

첫 번째 것은 카메라에서 발생했습니다. 가상 환경을 구성할 때, 실제 설정과 가상 설정 모두에 동일한 센서 모델과 동일한 시야각을 설정합니다. 하지만 같은 객체가 같은 픽셀에 나타나지 않았습니다.

[33:20] 오른쪽의 가장자리 오버레이를 보시면, 같은 구조물의 경계가 위치에 따라 약간 어긋나 있는 것을 볼 수 있습니다. 실제 렌즈 데이터 시트를 Unity 환경에 적용해도 해결되지 않았습니다. 그것은 제품 사양과 표준 렌즈 모델만으로는 설치 각도와 각 렌즈가 남긴 차이를 설명할 수 없기 때문입니다.

HRC에서는 이처럼 작은 불일치도 중요합니다. 사람과 로봇 사이의 경계가 단 몇 픽셀만 이동해도 시뮬레이션에서 생성된 픽셀 레이블과 실제 관측 간의 대응 관계도 불안정해집니다. 그래서 우리는 이 테스트베드에 설치된 정확한 카메라의 잔차를 직접 측정하기로 결정했습니다.

모델링하는 대신 렌즈 왜곡 측정하기

[34:01] 우리가 결정한 방법은 간단합니다. 렌즈를 직접 모델링하지 마십시오. 그것을 측정하세요.

이 과정은 세 단계로 구성됩니다. 먼저, 여러 시점에서 생성된 3D 가우시안 뷰를 사용하여 실제 환경과 가상 환경의 대응되는 장면을 얻었습니다. 그런 다음 우리는 픽셀 수준에서 해당 쌍 이미지 간의 차이를 계산하고 이를 픽셀별 왜곡 맵으로 기록했습니다. 마침내 우리는 그 맵을 Unity 카메라 왜곡 셰이더 적용하여 이미지 렌더링 과정에서 가상 카메라를 보정했습니다.

[34:35] 핵심은 이 루프입니다. 우리는 해당 장면을 생성하고, 남은 차이를 측정하며, 그 값을 Unity 런타임으로 다시 피드합니다.

여기에 결과가 있습니다. 왼쪽은 실제 센서의 관측값이고, 중앙은 보정된 디지털 트윈이며, 오른쪽은 두 이미지의 엣지 오버레이입니다. 오른쪽의 경계선을 보면 이전보다 눈에 띄게 개선된 것을 볼 수 있습니다. 특정 왜곡 맵을 적용하여 실제 이미지와 가상 이미지 간의 픽셀 정렬이 제대로 개선되었음을 확인할 수 있었습니다.

[35:09] 이것은 외부 후처리 과정이 아니라 가상 카메라가 이미지를 생성할 때 실행되는 구성 요소이므로, 보정된 관측값과 실제 참값(ground truth)을 동일한 실행 환경 내에서 생성할 수 있습니다.

IK 사용한 불안정한 인간 동작 수정

[35:16] 두 번째 문제는 인간 동작에서 나타났다. 화면에는 모션 캡처로 기록된 인간의 움직임이 마커와 골격으로 재생되는 모습이 표시됩니다. 이것은 로봇과 작업대 때문에 신체 일부가 가려진 부분입니다. 발 관절이 떨리기 시작하는 것을 지켜보세요. 가려짐이 증가함에 따라 숨겨진 관절에 대한 추정치가 불안정해지므로 발이 바닥을 미끄러지고 관절이 물리적으로 불가능한 위치로 이동합니다.

[35:47] 이 흔들림은 인간과 로봇 사이의 거리를, 각 신체 부위의 근접성을, 그리고 안전 구역 레이블을 직접적으로 왜곡합니다. 그래서 우리는 인간 동작에도 물리적 제약을 적용했습니다. 그것들은 바닥과 관절의 가동 범위입니다.

이것은 이전과 같은 장면입니다. 이번에는 두 가지만 주의하면 됩니다. 발이 바닥에 붙어 있고, 관절은 자연스러운가요?

[36:14] 먼저, 풋 IK를 사용하여 발을 측정된 실제 바닥 지오메트리에 다시 부착했습니다. 그런 다음, 휴머노이드 IK 사용하여 가려진 관절들이 유효한 관절 한계 내에서 움직이도록 제약했습니다. IK 손이나 발의 목표 위치를 기반으로 중간 관절들의 위치를 재계산합니다. 이 수정은 근접 및 안전 라벨을 방해하는 비물리적 움직임을 줄이는 것을 목표로 합니다.

시나리오 재생: 팔레타이징 및 부품 검사

[36:40] Dr. 홍인원: 파이프라인 구축부터 센서 및 IK 보정에 이르기까지 실세계-시뮬레이션 격차를 줄이기 위한 핵심 기술을 제시해 주신 황재훈 연구원님께 감사드립니다. 우리가 구축한 디지털 모델이 어떻게 작동하는지 간략하게 보여드린 후 발표를 마무리하겠습니다.

[37:21] 우리가 디지털 모델로 구축한 두 가지 시나리오는 동일한 HRC 환경을 기반으로 하지만, 작업 특성에서 차이가 있습니다. 첫 번째는 팔레타이징이고, 두 번째는 표면 검사입니다. 둘 다 제조 현장에서 그럴듯하게 발생할 수 있는 시나리오로 설계되었습니다. 구체적인 세부 사항은 추상적인 부분에서 나중에 별도로 공개할 예정입니다.

[37:44] 이것이 팔레트 적재 케이스입니다. 팔레타이징 모델에서 실제 로봇으로부터 아티큘레이션 바디를 통해 기록된 데이터가 이 디지털 트윈 모델에 통합됩니다. 방금 보셨듯이, 두 가지 유형의 센서 데이터, 로봇 상태 정보, 인스턴스 마스크 및 분할 마스크가 모두 동기화되어 함께 재생됩니다.

[38:10] 두 번째는 부품 검사 시나리오입니다. 작업자와 로봇 간의 근접 접촉 상황도 모델링되었으며, 시뮬레이션 및 로봇 데이터와 매우 잘 동기화되어 네 가지 요소가 모두 기반을 둔 데이터를 재생할 수 있습니다. 자세히 보면, 사람이 일부를 겹치고 있을 때조차도 분할이 매우 잘 작동하는 것을 볼 수 있습니다.

[38:41] 이 데이터 파이프라인의 가치는 일회성 데이터셋을 구축하는 데만 국한되지 않습니다. 또한 다른 많은 산업 현장에서도 확장 및 복제가 가능합니다.

Unity Perception 패키지를 사용한 도메인 랜덤화

[39:15] 우리가 이전에 보여드린 것은 일회성 데이터셋이라기보다는 데이터를 지속적으로 확장할 수 있는 생성형 데이터 파이프라인에 가깝습니다. Unity Perception Package를 기반으로 도메인 랜덤화 모델을 구축하고 조명, 재질, 카메라 등에 대한 매개변수 범위 및 샘플링 규칙을 정의하여 이 정밀하게 정렬된 기준선 주변에서 현실적인 변형이 생성되도록 했습니다.

시스템 요약 및 종료

[39:39] 이 그림으로 모든 것을 요약할 수 있다고 생각합니다. 이것이 전체 시스템의 구조입니다. 왼쪽에는 목표 객체, 인간 동작, 로봇 궤적 등이 있습니다. 그것들은 언제든지 교체될 수 있는 입력 요소이며, 중심이 핵심입니다.

[39:53] 실제 현장 측정값을 사용하여 기준선을 설정하는 지상 모델, 작업별로 오류를 수정하는 보정 모델, 그리고 오른쪽에 있는 멀티모달 지상 진실 데이터를 자동 추출하는 생성 모델입니다. 그것들이 우리가 만든 세 가지입니다.

실제 테스트베드를 기반으로 트윈을 생성하고 주요 작업 차이를 보정하여 동기화된 데이터를 생성하는 과정까지 보여주었습니다.

[40:29] 오늘 보여드린 데이터는 HRC였지만, 사실 저희는 파이프라인의 설계 원칙을 증명하기 위한 응용 사례로 제시했습니다. 로봇과 휴머노이드가 공존할 미래 AI 팩토리 시대에, 저희 파이프라인이 시뮬레이션 및 데이터 계층 역할을 할 수 있다고 믿습니다.

저희의 감사는 테스트베드 환경을 제공하고 저희와 함께 실험을 진행해 준 KTL 로봇 테스트 및 인증 센터와 처음부터 함께하며 전폭적으로 지원해 준 Unity Technologies에 전합니다.