bky373 / fashion-scanner-blackpink

https://blackpink.fashion-scanner.site

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Fashion Scanner

  1. 웹 서비스 소개
  2. 스토리보드
  3. 프로젝트 구성
  4. 구현 기능
  5. 와이어 프레임
  6. 세부 일정
  7. 역할
  8. 아키텍처 설계
  9. 유스케이스 다이어그램
  10. 유스케이스 시나리오

1. 웹 서비스 소개

  • 프로젝트 주제 : AI X FASHION X K-POP STAR 총 3가지 키워드의 집합. 패션업계에서 유명한 케이팝 스타를 선정한 뒤 AI 이미지처리 기능을 활용해 '해당인물이 착용한 의류에 관한 정보'와 '비슷한 의류의 판매처'를 찾아주는 서비스. 첫번째 버전은 케이팝 스타중 가장 패션계에서 영향력이 있다고 평가되는 '블랙핑크'로 선정함.
  • 타겟층 : 패션 트렌드에 민감한 20/30 대 여성, 블랙핑크 국내외 팬들.
  • 문제 정의 : 케이팝스타가 착용한 패션은 대중으로부터의 워너비 현상을 만들어내는 주요한 요소이나 현재까지 그들과 비슷하게 옷을 입기위해서는 사람이 일일이 검색을 해야함.
  • 가설 설정 방법 : 시대의 패션 아이콘으로 평가되는 '블랙핑크'의 패션을 AI를 활용해 의류 카테고리를 분류하고 비슷한 의류를 추천함. 더 나아가 판매 링크까지 연결하는 서비스를 제공하여 타겟층이 블랙핑크가 착용한 의류와 비슷한 의류를 구매할 수 있도록 함. 또한, 워너비 현상을 이용해 본인의 패션 스타일과 일치하는 블랙핑크 멤버를 출력함으로 사이트 이용 흥미도를 높임.
  • 기대효과 : 타겟층의 트래픽을 유도해서 광고 수익을 창출함. 더 나아가 패션관련 케이팝스타마다 존재하는 웹서비스로서의 역할을 하게 됨.

발표 자료

2. 스토리보드

image

3. 프로젝트 구성

  1. 필요한 데이터셋
  • DeepFashion 데이터
  • 아마존(US) 크롤링 데이터
  1. 기술 스택 및 라이브러리

    분류 Tools 목적
    Server Ngnix 웹 서버
    Server Gunicorn WSGI
    Server Django 웹 애플리케이션(프레임워크)
    Server PostgreSQL DB
    Server Pytorch 머신러닝 모델 구동
    Server Docker 서버 배포 및 운영 제어
    Client React 웹페이지 제작

4. 구현 기능

  1. 필수 구현
  • 1순위 : 메인페이지 (우선구현 페이지: 1, 2, 3, 5, 6, 8 / 추가구현 : 4, 7)
  • 2순위 : 'LOOKBOOK' 페이지
  • 3순위 : '나는 어떤 멤버 ?' 페이지
  1. 선택 구현
  • 1순위 : KOR/ENG 기능 구현

5. 와이어 프레임

https://www.figma.com/file/UpQVmuk7wFVKmdUTBRpiTZ/%EB%B8%94%EB%9E%99%ED%95%91%ED%81%AC-LookBook?node-id=0%3A1

6. 세부 일정

(상세 개발일정은 구글 시트 참고)

  • 1주차 : 기획안 확정, 웹사이트 프로토 타입 완성, 인공지능 환경 셋업, 백엔드 API 실습
  • 2주차 : 각 파트 필수구현 1,2순위 개발 시작
  • 3주차 : 각 파트 필수구현 3순위 개발 시작
  • 4주차 : 필수 구현 기능 점검 및 API 연결
  • 5주차 : 각 파트 선택구현 개발 시작

7. 역할

이름 담당 업무
이보람 백엔드
김수연 프론트엔드
박정환 프론트엔드
이찬미 인공지능
차시현 기획, 인공지능

8. 아키텍처 설계

image

9. 유스케이스 다이어그램

image

10. 유스케이스 시나리오

1. 메인 페이지 조회

기본 흐름

  • 시스템이 메인 페이지를 사용자에게 보여준다.
  • 사용자는 내비게이션 바의 메뉴를 클릭해 원하는 위치로 이동한다. (혹은 스크롤로 이동한다)
  • 시스템은 각 메뉴에 해당하는 문구, 이미지, 영상을 화면에 보여준다.

2. 룩북 조회

데이터

  • 룩북 이미지 정보 (의류 카테고리와 속성1, 속성2, 속성3, 멤버 정보)
  • 비슷한 의류 이미지 정보 (딥패션 데이터셋 또는 크롤링한 이미지로부터 얻은 의류 카테고리와 속성1, 속성2, 속성3 등)

선행 흐름

  • 룩북 이미지 정보를 csv 파일에 미리 저장해놓는다.

    룩북 이미지 정보 중 의류 카테고리와 속성1, 2, 3 값은 딥러닝 모델을 돌린 후 그 아웃풋 값을 csv 파일에 저장한다.

  • 시스템에서 csv 파일을 읽고 내용을 DB에 저장한다.

  • 사용자가 룩북을 보기 원하는 멤버 사진을 선택한다.

기본 흐름

  1. 사용자가 멤버 사진을 선택할 때 해당하는 인물 id를 시스템에 넘긴다.
  2. 인물 id를 외래키로 하는 이미지 정보를 모두 불러온다.
  3. 룩북 메인 카드에는 id가 가장 낮은 이미지와 의류 카테고리, 색상, 속성 정보를 보여준다.
  4. 나머지는 캐러셀 안에서 이미지만 보여준다.
  5. 사용자가 캐러셀에서 이미지를 클릭할 경우, 메인 카드에 선택한 이미지 정보(이미지, 카테고리, 색상, 속성)를 보여준다.
  6. 사용자가 캐러셀에서 이미지를 좌우로 넘길 경우, 이동한 방향에 맞게 이미지를 이동시켜 보여준다.

Step 1: 딥러닝 모델 1 사용 + 딥패션 데이터셋

모델 1: 카테고리 및 속성 분류

  • 위에 작성한 기본 흐름대로 진행한다.

Step 2: 모델 2 사용 + 딥패션 데이터셋

모델 2: 의류 간 유사도 분석

  • 먼저 룩북 이미지를 모델 2의 인풋값으로 넣고, 딥패션 데이터셋 중 비슷한 의류를 찾는다.
  • 비슷한 의류 정보를 csv 파일에 저장한 다음, 시스템에서 그 파일을 읽고 내용을 DB에 저장한다.
  • 기본 흐름 2번에서 이미지 정보를 넘길 때 해당 이미지 정보와, 해당 이미지 id를 외래키로 하는 (비슷한) 의류 이미지 정보를 함께 전달한다.

Step 3: 모델 2 사용 + 크롤링 데이터셋

  • 이커머스 쇼핑몰에서 룩북 이미지의 카테고리와 속성과 같은 유형의 이미지들을 100장 크롤링한다.
  • 룩북 이미지를 모델 2의 인풋값으로 넣고, 크롤링한 데이터셋 중 비슷한 의류를 찾는다.
  • csv 파일에 비슷한 의류 정보를 저장한 다음, 시스템에서 그 파일을 읽고 내용을 DB에 저장한다.
  • 기본 흐름 2번에서 이미지 정보를 넘길 때 해당 이미지 정보와, 해당 이미지 id를 외래키로 하는 (비슷한) 의류 이미지 정보를 함께 전달한다.

예외 흐름

  • 시스템이 알지 못하는 인물 id를 넘겨줄 경우
  • 인물 id에 이미지가 존재하지 않는 경우
  • 이미지가 화면 상에서 올바르게 보이지 않는 경우 (alt 속성)

3. 나와 유사한 멤버 찾기

데이터

  • 사용자가 업로드한 이미지
  • 멤버 테이블 (멤버별 자주 사용하는 의류 카테고리와 속성)

선행 흐름

  • 메인 페이지에서 '나와 유사한 멤버 찾기' 버튼을 클릭한다.

기본 흐름

  • 사용자가 자신의 의류 이미지를 업로드한다.
  • 업로드한 이미지의 형식과 크기를 검증한다.
  • 올바른 이미지라면 미리보기 카드 안에 이미지를 보여준다.
  • 사용자가 이미지 삭제 버튼을 누르면 이미지를 삭제한다.
  • 사용자가 결과 보기 버튼을 누르면 분석 결과 페이지로 이동한다.
  • 업로드한 이미지를 딥러닝 모델의 인풋값으로 넣고 아웃풋을 받는다.
  • 이미지와 아웃풋 정보를 DB에 저장한다.

예외 흐름

  • 업로드한 이미지의 형식이 올바르지 않은 경우
  • 업로드한 이미지의 크기가 너무 클 경우
  • 업로드한 이미지를 분석할 수 없는 경우
  • 이미지 업로드 없이 결과 보기 버튼을 누를 경우

4. 이미지 추가 요청

데이터

  • 사용자가 업로드한 이미지
  • 사용자의 이메일
  • 이미지 출처

기본 흐름

  • 분석하기 원하는 의류 이미지를 사용자가 업로드한다.
  • 업로드한 이미지의 형식과 크기를 검증한다.
  • 올바른 이미지라면 미리보기 카드 안에 이미지를 보여준다.
  • 사용자가 이미지 삭제 버튼을 누르면 이미지를 삭제한다.
  • 사용자가 이메일과 이미지 출처를 작성한다.
  • 이메일과 이미지 출처 양식을 검증한다.
  • 사용자가 개인 정보 수집 및 이용에 동의 버튼을 누른다.
  • 사용자가 제출 버튼을 누른다.

예외 흐름

  • 업로드한 이미지의 형식이 올바르지 않은 경우
  • 업로드한 이미지의 크기가 너무 클 경우
  • 업로드한 이미지를 분석할 수 없는 경우
  • 이미지 업로드 없이 제출 결과를 누를 경우
  • 메일 주소를 입력하지 않은 경우
  • 메일 형식이 올바르지 않은 경우
  • 이미지 출처를 작성하지 않은 경우
  • 이미지 출처 양식이 올바르지 않은 경우

About

https://blackpink.fashion-scanner.site


Languages

Language:CSS 45.1%Language:JavaScript 35.1%Language:Python 19.2%Language:HTML 0.3%Language:Shell 0.1%Language:Dockerfile 0.1%Language:Jupyter Notebook 0.0%