데보션앱 소개페이지 바로가기
로그인 선택

신고하기

CLOSE
신고사유 (대표 사유 1개)
상세내용 (선택)
0/200
  • 신고한 게시글은 더 이상 보이지 않습니다.
  • 이용약관과 운영정책에 따라 신고사유에 해당하는지 검토 후 조치됩니다.
  • 허위 신고인 경우, 신고자의 서비스 이용이 제한될 수 있으니 유의하시어 신중하게 신고해 주세요.
(이 회원이 작성한 모든 댓글과 커뮤니티 게시물이 보이지 않고, 알림도 오지 않습니다.)

미리보기

커뮤니티

      1,234

      badge 23.06.15

      글 등록

      카테고리를 선택해주세요.

      DEVOTEE를 활성화 시키면
      지금 작성한 커뮤니티 글에 대해 1개의 댓글을 달아줍니다.

      버튼을 누르면 글 수정 시 ChatGPT가 작성한 댓글이 수정됩니다.

      임시저장함에 저장되었습니다. 저장일시 : 2022.5.17 14:29:08

      임시저장함

      제목을 선택하시면 이어서 작성이 가능하며,
      최대 20건까지 저장합니다.
      컨텐츠 유형, 제목, 저장일시, 삭제로 이뤄진 임시저장 목록
      컨텐츠 유형 제목 저장일 삭제

      데보션 블로그 게재 요청

      CLOSE
      • *
      • *

      본인인증

      효율적인 데보션 서비스 이용 및
      고객님의 소중한 개인정보보호를 위해
      본인인증을 진행해주세요. 본인인증 미 진행 시 로그인이 제한됩니다.
      본인인증 실패

      본인인증 로그인에 실패하였습니다.
      회원이 아니시거나 본인인증 등록이
      완료되지 않은 사용자입니다.

      회원정보 연결

      딥러닝 기술을 활용한 Color Transfer Model 개발

      광한리 23.02.08
      3,801 15 1

      안녕하세요. SKT AI Felowship 4기로 활동했던 이광한입니다.


      최근에 AI 기술을 활용한 이미지 편집 기술들이 많이 발전되고 있는 것 같습니다.

      이와 관련해 저도 의미있는 기술을 만들어보고자 해서 이번 주말을 이용해 image color transfer 모델을 개발해 봤고 이를 간단히 소개하고자 합니다.


      Color transfer?


      “Color transfer” 는 레퍼런스 사진을 통해 원본 이미지의 특정 영역을 원하는 색으로 변환시키는 기술입니다.

      이때 원본 이미지의 구조 자체는 바꾸지 않고 색만 변환시킬 수 있고 이를 활용해 가상피팅에도 응용할 수 있습니다.

      이 글에서는 “Hair color transfer”를 주로 다뤄보겠습니다.


      HairGAN

      헤어의 색을 변환시키기 위해서 대부분은 hair segmentation 모델을 통해 레퍼런스 이미지와 원본 이미지의 머리 영역을 추출한 뒤, 레퍼런스 이미지의 컬러로 변환시키는 방법이 주로 사용됩니다.


      HairGAN 논문의 모델 구조를 통해 나온 결과는 아래와 같습니다.

      위의 결과물과 모델의 특징을 살펴보면

      1. 염색을 위한 pair dataset이 필요

      2. 매번 원하는 색으로 변환시키기 위한 reference image 필요

      3. hair segmentation을 위해 라벨링된 데이터셋 필요

        (다른 영역의 컬러를 변환시키길 원한다면 추가적인 라벨링 데이터 필요)

      4. segmentation 모델 성능에 따라 결과물의 퀄리티가 많이 달라지고, occlusion에 따라 색변환 시키기 어려운 상황이 다수 존재


      Color Token-based Recolorization

      “Color token-based recolorization” 이라는 제목은 직접 정해봤습니다.

      이미지의 특정영역에 원하는 색상의 컬러가 토큰으로 주어지고, 이 컬러토큰이 이미지와 함께 ViT 모델에 입력되면 원하는 색상으로 변경되게 모델을 개발해봤습니다.

      기존 방법들과 다르게 특별한 데이터셋이 필요하지도 않고 특정 영역을 분리해내기 위한 segmentation 모델이 필요하지도 않습니다.

      또한 레퍼런스 이미지가 필요하지 않고 원하는 색상의 포인트만으로 특정 영역을 쉽게 컬러변환 시킬 수 있습니다.


      아래에서는 이 모델을 활용한 결과물들을 살펴보겠습니다.

      Visualize

      먼저 인터넷에서 크롤링한 이미지들을 통해 머리의 색을 변환시킨 결과물들 입니다. 각각의 이미지들은 사용자가 원하는 색상 포인트를 입력해 변환된 결과물들입니다.


      머리의 색상 뿐만 아니라 의류의 색상또한 변환이 가능합니다. 상의와 하의의 색상이 자연스럽게 변환되는 것을 볼 수 있습니다.


      아래의 체크형태의 상의를 보면 체크 패턴에 맞게 정확히 색상이 변경된 것을 볼 수 있습니다.

      아래 이미지는 상의와 하의에 각각 한개의 색상 포인트만으로 변환된 결과물 입니다.



      아래의 결과물에서 특별히 살펴볼 점은 사람이 매고있는 가방에 큰 영향을 받지 않고 정확히 상의만 컬러변환된 것입니다.



      아래의 이미지에서는 치마와 배경의 색상을 조금 변경해봤습니다. 배경을 핑크색과 하늘색으로 변경해봤고 기존의 이미지와 다른 분위기를 줄 수 있었습니다. 하지만 치마와 배경의 색상은 잘 분리되지 않은 것을 볼 수 있습니다.



      마치며..

      이번 포스팅에선 개발한 모델과 결과물을 간단히 소개해봤습니다.

      시간이 되면 다음 포스팅에선 학습방법과 더 자세한 모델 소개 그리고 기존 방법들과의 결과물 비교까지 해보고자 합니다.

      더 나아가선 이미지 뿐만 아니라 영상에서도 자연스럽게 실시간으로 변환되는 기술을 개발한 것을 다뤄봐도 좋을 것 같습니다~


      Reference

      1. Xie, Yifan, et al. "HairGAN: Spatial-Aware Palette GAN for Hair Color Transfer." 2022 IEEE International Conference on Multimedia and Expo (ICME)

        . IEEE, 2022.

      2. Dosovitskiy, Alexey, et al. "An image is worth 16x16 words: Transformers for image recognition at scale." arXiv preprint arXiv:2010.11929

         (2020).


      소개


      댓글 0

      DEVOTEE를 활성화 시키면
      지금 작성한 댓글에 AI가 댓글을 달아줍니다.

      광한리 님의 최신 블로그

      더보기
      동영상 기고하기