KR102656674B1 - 타겟 스타일 및 타겟 색상 정보에 기반하여, 입력 이미지를 변환하는 방법 및 장치 - Google Patents

타겟 스타일 및 타겟 색상 정보에 기반하여, 입력 이미지를 변환하는 방법 및 장치 Download PDF

Info

Publication number
KR102656674B1
KR102656674B1 KR1020220120505A KR20220120505A KR102656674B1 KR 102656674 B1 KR102656674 B1 KR 102656674B1 KR 1020220120505 A KR1020220120505 A KR 1020220120505A KR 20220120505 A KR20220120505 A KR 20220120505A KR 102656674 B1 KR102656674 B1 KR 102656674B1
Authority
KR
South Korea
Prior art keywords
image
conversion
color
texture
target
Prior art date
Application number
KR1020220120505A
Other languages
English (en)
Other versions
KR20240041473A (ko
Inventor
안남혁
김승권
백지혜
권용재
Original Assignee
네이버웹툰 유한회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 네이버웹툰 유한회사 filed Critical 네이버웹툰 유한회사
Priority to KR1020220120505A priority Critical patent/KR102656674B1/ko
Priority to JP2023151928A priority patent/JP2024046749A/ja
Priority to US18/471,434 priority patent/US20240112377A1/en
Publication of KR20240041473A publication Critical patent/KR20240041473A/ko
Application granted granted Critical
Publication of KR102656674B1 publication Critical patent/KR102656674B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting
    • G06T3/4015Image demosaicing, e.g. colour filter arrays [CFA] or Bayer patterns
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/001Texturing; Colouring; Generation of texture or colour
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/60Editing figures and text; Combining figures or text
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/90Determination of colour characteristics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10024Color image

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Image Processing (AREA)

Abstract

입력 이미지와, 변환을 위한 타겟 스타일 및 타겟 색상 정보를 수신하고, 미리 학습된 변환 모델을 사용하여, 입력 이미지를 타겟 스타일의 텍스처로 변환한 텍스처 변환 이미지와 입력 이미지를 타겟 색상 정보의 색상으로 변환한 색상 변환 이미지를 생성하고, 입력 이미지를 타겟 스타일 및 타겟 색상 정보에 따라 변환한 결과 이미지를 생성하기 위해 텍스처 변환 이미지 및 색상 변환 이미지를 합성하는, 이미지 변환 방법이 제공된다.

Description

타겟 스타일 및 타겟 색상 정보에 기반하여, 입력 이미지를 변환하는 방법 및 장치{METHOD AND APPARATUS FOR TRANSFORMING INPUT IMAGE BASED ON TARGET STYLE AND TARGET CORLOR INFORMATION}
본 개시는 입력된 타겟 스타일 및 타겟 색상 정보에 따라 입력 이미지를 변환하는 방법 및 장치에 관한 것으로, 미리 학습된 변환 모델을 사용하여, 입력 이미지로부터 타겟 스타일에 대응하는 텍스처와 타겟 색상 정보에 대응하는 색상을 나타내는 결과 이미지를 생성하는 방법 및 장치와 관련된다.
만화, 카툰 또는 웹툰 서비스와 같이 이미지 또는 동영상을 포함하는 콘텐츠를 온라인으로 제공하는 서비스에 대한 관심이 높아지고 있다. 이러한 콘텐츠가 포함하는 이미지 또는 동영상은 작가 또는 콘텐츠 제작자의 고유한 화풍을 반영하는 특정 텍스처(또는 특정 스타일)을 가진다.
콘텐츠의 작가나 제작자는, 콘텐츠에 포함될 이미지나 동영상의 생성의 편의를 위해, 사진과 같은 일반적인 이미지를 콘텐츠의 특정 스타일을 반영하는 이미지로 변환하고자 한다. 특히, 콘텐츠의 작가는 복잡한 배경에 해당하는 콘텐츠의 이미지를 생성하기 위해, 배경을 직접 그리기보다는 콘텐츠의 스타일로 일반적인 이미지를 변환하여 사용하고자 할 수 있다. 마찬가지로, 콘텐츠를 소비하는 사용자 역시, 2차적인 소비를 위해, 자신이 보유한 이미지를 콘텐츠의 특정 스타일을 반영하는 이미지를 얻고자할 수 있다.
이 때, 사용자로부터의 입력 이미지를 콘텐츠의 특정 스타일을 반영하는 이미지로 단순히 변환하는 것에 그치지 않고, 사용자로부터 추가로 입력되는 색상 정보(또는, 색감)나 추상화의 정도를 더 반영하여, 사용자의 상세한 요구사항에 부합하는 결과 이미지를 얻을 수 있도록 할 것이 요구된다.
한국공개특허 제10-2009-0111939호(공개일 2009년 10월 28일)에는 영상을 전경과 배경으로 분리하는 방법 및 장치, 영상을 전경과 배경으로 분리하여 배경을 대체하는 방법 및 장치, 그리고 상기 방법을 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체가 개시되어 있다.
상기에서 설명된 정보는 단지 이해를 돕기 위한 것이며, 종래 기술의 일부를 형성하지 않는 내용을 포함할 수 있으며, 종래 기술이 통상의 기술자에게 제시할 수 있는 것을 포함하지 않을 수 있다.
일 실시예는, 입력 이미지와, 변환을 위한 타겟 스타일 및 타겟 색상 정보를 수신하고, 미리 학습된 변환 모델을 사용하여, 입력 이미지를 타겟 스타일의 텍스처로 변환한 텍스처 변환 이미지와 입력 이미지를 타겟 색상 정보의 색상으로 변환한 색상 변환 이미지를 생성하고, 입력 이미지를 타겟 스타일 및 타겟 색상 정보에 따라 변환한 결과 이미지를 생성하기 위해 텍스처 변환 이미지 및 색상 변환 이미지를 합성하는, 이미지 변환 방법을 제공할 수 있다.
일 측면에 있어서, 컴퓨터 시스템에 의해 수행되는, 이미지 변환 방법에 있어서, 입력 이미지, 상기 입력 이미지가 변환될 타겟 스타일 및 상기 입력 이미지가 변환될 타겟 색상 정보를 수신하는 단계, 미리 학습된 변환 모델을 사용하여, 상기 입력 이미지를 상기 타겟 스타일에 대응하는 텍스처로 변환한 텍스처 변환 이미지 및 상기 입력 이미지를 상기 타겟 색상 정보에 대응하는 색상으로 변환한 색상 변환 이미지를 생성하는 단계 및 상기 입력 이미지를 상기 타겟 스타일 및 상기 타겟 색상 정보에 따라 변환한 결과 이미지를 생성하기 위해, 상기 텍스처 변환 이미지 및 상기 색상 변환 이미지를 합성하는 단계를 포함하는, 이미지 변환 방법이 제공된다.
상기 변환 모델은, 상기 타겟 스타일을 나타내는 레퍼런스 이미지의 입력 없이, 상기 타겟 스타일에 해당하는 텍스처와 입력되는 타겟 색상 정보에 해당하는 색상을 나타내도록, 입력 이미지를 변환하기 위해 미리 학습된 것일 수 있다.
상기 타겟 색상 정보는 상기 입력 이미지의 색상 분포에 기반하여 결정되는 서로 다른 복수의 색상들의 그룹을 포함하는 팔레트를 포함할 수 있다.
상기 복수의 색상들의 각각은 사용자에 의해 선택 가능하게 구성될 수 있다.
상기 타겟 스타일은 이미지 또는 동영상을 포함하는 콘텐츠를 나타내고, 상기 타겟 스타일에 대응하는 텍스처는 상기 콘텐츠가 포함하는 이미지 또는 동영상의 텍스처일 수 있다.
상기 수신하는 단계는, 상기 결과 이미지가 나타낼 추상화 정도를 설정하기 위한 추상화 레벨을 수신하는 단계를 포함하고, 상기 생성하는 단계는, 상기 추상화 레벨이 나타내는 추상화 정도를 반영하는 상기 타겟 스타일에 대응하는 텍스처로 상기 입력 이미지를 변환하여 상기 텍스처 변환 이미지를 생성할 수 있다.
상기 이미지 변환 방법은, 상기 입력 이미지를 전처리하는 단계로서, 상기 입력 이미지를 Lab 색 공간의 이미지인 제1 변환 이미지로 변환하는 단계, 상기 입력 이미지를 단순화 처리함으로써 제1 컬러맵을 생성하는 단계, 상기 제1 컬러맵의 색상을 상기 타겟 색상 정보에 기반하여 변환함으로써, 제2 컬러맵을 생성하는 단계 및 제2 컬러맵을 Lab 색 공간의 이미지인 제2 변환 이미지로 변환하는 단계를 더 포함하고, 상기 제1 변환 이미지 및 상기 제2 변환 이미지는 상기 변환 모델로 입력되고, 상기 생성하는 단계는, 상기 변환 모델이, 상기 제1 변환 이미지에 기반하여 상기 텍스처 변환 이미지를 생성하고, 상기 제2 변환 이미지에 기반하여 상기 색상 변환 이미지를 생성할 수 있다.
상기 생성하는 단계는, 상기 변환 모델이, 인코더를 사용하여 상기 제1 변환 이미지를 인코딩하는 단계, 인코딩된 상기 제1 변환 이미지를 텍스처 디코더를 사용하여 디코딩함으로써 상기 텍스처 변환 이미지를 생성하는 단계 및 색상 디코더를 사용하여, 상기 제2 변환 이미지에 기반하여, 인코딩된 상기 제1 변환 이미지를 디코딩함으로써 상기 색상 변환 이미지를 생성하는 단계를 포함할 수 있다.
상기 텍스처 변환 이미지는 Lab 색 공간의 이미지로서 L 컴포넌트의 이미지이고, 상기 색상 변환 이미지는 Lab 색 공간의 이미지로서 ab 컴포넌트의 이미지이고, 상기 합성하는 단계는, 상기 L 컴포넌트의 이미지와 상기 ab 컴포넌트의 이미지를 합성함으로써 합성 이미지를 생성하는 단계 및 상기 합성 이미지를 RGB 색 공간의 이미지로 변환하는 단계를 포함할 수 있다.
상기 변환 모델은 각각의 추상화 레벨이 나타내는 추상화 정도를 반영하는 출력 값을 생성하는 각 레이어를 포함하는 복수의 레이어들로 구성되는 추상화 정도 반영 모듈을 포함하고, 상기 생성하는 단계는, 상기 수신된 추상화 레벨에 해당하는 상기 추상화 정도 반영 모듈의 레이어의 출력 값을 사용하여, 상기 수신된 추상화 레벨이 나타내는 추상화 정도를 반영하는 상기 타겟 스타일에 대응하는 텍스처로 상기 입력 이미지를 변환하여 상기 텍스처 변환 이미지를 생성할 수 있다.
상기 변환 모델은, 상기 타겟 스타일에 대응하는 텍스처를 포함하는 적어도 하나의 제1 이미지를 데이터 증강하여 생성된 제1 학습용 데이터 및 상기 타겟 스타일로의 변환 및 색상 변환의 대상이 되는 이미지인 적어도 하나의 제2 이미지를 데이터 증강하여 생성된 제2 학습용 데이터를 사용하여 미리 학습된 것일 수 있다.
상기 제1 학습용 데이터는, 상기 제1 이미지에 대한 소정의 정도의 추상화 처리를 모사하도록, 리사이징 처리 및 해상도 변경 처리 중 적어도 하나의 처리가 수행된 이미지를 포함할 수 있다.
상기 제2 학습용 데이터는, 제2 이미지를 임의의 색상으로 색상 변환한 학습용 변환 이미지를 포함할 수 있다.
상기 학습용 변환 이미지는 변환 단계들에 의해 생성되고, 상기 변환 단계들은, 상기 제2 이미지 및 상기 제2 이미지를 단순화 처리함으로써 생성된 상기 제2 이미지의 컬러맵 중 적어도 하나를 HSV 색 공간의 이미지로 변환하는 단계 및 상기 HSV 색 공간의 이미지를 임의의 색상으로 색상 변환하는 단계를 포함할 수 있다.
상기 변환 단계들은, 상기 제2 이미지 및 상기 제2 이미지의 컬러맵 중 적어도 하나를 Lab 색 공간의 이미지로 변환하는 단계, 상기 Lab 색 공간의 이미지의 L 정보를 추출하는 단계, 임의의 색상으로 색상 변환된 상기 HSV 색 공간의 이미지를 Lab 색 공간의 이미지로 변환하는 단계 및 상기 변환된 Lab 색 공간의 이미지의 L 정보를 상기 추출된 L 정보로 치환하는 단계를 포함할 수 있다
상기 변환 모델은, 상기 제1 학습용 데이터를 Lab 색 공간의 L 컴포넌트의 이미지로 변환한 이미지, 상기 제2 이미지를 Lab 색 공간의 이미지로 변환한 이미지, 상기 제2 이미지를 임의의 색상으로 색상 변환한 이미지를 Lab 색 공간의 ab 컴포넌트의 이미지로 변환한 이미지, 및 상기 제2 이미지의 컬러맵을 Lab 색 공간의 이미지로 변환한 이미지를 사용하여 미리 학습된 것일 수 있다.
다른 일 측면에 있어서, 이미지 변환 방법을 수행하는 컴퓨터 시스템에 있어서, 상기 컴퓨터 시스템에서 판독 가능한 명령을 실행하도록 구현되는 적어도 하나의 프로세서를 포함하고, 상기 적어도 하나의 프로세서는, 입력 이미지, 상기 입력 이미지가 변환될 타겟 스타일 및 상기 입력 이미지가 변환될 타겟 색상 정보를 수신하고, 미리 학습된 변환 모델을 사용하여, 상기 입력 이미지를 상기 타겟 스타일에 대응하는 텍스처로 변환한 텍스처 변환 이미지 및 상기 입력 이미지를 상기 타겟 색상 정보에 대응하는 색상으로 변환한 색상 변환 이미지를 생성하고, 상기 입력 이미지를 상기 타겟 스타일 및 상기 타겟 색상 정보에 따라 변환한 결과 이미지를 생성하기 위해, 상기 텍스처 변환 이미지 및 상기 색상 변환 이미지를 합성하는, 컴퓨터 시스템이 제공된다. .
또 다른 일 측면에 있어서, 컴퓨터 시스템에 의해 수행되는, 이미지를 변환하는 변환 모델을 학습시키는 방법에 있어서, 타겟 스타일에 대응하는 텍스처를 포함하는 적어도 하나의 제1 이미지와 상기 타겟 스타일로의 변환 및 색상 변환의 대상이 되는 이미지인 적어도 하나의 제2 이미지를 데이터 증강한 학습용 데이터를 획득하는 단계 및 상기 학습용 데이터를 사용하여, 상기 제2 이미지를 상기 타겟 스타일에 대응하는 텍스처로 변환한 텍스처 변환 이미지 및 상기 제2 이미지를 타겟 색상 정보에 대응하는 색상으로 변환한 색상 변환 이미지를 생성하도록, 상기 변환 모델을 학습시키는 단계를 포함하고, 상기 텍스처 변환 이미지 및 상기 색상 변환 이미지가 합성됨으로써 상기 제2 이미지를 상기 타겟 스타일 및 상기 타겟 색상 정보에 따라 변환한 결과 이미지가 생성되고, 상기 학습된 변환 모델은, 상기 타겟 스타일을 나타내는 레퍼런스 이미지의 입력 없이, 상기 타겟 스타일에 해당하는 텍스처와 입력되는 타겟 색상 정보에 해당하는 색상을 나타내도록 입력 이미지를 변환하는, 이미지 변환 방법이 제공된다.
학습된 변환 모델을 사용하여, 입력 이미지로부터, 사용자에 의해 입력된 타겟 스타일에 대응하는 텍스처와 타겟 색상 정보에 대응하는 색상을 나타내는 결과 이미지를 얻을 수 있다.
학습된 변환 모델을 사용하여, 사용자로부터 입력된 결과 이미지가 나타낼 추상화 정도를 설정하기 위한 추상화 레벨을 반영하면서, 타겟 스타일의 텍스처와 타겟 색상 정보의 색상을 나타내는 결과 이미지를 얻을 수 있다.
타겟 스타일을 나타내는 레퍼런스 이미지의 입력 없이, 타겟 스타일에 해당하는 텍스처와 입력되는 타겟 색상 정보에 해당하는 색상을 나타내도록, 입력 이미지를 변환하기 위해 미리 학습된 변환 모델을 사용함으로써, 별도의 레퍼런스 이미지의 입력 없이 상기 결과 이미지를 얻을 수 있다.
학습된 변환 모델을 사용하여, 입력 이미지로부터 사용자가 컨트롤 가능한 타겟 색상 정보와 추상화 레벨을 반영하는 결과 이미지를 획득하여 사용함으로써, 웹툰, 카툰, 애니메이션 등과 같은 콘텐츠의 제작 시 캐릭터와 같은 전경 부분을 제외한 배경 부분을 제작하기 위한 시간과 리소스를 절감할 수 있다.
도 1은 일 실시예에 따른, 입력 이미지를 타겟 스타일 및 상기 타겟 색상 정보에 따라 변환한 결과 이미지를 생성하기 위한 이미지 변환 방법을 나타낸다.
도 2a는 일 실시예에 따른, 이미지 변환 방법을 수행하는 컴퓨터 시스템을 나타낸다.
도 2b는 일 실시예에 따른, 미리 학습된 변환 모델을 사용하여 수행되는 이미지 변환 방법을 나타낸다.
도 3은 일 실시예에 따른, 입력 이미지를 타겟 스타일 및 상기 타겟 색상 정보에 따라 변환한 결과 이미지를 생성하기 위한 이미지 변환 방법을 나타내는 흐름도이다.
도 4a 및 4b는 일 예에 따른, 입력 이미지를 전처리하는 방법을 나타낸다.
도 5는 일 예에 따른, 미리 학습된 변환 모델을 사용하여, 입력 이미지로부터 텍스처 변환 이미지 및 색상 변환 이미지를 생성하는 방법을 나타낸다.
도 6은 일 예에 따른, 결과 이미지를 생성하는 방법을 나타내는 흐름도이다.
도 7은 일 예에 따른, 입력 이미지를 타겟 스타일 및 상기 타겟 색상 정보에 따라 변환한 결과 이미지를 생성하는 변환 모델을 나타낸다.
도 8은 일 예에 따른, 변환 모델을 학습시키는 방법을 나타낸다.
도 9a 및 도 9b는 일 예에 따른, 변환 모델을 위한 학습 데이터를 획득하는 방법을 나타내는 흐름도이다.
도 10a 및 도 10b는 일 예에 따른, 변환 모델을 위한 학습 데이터를 획득하는 방법을 나타낸다.
도 11은 일 예에 따른, 변환 모델에 포함된 추상화 정도 반영 모듈의 구조를 나타낸다.
도 12는 일 예에 따른, 판별자 네트워크의 구조를 나타낸다.
도 13은 일 예에 따른, 입력 이미지에 기반하여 생성된, 타겟 스타일 및 타겟 색상 정보를 반영한 결과 이미지를 나타낸다.
이하, 본 발명의 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.
도 1은 일 실시예에 따른, 입력 이미지를 타겟 스타일 및 상기 타겟 색상 정보에 따라 변환한 결과 이미지를 생성하기 위한 이미지 변환 방법을 나타낸다.
도 1을 참조하여, 사용자로부터 이미지(이하, 입력 이미지)를 입력 받고, 타겟 스타일, 타겟 색상 정보 및 추상화 레벨을 입력 받아, 입력 이미지를 타겟 스타일, 타겟 색상 정보 및 추상화 레벨을 반영한 결과 이미지로 변환하는 방법(즉, 결과 이미지를 생성하는 방법)을 설명한다.
이미지는 사진 또는 기타 화상을 포함할 수 있다. 한편, 실시예에서, 이미지는 화상을 의미할 수 있나, 화상으로 제한되지 않고, 동영상을 포괄하는 것으로도 해석될 수 있다.
화면(50)은, 사용자로부터 입력되는 입력 이미지를 표시하고, 사용자로부터의 설정에 따라 입력 이미지를 변환한 결과 이미지를 표시하는 사용자 단말의 화면일 수 있다. 즉, 화면(50)은 실시예의 이미지 변환 방법을 수행하는 소프트웨어, 프로그램 또는 어플리케이션의 실행 화면일 수 있다.
사용자 단말은, 스마트 폰과 같은 스마트 기기이거나, PC(personal computer), 노트북 컴퓨터(laptop computer), 랩탑 컴퓨터(laptop computer), 태블릿(tablet), 사물 인터넷(Internet Of Things) 기기, 또는 웨어러블 컴퓨터(wearable computer) 등일 수 있다.
도시된 것처럼, 화면(50)은, 예컨대, 사용자로부터 입력되는 입력 이미지 및 입력 이미지가 변환된 결과인 결과 이미지를 표시하는 제1 영역(10)과, 제1 영역(10)에 표시되는 이미지를 편집하기 위한 사용자 인터페이스(User Interface)를 포함하는 제2 영역(20)과, 사용자가 타겟 스타일, 타겟 색상 정보 및 추상화 레벨 중 적어도 하나를 설정할 수 있도록 하는 UI를 포함하는 제3 영역(30, 40)을 포함할 수 있다. 여기서, 제3 영역(30, 40)은 입력 이미지가 변환될 타겟 스타일을 설정하기 위한 UI와, 결과 이미지가 나타낼 추상화 정도를 설정하기 위한 추상화 레벨을 설정하기 위한 UI를 포함하는 영역(30)을 포함할 수 있다. 또한, 제3 영역(30, 40)은 입력 이미지가 변환될 타겟 색상 정보를 설정하기 위한 UI를 포함하는 영역(40)을 포함할 수 있다.
일례로, 제1 영역(10)에서는 사용자로부터 입력되는 입력 이미지가 표시될 수 있다. 사용자는 사용자 단말에 저장된 이미지 또는 사용자 단말의 카메라를 사용하여 촬영된 이미지를 로딩함으로써, 제1 영역(10)에 입력 이미지를 표시시킬 수 있다. 입력 이미지는 변환 전 이미지로서 "원본 이미지"로도 명명될 수 있다. 실시예의 이미지 변환 방법에 따라, 입력 이미지는 "결과 이미지"로 변환될 수 있고, 결과 이미지 역시 제1 영역(10)에서 표시될 수 있다. 결과 이미지는 입력 이미지 대신에 제1 영역(10)에서 표시될 수 있다.
제2 영역(20)은 제1 영역(10)에 표시되는 입력 이미지 또는 결과 이미지를 편집하기 위한 UI로서, 브러시 및/또는 지우개와 같은 편집 툴을 포함할 수 있다. 또한, 제2 영역(20)은 실행 취소(Undo 및 Redo)를 위한 UI를 더 포함할 수 있다. 한편, 제2 영역(20)은 제1 영역(10)에서의 입력 이미지의 표시 및 결과 이미지의 표시를 서로 전환하기 위한 UI를 더 포함할 수 있다.
제3 영역(30, 40) 중 영역(30)은 타켓 스타일을 설정하기 위한 UI를 포함할 수 있다. 타겟 스타일은 이미지 또는 동영상을 포함하는 콘텐츠를 나타낼 수 있다. 즉, 타켓 스타일은 이러한 "콘텐츠명"으로 표현될 수 있다. 콘텐츠는 예컨대, 만화, 카툰 또는 웹툰일 수 있다. 타겟 스타일은 입력 이미지가 변환될 텍스처를 나타낼 수 있다. 말하자면, 실시예의 이미지 변환 방법을 통해, 입력 이미지의 텍스처는 타겟 스타일에 대응하는 텍스처로 변환될 수 있다. 이 때, 타겟 스타일에 대응하는 텍스처는 상기 콘텐츠가 포함하는 이미지 또는 동영상의 텍스처일 수 있다. 텍스처는 콘텐츠가 포함하는 이미지 또는 동영상의 화풍, 그림체, 또는 기타 콘텐츠를 다른 콘텐츠와 시각적으로 구분하기 위한 특징을 포함할 수 있다. 일례로, 사용자는 영역(30)을 통해 타겟 스타일로서 특정 웹툰명을 선택할 수 있고, 실시예의 이미지 변환 방법을 통해, 입력 이미지의 텍스처를 해당 웹툰의 텍스처로 변환시킬 수 있다.
영역(30)은 또한 결과 이미지가 나타낼 추상화 정도를 나타내는 추상화 레벨을 설정하기 위한 UI를 포함할 수 있다. "추상화"는 결과 이미지가 어느 정도의 디테일(detail)을 포함하는지 여부, 결과 이미지를 표현하는 선의 굵기 등을 나타낼 수 있다. 또는, "추상화"는 결과 이미지가 어느 정도로 단순화될 것인지를 나타낼 수 있다. 예컨대, 추상화 정도가 높을수록 결과 이미지는 더 적은 디테일을 포함할 수 있으며, 또는, 결과 이미지의 선이 뭉게지거나 소프트하게 표현될 수 있다. 반대로, 추상화 정도가 낮을수록 결과 이미지는 더 많은 디테일을 포함할 수 있으며, 또는, 결과 이미지는 보다 세밀하게 표현될 수 있다. 실시예에서는, 영역(30)을 통해 추상화 레벨이 설정됨으로써, 결과 이미지의 추상화 정도가 설정된 추상화 레벨에 따라 조정될 수 있다.
제3 영역(30, 40) 중 영역(40)은 타켓 색상 정보를 설정하기 위한 UI를 포함할 수 있다. 타켓 색상 정보는 입력 이미지가 변환될 색상을 나타낼 수 있다. 말하자면, 실시예의 이미지 변환 방법을 통해, 입력 이미지의 색상은 타겟 색상 정보에 대응하는 색상으로 변환될 수 있다. 타겟 색상 정보에 대응하는 색상은 결과 이미지의 색감을 의미할 수 있다. 일례로, 사용자는 영역(40)을 통해 특정한 색상(또는 색조)(hue 및 saturation)를 선택할 수 있고, 실시예의 이미지 변환 방법을 통해, 입력 이미지의 색상을 선택된 색상으로 변환시킬 수 있다. 이에 따라, 결과 이미지는 영역(40)을 통해 선택된 타켓 색상 정보에 해당하는 색감과 동일하게 될 수 있다.
따라서, 실시예의 이미지 변환 방법을 통해서는, 제3 영역(30, 40)을 통해 설정된 정보에 따라, 입력 이미지가 설정된 타겟 스타일, 설정된 타겟 색상 정보 및 설정된 추상화 레벨을 반영하여 결과 이미지로 변환될 수 있다.
실시예의 이미지 변환 방법은 화면(50)을 출력하는 사용자 단말에 의해 수행될 수 있다. 또는, 이미지 변환 방법은, 사용자 단말과 통신하는, 사용자 단말과는 별개의 컴퓨터 시스템에 의해 수행될 수도 있다. 예컨대, 이미지 변환 방법은 서버에 의해 수행될 수 있다.
후술될 상세한 설명에서는, 이러한 이미지 변환 방법을 수행하는 컴퓨터 시스템을 컴퓨터 시스템(100)으로 명명한다.
실시예에서, 컴퓨터 시스템(100)은 미리 학습된 변환 모델을 사용하여 입력 이미지를 결과 이미지로 변환할 수 있다. 이 때, 컴퓨터 시스템(100)은 입력 이미지의 텍스처를 설정된 타겟 스타일에 대응하는 텍스처로 변환할 수 있고(1), 또한, 입력 이미지의 색상을 설정된 타겟 색상 정보에 대응하는 색상으로 변환할 수 있다(2). 변환 모델은 (1)의 입력 이미지의 텍스처 변환과 (2)의 입력 이미지의 색상 변환을 각각의 프로세스를 통해 수행할 수 있다. 이에 따라, 컴퓨터 시스템(100)은 변환 모델을 사용하여, 입력 이미지를 타겟 스타일에 대응하는 텍스처로 변환한 텍스처 변환 이미지를 생성하고, 또한, 입력 이미지를 타겟 색상 정보에 대응하는 색상으로 변환한 색상 변환 이미지를 생성할 수 있고, 텍스처 변환 이미지 및 색상 변환 이미지를 합성하여 결과 이미지를 생성할 수 있다.
변환 모델을 사용하여 입력 이미지의 텍스처 변환 및 입력 이미지의 색상 변환을 수행하는 구체적인 방법과, 결과 이미지가 생성되는 구체적인 방법에 대해서는 후술될 도 2 내지 도 13을 참조하여 더 자세하게 설명된다.
도 2a는 일 실시예에 따른, 이미지 변환 방법을 수행하는 컴퓨터 시스템을 나타낸다.
컴퓨터 시스템(100)은 실시예의 이미지 변환 방법을 수행하기 위해 필요한 작업을 수행하는 컴퓨팅 장치일 수 있다.
컴퓨터 시스템(100)은 적어도 하나의 컴퓨팅 장치를 포함하도록 구성될 수 있다. 컴퓨터 시스템(100)는, 미리 학습된 변환 모델을 사용하여, 입력 이미지의 텍스처 변환과 입력 이미지의 색상 변환을 수행하고, 사용자로부터의 설정을 반영한 결과 이미지를 생성할 수 있다.
컴퓨터 시스템(100)은 전술한 사용자 단말이거나, 사용자 단말과 통신하는 다른 컴퓨터 장치 또는 서버일 수 있다.
컴퓨터 시스템(100)은 도시된 것처럼, 메모리(130), 프로세서(120), 통신부(110) 및 입출력 인터페이스(140)를 포함할 수 있다.
메모리(130)는 컴퓨터에서 판독 가능한 기록매체로서, RAM(random access memory), ROM(read only memory) 및 디스크 드라이브와 같은 비소멸성 대용량 기록장치(permanent mass storage device)를 포함할 수 있다. 여기서 ROM과 비소멸성 대용량 기록장치는 메모리(130)와 분리되어 별도의 영구 저장 장치로서 포함될 수도 있다. 또한, 메모리(130)에는 운영체제와 적어도 하나의 프로그램 코드가 저장될 수 있다. 이러한 소프트웨어 구성요소들은 메모리(130)와는 별도의 컴퓨터에서 판독 가능한 기록매체로부터 로딩될 수 있다. 이러한 별도의 컴퓨터에서 판독 가능한 기록매체는 플로피 드라이브, 디스크, 테이프, DVD/CD-ROM 드라이브, 메모리 카드 등의 컴퓨터에서 판독 가능한 기록매체를 포함할 수 있다. 다른 실시예에서 소프트웨어 구성요소들은 컴퓨터에서 판독 가능한 기록매체가 아닌 통신부(110)를 통해 메모리(130)에 로딩될 수도 있다.
프로세서(120)는 기본적인 산술, 로직 및 입출력 연산을 수행함으로써, 컴퓨터 프로그램의 명령을 처리하도록 구성될 수 있다. 명령은 메모리(130) 또는 통신부(110)에 의해 프로세서(120)로 제공될 수 있다. 예를 들어, 프로세서(120)는 메모리(130)에 로딩된 프로그램 코드에 따라 수신되는 명령을 실행하도록 구성될 수 있다.
통신부(110)는 컴퓨터 시스템(100)이 다른 장치(사용자 단말 또는 다른 서버 등)와 통신하기 위한 구성일 수 있다. 말하자면, 통신부(110)는 다른 장치에 대해 데이터 및/또는 정보를 전송/수신하는, 컴퓨터 시스템(100)의 안테나, 데이터 버스, 네트워크 인터페이스 카드, 네트워크 인터페이스 칩 및 네트워킹 인터페이스 포트 등과 같은 하드웨어 모듈 또는 네트워크 디바이스 드라이버(driver) 또는 네트워킹 프로그램과 같은 소프트웨어 모듈일 수 있다.
입출력 인터페이스(140)는 키보드 또는 마우스 등과 같은 입력 장치 및 디스플레이나 스피커와 같은 출력 장치와의 인터페이스를 위한 수단일 수 있다.
프로세서(120)는 컴퓨터 시스템(100)의 구성 요소들을 관리할 수 있고, 전술한 전처리, 유사 컷들의 페어 결정 및 매칭을 수행하기 위한 프로그램 또는 어플리케이션을 실행할 수 있고, 상기 프로그램 또는 어플리케이션의 실행 및 데이터의 처리 등에 필요한 연산을 처리할 수 있다. 프로세서(120)는 컴퓨터 시스템(100)의 적어도 하나의 프로세서(CPU 또는 GPU 등) 또는 프로세서 내의 적어도 하나의 코어(core)일 수 있다.
또한, 실시예들에서 컴퓨터 시스템(100) 및 프로세서(120)는 도시된 구성요소들보다 더 많은 구성요소들을 포함할 수도 있다. 예컨대, 프로세서(120)는 변환 모델을 학습시키고, 학습된 변환 모델을 사용하여 실시예의 이미지 변환 방법을 수행하기 위한 기능들을 수행하는 구성들을 포함할 수 있다. 이러한 프로세서(120)의 구성들은 프로세서(120)의 일부이거나 프로세서(120)에 의해 구현되는 기능일 수 있다. 프로세서(120)가 포함하는 구성들은, 운영체제의 코드나 적어도 하나의 컴퓨터 프로그램의 코드에 따른 제어 명령(instruction)에 따라 프로세서(120)가 수행하는 서로 다른 기능들(different functions)의 표현일 수 있다.
컴퓨터 시스템(100)이 변환 모델을 사용하여 입력 이미지의 텍스처 변환 및 입력 이미지의 색상 변환을 수행하는 구체적인 방법과, 결과 이미지가 생성되는 구체적인 방법에 대해서는 후술될 도 2b 내지 도 13을 참조하여 더 자세하게 설명된다.
관련하여, 도 2b는 일 실시예에 따른, 미리 학습된 변환 모델을 사용하여 수행되는 이미지 변환 방법을 나타낸다.
도 2b에서는, 미리 학습된 변환 모델(250)을 사용하여 입력 이미지(205)에 기반하여 결과 이미지(260)를 생성하는 방법(즉, 입력 이미지(205)를 결과 이미지(260)로 변환하는 방법)이 설명된다.
입력 데이터 전처리부(230)와 변환 모델(250)은 프로세서(120)를 사용하여 구현될 수 있다. 말하자면, 입력 데이터 전처리부(230)와 변환 모델(250)에 의해 수행되는 동작은 프로세서(120)에 의해 수행되는 동작일 수 있다.
도시된 것처럼, 컴퓨터 시스템(100)에는 입력 이미지(205)와 타겟 색상 정보(210)가 입력될 수 있다. 또한, 컴퓨터 시스템(100)에는 타겟 스타일 및 결과 이미지(260)의 추상화 정도를 나타내는 추상화 레벨이 더 입력될 수 있다. 도시된 것처럼, 타겟 색상 정보(210)는 서로 다른 복수의 색상들의 그룹을 포함하는 팔레트로 구성될 수 있다. 또는, 도시된 것과는 달리, 타겟 색상 정보(210)는 하나의 선택된 색상을 나타낼 수도 있다.
타겟 색상 정보(210)가 포함하는 팔레트는 입력 이미지(205)의 색상 분포에 기반하여 결정되는 서로 다른 복수의 색상들의 그룹을 포함할 수 있다. 예컨대, 팔레트에 포함하는 색상들의 수 및/또는 각 색상의 종류는 입력 이미지(205)의 색상 분포에 기반하여 결정될 수 있다. 도시된 타겟 색상 정보(210)의 팔레트는 현재 입력 이미지(205)의 색상 분포를 반영한 색상들의 그룹으로 도시되었다. 즉, 도시된 팔레트는 소스 팔레트일 수 있다. 팔레트에 포함되는 색상들의 수 및/또는 종류는 입력 이미지(205)에서 사용된 색상들의 수 및/또는 종류에 기반하여 결정될 수 있다.
사용자는, 예컨대, 전술한 영역(40)의 UI를 통해, 다른 색상들의 그룹(예컨대, 전체적으로 붉은 톤을 나타내는 색상들의 그룹)을 포함하는 팔레트를 선택하여 타겟 색상 정보(210)를 변경할 수 있다. 또는, 팔레트에 포함된 복수의 색상들의 각각은 사용자에 의해 선택 가능하게 구성될 수 있고, 사용자는 팔레트의 각각의 색상을 변경할 수 있다.
입력 데이터 전처리부(230)는 타겟 색상 정보(210)에 기반하여 입력 이미지(205)를 전처리할 수 있고, 변환 모델(250)에의 입력을 위한 데이터를 생성할 수 있다. 입력 이미지(205)의 전처리 방법에 대해서는 도 4를 참조하여 더 자세하게 설명된다.
입력 데이터 전처리부(230)에 의해 전처리된 데이터는 변환 모델(250)로 입력될 수 있다. 변환 모델(250)은 입력 이미지(205)의 전처리된 데이터를 인코딩하기 위한 공용 인코더(252)를 포함할 수 있다. 변환 모델(250)은 인코딩된 데이터에 대한 텍스처 변환을 위한 디코딩을 수행하는 텍스처 디코더(256)와, 인코딩된 데이터에 대한 색상 변환을 위한 디코딩을 수행하는 색상 디코더(254)를 포함할 수 있다. 텍스처 디코더(256)에 의한 디코딩에 따라 입력 이미지(205)를 타겟 스타일에 대응하는 텍스처로 변환한 텍스처 변환 이미지가 생성될 수 있고, 색상 디코더(254)에 의한 디코딩에 따라, 입력 이미지(205)를 타겟 색상 정보에 대응하는 색상으로 변환한 색상 변환 이미지가 생성될 수 있다. 변환 모델(250)에 의한 텍스처 변환 결과에는 사용자에 의해 입력된 타켓 스타일과 추상화 레벨에 해당하는 추상화 정도가 반영될 수 있다. 변환 모델(250)의 자세한 구조는 도 7을 참조하여 더 자세하게 설명된다.
컴퓨터 시스템(100)은 변환 모델(250)에 의한 텍스처 변환 결과와 색상 변환 결과를 합성하여 결과 이미지(260)를 생성할 수 있다. 따라서, 생성된 결과 이미지(260)에는 입력된 타겟 스타일의 텍스처 및 추상화 레벨에 해당하는 추상화 정도가 반영되어 있을 수 있고, 결과 이미지(260)의 색감은 입력된 타겟 색상 정보(210)와 동일하게 될 수 있다.
관련하여, 도 13은 일 예에 따른, 입력 이미지에 기반하여 생성된, 타겟 스타일 및 타겟 색상 정보를 반영한 결과 이미지를 나타낸다.
도 13에서는, 좌측의 입력 이미지가 타겟 스타일에 대응하는 텍스처를 갖는 결과 이미지들로 변환된 경우가 예시되었다. 결과 이미지는 우측으로 갈수록 설정된 추상화 레벨이 높은 것일 수 있다. 즉, 우측의 결과 이미지가 더 적은 디테일을 포함하고 소프트하게 표현된 것일 수 있다. 도시된 것처럼, 결과 이미지들은 입력된 타겟 색상 정보(1310 내지 1340)에 대응하는 색상을 나타낼 수 있다. 각 타겟 색상 정보는 복수의 색상들의 그룹을 포함하는 팔레트로 예시되었다. 결과 이미지들은 이러한 팔레트가 나타내는 색감으로 표현될 수 있다.
이처럼, 실시예의 이미지 변환 방법을 통해서는, 입력 이미지는 입력된 타겟 스타일, 타겟 색상 정보 및 추상화 레벨을 반영한 결과 이미지로 변환될 수 있다.
이상 도 1을 참조하여 전술된 기술적 특징에 대한 설명은, 도 2 및 도 13에 대해서도 그대로 적용될 수 있으므로 중복되는 설명은 생략한다.
아래에서는, 전술한 변환 모델(250)을 사용하여 입력 이미지(205)를 결과 이미지(260)로 변환하는 방법을 더 자세하게 설명한다.
후술될 상세한 설명에서, 컴퓨터 시스템(100) 또는 프로세서(120)나 이들의 구성들에 의해 수행되는 동작은 설명의 편의상 컴퓨터 시스템(100)에 의해 수행되는 동작으로 설명될 수 있다.
도 3은 일 실시예에 따른, 입력 이미지를 타겟 스타일 및 상기 타겟 색상 정보에 따라 변환한 결과 이미지를 생성하기 위한 이미지 변환 방법을 나타내는 흐름도이다.
단계(310)에서, 컴퓨터 시스템(100)은 입력 이미지(205), 입력 이미지(205)가 변환될 타겟 스타일 및 입력 이미지(205)가 변환될 타겟 색상 정보(210)를 수신할 수 있다. 예컨대, 컴퓨터 시스템(100)은 사용자 단말을 통해 사용자에 의해 입력되는 입력 이미지(205), 타겟 스타일 및 타겟 색상 정보(210)를 수신할 수 있다
단계(320)에서, 컴퓨터 시스템(100)은, 미리 학습된 변환 모델(250)을 사용하여, 입력 이미지(205)를 타겟 스타일에 대응하는 텍스처로 변환한 텍스처 변환 이미지를 생성할 수 있고, 입력 이미지(205)를 타겟 색상 정보(210)에 대응하는 색상으로 변환한 색상 변환 이미지를 생성할 수 있다.
한편, 컴퓨터 시스템(100)은 결과 이미지(260)가 나타낼 추상화 정도를 설정하기 위한 추상화 레벨을 더 수신할 수 있다. 이에 따라, 컴퓨터 시스템(100)은 수신된 추상화 레벨이 나타내는 추상화 정도를 반영하는 타겟 스타일에 대응하는 텍스처로 입력 이미지(205)를 변환하여 텍스처 변환 이미지를 생성할 수 있다.
단계(330)에서, 컴퓨터 시스템(100)은, 입력 이미지(205)를 수신된 타겟 스타일 및 타겟 색상 정보(210)에 따라 변환한 결과 이미지(260)를 생성하기 위해, 텍스처 변환 이미지 및 색상 변환 이미지를 합성할 수 있다. 예컨대, 컴퓨터 시스템(100)은, 색상 변환 이미지의 색상으로 텍스처 변환 이미지가 채색되도록 함으로써 결과 이미지(260)를 생성할 수 있다.
이처럼, 실시예의 변환 모델(250)은 입력 이미지(205)에 대한 텍스처 변환과, 입력 이미지(205)에 대한 색상 변환을 구분하여 수행할 수 있다. 변환 모델(250)은, 결과 이미지(260)가 생성되기 전에, 텍스처 변환 이미지와 색상 변환 이미지에 대해 각각 손실 함수를 별도로 계산하여 학습할 수 있다.
단계(340)에서, 컴퓨터 시스템(100)은, 결과 이미지(260)를 사용자 단말(예컨대, 화면(50)의 제1 영역(10))에서 출력할 수 있다.
실시예의 변환 모델(250)은, 타겟 스타일을 나타내는 레퍼런스 이미지의 입력 없이, 타겟 스타일에 해당하는 텍스처와 입력되는 타겟 색상 정보(210)에 해당하는 색상을 나타내도록, 입력 이미지를 변환하기 위해 미리 학습된 것일 수 있다. 말하자면, 변환 모델(250)은 입력 이미지(205) 외에 추가로 타겟 스타일의 텍스처를 갖는 별도의 이미지를 입력할 필요 없이, 입력 이미지(205)에 기반하여 결과 이미지(260)를 생성할 수 있다.
한편, 단계(310)에서 수신된 입력 이미지(205)는 전처리된 후, 변환 모델(250)로 입력될 수 있다. 즉, 단계(315)에서, 컴퓨터 시스템(100)은 변환 모델(250)에의 입력에 적합한 데이터를 생성하기 위해 입력 이미지(205)를 전처리할 수 있다. 위해 입력 이미지(205)를 전처리하는 방법에 대해서는 후술될 도 4를 참조하여 더 자세하게 설명된다.
이상 도 1, 도 2 및 도 13을 참조하여 전술된 기술적 특징에 대한 설명은, 도 3에 대해서도 그대로 적용될 수 있으므로 중복되는 설명은 생략한다.
도 4a 및 4b는 일 예에 따른, 입력 이미지를 전처리하는 방법을 나타낸다.
도 4b에서, 입력 이미지(440)는 전술한 입력 이미지(205)에 대응할 수 있다. 입력 이미지(440)는 예컨대, RGB 색 공간의 이미지로서 Isrc RGB로 표현될 수 있다.
컴퓨터 시스템(100)은 입력 이미지(440)(Isrc RGB)를 Lab 색 공간의 이미지로 변환(RGB2Lab)할 수 있다. Lab 색 공간은 밝기(L)와 적록과 황청(a Channel, b Channel)의 조합을 통해 표현되는 색 공간일 수 있다. 말하자면, Lab 색 공간의 L 컴포넌트는 밝기를 나타낼 수 있고, Lab 색 공간의 ab 컴포넌트는 색상을 나타낼 수 있다. Lab 색 공간의 이미지로 변환된 입력 이미지(440)는 Isrc Lab로 표현될 수 있다. Isrc Lab는 변환 모델(250)의 입력이 될 수 있다.
또한, 컴퓨터 시스템(100)은 입력 이미지(440)(Isrc RGB)에 대해 이미지 단순화 처리를 수행함으로써, 입력 이미지(440)에 대응하는 컬러맵(445)을 생성할 수 있다. 이러한 컬러맵(445)은 Csrc RGB로 표현될 수 있다. 이미지 단순화 처리는 예컨대, 슈퍼픽셀(superpixel) 알고리즘에 기반하여 수행될 수 있다.
컬러맵(445)은 사용자에 의해 입력된 타겟 색상 정보(455)에 기반하여 재채색될 수 있다. 컴퓨터 시스템(100)은 입력 이미지(440)의 색상 분포에 기반하여 입력 이미지(440)의 소스 팔레트()를 생성할 수 있다. 소스 팔레트()는 예컨대, K-means 클러스터링 알고리즘에 기반하여 생성될 수 있다. 소스 팔레트는 초기 팔레트로도 명명될 수 있다. 컴퓨터 시스템(100)은, 사용자에 의해 소스 팔레트()가 편집됨에 따라, 타겟 색상 정보(455)에 해당하는 팔레트()를 생성할 수 있다. 예컨대, 소스 팔레트()를 구성하는 색상들 중 적어도 하나가 사용자로부터의 입력에 따라 변경됨으로써 타겟 색상 정보(455)에 해당하는 팔레트()가 생성될 수 있다. 타겟 색상 정보(455)에 해당하는 팔레트()에 기반하여 컬러맵(445)이 재채색됨으로써 타겟 색상 정보(455)가 반영된 컬러맵(465)()이 생성될 수 있다. 은 Lab 색 공간의 이미지로 변환될 수 있고 이러한 Lab 색 공간의 이미지로 변환된 컬러맵은 로 표현될 수 있다. 한편, 상기 재채색이 수행되기 전에는, 편집되지 않은 색 영역은 컬러맵(445)(Csrc RGB)과 동일하게 유지되도록 하기 위해, 입력 이미지(440)(Isrc RGB)는 소스 팔레트()의 각 색상에 대해 컬러 세그먼트화 마스크(Color segmentation mask)(M)(460)가 계산될 수 있고, 이러한 마스크를 사용한 마스킹이 수행될 수 있다.
예컨대, 입력 이미지(440)와 소스 팔레트()에 기반하여 이미지 마스크(M)가 생성될 수 있다. 컴퓨터 시스템(100)은, 입력 이미지(440) 내의 모든 픽셀들에서 상기 소스 팔레트() 내의 색상 중 가장 가까운 색을 식별하고, 식별된 색상에 대응하는 마스크 영역에 값을 기입함으로써 마스크를 생성할 수 있다. 타겟 색상 정보(455)에 해당하는 팔레트()와 소스 팔레트()를 사용하여, 컬러맵(445)은 재채색될 수 있다. 이 때, 컬러맵(445)에 존재하는 모든 픽셀에 대해, 컴퓨터 시스템(100)은, 각 픽셀이 생성된 마스크의 어떤 색상에 대응되는지를 식별할 수 있고, 식별된 색상과 타겟 색상 정보(455)에 해당하는 팔레트()의 색상을 비교하여 컬러맵(445)을 재채색할 수 있다.
최종적으로 생성된 Lab 색 공간의 이미지로 변환된 컬러맵()은 변환 모델(250)의 입력이 될 수 있다.
도 4a의 흐름도를 참조하여 입력 이미지(440)의 전처리 방법을 다시 설명면, 단계(405)에서, 컴퓨터 시스템(100)은 입력 이미지(440)를 Lab 색 공간의 이미지인 제1 변환 이미지로 변환할 수 있다. 제1 변환 이미지는 전술한 Isrc Lab일 수 있고, 이는 변환 모델(250)의 입력이 될 수 있다.
단계(410)에서, 컴퓨터 시스템(100)은 입력 이미지(440)를 단순화 처리함으로써 제1 컬러맵을 생성할 수 있다. 단순화 처리에는, 예컨대, 슈퍼픽셀 알고리즘에 기반한 단순화 처리, 또는 기타 이미지 양자화(quantization) 알고리즘에 기반한 단순화 처리 방법이 사용될 수 있다. 제1 컬러맵은 전술한 컬러맵(445)(Csrc RGB)에 대응할 수 있다.
단계(420)에서, 컴퓨터 시스템(100)은 제1 컬러맵의 색상을 수신된 타겟 색상 정보에 기반하여 변환함으로써, 제2 컬러맵을 생성할 수 있다. 예컨대, 제1 컬러맵은 타겟 색상 정보에 대응하는 색상에 따라 재채색될 수 있고, 이러한 재채색에 따라 제2 컬러맵이 생성될 수 있다. 제2 컬러맵은 전술한 컬러맵(465)()에 대응할 수 있다.
단계(430)에서, 컴퓨터 시스템(100)은 제2 컬러맵을 Lab 색 공간의 이미지인 제2 변환 이미지로 변환할 수 있다. 이러한 변환에 따라 생성되는 제2 변환 이미지는 전술한 컬러맵()에 대응할 수 있고, 이는 변환 모델(250)의 입력이 될 수 있다.
변환 모델(250)은 제1 변환 이미지(Isrc Lab)에 기반하여 전술한 텍스처 변환 이미지를 생성할 수 있고, 제2 변환 이미지()에 기반하여 전술한 색상 변환 이미지를 생성할 수 있다.
이상 도 1 내지 도 3 및 도 13을 참조하여 전술된 기술적 특징에 대한 설명은, 도 4에 대해서도 그대로 적용될 수 있으므로 중복되는 설명은 생략한다.
도 5는 일 예에 따른, 미리 학습된 변환 모델을 사용하여, 입력 이미지로부터 텍스처 변환 이미지 및 색상 변환 이미지를 생성하는 방법을 나타낸다.
아래에서는, 단계들(510 내지 530)을 참조하여, 변환 모델(250)을 사용하여 전술한 텍스처 변환 이미지 및 색상 변환 이미지를 생성하는 방법에 대해 더 자세사게 설명한다.
도 2b를 참조하여 전술한 것처럼, 변환 모델(250)은 입력 이미지(440)의 전처리된 데이터를 인코딩하기 위한 공용 인코더(252)와, 인코딩된 데이터에 대한 텍스처 변환을 위한 디코딩을 수행하는 텍스처 디코더(256)와, 인코딩된 데이터에 대한 색상 변환을 위한 디코딩을 수행하는 색상 디코더(254)를 포함할 수 있다.
단계(510)에서, 변환 모델(250)은, 인코더(252)를 사용하여 전술한 입력 이미지(440)의 전처리에 기반하여 생성된 제1 변환 이미지를 인코딩할 수 있다.
단계(520)에서, 변환 모델(250)은, 인코더(252)에 의해 인코딩된 제1 변환 이미지를 텍스처 디코더(254)를 사용하여 디코딩함으로써 텍스처 변환 이미지를 생성할 수 있다. 텍스처 변환 이미지는, 타겟 스타일에 대응하는 텍스처로 입력 이미지(440)의 텍스처가 변환된 것일 수 있다.
단계(530)에서, 변환 모델(250)은, 색상 디코더(254)를 사용하여, 입력 이미지(440)의 전처리에 기반하여 생성된 제2 변환 이미지에 기반하여, 예컨대, 제2 변환 이미지를 조건 정보로서 사용하여, 상기 인코딩된 제1 변환 이미지를 디코딩함으로써 색상 변환 이미지를 생성할 수 있다. 색상 디코더(254)에는 전술한 제2 변환 이미지가 입력됨으로써 색상 변환 이미지에는 타겟 색상 정보에 대응하는 색상이 반영될 수 있다.
컴퓨터 시스템(100)은, 단계(520)에서 생성된 텍스처 변환 이미지와 단계(530)에서 생성된 색상 변환 이미지가 합성됨으로써 최종적인 결과 이미지를 생성할 수 있다.
이상 도 1 내지 도 4 및 도 13을 참조하여 전술된 기술적 특징에 대한 설명은, 도 5에 대해서도 그대로 적용될 수 있으므로 중복되는 설명은 생략한다.
도 6은 일 예에 따른, 결과 이미지를 생성하는 방법을 나타내는 흐름도이다.
도 5를 참조하여 전술한, 텍스처 변환 이미지는 Lab 색 공간의 이미지로서 L 컴포넌트의 이미지일 수 있다. 즉, 텍스처 변환 이미지는 ab 컴포넌트를 갖지 않을 수 있다. 색상 변환 이미지는 Lab 색 공간의 이미지로서 ab 컴포넌트의 이미지일 수 있다. 색상 변환 이미지는 결과 이미지를 생성하기 위한 ab 채널의 컬러맵일 수 있다.
단계(610)에서, 컴퓨터 시스템(100)은, 텍스처 변환 이미지인 L 컴포넌트의 이미지와 색상 변환 이미지 ab 컴포넌트의 이미지를 합성함으로써 합성 이미지를 생성할 수 있다. 합성 이미지는 Lab 색 공간의 이미지일 수 있다.
단계(620)에서, 컴퓨터 시스템(100)은, Lab 색 공간의 이미지인 합성 이미지를 RGB 색 공간의 이미지로 변환할 수 있다. 최종적으로 RGB 색 공간의 이미지로 변환된 이미지는 전술한 결과 이미지가 될 수 있다.
전술한 단계들(610 및 620)은 변환 모델(250)에 의해 수행되는 동작일 수 있다.
이상 도 1 내지 도 5 및 도 13을 참조하여 전술된 기술적 특징에 대한 설명은, 도 6에 대해서도 그대로 적용될 수 있으므로 중복되는 설명은 생략한다.
도 7은 일 예에 따른, 입력 이미지를 타겟 스타일 및 상기 타겟 색상 정보에 따라 변환한 결과 이미지를 생성하는 변환 모델을 나타낸다.
도 7을 참조하여, 도 5 및 도 6을 참조하여 전술한 텍스처 변환 이미지 및 색상 변환 이미지를 생성하는 방법과, 결과 이미지를 생성하는 방법을 더 자세하게 설명한다.
도 7에서 도시된 변환 모델은 전술한 변환 모델(250)을 나타낸 것일 수 있다. 이러한 변환 모델은 인공지능(AI) 기반의 모델로서, 예컨대, 딥러닝 기반의 모델을 포함할 수 있다. 변환 모델은 미리 학습(훈련)된 VGG 모델(예컨대, VGG19 네트워크)을 포함할 수 있다.
변환 모델은 공용 인코더(730)와, 텍스처 디코더(740) 및 색상 디코더(750)를 포함할 수 있다.
공용 인코더(730)는 입력 이미지(440)가 전처리된 데이터인 제1 변환 이미지(Isrc Lab)(710)를 인코딩할 수 있다. 공용 인코더(730)는 복수의 복수의 컨볼루션 레이어들 및 잔차블록들로 구성될 수 있다.
텍스처 디코더(740)는 공용 인코더(730)에 의한 인코딩 결과를 디코딩하여 텍스처 변환 이미지(770)를 생성할 수 있다. 즉, 텍스처 디코더(740)는 수신된 타겟 스타일에 대응하는 텍스처를 반영한 이미지를 생성할 수 있다. 생성되는 텍스처 변환 이미지(770)는 Lab 색 공간의 L 컴포넌트의 이미지일 수 있다. 또한, 텍스처 디코더(740)에 의해 생성되는 텍스처 변환 이미지(770)는 수신된 추상화 레벨이 나타내는 추상화 정도를 반영하고 있을 수 있다.
이를 위해, 변환 모듈(250)은 각각의 추상화 레벨이 나타내는 추상화 정도를 반영하는 출력 값을 생성하는 각 레이어를 포함하는 복수의 레이어들로 구성되는 추상화 정도 반영 모듈(760)을 포함할 수 있다. 추상화 정도 반영 모듈(760)은 텍스처 디코더(740)에 포함될 수 있다. 즉, 텍스처 디코더(740)는 추상화 정도 반영 모듈(760)과 다수의 컨볼루션 레이어들을 포함할 수 있다.
아래에서는, 도 11을 참조하여, 추상화 정도 반영 모듈(760)에 대해 더 자세하게 설명한다.
관련하여, 도 11은 일 예에 따른, 변환 모델에 포함된 추상화 정도 반영 모듈의 구조를 나타낸다.
도시된 추상화 정도 반영 모듈(1100)은 추상화 정도 반영 모듈(760)을 보다 상세하게 나타낸 것일 수 있다. 추상화 정도 반영 모듈(1100)은 도시된 것처럼 복수의 레이어들(또는 잔차블록들)과 게이팅 모듈(gating module)들을 포함할 수 있다. 각각의 레이어는 각각의 추상화 레벨이 나타내는 추상화 정도를 반영하는 출력 값을 생성하도록 구성될 수 있다. 추상화 정도 반영 모듈(1100)은 연속 추상화 반영 모듈(Continuous Abstraction Module; CAM)로 명명될 수도 있다.
변환 모듈(250)(변환 모듈(250)의 텍스처 디코더(740))는 사용자로부터 수신된 추상화 레벨에 해당하는 추상화 정도 반영 모듈(1100)의 레이어의 출력 값을 사용하여, 상기 수신된 추상화 레벨이 나타내는 추상화 정도를 반영하는 타겟 스타일에 대응하는 텍스처로 입력 이미지(440)를 변환하여 텍스처 변환 이미지(770)를 생성할 수 있다.
도시된 예시에서, 알파()는 수신된 추상화 레벨을 나타낼 수 있다. 추상화 정도 반영 모듈(1100)은 레이어들 중 수신된 추상화 레벨()에 해당하는 레이어의 출력 값을 텍스처 변환 이미지(770)를 생성하기 위해 사용할 수 있다.
일례로, 추상화 정도 반영 모듈(1100)은 수신된 추상화 레벨()에 따라 어떤 레이어(잔차블록)에서 생성된 특징맵을 사용할지를 결정할 수 있고, 결정된 특징맵들을 sum 연산을 통해 하나의 최종 특징맵으로 계산하여 텍스처 변환 이미지(770)를 생성하기 위해 사용할 수 있다.
이에 따라, 생성된 텍스처 변환 이미지(770)는 수신된 타겟 스타일의 텍스처 뿐만아니라 수신된 추상화 레벨이 나타내는 추상화 정도를 반영할 수 있다.
색상 디코더(750)는 잔차블록과 다수의 컨볼루션 레이어들로 구성될 수 있다. 색상 디코더(750)는 공용 인코더(730)에 의한 인코딩 결과를 디코딩하되 제2 변환 이미지()(720)를 추가 입력으로 사용하여 디코딩을 수행하여, 타겟 색상 정보에 대응하는 색상이 반영된 색상 변환 이미지(780)를 생성할 수 있다. 즉, 색상 디코더(750)는 수신된 타겟 색상 정보에 대응하는 색상(색감, 팔레트 등)를 반영한 이미지를 생성할 수 있다. 생성되는 색상 변환 이미지(780)는 Lab 색 공간의 ab 컴포넌트의 이미지일 수 있다.
텍스처 변환 이미지(770)와 색상 변환 이미지(780)가 합성됨으로써 결과 이미지(790)가 생성될 수 있다. 텍스처 변환 이미지(770)와 색상 변환 이미지(780)가 합성된 합성 이미지는 로 명명될 수 있다. 합성 이미지()는 Lab 색 공간의 이미지일 수 있고, 합성 이미지()는 RGB 색 공간의 이미지로 변환될 수 있다. 변환된 RGB 색 공간의 이미지가 결과 이미지(790)가 될 수 있고 결과 이미지는 으로 명명될 수 있다.
설명한 것처럼, 변환 모듈(250)은 텍스처 디코더(740)와 색상 디코더(750)를 사용하여, 텍스처 변환 이미지(770)와 색상 변환 이미지(780)를 구분하여 생성할 수 있고, 이들을 합성하는 것을 통해 결과 이미지(790)를 생성할 수 있다.
따라서, 최종적인 결과 이미지(790)는 사용자로부터 수신된 타겟 스타일, 타겟 색생 정보 및 추상화 정도를 반영할 수 있다.
이상 도 1 내지 도 6 및 도 13을 참조하여 전술된 기술적 특징에 대한 설명은, 도 7 및 도 11에 대해서도 그대로 적용될 수 있으므로 중복되는 설명은 생략한다.
아래에서는 도 8 내지 도 10을 참조하여, 전술한 변환 모델(250)을 학습시켜, 미리 학습된 변환 모델(250)을 구축하는 방법에 대해 더 자세하게 설명한다.
도 8은 일 예에 따른, 변환 모델을 학습시키는 방법을 나타낸다.
변환 모델(250)을 학습시키는 컴퓨터 시스템은, 전술한 컴퓨터 시스템(100)과는 별개의 장치 또는 서버일 수도 있다. 아래에서는, 설명의 편의상 컴퓨터 시스템(100)과 변환 모델(250)을 학습시키는 컴퓨터 시스템을 동일시하여 실시예들을 설명한다.
단계(810)에서, 컴퓨터 시스템(100)은, 타겟 스타일에 대응하는 텍스처를 포함하는 적어도 하나의 제1 이미지와 상기 타겟 스타일로의 변환 및 색상 변환의 대상이 되는 이미지인 적어도 하나의 제2 이미지를 데이터 증강한 학습용 데이터를 획득할 수 있다. 제1 이미지는 예컨대, 타겟 스타일이 나타내는 콘텐츠가 포함하는 이미지일 수 있다. 일례로, 콘텐츠가 웹툰인 경우 제1 이미지는 웹툰으로부터 추출된 이미지들로서, 컷들을 포함할 수 있다. 제2 이미지는 제1 이미지가 나타내는 텍스처로의 변환의 대상이 되는 이미지일 수 있다. 제2 이미지는 사진 또는 기타 화상을 포함할 수 있다.
이러한 제1 이미지 및 제2 이미지는 각각 복수의 이미지들을 포함할 수 있고, 변환 모델(250)을 학습시키기 위해 적합한 형태로 가공 및 증강될 수 있다. 상기 학습용 데이터는 변환 모델(250)을 학습시키기 위해 적합한 형태로 가공 및 증강된 데이터를 의미할 수 있다.
예컨대, 변환 모델(250)은, 소정의 타겟 스타일에 대응하는 텍스처를 포함하는 적어도 하나의 제1 이미지를 데이터 증강하여 생성된 제1 학습용 데이터와, 해당 타겟 스타일로의 변환 및 (임의의 타겟 색상 정보에 따른) 색상 변환의 대상이 되는 이미지인 적어도 하나의 제2 이미지를 데이터 증강하여 생성된 제2 학습용 데이터를 사용하여 학습될 수 있고, 전술한 미리 학습된 변환 모델(250)은 이러한 제1 학습용 데이터 및 제2 학습용 데이터를 사용하여 미리 학습된 것일 수 있다.
제1 이미지 및 제2 이미지를 데이터 증강하여 제1 학습용 데이터 및 제2 학습용 데이터를 생성하는 방법에 대해서는 후술될 도 9 및 도 10을 참조하여 더 자세하게 설명된다.
단계(820)에서, 컴퓨터 시스템(100)은, 획득된 학습용 데이터를 사용하여, 제2 이미지를 타겟 스타일에 대응하는 텍스처로 변환한 텍스처 변환 이미지 및 제2 이미지를 타겟 색상 정보에 대응하는 색상으로 변환한 색상 변환 이미지를 생성하도록, 변환 모델(250)을 학습시킬 수 있다. 생성된 텍스처 변환 이미지 및 색상 변환 이미지가 합성됨으로써 제2 이미지를 타겟 스타일 및 타겟 색상 정보에 따라 변환한 결과 이미지가 생성될 수 있다.
단계(820)에 따라 학습된 변환 모델(250)은, 타겟 스타일을 나타내는 레퍼런스 이미지의 입력 없이, 해당 타겟 스타일에 해당하는 텍스처와 (사용자에 의해 입력되는 임의의) 타겟 색상 정보에 해당하는 색상을 나타내도록 (사용자로부터 입력되는) 입력 이미지를 변환할 수 있다.
이상 도 1 내지 도 7, 도 11 및 도 13을 참조하여 전술된 기술적 특징에 대한 설명은, 도 8에 대해서도 그대로 적용될 수 있으므로 중복되는 설명은 생략한다.
도 9a 및 도 9b는 일 예에 따른, 변환 모델을 위한 학습 데이터를 획득하는 방법을 나타내는 흐름도이다.
한편, 도 10a 및 도 10b는 일 예에 따른, 변환 모델을 위한 학습 데이터를 획득하는 방법을 나타낸다. 도 10a에서는 도 9를 참조하여 설명하는 단계들이 도식화되었다.
전술한 것처럼, 변환 모델(250)은, 소정의 타겟 스타일에 대응하는 텍스처를 포함하는 적어도 하나의 제1 이미지를 데이터 증강하여 생성된 제1 학습용 데이터와, 해당 타겟 스타일로의 변환 및 (임의의 타겟 색상 정보에 따른) 색상 변환의 대상이 되는 이미지인 적어도 하나의 제2 이미지를 데이터 증강하여 생성된 제2 학습용 데이터를 사용하여 학습될 수 있다.
도 9a를 참조하여 제1 학습용 데이터를 생성하는 방법에 대해 더 자세하게 설명한다.
제1 학습용 데이터는, 변환 모델(250)이 입력되는 추상화 레벨이 나타내는 추상화 정도를 반영하는 결과 이미지를 생성하기 위한 학습용 이미지(들)를 포함해야 할 수 있다. 말하자면, 제1 학습용 데이터는 제1 이미지에 대한 소정의 정도의 추상화 처리(즉, 임의의 추상화 레벨이 나타나는 추상화 정도를 반영하는 처리)를 모사하는 학습용 이미지(들)를 포함할 수 있다. 이러한 제1 학습용 데이터는 제1 이미지에 대한 리사이징 처리 및/또는 해상도 변경 처리에 의해 생성될 수 있다. 말하자면, 제1 학습용 데이터는, 제1 이미지에 대한 소정의 정도의 추상화 처리를 모사하도록, 리사이징 처리 및 해상도 변경 처리 중 적어도 하나의 처리가 수행된 이미지를 포함할 수 있다.
이러한 제1 학습용 데이터의 생성을 위해, 단계(910)에서, 컴퓨터 시스템(100)은, 제1 이미지에 대해 리사이징 처리 및 해상도 변경 처리를 수행하여 제1 학습용 데이터를 생성할 수 있다. 컴퓨터 시스템(100)은 임의의 추상화 레벨을 고려하여 다양한 사이즈 및/또는 해상도를 고려하여 제1 이미지에 대해 리사이징 처리 및 해상도 변경 처리를 수행할 수 있고, 이에 따라, 복수의 이미지들을 포함하는 제1 학습용 데이터를 생성할 수 있다.
단계(920)에서, 컴퓨터 시스템(100)은, 생성된 제1 학습용 데이터를 Lab 색 공간의 이미지로 변환할 수 있다. 예컨대, 컴퓨터 시스템(100)은 제1 학습용 데이터를 Lab 색 공간의 L 컴포넌트의 이미지로 변환할 수 있다. 변환된 이미지는 최종적인 제1 학습용 데이터가 될 수 있다.
도 10a을 참조하여, 최종적인 제1 학습용 데이터를 생성하는 방법을 설명하면, 소정의 타겟 스타일에 대응하는 텍스처를 포함하는 적어도 하나의 제1 이미지는 Itgt RGB로 표현될 수 있다. 제1 이미지(Itgt RGB)(1060)는 사용자로부터 입력되는 임의의 추상화 레벨()이 나타내는 추상화 정도의 추상화 처리를 모사하도록 리사이징 및/또는 해상도 변경 처리가 수행될 수 있다. 리사이징 및/또는 해상도 변경 처리에 따라 생성된 이미지들은 RGB 색 공간의 이미지일 수 있고, 이러한 RGB 색 공간의 이미지는 Lab 색 공간의 L 컴포넌트의 이미지로 변환될 수 있다. 최종적으로 생성되는 제1 학습용 데이터는 Itgt L로 명명될 수 있다. 제1 학습용 데이터(Itgt L)는 도 7을 참조하여 전술된 변환 모델(250)로 입력될 수 있고, 변환 모델(250)을 타겟 스타일의 텍스처를 모방하도록 구현하기 위한 손실 함수의 계산을 위해 사용될 수 있다.
도 9b를 참조하여 제2 학습용 데이터를 생성하는 방법에 대해 더 자세하게 설명한다.
제2 학습용 데이터는, 제2 이미지를 임의의 색상으로 색상 변환한 학습용 변환 이미지를 포함할 수 있다. 제2 학습용 데이터는, 변환 모델(250)이 입력되는 타겟 색상 정보에 대응하는 색상을 반영하는 결과 이미지를 생성하기 위한 학습용 이미지(들)를 포함해야 할 수 있다. 말하자면, 제2 학습용 데이터는 제2 이미지에 대한 임의의 색상 변경(즉, 임의의 타겟 색상 정보에 대응하는 색상을 반영하는 처리)을 모사하는 학습용 변환 이미지(들)를 포함할 수 있다. 이러한 학습용 변환 이미지를 포함하는 제2 학습용 데이터는 후술될 변환 단계들(930 내지 980)에 의해 생성될 수 있다.
단계(930)에서, 컴퓨터 시스템(100)은, 제2 이미지 및 제2 이미지를 단순화 처리함으로써 생성되는 제2 이미지의 컬러맵 중 적어도 하나를 HSV 색 공간의 이미지로 변환할 수 있다. 단순화 처리는 이미지 단순화 처리는 예컨대, 슈퍼픽셀(supserpixel) 알고리즘에 기반하여 수행될 수 있다. 컴퓨터 시스템(100)은, 제2 이미지 및 제2 이미지의 컬러맵 둘 다를 HSV 색 공간의 이미지로 변환할 수 있다. HSV 색 공간은 색상(Hue), 채도(Saturation), 명도(Value)의 좌표를 써서 특정한 색을 지정하는 것으로 표현되는 색 공간일 수 있다.
단계(950)에서, 컴퓨터 시스템(100)은, 변환된 HSV 색 공간의 이미지를 임의의 색상으로 색상 변환할 수 있다. 여기서, "임의의 색상"은 사용자가 입력 가능한 임의의 타겟 색상 정보에 대응할 수 있다. 임의의 색상은 임의로 선택된 색상일 수 있다. 단계(950)에서의 색상 변환에 따라, 전술한 학습용 변환 이미지(들)가 생성될 수 있다.
단계(980)에서, 컴퓨터 시스템(100)은, 단계(950)에 따라 생성된 학습용 변환 이미지(들)를 RGB 색 공간의 이미지로 변환할 수 있다.
한편, 일 실시예에서는, 단계(950)에 따라 생성된 학습용 변환 이미지(들)의 밝기 정보(L)를 보정함으로써, 변환 모델(250)을 학습시키기 위해 보다 적합한 제2 학습용 데이터를 생성할 수 있다. 예컨대, 단계(940)에서, 컴퓨터 시스템(100)은, 추가로 제2 이미지 및 제2 이미지를 단순화 처리함으로써 생성되는 제2 이미지의 컬러맵 중 적어도 하나를 Lab 색 공간의 이미지로 더 변환할 수 있다. 컴퓨터 시스템(100)은, 제2 이미지 및 제2 이미지의 컬러맵 둘 다를 Lab 색 공간의 이미지로 변환할 수 있다. 단계(945)에서, 컴퓨터 시스템(100)은, 이러한 변환된 Lab 색 공간의 이미지의 L 정보(L 컴포넌트)를 추출할 수 있다. 이러한 추출된 L 정보는 예컨대, 단계(950)에 따라 생성된 색상 변환된 이미지의 L 정보를 보정하기 위해 사용될 수 있다. 이러한 L 정보의 추출은 L 정보의 캐싱으로도 명명될 수 있다. 말하자면, 단계(960)에서, 컴퓨터 시스템(100)은, 단계(950)에 따라 임의의 색상으로 색상 변환된 HSV 색 공간의 이미지를 Lab 색 공간의 이미지로 변환할 수 있다. 단계(970)에서, 컴퓨터 시스템(100)은, 단계(960)에 따라 변환된 Lab 색 공간의 이미지의 L 정보를 단계(945)에서 추출된 L 정보(즉, 캐싱된 L 정보)로 치환할 수 있다. 단계(980)에서, 컴퓨터 시스템(100)은, 단계(970)의 결과물인 Lab 색 공간의 이미지를 RGB 색 공간의 이미지로 변환할 수 있다. 이에 따라, 단계(950)에 따라 생성된 학습용 변환 이미지(들)는 L 정보가 보다 적절한 값으로 보정될 수 있다.
관련하여, 도 10b는 L 정보가 상기 단계들(940 내지 970)에 의해 보정된 경우와 그렇지 않은 경우에서의 이미지의 차이를 나타낸다. 예컨대, 도시된 (c)는 HSV 색 공간의 이미지를 나타내며, 도시된 (d)는 HSV 색 공간의 이미지로서 전술한 방법에 의해 L 정보가 보정된 경우를 나타낸다. (d)의 경우의 이미지가 보다 자연스러운 밝기를 가지는 것을 확인할 수 있다. 즉, 전술한 방법에 의해서는 밝기의 급격한 변화가 억제될 수 있고, HSV 색 공간으로의 이미지 변환 시 밝기 정보가 손실되는 문제가 해소될 수 있다. 따라서, L 정보가 보정된 경우의 학습용 변환 이미지가 변환 모델(250)의 훈련에 더 적합하게 될 수 있다.
따라서, 단계들(930 내지 980)에 의해서는 변환 모델(250)을 학습시키기 위해 적합한 제2 학습용 데이터가 획득될 수 있다.
도 10a을 참조하여, 최종적인 제2 학습용 데이터를 생성하는 방법을 설명하면, 타겟 스타일로의 변환 및 타겟 색상 정보로의 색상 변환의 대상이 되는 적어도 하나의 제2 이미지는 Isrc RGB로 표현될 수 있다. 제2 이미지(Isrc RGB)는 이미지 단순화 처리를 통해 컬러맵(Csrc RGB)으로 변환될 수 있다. 제2 이미지(Isrc RGB)와 컬러맵(Csrc RGB)은 HSV 변환 기반의 데이터 증강 프로세스(1030)에 따라 각각 학습용 변환 이미지(1040, 1050)로 변환될 수 있다. HSV 변환 기반의 데이터 증강 프로세스(1030)는 전술한 단계들(930 내지 980)에 의해 수행될 수 있다. 학습용 변환 이미지(1040)는 제2 이미지(Isrc RGB)를 임의의 색상 변경 처리를 통해 증강한 것일 수 있다. 학습용 변환 이미지(1050)는 컬러맵(Csrc RGB)을 임의의 색상 변경 처리를 통해 증강한 것일 수 있다. 학습용 변환 이미지(1040, 1050)는 RGB 색 공간의 이미지일 수 있다. 학습용 변환 이미지(1040)는 Lab 색 공간의 ab 컴포넌트의 이미지로 변환될 수 있다. 한편, 학습용 변환 이미지(1050)는 Lab 색 공간의 이미지로 변환될 수 있다. 최종적으로 생성되는 제2 학습용 데이터는 학습용 변환 이미지(1040)로부터 생성된 와 학습용 변환 이미지(1050)로부터 생성된 로 명명될 수 있다. 제2 학습용 데이터()는 도 7을 참조하여 전술된 변환 모델(250)로 입력될 수 있고, 변환 모델(250)의 색상 디코더(750)로 입력될 수 있다. 제2 학습용 데이터()는 변환 모델(250)로 입력될 수 있고, 변환 모델(250)을 타겟 색상 정보의 색상을 반영하는 결과 이미지를 생성하도록 구현하기 위한 손실 함수의 계산을 위해 사용될 수 있다.
한편, 제2 이미지(Isrc RGB) 자체도 변환 모델(250)을 위한 학습 데이터가 될 수 있다. 제2 이미지(Isrc RGB)는 Lab 색 공간의 이미지로 변환될 수 있고, 변환된 이미지(Isrc Lab)는 변환 모델(250)로 입력될 수 있다.
말하자면, 변환 모델(250)은, 제1 학습용 데이터를 Lab 색 공간의 L 컴포넌트의 이미지로 변환한 이미지(즉, 최종적인 제1 학습용 데이터)(Itgt L), 제2 이미지를 Lab 색 공간의 이미지로 변환한 이미지(Isrc Lab), 제2 이미지를 임의의 색상으로 색상 변환한 이미지를 Lab 색 공간의 ab 컴포넌트의 이미지로 변환한 이미지(), 및 제2 이미지의 컬러맵을 Lab 색 공간의 이미지로 변환한 이미지()를 사용하여 학습될 수 있다. 학습용 데이터 및 실시예들에서 설명하는 "이미지"는 이미지를 나타내는 데이터를 포괄하는 의미로 사용되었다.
이상 도 1 내지 도 8, 도 11 및 도 13을 참조하여 전술된 기술적 특징에 대한 설명은, 도 9 및 도 10에 대해서도 그대로 적용될 수 있으므로 중복되는 설명은 생략한다.
도 12는 일 예에 따른, 판별자 네트워크의 구조를 나타낸다.
판별자 네트워크(1200)는 변환 모델(250)에 포함된 판별자(discriminator)일 수 있다. 변환 모델(250)은 판별자 네트워크(1200)를 이용하는 적대적 학습을 통해 구현될 수 있다.
변환 모델(250)은 5개의 손실 함수를 사용하여 학습될 수 있다.
5개의 손실 함수는, Lcontent vgg, Ltexture vgg, Lcolor vgg, Ltexture adv, Lcolor adv로 각각 명명될 수 있다.
이 중, Ltexture adv, Lcolor adv 판별자 네트워크(1200)의 적대적 손실 함수를 나타낼 수 있다. 적대적 손실 함수는 전술한 텍스쳐 디코더(740)와 색상 디코더(750)에 대해 사용될 수 있다. 한편, Lcontent vgg, Ltexture vgg, Lcolor vgg는 입력 이미지 및/또는 타겟 이미지(타겟 스타일의 텍스처를 갖는 이미지)에 대한 비교가 이루어지는 손실 함수일 수 있다.
또한, Lcontent vgg, Ltexture vgg, Ltexture adv는 텍스처 변환과 관련된 손실 함수이고, Lcolor vgg, Lcolor adv는 색상 변환과 관련된 손실 함수일 수 있다.
텍스쳐 디코더(740)에서 생성된 결과물은 VGG 네트워크를 통과한 후, 이미지(예컨대, 전술한 제2 이미지)에 대한 복원 손실 함수가 계산될 수 있고, VGG 네트워크를 통과한 특징맵은 그램 행렬이 계산된 후, 타겟 스타일에 해당하는 이미지에 대응되는 그램 행렬과의 손실 함수가 계산될 수 있다.
색상 디코더(750)에서 생성된 결과물은 VGG 네트워크에 통과한 후, 색상 데이터 증강 과정을 거친 이미지()와의 손실 함수가 계산될 수 있다. 이러한 손실 함수를 통해 사용자에 의해 입력되는 다양한 타겟 색상 정보에 대응하는 색상을 반영하는 결과 이미지가 생성될 수 있다.
각 손실 함수에 대해, 아래에서 더 자세하게 설명한다.
먼저, 텍스처 디코더(740)의 손실 함수에 대해 설명한다.
Ltexture adv는 변환 모델(250)이 타겟 스타일에 대응하는 텍스처(예컨대, 카툰 도메인의 텍스처)를 모방하도록 하기 위한 적대적 손실을 나타낼 수 있고, 수학식 1과 같이 표현될 수 있다.
[수학식 1]
G는 텍스처 변환을 위한 네트워크(즉, 카툰화 네트워크)를 나타낼 수 있고, 주어진 추상화 인자(추상화 레벨) 로의 는 복수 추상화 판별 네트워크(multi-abstraction discriminator)일 수 있다.
Lcontent vgg은 텍스처 변환된 이미지(즉, 카툰화된 이미지)가 원본 이미지의 시맨틱 정보를 보존할 수 있도록 하기 위한 콘텐츠 손실(content loss)을 나타낼 수 있고, 이는 수학식 2와 같이 표현될 수 있다.
[수학식 2]
변환 모델(250)에는, 그램 행렬들을 계산하기 위해 미리 훈련된 VGG19 네트워크의 conv4_4 레이어가 사용될 수 있다.
또한, 텍스처 변환을 위한 네트워크(즉, 카툰화 네트워크)는 아래 수학식 3으로 표현되는 그램-기반의 손실(Gram-based loss)을 통해 높은 수준(high-level)의 텍스처 표면을 학습하도록 구성될 수 있다.
[수학식 3]
한편, 출력에 대해 공간 스무딩(spatial smoothness)을 부여하기 위한 최종적인 변형 손실(variation loss)는 아래 수학식 4와 같이 표현될 수 있다.
[수학식 4]
밸런싱 파라미터들 에 대해, 텍스처 디코더(740)의 최종적인 손실 함수는 수학식 5와 같이 표현될 수 있다.
[수학식 5]
다음으로, 색상 디코더(750)의 손실 함수에 대해 설명한다.
적대적 손실 및 지각 색상 손실(perceptual color loss)이 사용될 수 있다. 적대적 손실(Lcolor adv)은 텍스처 디코더(740)와 관련하여 설명한 것과 동일하되 컬러맵()이 조건 정보로서 주입되는 것에서만 차이가 있을 수 있다. 적대적 손실은 수학식 6과 같이 표현될 수 있다.
[수학식 6]
D는 색상 변환의 판별 네트워크(discriminator)일 수 있다. G는 색상 변환을 위한 네트워크를 나타낼 수 있다.
지각 손실(지각 색상 손실)은 플레인 VGG-기반 거리(plain VGG-based distance)이 될 수 있다. 생성된 이미지와 GT (Ground-Truth) 이미지는 ab 색 공간의 이미지이므로, VGG 네트워크로 입력되기 전에 다시 RGB 색 공간으로 변환되어야 할 수 있다. ab 채널의 이미지들은 원본 이미지로부터 추출된 밝기 이미지인 Isrc L와 결합될 수 있다. 색상 디코더(750)로부터의 출력은 로 명명될 수 있고, 이다. 지각 색상 손실(Lcolor vgg)은 수학식 7과 같이 계산될 수 있다.
[수학식 7]
색상 디코더(750)의 최종적인 손실 함수는 수학식 8와 같이 표현될 수 있다.
[수학식 8]
람다는 밸런싱 파라미터들을 나타낼 수 있다.
변환 모델(250)의 전체적인 프레임워크는 최종 손실을 사용하여 엔트-투-엔드 방식으로 학습될 수 있다. 전체 손실은 가 될 수 있다.
이상 도 1 내지 도 11 및 도 13을 참조하여 전술된 기술적 특징에 대한 설명은, 도 12에 대해서도 그대로 적용될 수 있으므로 중복되는 설명은 생략한다.
이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 어플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치에서 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 이때, 매체는 컴퓨터로 실행 가능한 프로그램을 계속 저장하거나, 실행 또는 다운로드를 위해 임시 저장하는 것일 수도 있다. 또한, 매체는 단일 또는 수개 하드웨어가 결합된 형태의 다양한 기록수단 또는 저장수단일 수 있는데, 어떤 컴퓨터 시스템에 직접 접속되는 매체에 한정되지 않고, 네트워크 상에 분산 존재하는 것일 수도 있다. 매체의 예시로는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM 및 DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical medium), 및 ROM, RAM, 플래시 메모리 등을 포함하여 프로그램 명령어가 저장되도록 구성된 것이 있을 수 있다. 또한, 다른 매체의 예시로, 애플리케이션을 유통하는 앱 스토어나 기타 다양한 소프트웨어를 공급 내지 유통하는 사이트, 서버 등에서 관리하는 기록매체 내지 저장매체도 들 수 있다.
이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.

Claims (19)

  1. 컴퓨터 시스템에 의해 수행되는, 이미지 변환 방법에 있어서,
    입력 이미지, 상기 입력 이미지가 변환될 타겟 스타일 및 상기 입력 이미지가 변환될 타겟 색상 정보를 수신하는 단계;
    미리 학습된 변환 모델을 사용하여, 상기 입력 이미지를 상기 타겟 스타일에 대응하는 텍스처로 변환한 텍스처 변환 이미지 및 상기 입력 이미지를 상기 타겟 색상 정보에 대응하는 색상으로 변환한 색상 변환 이미지를 생성하는 단계; 및
    상기 입력 이미지를 상기 타겟 스타일 및 상기 타겟 색상 정보에 따라 변환한 결과 이미지를 생성하기 위해, 상기 텍스처 변환 이미지 및 상기 색상 변환 이미지를 합성하는 단계
    를 포함하고,
    상기 생성하는 단계는,
    상기 텍스처 변환 이미지와 상기 색상 변환 이미지를 각각 생성하되,
    상기 변환 모델의 텍스처 디코더를 이용하여, 상기 입력 이미지에 기반하여 상기 타겟 스타일에 대응하는 텍스처가 반영된 상기 텍스처 변환 이미지를 생성하고,
    상기 변환 모델의 색상 디코더를 이용하여, 상기 입력 이미지에 기반하여 상기 타겟 색상에 대응하는 색상이 반영된 상기 색상 변환 이미지를 생성하는, 이미지 변환 방법.
  2. 제1항에 있어서,
    상기 변환 모델은,
    상기 타겟 스타일을 나타내는 레퍼런스 이미지의 입력 없이,
    상기 타겟 스타일에 해당하는 텍스처와 입력되는 타겟 색상 정보에 해당하는 색상을 나타내도록, 입력 이미지를 변환하기 위해 미리 학습된 것인, 이미지 변환 방법.
  3. 제1항에 있어서,
    상기 타겟 색상 정보는 상기 입력 이미지의 색상 분포에 기반하여 결정되는 서로 다른 복수의 색상들의 그룹을 포함하는 팔레트를 포함하는, 이미지 변환 방법.
  4. 제3항에 있어서,
    상기 복수의 색상들의 각각은 사용자에 의해 선택 가능하게 구성되는, 이미지 변환 방법.
  5. 제1항에 있어서,
    상기 타겟 스타일은 이미지 또는 동영상을 포함하는 콘텐츠를 나타내고,
    상기 타겟 스타일에 대응하는 텍스처는 상기 콘텐츠가 포함하는 이미지 또는 동영상의 텍스처인, 이미지 변환 방법.
  6. 제1항에 있어서,
    상기 수신하는 단계는,
    상기 결과 이미지가 나타낼 추상화 정도를 설정하기 위한 추상화 레벨을 수신하는 단계
    를 포함하고,
    상기 생성하는 단계는,
    상기 추상화 레벨이 나타내는 추상화 정도를 반영하는 상기 타겟 스타일에 대응하는 텍스처로 상기 입력 이미지를 변환하여 상기 텍스처 변환 이미지를 생성하는, 이미지 변환 방법.
  7. 컴퓨터 시스템에 의해 수행되는, 이미지 변환 방법에 있어서,
    입력 이미지, 상기 입력 이미지가 변환될 타겟 스타일 및 상기 입력 이미지가 변환될 타겟 색상 정보를 수신하는 단계;
    미리 학습된 변환 모델을 사용하여, 상기 입력 이미지를 상기 타겟 스타일에 대응하는 텍스처로 변환한 텍스처 변환 이미지 및 상기 입력 이미지를 상기 타겟 색상 정보에 대응하는 색상으로 변환한 색상 변환 이미지를 생성하는 단계; 및
    상기 입력 이미지를 상기 타겟 스타일 및 상기 타겟 색상 정보에 따라 변환한 결과 이미지를 생성하기 위해, 상기 텍스처 변환 이미지 및 상기 색상 변환 이미지를 합성하는 단계
    를 포함하고,
    상기 입력 이미지를 전처리하는 단계로서,
    상기 입력 이미지를 Lab 색 공간의 이미지인 제1 변환 이미지로 변환하는 단계;
    상기 입력 이미지를 단순화 처리함으로써 제1 컬러맵을 생성하는 단계;
    상기 제1 컬러맵의 색상을 상기 타겟 색상 정보에 기반하여 변환함으로써, 제2 컬러맵을 생성하는 단계; 및
    제2 컬러맵을 Lab 색 공간의 이미지인 제2 변환 이미지로 변환하는 단계
    를 더 포함하고,
    상기 제1 변환 이미지 및 상기 제2 변환 이미지는 상기 변환 모델로 입력되고,
    상기 생성하는 단계는,
    상기 변환 모델이, 상기 제1 변환 이미지에 기반하여 상기 텍스처 변환 이미지를 생성하고, 상기 제2 변환 이미지에 기반하여 상기 색상 변환 이미지를 생성하는, 이미지 변환 방법.
  8. 제7항에 있어서,
    상기 생성하는 단계는,
    상기 변환 모델이,
    인코더를 사용하여 상기 제1 변환 이미지를 인코딩하는 단계;
    인코딩된 상기 제1 변환 이미지를 텍스처 디코더를 사용하여 디코딩함으로써 상기 텍스처 변환 이미지를 생성하는 단계; 및
    색상 디코더를 사용하여, 상기 제2 변환 이미지에 기반하여, 인코딩된 상기 제1 변환 이미지를 디코딩함으로써 상기 색상 변환 이미지를 생성하는 단계
    를 포함하는, 이미지 변환 방법.
  9. 컴퓨터 시스템에 의해 수행되는, 이미지 변환 방법에 있어서,
    입력 이미지, 상기 입력 이미지가 변환될 타겟 스타일 및 상기 입력 이미지가 변환될 타겟 색상 정보를 수신하는 단계;
    미리 학습된 변환 모델을 사용하여, 상기 입력 이미지를 상기 타겟 스타일에 대응하는 텍스처로 변환한 텍스처 변환 이미지 및 상기 입력 이미지를 상기 타겟 색상 정보에 대응하는 색상으로 변환한 색상 변환 이미지를 생성하는 단계; 및
    상기 입력 이미지를 상기 타겟 스타일 및 상기 타겟 색상 정보에 따라 변환한 결과 이미지를 생성하기 위해, 상기 텍스처 변환 이미지 및 상기 색상 변환 이미지를 합성하는 단계
    를 포함하고,
    상기 텍스처 변환 이미지는 Lab 색 공간의 이미지로서 L 컴포넌트의 이미지이고,
    상기 색상 변환 이미지는 Lab 색 공간의 이미지로서 ab 컴포넌트의 이미지이고,
    상기 합성하는 단계는,
    상기 L 컴포넌트의 이미지와 상기 ab 컴포넌트의 이미지를 합성함으로써 합성 이미지를 생성하는 단계; 및
    상기 합성 이미지를 RGB 색 공간의 이미지로 변환하는 단계
    를 포함하는, 이미지 변환 방법.
  10. 제6항에 있어서,
    상기 변환 모델은
    각각의 추상화 레벨이 나타내는 추상화 정도를 반영하는 출력 값을 생성하는 각 레이어를 포함하는 복수의 레이어들로 구성되는 추상화 정도 반영 모듈을 포함하고,
    상기 생성하는 단계는,
    상기 수신된 추상화 레벨에 해당하는 상기 추상화 정도 반영 모듈의 레이어의 출력 값을 사용하여, 상기 수신된 추상화 레벨이 나타내는 추상화 정도를 반영하는 상기 타겟 스타일에 대응하는 텍스처로 상기 입력 이미지를 변환하여 상기 텍스처 변환 이미지를 생성하는, 이미지 변환 방법.
  11. 제1항에 있어서,
    상기 변환 모델은,
    상기 타겟 스타일에 대응하는 텍스처를 포함하는 적어도 하나의 제1 이미지를 데이터 증강하여 생성된 제1 학습용 데이터; 및
    상기 타겟 스타일로의 변환 및 색상 변환의 대상이 되는 이미지인 적어도 하나의 제2 이미지를 데이터 증강하여 생성된 제2 학습용 데이터
    를 사용하여 미리 학습된 것인, 이미지 변환 방법.
  12. 제11항에 있어서,
    상기 제1 학습용 데이터는,
    상기 제1 이미지에 대한 소정의 정도의 추상화 처리를 모사하도록, 리사이징 처리 및 해상도 변경 처리 중 적어도 하나의 처리가 수행된 이미지를 포함하는, 이미지 변환 방법.
  13. 제11항에 있어서,
    상기 제2 학습용 데이터는,
    제2 이미지를 임의의 색상으로 색상 변환한 학습용 변환 이미지를 포함하는, 이미지 변환 방법.
  14. 제13항에 있어서,
    상기 학습용 변환 이미지는 변환 단계들에 의해 생성되고,
    상기 변환 단계들은,
    상기 제2 이미지 및 상기 제2 이미지를 단순화 처리함으로써 생성된 상기 제2 이미지의 컬러맵 중 적어도 하나를 HSV 색 공간의 이미지로 변환하는 단계; 및
    상기 HSV 색 공간의 이미지를 임의의 색상으로 색상 변환하는 단계
    를 포함하는, 이미지 변환 방법.
  15. 컴퓨터 시스템에 의해 수행되는, 이미지 변환 방법에 있어서,
    입력 이미지, 상기 입력 이미지가 변환될 타겟 스타일 및 상기 입력 이미지가 변환될 타겟 색상 정보를 수신하는 단계;
    미리 학습된 변환 모델을 사용하여, 상기 입력 이미지를 상기 타겟 스타일에 대응하는 텍스처로 변환한 텍스처 변환 이미지 및 상기 입력 이미지를 상기 타겟 색상 정보에 대응하는 색상으로 변환한 색상 변환 이미지를 생성하는 단계; 및
    상기 입력 이미지를 상기 타겟 스타일 및 상기 타겟 색상 정보에 따라 변환한 결과 이미지를 생성하기 위해, 상기 텍스처 변환 이미지 및 상기 색상 변환 이미지를 합성하는 단계
    를 포함하고,
    상기 변환 모델은,
    상기 타겟 스타일에 대응하는 텍스처를 포함하는 적어도 하나의 제1 이미지를 데이터 증강하여 생성된 제1 학습용 데이터; 및
    상기 타겟 스타일로의 변환 및 색상 변환의 대상이 되는 이미지인 적어도 하나의 제2 이미지를 데이터 증강하여 생성된 제2 학습용 데이터
    를 사용하여 미리 학습된 것이고,
    상기 제2 학습용 데이터는,
    제2 이미지를 임의의 색상으로 색상 변환한 학습용 변환 이미지를 포함하고,
    상기 학습용 변환 이미지는 변환 단계들에 의해 생성되고,
    상기 변환 단계들은,
    상기 제2 이미지 및 상기 제2 이미지를 단순화 처리함으로써 생성된 상기 제2 이미지의 컬러맵 중 적어도 하나를 HSV 색 공간의 이미지로 변환하는 단계; 및
    상기 HSV 색 공간의 이미지를 임의의 색상으로 색상 변환하는 단계
    를 포함하고,
    상기 변환 단계들은,
    상기 제2 이미지 및 상기 제2 이미지의 컬러맵 중 적어도 하나를 Lab 색 공간의 이미지로 변환하는 단계;
    상기 Lab 색 공간의 이미지의 L 정보를 추출하는 단계;
    임의의 색상으로 색상 변환된 상기 HSV 색 공간의 이미지를 Lab 색 공간의 이미지로 변환하는 단계; 및
    상기 변환된 Lab 색 공간의 이미지의 L 정보를 상기 추출된 L 정보로 치환하는 단계
    를 포함하는, 이미지 변환 방법.
  16. 컴퓨터 시스템에 의해 수행되는, 이미지 변환 방법에 있어서,
    입력 이미지, 상기 입력 이미지가 변환될 타겟 스타일 및 상기 입력 이미지가 변환될 타겟 색상 정보를 수신하는 단계;
    미리 학습된 변환 모델을 사용하여, 상기 입력 이미지를 상기 타겟 스타일에 대응하는 텍스처로 변환한 텍스처 변환 이미지 및 상기 입력 이미지를 상기 타겟 색상 정보에 대응하는 색상으로 변환한 색상 변환 이미지를 생성하는 단계; 및
    상기 입력 이미지를 상기 타겟 스타일 및 상기 타겟 색상 정보에 따라 변환한 결과 이미지를 생성하기 위해, 상기 텍스처 변환 이미지 및 상기 색상 변환 이미지를 합성하는 단계
    를 포함하고,
    상기 변환 모델은,
    상기 타겟 스타일에 대응하는 텍스처를 포함하는 적어도 하나의 제1 이미지를 데이터 증강하여 생성된 제1 학습용 데이터; 및
    상기 타겟 스타일로의 변환 및 색상 변환의 대상이 되는 이미지인 적어도 하나의 제2 이미지를 데이터 증강하여 생성된 제2 학습용 데이터
    를 사용하여 미리 학습된 것이고,
    상기 제2 학습용 데이터는,
    제2 이미지를 임의의 색상으로 색상 변환한 학습용 변환 이미지를 포함하고,
    상기 변환 모델은,
    상기 제1 학습용 데이터를 Lab 색 공간의 L 컴포넌트의 이미지로 변환한 이미지,
    상기 제2 이미지를 Lab 색 공간의 이미지로 변환한 이미지,
    상기 제2 이미지를 임의의 색상으로 색상 변환한 이미지를 Lab 색 공간의 ab 컴포넌트의 이미지로 변환한 이미지, 및
    상기 제2 이미지의 컬러맵을 Lab 색 공간의 이미지로 변환한 이미지
    를 사용하여 미리 학습된 것인, 이미지 변환 방법.
  17. 컴퓨터 판독 가능 기록매체에 기록된, 컴퓨터 시스템에서 실행되는 이미지 변환 방법을 구현하는 프로그램으로서,
    상기 이미지 변환 방법은,
    입력 이미지, 상기 입력 이미지가 변환될 타겟 스타일 및 상기 입력 이미지가 변환될 타겟 색상 정보를 수신하는 단계;
    미리 학습된 변환 모델을 사용하여, 상기 입력 이미지를 상기 타겟 스타일에 대응하는 텍스처로 변환한 텍스처 변환 이미지 및 상기 입력 이미지를 상기 타겟 색상 정보에 대응하는 색상으로 변환한 색상 변환 이미지를 생성하는 단계; 및
    상기 입력 이미지를 상기 타겟 스타일 및 상기 타겟 색상 정보에 따라 변환한 결과 이미지를 생성하기 위해, 상기 텍스처 변환 이미지 및 상기 색상 변환 이미지를 합성하는 단계
    를 포함하고,
    상기 생성하는 단계는,
    상기 텍스처 변환 이미지와 상기 색상 변환 이미지를 각각 생성하되,
    상기 변환 모델의 텍스처 디코더를 이용하여, 상기 입력 이미지에 기반하여 상기 타겟 스타일에 대응하는 텍스처가 반영된 상기 텍스처 변환 이미지를 생성하고,
    상기 변환 모델의 색상 디코더를 이용하여, 상기 입력 이미지에 기반하여 상기 타겟 색상에 대응하는 색상이 반영된 상기 색상 변환 이미지를 생성하는,
    컴퓨터 판독 가능 기록매체에 기록된 프로그램.
  18. 이미지 변환 방법을 수행하는 컴퓨터 시스템에 있어서,
    상기 컴퓨터 시스템에서 판독 가능한 명령을 실행하도록 구현되는 적어도 하나의 프로세서
    를 포함하고,
    상기 적어도 하나의 프로세서는,
    입력 이미지, 상기 입력 이미지가 변환될 타겟 스타일 및 상기 입력 이미지가 변환될 타겟 색상 정보를 수신하고,
    미리 학습된 변환 모델을 사용하여, 상기 입력 이미지를 상기 타겟 스타일에 대응하는 텍스처로 변환한 텍스처 변환 이미지 및 상기 입력 이미지를 상기 타겟 색상 정보에 대응하는 색상으로 변환한 색상 변환 이미지를 생성하고,
    상기 입력 이미지를 상기 타겟 스타일 및 상기 타겟 색상 정보에 따라 변환한 결과 이미지를 생성하기 위해, 상기 텍스처 변환 이미지 및 상기 색상 변환 이미지를 합성하고,
    상기 적어도 하나의 프로세서는,
    상기 텍스처 변환 이미지와 상기 색상 변환 이미지를 각각 생성하되,
    상기 변환 모델의 텍스처 디코더를 이용하여, 상기 입력 이미지에 기반하여 상기 타겟 스타일에 대응하는 텍스처가 반영된 상기 텍스처 변환 이미지를 생성하고,
    상기 변환 모델의 색상 디코더를 이용하여, 상기 입력 이미지에 기반하여 상기 타겟 색상에 대응하는 색상이 반영된 상기 색상 변환 이미지를 생성하는, 컴퓨터 시스템.
  19. 컴퓨터 시스템에 의해 수행되는, 이미지를 변환하는 변환 모델을 학습시키는 방법에 있어서,
    타겟 스타일에 대응하는 텍스처를 포함하는 적어도 하나의 제1 이미지와 상기 타겟 스타일로의 변환 및 색상 변환의 대상이 되는 이미지인 적어도 하나의 제2 이미지를 데이터 증강한 학습용 데이터를 획득하는 단계; 및
    상기 학습용 데이터를 사용하여, 상기 제2 이미지를 상기 타겟 스타일에 대응하는 텍스처로 변환한 텍스처 변환 이미지 및 상기 제2 이미지를 타겟 색상 정보에 대응하는 색상으로 변환한 색상 변환 이미지를 생성하도록, 상기 변환 모델을 학습시키는 단계
    를 포함하고,
    상기 텍스처 변환 이미지 및 상기 색상 변환 이미지가 합성됨으로써 상기 제2 이미지를 상기 타겟 스타일 및 상기 타겟 색상 정보에 따라 변환한 결과 이미지가 생성되고,
    상기 학습된 변환 모델은, 상기 타겟 스타일을 나타내는 레퍼런스 이미지의 입력 없이, 상기 타겟 스타일에 해당하는 텍스처와 입력되는 타겟 색상 정보에 해당하는 색상을 나타내도록 입력 이미지를 변환하고,
    상기 학습된 변환 모델은, 상기 입력 이미지에 대한 텍스처 변환 이미지와 상기 입력 이미지에 대한 색상 변환 이미지를 각각 생성하되,
    상기 변환 모델의 텍스처 디코더를 이용하여, 상기 입력 이미지에 기반하여 상기 타겟 스타일에 대응하는 텍스처가 반영된 상기 입력 이미지에 대한 텍스처 변환 이미지를 생성하고,
    상기 변환 모델의 색상 디코더를 이용하여, 상기 입력 이미지에 기반하여 상기 입력 이미지에 대한 타겟 색상에 대응하는 색상이 반영된 상기 색상 변환 이미지를 생성하는, 이미지 변환 방법.
KR1020220120505A 2022-09-23 2022-09-23 타겟 스타일 및 타겟 색상 정보에 기반하여, 입력 이미지를 변환하는 방법 및 장치 KR102656674B1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020220120505A KR102656674B1 (ko) 2022-09-23 2022-09-23 타겟 스타일 및 타겟 색상 정보에 기반하여, 입력 이미지를 변환하는 방법 및 장치
JP2023151928A JP2024046749A (ja) 2022-09-23 2023-09-20 ターゲットスタイルおよびターゲットカラー情報に基づいて入力イメージを変換する方法および装置
US18/471,434 US20240112377A1 (en) 2022-09-23 2023-09-21 Method and apparatus for transforming input image based on target style and target color information

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220120505A KR102656674B1 (ko) 2022-09-23 2022-09-23 타겟 스타일 및 타겟 색상 정보에 기반하여, 입력 이미지를 변환하는 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20240041473A KR20240041473A (ko) 2024-04-01
KR102656674B1 true KR102656674B1 (ko) 2024-04-11

Family

ID=90471069

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220120505A KR102656674B1 (ko) 2022-09-23 2022-09-23 타겟 스타일 및 타겟 색상 정보에 기반하여, 입력 이미지를 변환하는 방법 및 장치

Country Status (3)

Country Link
US (1) US20240112377A1 (ko)
JP (1) JP2024046749A (ko)
KR (1) KR102656674B1 (ko)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180357800A1 (en) * 2017-06-09 2018-12-13 Adobe Systems Incorporated Multimodal style-transfer network for applying style features from multi-resolution style exemplars to input images

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101711370B1 (ko) * 2012-10-29 2017-03-02 삼성전자주식회사 영상 처리 방법 및 장치
KR20200071031A (ko) * 2018-12-07 2020-06-18 주식회사 브이알애드 인공신경망 기반의 작가 스타일에 따른 영상 변형 시스템 및 방법
KR20210028401A (ko) * 2019-09-04 2021-03-12 주식회사 엔씨소프트 스타일 변환 장치 및 스타일 변환 방법

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180357800A1 (en) * 2017-06-09 2018-12-13 Adobe Systems Incorporated Multimodal style-transfer network for applying style features from multi-resolution style exemplars to input images

Also Published As

Publication number Publication date
US20240112377A1 (en) 2024-04-04
JP2024046749A (ja) 2024-04-04
KR20240041473A (ko) 2024-04-01

Similar Documents

Publication Publication Date Title
US10896535B2 (en) Real-time avatars using dynamic textures
US10657652B2 (en) Image matting using deep learning
US11915133B2 (en) Techniques for smooth region merging in image editing
US10867416B2 (en) Harmonizing composite images using deep learning
US10489970B2 (en) 2D image processing for extrusion into 3D objects
CN113994384A (zh) 使用机器学习的图像着色
US10204447B2 (en) 2D image processing for extrusion into 3D objects
CN106447756B (zh) 用于生成用户定制的计算机生成动画的方法和系统
Wu et al. Palettenerf: Palette-based color editing for nerfs
CN112102422B (zh) 图像处理方法及装置
KR102656674B1 (ko) 타겟 스타일 및 타겟 색상 정보에 기반하여, 입력 이미지를 변환하는 방법 및 장치
Tous Pictonaut: movie cartoonization using 3D human pose estimation and GANs
KR102594008B1 (ko) 스크린-톤 룩 생성기
CN115496843A (zh) 一种基于gan的局部写实感漫画风格迁移系统及方法
Argudo et al. Image‐Based Tree Variations
US20240104312A1 (en) Photorealistic Text Inpainting for Augmented Reality Using Generative Models
KR102559410B1 (ko) 심층 학습에 기반하여 시네마그래프를 생성하는 방법
WO2024130704A1 (zh) 基于神经网络的文本抠图方法、装置、设备以及存储介质
US20240005574A1 (en) Applying object-aware style transfer to digital images
US20240193724A1 (en) Parametric composite image harmonization
US20240127457A1 (en) Layout-aware background generating system and method
US20240143835A1 (en) Anonymizing digital images utilizing a generative adversarial neural network
Liu A review for tone-mapping operators on wide dynamic range image
Ma et al. Intelligent Figure Replacement Platform Based on Deep Learning
KR20230163907A (ko) 이미지를 캐릭터 이미지로 카툰화시키는 변환 모델의 구축 방법 및 시스템과, 변환 모델을 사용하는 이미지 변환 방법