Upgrade to Pro — share decks privately, control downloads, hide ads and more …

유튜브 썸네일 자동 제작 프로그램

유튜브 썸네일 자동 제작 프로그램

Generating Youtube Thumbnail with Chatting Data
: For Ybigta 2020-2 Conference

Jihwan Kim

March 07, 2021
Tweet

More Decks by Jihwan Kim

Other Decks in Programming

Transcript

  1. 크롤링 및 전처리 하이라이트 후보 추출 인물 구분 및 배경합성

    / 타이포그래피 삽입 감정 기반 썸네일 채택 채팅 키워드 추출
  2. 트위치 스트리밍 데이터 크롤링 Twitch API v.5 이용 트위치 클립의

    채팅 추출 채팅 시간, 채팅 아이디, 채팅 내용 추출 크롤링 및 전처리
  3. 채팅 글자 수 영어 채팅 글자 수 및 빈도 한국어

    채팅 글자 수 및 빈도 채팅 데이터 전처리 자모 채팅 글자 수 및 빈도 숫자 개수 및 빈도 특수문자 개수 및 빈도 ‘ㅋ’ 개수 및 빈도 크롤링 및 전처리
  4. • 구간별 윈도우 사이즈를 60초로 설정 • 전처리 데이터를 바탕으로

    구간별 채팅 데이터 특징을 재가공 : 채팅 데이터 전처리 컬럼명 내용 com_cnt 총 댓글 수 com_len 댓글 평균 길이 user_cnt 채팅참여 중인 유저 수 k_cnt ‘ㅋ’의 개수 init_cnt 자음채팅 수 special_cnt 특수문자 수 Init_chat_ratio 총 채팅대비 자음채팅 비중 <최종 사용된 특성> 하이라이트 후보 추출
  5. • 비지도 이상구간 탐지를 위한 ‘Isolation Forest’ 모델 사용 •

    의사결정트리 기반의 split으로 데이터 관측치를 고립 • 평균 depth가 짧을 수록 outlier score 높아짐 <모델 적용 결과> 하이라이트 구간 탐지 하이라이트 후보 추출
  6. • 아래와 같이 영상의 극초반, 후반 부분 또한 모델에 의해

    이상치로 잡히는 경우 발생 → 일정 기준에 못 미칠 경우 하이라이트 구간에서 배제 하이라이트 구간 탐지 하이라이트 후보 추출
  7. 스트리머의 트위치 동영상 선택 하이라이트 구간 추출 트위치 리처를 통해

    하이라이트 구간 영상 추출 다음 작업에 사용될 영상으로 저장 하이라이트 후보 추출
  8. • Cv2를 이용해 동영상 읽은 후 Haar Cascade Classifier 이용해

    얼굴 인식 => 얼굴 인식 넓이를 1.5*IQR을 사용해 이상치 분류 Haar Cascade Classifier 이용 얼굴 인식 얼굴 인식
  9. 인식한 얼굴을 컨볼루션 신경망을 통해 Angry, Disgusting, Fearful, Happy, Sad,

    Surprising 중 하나로 분류 컨볼루션 신경망 기반 감정 분류 감정 기반 썸네일 채택
  10. 등장한 인물 중 과반수의 표정이 Neutral인 프레임은 제거한 후, 인물들의

    최종 label 확률 평균이 높은 순으로 썸네일 채택 컨볼루션 신경망 기반 감정 분류 감정 기반 썸네일 채택
  11. 컨볼루션 신경망 기반 감정 분류 등장한 인물 중 과반수의 표정이

    Neutral인 프레임은 제거한 후, 인물들의 최종 label 확률 평균이 높은 순으로 썸네일 채택 감정 기반 썸네일 채택
  12. • cv2 image segmentation pretrained model 사용해 원본 영상의 인물

    및 배경 분리 배경 합성 인물 합성 및 배경 합성
  13. 키워드 추출 과정에서 얻은 키워드를 바탕으로 이미지 구글링 ⇒ 이미지를

    separation 하여 배경의 비중이 가장 높은 이미지를 새로운 배경으로 설정 배경 합성 인물 합성 및 배경 합성
  14. • 인물과 배경을 분리하여 인물의 실루엣으로 이루어진 foreground mask를 만들고,

    이를 사용하여 배경에 삽입 • 인물 강조를 위해 배경부분 블러처리 및 인물에 윤곽선 삽입 배경 합성 인물 합성 및 배경 합성
  15. • Faceswap package 사용 • 배경 합성시에 키워드 검색 결과

    이미지에서 사람이 자주 detect 되면, 기존 영상의 사람 얼굴을 검색한 이미지의 얼굴에 합성 인물 합성 인물 합성 및 배경 합성
  16. • 주어진 영상 내에서 Face detection을 하여 추출한 얼굴을 검색한

    이미지와 합성 인물 합성 인물 합성 및 배경 합성
  17. • 인물 합성과 배경 합성 썸네일 중에서 더 적합한 것

    선택 • 생성한 타이포그래피 삽입 vs 최종 썸네일 생성 인물 합성 및 배경 합성
  18. • 인물 합성과 배경 합성 썸네일 중에서 더 적합한 것

    선택 • 생성한 타이포그래피 삽입 vs 최종 썸네일 생성 인물 합성 및 배경 합성
  19. • Faceswap의 경우 학습을 안거쳤기 때문에 얼굴 사이즈가 안맞거나 각도가

    틀어지면 매우 성능이 저하됨 -> 매우 한정적인 경우에만 사용 가능 • 원래는 인터넷 용어를 학습하여 타이포그래피에 쓰일 말 까지 자동완성해주 는 NLP 모델을 계획했으나, 난이도가 너무 높아 진행하지 못함 • 타이포그래피의 색상과 배치를 썸네일에 맞게 자동 전환하는 모델 또한 구상하였으나 시간 부족으로 인해 포기함 • 기존에 큰 노동력이 들어가는 썸네일 제작 작업을 자동화함으로써, 소규모 스트리머들도 쉽게 유튜브에 영상 업로드가 가능해짐 • 매우 긴 스트리밍 영상에서 하이라이트를 빠르게 확인할 수 있으며, 해당 하이라이트에 등장하는 키워드 또한 파악할 수 있어 응용 여지가 많음 의의 한계점 의의 및 한계점
  20. 향후 진행방향 • 현재 파편화되어 있는 모든 기능들을 모아서 한번의

    클릭으로 썸네일 후보를 만들어 줄 수 있도록 GUI화 완전 자동화 • 여러 후보들을 제시하여 사용자 본인이 얼굴합성 / 배경합성 등 결과물을 선택할 수 있도록 하고 글꼴과 글자색 또한 customize 할 수 있도록 선택지를 다양화 선택지 다양화 • 실제 스트리머 중 전속 편집자가 없어 유튜브 채널을 운영하지 못하고 있거나, 낮은 퀄리티의 썸네일로 구독자 유치를 잘 못하고 있는 유튜버들에게 제공 실제 제안