AI 탐구노트

NeuralSVG - 텍스트에서 벡터 그래픽 생성으로의 새로운 접근 본문

AI 기술

NeuralSVG - 텍스트에서 벡터 그래픽 생성으로의 새로운 접근

42morrow 2025. 1. 12. 15:52

1. 서론

디자인에서 자주 사용되는 벡터 그래픽은 해상도와 관계없이 확대나 축소가 가능하고, 수정도 쉽습니다. 하지만, 기존의 AI 기술로 만든 벡터 그래픽은 수정이 어렵거나 구조가 복잡해 실용성이 떨어지는 경우가 많았습니다. 

 

NeuralSVG는 텍스트 프롬프트에서 벡터 그래픽을 생성하는 새로운 접근법을 제시합니다. 이 기술은 NeRF(Neural Radiance Fields)에서 영감을 받아 소형 MLP(다층 퍼셉트론) 네트워크를 사용하여 벡터 그래픽을 암묵적으로 표현합니다. 이를 통해 기존의 기술적 한계를 극복하며, 계층적이고 의미 있는 그래픽 생성이 가능해졌습니다.

 

그림 : NeuralSVG의 출력 결과 예시.

 


2. 본론

2.1 기존 텍스트-벡터 그래픽 생성 방식의 문제점

기존의 텍스트-벡터 그래픽 생성 기술은 주로 텍스트-이미지 생성 모델을 기반으로 하고 있으며, 생성된 이미지를 벡터화하는 후처리 단계에 의존합니다. 그러나 이러한 접근 방식은 결과물이 과도하게 세분화되거나 픽셀처럼 복잡한 형상을 가질 수 있어 벡터 그래픽 고유의 편집 가능성과 계층적 구조를 상실하게 됩니다.

 

2.2 NeuralSVG의 접근 방식

NeuralSVG는 계층적인 구조를 직접 학습하는 네트워크를 도입합니다. 이를 통해 텍스트 프롬프트에 맞춘 그래픽 생성이 단일 네트워크에서 가능하며, 후처리를 최소화합니다. 또한, 드롭아웃 기반의 정규화 기법을 활용하여 각 벡터 형상이 독립적인 의미를 가지도록 유도합니다.

 

아래 그림은 레이어가 나뉘지 않은 복잡한 구조를 가진 기존 방식(오른쪽)과 레이어가 잘 나뉘어진 방식(왼쪽) 간의 비교를 보여줍니다. 딱 봐도 어떤 것을 편집하는 것이 더 쉽고 편리할 지는 파악되시죠?

그림 : 계층적 구조의 중요성 설명

 

2.3 NueralSVG의 아키텍처

 

그림 : NeuralSVG의 기본 아키텍처

 

 

NeuralSVG는 작은 신경망(Multi-Layer Perceptron, MLP)을 사용하여 그래픽의 모양(도형의 위치와 형태)과 색상을 생성합니다. 학습과정에서는 텍스트에 맞는 그래픽 생성을 위해 Score Distillation Sampling(SDS) 기술을 사용하고, 훈련 중 일부 그래픽 요소를 무작위 삭제하는 Dropout 기법을 활용해 각 도형이 의미있는 구조를 가지도록 합니다.  

 

2.4 NueralSVG의 세부 사용 기술 및  특징

세부적으로 사용되는 기술과 특징은 다음과 같은 것들을 들 수 있습니다.

  • Score Distillation Sampling(SDS) : 텍스트-이미지 모델의 학습 신호(생성된 이미지와 텍스트가 얼마나 일치하는지에 대한 평가)를 활용하여 벡터 그래픽의 학습을 정밀하게 조정합니다.  
  • MLP 네트워크 : 각 벡터 도형의 제어점을 예측하는 네트워크로, 입력 인덱스를 기반으로 제어점과 색상 정보를 출력합니다.
  • 드롭아웃 기반 정규화 : 학습 과정에서 일부 계층을 무작위로 제외함으로써 상위 계층이 더 중요한 정보를 포함하도록 유도합니다. 즉, 그래픽의 초반 도형이 전체 내용을 잘 대표하도록 합니다. 
  • 사용자 제어 옵션: 색상 팔레트 변경, 배경 색상 조정, 가로세로 비율 등 다양한 사용자 입력을 반영하여 그래픽을 동적으로 생성합니다.
  • 점진적 디테일 추가 : 입력 받은 텍스트 기반으로 추가되는 도형의 수에 따라 더 세부 디테일(예: 연기, 화산의 텍스처 등)이 점차 포함됩니다. 여기에는 단순히 완성된 벡터 생성을 넘어 사용자가 원하는 스케치 스타일도 지원합니다. 

 

3. 결론

NeuralSVG의 핵심은 사용자 친화적이고 편집 가능한 벡터 그래픽을 만드는 것입니다. 이런 기술을 이용해 계층적 구조를 효과적으로 반영하여 생성된 벡터 그래픽은, 편집 가능성과 실용성이 높으며 이는 디자인, 웹 개발, 데이터 시각화와 같은 다양한 산업 분야에서 활용될 수 있습니다. 최근 벡터 이미지 생성과 관련된 글을 많이 쓴 것 같습니다. 공개된 코드를 응용해 보려는 목적이었는데 실제로 동작시켜보면 생성되는 결과물은 실무에 써먹기에는 불편함이 많이 느껴졌습니다. 이 논문에서 문제점이라고 언급한 바로 그런 이유 때문이죠. 그런데 이번 NeuralSVG에 대한 내용을 보면서 어쩌면 이제는 괜찮겠는데... 하는 기대를 하게 됐습니다. 아무쪼록 빨리 코드 공개가 되어 테스트 해 볼 수 있는 시기가 왔으면 좋겠습니다. 논문 저자님들 파이팅~! :-)


4. 참고자료

  • 프로젝트 사이트 (링크)
  • 논문) NeuralSVG: An Implicit Representation for Text-to-Vector Generation (링크)
  • 코드) Github (링크) : 코드는 곧 출시 예정이라고 합니다.

5. Q&A

Q. NeuralSVG의 주요 장점은 무엇인가요?
계층적 구조를 반영하여 편집 가능한 벡터 그래픽을 생성하며, 사용자가 색상 팔레트와 배경 색상을 조정할 수 있습니다.

 

Q. NeuralSVG는 어떤 학습 기술을 사용하나요?
Score Distillation Sampling(SDS)을 사용하여 텍스트-이미지 생성 모델의 학습 신호를 활용합니다.

 

Q. NeuralSVG의 한계는 무엇인가요?
매우 복잡한 구조를 가진 벡터 그래픽의 생성에서는 성능이 제한될 수 있습니다.