PORTFOLIO

Vision AI 와 AI 로 만든 작업들.

현실의 시각 데이터를 구조화된 지식으로 바꿉니다.

Go 를 가르쳐 온 강의, 이제 AI 로 만듭니다.

인프런에 Go 강의 2개(33강, 9시간 19분)를 냈습니다. 새 강의는 대본 하나로 한국어판과 영어판을 함께 만들고, 내레이션은 ElevenLabs 로 복제한 제 목소리입니다.

강의

  1. 2022.12.02

    정말 쉬운 Go언어 입문

    인프런 · 17강 · 4시간 21분

    공개 인프런에서 보기
  2. 2023.04.13

    정말 쉬운 Go 언어 중급

    인프런 · 16강 · 4시간 58분

    공개 인프런에서 보기
  3. —

    빠른 GO 프로그램 만들기

    한국어 · 영어 · AI 제작 파이프라인

    제작 중
  4. —

    이어서 바로 다음 강의 제작

    예정

AI 강의 제작 파이프라인

마크다운 대본 하나가 완성된 강의 영상이 됩니다. 유료 음성 합성 전에 대본을 모두 검사하고, 내레이션은 ElevenLabs 로 복제한 제 목소리이며, 슬라이드·실습 화면·모션 그래픽은 그 목소리의 시간에 맞춰 만들어집니다.

  1. 대본 Markdown
  2. 대본 검사 before paid TTS
  3. 내레이션 · 내 목소리 ElevenLabs PVC · Multilingual v2
    • 슬라이드Manim · red pen
    • 실습 화면code-server · Go Playground
    • 모션 그래픽Blender
  4. 완성 영상 KO · EN

Demo같은 장면, 두 언어

1편의 같은 페이지를 대본 하나로 만든 한국어판과 영어판입니다. 두 내레이션 모두 복제한 제 목소리입니다.

한국어
영어

스스로 교차 검증하는 AI 아카이브.

MediaVault 는 문서와 이미지를 받아 여러 AI 모델로 의미 있는 정보를 뽑고, 그 결과를 서로 맞춰 보며 믿을 수 있는 검색형 아카이브를 만듭니다.

문서 분석

  1. 업로드
  2. 중복 판별 xxHash64 → BLAKE3
  3. 형식 변환 LibreOffice → PDF
  4. AI 분석
    • Claude
    • Gemini
    • Qwen3-VL
    • Gemma4
  5. 검색 Full-Text Search · Tag Filter

이미지 분석

  1. 업로드
  2. 중복 판별 xxHash64 → BLAKE3 · dHash → pHash
  3. 기본 정보 EXIF
    • 인물 찾기YOLOv8-seg
    • 나이·성별MiVOLO → InsightFace
    • 얼굴 특징AdaFace
    • 이미지 의미SigLIP SO400M
  4. 이미지 설명
    • Step3-VL
    • Qwen3-VL
    • Gemma4
  5. 교차 검증·통합
    • Claude
    • Gemini
    • Gemma4
  6. 검색 Full-Text · Vector · Text-to-Image
  • 전용 모델
  • 갈아 끼우는 모델

사용 모델

단계모델역할
문서 분석Claude / Gemini / Qwen3-VL / Gemma4문서 이해와 정보 추출
이미지 분석 (인물)YOLOv8-seg인물 찾기와 영역 분리
이미지 분석 (얼굴)MiVOLO / InsightFace / AdaFace나이·성별 추정과 얼굴 특징값
이미지 분석 (의미)SigLIP SO400M비슷한 이미지 찾기용 특징값
이미지 설명Step3-VL / Qwen3-VL / Gemma4이미지를 자세히 서술
교차 검증·통합Claude / Gemini / Gemma4두 개 이상 모델이 일치한 답만 확정

상품 상세페이지를 검색 가능한 패션 데이터로.

FashionEngine 은 쇼핑몰 상품 상세페이지를 Vision AI 로 쪼개고, 분류하고, 분석해 구조화된 패션 데이터로 바꿉니다.

입력

제공받은 정보, 이미지를 저장하고, 중복을 제거한 뒤 처리 대기열에 색인합니다.

  1. 제공받은 정보, 이미지 Info · Images
  2. 중복 판별 Image hash
  3. 색인 PostgreSQL
  4. 처리 대기열 Task queue
상품 상세페이지

Demo상세페이지 칸 나누기

상품 상세페이지는 사진을 이어 붙인 것이 아니라, 디자이너가 사진·글자·배경 장식을 하나로 엮은 긴 통 이미지입니다. 흰 여백을 따라 대충 자르면 될 것 같지만, 배경이 이어지고 사진 위에 글자가 얹히며, 디자이너가 일부러 경계를 흐려 다음 구역으로 자연스럽게 넘어가게 만듭니다. 여기에 JPEG 압축 노이즈까지 겹쳐 깨끗해야 할 흰 여백에도 희미한 얼룩이 퍼져 있어, 단순한 규칙으로는 나눠지지 않습니다.

먼저 파인튜닝한 Swin 경계 모델이 사진이 시작하고 끝나는 곳에만 페이지를 가로지르는 선을 긋습니다. 글자 블럭과 배경 위 제품 컷에는 선을 긋지 않습니다.

경계
Swin seam (fine-tuned)
학습 데이터
6,581장 (실사진 956장 + 합성 5,625장)

샘플 이미지는 AI로 생성했습니다

상품 상세페이지 person text person person text text text flat_lay text flat_lay flat_lay

Demo분류

이어서 파인튜닝한 Microsoft Florence-2 가 영역마다 박스를 그리고, 인물·마네킹·바닥에 펼친 옷·원단·글자 중 무엇인지 판단합니다.

한글이 한 단어라도 들어간 글자 블럭만 글자(text)로 보고, 영어만 있는 글자는 장식으로 봅니다. 사진은 경계가 뚜렷하면 그 경계로, 경계가 없으면 옷의 최소 면적으로 박스를 그립니다.

학습 데이터는 Label Studio 에서 2,625개를 직접 라벨링해 만들었습니다.

  • person
  • text
  • person
  • person
  • text
  • text
  • text
  • flat_lay
  • text
  • flat_lay
  • flat_lay
판단
Florence-2 (fine-tuned) · 5 classes
학습 데이터
Label Studio 에서 2,625개 직접 라벨링
OCR
Qwen3-VL 8B

샘플 이미지는 AI로 생성했습니다

Demo옷만 오려 내기

SAM3 가 상품명에서 뽑은 키워드(예: 니트 → "knit sweater")로 타겟 상품만 픽셀 단위로 잘라 냅니다. 박스가 아니라 옷의 윤곽 그대로 따고, 나머지 영역은 투명하게 지운 뒤 크롭합니다. 임베딩에는 이 잘라 낸 상품만 들어갑니다.

모델 사진
모델 사진
SAM3 마스크
SAM3 마스크
타겟 상품만 · 투명 · 크롭
타겟 상품만 · 투명 · 크롭
모델
SAM3 (text prompt · knit sweater)
다음 단계
잘라 낸 상품만 임베딩

샘플 이미지는 AI로 생성했습니다

임베딩

옷마다 특징값(벡터)을 만들어 비슷한 옷을 찾습니다.

모델
DINOv3 ViT-L (1024-d) · Marqo-FashionSigLIP (768-d)
검색
pgvector (HNSW, cosine)

분석

대표 컷에서 옷의 속성을 읽어 냅니다.

Inter-VLM Agreement Verification

VLM 3개가 속성마다 따로 판단하고, LLM 이 다수결로 의견을 정합니다. 다수결이 나오지 않으면 사람이 검토합니다(QBC, Query-by-Committee).

  1. 대표 컷 Representative shots
    • VLM 1Property vote
    • VLM 2Property vote
    • VLM 3Property vote
  2. 다수결 LLM · majority vote
    • 확정2 of 3 agree
    • 사람 검토No majority · QBC
판단
VLM × 3
결정
LLM 다수결 · 다수결 없으면 사람 검토(QBC)
분석 항목
색 · 패턴 · 디테일 · 체형 등 수십 개

3D로 자세와 동작을 학습합니다.

준비 중입니다.

3D 동작 뷰어 안에서 채 없이 골프 스윙을 하는 마네킹