LegoGPT - 텍스트에서 실제로 조립 가능한 LEGO 디자인 자동 생성

1 month ago 10

  • LegoGPT는 텍스트 입력만으로 안정적이고 실제로 조립 가능한 LEGO 구조물을 생성하는 혁신적인 프로젝트임
  • StableText2Lego 데이터셋을 구축해 47,000개 이상의 물리적으로 안정적인 LEGO 구조와 세밀한 설명을 제공함
  • 알고리듬은 빠른 유효성 검사 및 물리 기반 롤백을 적용하여 비현실적인 구조물을 자동으로 제거함
  • 생성된 LEGO 디자인은 사람과 로봇 모두 실제 조립이 가능하며 다양한 색상 및 질감 표현까지 지원함
  • 이 시스템은 창의적 디자인 프로토타이핑, 교육, 로보틱스 응용 등 다양한 분야에 새로운 가능성을 열어줌

프로젝트 소개

  • LegoGPT는 사용자가 입력한 텍스트 프롬프트를 바탕으로, 완전히 자동화된 방식으로 실제 조립 가능하며 물리적으로 안정적인 LEGO 구조물을 생성해주는 최초의 접근법임
  • 프로젝트는 대규모 LEGO 구조 데이터셋과 자세한 설명을 포함해 구축되어 있으며, 실제 조립 과정에서도 안정성과 다양성, 미적 완성도를 갖춘 결과물을 생성함
  • LEGO 구조물 생성 결과물은 실제로 사람이 직접 손으로 조립하거나, 로봇 팔로 자동 조립할 수 있음이 실험적으로 검증됨

StableText2Lego 데이터셋

  • StableText2Lego 데이터셋은 ShapeNetCore 3D 메쉬로부터 형상을 복셀화한 뒤, 다양한 브릭 배치 방법을 적용하여 물리적으로 안정성 검증을 통과한 구조만을 채택
  • 데이터 생성 과정에서 각 구조물에는 24개 각도에서 뷰를 렌더링하고, 이를 기반으로 GPT-4o가 정교한 설명문을 자동 생성함
  • 이렇게 구축된 데이터셋에는 다양한 형태, 구조, 텍스쳐를 가진 47,000개 이상의 LEGO 구조28,000개 이상의 고유 3D 오브젝트가 포함되어 있음

LegoGPT 파이프라인

  • LEGO 구조물은 아래에서 위로, 래스터-스캔 방식으로 텍스트 토큰 시퀀스로 토크나이즈되어 입력됨
  • 각 브릭 시퀀스와 자연어 설명을 쌍으로 만들어 LLaMA-3.2-Instruct-1B 기반 모델로 미세 조정하여 설명-브릭 시퀀스 매핑 학습이 이루어짐
  • 추론 단계에서 LegoGPT는 텍스트 프롬프트에 대해 하나씩 브릭을 예측, 추가하는 방식으로 LEGO 구조를 점진적으로 생성함
  • 각 브릭이 추가될 때마다 형식, 브릭 라이브러리 존재 여부, 충돌 여부에 대한 유효성 검사를 수행하고, 전체 구조물 생성 후 물리적 안정성을 재검증
  • 만약 최종 구조가 불안정하면, 불안정한 브릭과 이후 추가된 브릭을 모두 제거하고 안정적인 상태까지 롤백하여 재생성함

단계별 LEGO 구조 생성 예시

  • "길고 좁은 선체를 가진 슬림한 배"
  • "수평 선반이 있는 책장"
  • "등받이 없이 팔걸이가 있는 벤치"
  • 각각의 예시는 텍스트 프롬프트로부터 명확하게 시각적 특징을 반영한 LEGO 구조로 단계별 생성됨

로봇을 활용한 자동 조립

  • 생성된 LEGO 모델은 로봇 팔을 이용한 실제 조립에 적용돼 8배속 영상으로 시연
  • "길고 좁은 선체를 가진 슬림한 배", "비대칭 6줄 기타" 등의 실제 로봇 조립 적용 가능성을 보여줌

생성된 텍스처 및 컬러 LEGO 모델

  • 자연어 프롬프트에 "이끼가 낀 벤치", "네온 그라데이션 사이버펑크 재질", "빅토리안 서재 선반" 등과 같이 질감, 재질, 특정 미적 효과까지 표현 가능한 LEGO 디자인 제공함
  • "Sunburst Les Paul with amber finish"와 같은 다채로운 색상, 금속 효과 등도 텍스트만으로 반영한 LEGO 설계가 가능함

인용 및 연구 지원

  • 논문 정보와 저자, 해당 연구를 지원한 기관(예: Packard Foundation, Amazon Faculty Award 등)이 명시되어 있음
  • 주요 연구원의 마이크로소프트 리서치 박사 펠로우십 등 다양한 학술적, 산업적 지원 아래 진행된 프로젝트임

프로젝트 참고 및 템플릿

  • 해당 사이트 템플릿은 Custom DiffusionDreamFusion 프로젝트의 레이아웃을 참고해 활용됨

Read Entire Article