Skip to content

teraha-dev/AI-NFT

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 

Repository files navigation

NFT AI - AI 기반 NFT 이미지 생성 서비스

NFT AI

프로젝트 소개

개발 : 2022.04

DCGAN을 활용하여 자동으로 NFT(Non-Fungible Token) 이미지를 생성하는 서비스입니다. 인공지능이 사람의 개입 없이 스스로 독특한 NFT 작품을 생성할 수 있도록 구현했습니다.

AI Expo KOREA 2022 부스 운영 및 COEX 전시 참가

주요 기능

  • 자동 NFT 생성: DCGAN을 활용한 독창적인 PFP(Profile Picture) NFT 이미지 생성
  • 이미지 배치 생성: 다양한 스타일과 특성을 가진 NFT 이미지 일괄 생성
  • 고품질 출력: 64x64 해상도의 선명한 이미지 생성
  • 학습 모델 저장 및 로드: 학습된 모델 가중치 저장 및 불러오기 기능

기술 스택

  • 프로그래밍 언어: Python
  • 딥러닝 프레임워크: PyTorch
  • 생성 모델: DCGAN (Deep Convolutional Generative Adversarial Network)
  • 데이터 처리: torchvision

시스템 아키텍처

NFT AI는 다음과 같은 주요 구성 요소로 이루어져 있습니다:

  1. 데이터 로더: 학습 데이터셋 로드 및 전처리
  2. 생성자(Generator): 랜덤 노이즈로부터 이미지 생성
  3. 판별자(Discriminator): 생성된 이미지와 실제 이미지 구분
  4. 학습 모듈: GAN 네트워크 학습 및 최적화
  5. 이미지 생성 모듈: 학습된 모델을 통한 NFT 이미지 생성

개발 과정

1. 모델 구현

  • DCGAN 논문 기반 아키텍처 구현
  • 생성자와 판별자 네트워크 설계 및 구현
  • BCE(Binary Cross Entropy) 손실 함수 활용

2. 데이터 처리

  • 이미지 데이터셋 로드 및 전처리
  • 정규화 및 텐서 변환 적용
  • 배치 처리를 통한 효율적인 학습 구현

3. 학습 파이프라인

  • Adam 옵티마이저를 활용한 모델 최적화
  • 생성자와 판별자의 균형 있는 학습을 위한 전략 구현
  • 학습 진행 상황 모니터링 및 중간 결과 시각화

4. 이미지 생성 및 시각화

  • 학습된 생성자 모델을 활용한 NFT 이미지 생성
  • Matplotlib을 활용한 생성 이미지 시각화
  • 생성된 이미지 저장 및 관리 기능 구현

설치 및 실행 방법

필수 환경

  • Python 3.6+
  • CUDA 지원 GPU (선택사항, CPU에서도 동작 가능)

설치

  1. 저장소 클론
git clone https://github.com/teraha-dev/international-ai-competition-2022.git
cd international-ai-competition-2022/nft
  1. 의존성 패키지 설치
pip install -r requirements.txt
  1. 필요한 디렉토리 생성
mkdir -p datasets weights result

실행

  1. 모델 학습
python train.py
  1. 이미지 생성
python generate_image.py
  1. 생성된 이미지 슬라이드쇼 보기
python show_image.py

프로젝트 구조

nft/DCGAN/
│
├── model.py              # DCGAN 모델 구현 (생성자, 판별자)
├── dataloader.py         # 데이터 로딩 및 전처리
├── loss.py               # 손실 함수 구현
├── train.py              # 모델 학습 스크립트
├── load_train.py         # 저장된 모델 로드 및 추가 학습
├── generate_image.py     # 학습된 모델로 이미지 생성
├── show_image.py         # 생성된 이미지 슬라이드쇼
│
├── datasets/             # 학습 데이터셋 저장 디렉토리
├── weights/              # 학습된 모델 가중치 저장 디렉토리
└── result/               # 생성된 NFT 이미지 저장 디렉토리

사용 예시

  1. 데이터셋을 datasets/ 디렉토리에 준비
  2. train.py를 실행하여 모델 학습
  3. 학습 진행 상황 및 중간 생성 이미지 확인
  4. 학습 완료 후 generate_image.py로 다양한 NFT 이미지 생성
  5. show_image.py로 생성된 이미지 슬라이드쇼 감상

성과

  • AI Expo KOREA 2022 COEX 전시 참가
  • 한덕수 국무총리에게 AI NFT 프로젝트 발표 및 관련 기사 보도
  • 인공지능이 자동으로 생성하는 NFT 개념 증명

향후 발전 방향

  • 더 높은 해상도(128x128, 256x256)의 NFT 이미지 생성 기능 추가
  • 다양한 스타일의 NFT 생성을 위한 CGAN 구현
  • 블록체인 연동을 통한 자동 NFT 발행 및 판매 시스템 구현
  • 사용자 선호도 학습을 통한 맞춤형 NFT 생성 기능 개발

About

DCGAN 활용 PFP NFT 이미지 생성 서비스

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages