아보카도조

cdc wiki
이동: 둘러보기, 검색

프로젝트 개요

기술개발 과제

국문 : 브러쉬스트로크를 이용한 이미지 페인팅 프로그램

영문 : image painting program using brushstroke

과제 팀명

아보카도

지도교수

김성환 교수님

개발기간

2019년 3월 ~ 2019년 6월 (총 4개월)

구성원 소개

서울시립대학교 컴퓨터과학부 2012920062 최창현(팀장)
서울시립대학교 컴퓨터과학부 2012920043 이은규
서울시립대학교 컴퓨터과학부 2012920019 문철현

서론

개발 과제의 개요

개발 과제 요약

주어진 이미지를 바탕으로 실제 사람이 붓으로 그린 느낌(brushstroke 단위)의 이미지 생성

개발 과제의 배경

다양한 컨텐츠에 대한 수요가 높아지는 시대에 새로운 컨텐츠 제공

개발 과제의 목표 및 내용

사용자가 원하는 이미지를 신속하고 효율적으로 그려주는 프로그램의 개발

관련 기술의 현황

관련 기술의 현황 및 분석(State of art)

  • 전 세계적인 기술현황

가. CNN(Convolutional Neural Network)

◇ CNN은 이미지의 공간 정보를 유지하면서 인접 이미지와의 특징을 효과적으로 인식하고 강조하는 방식으로 이미지의 특징을 추출하는 부분과 이미지를 분류하는 부분으로 구성 ◇ 특징 추출 영역은 Filter를 사용하여 공유 파라미터 수를 최소화하면서 이미지의 특징을 찾는 Convolution layer와 특징을 강화하고 모으는 Pooling layer로 구성
◇ CNN은 Filter의 크기, Stride, Padding과 Pooling 크기로 출력 데이터 크기를 조절하고, 필터의 개수로 출력 데이터의 채널을 결정

나. GAN(Generative Adversarial Networks)

◇ GAN : 비지도학습에 사용되는 인공지능 알고리즘으로 서로 경쟁하는 두 개의 신경 네트워크 시스템에 의해 구현됨. 시스템들은 이 제로섬 게임의 틀 안에 있기 때문에 두 시스템이 경쟁하며 학습하는 모델

GAN.png

◇ G(generator) : 랜덤한 노이즈에서 데이터를 만들어내는 생성자
◇ D(discriminator) : 분류를 담당하는 판별자
◇ GAN은 생성자와 판별자의 두 개의 모델로 구성됨
◇ GAN : 생성자 G와 판별자 D가 대립하며 서로의 성능을 개선시켜 나가는 모델

GAN수식.png

◇ x~pdata(x) : 실 데이터의 확률분포
◇ x : 그 중 샘플링한 데이터 
◇ 판별자 D : 출력이 실 데이터가 들어오면 1에 가깝게 확률을 추정하고, G가 만들어낸 가짜 데이터가 들어오면 0에 가깝게 함. log를 사용했기 때문에 실 데이터라면 log 1, 즉 최댓값인 0에 가까운 값이 나오고 가짜 데이터라면 -∞으로 발산하게 되기 때문에 V(D, G)를 최대화 하는 방향으로 학습
◇ z~pz(z) : 보통 정규분포로 사용하는 임의의 노이즈 분포
◇ z : 노이즈 분포에서 샘플링한 임의의 코드
◇ 생성자 G : 이 입력을 생성자 G에 넣어 만든 데이터를 판별자 D가 속아 넘어가서 진짜로 판별되면 log(1- D(G(z)))이기 때문에 D(G(z))이 1이며 으로 발산하고 판별자를 속이지 못하면 D(G(z))는 0이기 때문에 log(1- D(G(z))) 는 0에 가까운 최댓값이 나오게 될 것이다. 따라서 G는 V(D, G)를 최소화하는 방향으로 학습하게 됨
◇ 즉, V(D, G)에 있어서 G는 이를 최소화 하는 방향으로, D는 최대화 하는 방향으로 가게 하는 minimax Problem

다. SBR(Stroke-Based Rendering)

◇ NPR(Non-Photorealistic Rendering) : 사람이 만들어낸 듯 한 예술적인 영상들을 컴퓨터로 재현해내
   는 것이 목적인 컴퓨터그래픽스 분야 중 하나
◇ SBR(스트로크 기반 렌더링)은 NPR의 한 종류
◇ 스트로크(stroke) : 그림을 그릴 때 긋는 한 획 또는 점 등을 일컫는 용어
◇ 이미지를 이용한 SBR : 영상처리 기술을 통해 입력영상을 분석하고 분석된 데이터에 기반하여 방향,
   위치, 색상, 길이 등 서로 다른 속성을 가진 다양한 브러시 스트로크를 생성
◇ 소스 영상을 효과적으로 표현하기 위해 브러시 스트로크의 다양한 속성들을 얼마나 정확하게 자동
   적으로 추출 혹은 생성할 수 있는지가 가장 중요한 요소
◇ SBR 과정
  브러시 스트로크를 그릴 위치와 브러시의 크기를 결정 → 해당 위치에 적합한 스트로크 탐색 → 찾아진 스트로크를 스트로크 표현기법에 의해 캔버스에 그림
  • 특허조사 및 특허 전략 분석
  • 기술 로드맵

시장상황에 대한 분석

  • 경쟁제품 조사 비교
deepart io

Deepart io.JPG

  • 마케팅 전략 제시
SNS 등을 활용한 마케팅

개발과제의 기대효과

기술적 기대효과

이용자 수가 늘어남에 따라 얻게 되는 데이터로 점점 더 정교한 이미지 생성이 가능해진다.

경제적, 사회적 기대 및 파급효과

다른 사람과 차별되는 자신만의 이미지를 만들 수 있다.
여러 컨텐츠에 사용됨으로써 수익 창출을 기대할 수 있다.

기술개발 일정 및 추진체계

개발 일정

개발일정.PNG

구성원 및 추진체계

◇ 최창현 : GAN을 이용한 전박적인 코딩에 대한 추진
◇ 이은규 : 외부 디자인 구성 및 style 이미지 선정
◇ 문철현 : Keras, GAN 등 개발도구에 대한 학습 및 코딩

설계

설계사양

제품의 요구사항

설계 사양

개념설계안

Intrinsic style transfer.PNG

이론적 계산 및 시뮬레이션

상세설계 내용

결과 및 평가

완료 작품의 소개

프로토타입 사진 혹은 작동 장면

Painted image.gif

포스터

관련사업비 내역서

완료작품의 평가

아보카도평가.PNG

향후계획

특허 출원 내용