KR20210088656A - 이미지 생성 및 신경망 트레이닝 방법, 장치, 기기 및 매체 - Google Patents

이미지 생성 및 신경망 트레이닝 방법, 장치, 기기 및 매체 Download PDF

Info

Publication number
KR20210088656A
KR20210088656A KR1020217017354A KR20217017354A KR20210088656A KR 20210088656 A KR20210088656 A KR 20210088656A KR 1020217017354 A KR1020217017354 A KR 1020217017354A KR 20217017354 A KR20217017354 A KR 20217017354A KR 20210088656 A KR20210088656 A KR 20210088656A
Authority
KR
South Korea
Prior art keywords
network unit
unit block
layer
feature
content
Prior art date
Application number
KR1020217017354A
Other languages
English (en)
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 센스타임 그룹 리미티드
Publication of KR20210088656A publication Critical patent/KR20210088656A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06K9/6217
    • G06K9/6256
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • G06N3/0454
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Physics & Mathematics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • General Engineering & Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Molecular Biology (AREA)
  • Computational Linguistics (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Image Analysis (AREA)
  • Image Processing (AREA)

Abstract

이미지 생성 방법 및 신경망 트레이닝 방법, 장치, 전자 기기, 컴퓨터 저장 매체로서, 상기 이미지 생성 방법은, 제1 신경망에서 순차적으로 연결된 다층 제1 네트워크 유닛 블록을 이용하여 콘텐츠 이미지의 콘텐츠 특징을 추출하여, 각 층의 제1 네트워크 유닛 블록이 출력한 콘텐츠 특징을 얻는 단계(101); 스타일 이미지의 스타일 특징을 추출하는 단계(102); 및 각 층의 제1 네트워크 유닛 블록이 각각 출력한 콘텐츠 특징을 제2 신경망에서 순차적으로 연결된 다층 제2 네트워크 유닛 블록에 대응되게 피드포워드 입력하고, 스타일 특징을 다층 제2 네트워크 유닛 블록 중의 첫 번째 층 제2 네트워크 유닛 블록으로부터 피드포워드 입력하며, 각 제2 네트워크 유닛 블록이 각자에 입력된 특징을 처리한 후 제2 신경망이 출력한 생성 이미지를 얻는 단계(103)를 포함하고, 다층 제1 네트워크 유닛 블록과 상기 다층 제2 네트워크 유닛 블록은 대응된다.

Description

이미지 생성 및 신경망 트레이닝 방법, 장치, 기기 및 매체
관련 출원의 상호 참조
본원 발명은 출원번호가 201910551145.3이고 출원일이 2019년 6월 24일인 중국 특허 출원에 기반하여 제출하였고 상기 중국 특허 출원의 우선권을 주장하는 바, 상기 중국 특허 출원의 모든 내용은 본원 발명에 원용된다.
본 발명은 이미지 처리 분야에 관한 것으로서, 특히는 이미지 생성 방법 및 신경망 트레이닝 방법, 장치, 전자 기기 및 컴퓨터 저장 매체에 관한 것이다.
이미지 생성 방법은 현실적 픽처로 다른 한 픽처를 생성하고, 그 다음 사람의 시각 주관적 평가를 통해 생성된 픽처가 진실한 지의 여부를 판단하는 것이다. 신경망의 응용에 따라, 관련 기술에서 신경망에 기반한 이미지 생성 방법이 나타났고, 통상적으로 데이터 트레이닝 신경망에 기반하며, 다시 트레이닝된 신경망을 통해 콘텐츠 이미지에 대해 스타일 전환을 진행하는 바, 여기서, 쌍 형성된 데이터는 동일한 콘텐츠 특징을 구비하는 콘텐츠 이미지 및 스타일 이미지를 트레이닝하기 위한 것으로, 스타일 이미지와 콘텐츠 이미지의 스타일 특징은 상이하다. 그러나, 실제 시나리오에서, 상기 쌍 형성된 데이터 보편적이지 않아 이러한 방법으로 구현하기 불편하다.
본 발명의 실시예는 이미지 생성의 기술적 해결수단을 제공하고자 한다.
제1 양태에 따르면, 본 발명의 실시예는 이미지 생성 방법을 제공하는 바, 상기 방법은, 제1 신경망에서 순차적으로 연결된 다층 제1 네트워크 유닛 블록을 이용하여 콘텐츠 이미지의 콘텐츠 특징을 추출하여, 각 층의 제1 네트워크 유닛 블록이 각각 출력한 콘텐츠 특징을 얻는 단계; 스타일 이미지의 스타일 특징을 추출하는 단계; 상기 각 층의 제1 네트워크 유닛 블록이 각각 출력한 콘텐츠 특징을 제2 신경망에서 순차적으로 연결된 다층 제2 네트워크 유닛 블록에 대응되게 피드포워드 입력하고, 상기 스타일 특징을 상기 다층 제2 네트워크 유닛 블록 중의 첫 번째 층 제2 네트워크 유닛 블록으로부터 피드포워드 입력하며, 각 상기 제2 네트워크 유닛 블록이 각자에 입력된 특징을 처리한 후 상기 제2 신경망이 출력한 생성 이미지를 얻는 단계를 포함하고, 여기서, 상기 다층 제1 네트워크 유닛 블록과 상기 다층 제2 네트워크 유닛 블록은 대응된다.
제2 양태에 따르면, 본 발명의 실시예는 신경망 트레이닝 방법을 더 제공하는 바, 상기 방법은, 제1 신경망에서 순차적으로 연결된 다층 제1 네트워크 유닛 블록을 이용하여 콘텐츠 이미지의 콘텐츠 특징을 추출하여, 각 층의 제1 네트워크 유닛 블록이 각각 출력한 콘텐츠 특징을 얻는 단계; 스타일 이미지의 스타일 특징을 추출하는 단계; 상기 각 층의 제1 네트워크 유닛 블록이 각각 출력한 콘텐츠 특징을 제2 신경망에서 순차적으로 연결된 다층 제2 네트워크 유닛 블록에 대응되게 피드포워드 입력하고, 상기 스타일 특징을 상기 다층 제2 네트워크 유닛 블록 중의 첫 번째 층 제2 네트워크 유닛 블록으로부터 피드포워드 입력하며, 각 상기 제2 네트워크 유닛 블록이 각자에 입력된 특징을 처리한 후 상기 제2 신경망이 출력한 생성 이미지를 얻는 단계 - 상기 다층 제1 네트워크 유닛 블록과 상기 다층 제2 네트워크 유닛 블록은 대응됨 - ; 상기 생성 이미지를 감별하여, 감별 결과를 얻는 단계; 및 상기 콘텐츠 이미지, 상기 스타일 이미지, 상기 생성 이미지 및 상기 감별 결과에 따라, 상기 제1 신경망 및 상기 제2 신경망 중 적어도 하나의 네트워크 파라미터를 조절하는 단계를 더 포함한다.
제3 양태에 따르면, 본 발명의 실시예는 이미지 생성 장치를 더 제공하는 바, 상기 장치는 제1 추출 모듈, 제2 추출 모듈 및 제1 처리 모듈을 포함하고, 여기서, 제1 추출 모듈은, 제1 신경망에서 순차적으로 연결된 다층 제1 네트워크 유닛 블록을 이용하여 콘텐츠 이미지의 콘텐츠 특징을 추출하여, 각 층의 제1 네트워크 유닛 블록이 각각 출력한 콘텐츠 특징을 얻고; 제2 추출 모듈은 스타일 이미지의 스타일 특징을 추출하며; 제1 처리 모듈은, 상기 각 층의 제1 네트워크 유닛 블록이 각각 출력한 콘텐츠 특징을 제2 신경망에서 순차적으로 연결된 다층 제2 네트워크 유닛 블록에 대응되게 피드포워드 입력하고, 상기 스타일 특징을 상기 다층 제2 네트워크 유닛 블록 중의 첫 번째 층 제2 네트워크 유닛 블록으로부터 피드포워드 입력하며, 각 상기 제2 네트워크 유닛 블록이 각자에 입력된 특징을 처리한 후 상기 제2 신경망이 출력한 생성 이미지를 얻고, 여기서, 상기 다층 제1 네트워크 유닛 블록과 상기 다층 제2 네트워크 유닛 블록은 대응된다.
제4 양태에 따르면, 본 발명의 실시예는 신경망 트레이닝 장치를 더 제공하는 바, 상기 장치는 제3 추출 모듈, 제4 추출 모듈, 제2 처리 모듈 및 조절 모듈을 포함하고; 여기서, 제3 추출 모듈은, 제1 신경망에서 순차적으로 연결된 다층 제1 네트워크 유닛 블록을 이용하여 콘텐츠 이미지의 콘텐츠 특징을 추출하여, 각 층의 제1 네트워크 유닛 블록이 각각 출력한 콘텐츠 특징을 얻고; 제4 추출 모듈은, 스타일 이미지의 스타일 특징을 추출하며; 제2 처리 모듈은, 상기 각 층의 제1 네트워크 유닛 블록이 각각 출력한 콘텐츠 특징을 제2 신경망에서 순차적으로 연결된 다층 제2 네트워크 유닛 블록에 대응되게 피드포워드 입력하고, 상기 스타일 특징을 상기 다층 제2 네트워크 유닛 블록 중의 첫 번째 층 제2 네트워크 유닛 블록으로부터 피드포워드 입력하며, 각 상기 제2 네트워크 유닛 블록이 각자에 입력된 특징을 처리한 후 상기 제2 신경망이 출력한 생성 이미지를 얻고; 상기 생성 이미지를 감별하여, 감별 결과를 얻으며; 여기서, 상기 다층 제1 네트워크 유닛 블록과 상기 다층 제2 네트워크 유닛 블록은 대응되고; 조절 모듈은, 상기 콘텐츠 이미지, 상기 스타일 이미지, 상기 생성 이미지 및 상기 감별 결과에 따라, 상기 제1 신경망 및 상기 제2 신경망 중 적어도 하나의 네트워크 파라미터를 조절한다.
제5 양태에 따르면, 본 발명의 실시예는 프로세서 및 프로세서에서 실행 가능한 컴퓨터 프로그램을 저장하는 메모리를 포함하는 전자 기기를 더 제공하는 바, 여기서, 상기 프로세서가 상기 컴퓨터 프로그램을 실행할 경우, 상기 임의의 한 가지 이미지 생성 방법 또는 상기 임의의 한 가지 신경망 트레이닝 방법을 수행한다.
제6 양태에 따르면, 본 발명의 실시예는 컴퓨터 프로그램이 저장되는 컴퓨터 저장 매체를 더 제공하는 바, 상기 컴퓨터 프로그램이 프로세서에 의해 수행될 경우 상기 임의의 한 가지 이미지 생성 방법 또는 상기 임의의 한 가지 신경망 트레이닝 방법을 수행한다.
본 발명의 실시예에서 제기한 이미지 생성 방법 및 신경망 트레이닝 방법, 장치, 전자 기기, 컴퓨터 저장 매체에서, 제1 신경망에서 순차적으로 연결된 다층 제1 네트워크 유닛 블록을 이용하여 콘텐츠 이미지의 콘텐츠 특징을 추출하여, 각 층의 제1 네트워크 유닛 블록이 각각 출력한 콘텐츠 특징을 얻고; 스타일 이미지의 스타일 특징을 추출하며; 상기 각 층의 제1 네트워크 유닛 블록이 각각 출력한 콘텐츠 특징을 제2 신경망에서 순차적으로 연결된 다층 제2 네트워크 유닛 블록에 대응되게 피드포워드 입력하고, 상기 스타일 특징을 상기 다층 제2 네트워크 유닛 블록 중의 첫 번째 층 제2 네트워크 유닛 블록으로부터 피드포워드 입력하며, 각 상기 제2 네트워크 유닛 블록이 각자에 입력된 특징을 처리한 후 상기 제2 신경망이 출력한 생성 이미지를 얻고, 여기서, 상기 다층 제1 네트워크 유닛 블록과 상기 다층 제2 네트워크 유닛 블록은 대응된다. 본 발명의 실시예에서, 콘텐츠 이미지 및 스타일 이미지는 모두 실제 수요에 따라 결정될 수 있고, 콘텐츠 이미지 및 스타일 이미지는 쌍 형성된 이미지일 필요가 없으며, 이로써 간편하게 구현되고; 이 밖에, 이미지 생성 과정에서, 제1 신경망의 각 층의 제1 네트워크 유닛 블록을 이용하여 콘텐츠 이미지의 콘텐츠 특징을 여러 차례 추출하여, 콘텐츠 이미지의 더 많은 시멘틱 정보를 보류함으로써, 생성 이미지를 콘텐츠 이미지와 비교하면, 비교적 많은 시멘틱 정보를 보류하였기에, 생성 이미지는 더욱 진실하다.
상기의 일반적인 서술 및 아래의 세부적인 서술은 단지 예시적 및 해석적인 것으로서 본 발명을 한정하는 것이 아님을 반드시 이해해야 한다.
여기의 도면은 명세서에 병입되어 본 명세서의 일 부분을 구성하며, 이러한 도면은 본 발명에 부합되는 실시예를 도시하였으며, 명세서와 함께 본 발명의 기술적 해결수단을 설명한다.
도 1은 본 발명의 실시예에 따른 이미지 생성 방법의 흐름도이다.
도 2는 본 발명의 실시예의 미리 트레이닝된 신경망의 구조 모식도이다.
도 3은 본 발명의 실시예에 따른 콘텐츠 인코더의 하나의 예시적인 구조 모식도이다.
도 4는 본 발명의 실시예에 따른 CRB의 하나의 예시적인 구조 모식도이다.
도 5는 본 발명의 실시예에 따른 생성기의 하나의 예시적인 구조 모식도이다.
도 6은 본 발명의 실시예에 따른 몇 가지 예시적인 콘텐츠 이미지, 스타일 이미지 및 생성 이미지이다.
도 7은 본 발명의 실시예에 따른 신경망의 트레이닝 방법의 흐름도이다.
도 8은 본 발명의 응용 실시예에서 제기된 이미지 생성 방법의 아키텍처의 구조 모식도이다.
도 9a는 본 발명의 응용 실시예에서 콘텐츠 인코더의 잔차 블록의 구조 모식도이다.
도 9b는 본 발명의 응용 실시예에서 생성기의 잔차 블록의 구조 모식도이다.
도 9c는 본 발명의 응용 실시예의 FADE 모듈의 구조 모식도이다.
도 10은 본 발명의 실시예에 따른 이미지 생성 장치의 구성 구조 모식도이다.
도 11은 본 발명의 실시예에 따른 전자 기기의 구조 모식도이다.
도 12는 본 발명의 실시예에 따른 신경망 트레이닝 장치의 구성 구조 모식도이다.
아래 첨부 도면 및 실시예를 참조하여, 본 발명의 실시예를 더 상세히 설명한다. 여기서 제공되는 실시예는 단지 본 발명의 실시예를 해석하기 위한 것으로서, 본 발명의 실시예를 한정하지 않는다. 이 밖에, 아래의 제공되는 실시예는 본 발명의 부분적인 실시예를 실시하기 위한 것으로서, 본 발명의 모든 실시예를 실시하도록 제공하지 않으며, 모순되지 않는 한, 본 발명의 실시예에 기재된 기술적 해결수단은 임의로 조합된 실시형태일 수 있다.
설명해야 할 것은, 본 발명의 실시예에서, 용어 “포괄”, “포함” 또는 다른 임의의 변화는 배타적인 포함을 포괄함으로써, 일련의 요소를 포함하는 방법 또는 장치가 명확하게 기재된 요소를 포함할 뿐만 아니라, 명확하게 열거되지 않은 다른 요소를 더 포함할 수 있거나, 실시형태 또는 장치의 고유의 요소를 더 포함할 수 있다. 더 많은 제한이 없는 경우, 문장 “하나의 ...을 포함”이 한정하는 요소는, 상기 요소의 방법 또는 장치에 이 외의 관련 요소(예를 들면 방법 중의 단계 또는 장치 중의 요소, 예컨대 유닛은 부분 회로, 부분 프로세서, 부분 프로그램 등 소프트웨어 등일 수 있음)가 포함되는 것을 배제하지 않는다.
예를 들면, 본 발명의 실시예에서 제공하는 이미지 생성 방법 및 신경망 트레이닝 방법은 일련의 단계를 포함하나, 본 발명의 실시예에서 제공하는 이미지 생성 방법 및 신경망 트레이닝 방법은 기재된 단계에 한정되지 않고, 마찬가지로, 본 발명의 실시예에서 제공하는 이미지 생성 장치 및 신경망 트레이닝 장치는 일련의 모듈을 포함하나, 본 발명의 실시예에서 제공하는 장치는 명확하게 기재된 모듈을 포함하는 것에 한정되지 않으며, 관련 정보를 획득하거나, 정보에 기반하여 처리할 경우 설치해야 될 모듈을 더 포함할 수도 있다.
본문에서의 용어 “및/또는”은 단지 연관 대상의 연관 관계를 기술하기 위한 것으로, 3가지 관계가 존재할 수 있음을 의미하는데, 예를 들면 A 및/또는 B는, A만 존재, A와 B가 동시에 존재, B만 존재하는 3가지 경우를 의미한다. 이 밖에, 본문에서 용어 “적어도 한 가지”는 여러 가지 중의 임의의 한 가지 또는 여러 가지 중의 적어도 두 가지의 임의의 조합을 의미하는데, 예를 들면, A, B, C 중의 적어도 한 가지를 포함한다는 것은 A, B와 C로 구성된 집합에서 선택된 임의의 하나 또는 복수의 요소를 포함한다는 것이다.
본 발명의 실시예는 단말 기기 및 서버로 구성된 컴퓨터 시스템에서 응용될 수 있고, 이는 다른 수많은 다른 범용 또는 전용 컴퓨팅 시스템 환경 또는 구성과 함께 작동할 수 있다. 여기서 단말 기기는 신 클라이언트, 리치 클라이언트, 핸드 헬드 및 랩톱 기기, 마이크로 프로세서에 기반한 시스템, 셋톱 박스, 프로그램 가능 가전 제품, 네트워크 개인용 컴퓨터, 차량 탑재 기기, 소형 컴퓨터 시스템 등일 수 있고, 서버는 서버 컴퓨터 시스템, 소형 컴퓨터 시스템, 대형 컴퓨터 시스템 및 상기 임의의 시스템을 포함하는 분산형 클라우드 컴퓨팅 기술 환경 중의 적어도 하나를 포함하지만 이에 한정되지 않는 구성되는 예에 적용된다.
단말기, 서버 등 전자 기기는 컴퓨터 시스템으로 수행되는 컴퓨터 시스템 수행 가능한 명령(예컨대 프로그램 모듈)의 일반적인 언어 환경에서 서술될 수 있다. 통상적으로, 프로그램 모듈은 예제 프로그램, 프로그램, 타깃 프로그램, 컴포넌트, 논리, 데이터 구조 등을 포함할 수 있고, 이들은 특정된 태스크 또는 특정된 추상적 데이터 타입을 구현한다. 컴퓨터 시스템/서버는 분산형 클라우드 컴퓨팅 환경에서 실시될 수 있고, 분산형 클라우드 컴퓨팅 환경에서, 태스크는 통신 네트워크 링크의 원격 프로세싱 기기를 통해 실행된다. 분산형 클라우드 컴퓨팅 환경에서, 프로그램 모듈은 저장 기기를 포함하는 로컬 또는 원격 컴퓨팅 시스템 저장 매체에 위치할 수 있다.
상기 기재된 콘텐츠에 기반하여, 본 발명의 일부 실시예에서, 이미지 생성 방법을 제기하였고, 본 발명의 실시예의 응용 가능한 시나리오는 자율 주행, 이미지 생성, 이미지 합성, 컴퓨터 비전, 딥러닝, 기계 학습 등을 포함하지만 이에 한하지 않는다.
도 1은 본 발명의 실시예에 따른 이미지 생성 방법의 흐름도로서, 도 1에 도시된 바와 같이 상기 방법은 하기의 단계를 포함할 수 있다.
단계 101: 제1 신경망에서 순차적으로 연결된 다층 제1 네트워크 유닛 블록을 이용하여 콘텐츠 이미지의 콘텐츠 특징을 추출하여, 각 층의 제1 네트워크 유닛 블록이 각각 출력한 콘텐츠 특징을 얻는다.
여기서, 콘텐츠 이미지는 스타일 전환을 진행해야 하는 이미지 일 수 있고; 예시적으로, 로컬 저장 영역에서 콘텐츠 이미지를 획득하거나 또는 네트워크에서 콘텐츠 이미지를 획득할 수 있다. 예를 들면, 콘텐츠 이미지는 모바일 단말기 또는 카메라 등으로 촬영된 이미지일 수 있다. 콘텐츠 이미지의 포맷은 공동 영상 전문가 그룹(Joint Photographic Experts GROUP, JPEG), 비트맵(Bitmap, BMP), 이동성 네트워크 그래픽(Portable Network Graphics, PNG) 또는 기타 포맷일 수 있으며; 설명해야 할 것은, 여기서 단지 콘텐츠 이미지의 포맷 및 소스를 열거하여 설명하였으나, 본 발명의 실시예는 콘텐츠 이미지의 포맷 및 소스를 한정하지 않는다.
하나의 이미지에 대해 말하자면, 콘텐츠 특징 및 스타일 특징을 추출할 수 있다. 여기서, 콘텐츠 특징은 이미지의 콘텐츠 정보를 특성화하기 위한 것이며, 예를 들면, 콘텐츠 특징은 이미지 중의 물체 위치, 물체 형상, 물체 크기 등을 표시하며; 스타일 특징은 콘텐츠 이미지의 스타일 정보를 특성화하기 위한 것이고, 예를 들면, 스타일 특징은 날씨, 낮, 밤, 세선 스타일 등 스타일 정보를 특성화한다.
본 발명의 실시예에서, 스타일 전환은 콘텐츠 이미지의 스타일 특징이 다른 한 스타일 특징으로 전환되는 것을 가리킬 수 있는 바, 예시적으로, 콘텐츠 이미지의 스타일 특징의 전환은 낮으로부터 밤까지의 전환, 밤으로부터 낮까지의 전환, 상이한 날씨 스타일 사이의 전환, 상이한 회화 스타일 사이의 전환, 현실적 이미지로부터 컴퓨터 그래픽(Computer-Graphic images, CG) 이미지의 전환, CG 이미지로부터 현실적 이미지의 전환 중의 임의의 한 가지 전환이고; 상이한 날씨 스타일 사이의 전환은 맑은 날로부터 비 내리는 날의 전환, 비 내리는 날로부터 맑은 날의 전환, 맑은 날로부터 흐린 날의 전환, 흐린 날로부터 맑은 날의 전환, 흐린 날로부터 비 내리는 날의 전환, 비 내리는 날로부터 흐린 날의 전환, 맑은 날로부터 눈 내리는 날의 전환, 눈 내리는 날로부터 맑은 날의 전환, 흐린 날로부터 눈 내리는 날의 전환, 눈 내리는 날로부터 흐린 날의 전환, 눈 내리는 날로부터 비 내리는 날의 전 또는 비 내리는 날로부터 눈 내리는 날의 전환 등일 수 있으며; 상이한 회화 스타일의 전환은 유화로부터 수묵화의 전환, 수묵화로부터 유화의 전환, 유화로부터 소묘화의 전환, 소묘화로부터 유화의 전환, 소묘화로부터 수묵화의 전환 또는 수묵화로부터 소묘화의 전환 등일 수 있다.
여기서, 제1 신경망은 콘텐츠 이미지의 콘텐츠 특징을 추출하는 네트워크로서, 본 발명의 실시예는 제1 신경망의 종류를 한정하지 않는다. 제1 신경망은 순차적으로 연결된 다층 제1 네트워크 유닛 블록을 포함하고, 제1 신경망의 다층 제1 네트워크 유닛 블록에서, 콘텐츠 이미지의 콘텐츠 특징을 다층 제1 네트워크 유닛 블록의 첫 번째 층 제1 네트워크 유닛 블록에 피드포워드 입력할 수 있다. 여기서, 대응되는 데이터 처리 방향을 피드포워드 입력하는 것은 신경망의 입력단에서 출력단까지의 데이터 처리 방향을 표시하는 것이며, 정방향 전파 또는 전방향 전파 과정에 대응되고; 피드포워드 입력 과정에 대해, 신경망의 이전 층 네트워크 유닛 블록의 출력 결과를 다음 층 네트워크 유닛 블록의 입력 결과로 할 수 있다.
제1 신경망에 대해, 제1 신경망의 각 층의 제1 네트워크 유닛 블록은 입력된 데이터에 대해 콘텐츠 특징을 추출할 수 있는 바, 즉 제1 신경망의 각 층의 제1 네트워크 유닛 블록의 출력 결과는 상기 층의 제1 네트워크 유닛 블록의 콘텐츠 특징에 대응되며, 제1 신경망 중의 상이한 제1 네트워크 유닛 블록이 출력한 콘텐츠 특징은 상이하다.
선택 가능하게, 콘텐츠 이미지의 콘텐츠 특징의 표시 방식은 콘텐츠 특징 맵 또는 다른 표시 방식일 수 있고, 본 발명의 실시예는 이에 대해 한정하지 않는다.
이해할 수 있는 것은, 제1 신경망의 각 층의 제1 네트워크 유닛 블록을 통해 콘텐츠 특징에 대해 순차적 추출하여, 콘텐츠 이미지의 낮은 층으로부터 높은 층으로의 시멘틱 정보를 획득할 수 있다. 선택 가능하게, 제1 신경망 중의 각 층의 제1 네트워크 유닛 블록은 잔차 구조로 구성된 복수의 신경망 층이고, 이로써, 각 층의 제1 네트워크 유닛 블록에서 잔차 구조로 구성된 복수의 신경망 층에 기반하여 콘텐츠 이미지의 콘텐츠 특징을 추출할 수 있다.
단계 102: 스타일 이미지의 스타일 특징을 추출한다.
여기서, 스타일 이미지는 타깃 스타일 특징을 구비한 이미지로서, 타깃 스타일 특징은 콘텐츠 이미지가 전환되어야 할 스타일 특징을 표시하며, 스타일 이미지는 실제 수요에 따라 설정될 수 있다. 본 발명의 실시예에서, 콘텐츠 이미지를 획득한 후, 전환되어야 할 타깃 스타일 특징을 결정하며, 다시 수요에 따라 스타일 이미지를 선택한다.
실제 응용에서, 로컬 저장 영역 또는 네트워크에서 스타일 이미지를 획득할 수 있고, 예를 들면, 스타일 이미지는 모바일 단말기 또는 카메라 등으로 촬영된 이미지일 수 있고; 스타일 이미지의 포맷은 JPEG, BMP, PNG 또는 다른 포맷일 수 있으며; 설명해야 할 것은, 여기서 단지 스타일 이미지의 포맷 및 소스에 대해 열거하여 설명하였지만, 본 발명의 실시예는 스타일 이미지의 포맷 및 소스를 한정하지 않는다.
본 발명의 실시예에서, 콘텐츠 이미지의 스타일 특징은 스타일 이미지의 스타일 특징과 상이하고, 콘텐츠 이미지에 대해 스타일 전환을 진행하는 목적은, 스타일 전환을 거친 후 얻은 생성 이미지가 콘텐츠 이미지의 콘텐츠 특징 및 스타일 이미지의 스타일 특징을 구비하도록 하는 것이다.
예를 들면, 낮 스타일의 콘텐츠 이미지를 밤 스타일의 생성 이미지로 전환하거나, 또는, 맑은 날 스타일의 콘텐츠 이미지를 비 내리는 날 스타일의 생성 이미지로 전환하거나, 또는, 수묵화 스타일의 콘텐츠 이미지를 유화 스타일의 생성 이미지로 전환하거나, 또는, CG스타일의 이미지를 현실적 이미지 스타일의 생성 이미지 등으로 전환한다.
본 단계의 실시형태에 대해, 예시적으로, 상기 스타일 이미지의 스타일 특징을 추출하는 단계는, 스타일 이미지 분포의 특징을 추출하는 단계; 스타일 이미지 분포의 특징을 샘플링하여, 스타일 특징을 얻는 단계를 포함하고, 스타일 특징은 스타일 이미지 분포의 특징의 평균값 및 표준편차를 포함한다. 여기서, 스타일 이미지 분포의 특징을 샘플링하는 것을 통해, 스타일 이미지의 스타일 특징을 정확하게 추출할 수 있으며, 콘텐츠 이미지를 정확하게 스타일 전환하는데 유리하다. 실제 응용에서, 스타일 이미지에 대해 적어도 한 층의 컨볼루션 연산을 진행하여, 스타일 이미지 분포의 특징을 얻을 수 있다.
단계 103: 각 층의 제1 네트워크 유닛 블록이 각각 출력한 콘텐츠 특징을 제2 신경망에서 순차적으로 연결된 다층 제2 네트워크 유닛 블록에 대응되게 피드포워드 입력하고, 스타일 특징을 다층 제2 네트워크 유닛 블록 중의 첫 번째 층 제2 네트워크 유닛 블록으로부터 피드포워드 입력하며, 각 제2 네트워크 유닛 블록이 각자에 입력된 특징을 처리한 후 제2 신경망이 출력한 생성 이미지를 얻고, 여기서, 다층 제1 네트워크 유닛 블록은 다층 제2 네트워크 유닛 블록과 대응된다.
여기서, 제2 신경망은 순차적으로 연결된 다층 제2 네트워크 유닛 블록을 포함하고, 제2 신경망 중의 이전 층 네트워크 유닛 블록의 출력 결과는 다음 층 네트워크 유닛 블록의 입력 결과이며; 선택 가능하게, 제2 신경망 중의 각 층의 제2 네트워크 유닛 블록은 잔차 구조로 구성된 복수의 신경망 층이고, 이로써, 각 층의 제2 네트워크 유닛 블록에서 잔차 구조로 구성된 복수의 신경망 층에 기반하여 입력된 특징을 처리할 수 있다.
실제 응용에서, 단계 101 내지 단계 103은 전자 기기 중의 프로세서를 이용하여 구현될 수 있고, 상기 프로세서는 특정용 주문형 집적회로(Application Specific Integrated Circuit, ASIC), 디지털 신호 프로세서(Digital Signal Processor, DSP), 디지털 신호 처리 장치(Digital Signal Processing Device, DSPD), 프로그래머블 논리 장치(Programmable Logic Device, PLD), FPGA, 중앙 프로세서(Central Processing Unit, CPU), 컨트롤러, 마이크로 컨트롤러, 마이크로 프로세서 중의 적어도 한 가지일 수 있다.
보다시피, 본 발명의 실시예에서, 콘텐츠 이미지 및 스타일 이미지는 모두 실제 수요에 따라 결정할 수 있고, 콘텐츠 이미지 및 스타일 이미지는 쌍 형성된 이미지일 필요가 없으며, 이로써 간편하게 구현되고; 이 밖에, 이미지 생성 과정에서, 제1 신경망의 각 층의 제1 네트워크 유닛 블록을 이용하여 콘텐츠 이미지의 콘텐츠 특징을 여러 차례 추출하여, 콘텐츠 이미지의 더 많은 시멘틱 정보를 보류함으로써, 생성 이미지를 콘텐츠 이미지와 비교하면, 비교적 많은 시멘틱 정보를 보류하였기에, 생성 이미지는 더욱 진실하다.
이 밖에, 본 발명의 실시예 중의 신경망 구조에 기반하여 이미지 생성을 진행하는 과정에서, 스타일 이미지의 스타일은 실제 수요에 따라 결정할 수 있고, 스타일 이미지의 스타일 특징과 신경망을 트레이닝 할 때 사용하는 스타일 이미지의 스타일 특징의 관계를 한정하지 않으며, 다시 말해, 신경망 트레이닝할 때 사용되는 것은 다크 나이트 스타일의 트레이닝 이미지이나, 트레이닝 완료된 신경망에 기반하여 이미지 생성을 진행할 경우, 콘텐츠 이미지 및 눈 내리는 날 스타일, 비 내리는 날 스타일 또는 다른 스타일의 스타일 이미지를 선택할 수 있으며, 이로써 실제 수요에 부합되는 스타일의 이미지를 생성할 수 있고, 다크 나이트 스타일의 이미지를 생성할 뿐만 아니라, 이미지 생성 방법의 광범성과 보편성을 향상시킬 수 있다.
부가적으로, 사용자 수요에 따라 몇 가지 상이한 스타일 특징을 구비하는 스타일 이미지를 설정할 수 있고, 하나의 콘텐츠 이미지에 대해, 상이한 스타일 특징을 구비하는 생성 이미지를 얻을 수 있다. 예를 들면, 트레이닝 완료된 신경망에 기반하여 이미지 생성을 진행할 경우, 동일한 콘텐츠 이미지에 대해, 트레이닝 완료된 신경망을 향해 다크 나이트 스타일 이미지, 흐린 날 스타일 이미지 및 비 내리는 날 스타일 이미지를 각각 입력함으로써, 상기 콘텐츠 이미지의 스타일을 각각 다크 나이트 스타일, 흐린 날 스타일 및 비 내리는 날 스타일로 전환시키며, 즉, 동일한 콘텐츠 이미지에 기반하여, 여러 가지 스타일의 생성 이미지를 얻어, 한 가지 타일의 이미지를 생성할 수 있을 뿐만 아니라, 이미지 생성 방법의 적용성을 향상시킨다.
본 발명의 실시예에서, 제1 신경망의 제1 네트워크 유닛 블록의 층수는 제2 신경망의 제2 네트워크 유닛 블록의 층수와 동일할 수 있고, 제1 신경망의 각 층의 제1 네트워크 유닛 블록은 제2 신경망의 각 층의 제2 네트워크 유닛 블록과 일일이 대응 관계를 형성한다.
한 가지 실시형태로서, 상기 각 층의 제1 네트워크 유닛 블록이 각각 출력한 콘텐츠 특징을 제2 신경망에서 순차적으로 연결된 다층 제2 네트워크 유닛 블록에 대응되게 피드포워드 입력하는 단계는, i가 순차적으로 1 내지 T인 경우에 응답하여, 제i 층 제1 네트워크 유닛 블록이 출력한 콘텐츠 특징을 제T-i+1 층 제2 네트워크 유닛 블록에 피드포워드 입력하는 단계를 포함하며, i는 양의 정수이고, T는 상기 제1 신경망의 제1 네트워크 유닛 블록 및 상기 제2 신경망의 제2 네트워크 유닛 블록의 층수를 표시하며; 즉, 첫 번째 층 제1 네트워크 유닛 블록이 출력한 콘텐츠 특징을 마지막 층 제2 네트워크 유닛 블록에 입력하고, 마지막 층 제1 네트워크 유닛 블록이 출력한 콘텐츠 특징을 첫 번째 층 제2 네트워크 유닛 블록에 입력한다.
본 발명의 실시예에서, 제2 신경망에서 각 층의 제2 네트워크 유닛 블록이 수신한 콘텐츠 특징은 제1 신경망 각 층의 제1 네트워크 유닛 블록의 출력 특징이고, 제2 신경망에서 각 층의 제2 네트워크 유닛 블록이 수신한 콘텐츠 특징은, 제2 신경망 중의 상이한 위치에 따라 상이하다. 보다시피, 제2 신경망은 스타일 특징을 입력으로 하여, 스타일 특징이 제2 신경망의 저층 제2 네트워크 유닛 블록으로부터 고층 제2 네트워크 유닛 블록까지 깊이 들어가고, 더 많은 콘텐츠 특징을 병합할 수 있으며, 스타일 특징에 기반하여 콘텐츠 이미지 각 층의 시멘틱 정보를 점차 병합하여, 획득한 생성 이미지가 콘텐츠 이미지의 다층 음성 정보 및 스타일 특징 정보를 보류하도록 한다.
한 가지 실시형태로서, 각 상기 제2 네트워크 유닛 블록 중의 첫 번째 층 제2 네트워크 유닛 블록이 입력된 특징을 처리하는 단계는, 마지막 층 제1 네트워크 유닛 블록으로부터 얻은 콘텐츠 특징 및 스타일 특징을 곱셈 연산하여, 상기 첫 번째 층 제2 네트워크 유닛 블록의 중간 특징을 얻는 단계; 마지막 층 제1 네트워크 유닛 블록으로부터 얻은 콘텐츠 특징과 첫 번째 층 제2 네트워크 유닛 블록의 중간 특징을 덧셈 연산하여, 첫 번째 층 제2 네트워크 유닛 블록의 출력 특징을 얻는 단계; 첫 번째 층 제2 네트워크 유닛 블록의 출력 특징을 두 번째 층 제2 네트워크 유닛 블록에 입력하는 단계를 포함한다. 보다시피, 상기 곱셈 연산 및 덧셈 연산을 진행하여, 스타일 특징 및 마지막 층 제1 네트워크 유닛 블록의 콘텐츠 특징의 병합을 구현한다.
선택 가능하게, 마지막 층 제1 네트워크 유닛 블록으로부터 얻은 콘텐츠 특징 및 스타일 특징을 곱셈 연산하기 전에, 마지막 층 제1 네트워크 유닛 블록으로부터 얻은 콘텐츠 특징에 대해 컨볼루션 연산을 진행할 수 있다. 즉, 마지막 층 제1 네트워크 유닛 블록으로부터 얻은 콘텐츠 특징에 대해 컨볼루션 연산을 진행하고, 다시 컨볼루션 연산의 결과를 스타일 특징과 곱셈 연산할 수 있다.
한 가지 실시형태로서, 각 제2 네트워크 유닛 블록 중의 중간층 제2 네트워크 유닛 블록이 입력된 특징을 처리하는 단계는, 입력된 콘텐츠 특징 및 이전 층 제2 네트워크 유닛 블록의 출력 특징을 곱셈 연산하여, 중간층 제2 네트워크 유닛 블록의 중간 특징을 얻는 단계; 입력된 콘텐츠 특징과 중간층 제2 네트워크 유닛 블록의 중간 특징을 덧셈 연산하여, 중간층 제2 네트워크 유닛 블록의 출력 특징을 얻는 단계; 중간층 제2 네트워크 유닛 블록의 출력 특징을 다음 층 제2 네트워크 유닛 블록에 입력하는 단계를 포함한다. 보다시피, 상기 곱셈 연산 및 덧셈 연산을 통해, 이전 층 제2 네트워크 유닛 블록의 출력 특징 및 상응한 콘텐츠 특징의 병합을 구현한다.
설명해야 할 것은, 중간층 제2 네트워크 유닛 블록은 제2 신경망에서 첫 번째 층 제2 네트워크 유닛 블록 및 마지막 층 제2 네트워크 유닛 블록을 제거한 이외의 다른 제2 네트워크 유닛 블록이고, 제2 신경망에서, 하나의 중간 제2 네트워크 유닛 블록이 있을 수 있으며, 복수의 제2 네트워크 유닛 블록이 있을 수도 있고; 상기 기재된 콘텐츠는 단지 하나의 중간층 제2 네트워크 유닛 블록을 예로 들며, 중간층 제2 네트워크 유닛 블록의 데이터 처리 과정에 대해 설명하였다.
선택 가능하게, 중간층 제2 네트워크 유닛 블록이 상기 입력된 콘텐츠 특징 및 이전 층 제2 네트워크 유닛 블록의 출력 특징을 곱셈 연산하는 단계 전에, 수신된 상기 콘텐츠 특징을 컨볼루션 연산한다.
한 가지 실시형태로서, 각 제2 네트워크 유닛 블록 중의 마지막 층 제2 네트워크 유닛 블록이 입력된 특징을 처리하는 단계는, 첫 번째 층 제1 네트워크 유닛 블록으로부터 얻은 콘텐츠 특징 및 이전 층 제2 네트워크 유닛 블록으로부터 얻은 출력 특징을 곱셈 연산하여, 마지막 층 제2 네트워크 유닛 블록의 중간 특징을 얻는 단계; 첫 번째 층 제1 네트워크 유닛 블록으로부터 얻은 콘텐츠 특징과 마지막 층 제2 네트워크 유닛 블록의 중간 특징을 덧셈 연산하여, 생성 이미지를 얻는 단계를 포함한다.
보다시피, 상기 곱셈 연산 및 덧셈 연산을 통해, 이전 층 제2 네트워크 유닛 블록의 출력 특징 및 첫 번째 층 제1 네트워크 유닛 블록의 콘텐츠 특징의 병합을 구현하여, 각 층의 제2 네트워크 유닛 블록의 데이터 처리를 통해, 생성 이미지가 병합함 스타일 특징과 각 층의 제1 네트워크 유닛 블록의 콘텐츠 특징을 병합할 수 있도록 한다.
선택 가능하게, 마지막 층 제2 네트워크 유닛 블록이 첫 번째 층 제1 네트워크 유닛 블록으로부터 얻은 콘텐츠 특징 및 이전 층 제2 네트워크 유닛 블록의 출력 특징을 곱셈 연산하기 전에, 상기 첫 번째 층 제1 네트워크 유닛 블록으로부터 얻은 콘텐츠 특징을 컨볼루션 연산한다.
실제 응용에서, 이미지 생성을 위한 신경망을 먼저 미리 트레이닝할 수 있고; 이하 도면을 결부하여 미리 트레이닝된 신경망을 예시적으로 설명한다. 도 2는 본 발명의 실시예의 미리 트레이닝된 신경망의 구조 모식도로서, 도 2에 도시된 바와 같이 미리 트레이닝된 신경망은 콘텐츠 인코더, 스타일 인코더 및 생성기를 포함하며; 여기서, 콘텐츠 인코더는 상기 제1 신경망 콘텐츠 이미지의 콘텐츠 특징을 추출하고, 스타일 인코더는 스타일 이미지의 스타일 특징을 추출하며, 생성기는 상기 제2 신경망으로 스타일 특징과 각 층의 제1 네트워크 유닛 블록이 출력한 콘텐츠 특징의 병합을 구현한다.
실제로 실시할 경우, 제1 신경망을 콘텐츠 인코더로 할 수 있고, 제2 신경망을 생성기로 할 수 있으며, 스타일 이미지에 대해 스타일 특징을 추출한 신경망을 스타일 인코더로 한다. 도 2를 참조하면, 처리될 이미지(즉 콘텐츠 이미지)를 콘텐츠 인코더에 입력할 수 있고, 콘텐츠 인코더에서, 제1 신경망의 다층 제1 네트워크 유닛 블록을 이용하여 처리할 수 있으며, 각 층의 제1 네트워크 유닛 블록은 콘텐츠 특징을 출력할 수 있고; 스타일 이미지를 스타일 인코더에 입력할 수도 있으며, 스타일 인코더에서 스타일 이미지를 통해 스타일 특징을 추출한다. 예시적으로, 제1 네트워크 유닛 블록은 잔차 블록(Residual Block, RB)이고, 각 층의 제1 네트워크 유닛 블록이 출력한 콘텐츠 특징은 콘텐츠 특징맵이다.
도 3은 본 발명의 실시예에 따른 콘텐츠 인코더의 하나의 예시적인 구조 모식도로서, 도 3에 도시된 콘텐츠 인코더의 잔차 블록은 CRB로 기재할 수 있고, 콘텐츠 인코더는 7층의 CRB를 포함하며, 도 3의 CRB(A,B)에서, A는 입력 채널 수를 표시하고, B는 출력 채널 수를 표시하며; 도 3에서, CRB(3,64)의 입력은 콘텐츠 이미지이고, 제1 층 CRB로부터 제7 층 CRB은 각각 아래로부터 위로 배열된 CRB(3,64), CRB(64,128), CRB(128,256), CRB(256,512), CRB(512,1024), CRB(1024,1024), CRB(1024,1024) 및 CRB(1024,1024)이며, 제1 층 CRB 내지 제7 층 CRB는 각각 7개의 콘텐츠 특징맵을 출력할 수 있다.
도 4는 본 발명의 실시예에 따른 CRB의 하나의 예시적인 구조 모식도로서, 도 4에서, sync BN는 동기화 BN층을 표시하고, 정류 선형 유닛(Rectified Linear Unit, ReLu)은 ReLu층을 표시하며, Conv는 컨볼루션층을 표시하고, "
Figure pct00001
"는 합계를 구하는 동작을 표시하며; 도 4에 도시된 CRB의 구조는 표준적인 잔차 블록의 구조이다.
도 3 및 도 4를 참조하면, 본 발명의 실시예에서 표준적인 잔차 네트워크 구조를 사용하여 콘텐츠 특징의 추출을 진행하여, 콘텐츠 이미지의 콘텐츠 특징에 대한 추출을 구현하며, 시멘틱 정보 소실을 감소한다. 생성기에서, 제2 신경망의 다층 제2 네트워크 유닛 블록을 이용하여 처리할 수 있으며; 예시적으로, 제2 네트워크 유닛 블록은 RB이다.
도 5는 본 발명의 실시예에 따른 생성기의 하나의 예시적인 구조 모식도로서, 도 5에 도시된 바와 같이 생성기 중의 잔차 블록은 GB로 기재할 수 있고, 생성기는 7층의 GB를 포함할 수 있으며, 각 층의 GB의 입력은 콘텐츠 인코더의 한 층의 CRB의 출력이고; 생성기에서, 제1 층 GB 내지 제7 층 GB는 각각 위로부터 아래로 배열된 GB ResBlk(1024), GB ResBlk(1024), GB ResBlk(1024), GB ResBlk(512), GB ResBlk(256), GB ResBlk(128) 및 GB ResBlk(64)이며; 도 5의 GB ResBlk(C)에서, C는 채널 수를 표시하고; 제1 층 GB는 스타일 특징을 수신하며, 제1 층 GB 내지 제7 층GB는 제7 층 CRB 내지 제1 층 CRB가 출력한 콘텐츠 특징맵을 대응되게 수신하고; 입력한 특징을 각 층의 GB가 처리한 후, 제7 층 GB를 이용하여 생성 이미지를 출력할 수 있다.
보다시피, 콘텐츠 인코더의 다층 잔차 블록에 기반하여, 콘텐츠 이미지의 구조 정보를 코딩하여, 복수의 상이한 층차의 콘텐츠 특징맵을 생성할 수 있고; 콘텐츠 인코더는 심층 추출에서 더욱 추상적인 특징을 추출할 수 있으며, 표층에 대량의 구조 정보가 보류되었다.
본 발명의 실시예의 이미지 생성 방법은 여러 가지 이미지 생성 시나리오에 응용될 수 있는 바, 예를 들면, 이미지 오락화 데이터 생성, 자율 주행 모델 트레이닝 테스트 데이터 생성 등 시나리오에 응용될 수 있다.
이하 도면과 결부하여 본 발명의 실시예에 따른 이미지 생성 방법의 효과를 설명한다. 도 6은 본 발명의 실시예에 따른 몇 가지 예시적인 콘텐츠 이미지, 스타일 이미지 및 생성 이미지로서, 도 6에 도시된 제1 열은 콘텐츠 이미지를 표시하고, 제2 열은 스타일 이미지를 표시하며, 제3 열은 본 발명의 실시예의 이미지 생성 방법에 기반하여 획득한 생성 이미지를 표시하고, 동일한 행의 이미지는 한 그룹의 콘텐츠 이미지, 스타일 이미지 및 생성 이미지를 표시하며; 제1 행으로부터 마지막 한 행까지의 스타일 전환은 각각 낮으로부터 밤까지, 밤으로부터 낮까지, 맑은 날로부터 비 내리는 날, 비 내리는 날로부터 맑은 날, 맑은 날로부터 흐린 날, 흐린 날로부터 맑은 날, 맑은 날로부터 눈 내리는 날 및 눈 내리는 날로부터 맑은 날의 스타일 전환이고, 도 6에서 보다시피, 본 발명의 실시예의 이미지 생성 방법에 기반하여 획득한 생성 이미지에는 콘텐츠 이미지의 콘텐츠 정보 및 스타일 이미지의 스타일 정보가 보류될 수 있다.
본 발명의 실시예의 신경망의 트레이닝 과정에서, 입력부터 출력까지의 전방향 전파 과정에 관련될 뿐만 아니라, 출력부터 입력까지 역방향 전파 과정에도 관련되며; 본 발명의 신경망의 트레이닝 과정에서, 전방향 과정을 사용하여 이미지를 생성하고 역방향 과정을 사용하여 신경망의 네트워크 파라미터를 조절한다. 이하 본 발명의 실시예에 관련된 신경망의 트레이닝 방법을 설명한다.
도 7은 본 발명의 실시예에 따른 신경망의 트레이닝 방법의 흐름도로서, 도 7에 도시된 바와 같이 상기 흐름은 하기의 단계를 포함할 수 있다.
단계 701: 제1 신경망에서 순차적으로 연결된 다층 제1 네트워크 유닛 블록을 이용하여 콘텐츠 이미지의 콘텐츠 특징을 추출하여, 각 층의 제1 네트워크 유닛 블록이 각각 출력한 콘텐츠 특징을 얻는다.
단계 702: 스타일 이미지의 스타일 특징을 추출한다.
단계 703: 각 층의 제1 네트워크 유닛 블록이 각각 출력한 콘텐츠 특징을 제2 신경망에서 순차적으로 연결된 다층 제2 네트워크 유닛 블록에 대응되게 피드포워드 입력하고, 스타일 특징을 다층 제2 네트워크 유닛 블록 중의 첫 번째 층 제2 네트워크 유닛 블록으로부터 피드포워드 입력하며, 각 제2 네트워크 유닛 블록이 각자에 입력된 특징을 처리한 후 제2 신경망이 출력한 생성 이미지를 얻고, 여기서, 다층 제1 네트워크 유닛 블록은 다층 제2 네트워크 유닛 블록과 대응된다.
본 실시예 단계 701 내지 단계 703의 실시형태는 단계 101 내지 103의 실시형태와 동일하기에, 여기서 서술하지 않는다.
단계 704: 생성 이미지를 감별하여, 감별 결과를 얻는다.
본 발명의 실시예에서, 신경망의 테스트 방법(즉 트레이닝 완료된 신경망에 기반하여 이미지 생성을 진행하는 방법)과 상이한 것은, 신경망의 트레이닝 과정에서, 생성기가 생성한 출력 이미지는 별도의 감별이 필요하다. 여기서, 생성 이미지를 감별하는 목적은 생성 이미지가 현실적 이미지인 확률을 판정하는 것이고; 실제 응용에서, 본 단계는 감별기 등을 이용하여 구현될 수 있다.
단계 705: 콘텐츠 이미지, 스타일 이미지, 생성 이미지 및 감별 결과에 따라, 제1 신경망 및 상기 제2 신경망 중 적어도 하나의 네트워크 파라미터를 조절한다.
실제 응용에서, 콘텐츠 이미지, 스타일 이미지, 생성 이미지 및 감별 결과에 따라, 역방향 과정에 기반하여 제1 신경망 및 상기 제2 신경망 중 적어도 하나의 네트워크 파라미터를 조절하고, 전방향 과정을 사용하여 생성 이미지 및 감별 결과를 다시 얻으며, 이로써, 상기 전방향 과정 및 역방향 과정을 여러 차례 진행하여, 기설정된 트레이닝 완료 조건에 만족할 때까지 신경망의 네트워크 반복 최적화를 진행함으로써, 이미지 생성을 위한, 트레이닝 완료된 신경망을 얻을 수 있다.
실제 응용에서, 단계 701 내지 단계 705는 전자 기기 중의 프로세서를 이용하여 구현될 수 있고, 상기 프로세서는 ASIC, DSP, DSPD, PLD, FPGA, CPU, 컨트롤러, 마이크로 컨트롤러, 마이크로 프로세서 중의 적어도 한 가지일 수 있다.
본 발명의 실시예에서, 콘텐츠 이미지 및 스타일 이미지는 모두 실제 수요에 따라 결정할 수 있고, 콘텐츠 이미지 및 스타일 이미지는 쌍 형성된 이미지일 필요가 없으며, 이로써 간편하게 구현된다. 신경망의 트레이닝 과정의 이미지 생성 과정에서, 제1 신경망의 각 층의 제1 네트워크 유닛 블록을 이용하여 콘텐츠 이미지의 콘텐츠 특징을 여러 차례 추출하여, 콘텐츠 이미지의 더 많은 시멘틱 정보를 보류함으로써, 생성 이미지를 콘텐츠 이미지와 비교하면, 비교적 많은 시멘틱 정보를 보류하였기에; 트레이닝하여 획득한 신경망이 비교적 훌륭하게 콘텐츠 이미지 시멘틱 정보를 유지하는 성능을 구비할 수 있도록 한다.
제2 신경망의 네트워크 파라미터를 조절하는 실시형태에 대해, 예시적으로, 각 층의 제2 네트워크 유닛 블록에서 사용되는 상기 곱셈 연산 및/또는 덧셈 연산의 파라미터를 조절할 수 있다.
한 가지 실시형태로서, 상기 콘텐츠 이미지, 상기 스타일 이미지, 상기 생성 이미지 및 상기 감별 결과에 따라, 상기 제1 신경망 및 상기 제2 신경망 중 적어도 하나의 네트워크 파라미터를 조절하는 단계는, 콘텐츠 이미지, 스타일 이미지, 생성 이미지 및 감별 결과에 따라, 생성적 적대 네트워크(Generative Adversarial Net, GAN) 손실을 결정하는 단계를 포함하고; 여기서, 상기 생성적 적대 네트워크 손실은 생성 이미지와 상기 콘텐츠 이미지의 콘텐츠 특징 차이, 및 생성 이미지와 스타일 이미지의 스타일 특징 차이를 특성화하며; 일 구현예에서, 생성적 적대 네트워크는 생성기 및 감별기를 포함하고; 생성적 적대 네트워크 손실이 제1 기설정 조건을 만족하지 않는 경우에 응답하여, 생성적 적대 네트워크 손실에 따라, 제1 신경망 및/또는 제2 신경망의 네트워크 파라미터를 조절한다. 실제 응용에서, 생성적 적대 네트워크 손실에 기반하여, 최대 최소 전략을 사용하여 제1 신경망 및/또는 제2 신경망의 네트워크 파라미터를 조절한다.
여기서, 제1 기설정 조건은 기설정된 트레이닝 완료 조건을 표시할 수 있고; 이해할 수 있는 것은, 생성적 적대 네트워크 손실의 의미에 따라 알 수 있는 바, 생성적 적대 네트워크 손실 트레이닝 신경망에 기반하여, 트레이닝 후의 신경망에 기반하여 얻은 생성 이미지가, 콘텐츠 이미지의 콘텐츠 특징 및 스타일 이미지의 스타일 특징을 유지하는 비교적 높은 성능을 구비할 수 있도록 한다.
선택 가능하게, 상기 콘텐츠 이미지, 상기 스타일 이미지, 상기 생성 이미지 및 상기 감별 결과에 따라, 상기 제1 신경망 및 상기 제2 신경망 중 적어도 하나의 네트워크 파라미터를 조절하는 단계는, 생성 이미지와 스타일 이미지에 따라, 스타일 손실을 결정하는 단계; 스타일 손실이 제2 기설정 조건을 만족하지 않는 경우에 응답하여, 상기 스타일 손실에 따라, 제1 신경망 및/또는 제2 신경망의 네트워크 파라미터를 조절하는 단계를 더 포함하고; 여기서, 스타일 손실은 상기 생성 이미지와 스타일 이미지의 스타일 특징의 차이를 특성화한다.
선택 가능하게, 상기 콘텐츠 이미지, 상기 스타일 이미지, 상기 생성 이미지 및 상기 감별 결과에 따라, 상기 제1 신경망 및 상기 제2 신경망 중 적어도 하나의 네트워크 파라미터를 조절하는 단계는, 생성 이미지와 콘텐츠 이미지에 따라, 콘텐츠 손실을 결정하는 단계; 콘텐츠 손실이 제3 기설정 조건을 만족하지 않는 경우에 응답하여, 콘텐츠 손실에 따라, 제1 신경망 및/또는 제2 신경망의 네트워크 파라미터를 조절하는 단계를 더 포함하며; 여기서, 콘텐츠 손실은 생성 이미지와 콘텐츠 이미지의 콘텐츠 특징 차이를 특성화한다.
선택 가능하게, 상기 콘텐츠 이미지, 상기 스타일 이미지, 상기 생성 이미지 및 상기 감별 결과에 따라, 상기 제1 신경망 및 상기 제2 신경망 중 적어도 하나의 네트워크 파라미터를 조절하는 단계는, 각 제2 네트워크 유닛 블록 중의 각 중간층 제2 네트워크 유닛 블록의 출력 특징, 및 스타일 이미지, 특징 매칭 손실을 결정하는 단계; 특징 매칭 손실이 제4 기설정 조건을 만족하지 않는 경우에 응답하여, 특징 매칭 손실에 따라, 제1 신경망 및/또는 제2 신경망의 네트워크 파라미터를 조절하는 단계를 더 포함하고; 여기서, 특징 매칭 손실은 각 중간층 제2 네트워크 유닛 블록의 출력 특징과 스타일 이미지의 스타일 특징의 차이를 특성화한다.
상기 제2 기설정 조건, 제3 기설정 조건 및 제4 기설정 조건은 기설정된 트레이닝 완료 조건을 표시할 수 있고; 이해할 수 있는 것은, 스타일 손실, 콘텐츠 손실 또는 특징 매칭 손실의 의미에 따라 알 수 있는 바, 스타일 손실, 콘텐츠 손실 또는 특징 매칭 손실 트레이닝 신경망에 기반하여, 트레이닝 후의 신경망에 기반하여 획득한 생성 이미지가, 비교적 높은 콘텐츠 이미지의 콘텐츠 특징을 유지하는 특성을 구비할 수 있도록 한다.
본 발명의 실시예에서, 상기 한 가지 손실 또는 여러 가지 손실에 기반하여 신경망을 트레이닝할 수 있고, 한 가지 손실에 기반하여 신경망을 트레이닝할 경우, 상기 손실이 대응되는 기설정 조건을 만족할 경우, 트레이닝 완료된 신경망을 얻을 수 있고; 여러 가지 손실에 기반하여 신경망을 트레이닝할 경우, 상기 여러 가지 손실이 모두 대응되는 기설정 조건을 만족할 경우, 트레이닝 완료된 신경망을 얻을 수 있다. 여러 가지 손실에 기반하여 신경망을 트레이닝할 경우, 신경망 트레이닝의 여러 면에서 종합적으로 신경망의 손실을 고려하여, 트레이닝된 신경망의 스타일 전환의 정확도가 더욱 높도록 한다.
본 발명의 실시예에서, 생성적 적대 네트워크 손실, 스타일 손실, 콘텐츠 손실 또는 특징 매칭 손실은 손실 함수로 표시할 수 있다.
이하 구체적인 응용 실시예를 통해 본 발명의 실시예를 더 설명한다.
상기 응용 실시예에서, 신경망 방법의 트레이닝 과정은 콘텐츠 인코더, 스타일 인코더, 생성기 및 감별기 등에 기반하여 구현될 수 있고, 트레이닝 완료 신경망 방법에 기반하여 이미지 생성의 진행 과정은 콘텐츠 인코더, 스타일 인코더 및 생성기 등에 기반하여 구현될 수 있다.
도 8은 본 발명의 응용 실시예에서 제기된 이미지 생성 방법의 아키텍처의 구조 모식도이고, 도 8에 도시된 콘텐츠 인코더의 입력은 처리될 이미지(즉 콘텐츠 이미지)는 콘텐츠 이미지의 콘텐츠 특징을 추출하여; 스타일 인코더가 스타일 이미지의 스타일 특징을 추출하는 것을 책임지고; 생성기는 상이한 층의 제1 네트워크 유닛 블록의 콘텐츠 특징 및 스타일 특징을 병합하였으며, 높음 품질의 이미지를 생성한다. 설명해야 할 것은, 도 8에는 신경망 트레이닝 과정에 사용되는 감별기가 도시되지 않았다.
구체적으로 말하자면, 도 8을 참조하면, 콘텐츠 인코더는 다층 잔차 블록을 포함하고, CRB-1, CRB-2…CRB-T는 각각 콘텐츠 인코더의 제1 층 잔차 블록으로부터 제T 층 잔차 블록을 표시하며; 생성기는 다층 잔차 블록을 포함하고, GB-1…GB-T-1, GB-T는 각각 생성기의 제1 층 잔차 블록으로부터 제T 층 잔차 블록을 표시한다. i가 1 내지 T 사이에 위치하는 경우에 응답하여, 콘텐츠 인코더의 제i 층 잔차 블록의 출력 결과를 생성기의 제T-i+1 층 잔차 블록에 입력하고; 스타일 인코더의 입력은 스타일 이미지이며, 스타일 이미지의 스타일 특징을 추출하기 위한 것이고, 스타일 특징은 생성기의 제1 층 잔차 블록에 입력된다. 출력 이미지는 생성기의 제T 층 잔차 블록 GB-T의 출력 결과에 기반하여 획득된 것이다.
본 발명의 응용 실시예에서, fi를 콘텐츠 인코더의 제i 층 잔차 블록에서 출력한 콘텐츠 특징맵으로 정의하고,
Figure pct00002
는 생성기의 제i 개 잔차 블록에서 출력한 특징을 표시한다. 여기서, 콘텐츠 인코더의 제i 개 잔차 블록은 생성기의 제T-i+1 층 잔차 블록에 대응되며;
Figure pct00003
는 fi과 동일한 채널 수를 구비하고, N은 배치 사이즈(Batch size)를 표시하고, Ci는 채널 수를 표시하며; Hi 및 Wi는 각각 높이 및 폭을 표시한다. 활성 값 (n∈[1,N],c∈[1,Ci],h∈[1,Hi],ω∈[1,Wi])는 공식 (1)로 표시될 수 있다.
Figure pct00004
여기서,
Figure pct00005
Figure pct00006
는 모두 생성기의 제i 개 잔차 블록과 대응되고, 각각 이전 층 잔차 블록(즉 제2 신경망의 잔차 블록)에서 출력한 특징의 평균값 및 표준편차를 표시하며,
Figure pct00007
Figure pct00008
는 공식 (2)에 따라 산출할 수 있다.
Figure pct00009
Figure pct00010
Figure pct00011
는 생성기의 제i 개 잔차 블록의 파라미터로서,
Figure pct00012
Figure pct00013
는 fi의 단층 컨볼루션으로 얻을 수 있고 본 발명의 응용 실시예의 이미지 생성 방법은 특징이 자기적으로 적응되는 것으로, 즉, 콘텐츠 이미지의 콘텐츠 특징에 기반하여 변조 파라미터를 직접 산출할 수 있으며; 관련된 이미지 생성 방법에서, 변조 파라미터는 불변인 것이다.
본 발명의 응용 실시예에서, 콘텐츠 인코더를 Ec로 표시하고, 스타일 인코더를 Es로 표시하며; 스타일 이미지의 잠재 분포 xs는 Es에 의해 코딩되, 예를 들면,
Figure pct00014
이다.
각각 χc 및 χs를 사용하여 콘텐츠 이미지 영역 및 스타일 이미지 영역을 표시하고, 트레이닝 샘플
Figure pct00015
은 무감독 학습 환경 하에서 가장자리 분포
Figure pct00016
Figure pct00017
에서 추출한 것이다.
도 9a는 본 발명의 응용 실시예에서 콘텐츠 인코더의 잔차 블록의 구조 모식도로서, 도 9a에 도시된 BN은 BN층을 표시하고, ReLu는 ReLu층을 표시하며, Conv는 컨볼루션층을 표시하고, “
Figure pct00018
”는 합계를 구하는 동작을 표시하며; 콘텐츠 인코더의 각 하나의 잔차 블록 CRB의 구조는 기준 잔차 블록의 구조이고, 콘텐츠 인코더의 각 하나의 잔차 블록은 3개의 컨볼루션층을 포함하며, 그 중의 하나는 스킵 커넥션(skip connection)을 위한 것이다.
본 발명의 응용 실시예에서, 생성기 및 콘텐츠 인코더의 잔차 블록의 층수는 동일하고; 도 9b는 본 발명의 응용 실시예에서 생성기의 잔차 블록의 구조 모식도로서, 도 9b에 도시된 바와 같이 기준 잔차 블록의 기초상에서, FADE 모듈을 이용하여 BN층을 대체하여, 생성기의 각 한 층의 잔차 블록 GB의 구조를 얻으며; 도 9b에서, F1, F2 및 F3은 각각 제1 FADE 모듈, 제2 FADE 모듈 및 제3 FADE 모듈을 표시하고; 생성기의 각 하나의 잔차 블록에서, 각 하나의 FADE 모듈의 입력은 콘텐츠 인코더가 출력한 상응한 콘텐츠 특징맵을 포함하고, 도 9b를 참조하면, 생성기의 각 하나의 잔차 블록에서, 생성기의 각 하나의 잔차 블록의 3개 FADE 모듈에서, F1 및 F2의 입력은 제2 신경망의 이전 층 잔차 블록의 출력 특징을 더 포함하고, F3의 입력은 F1, ReLu층 및 컨볼루션층을 거쳐 순차적으로 처리되어 얻은 특징을 더 포함한다.
도 9c는 본 발명의 응용 실시예의 FADE 모듈의 구조 모식도로서, 도 9c에 도시된 바와 같이 점선 블록은 FADE 모듈 내의 구조를 표시하고, "
Figure pct00019
"는 곱셈 동작을 표시하며, "
Figure pct00020
"는 덧셈을 표시하고; Conv는 컨볼루션층을 표시하며, BN은 BN층을 표시하고
Figure pct00021
Figure pct00022
는 생성기의 각 하나의 잔차 블록의 변조 파라미터를 표시하며, 보다시피, FADE는 콘텐츠 특징맵을 입력으로 하여, 컨볼루션된 후의 특징으로부터 비정규화 파라미터(denormalization parameters)를 도출할 수 있다.
본 발명의 응용 실시예에서, 콘텐츠 인코더 및 생성기 연결 구조에 대한 정밀한 설계를 통해, 트레이닝된 신경망이 스타일 이미지의 제어 하에서 콘텐츠 이미지를 자기 적응적으로 전환하도록 한다.
한 가지 실시형태로서, 스타일 인코더는 가변 적응형 인코더(Variational Adaptive Encoder, VAE)에 기반하여 제기된 것이다. 스타일 인코더의 출력은 평균값 벡터(mean vector)
Figure pct00023
및 표준편차 벡터(standard deviation vector)
Figure pct00024
이고, 잠복 코드(latent code)z는 스타일 이미지에 대해 코딩한 후의 리샘플
Figure pct00025
으로부터 얻은 것이다.
샘플링 동작은 미분 불가능한 것이기에, 여기서, 재매개화 트릭(reparameterization trick)을 이용하여 미분 가능한 것으로 샘플링 전환할 수 있다.
Figure pct00026
을 균일하게 분포되고 z와 크기가 동일한 랜덤 벡터로 설정하고 여기서,
Figure pct00027
~
Figure pct00028
이고, 그러면 z는
Figure pct00029
로 재매개화될 수 있다. 이러한 동작을 통해, 우리는 후방 전파를 가진 스타일 인코더를 트레이닝할 수 있고, 전반적인 네트워크를 단대단 모델(end-to-end model)로 트레이닝한다.
본 발명의 응용 실시예에서, 전반적인 신경망의 각 부분을 공동으로 트레이닝할 수 있다. 신경망의 트레이닝에 대해, 최대 최소 전략을 최적화하는 기초 상에서, 공식 (3)을 참조하여 전반적인 제1 신경망의 손실 함수를 산출하여, 제1 신경망에 대한 트레이닝을 구현한다.
Figure pct00030
(3)
여기서, G는 생성기를 표시하고, D는 감별기를 표시하며,
Figure pct00031
는 스타일 손실을 표시하고, 예시적으로, 스타일 손실은 KL 발산(Kullback-Leibler divergence)의 손실일 수 있으며;
Figure pct00032
은 공식 (4)에 따라 산출할 수 있다.
Figure pct00033
(4)
여기서,
Figure pct00034
은 KL 발산을 표시하고,
Figure pct00035
Figure pct00036
중의 슈퍼 파라미터를 표시한다.
Figure pct00037
은 생성적 적대 네트워크 손실을 표시하고, 이는 생성기 및 감별기의 적대 트레이닝을 위한 것으로;
Figure pct00038
은 공식 (5)에 따라 산출할 수 있다.
Figure pct00039
(5)
여기서,
Figure pct00040
Figure pct00041
는 수학적인 기대값을 표시하고,
Figure pct00042
는 판별기를 표시하며,
Figure pct00043
는 생성기를 표시하고,
Figure pct00044
는 인코더를 표시하며,
Figure pct00045
Figure pct00046
중의 슈퍼 파라미터를 표시한다.
Figure pct00047
는 콘텐츠 손실을 표시하고, 예시적으로, 콘텐츠 손실은 VGG(Visual Geometry Group) 손실일 수 있다.
Figure pct00048
는 공식 (6)에 따라 산출할 수 있다.
Figure pct00049
여기서,
Figure pct00050
는 총 M층에서 선택한 제m 층의 활성화 지도(activation map)를 표시하고,
Figure pct00051
Figure pct00052
의 원소 개수를 표시하며,
Figure pct00053
Figure pct00054
Figure pct00055
에서 상응한 슈퍼 파라미터이고,
Figure pct00056
는 생성기로써 얻은 출력 이미지를 표시하며,
Figure pct00057
,
Figure pct00058
은 1-정규수를 표시한다.
Figure pct00059
는 특징 매칭 손실을 표시하고
Figure pct00060
은 공식 (7)에 따라 산출할 수 있다.
Figure pct00061
여기서,
Figure pct00062
는 감별기 제i 층의 제k개 척도(멀티 척도 감별기는 k개의 상이한 척도를 구비함)를 표시하고,
Figure pct00063
는 감별기 제i 층에서 원소의 총수를 표시하며, Q는 층수를 표시하고
Figure pct00064
는 상기 모든 손실 함수에서, 모두 상응한 가중치이다. VGG 손실은 상이한 층에서 상이한 가중치를 구비한다.
본 발명의 응용 실시예에서, 제1 신경망은 멀티 척도 감별기에 기반하여 트레이닝될 수 있고, 상이한 척도의 각 하나의 감별기는 완전히 동일한 구조를 구비하며; 가장 거친 척도의 감별기는 가장 큰 수용야를 구비하고 비교적 높은 수용야를 이용하여, 감별기는 비교적 높은 해상도의 이미지를 구분할 수 있다.
본 기술분야의 통상의 기술자는 이해할 수 있는 바, 구체적인 실시형태의 상기 방법에서, 각 단계의 작성 순서는 엄격한 수행 순서를 의미하는 것이 아니고, 실시 과정에 대한 임의의 한정도 아니며, 각 단계의 구체적인 수행 순서는 반드시 그 공능 및 가능한 내재적인 논리에 따라 결정되어야 한다.
전술한 실시예에서 제기된 이미지 생성 방법의 기초 상에서, 본 발명의 실시예는 한 가지 이미지 생성 장치를 제출한다. 도 10은 본 발명의 실시예에 따른 이미지 생성 장치의 구성 구조 모식도이고, 도 10에 도시된 상기 장치는, 제1 추출 모듈(1001), 제2 추출 모듈(1002) 및 제1 처리 모듈(1003)을 포함하고, 여기서,
상기 제1 추출 모듈(1001)은 제1 신경망에서 순차적으로 연결된 다층 제1 네트워크 유닛 블록을 이용하여 콘텐츠 이미지의 콘텐츠 특징을 추출하여, 각 층의 제1 네트워크 유닛 블록이 각각 출력한 콘텐츠 특징을 얻고;
상기 제2 추출 모듈(1002)은 스타일 이미지의 스타일 특징을 추출하며;
상기 제1 처리 모듈(1003)은 기 각 층의 제1 네트워크 유닛 블록이 각각 출력한 콘텐츠 특징을 제2 신경망에서 순차적으로 연결된 다층 제2 네트워크 유닛 블록에 대응되게 피드포워드 입력하고, 상기 스타일 특징을 상기 다층 제2 네트워크 유닛 블록 중의 첫 번째 층 제2 네트워크 유닛 블록으로부터 피드포워드 입력하며, 각 상기 제2 네트워크 유닛 블록이 각자에 입력된 특징을 처리한 후 상기 제2 신경망이 출력한 생성 이미지를 얻고, 여기서, 상기 다층 제1 네트워크 유닛 블록과 상기 다층 제2 네트워크 유닛 블록은 대응된다.
선택 가능하게, 상기 제1 처리 모듈(1003)은 i가 순차적으로 1 내지 T인 경우에 응답하여, 제i 층 제1 네트워크 유닛 블록이 출력한 콘텐츠 특징을 제T-i+1 층 제2 네트워크 유닛 블록에 피드포워드 입력하며, i는 양의 정수이고, T는 상기 제1 신경망의 제1 네트워크 유닛 블록 및 상기 제2 신경망의 제2 네트워크 유닛 블록의 층수를 표시한다.
선택 가능하게, 각 상기 제2 네트워크 유닛 블록 중의 첫 번째 층 제2 네트워크 유닛 블록은 마지막 층 제1 네트워크 유닛 블록으로부터 얻은 콘텐츠 특징 및 상기 스타일 특징을 곱셈 연산하여, 상기 첫 번째 층 제2 네트워크 유닛 블록의 중간 특징을 얻고; 상기 마지막 층 제1 네트워크 유닛 블록으로부터 얻은 콘텐츠 특징과 상기 첫 번째 층 제2 네트워크 유닛 블록의 중간 특징을 덧셈 연산하여, 상기 첫 번째 층 제2 네트워크 유닛 블록의 출력 특징을 얻으며; 상기 첫 번째 층 제2 네트워크 유닛 블록의 출력 특징을 두 번째 층 제2 네트워크 유닛 블록에 입력한다.
선택 가능하게, 상기 첫 번째 층 제2 네트워크 유닛 블록은 또한, 마지막 층 제1 네트워크 유닛 블록으로부터 얻은 콘텐츠 특징 및 상기 스타일 특징을 곱셈 연산하기 전에, 상기 마지막 층 제1 네트워크 유닛 블록으로부터 얻은 콘텐츠 특징에 대해 컨볼루션 연산을 진행한다.
선택 가능하게, 각 상기 제2 네트워크 유닛 블록 중의 중간층 제2 네트워크 유닛 블록은, 입력된 콘텐츠 특징 및 이전 층 제2 네트워크 유닛 블록의 출력 특징을 곱셈 연산하여, 상기 중간층 제2 네트워크 유닛 블록의 중간 특징을 얻고; 상기 입력된 콘텐츠 특징과 상기 중간층 제2 네트워크 유닛 블록의 중간 특징을 덧셈 연산하여, 상기 중간층 제2 네트워크 유닛 블록의 출력 특징을 얻으며; 상기 중간층 제2 네트워크 유닛 블록의 출력 특징을 다음 층 제2 네트워크 유닛 블록에 입력한다.
선택 가능하게, 상기 중간층 제2 네트워크 유닛 블록은 또한, 상기 입력된 콘텐츠 특징 및 이전 층 제2 네트워크 유닛 블록의 출력 특징을 곱셈 연산하기 전에, 수신된 상기 콘텐츠 특징을 컨볼루션 연산한다.
선택 가능하게, 각 상기 제2 네트워크 유닛 블록 중의 마지막 층 제2 네트워크 유닛 블록은, 첫 번째 층 제1 네트워크 유닛 블록으로부터 얻은 콘텐츠 특징 및 이전 층 제2 네트워크 유닛 블록으로부터 얻은 출력 특징을 곱셈 연산하여, 상기 마지막 층 제2 네트워크 유닛 블록의 중간 특징을 얻고; 상기 첫 번째 층 제1 네트워크 유닛 블록으로부터 얻은 콘텐츠 특징과 상기 마지막 층 제2 네트워크 유닛 블록으로부터 얻은 중간 특징을 덧셈 연산하여, 상기 생성 이미지를 얻는다.
선택 가능하게, 상기 마지막 층 제2 네트워크 유닛 블록은, 상기 첫 번째 층 제1 네트워크 유닛 블록으로부터 얻은 콘텐츠 특징 및 이전 층 제2 네트워크 유닛 블록으로부터 얻은 출력 특징을 곱셈 연산하기 전에, 상기 첫 번째 층 제1 네트워크 유닛 블록으로부터 얻은 콘텐츠 특징을 컨볼루션 연산한다.
선택 가능하게, 상기 제2 추출 모듈(1002)은 상기 스타일 이미지 분포의 특징을 추출하고; 상기 스타일 이미지 분포의 특징을 샘플링하여, 상기 스타일 특징을 얻으며, 상기 스타일 특징은 상기 스타일 이미지 분포의 특징의 평균값 및 표준편차를 포함한다.
선택 가능하게, 상기 제1 네트워크 유닛 블록은, 상기 제1 네트워크 유닛 블록에서 잔차 구조로 구성된 복수의 신경망 층에 기반하여 콘텐츠 이미지의 콘텐츠 특징을 추출하고; 및/또는, 상기 제2 네트워크 유닛 블록은, 상기 제2 네트워크 유닛 블록에서 잔차 구조로 구성된 복수의 신경망 층에 기반하여 상기 제2 네트워크 유닛에 입력된 특징을 처리한다.
실제 응용에서, 제1 추출 모듈(1001), 제2 추출 모듈(1002) 및 제1 처리 모듈(1003)은 모두 프로세서로서 구현될 수 있고, 상기 프로세서는 ASIC, DSP, DSPD, PLD, FPGA, CPU, 컨트롤러, 마이크로 컨트롤러, 마이크로 프로세서 중의 적어도 한 가지일 수 있다.
이 밖에, 본 실시예 각 기능 모듈은 하나의 처리 유닛에 집적될 수 있고, 각 유닛에 단독으로 물리적으로 존재할 수도 있으며, 두 개 또는 두 개 이상의 유닛이 하나의 유닛에 집적될 수도 있다. 상기 집적된 유닛은 하드웨어의 형식으로 구현될 수 있고 소프트웨어 기능 모듈의 형식으로 구현될 수도 있다.
상기 집적된 유닛이 소프트웨어 기능 모듈의 실시형태로 구현되고 독립된 제품으로 판매 또는 사용되지 않을 경우, 컴퓨터 판독 가능 저장 매체에 저장될 수 있으며, 이러한 이해에 기반하여, 본 실시예의 기술적 해결수단은 본질 상에서 또는 선행기술에서 공헌한 부분 또는 상기 기술적 해결수단의 전부 또는 일부분이 소프트웨어 제품의 형식으로 구현될 수 있고, 상기 컴퓨터 소프트웨어 제품은 하나의 저장 매체에 저장되며, 소정의 명령을 포함하여 하나의 컴퓨터 기기(컴퓨터, 서버, 또는 네트워크 기기 등일 수 있음) 또는 프로세서(processor)가 본 실시예의 상기 방법의 전부 또는 일부 단계를 구행하도록 한다. 전술한 저장 매체는 USB, 이동식 하드디스크, 판독 전용 메모리(Read Only Memory, ROM), 랜덤 액세스 메모리(Random Access Memory, RAM), 자기 디스크 또는 CD 등 여러 가지 프로그램 코드를 저장한 매체를 포함한다.
구체적으로 말하자면, 본 실시예 중의 한 가지 이미지 생성 방법 또는 신경망 트레이닝 방법에 대응되는 컴퓨터 프로그램 명령은 CD, 하드 디스크, USB 등 저장 매체에 저장될 수 있고, 한 가지 이미지 생성 방법 또는 신경망 트레이닝 방법과 대응되는 저장 매체 중의 컴퓨터 프로그램 명령이 전자 기기에 의해 판독 또는 수행될 경우, 전술한 실시예의 임의의 한 가지 이미지 생성 방법 또는 임의의 한 가지 신경망 트레이닝 방법을 구현한다.
전술한 실시예와 동일한 기술 사상에 기반하여, 도 11을 참조하면, 본 발명의 실시예에서 제공하는 한 가지 전자 기기(11)를 도시하였고, 전자 기기(11)는 메모리(111) 및 프로세서(112)를 포함하며; 여기서, 상기 메모리(111)는 컴퓨터 프로그램을 저장하고; 상기 프로세서(112)는 상기 메모리에 저장된 컴퓨터 프로그램을 수행하여, 전술한 실시예의 임의의 한 가지 이미지 생성 방법 또는 임의의 한 가지 신경망 트레이닝 방법을 구현한다.
전자 기기(11) 중의 각 컴포넌트는 버스 시스템을 통해 커플링된다. 이해할 수 있는 바, 버스 시스템은 이러한 컴포넌트 사이의 연결 통신을 구현하기 위한 것이다. 버스 시스템은 데이터 버스를 포함하는 외에도, 전원 버스, 제어 버스, 상태 신호 버스를 더 포함한다. 분명한 설명을 위해, 도 11에서 여러 가지 버스를 모두 버스 시스템으로 표시하였다.
실제 응용에서, 상기 메모리(111)는 예를 들면 RAM과 같은 휘발성 메모리(volatile memory), 또는 예를 들면 ROM, 플래시 메모리(flash memory), 하드 디스크(Hard Disk Drive, HDD)또는 솔리드 스테이트 하드 디스크(Solid-State Drive, SSD)와 같은 비휘발성 메모리(non-volatile memory); 또는 상기 종류의 메모리의 조합일 수 있으며, 프로세서(112)에 명령 및 데이터를 송신한다.
상기 프로세서(112)는 ASIC, DSP, DSPD, PLD, FPGA, CPU, 컨트롤러, 마이크로 컨트롤러, 마이크로 프로세서 중의 적어도 한 가지일 수 있다. 이해할 수 있는 바, 상이한 기기에 대해 상기 프로세서 기능을 구현하는 전자 소자는 다를 수 있으며, 본 발명의 실시예는 구체적으로 한정하지 않는다.
도 12는 본 발명의 실시예에 따른 신경망 트레이닝 장치의 구성 구조 모식도이고, 도 12에 도시된 상기 장치는, 제3 추출 모듈(1201), 제4 추출 모듈(1202), 제2 처리 모듈(1203) 및 조절 모듈(1204)을 포함하고; 여기서,
상기 제3 추출 모듈(1201)은 제1 신경망에서 순차적으로 연결된 다층 제1 네트워크 유닛 블록을 이용하여 콘텐츠 이미지의 콘텐츠 특징을 추출하여, 각 층의 제1 네트워크 유닛 블록이 각각 출력한 콘텐츠 특징을 얻고;
상기 제4 추출 모듈(1202)은 스타일 이미지의 스타일 특징을 추출하며;
상기 제2 처리 모듈(1203)은 상기 각 층의 제1 네트워크 유닛 블록이 각각 출력한 콘텐츠 특징을 제2 신경망에서 순차적으로 연결된 다층 제2 네트워크 유닛 블록에 대응되게 피드포워드 입력하고, 상기 스타일 특징을 상기 다층 제2 네트워크 유닛 블록 중의 첫 번째 층 제2 네트워크 유닛 블록으로부터 피드포워드 입력하며, 각 상기 제2 네트워크 유닛 블록이 각자에 입력된 특징을 처리한 후 상기 제2 신경망이 출력한 생성 이미지를 얻고; 상기 생성 이미지를 감별하여, 감별 결과를 얻으며; 여기서, 상기 다층 제1 네트워크 유닛 블록과 상기 다층 제2 네트워크 유닛 블록은 대응되고;
상기 조절 모듈(1204)은 상기 콘텐츠 이미지, 상기 스타일 이미지, 상기 생성 이미지 및 상기 감별 결과에 따라, 상기 제1 신경망 및 상기 제2 신경망 중 적어도 하나의 네트워크 파라미터를 조절한다.
선택 가능하게, 상기 제2 처리 모듈(1203)은 i가 순차적으로 1 내지 T인 경우에 응답하여, 제i 층 제1 네트워크 유닛 블록이 출력한 콘텐츠 특징을 제T-i+1 층 제2 네트워크 유닛 블록에 피드포워드 입력하며, i는 양의 정수이고, T는 상기 제1 신경망의 제1 네트워크 유닛 블록 및 상기 제2 신경망의 제2 네트워크 유닛 블록의 층수를 표시한다.
선택 가능하게, 각 상기 제2 네트워크 유닛 블록 중의 첫 번째 층 제2 네트워크 유닛 블록은, 마지막 층 제1 네트워크 유닛 블록으로부터 얻은 콘텐츠 특징 및 상기 스타일 특징을 곱셈 연산하여, 상기 첫 번째 층 제2 네트워크 유닛 블록의 중간 특징을 얻고; 상기 마지막 층 제1 네트워크 유닛 블록으로부터 얻은 콘텐츠 특징과 상기 첫 번째 층 제2 네트워크 유닛 블록의 중간 특징을 덧셈 연산하여, 상기 첫 번째 층 제2 네트워크 유닛 블록의 출력 특징을 얻으며; 상기 첫 번째 층 제2 네트워크 유닛 블록의 출력 특징을 두 번째 층 제2 네트워크 유닛 블록에 입력한다.
선택 가능하게, 상기 첫 번째 층 제2 네트워크 유닛 블록은 또한, 마지막 층 제1 네트워크 유닛 블록으로부터 얻은 콘텐츠 특징 및 상기 스타일 특징을 곱셈 연산하기 전에, 상기 마지막 층 제1 네트워크 유닛 블록으로부터 얻은 콘텐츠 특징에 대해 컨볼루션 연산을 진행한다.
선택 가능하게, 각 상기 제2 네트워크 유닛 블록 중의 중간층 제2 네트워크 유닛 블록은, 입력된 콘텐츠 특징 및 이전 층 제2 네트워크 유닛 블록의 출력 특징을 곱셈 연산하여, 상기 중간층 제2 네트워크 유닛 블록의 중간 특징을 얻고; 상기 입력된 콘텐츠 특징과 상기 중간층 제2 네트워크 유닛 블록의 중간 특징을 덧셈 연산하여, 상기 중간층 제2 네트워크 유닛 블록의 출력 특징을 얻으며; 상기 중간층 제2 네트워크 유닛 블록의 출력 특징을 다음 층 제2 네트워크 유닛 블록에 입력한다.
선택 가능하게, 상기 중간층 제2 네트워크 유닛 블록은 또한, 상기 입력된 콘텐츠 특징 및 이전 층 제2 네트워크 유닛 블록의 출력 특징을 곱셈 연산하기 전에, 수신된 상기 콘텐츠 특징을 컨볼루션 연산한다.
선택 가능하게, 각 상기 제2 네트워크 유닛 블록 중의 마지막 층 제2 네트워크 유닛 블록은, 첫 번째 층 제1 네트워크 유닛 블록으로부터 얻은 콘텐츠 특징 및 이전 층 제2 네트워크 유닛 블록으로부터 얻은 출력 특징을 곱셈 연산하여, 상기 마지막 층 제2 네트워크 유닛 블록의 중간 특징을 얻고; 상기 첫 번째 층 제1 네트워크 유닛 블록으로부터 얻은 콘텐츠 특징과 상기 마지막 층 제2 네트워크 유닛 블록으로부터 얻은 중간 특징을 덧셈 연산하여, 상기 생성 이미지를 얻는다.
선택 가능하게, 상기 마지막 층 제2 네트워크 유닛 블록은 또한, 상기 첫 번째 층 제1 네트워크 유닛 블록으로부터 얻은 콘텐츠 특징 및 이전 층 제2 네트워크 유닛 블록으로부터 얻은 출력 특징을 곱셈 연산하기 전에, 상기 첫 번째 층 제1 네트워크 유닛 블록으로부터 얻은 콘텐츠 특징을 컨볼루션 연산한다.
선택 가능하게, 상기 조절 모듈(1204)은 상기 곱셈 연산 파라미터 및 덧셈 연산 파라미터 중 적어도 하나를 조절한다.
선택 가능하게, 상기 조절 모듈(1204)은 상기 콘텐츠 이미지, 상기 스타일 이미지, 상기 생성 이미지 및 상기 감별 결과에 따라, 생성적 적대 네트워크 손실을 결정하고; 상기 생성적 적대 네트워크 손실이 제1 기설정 조건을 만족하지 않는 경우에 응답하여, 상기 생성적 적대 네트워크 손실에 따라, 상기 제1 신경망 및 상기 제2 신경망 중 적어도 하나의 네트워크 파라미터를 조절하며; 여기서, 상기 생성적 적대 네트워크 손실은 상기 생성 이미지와 상기 콘텐츠 이미지의 콘텐츠 특징 차이, 및 상기 생성 이미지와 상기 스타일 이미지의 스타일 특징 차이를 특성화한다.
선택 가능하게, 상기 조절 모듈(1204)은 상기 생성 이미지와 상기 스타일 이미지에 따라, 스타일 손실을 결정하고; 상기 스타일 손실이 제2 기설정 조건을 만족하지 않는 경우에 응답하여, 상기 스타일 손실에 따라, 상기 제1 신경망 및 상기 제2 신경망 중 적어도 하나의 네트워크 파라미터를 조절하며; 여기서, 상기 스타일 손실은 상기 생성 이미지와 상기 스타일 이미지의 스타일 특징의 차이를 특성화한다.
선택 가능하게, 상기 조절 모듈(1204)은 또한 상기 생성 이미지와 상기 콘텐츠 이미지에 따라, 콘텐츠 손실을 결정하고; 상기 콘텐츠 손실이 제3 기설정 조건을 만족하지 않는 경우에 응답하여, 상기 콘텐츠 손실에 따라, 상기 제1 신경망 및 상기 제2 신경망 중 적어도 하나의 네트워크 파라미터를 조절하며; 여기서, 상기 콘텐츠 손실은 상기 생성 이미지와 상기 콘텐츠 이미지의 콘텐츠 특징 차이를 특성화한다.
선택 가능하게, 상기 조절 모듈(1204)은 또한 각 상기 제2 네트워크 유닛 블록 중의 각 중간층 제2 네트워크 유닛 블록의 출력 특징, 및 스타일 이미지에 따라, 특징 매칭 손실을 결정하고; 상기 특징 매칭 손실이 제4 기설정 조건을 만족하지 않는 경우에 응답하여, 상기 특징 매칭 손실에 따라, 상기 제1 신경망 및 상기 제2 신경망 중 적어도 하나의 네트워크 파라미터를 조절하며; 여기서, 상기 특징 매칭 손실은 상기 각 중간층 제2 네트워크 유닛 블록의 출력 특징과 상기 스타일 이미지의 스타일 특징의 차이를 특성화한다.
선택 가능하게, 상기 제4 추출 모듈(1202)은 상기 스타일 이미지 분포의 특징을 추출하고; 상기 스타일 이미지 분포의 특징을 샘플링하여, 상기 스타일 특징을 얻으며, 상기 스타일 특징은 상기 스타일 이미지 분포의 특징의 평균값 및 표준편차를 포함한다.
선택 가능하게, 상기 제1 네트워크 유닛 블록은, 상기 제1 네트워크 유닛 블록에서 잔차 구조로 구성된 복수의 신경망 층에 기반하여 콘텐츠 이미지의 콘텐츠 특징을 추출하고; 및/또는, 상기 제2 네트워크 유닛 블록은, 상기 제2 네트워크 유닛 블록에서 잔차 구조로 구성된 복수의 신경망 층에 기반하여 상기 제2 네트워크 유닛에 입력된 특징을 처리한다.
실제 응용에서, 상기 제3 추출 모듈(1201), 제4 추출 모듈(1202), 제2 처리 모듈(1203) 및 조절 모듈(1204)은 모두 프로세서로 구현될 수 있고, 상기 프로세서는 ASIC, DSP, DSPD, PLD, FPGA, CPU, 컨트롤러, 마이크로 컨트롤러, 마이크로 프로세서 중의 적어도 한 가지일 수 있다.
일부 실시예에서, 본 발명의 실시예에서 제공하는 장치가 구비하는 기능 또는 포함하는 모듈은 상기의 방법 실시예에서 서술되는 방법을 수행할 수 있고, 그 구체적인 구현은 상기의 방법 실시예의 서술을 참조 가능하며, 간결함을 위해 여기서 더 서술하지 않는다.
예시적인 실시예에서, 본 발명의 실시예는 한 가지 컴퓨터 저장 매체를 더 제공하였고, 예를 들면 컴퓨터 프로그램의 메모리(111)를 포함하며, 상기 컴퓨터 프로그램은 전자 기기(11)의 프로세서(112)로 실행되어, 전술한 방법의 상기 단계를 완료할 수 있다. 컴퓨터 판독 가능 저장 매체는 FRAM, ROM, PROM, EPROM, EEPROM, Flash Memory, 자기 표면 메모리, CD, 또는 CD-ROM 등 메모리를 포함할 수 있고; 상기 메모리 중의 하나 또는 임의의 조합을 포함하는, 모바일 폰, 컴퓨터, 태블릿 기기, 개인 정보 단말기 등과 같은 여러 가지 기기일 수도 있다.
본 발명의 실시예는 한 가지 컴퓨터 저장 매체를 제공하였고, 이에 컴퓨터 프로그램이 저장되며, 상기 컴퓨터 프로그램이 프로세서에 의해 수행될 경우 전술한 실시예의 임의의 한 가지 이미지 생성 방법 또는 임의의 한 가지 신경망 트레이닝 방법을 구현한다.
상기 각 실시예의 서술은 각 실시예 사이의 상이한 점을 강조하는 데 기울었으며, 그 동일하거나 유사한 곳은 상호 참조 가능하고, 간결함을 위해 본문에서 더 서술하지 않는다.
본 발명의 실시예에서 제공하는 각 방법 또는 제품 실시예에 공개된 특징은, 모순되지 않는 한 임의로 조합될 수 있고, 새로운 방법 실시예 또는 제품 실시예를 얻을 수 있다.
상기 실시형태의 서술을 통해, 본 기술분야의 통상의 기술자는 상기 실시예의 방법은 소프트웨어를 통해 필수적인 범용 하드웨어 플랫폼을 추가하는 방식을 통해 구현되며, 물론 하드웨어를 통할 수도 있지만 수많은 경우에 전자가 더욱 바람직한 실시형태이다. 이러한 이해에 기반하여, 본 발명의 기술적 해결수단은 본질 상에서 또는 선행기술에 공헌한 일부는 소프트웨어 제품의 형식으로 구현되고, 상기 컴퓨터 소프트웨어 제품은 하나의 저장 매체(예컨대 ROM/RAM, 자기 디스크, CD)에 저장되며, 소정의 명령을 포함하여 하나의 단말기(휴대폰, 컴퓨터, 서버, 에어컨, 또는 네트워크 기기 등일 수 있음)로 본 발명 각 실시예의 상기 방법을 수행한다.
이상에서 도면을 결부하여 본 발명의 실시예를 설명하였으나, 본 발명은 상술한 구체적인 실시형태에 제한되지 않고, 상술한 구체적인 실시형태는 예시적인 것일 뿐, 제한하기 위함이 아니며, 본 기술분야의 통상의 기술자는 본 발명의 시사하에 본 발명의 목적 및 특허청구범위의 보호범위를 벗어나지 않고 많은 변형을 진행할 수도 있으며, 이는 모두 본 발명의 보호범위 내에 포함된다.

Claims (52)

  1. 이미지 생성 방법으로서,
    제1 신경망에서 순차적으로 연결된 다층 제1 네트워크 유닛 블록을 이용하여 콘텐츠 이미지의 콘텐츠 특징을 추출하여, 각 층의 제1 네트워크 유닛 블록이 각각 출력한 콘텐츠 특징을 얻는 단계;
    스타일 이미지의 스타일 특징을 추출하는 단계;
    상기 각 층의 제1 네트워크 유닛 블록이 각각 출력한 콘텐츠 특징을 제2 신경망에서 순차적으로 연결된 다층 제2 네트워크 유닛 블록에 대응되게 피드포워드 입력하고, 상기 스타일 특징을 상기 다층 제2 네트워크 유닛 블록 중의 첫 번째 층 제2 네트워크 유닛 블록으로부터 피드포워드 입력하며, 각 상기 제2 네트워크 유닛 블록이 각자에 입력된 특징을 처리한 후 상기 제2 신경망이 출력한 생성 이미지를 얻는 단계를 포함하고, 상기 다층 제1 네트워크 유닛 블록과 상기 다층 제2 네트워크 유닛 블록은 대응되는 이미지 생성 방법.
  2. 제1항에 있어서,
    상기 각 층의 제1 네트워크 유닛 블록이 각각 출력한 콘텐츠 특징을 제2 신경망에서 순차적으로 연결된 다층 제2 네트워크 유닛 블록에 대응되게 피드포워드 입력하는 단계는,
    i가 순차적으로 1 내지 T인 경우에 응답하여, 제i 층 제1 네트워크 유닛 블록이 출력한 콘텐츠 특징을 제T-i+1 층 제2 네트워크 유닛 블록에 피드포워드 입력하는 단계를 포함하며,
    i는 양의 정수이고, T는 상기 제1 신경망의 제1 네트워크 유닛 블록 및 상기 제2 신경망의 제2 네트워크 유닛 블록의 층수를 표시하는 이미지 생성 방법.
  3. 제1항 또는 제2항에 있어서,
    각 상기 제2 네트워크 유닛 블록 중의 첫 번째 층 제2 네트워크 유닛 블록이 입력된 특징을 처리하는 단계는,
    마지막 층 제1 네트워크 유닛 블록으로부터 얻은 콘텐츠 특징 및 상기 스타일 특징을 곱셈 연산하여, 상기 첫 번째 층 제2 네트워크 유닛 블록의 중간 특징을 얻는 단계; 상기 마지막 층 제1 네트워크 유닛 블록으로부터 얻은 콘텐츠 특징과 상기 첫 번째 층 제2 네트워크 유닛 블록의 중간 특징을 덧셈 연산하여, 상기 첫 번째 층 제2 네트워크 유닛 블록의 출력 특징을 얻는 단계; 및 상기 첫 번째 층 제2 네트워크 유닛 블록의 출력 특징을 두 번째 층 제2 네트워크 유닛 블록에 입력하는 단계를 포함하는 이미지 생성 방법.
  4. 제3항에 있어서,
    상기 방법은,
    마지막 층 제1 네트워크 유닛 블록으로부터 얻은 콘텐츠 특징 및 상기 스타일 특징을 곱셈 연산하는 단계 전에, 상기 마지막 층 제1 네트워크 유닛 블록으로부터 얻은 콘텐츠 특징에 대해 컨볼루션 연산을 진행하는 단계를 더 포함하는 이미지 생성 방법.
  5. 제1항 내지 제4항 중 어느 한 항에 있어서,
    각 상기 제2 네트워크 유닛 블록 중의 중간층 제2 네트워크 유닛 블록이 입력된 특징을 처리하는 단계는,
    입력된 콘텐츠 특징 및 이전 층 제2 네트워크 유닛 블록의 출력 특징을 곱셈 연산하여, 상기 중간층 제2 네트워크 유닛 블록의 중간 특징을 얻는 단계; 상기 입력된 콘텐츠 특징과 상기 중간층 제2 네트워크 유닛 블록의 중간 특징을 덧셈 연산하여, 상기 중간층 제2 네트워크 유닛 블록의 출력 특징을 얻는 단계; 및 상기 중간층 제2 네트워크 유닛 블록의 출력 특징을 다음 층 제2 네트워크 유닛 블록에 입력하는 단계를 포함하는 이미지 생성 방법.
  6. 제5항에 있어서,
    상기 방법은,
    상기 입력된 콘텐츠 특징 및 이전 층 제2 네트워크 유닛 블록의 출력 특징을 곱셈 연산하는 단계 전에, 수신된 상기 콘텐츠 특징을 컨볼루션 연산하는 단계를 더 포함하는 이미지 생성 방법.
  7. 제1항 내지 제6항 중 어느 한 항에 있어서,
    각 상기 제2 네트워크 유닛 블록 중의 마지막 층 제2 네트워크 유닛 블록이 입력된 특징을 처리하는 단계는,
    첫 번째 층 제1 네트워크 유닛 블록으로부터 얻은 콘텐츠 특징 및 이전 층 제2 네트워크 유닛 블록으로부터 얻은 출력 특징을 곱셈 연산하여, 상기 마지막 층 제2 네트워크 유닛 블록의 중간 특징을 얻는 단계; 및 상기 첫 번째 층 제1 네트워크 유닛 블록으로부터 얻은 콘텐츠 특징과 상기 마지막 층 제2 네트워크 유닛 블록으로부터 얻은 중간 특징을 덧셈 연산하여, 상기 생성 이미지를 얻는 단계를 포함하는 이미지 생성 방법.
  8. 제7항에 있어서,
    상기 방법은,
    상기 첫 번째 층 제1 네트워크 유닛 블록으로부터 얻은 콘텐츠 특징 및 이전 층 제2 네트워크 유닛 블록으로부터 얻은 출력 특징을 곱셈 연산하는 단계 전에,
    상기 첫 번째 층 제1 네트워크 유닛 블록으로부터 얻은 콘텐츠 특징을 컨볼루션 연산하는 단계를 더 포함하는 이미지 생성 방법.
  9. 제1항 내지 제8항 중 어느 한 항에 있어서,
    상기 스타일 이미지의 스타일 특징을 추출하는 단계는,
    상기 스타일 이미지 분포의 특징을 추출하는 단계; 및
    상기 스타일 이미지 분포의 특징을 샘플링하여, 상기 스타일 특징을 얻는 단계를 포함하고,
    상기 스타일 특징은 상기 스타일 이미지 분포의 특징의 평균값 및 표준편차를 포함하는 이미지 생성 방법.
  10. 제1항 내지 제9항 중 어느 한 항에 있어서,
    상기 제1 네트워크 유닛 블록이 콘텐츠 이미지의 콘텐츠 특징을 추출하는 단계는, 상기 제1 네트워크 유닛 블록에서 잔차 구조로 구성된 복수의 신경망 층에 기반하여 콘텐츠 이미지의 콘텐츠 특징을 추출하는 단계를 포함하고;
    상기 제2 네트워크 유닛 블록이 입력된 특징을 처리하는 단계는, 상기 제2 네트워크 유닛 블록에서 잔차 구조로 구성된 복수의 신경망 층에 기반하여 상기 제2 네트워크 유닛 블록에 입력된 특징을 처리하는 단계를 포함하는 것 중 적어도 하나인 이미지 생성 방법.
  11. 신경망 트레이닝 방법으로서,
    제1 신경망에서 순차적으로 연결된 다층 제1 네트워크 유닛 블록을 이용하여 콘텐츠 이미지의 콘텐츠 특징을 추출하여, 각 층의 제1 네트워크 유닛 블록이 각각 출력한 콘텐츠 특징을 얻는 단계;
    스타일 이미지의 스타일 특징을 추출하는 단계;
    상기 각 층의 제1 네트워크 유닛 블록이 각각 출력한 콘텐츠 특징을 제2 신경망에서 순차적으로 연결된 다층 제2 네트워크 유닛 블록에 대응되게 피드포워드 입력하고, 상기 스타일 특징을 상기 다층 제2 네트워크 유닛 블록 중의 첫 번째 층 제2 네트워크 유닛 블록으로부터 피드포워드 입력하며, 각 상기 제2 네트워크 유닛 블록이 각자에 입력된 특징을 처리한 후 상기 제2 신경망이 출력한 생성 이미지를 얻는 단계 - 상기 다층 제1 네트워크 유닛 블록과 상기 다층 제2 네트워크 유닛 블록은 대응됨 - ;
    상기 생성 이미지를 감별하여, 감별 결과를 얻는 단계; 및
    상기 콘텐츠 이미지, 상기 스타일 이미지, 상기 생성 이미지 및 상기 감별 결과에 따라, 상기 제1 신경망 및 상기 제2 신경망 중 적어도 하나의 네트워크 파라미터를 조절하는 단계를 더 포함하는 신경망 트레이닝 방법.
  12. 제11항에 있어서,
    상기 각 층의 제1 네트워크 유닛 블록이 각각 출력한 콘텐츠 특징을 제2 신경망에서 순차적으로 연결된 다층 제2 네트워크 유닛 블록에 대응되게 피드포워드 입력하는 단계는,
    i가 순차적으로 1 내지 T인 경우에 응답하여, 제i 층 제1 네트워크 유닛 블록이 출력한 콘텐츠 특징을 제T-i+1 층 제2 네트워크 유닛 블록에 피드포워드 입력하는 단계를 포함하며,
    i는 양의 정수이고, T는 상기 제1 신경망의 제1 네트워크 유닛 블록 및 상기 제2 신경망의 제2 네트워크 유닛 블록의 층수를 표시하는 신경망 트레이닝 방법.
  13. 제11항 또는 제12항에 있어서,
    각 상기 제2 네트워크 유닛 블록 중의 첫 번째 층 제2 네트워크 유닛 블록이 입력된 특징을 처리하는 단계는,
    마지막 층 제1 네트워크 유닛 블록으로부터 얻은 콘텐츠 특징 및 상기 스타일 특징을 곱셈 연산하여, 상기 첫 번째 층 제2 네트워크 유닛 블록의 중간 특징을 얻는 단계;
    상기 마지막 층 제1 네트워크 유닛 블록으로부터 얻은 콘텐츠 특징과 상기 첫 번째 층 제2 네트워크 유닛 블록의 중간 특징을 덧셈 연산하여, 상기 첫 번째 층 제2 네트워크 유닛 블록의 출력 특징을 얻는 단계; 및
    상기 첫 번째 층 제2 네트워크 유닛 블록의 출력 특징을 두 번째 층 제2 네트워크 유닛 블록에 입력하는 단계를 포함하는 신경망 트레이닝 방법.
  14. 제13항에 있어서,
    상기 방법은,
    마지막 층 제1 네트워크 유닛 블록으로부터 얻은 콘텐츠 특징 및 상기 스타일 특징을 곱셈 연산하는 단계 전에, 상기 마지막 층 제1 네트워크 유닛 블록으로부터 얻은 콘텐츠 특징에 대해 컨볼루션 연산을 진행하는 단계를 더 포함하는 신경망 트레이닝 방법.
  15. 제11항 내지 제14항 중 어느 한 항에 있어서,
    각 상기 제2 네트워크 유닛 블록 중의 중간층 제2 네트워크 유닛 블록이 입력된 특징을 처리하는 단계는,
    입력된 콘텐츠 특징 및 이전 층 제2 네트워크 유닛 블록의 출력 특징을 곱셈 연산하여, 상기 중간층 제2 네트워크 유닛 블록의 중간 특징을 얻는 단계; 상기 입력된 콘텐츠 특징과 상기 중간층 제2 네트워크 유닛 블록의 중간 특징을 덧셈 연산하여, 상기 중간층 제2 네트워크 유닛 블록의 출력 특징을 얻는 단계; 및 상기 중간층 제2 네트워크 유닛 블록의 출력 특징을 다음 층 제2 네트워크 유닛 블록에 입력하는 단계를 포함하는 신경망 트레이닝 방법.
  16. 제15항에 있어서,
    상기 방법은,
    상기 입력된 콘텐츠 특징 및 이전 층 제2 네트워크 유닛 블록의 출력 특징을 곱셈 연산하는 단계 전에, 수신된 상기 콘텐츠 특징을 컨볼루션 연산하는 단계를 더 포함하는 신경망 트레이닝 방법.
  17. 제11항 내지 제16항 중 어느 한 항에 있어서,
    각 상기 제2 네트워크 유닛 블록 중의 마지막 층 제2 네트워크 유닛 블록이 입력된 특징을 처리하는 단계는,
    첫 번째 층 제1 네트워크 유닛 블록으로부터 얻은 콘텐츠 특징 및 이전 층 제2 네트워크 유닛 블록으로부터 얻은 출력 특징을 곱셈 연산하여, 상기 마지막 층 제2 네트워크 유닛 블록의 중간 특징을 얻는 단계; 상기 첫 번째 층 제1 네트워크 유닛 블록으로부터 얻은 콘텐츠 특징과 상기 마지막 층 제2 네트워크 유닛 블록으로부터 얻은 중간 특징을 덧셈 연산하여, 상기 생성 이미지를 얻는 단계를 포함하는 신경망 트레이닝 방법.
  18. 제17항에 있어서,
    상기 방법은,
    상기 첫 번째 층 제1 네트워크 유닛 블록으로부터 얻은 콘텐츠 특징 및 이전 층 제2 네트워크 유닛 블록으로부터 얻은 출력 특징을 곱셈 연산하는 단계 전에, 상기 첫 번째 층 제1 네트워크 유닛 블록으로부터 얻은 콘텐츠 특징을 컨볼루션 연산하는 단계를 더 포함하는 신경망 트레이닝 방법.
  19. 제13항 내지 제18항 중 어느 한 항에 있어서,
    상기 제2 신경망의 네트워크 파라미터를 조절하는 단계는,
    상기 곱셈 연산 파라미터 및 덧셈 연산 파라미터 중 적어도 하나를 조절하는 단계를 포함하는 신경망 트레이닝 방법.
  20. 제11항 내지 제19항 중 어느 한 항에 있어서,
    상기 콘텐츠 이미지, 상기 스타일 이미지, 상기 생성 이미지 및 상기 감별 결과에 따라, 상기 제1 신경망 및 상기 제2 신경망 중 적어도 하나의 네트워크 파라미터를 조절하는 단계는,
    상기 콘텐츠 이미지, 상기 스타일 이미지, 상기 생성 이미지 및 상기 감별 결과에 따라, 생성적 적대 네트워크 손실을 결정하는 단계; 및
    상기 생성적 적대 네트워크 손실이 제1 기설정 조건을 만족하지 않는 경우에 응답하여, 상기 생성적 적대 네트워크 손실에 따라, 상기 제1 신경망 및 상기 제2 신경망 중 적어도 하나의 네트워크 파라미터를 조절하는 단계를 포함하고;
    상기 생성적 적대 네트워크 손실은 상기 생성 이미지와 상기 콘텐츠 이미지의 콘텐츠 특징 차이, 및 상기 생성 이미지와 상기 스타일 이미지의 스타일 특징 차이를 특성화하는 신경망 트레이닝 방법.
  21. 제20항에 있어서,
    상기 콘텐츠 이미지, 상기 스타일 이미지, 상기 생성 이미지 및 상기 감별 결과에 따라, 상기 제1 신경망 및 상기 제2 신경망 중 적어도 하나의 네트워크 파라미터를 조절하는 단계는,
    상기 생성 이미지와 상기 스타일 이미지에 따라, 스타일 손실을 결정하는 단계; 및
    상기 스타일 손실이 제2 기설정 조건을 만족하지 않는 경우에 응답하여, 상기 스타일 손실에 따라, 상기 제1 신경망 및 상기 제2 신경망 중 적어도 하나의 네트워크 파라미터를 조절하는 단계를 더 포함하고;
    상기 스타일 손실은 상기 생성 이미지와 상기 스타일 이미지의 스타일 특징의 차이를 특성화하는 신경망 트레이닝 방법.
  22. 제20항 또는 제21항에 있어서,
    상기 콘텐츠 이미지, 상기 스타일 이미지, 상기 생성 이미지 및 상기 감별 결과에 따라, 상기 제1 신경망 및 상기 제2 신경망 중 적어도 하나의 네트워크 파라미터를 조절하는 단계는,
    상기 생성 이미지와 상기 콘텐츠 이미지에 따라, 콘텐츠 손실을 결정하는 단계; 및
    상기 콘텐츠 손실이 제3 기설정 조건을 만족하지 않는 경우에 응답하여, 상기 콘텐츠 손실에 따라, 상기 제1 신경망 및 상기 제2 신경망 중 적어도 하나의 네트워크 파라미터를 조절하는 단계를 더 포함하고;
    상기 콘텐츠 손실은 상기 생성 이미지와 상기 콘텐츠 이미지의 콘텐츠 특징 차이를 특성화하는 신경망 트레이닝 방법.
  23. 제20항 내지 제22항 중 어느 한 항에 있어서,
    상기 콘텐츠 이미지, 상기 스타일 이미지, 상기 생성 이미지 및 상기 감별 결과에 따라, 상기 제1 신경망 및 상기 제2 신경망 중 적어도 하나의 네트워크 파라미터를 조절하는 단계는,
    각 상기 제2 네트워크 유닛 블록 중의 각 중간층 제2 네트워크 유닛 블록의 출력 특징, 및 스타일 이미지에 따라, 특징 매칭 손실을 결정하는 단계; 및
    상기 특징 매칭 손실이 제4 기설정 조건을 만족하지 않는 경우에 응답하여, 상기 특징 매칭 손실에 따라, 상기 제1 신경망 및 상기 제2 신경망 중 적어도 하나의 네트워크 파라미터를 조절하는 단계를 더 포함하고;
    상기 특징 매칭 손실은 상기 각 중간층 제2 네트워크 유닛 블록의 출력 특징과 상기 스타일 이미지의 스타일 특징의 차이를 특성화하는 신경망 트레이닝 방법.
  24. 제11항 내지 제23항 중 어느 한 항에 있어서,
    상기 스타일 이미지의 스타일 특징을 추출하는 단계는,
    상기 스타일 이미지 분포의 특징을 추출하는 단계; 및
    상기 스타일 이미지 분포의 특징을 샘플링하여, 상기 스타일 특징을 얻는 단계를 포함하고,
    상기 스타일 특징은 상기 스타일 이미지 분포의 특징의 평균값 및 표준편차를 포함하는 신경망 트레이닝 방법.
  25. 제11항 내지 제24항 중 어느 한 항에 있어서,
    상기 제1 네트워크 유닛 블록이 콘텐츠 이미지의 콘텐츠 특징을 추출하는 단계는, 상기 제1 네트워크 유닛 블록에서 잔차 구조로 구성된 복수의 신경망 층에 기반하여 콘텐츠 이미지의 콘텐츠 특징을 추출하는 단계를 포함하는 것; 및
    상기 제2 네트워크 유닛 블록이 입력된 특징을 처리하는 단계는, 상기 제2 네트워크 유닛 블록에서 잔차 구조로 구성된 복수의 신경망 층에 기반하여 상기 제2 네트워크 유닛에 입력된 특징을 처리하는 단계를 포함하는 것; 중 적어도 하나인 것인 신경망 트레이닝 방법.
  26. 제1 추출 모듈, 제2 추출 모듈 및 제1 처리 모듈을 포함하는 이미지 생성 장치로서,
    제1 추출 모듈은, 제1 신경망에서 순차적으로 연결된 다층 제1 네트워크 유닛 블록을 이용하여 콘텐츠 이미지의 콘텐츠 특징을 추출하여, 각 층의 제1 네트워크 유닛 블록이 각각 출력한 콘텐츠 특징을 얻고;
    제2 추출 모듈은, 스타일 이미지의 스타일 특징을 추출하며;
    제1 처리 모듈은, 상기 각 층의 제1 네트워크 유닛 블록이 각각 출력한 콘텐츠 특징을 제2 신경망에서 순차적으로 연결된 다층 제2 네트워크 유닛 블록에 대응되게 피드포워드 입력하고, 상기 스타일 특징을 상기 다층 제2 네트워크 유닛 블록 중의 첫 번째 층 제2 네트워크 유닛 블록으로부터 피드포워드 입력하며, 각 상기 제2 네트워크 유닛 블록이 각자에 입력된 특징을 처리한 후 상기 제2 신경망이 출력한 생성 이미지를 얻고, 상기 다층 제1 네트워크 유닛 블록과 상기 다층 제2 네트워크 유닛 블록은 대응되는 이미지 생성 장치.
  27. 제26항에 있어서,
    상기 제1 처리 모듈은, i가 순차적으로 1 내지 T인 경우에 응답하여, 제i 층 제1 네트워크 유닛 블록이 출력한 콘텐츠 특징을 제T-i+1 층 제2 네트워크 유닛 블록에 피드포워드 입력하며, i는 양의 정수이고, T는 상기 제1 신경망의 제1 네트워크 유닛 블록 및 상기 제2 신경망의 제2 네트워크 유닛 블록의 층수를 표시하는 이미지 생성 장치.
  28. 제26항 또는 제27항에 있어서,
    각 상기 제2 네트워크 유닛 블록 중의 첫 번째 층 제2 네트워크 유닛 블록은, 마지막 층 제1 네트워크 유닛 블록으로부터 얻은 콘텐츠 특징 및 상기 스타일 특징을 곱셈 연산하여, 상기 첫 번째 층 제2 네트워크 유닛 블록의 중간 특징을 얻고; 상기 마지막 층 제1 네트워크 유닛 블록으로부터 얻은 콘텐츠 특징과 상기 첫 번째 층 제2 네트워크 유닛 블록의 중간 특징을 덧셈 연산하여, 상기 첫 번째 층 제2 네트워크 유닛 블록의 출력 특징을 얻으며; 상기 첫 번째 층 제2 네트워크 유닛 블록의 출력 특징을 두 번째 층 제2 네트워크 유닛 블록에 입력하는 이미지 생성 장치.
  29. 제28항에 있어서,
    상기 첫 번째 층 제2 네트워크 유닛 블록은 또한, 마지막 층 제1 네트워크 유닛 블록으로부터 얻은 콘텐츠 특징 및 상기 스타일 특징을 곱셈 연산하기 전에, 상기 마지막 층 제1 네트워크 유닛 블록으로부터 얻은 콘텐츠 특징에 대해 컨볼루션 연산을 진행하는 이미지 생성 장치.
  30. 제26항 내지 제29항 중 어느 한 항에 있어서,
    각 상기 제2 네트워크 유닛 블록 중의 중간층 제2 네트워크 유닛 블록은, 입력된 콘텐츠 특징 및 이전 층 제2 네트워크 유닛 블록의 출력 특징을 곱셈 연산하여, 상기 중간층 제2 네트워크 유닛 블록의 중간 특징을 얻고; 상기 입력된 콘텐츠 특징과 상기 중간층 제2 네트워크 유닛 블록의 중간 특징을 덧셈 연산하여, 상기 중간층 제2 네트워크 유닛 블록의 출력 특징을 얻으며; 상기 중간층 제2 네트워크 유닛 블록의 출력 특징을 다음 층 제2 네트워크 유닛 블록에 입력하는 이미지 생성 장치.
  31. 제30항에 있어서,
    상기 중간층 제2 네트워크 유닛 블록은 또한, 상기 입력된 콘텐츠 특징 및 이전 층 제2 네트워크 유닛 블록의 출력 특징을 곱셈 연산하기 전에, 수신된 상기 콘텐츠 특징을 컨볼루션 연산하는 이미지 생성 장치.
  32. 제26항 내지 제31항 중 어느 한 항에 있어서,
    각 상기 제2 네트워크 유닛 블록 중의 마지막 층 제2 네트워크 유닛 블록은, 첫 번째 층 제1 네트워크 유닛 블록으로부터 얻은 콘텐츠 특징 및 이전 층 제2 네트워크 유닛 블록으로부터 얻은 출력 특징을 곱셈 연산하여, 상기 마지막 층 제2 네트워크 유닛 블록의 중간 특징을 얻고; 상기 첫 번째 층 제1 네트워크 유닛 블록으로부터 얻은 콘텐츠 특징과 상기 마지막 층 제2 네트워크 유닛 블록으로부터 얻은 중간 특징을 덧셈 연산하여, 상기 생성 이미지를 얻는 이미지 생성 장치.
  33. 제32항에 있어서,
    상기 마지막 층 제2 네트워크 유닛 블록은, 상기 첫 번째 층 제1 네트워크 유닛 블록으로부터 얻은 콘텐츠 특징 및 이전 층 제2 네트워크 유닛 블록으로부터 얻은 출력 특징을 곱셈 연산하기 전에, 상기 첫 번째 층 제1 네트워크 유닛 블록으로부터 얻은 콘텐츠 특징을 컨볼루션 연산하는 이미지 생성 장치.
  34. 제26항 내지 제33항 중 어느 한 항에 있어서,
    상기 제2 추출 모듈은, 상기 스타일 이미지 분포의 특징을 추출하고; 상기 스타일 이미지 분포의 특징을 샘플링하여, 상기 스타일 특징을 얻으며, 상기 스타일 특징은 상기 스타일 이미지 분포의 특징의 평균값 및 표준편차를 포함하는 이미지 생성 장치.
  35. 제26항 내지 제34항 중 어느 한 항에 있어서,
    상기 제1 네트워크 유닛 블록은, 상기 제1 네트워크 유닛 블록에서 잔차 구조로 구성된 복수의 신경망 층에 기반하여 콘텐츠 이미지의 콘텐츠 특징을 추출하는 것; 및
    상기 제2 네트워크 유닛 블록은, 상기 제2 네트워크 유닛 블록에서 잔차 구조로 구성된 복수의 신경망 층에 기반하여 상기 제2 네트워크 유닛에 입력된 특징을 처리하는 것 중 적어도 하나인 이미지 생성 장치.
  36. 제3 추출 모듈, 제4 추출 모듈, 제2 처리 모듈 및 조절 모듈을 포함하는 신경망 트레이닝 장치로서,
    제3 추출 모듈은, 제1 신경망에서 순차적으로 연결된 다층 제1 네트워크 유닛 블록을 이용하여 콘텐츠 이미지의 콘텐츠 특징을 추출하여, 각 층의 제1 네트워크 유닛 블록이 각각 출력한 콘텐츠 특징을 얻고;
    제4 추출 모듈은, 스타일 이미지의 스타일 특징을 추출하며;
    제2 처리 모듈은, 상기 각 층의 제1 네트워크 유닛 블록이 각각 출력한 콘텐츠 특징을 제2 신경망에서 순차적으로 연결된 다층 제2 네트워크 유닛 블록에 대응되게 피드포워드 입력하고, 상기 스타일 특징을 상기 다층 제2 네트워크 유닛 블록 중의 첫 번째 층 제2 네트워크 유닛 블록으로부터 피드포워드 입력하며, 각 상기 제2 네트워크 유닛 블록이 각자에 입력된 특징을 처리한 후 상기 제2 신경망이 출력한 생성 이미지를 얻고; 상기 생성 이미지를 감별하여, 감별 결과를 얻으며; 상기 다층 제1 네트워크 유닛 블록과 상기 다층 제2 네트워크 유닛 블록은 대응되고;
    조절 모듈은, 상기 콘텐츠 이미지, 상기 스타일 이미지, 상기 생성 이미지 및 상기 감별 결과에 따라, 상기 제1 신경망 및 상기 제2 신경망 중 적어도 하나의 네트워크 파라미터를 조절하는 이미지 생성 장치.
  37. 제36항에 있어서,
    상기 제2 처리 모듈은, i가 순차적으로 1 내지 T인 경우에 응답하여, 제i 층 제1 네트워크 유닛 블록이 출력한 콘텐츠 특징을 제T-i+1 층 제2 네트워크 유닛 블록에 피드포워드 입력하며, i는 양의 정수이고, T는 상기 제1 신경망의 제1 네트워크 유닛 블록 및 상기 제2 신경망의 제2 네트워크 유닛 블록의 층수를 표시하는 이미지 생성 장치.
  38. 제36항 또는 제37항에 있어서,
    각 상기 제2 네트워크 유닛 블록 중의 첫 번째 층 제2 네트워크 유닛 블록은, 마지막 층 제1 네트워크 유닛 블록으로부터 얻은 콘텐츠 특징 및 상기 스타일 특징을 곱셈 연산하여, 상기 첫 번째 층 제2 네트워크 유닛 블록의 중간 특징을 얻고; 상기 마지막 층 제1 네트워크 유닛 블록으로부터 얻은 콘텐츠 특징과 상기 첫 번째 층 제2 네트워크 유닛 블록의 중간 특징을 덧셈 연산하여, 상기 첫 번째 층 제2 네트워크 유닛 블록의 출력 특징을 얻으며; 상기 첫 번째 층 제2 네트워크 유닛 블록의 출력 특징을 두 번째 층 제2 네트워크 유닛 블록에 입력하는 이미지 생성 장치.
  39. 제38항에 있어서,
    상기 첫 번째 층 제2 네트워크 유닛 블록은 또한, 마지막 층 제1 네트워크 유닛 블록으로부터 얻은 콘텐츠 특징 및 상기 스타일 특징을 곱셈 연산하기 전에, 상기 마지막 층 제1 네트워크 유닛 블록으로부터 얻은 콘텐츠 특징에 대해 컨볼루션 연산을 진행하는 이미지 생성 장치.
  40. 제36항 내지 제39항 중 어느 한 항에 있어서,
    각 상기 제2 네트워크 유닛 블록 중의 중간층 제2 네트워크 유닛 블록은, 입력된 콘텐츠 특징 및 이전 층 제2 네트워크 유닛 블록의 출력 특징을 곱셈 연산하여, 상기 중간층 제2 네트워크 유닛 블록의 중간 특징을 얻고; 상기 입력된 콘텐츠 특징과 상기 중간층 제2 네트워크 유닛 블록의 중간 특징을 덧셈 연산하여, 상기 중간층 제2 네트워크 유닛 블록의 출력 특징을 얻으며; 상기 중간층 제2 네트워크 유닛 블록의 출력 특징을 다음 층 제2 네트워크 유닛 블록에 입력하는 이미지 생성 장치.
  41. 제40항에 있어서,
    상기 중간층 제2 네트워크 유닛 블록은 또한, 상기 입력된 콘텐츠 특징 및 이전 층 제2 네트워크 유닛 블록의 출력 특징을 곱셈 연산하기 전에, 수신된 상기 콘텐츠 특징을 컨볼루션 연산하는 이미지 생성 장치.
  42. 제36항 내지 제41항 중 어느 한 항에 있어서,
    각 상기 제2 네트워크 유닛 블록 중의 마지막 층 제2 네트워크 유닛 블록은, 첫 번째 층 제1 네트워크 유닛 블록으로부터 얻은 콘텐츠 특징 및 이전 층 제2 네트워크 유닛 블록으로부터 얻은 출력 특징을 곱셈 연산하여, 상기 마지막 층 제2 네트워크 유닛 블록의 중간 특징을 얻고; 상기 첫 번째 층 제1 네트워크 유닛 블록으로부터 얻은 콘텐츠 특징과 상기 마지막 층 제2 네트워크 유닛 블록으로부터 얻은 중간 특징을 덧셈 연산하여, 상기 생성 이미지를 얻는 이미지 생성 장치.
  43. 제42항에 있어서,
    상기 마지막 층 제2 네트워크 유닛 블록은 또한, 상기 첫 번째 층 제1 네트워크 유닛 블록으로부터 얻은 콘텐츠 특징 및 이전 층 제2 네트워크 유닛 블록으로부터 얻은 출력 특징을 곱셈 연산하기 전에, 상기 첫 번째 층 제1 네트워크 유닛 블록으로부터 얻은 콘텐츠 특징을 컨볼루션 연산하는 이미지 생성 장치.
  44. 제38항 내지 제43항 중 어느 한 항에 있어서,
    상기 조절 모듈은, 상기 곱셈 연산 파라미터 및 덧셈 연산 파라미터 중 적어도 하나를 조절하는 이미지 생성 장치.
  45. 제36항 내지 제44항 중 어느 한 항에 있어서,
    상기 조절 모듈은, 상기 콘텐츠 이미지, 상기 스타일 이미지, 상기 생성 이미지 및 상기 감별 결과에 따라, 생성적 적대 네트워크 손실을 결정하고; 상기 생성적 적대 네트워크 손실이 제1 기설정 조건을 만족하지 않는 경우에 응답하여, 상기 생성적 적대 네트워크 손실에 따라, 상기 제1 신경망 및 상기 제2 신경망 중 적어도 하나의 네트워크 파라미터를 조절하며; 상기 생성적 적대 네트워크 손실은 상기 생성 이미지와 상기 콘텐츠 이미지의 콘텐츠 특징 차이, 및 상기 생성 이미지와 상기 스타일 이미지의 스타일 특징 차이를 특성화하는 이미지 생성 장치.
  46. 제45항에 있어서,
    상기 조절 모듈은 또한, 상기 생성 이미지와 상기 스타일 이미지에 따라, 스타일 손실을 결정하고; 상기 스타일 손실이 제2 기설정 조건을 만족하지 않는 경우에 응답하여, 상기 스타일 손실에 따라, 상기 제1 신경망 및 상기 제2 신경망 중 적어도 하나의 네트워크 파라미터를 조절하며; 상기 스타일 손실은 상기 생성 이미지와 상기 스타일 이미지의 스타일 특징의 차이를 특성화하는 이미지 생성 장치.
  47. 제45항 또는 제46항에 있어서,
    상기 조절 모듈은 또한, 상기 생성 이미지와 상기 콘텐츠 이미지에 따라, 콘텐츠 손실을 결정하고; 상기 콘텐츠 손실이 제3 기설정 조건을 만족하지 않는 경우에 응답하여, 상기 콘텐츠 손실에 따라, 상기 제1 신경망 및 상기 제2 신경망 중 적어도 하나의 네트워크 파라미터를 조절하며; 상기 콘텐츠 손실은 상기 생성 이미지와 상기 콘텐츠 이미지의 콘텐츠 특징 차이를 특성화하는 이미지 생성 장치.
  48. 제45항 내지 제47항 중 어느 한 항에 있어서,
    상기 조절 모듈은 또한, 각 상기 제2 네트워크 유닛 블록 중의 각 중간층 제2 네트워크 유닛 블록의 출력 특징, 및 스타일 이미지에 따라, 특징 매칭 손실을 결정하고;
    상기 특징 매칭 손실이 제4 기설정 조건을 만족하지 않는 경우에 응답하여, 상기 특징 매칭 손실에 따라, 상기 제1 신경망 및 상기 제2 신경망 중 적어도 하나의 네트워크 파라미터를 조절하며; 상기 특징 매칭 손실은 상기 각 중간층 제2 네트워크 유닛 블록의 출력 특징과 상기 스타일 이미지의 스타일 특징의 차이를 특성화하는 이미지 생성 장치.
  49. 제36항 내지 제48항 중 어느 한 항에 있어서,
    상기 제4 추출 모듈은, 상기 스타일 이미지 분포의 특징을 추출하고; 상기 스타일 이미지 분포의 특징을 샘플링하여, 상기 스타일 특징을 얻으며, 상기 스타일 특징은 상기 스타일 이미지 분포의 특징의 평균값 및 표준편차를 포함하는 이미지 생성 장치.
  50. 제36항 내지 제49항 중 어느 한 항에 있어서,
    상기 제1 네트워크 유닛 블록은, 상기 제1 네트워크 유닛 블록에서 잔차 구조로 구성된 복수의 신경망 층에 기반하여 콘텐츠 이미지의 콘텐츠 특징을 추출하는 것; 및
    상기 제2 네트워크 유닛 블록은, 상기 제2 네트워크 유닛 블록에서 잔차 구조로 구성된 복수의 신경망 층에 기반하여 상기 제2 네트워크 유닛에 입력된 특징을 처리하는 것; 중 적어도 하나인 이미지 생성 장치.
  51. 프로세서 및 프로세서에서 실행 가능한 컴퓨터 프로그램을 저장하는 메모리를 포함하는 전자 기기로서,
    상기 프로세서가 상기 컴퓨터 프로그램을 실행할 경우, 제1항 내지 제10항 중 어느 한 항에 따른 이미지 생성 방법 또는 제11항 내지 제25항 중 어느 한 항에 따른 신경망 트레이닝 방법을 수행하는 전자 기기.
  52. 컴퓨터 프로그램이 저장되는 컴퓨터 저장 매체로서,
    상기 컴퓨터 프로그램이 프로세서에 의해 수행될 경우 제1항 내지 제10항 중 어느 한 항에 따른 이미지 생성 방법 또는 제11항 내지 제25항 중 어느 한 항에 따른 신경망 트레이닝 방법을 구현하는 컴퓨터 저장 매체.
KR1020217017354A 2019-06-24 2020-02-26 이미지 생성 및 신경망 트레이닝 방법, 장치, 기기 및 매체 KR20210088656A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201910551145.3 2019-06-24
CN201910551145.3A CN112132167B (zh) 2019-06-24 2019-06-24 图像生成和神经网络训练方法、装置、设备和介质
PCT/CN2020/076835 WO2020258902A1 (zh) 2019-06-24 2020-02-26 图像生成和神经网络训练方法、装置、设备和介质

Publications (1)

Publication Number Publication Date
KR20210088656A true KR20210088656A (ko) 2021-07-14

Family

ID=73850015

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020217017354A KR20210088656A (ko) 2019-06-24 2020-02-26 이미지 생성 및 신경망 트레이닝 방법, 장치, 기기 및 매체

Country Status (4)

Country Link
JP (1) JP2022512340A (ko)
KR (1) KR20210088656A (ko)
CN (1) CN112132167B (ko)
WO (1) WO2020258902A1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102490503B1 (ko) 2022-07-12 2023-01-19 프로메디우스 주식회사 순환형 적대적 생성 신경망을 이용한 이미지 처리 장치 및 방법
WO2023182677A1 (ko) * 2022-03-22 2023-09-28 삼성전자 주식회사 사용자 선호 콘텐트를 생성하는 전자 장치 및 그 동작 방법

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112733946B (zh) * 2021-01-14 2023-09-19 北京市商汤科技开发有限公司 一种训练样本的生成方法、装置、电子设备及存储介质
CN113255813B (zh) * 2021-06-02 2022-12-02 北京理工大学 一种基于特征融合的多风格图像生成方法
CN113689517B (zh) * 2021-09-08 2024-05-21 云南大学 一种多尺度通道注意力网络的图像纹理合成方法及系统

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018042388A1 (en) * 2016-09-02 2018-03-08 Artomatix Ltd. Systems and methods for providing convolutional neural network based image synthesis using stable and controllable parametric models, a multiscale synthesis framework and novel network architectures
CN108205813B (zh) * 2016-12-16 2022-06-03 微软技术许可有限责任公司 基于学习网络的图像风格化
JP2018132855A (ja) * 2017-02-14 2018-08-23 国立大学法人電気通信大学 画像スタイル変換装置、画像スタイル変換方法および画像スタイル変換プログラム
CN108205803B (zh) * 2017-07-19 2020-12-25 北京市商汤科技开发有限公司 图像处理方法、神经网络模型的训练方法及装置
GB201800811D0 (en) * 2018-01-18 2018-03-07 Univ Oxford Innovation Ltd Localising a vehicle
CN109840924B (zh) * 2018-12-28 2023-03-28 浙江工业大学 一种基于串联对抗网络的产品图像快速生成方法
CN109766895A (zh) * 2019-01-03 2019-05-17 京东方科技集团股份有限公司 用于图像风格迁移的卷积神经网络的训练方法和图像风格迁移方法
CN109919828B (zh) * 2019-01-16 2023-01-06 中德(珠海)人工智能研究院有限公司 一种判断3d模型之间差异的方法
CN109919829B (zh) * 2019-01-17 2023-12-26 北京达佳互联信息技术有限公司 图像风格迁移方法、装置和计算机可读存储介质

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023182677A1 (ko) * 2022-03-22 2023-09-28 삼성전자 주식회사 사용자 선호 콘텐트를 생성하는 전자 장치 및 그 동작 방법
KR102490503B1 (ko) 2022-07-12 2023-01-19 프로메디우스 주식회사 순환형 적대적 생성 신경망을 이용한 이미지 처리 장치 및 방법

Also Published As

Publication number Publication date
JP2022512340A (ja) 2022-02-03
CN112132167B (zh) 2024-04-16
WO2020258902A1 (zh) 2020-12-30
CN112132167A (zh) 2020-12-25

Similar Documents

Publication Publication Date Title
KR20210088656A (ko) 이미지 생성 및 신경망 트레이닝 방법, 장치, 기기 및 매체
CN110880036B (zh) 神经网络压缩方法、装置、计算机设备及存储介质
CN106980868B (zh) 用于具有多个文本标签的图像的嵌入空间
CN108427738B (zh) 一种基于深度学习的快速图像检索方法
KR102143108B1 (ko) 차선 인식 모델링 방법, 장치, 저장 매체 및 기기, 및 인식 방법, 장치, 저장 매체 및 기기
US10445910B2 (en) Generating apparatus, generating method, and non-transitory computer readable storage medium
CN110796154B (zh) 一种训练物体检测模型的方法、装置以及设备
US20180247183A1 (en) Method and system for generative model learning, and recording medium
US20190377987A1 (en) Discriminative Caption Generation
US11922569B2 (en) Generating realistic point clouds
CN110276406B (zh) 表情分类方法、装置、计算机设备及存储介质
CN111275054B (zh) 图像处理方法、装置、电子设备及存储介质
CN114332578A (zh) 图像异常检测模型训练方法、图像异常检测方法和装置
US11475059B2 (en) Automated image retrieval with graph neural network
EP3710993B1 (en) Image segmentation using neural networks
US11443481B1 (en) Reconstructing three-dimensional scenes portrayed in digital images utilizing point cloud machine-learning models
CN112801063B (zh) 神经网络系统和基于神经网络系统的图像人群计数方法
CN113970922A (zh) 点云数据的处理方法、智能行驶控制方法及装置
CN114418030A (zh) 图像分类方法、图像分类模型的训练方法及装置
CN114049515A (zh) 图像分类方法、系统、电子设备和存储介质
CN111310821A (zh) 多视图特征融合方法、系统、计算机设备及存储介质
CN111612004A (zh) 一种基于语义内容的图像裁剪方法及装置
Sharjeel et al. Real time drone detection by moving camera using COROLA and CNN algorithm
CN113516697B (zh) 图像配准的方法、装置、电子设备及计算机可读存储介质
CN111488990A (zh) 一种基于性能感知的模型裁剪方法、装置、设备和介质

Legal Events

Date Code Title Description
A201 Request for examination