KR20220099584A - 이미지 처리 방법, 장치, 전자 장치 및 컴퓨터 판독 가능 저장 매체 - Google Patents

이미지 처리 방법, 장치, 전자 장치 및 컴퓨터 판독 가능 저장 매체 Download PDF

Info

Publication number
KR20220099584A
KR20220099584A KR1020227023064A KR20227023064A KR20220099584A KR 20220099584 A KR20220099584 A KR 20220099584A KR 1020227023064 A KR1020227023064 A KR 1020227023064A KR 20227023064 A KR20227023064 A KR 20227023064A KR 20220099584 A KR20220099584 A KR 20220099584A
Authority
KR
South Korea
Prior art keywords
video frame
frame image
image
offset
anchor point
Prior art date
Application number
KR1020227023064A
Other languages
English (en)
Other versions
KR102534449B1 (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 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드
Publication of KR20220099584A publication Critical patent/KR20220099584A/ko
Application granted granted Critical
Publication of KR102534449B1 publication Critical patent/KR102534449B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/04Context-preserving transformations, e.g. by using an importance map
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T3/0012
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/30Determination of transform parameters for the alignment of images, i.e. image registration
    • G06T7/38Registration of image sequences
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/44Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/40Scenes; Scene-specific elements in video content
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/161Detection; Localisation; Normalisation
    • G06V40/165Detection; Localisation; Normalisation using facial parts and geometric relationships
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/168Feature extraction; Face representation
    • G06V40/171Local features and components; Facial parts ; Occluding parts, e.g. glasses; Geometrical relationships
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/61Control of cameras or camera modules based on recognised objects
    • H04N23/611Control of cameras or camera modules based on recognised objects where the recognised objects include parts of the human body
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/222Studio circuitry; Studio devices; Studio equipment
    • H04N5/262Studio circuits, e.g. for mixing, switching-over, change of character of image, other special effects ; Cameras specially adapted for the electronic generation of special effects
    • H04N5/2621Cameras specially adapted for the electronic generation of special effects during image pickup, e.g. digital cameras, camcorders, video cameras having integrated special effects capability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/222Studio circuitry; Studio devices; Studio equipment
    • H04N5/262Studio circuits, e.g. for mixing, switching-over, change of character of image, other special effects ; Cameras specially adapted for the electronic generation of special effects
    • H04N5/272Means for inserting a foreground image in a background image, i.e. inlay, outlay
    • 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/10016Video; Image sequence
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/222Studio circuitry; Studio devices; Studio equipment
    • H04N5/262Studio circuits, e.g. for mixing, switching-over, change of character of image, other special effects ; Cameras specially adapted for the electronic generation of special effects
    • H04N5/272Means for inserting a foreground image in a background image, i.e. inlay, outlay
    • H04N2005/2726Means for inserting a foreground image in a background image, i.e. inlay, outlay for simulating a person's appearance, e.g. hair style, glasses, clothes

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Health & Medical Sciences (AREA)
  • Oral & Maxillofacial Surgery (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Computer Interaction (AREA)
  • Signal Processing (AREA)
  • Geometry (AREA)
  • Image Processing (AREA)
  • Studio Circuits (AREA)
  • Processing Or Creating Images (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Image Analysis (AREA)
  • Apparatus For Radiation Diagnosis (AREA)

Abstract

본 발명의 실시예는 이미지 처리 방법, 장치, 전자 장치 및 컴퓨터 판독 가능 저장 매체를 개시한다. 이미지 처리 방법은 제1 비디오 프레임 이미지에서 제1 객체 및 제1 객체에 위치된 제2 객체를 식별하는 단계; 제1 비디오 프레임 이미지에서 제1 객체의 위치에 따라, 제2 비디오 프레임 이미지를 획득하기 위해 제1 비디오 프레임 이미지 상에 전경 이미지로서 제3 객체를 오버레이하는 단계 - 제3 객체는 제2 비디오 프레임 이미지에서 제1 객체를 오버레이함 -; 제1 비디오 프레임 이미지에서의 제2 객체의 위치에 따라, 제3 비디오 프레임 이미지를 획득하기 위해 제2 비디오 프레임 이미지의 제3 객체 상에 전경 이미지로서 제2 객체를 중첩시키는 단계를 포함한다. 위와 같은 방법을 통해, 객체에 오버레이되는 특수효과가 객체의 본래 특징을 반영하지 못하여 사실감이 결여되는 당업계의 기술적인 문제를 해결할 수 있다.

Description

이미지 처리 방법, 장치, 전자 장치 및 컴퓨터 판독 가능 저장 매체
본 발명은 이미지 처리(image processing) 분야, 특히 이미지 처리 방법(image processing method), 장치, 전자 장치 및 컴퓨터 판독 가능 저장 매체(computer readable storage medium)에 관한 것이다.
본 개시는 2019년 12월 18일에 중국 특허청에 출원된 "이미지 처리 방법, 장치, 전자 장치 및 컴퓨터 판독 가능 저장 매체"라는 제목의 중국 특허 출원 번호 201911306421.6의 우선권을 주장하며, 이는 그 전체가 여기에 참조로 포함된다.
컴퓨터 네트워크의 발달과 스마트폰의 대중화로 일반 사용자들은 더 이상 단조로운 그림과 말로만 자신의 감정을 표현하는 데 만족할 수 없다. 이미지는 보다 다양한 콘텐츠와 형태로 제시되고 직관적인 느낌을 주어 사용자들에게 큰 사랑을 받으며 점차 대중화되고 있다. 점차 일반 사용자가 원본 비디오를 만드는 추세가 되었다. 그러나, 반면에 원본 셀카 비디오(selfie video)는 무뚝뚝한 형태로 표현된다. 동시에 영화와 텔레비전 작품에서 비디오 특수 효과의 응용이 점점 더 풍부해지고 표현되는 콘텐츠 형식이 더 다양하다는 것을 알 수 있다. 비디오 특수 효과는 성공적인 영화 및 TV 작업을 지원하고 보장한다고 말할 수 있다.
그러나, 종래 기술에서는 일반적으로 대상 객체(target object)(예를 들어, 사람의 얼굴)에 효과를 직접 오버레이하여 특수 효과를 만들고, 오버레이된 위치는 특수 효과에 의해 가려져 대상 객체의 본래 특성을 구현하지 못하여 특수 효과의 실제 효과가 상당히 뻣뻣하고 사실성이 결여된다.
본 개시는 다음의 상세한 설명에서 더 설명될 단순화된 형태로 몇몇 개념들을 소개하기 위해 제공된다. 본 개시는 청구된 주제의 주요 특징 또는 필수 특징을 식별하도록 의도되지 않았으며, 청구된 주제의 범위를 제한하도록 의도되지 않았다.
제1 측면에서, 본 개시의 실시예는 이미지 처리 방법(image processing method)을 제공하고, 이는:
제1 비디오 프레임 이미지(first video frame image)에서 제1 객체 및 상기 제1 객체에 위치된 제2 객체를 식별하는 단계;
제1 비디오 프레임 이미지(first video frame image)에서 제1 객체의 위치에 따라, 제2 비디오 프레임 이미지(second video frame image)를 획득하기 위해 제1 비디오 프레임 이미지 상에 전경 이미지(foreground image)로서 제3 객체를 오버레이하는 단계 - 제3 객체는 제2 비디오 프레임 이미지에서 제1 객체를 오버레이함 -;
제1 비디오 프레임 이미지에서의 제2 객체의 위치에 따라, 제3 비디오 프레임 이미지를 획득하기 위해 제2 비디오 프레임 이미지의 제3 객체 상에 전경 이미지로서 제2 객체를 중첩시키는 단계를 포함한다.
제2 측면에서, 본 개시의 실시예는 이미지 처리 장치(image processing apparatus)를 제공하고, 이는:
제1 비디오 프레임 이미지의 제1 객체 및 상기 제1 객체에 위치된 제2 객체를 식별하도록 구성된 객체 식별 모듈(object identification module);
제1 비디오 프레임 이미지에서 제1 객체의 위치에 따라, 제2 비디오 프레임 이미지를 획득하기 위해 제1 비디오 프레임 이미지에 전경 이미지로서 제3 객체를 오버레이하도록 구성된 제2 비디오 프레임 이미지 생성 모듈(second video frame image generation module) - 제3 객체는 제2 비디오 프레임 이미지에서 제1 객체를 오버레이함 -;
제1 비디오 프레임 이미지에서 제2 객체의 위치에 따라, 제3 비디오 프레임 이미지를 획득하기 위해 제2 비디오 프레임 이미지의 제3 객체 상에 전경 이미지로서 제2 객체를 중첩시키도록 구성된 제3 비디오 프레임 생성 모듈(third video frame generation module)을 포함한다.
제3 측면에서, 본 발명의 일 실시예는 적어도 하나의 프로세서(processor); 및,
적어도 하나의 프로세서와 통신 가능하게 연결된 메모리(memory)를 포함하고; 메모리는 적어도 하나의 프로세서에 의해 실행될 수 있는 명령(instruction)을 저장하고, 명령은, 적어도 하나의 프로세서가 위에서 언급된 제1 측면의 이미지 처리 방법 중 어느 하나를 실행할 수 있도록, 적어도 하나의 프로세서에 의해 실행된다.
제4 측면에서, 본 발명의 일 실시예는, 비일시적 컴퓨터 판독 가능 저장 매체는 컴퓨터로 하여금 위에서 언급된 제1 측면의 이미지 처리 방법 중 어느 하나를 실행하게 하기 위한 컴퓨터 명령을 저장하는 것을 특징으로 하는, 비일시적 컴퓨터 판독 가능 저장 매체(non-transitory computer-readable storage medium)를 제공한다.
제5 측면에서, 본 발명의 실시예는 컴퓨터에 의해 실행될 때 위에서 언급된 제1 측면의 이미지 처리 방법 중 어느 하나를 실행하는 컴퓨터 프로그램을 제공한다.
개시된 실시예는 이미지 처리 방법, 장치, 전자 장치 및 컴퓨터 판독 가능 저장 매체를 개시한다. 이미지 처리 방법은 제1 비디오 프레임 이미지에서 제1 객체 및 제1 객체에 위치된 제2 객체를 식별하는 단계; 제1 비디오 프레임 이미지에서 제1 객체의 위치에 따라, 제2 비디오 프레임 이미지를 획득하기 위해 제1 비디오 프레임 이미지 상에 전경 이미지로서 제3 객체를 오버레이하는 단계 - 제3 객체는 제2 비디오 프레임 이미지에서 제1 객체를 오버레이함 -; 제1 비디오 프레임 이미지에서의 제2 객체의 위치에 따라, 제3 비디오 프레임 이미지를 획득하기 위해 제2 비디오 프레임 이미지의 제3 객체 상에 전경 이미지로서 제2 객체를 중첩시키는 단계를 포함한다. 위와 같은 방법을 통해, 객체에 오버레이되는 특수효과가 객체의 본래 특징을 반영하지 못하여 사실감이 결여되는 당업계의 기술적인 문제를 해결할 수 있다.
위의 설명은 본 발명의 기술적 방안의 요약에 불과하다. 본 발명의 기술적 수단을 보다 명확하게 하고, 기재된 내용에 따라 실시할 수 있도록 하고, 본 발명의 상기 및 기타 목적, 특징 및 이점을 보다 명확하게 하기 위하여, 더 나은 실시예가 다음과 같이 도면과 협력하여 상세하게 나열되고 설명될 것이다.
본 개시의 다양한 실시예의 상기 및 다른 특징, 장점 및 측면은 첨부된 도면과 함께 그리고 다음의 상세한 설명을 참조하여 취해질 때 더욱 분명해질 것이다. 도면 전체에서 동일하거나 유사한 참조 번호는 동일하거나 유사한 요소를 나타낸다. 도면은 도식이며 원본과 요소가 반드시 축척에 맞게 그려지는 것은 아니라는 점을 이해해야 한다.
도 1은 본 개시에 의해 제공되는 이미지 처리 방법의 실시예의 흐름도이다;
도 2는 본 개시에 의해 제공되는 이미지 처리 방법의 실시예에서 사람 얼굴에 대한 앵커 포인트(anchor point)를 계산하는 개략도이다;
도 3은 본 개시에서 제공하는 이미지 처리 방법의 실시예에서 단계 S103의 특정 예의 흐름도이다;
도 4는 본 개시에서 제공하는 이미지 처리 방법의 실시예에서 단계 S302의 특정 예의 흐름도이다;
도 5는 본 발명의 실시예에 의해 제공되는 이미지 처리 장치의 실시예의 구조적 개략도이다;
도 6는 본 발명의 일 실시예에 따라 제공되는 전자 장치의 개략적인 구조도이다.
이하, 첨부된 도면을 참조하여 본 개시의 실시예를 상세히 설명한다. 본 개시의 특정 실시예가 도면에 나타나 있지만, 본 개시는 다양한 형태로 실현될 수 있고 본 명세서에 명시된 실시예로 제한되는 것으로 해석되어서는 안된다는 것을 이해해야 한다. 반면에, 이들 실시예는 본 개시의 보다 철저하고 완전한 이해를 위해 제공된다. 본 개시의 도면 및 실시예는 단지 예시를 위한 것이고, 본 개시의 보호 범위를 제한하려는 의도가 아님을 이해해야 한다.
본 개시의 방법 실시예에서 설명된 단계는 상이한 순서로 및/또는 병렬로 수행될 수 있음을 이해해야 한다. 또한, 방법 실시예는 추가 단계를 포함하고/하거나 도시된 단계를 생략할 수 있다. 본 개시의 범위는 그렇게 제한되지 않는다.
본 명세서에 사용된 바와 같이, "포함하는"이라는 용어 및 그 변형은 "포함하지만 이에 제한되지 않는"을 포함하는 개방적이다. "에 기초하는"이라는 용어는 "적어도 부분적으로 기초하는"을 의미한다. "어떤 실시예"라는 용어는 "적어도 하나의 실시예"를 의미하고; "다른 실시예"라는 용어는 "적어도 하나의 다른 실시예"를 의미하고; "일부 실시예"라는 용어는 "적어도 일부 실시예"를 의미한다. 다른 용어에 대한 관련 정의는 다음 설명에서 설명한다.
본 개시에 언급된 바와 같은 "제1", "제2"와 같은 개념은 상이한 장치, 모듈 또는 유닛을 구별하기 위해서만 사용되고, 이들 장치, 모듈 또는 유닛에 의해 수행되는 기능의 독립성을 제한하는 데 사용되지 않는다는 점에 유의해야 한다.
본 개시에서 언급된 "하나" 및 "다수"의 변형은 제한적이라기 보다는 예시적이고, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 "하나 이상"으로 문맥에서 명확하게 지시되지 않는 한, 이들이 "하나 이상"으로 이해되어야 함을 이해해야 함을 주목해야 한다.
본 개시의 실시예에서 다수의 장치 중에서 교환되는 메시지 또는 정보의 명칭은 예시적 목적을 위한 것일 뿐, 메시지 또는 정보의 범위를 제한하려는 것은 아니다.
도 1은 본 개시의 실시예에 의해 제공되는 이미지 처리 방법의 실시예의 흐름도이다. 본 실시예에서 제공하는 이미지 처리 방법은 이미지 처리 장치에 의해 실행될 수 있으며, 이는 소프트웨어 또는 소프트웨어와 하드웨어의 조합으로 구현될 수 있다. 이미지 처리 장치는 이미지 처리 서버(image processing server) 또는 이미지 처리 단말 장치(image processing terminal device)와 같은 이미지 처리 시스템의 특정 장치에 통합될 수 있다. 도 1과 같이 이 방법은:
S101, 제1 비디오 프레임 이미지의 제1 객체 및 제1 객체에 위치된 제2 객체를 식별하는 단계;
이 단계에서, 제1 비디오 프레임 이미지는 이미지 센서 또는 메모리에 의해 획득된다. 이미지 센서는 이미지를 수집할 수 있는 다양한 장치를 말하고, 대표적인 이미지 센서는 비디오 카메라, 카메라 등이 있다. 이 실시예에서, 이미지 센서는 스마트폰의 전면 카메라 또는 후면 카메라와 같은 단말 장치의 카메라일 수 있고, 카메라에 의해 수집된 이미지는 휴대 전화의 디스플레이 화면에 직접 표시될 수 있고; 메모리는 로컬 메모리 또는 네트워크 메모리이고, 비디오 프레임 이미지는 로컬 메모리의 저장 위치 또는 네트워크 메모리의 저장 주소를 통해 획득되고, 메모리 내의 비디오 프레임 이미지는 단말 장치의 플레이어를 통해 단말 장치의 디스플레이 장치 상에 표시될 수 있는, 미리 촬영된 비디오 프레임 이미지 파일이다.
제1 비디오 프레임 이미지는 제1 객체를 포함하고, 이는 제1 비디오 프레임 이미지의 임의의 객체일 수 있다. 실례로, 제1 객체는 사람의 얼굴이고; 제2 객체는 제1 객체의 일부이고, 제1 객체에 위치하고, 예를 들어, 제1 객체가 사람의 얼굴인 경우, 제2 객체는 눈, 입 등과 같은 얼굴 특징이다.
이 실시예에서, 객체의 주요 포인트(key point)는 객체를 식별하는 데 사용되고; 예를 들어, 객체는 미리 설정된 복수의 주요 포인트에 의해 식별될 수 있고, 복수의 주요 포인트가 식별되면 객체가 식별된다. 선택적으로, 제1 비디오 프레임 이미지에서 제1 객체 및 제1 객체에 위치된 제2 객체를 식별하는 단계는: 제1 비디오 프레임 이미지에서 제1 객체의 복수의 제1 주요 포인트 및 제2 객체의 복수의 제2 주요 포인트를 식별하는 단계; 제1 객체의 복수의 제1 주요 포인트에 기초하여 제1 객체를 식별하는 단계; 제2 객체의 복수의 제2 주요 포인트에 기초하여 제2 객체를 식별하는 단계를 포함하고, 복수의 제2 주요 포인트는 제2 객체의 가장자리 주요 포인트다. 가장자리 주요 포인트는 제2 객체의 윤곽(outline)을 결정한다. 예를 들어, 제1 객체는 사람의 얼굴이고 제2 객체는 사람의 얼굴에 있는 눈이나 입이다. 복수의 제1 주요 포인트는 사람 얼굴의 두 눈의 중심 주요 포인트와 코끝 주요 포인트를 포함할 수 있고, 두 눈의 중심 주요 포인트와 코끝 주요 포인트가 식별되면 사람의 얼굴이 식별되고; 제2 주요 포인트는 눈의 가장자리 주요 포인트와 입의 가장자리 주요 포인트로 이루어지며, 마찬가지로 눈의 가장자리 주요 포인트와 입의 가장자리 주요 포인트가 식별되면 눈과 입이 식별된다. 예를 들어, 딥 러닝 알고리즘(deep learning algorithm)을 이용하여 제1 주요 포인트와 제2 주요 포인트를 식별할 수 있고, 딥 러닝 네트워크는, 제1 주요 포인트와 제2 주요 포인트를 회귀할 수 있는 네트워크 모델을 얻을 수 있도록, 위에서 설명한 제1 주요 포인트와 제2 주요 포인트로 레이블이 지정된 프레임 이미지 세트를 직접 사용하여 학습될 수 있고, 제1 비디오 프레임 이미지가 네트워크 모델에 입력되고, 제1 비디오 프레임 이미지가 제1 객체와 제2 객체를 포함하는 경우, 그러면 네트워크 모델은 제1 주요 포인트와 제2 주요 포인트의 위치를 출력하여 제1 객체와 제2 객체를 직접 식별하고 제1 주요 포인트와 제2 주요 포인트의 위치를 식별한다. 제1 주요 포인트 및 제2 주요 포인트는 다른 주요 포인트 식별 알고리즘에 의해서도 식별될 수 있음을 이해할 수 있으며, 이는 여기에서 반복되지 않는다.
S102, 제1 비디오 프레임 이미지에서 제1 객체의 위치에 따라, 제2 비디오 프레임 이미지를 획득하기 위해 전경 이미지로서 제3 객체를 제1 비디오 프레임 이미지에 오버레이하는 단계 - 제3 객체는 제2 비디오 프레임 이미지에서 제1 객체를 오버레이함 -;
선택적으로, 제3 객체는 3차원 가상 객체이고, 제1 비디오 프레임 이미지에서 3차원 가상 객체의 2차원 투영 영역(projection area)은 제1 객체의 면적보다 크고, 즉 제3 객체는 제1 객체를 완전히 오버레이한다. 예를 들어, 3차원 가상 객체는 3차원 오렌지, 3차원 공, 3차원 수박 등과 같은 구형 가상 객체일 수 있다. 제3 객체는 제3 객체의 위치를 찾는 데 사용되는 제3 객체의 앵커 포인트를 포함한다.
제3 객체는 2차원 가상 객체 및 실제 객체와 같이 위에서 언급된 3차원 가상 객체에 제한되지 않고 임의의 객체일 수 있음을 이해할 수 있다. 실제 객체는 제1 비디오 프레임 이미지에 포함된 사람 얼굴 이미지 및 동물 얼굴 이미지와 같이 실제 객체의 캡처된 이미지에 형성된 객체이고, 이때 동물 얼굴 이미지는 제3 객체로 사람 얼굴 이미지에 오버레이될 수 있다.
이 단계에서, 제3 객체가 제1 객체에 오버레이될 때, 제3 객체의 오버레이 위치를 결정하기 위해 단일 주요 포인트 정렬 방법이 사용될 수 있다. 예시적으로, 제3 객체는 그 위에 제3 객체의 앵커 포인트를 포함하고, 제3 객체의 앵커 포인트에 대응하는 제1 객체의 앵커 주요 포인트는 제1 객체에 미리 설정되고, 제1 객체의 앵커 주요 포인트는 위에서 언급된 제1 주요 포인트 중 하나가 될 수 있다. 전경 이미지로서 제1 비디오 프레임 이미지에 제3 객체가 오버레이될 때 제3 객체의 앵커 포인트는 제1 객체의 앵커 주요 포인트와 정렬될 수 있으므로 제3 객체는 제1 객체에 오버레이될 수 있다.
때로는, 단일 주요 포인트를 사용한 정렬이 정확하지 않으므로, 선택적으로 제1 비디오 프레임 이미지에서 제1 객체의 위치에 따라, 제2 비디오 프레임 이미지를 획득하기 위해 제1 비디오 프레임 이미지에 전경 이미지로서 제3 객체를 오버레이하는 단계는: 제1 비디오 프레임 이미지에서 제1 객체의 복수의 제1 주요 포인트에 기초하여 제1 비디오 프레임 이미지에서 제1 객체의 앵커 포인트를 계산하는 단계; 제3 객체의 앵커 포인트를 제1 비디오 프레임 이미지에서 제1 객체의 앵커 포인트와 정렬함으로써, 제2 비디오 프레임 이미지를 획득하기 위해 제1 비디오 프레임 이미지에서 전경 이미지로서 제3 객체를 오버레이하는 단계를 포함한다. 이 대안적인 실시예에서, 제1 객체의 앵커 포인트는 복수의 제1 주요 포인트로부터 계산되고, 이는 제1 객체의 앵커 포인트가 복수의 제1 주요 포인트에 대한 위치 정보를 포함하기 때문에 단일의 제1 주요 포인트 포지셔닝보다 더 정확할 수 있다. 예를 들어, 도 2에 도시된 바와 같이, 제1 객체는 사람의 얼굴이고, 복수의 제1 주요 포인트는 좌우 눈의 중심 주요 포인트(center key point)(201, 202)와 코끝 주요 포인트(203)이고, 사람 얼굴의 앵커 포인트는 가중치로 각각 1/3을 차지하는 두 눈의 중심 주요 포인트와 코끝 주요 포인트로부터 계산될 수 있으므로, 두 눈의 중심 포인트와 코끝 주요 포인트가 이루는 삼각형의 중심 포인트(204)가 계산될 수 있도록, 단일 주요 포인트의 위치 왜곡이 앵커 포인트 위치에 미치는 영향이 훨씬 작게 되고, 제1 객체의 앵커 포인트가 안정적이고 정확하다.
제1 객체의 앵커 포인트를 획득한 후, 제3 객체의 앵커 포인트를 제1 객체의 앵커 포인트 위치에 설정하고, 제2 비디오 프레임 이미지를 획득하기 위해 제3 객체를 전경으로 하는 제1 비디오 프레임 이미지를 렌더링한다.
S103, 제1 비디오 프레임 이미지에서 제2 객체의 위치에 따라, 제3 비디오 프레임 이미지를 획득하기 위해 제2 비디오 프레임 이미지의 제3 객체에 전경 이미지로서 제2 객체를 중첩시키는 단계이다.
단계 S101에서, 제2 객체가 식별되었고, 제1 비디오 프레임 객체에서 제2 객체의 위치는 제2 객체의 중심 주요 포인트 또는 복수의 제2 주요 포인트의 위치에 의해 결정될 수 있다. 예를 들어, 제2 객체를 식별할 때, 제2 객체의 앵커 포인트를 바로 주요 포인트로 식별하거나, 복수의 제2 주요 포인트를 기반으로 계산될 수 있고, 제2 객체의 앵커 포인트를 계산할 때, 가중치 값은 계산에 포함된 각각의 제2 주요 포인트에 대해 설정될 수 있고, 제2 객체의 앵커 포인트 위치는 복수의 제2 주요 포인트 위치의 가중 평균(weighted average)이다. 제1 비디오 프레임 이미지에서 제2 객체의 위치를 획득한 후, 제2 객체는 제2 비디오 프레임 이미지에서 제3 객체의 대응하는 위치에 전경 이미지로서 중첩된다.
선택적으로, 제3 객체가 3차원 객체일 때, 3차원 객체는 특정 깊이(Z축 방향의 정보)를 갖지만 제2 객체는 깊이가 없는 2차원 객체이므로, 제2 객체가 제3 객체와 중첩될 때 특정 편차가 있을 수 있고, 따라서 제2 객체가 제3 객체에 중첩될 때 특정 오프셋이 필요하므로 중첩 결과가 더 자연스럽다. 이때, 도 3에 도시된 바와 같이, 단계 S103는:
S301, 제1 객체에 미리 설정된 2개의 주요 포인트 사이의 제1 거리를 계산하는 단계;
S302, 제1 거리에 기초하여 제2 객체의 오프셋을 계산하는 단계;
S303, 제1 비디오 프레임 이미지에서 제2 객체의 위치 및 제2 객체의 오프셋에 따라, 제3 비디오 프레임 이미지를 획득하기 위해 전경 이미지로서 제2 객체를 제2 비디오 프레임 이미지에서 제3 객체 상에 중첩시키는 단계를 포함할 수 있다.
제1 객체에 미리 설정된 두 개의 주요 포인트는 제1 객체에 있는 두 개의 주요 포인트일 수 있다. 예를 들어, 미리 설정된 두 개의 주요 포인트는 제1 객체에서 좌우 대칭인 두 개의 주요 포인트다. 예를 들어, 상기 실시예에서 제1 객체가 사람의 얼굴인 경우, 기 설정된 2개의 주요 포인트는 좌우 눈의 중심 주요 포인트일 수 있다. 예를 들어, 제1 거리에 기초한 제2 객체의 오프셋의 계산은 제1 거리의 값에 의존하는 오프셋 계수로 제1 거리를 곱하는 것일 수 있다. 예를 들어, 제1 거리의 값이 클수록 오프셋 계수가 커지므로, 제2 객체의 오프셋이 커지고, 제3 객체의 3차원 표면에 적응하기 위해, 달성되는 효과는 제1 객체가 렌즈에 가까울수록 더 많이 제2 객체는 오프셋될 것이다.
위의 오프셋 계산은 일종의 근사 계산에 속하며, 선택적으로 오프셋을 보다 정확하게 계산될 수 있다. 이때, 도 4에 도시된 바와 같이, S302 단계는:
S401, 제1 객체의 요각(yaw angle) 및 피치각(pitch angle)을 획득하는 단계 - 여기서 요각은 제1 비디오 프레임 이미지에서 제1 객체의 방위(orientation)와 렌즈 촬영 방향(lens shooting direction) 사이의 수평각이고, 피치각은 제1 비디오 프레임 이미지에서 제1 객체의 방위와 렌즈 촬영 방향 사이의 수직각임 -;
S402, 제1 거리, 요각 및 피치각에 기초하여 제2 객체의 오프셋을 계산하는 단계를 포함할 수 있다.
구체적으로, S402 단계의 계산 프로세스(calculation process)는 다음 공식으로 표현될 수 있다.
Figure pct00001
Figure pct00002
이 중, 부호(sign)는 심볼을 획득하는 연산(operation)이고, dx는 X축 방향으로 제2 객체의 오프셋이고, dy는 Y축 방향으로 제2 객체의 오프셋이고,
Figure pct00003
는 제1 거리이고, yaw는 제1 객체의 요각이고, pitch는 제1 객체의 피치각이고,
Figure pct00004
는 제2 객체가 정면을 향하고 있을 때의 초기 상대 피치각이고,
Figure pct00005
는 제2 객체가 정면을 향하고 있을 때의 초기 상대 요각(relative yaw angle)이다. 여기서
Figure pct00006
Figure pct00007
는 미리 설정된 각도 값이고, 3차원 제3 객체의 외부 표면에는 특정 라디안이 있기 때문에 이동할 때 약간의 감쇠가 필요하다. 제1 객체는 사람의 얼굴이고 제2 객체는 눈과 입으로, 입이 제3 객체의 위아래 영역 중 하반부에 위치하므로 입의 초기 상대 피치각이 크고, 입이 제3 오브젝트의 왼쪽과 오른쪽 영역의 중간에 위치하므로 입의 초기 상대 요각은 0이다. 다른 제2 객체의
Figure pct00008
Figure pct00009
는 다른 제3 객체에 따라 다른 값으로 미리 설정될 수 있으며, 여기에서 설명하지 않는다.
선택적으로, 단계 S303에서, 제1 비디오 프레임 이미지에서 제2 객체의 위치와 제2 객체의 오프셋에 따라, 제3 객체를 획득하기 위해 제2 비디오 프레임 이미지에서 전경 이미지로서 제2 객체를 제3 객체와 중첩시키는 단계는: 비디오 프레임 이미지는 대상 앵커 포인트를 획득하기 위해 제2 객체의 오프셋에 따라 제1 비디오 프레임 이미지에서 제2 객체의 초기 앵커 포인트에 대해 위치 오프셋(position offset)을 수행하는 단계; 제2 비디오 프레임 이미지에서, 제3 비디오 프레임 이미지를 획득하기 위해 대상 앵커 포인트의 위치에 전경 이미지로서 제2 객체를 렌더링하는 단계를 더 포함한다. 위의 단계에서, 제1 비디오 프레임 이미지에서 제2 객체의 위치를 초기 앵커 포인트로 취하고, 초기 앵커 포인트는 X축 좌표값과 Y축 좌표값을 포함하고, 초기 앵커 포인트의 X 축 좌표 값 및 Y 축 좌표 값은, 대상 앵커 포인트를 획득하기 위해, 각각 오프셋의 X 축 좌표 값 및 Y 축 좌표 값과 더해지고; 그런 다음, 제2 비디오 프레임 이미지에서, 제3 비디오 프레임 이미지를 획득하기 위해 제2 객체는 제2 대상 앵커 포인트의 위치에 전경으로 렌더링되고, 제2 객체는 제3 비디오 프레임 이미지의 제3 객체에 중첩되고, 이는 제1 객체의 특징을 진정으로 반영할 수 있으므로, 특수 효과를 보다 사실적으로 만들게 된다.
선택적으로, 제3 객체와 제2 객체의 크기가 동일하지 않을 수 있으므로, 제2 비디오 프레임 이미지의 제3 객체에 전경 이미지로서 제2 객체를 중첩시키기 전에, 방법은 제3 객체에 따라 제2 객체를 스케일링하는 단계를 더 포함한다. 이때, 제2 객체의 스케일링 비율(scaling ratio)은 상기 제3 객체 상의 미리 결정된 2개의 주요 포인트 사이의 거리와 상기 제1 객체 상의 미리 결정된 2개의 주요 포인트 사이의 거리의 비율에 따라 결정될 수 있으므로, 제3 객체가 제1 객체보다 크면 제2 객체가 확대되고, 제3 객체가 제1 객체보다 작으면 제2 객체가 축소된다. 이 단계 이후 제2 비디오 프레임 이미지의 제3 객체와 중첩된 제2 객체는 스케일링 후 제2 객체이다.
또한, 대상 객체가 3차원 가상 객체에 오버레이된 후 대상 객체의 컬러와 3차원 가상 객체의 컬러 사이에 차이가 있을 수 있으므로, 추가 컬러 처리를 활용하여 이러한 차이를 제거할 수 있으므로, 제2 객체와 제3 객체의 중첩시키는 효과가 더 자연스럽도록 차이가 있다. 또한, 단계 S103 이후에, 방법은:
RGB(적색, 녹색, 청색) 컬러 공간(color space)에서 HSV(색(Hue), 포화도(Saturation), 값(Value)) 컬러 공간으로 제3 비디오 프레임 이미지의 제2 객체 및 제3 객체의 컬러 공간을 변환하는 단계;
HSV 컬러 공간에서 H 채널의 제2 객체의 값을 H 채널의 제3 객체의 값으로 대체하는 단계;
제4 비디오 프레임 이미지를 획득하기 위해 제2 객체 및 제3 객체의 컬러 공간을 HSV 공간에서 RGB 컬러 공간으로 변환하는 단계를 더 포함한다.
위의 단계를 거쳐, RGB 공간을 HSV 공간으로 변환하고, 제2 객체의 원래 채도와 밝기를 유지하면서 제2 객체의 컬러를 대상 위치에서 제3 객체의 컬러로 변환하여, 제2 객체는 제3 객체와 더 잘 융합되어 제2 객체를 제3 객체의 일부처럼 만들고 더 사실적으로 만든다.
본 발명의 실시예는 이미지 처리 방법, 장치, 전자 장치 및 컴퓨터 판독 가능 저장 매체를 개시한다. 이미지 처리 방법은 제1 비디오 프레임 이미지에서 제1 객체 및 제1 객체에 위치된 제2 객체를 식별하는 단계; 제1 비디오 프레임 이미지에서 제1 객체의 위치에 따라, 제2 비디오 프레임 이미지를 획득하기 위해 제1 비디오 프레임 이미지 상에 전경 이미지로서 제3 객체를 오버레이하는 단계 - 제3 객체는 제2 비디오 프레임 이미지에서 제1 객체를 오버레이함 -; 제1 비디오 프레임 이미지에서의 제2 객체의 위치에 따라, 제3 비디오 프레임 이미지를 획득하기 위해 제2 비디오 프레임 이미지의 제3 객체 상에 전경 이미지로서 제2 객체를 중첩시키는 단계를 포함한다. 위와 같은 방법을 통해, 객체에 오버레이되는 특수효과가 객체의 본래 특징을 반영하지 못하여 사실감이 결여되는 당업계의 기술적인 문제를 해결할 수 있다.
이상에서, 방법 실시예의 단계가 위의 순서로 설명되었지만, 개시된 실시예의 단계가 반드시 위의 순서로 실행될 필요는 없지만 역순, 병렬 순서, 교차 순서 등과 같은 다른 순서로 실행될 수도 있음이 당업자에게 명백해야 한다. 또한, 위의 단계에 기초하여, 당업자는 다른 단계를 추가할 수 있고, 이러한 명백한 수정 또는 균등한 대안은 또한 본 개시의 보호의 범주 내에 포함되어야 하며, 이는 여기서 반복되지 않을 것이다.
도 5는 본 개시의 실시예에 의해 제공되는 이미지 처리 장치의 실시예의 구조적 개략도이다. 도 5에 도시된 바와 같이, 장치(apparatus)(500)는 객체 식별 모듈(object identification module)(501), 제2 비디오 프레임 이미지 생성 모듈(second video frame image generation module)(502) 및 제3 비디오 프레임 생성 모듈(third video frame generation module)(503)을 포함한다. 그 중,
제1 비디오 프레임 이미지에서 제1 객체 및 제1 객체에 위치된 제2 객체를 식별하도록 구성된 객체 식별 모듈(501);
제1 비디오 프레임 이미지에서 제1 객체의 위치에 따라, 제2 비디오 프레임 이미지를 획득하기 위해 제1 비디오 프레임 이미지 상에 전경 이미지로서 제3 객체를 오버레이하도록 구성된, 제2 비디오 프레임 이미지 생성 모듈(502) - 제3 객체는 제2 비디오 프레임 이미지에서 제1 객체를 오버레이함 -;
제1 비디오 프레임 이미지에서 제2 객체의 위치에 따라, 제3 비디오 프레임 이미지를 획득하기 위해 제2 비디오 프레임 이미지의 제3 객체 상에 전경 이미지로서 제2 객체를 중첩시키도록 구성된 제3 비디오 프레임 생성 모듈(503)이다.
또한, 객체 식별 모듈(501)은:
제1 비디오 프레임 이미지에서 제1 객체의 복수의 제1 주요 포인트 및 제2 객체의 복수의 제2 주요 포인트를 식별하고;
제1 객체의 복수의 제1 주요 포인트에 기초하여 제1 객체를 식별하고;
제2 객체의 복수의 제2 주요 포인트에 기초하여 제2 객체를 식별 - 복수의 제2 주요 포인트는 제2 객체의 가장자리 주요 포인트임 - 하도록 더 구성된다.
또한, 제2 비디오 프레임 이미지 생성 모듈(502)은:
제1 비디오 프레임 이미지에서 제1 객체의 복수의 제1 주요 포인트에 기초하여 제1 비디오 프레임 이미지에서 제1 객체의 앵커 포인트를 계산하고;
제3 객체의 앵커 포인트를 제1 비디오 프레임 이미지의 제1 객체의 앵커 포인트와 정렬함으로써, 제2 비디오 프레임 이미지를 획득하기 위해 제1 비디오 프레임 이미지의 전경 이미지로서 제3 객체를 오버레이하도록 구성된다.
또한, 제2 비디오 프레임 이미지 생성 모듈(502)은:
제1 객체에 미리 설정된 2개의 주요 포인트 사이의 제1 거리를 계산하고;
제1 거리에 기초하여 제2 객체의 오프셋을 계산하고;
제1 비디오 프레임 이미지에서의 제2 객체의 위치 및 제2 객체의 오프셋에 따라, 제3 비디오 프레임 이미지를 획득하기 위해 제2 비디오 프레임 이미지의 제3 객체 상에 전경 이미지로서 제2 객체를 중첩시키도록 더 구성된다.
또한, 제1 거리에 따라 제2 객체의 오프셋을 계산하는 단계는:
제1 객체의 요각 및 피치각을 획득하는 단계 - 여기서 요각은 제1 비디오 프레임 이미지에서 제1 객체의 방위와 렌즈 촬영 방향 사이의 수평각이고, 피치각은 제1 비디오 프레임 이미지에서 제1 객체의 방위와 렌즈 촬영 방향 사이의 수직각임 -;
제1 거리, 요각 및 피치각에 기초하여 제2 객체의 오프셋을 계산하는 단계를 포함한다.
또한, 제1 비디오 프레임 이미지에서 제2 객체의 위치와 제2 객체의 오프셋에 따라, 제3 비디오 프레임 이미지를 획득하기 위해 제2 비디오 프레임 이미지에서 제3 객체의 전경 이미지로서 제2 객체를 중첩시키는 단계는:
대상 앵커 포인트를 획득하기 위해 제2 객체의 오프셋에 따라 제1 비디오 프레임 이미지에서 제2 객체의 초기 앵커 포인트에 대한 위치 오프셋을 수행하는 단계;
제2 비디오 프레임 이미지에서, 제3 비디오 프레임 이미지를 획득하기 위해 제2 객체를 전경 이미지로서 대상 앵커 포인트의 위치에 렌더링하는 단계를 포함한다.
또한, 이미지 처리 장치(image processing apparatus)(500)는:
제3 비디오 프레임 이미지에서 제2 객체 및 제3 객체의 컬러 공간을 RGB 컬러 공간에서 HSV 컬러 공간으로 변환하고; HSV 컬러 공간의 H 채널에 있는 제2 객체의 값을 H 채널에 있는 제3 객체의 값으로 대체하고; 제4 비디오 프레임 이미지를 획득하기 위해 제2 객체 및 제3 객체의 컬러 공간을 HSV 공간으로부터 RGB 컬러 공간으로 변환하도록 구성된 제4 비디오 이미지 생성 모듈(fourth video image generation module)을 더 포함한다.
도 5에 도시된 장치는 도 1 내지 도 4에 도시된 실시예의 방법을 수행할 수 있다. 이 실시예에서 상세하게 설명되지 않은 부분에 대해서는, 도 1-4에 도시된 실시예의 관련 설명을 참조하기 바란다. 기술 방안의 구현 프로세스 및 기술적 효과는 도 1 내지 도 4에 도시된 실시예의 설명을 참조할 수 있고, 여기서 반복되지 않을 것이다.
아래의 도 6을 참조하면, 도 6은 본 개시의 실시예를 구현하기에 적합한 전자 장치(예를 들어, 도 1의 단말 장치 또는 서버)(600)의 개략적인 구조도를 예시한다. 본 출원의 실시 예의 단말 장치는, 예를 들어 휴대폰, 노트북 컴퓨터, 디지털 방송 수신기, 개인 휴대 기기(Personal Digital Assistants)(PDA), PAD(태블릿 컴퓨터), PMP(휴대용 멀티미디어 플레이어), 차량 탑재 단말기(차량용 내비게이션 단말기 등), 고정형 단말기 디지털 TV, 데스크탑 컴퓨터 등과 같은 단말기를 포함할 수 있으나, 이에 제한되지 않는다. 도 6에 디스플레이된 전자 장치는 단지 예일뿐이고, 본 개시의 실시예의 기능 및 응용 범위에 어떠한 제한도 부과해서는 안된다.
도 6에 나타난 바와 같이, 전자 장치(600)는 처리 장치(예를 들어, 중앙 처리 유닛(central processing unit), 그래픽 프로세서(graphics processor) 등)를 포함할 수 있다. 601, 읽기 전용 메모리(read-only memory)(ROM)(602)에 저장된 프로그램 또는 저장 장치(storage device)(608)에서 랜덤 액세스 메모리(random access memory)(RAM)(603)로 로드된 프로그램에 따라 다양한 적절한 연산 및 프로세스를 수행할 수 있다. RAM(603)에는 전자 장치(600)의 연산(operation)에 필요한 각종 프로그램 및 데이터도 저장된다. 처리 장치(601), ROM(602) 및 RAM(603)은 버스(bus)(604)를 통해 서로 연결된다. 입력/출력(I/O) 인터페이스(nterface)(605)도 버스(604)에 연결된다.
일반적으로, 다음의 장치들이 I/O 인터페이스(I/O interface)(605)에 연결될 수 있다: 예를 들어, 터치 스크린, 터치 패드, 키보드, 마우스, 카메라, 마이크로폰, 가속도계, 자이로스코프 등을 포함하는 입력 장치(input device)(606); 예를 들어 액정 디스플레이(LCD), 라우드 스피커, 바이브레이터 등을 포함하는 출력 장치(output device)(607); 예를 들어 자기 테이프, 하드 디스크 등을 포함하는 저장 장치(storage device)(608); 및 통신 장치(communication device)(609). 통신 장치(609)는 전자 장치(600)가 다른 장치와 무선 또는 유선 통신을 수행하여 데이터를 교환하도록 할 수 있다. 도 6은 다양한 구성요소를 갖는 전자 장치(600)를 도시하지만, 제시된 장치 모두를 구현하거나 가질 필요가 없다는 것을 이해해야 한다. 더 많거나 더 적은 수의 장치가 대신 구현되거나 제공될 수 있다.
특히, 본 개시의 실시예실시예에 따르면, 플로우차트를 참조하여 상술한 프로세스는 컴퓨터 소프트웨어 프로그램으로서 구현될 수 있다. 예를 들어, 본 개시의 실시예는 컴퓨터 프로그램 제품을 포함하고, 이는 비일시적 컴퓨터 판독 가능 매체에 포함된 컴퓨터 프로그램을 포함하고, 컴퓨터 프로그램은 흐름도에 도시된 방법을 실행하기 위한 프로그램 코드를 포함한다. 이러한 실시예에서, 컴퓨터 프로그램은 통신 장치(609)를 통해 온라인으로 다운로드되고, 저장 장치(608)로부터 설치 또는 설치되거나, ROM(602)으로부터 설치될 수 있다. 컴퓨터 프로그램이 처리 장치(601)에 의해 실행될 때, 본 개시의 실시예에 제공된 방법에 정의된 상술한 기능들이 실행될 수 있다.
본 개시의 위에서 언급된 컴퓨터 판독가능 매체는 컴퓨터 판독가능 신호 매체 또는 컴퓨터 판독가능 저장 매체 또는 상기 둘의 임의의 조합일 수 있다는 점에 유의해야 한다. 예를 들어, 컴퓨터 판독 가능 저장 매체는 전기, 자기, 광학, 전자기, 적외선 또는 반도체 시스템, 장치 또는 장치, 또는 이들의 임의의 조합일 수 있지만, 이에 제한되지는 않는다. 컴퓨터 판독 가능 저장 매체(computer readable storage medium)의 보다 구체적인 예는: 하나 이상의 와이어를 갖는 전기 연결, 휴대용 컴퓨터 디스크, 하드 디스크, 랜덤 액세스 메모리(RAM), 읽기 전용 메모리(ROM), 소거 가능한 프로그래밍 가능 읽기 전용 메모리(EPROM 또는 플래시 메모리), 광섬유, 휴대용 컴팩트 디스켓 읽기 전용 메모리(CD-ROM), 광학 저장 장치, 자기 저장 장치 또는 위의 적절한 조합을 포함하나, 이에 제한되지 않는다. 본 개시에서, 컴퓨터 판독 가능 저장 매체는 프로그램을 포함하거나 저장하는 임의의 유형의 매체일 수 있으며, 여기서 프로그램은 명령 실행 시스템, 장치 또는 장치에 의해 또는 이와 관련하여 사용될 수 있다. 그러나, 본 개시에서, 컴퓨터 판독 가능 신호 매체는 컴퓨터 판독 가능 프로그램 코드가 운반되는 기저대역 또는 반송파의 일부로서 전파되는 데이터 신호를 포함할 수 있다. 이 전파된 데이터 신호는 전자기 신호, 광학 신호 또는 이들의 임의의 적절한 조합을 포함하지만 이에 제한되지 않는 다양한 형태를 취할 수 있다. 컴퓨터 판독 가능 신호 매체는 또한 명령 실행 시스템, 장치 또는 장치에 의해 또는 이와 관련하여 사용하기 위한 프로그램을 송신, 전파 또는 전송할 수 있는, 컴퓨터 판독 가능 저장 매체 이외의 임의의 컴퓨터 판독 가능 매체일 수 있다. 컴퓨터 판독 가능 매체에 포함된 프로그램 코드는 전선, 광 케이블, RF(무선 주파수) 등, 또는 이들의 임의의 적절한 조합을 포함하지만 이에 제한되지 않는 임의의 적절한 매체를 통해 전송될 수 있다.
일부 실시예에서, 클라이언트와 서버는 하이퍼 택스트 전송 프로토콜(HyperText Transfer Protocol)(HTTP)와 같은 현재 알려져 있거나 미래에 개발될 네트워크 프로토콜을 사용함으로써 통신할 수 있으며, 디지털 데이터 통신의 모든 형태 또는 매체(예를 들어, 통신 네트워크)로 상호 연결될 수 있다. 통신 네트워크의 예로는 근거리 통신망("LAN"), 광역 네트워크("WAN"), 인터넷 네트워크(예를 들어, 인터넷) 및 종단 간 네트워크(예를 들어, 임시 종단 간 네트워크) 또는 현재 알려져 있거나 미래에 개발될 네트워크가 있다.
상기 컴퓨터 판독 가능 매체는 상기 전자 장치에 포함되거나, 상기 전자 장치에 조립되지 않고 분리되어 존재될 수 있다.
전자 장치에 의해 실행될 때, 하나 이상의 프로그램을 포함하는, 컴퓨터 판독 가능 매체는, 전자 장치로 하여금, 제1 비디오 프레임 이미지에서 제1 객체 및 제1 객체에 위치된 제2 객체를 식별하고; 제1 비디오 프레임 이미지에서 제1 객체의 위치에 따라, 제2 비디오 프레임 이미지를 획득하기 위해 제1 비디오 프레임 이미지 상에 전경 이미지로서 제3 객체를 오버레이하고 - 제3 객체는 제2 비디오 프레임 이미지에서 제1 객체를 오버레이함 -; 제1 비디오 프레임 이미지에서의 제2 객체의 위치에 따라, 제3 비디오 프레임 이미지를 획득하기 위해 제2 비디오 프레임 이미지의 제3 객체 상에 전경 이미지로서 제2 객체를 중첩시키도록 한다.
본 개시에서 연산(operation)을 수행하기 위한 컴퓨터 프로그램 코드는 하나 이상의 프로그래밍 언어 또는 그들의 조합 - Java, Smalltalk, C++와 같은 객체 지향 프로그래밍 언어 및 "C" 언어 또는 유사한 프로그래밍 언어와 같은 기존의 절차적 프로그래밍 언어를 포함하지만 이에 제한되지 않음 - 으로 기록될 수 있다. 프로그램은 완전히 사용자의 컴퓨터에서, 부분적으로 사용자의 컴퓨터에서, 독립 소프트웨어 패키지로서, 부분적으로 사용자의 컴퓨터에서, 부분적으로 원격 컴퓨터에서, 또는 완전히 원격 컴퓨터나 서버에서 실행될 수 있다. 원격 컴퓨터의 경우에, 원격 컴퓨터는 지역 네트워크(Local Area Network)(LAN) 또는 광역 네트워크(Wide Area Network)(WAN)을 포함한 모든 종류의 네트워크를 통해 사용자 컴퓨터에 연결되거나 외부 컴퓨터(예를 들어, 인터넷을 통해 연결된 인터넷 서비스 공급자를 사용하여)에 연결될 수 있다.
도면에서의 흐름도 및 블록도는 본 개시의 다양한 실시예에 따른 시스템, 방법 및 컴퓨터 프로그램 제품의 가능한 구현의 아키텍처, 기능 및 동작을 설명한다. 이와 관련하여, 플로우 차트 또는 블록도에서의 각각의 블록은 지정된 논리 기능(들)을 구현하기 위한 하나 이상의 실행가능 코드를 포함하는 모듈, 프로그램 세그먼트 또는 명령(instruction)의 일부를 나타낼 수 있다. 또한 일부 대안적인 구현에서 블록에 표시된 기능은 도면에 표시된 것과 다른 순서로 발생할 수도 있다. 예를 들어, 두 개의 연속 블록은 실제로 기본적으로 병렬로 실행될 수 있으며, 관련된 기능에 따라 역순으로 실행될 수도 있다. 또한 블록도 및/또는 순서도의 각 블록, 블록도 및/또는 순서도의 블록 조합은 지정된 기능 또는 작업을 수행하는 전용 하드웨어 기반 시스템에 의해 구현될 수 있거나 전용 하드웨어 및 컴퓨터 명령의 조합에 의해 구현될 수 있음을 유의해야 한다.
본 개시에서 설명하는 실시예에 관련된 유닛은 소프트웨어 또는 하드웨어로 구현될 수 있다. 어떤 경우에, 유닛의 이름이 유닛 자체에 대한 제한을 구성하지 않다.
이 문서에서 위에서 설명한 기능은 하나 이상의 하드웨어 논리 구성 요소에 의해 적어도 부분적으로 수행될 수 있다. 예를 들어, 제한 없이, 사용될 수 있는 예시적인 유형의 하드웨어 논리 구성요소는: 필드 프로그램머블 게이트 어레이(Field Programmable Gate Array)(FPGA), 애플리케이션 특정 집적 회로(Application Specific Integrated Circuit)(ASIC), 애플리케이션 특정 표준 제품(Application Specific Standard Product)(ASSP), 시스템온칩(System on Chip)(SOC), 컴플랙스 프로그래머블 로직 장치(Complex Programmable Logic Device)(CPLD) 등을 포함할 수 있다.
본 개시의 맥락에서, 기계 판독 가능 매체는 명령 실행 시스템, 장치, 또는 장치에 의해 또는 그와 연결하여 사용하기 위한 프로그램을 포함하거나 저장할 수 있는 유형 매체일 수 있다. 기계 판독 가능 매체(machine readable medium)는 기계 판독 가능 신호 매체 또는 기계 판독 가능 저장 매체일 수 있다. 기계 판독 가능 매체는 전자, 자기, 광학, 전자기, 적외선 또는 반도체 시스템, 장치 또는 장치, 또는 이들의 임의의 적절한 조합을 포함할 수 있지만 이에 제한되지는 않다. 기계 판독 가능 저장 매체(machine readable storage medium)의 보다 구체적인 예는: 하나 이상의 와이어에 기초한 전기 연결, 휴대용 컴퓨터 디스크, 하드 디스크, 랜덤 액세스 메모리(RAM), 읽기 전용 메모리(ROM), 소거 가능한 프로그래밍 가능 읽기 전용 메모리(EPROM 또는 플래시 메모리), 광섬유, 휴대용 컴팩트 디스크 읽기 전용 메모리(CD-ROM), 광학 저장 장치, 자기 저장 장치 또는 위의 적합한 조합을 포함한다.
개시된 실시예는 또한 컴퓨터 프로그램을 제공하고, 컴퓨터 프로그램이 컴퓨터에 의해 실행될 때, 컴퓨터는 본 개시의 실시예에서 제공되는 이미지 처리 방법을 실행한다.
본 개시의 하나 이상의 실시예에 따르면, 다음을 포함하는 이미지 처리 방법이 제공된다:
제1 비디오 프레임 이미지(first video frame image)에서 제1 객체 및 상기 제1 객체에 위치된 제2 객체를 식별하는 단계;
제1 비디오 프레임 이미지(first video frame image)에서 제1 객체의 위치에 따라, 제2 비디오 프레임 이미지(second video frame image)를 획득하기 위해 제1 비디오 프레임 이미지 상에 전경 이미지(foreground image)로서 제3 객체를 오버레이하는 단계 - 제3 객체는 제2 비디오 프레임 이미지에서 제1 객체를 오버레이함 -;
제1 비디오 프레임 이미지에서의 제2 객체의 위치에 따라, 제3 비디오 프레임 이미지를 획득하기 위해 제2 비디오 프레임 이미지의 제3 객체 상에 전경 이미지로서 제2 객체를 중첩시키는 단계를 포함한다.
또한, 제1 비디오 프레임 이미지에서 제1 객체 및 제1 객체에 위치된 제2 객체를 식별하는 단계는:
제1 비디오 프레임 이미지에서 제1 객체의 복수의 제1 주요 포인트 및 제2 객체의 복수의 제2 주요 포인트를 식별하는 단계;
제1 객체의 복수의 제1 주요 포인트에 기초하여 제1 객체를 식별하는 단계;
제2 객체의 복수의 제2 주요 포인트에 기초하여 제2 객체를 식별하는 단계를 포함하고, 복수의 제2 주요 포인트는 제2 객체의 가장자리 주요 포인트다.
또한, 제1 비디오 프레임 이미지에서 제1 객체의 위치에 따라, 제2 비디오 프레임 이미지를 획득하기 위해 제1 비디오 프레임 이미지 상에 전경 이미지로서 제3 객체를 오버레이하는 단계는:
제1 비디오 프레임 이미지에서 제1 객체의 복수의 제1 주요 포인트에 기초하여 제1 비디오 프레임 이미지에서 제1 객체의 앵커 포인트를 계산하는 단계;
제3 객체의 앵커 포인트를 제1 비디오 프레임 이미지에서 제1 객체의 앵커 포인트와 정렬함으로써, 제2 비디오 프레임 이미지를 획득하기 위해 제1 비디오 프레임 이미지에서 전경 이미지로서 제3 객체를 오버레이하는 단계를 포함한다.
또한, 제1 비디오 프레임 이미지에서 제2 객체의 위치에 따라, 제3 비디오 프레임 이미지를 획득하기 위해 제2 비디오 프레임 이미지의 제3 객체 상에 전경 이미지로서 제2 객체를 중첩시키는 단계는:
상기 제1 객체에 미리 설정된 두 개의 주요 포인트 사이의 제1 거리를 계산하는 단계;
상기 제1 거리에 기초하여 상기 제2 객체의 오프셋을 계산하는 단계;
제1 비디오 프레임 이미지에서의 제2 객체의 위치 및 제2 객체의 오프셋에 따라, 제2 비디오 프레임 이미지의 제3 객체 상에 전경 이미지로서 제2 객체를 중첩시켜 제3 비디오 프레임 이미지를 획득하는 단계를 포함한다.
또한, 제1 거리에 기초하여 제2 객체의 오프셋을 계산하는 단계는:
제1 객체의 요각(yaw angle) 및 피치각(pitch angle)을 획득하는 단계 - 여기서 요각은 제1 비디오 프레임 이미지에서 제1 객체의 방위(orientation)와 렌즈 촬영 방향(lens shooting direction) 사이의 수평각이고, 피치각은 제1 비디오 프레임 이미지에서 제1 객체의 방위와 렌즈 촬영 방향 사이의 수직각임 -;
및 상기 제1 거리, 상기 요각 및 상기 피치각에 기초하여 상기 제2 객체의 오프셋을 계산하는 단계를 포함한다.
또한, 제1 비디오 프레임 이미지에서의 제2 객체의 위치 및 제2 객체의 오프셋에 따라, 제3 비디오 프레임 이미지를 획득하기 위해 제2 비디오 프레임 이미지의 제3 객체 상에 전경 이미지로서 제2 객체를 중첩시키는 단계는:
대상 앵커 포인트를 획득하기 위해 제2 객체의 오프셋에 따라 제1 비디오 프레임 이미지에서 제2 객체의 초기 앵커 포인트에 대한 위치 오프셋을 수행하는 단계;
제2 비디오 프레임 이미지에서, 제3 비디오 프레임 이미지를 획득하기 위해 대상 앵커 포인트의 위치에 전경 이미지로서 제2 객체를 렌더링하는 단계를 포함한다.
또한, 방법은, 제3 비디오 프레임 이미지를 획득한 후:
상기 제3 비디오 프레임 이미지에서 상기 제2 객체 및 상기 제3 객체의 컬러 공간을 RGB 컬러 공간에서 HSV 컬러 공간으로 변환하는 단계;
HSV 컬러 공간에서 H 채널의 제2 객체의 값을 H 채널의 제3 객체의 값으로 대체하는 단계;
제4 비디오 프레임 이미지를 획득하기 위해 제2 객체 및 제3 객체의 컬러 공간을 HSV 공간에서 RGB 컬러 공간으로 변환하는 단계를 더 포함한다.
본 발명의 일 실시예에 따르면, [실시예 8]은 이미지 처리 장치(image processing apparatus)를 제공하고, 이는:
제1 비디오 프레임 이미지의 제1 객체 및 상기 제1 객체에 위치된 제2 객체를 식별하도록 구성된 객체 식별 모듈(object identification module);
제1 비디오 프레임 이미지에서 제1 객체의 위치에 따라, 제2 비디오 프레임 이미지를 획득하기 위해 제1 비디오 프레임 이미지에 전경 이미지로서 제3 객체를 오버레이하도록 구성된 제2 비디오 프레임 이미지 생성 모듈(second video frame image generation module) - 제3 객체는 제2 비디오 프레임 이미지에서 제1 객체를 오버레이함 -;
제1 비디오 프레임 이미지에서 제2 객체의 위치에 따라, 제3 비디오 프레임 이미지를 획득하기 위해 제2 비디오 프레임 이미지의 제3 객체 상에 전경 이미지로서 제2 객체를 중첩시키도록 구성된 제3 비디오 프레임 생성 모듈(third video frame generation module)을 포함한다.
또한, 객체 식별 모듈은 다음을 수행하도록 추가로 구성된다.
제1 비디오 프레임 이미지에서 제1 객체의 복수의 제1 주요 포인트 및 제2 객체의 복수의 제2 주요 포인트를 식별하고;
제1 객체의 복수의 제1 주요 포인트에 기초하여 제1 객체를 식별하고;
제2 객체의 복수의 제2 주요 포인트에 기초하여 제2 객체를 식별 - 복수의 제2 주요 포인트는 제2 객체의 가장자리 주요 포인트임 - 하도록 더 구성된다.
또한, 제2 비디오 프레임 이미지 생성 모듈은:
제1 비디오 프레임 이미지에서 제1 객체의 복수의 제1 주요 포인트에 기초하여 제1 비디오 프레임 이미지에서 제1 객체의 앵커 포인트를 계산하고;
제3 객체의 앵커 포인트를 제1 비디오 프레임 이미지의 제1 객체의 앵커 포인트와 정렬함으로써, 제2 비디오 프레임 이미지를 획득하기 위해 제1 비디오 프레임 이미지의 전경 이미지로서 제3 객체를 오버레이하도록 구성된다.
또한, 제2 비디오 프레임 이미지 생성 모듈은:
제1 객체에 미리 설정된 2개의 주요 포인트 사이의 제1 거리를 계산하고;
제1 거리에 기초하여 제2 객체의 오프셋을 계산하고;
제1 비디오 프레임 이미지에서의 제2 객체의 위치 및 제2 객체의 오프셋에 따라, 제3 비디오 프레임 이미지를 획득하기 위해 제2 비디오 프레임 이미지의 제3 객체 상에 전경 이미지로서 제2 객체를 중첩시키도록 더 구성된다.
또한, 제1 거리에 기초하여 제2 객체의 오프셋을 계산하는 단계는:
제1 객체의 요각 및 피치각을 획득하는 단계 - 여기서 요각은 제1 비디오 프레임 이미지에서 제1 객체의 방위와 렌즈 촬영 방향 사이의 수평각이고, 피치각은 제1 비디오 프레임 이미지에서 제1 객체의 방위와 렌즈 촬영 방향 사이의 수직각임 -;
제1 거리, 요각 및 피치각에 기초하여 제2 객체의 오프셋을 계산하는 단계를 포함한다.
또한, 제1 비디오 프레임 이미지에서 제2 객체의 위치와 제2 객체의 오프셋에 따라, 제3 비디오 프레임 이미지를 획득하기 위해 제2 비디오 프레임 이미지에서 제3 객체의 전경 이미지로서 제2 객체를 중첩시커는 단계는:
대상 앵커 포인트를 획득하기 위해 제2 객체의 오프셋에 따라 제1 비디오 프레임 이미지에서 제2 객체의 초기 앵커 포인트에 대한 위치 오프셋을 수행하는 단계;
제2 비디오 프레임 이미지에서, 제3 비디오 프레임 이미지를 획득하기 위해 제2 객체를 전경 이미지로서 대상 앵커 포인트의 위치에 렌더링하는 단계를 포함한다.
또한, 이미지 처리 장치는:
제3 비디오 프레임 이미지에서 제2 객체 및 제3 객체의 컬러 공간을 RGB 컬러 공간에서 HSV 컬러 공간으로 변환하고; HSV 컬러 공간의 H 채널에 있는 제2 객체의 값을 H 채널에 있는 제3 객체의 값으로 대체하고; 제4 비디오 프레임 이미지를 획득하기 위해 제2 객체 및 제3 객체의 컬러 공간을 HSV 공간으로부터 RGB 컬러 공간으로 변환하도록 구성된 제4 비디오 이미지 생성 모듈(fourth video image generation module)을 더 포함한다.
본 개시의 하나 이상의 실시예에 따르면, 컴퓨터 프로그램이 제공되고, 컴퓨터 프로그램이 컴퓨터 상에서 실행될 때, 컴퓨터는 본 개시의 실시예에서 제공되는 이미지 처리 방법을 실행한다.
위의 설명은 본 발명의 실시예이자 적용된 기술적 원리에 대한 설명일 뿐이다. 본 개시와 관련된 개시 범위는 위의 기술 특징들의 특정한 조합에 의해 형성되는 기술 개념에 제한되지 않고, 위의 개시된 기술 특징들 또는 이들과 동등한 특징의 임의의 조합에 의해 형성되는 다른 기술 개념 또한 위의 개시된 개념으로부터 벗어남이 없이 포함되는 것을 이 기술분야의 당업자에 의해 이해되어야 한다. 예를 들어, 본 개시(이에 한정되지 않음)에 개시되어 있는 유사한 기능을 갖는 기술적 특징과 위의 특징을 교환함으로써 형성된 기술 솔루션이다.
또한, 특정한 순서로 동작을 설명하고 있지만, 이러한 동작은 도시된 특정 순서로 보여지거나 순차적으로 수행되는 것이 요구되는 것으로 이해되어서는 안 된다. 특정 상황에서는 멀티태스킹 및 병렬 처리가 유리할 수 있다. 유사하게, 몇몇 특정 구현 세부사항이 위의 논의에 포함되지만, 이들은 본 개시의 범위를 제한하는 것으로 해석되어서는 안 된다. 이떤 특징은 별도의 실시예의 맥락에서 또한 조합의 단일 실시예에서 구현될 수 있다. 반대로, 단일 실시예의 맥락에서 기술된 다양한 특징은 또한 홀로 또는 임의의 적절한 서브 조합으로 다중 실시예에서도 구현될 수 있다.
주제가 구조적 특징 및/또는 방법의 논리적 실행에 특정한 언어로 설명되었지만, 첨부된 청구범위에 정의된 주제는 위에서 설명된 특정 특징 또는 실행으로 불필요하게 제한됨을 이해해야 한다. 반대로, 위에 설명된 특정 기능 및 액션은 청구범위를 구현하는 예시적인 형태일 뿐이다.

Claims (17)

  1. 이미지 처리 방법에 있어서,
    제1 비디오 프레임 이미지에서 제1 객체 및 상기 제1 객체에 위치된 제2 객체를 식별하는 단계;
    상기 제1 비디오 프레임 이미지에서 상기 제1 객체의 위치에 따라, 제2 비디오 프레임 이미지를 획득하기 위해 상기 제1 비디오 프레임 이미지 상에 전경 이미지로서 제3 객체를 오버레이하는 단계 - 상기 제3 객체는 상기 제2 비디오 프레임 이미지에서 상기 제1 객체를 오버레이함 -;
    상기 제1 비디오 프레임 이미지에서의 상기 제2 객체의 위치에 따라, 제3 비디오 프레임 이미지를 획득하기 위해 상기 제2 비디오 프레임 이미지의 제3 객체 상에 전경 이미지로서 상기 제2 객체를 중첩시키는 단계를 포함하는
    방법.
  2. 제1항에 있어서,
    상기 제1 비디오 프레임 이미지에서 제1 객체와 상기 제1 객체에 위치된 제2 객체를 식별하는 단계는:
    상기 제1 비디오 프레임 이미지에서 상기 제1 객체의 복수의 제1 주요 포인트 및 상기 제2 객체의 복수의 제2 주요 포인트를 식별하는 단계;
    상기 제1 객체의 복수의 제1 주요 포인트에 기초하여 상기 제1 객체를 식별하는 단계;
    상기 제2 객체의 복수의 제2 주요 포인트에 기초하여 상기 제2 객체를 식별하는 단계를 포함하고, 상기 복수의 제2 주요 포인트는 상기 제2 객체의 가장자리 주요 포인트인
    방법.
  3. 제2항에 있어서,
    상기 제1 비디오 프레임 이미지에서 상기 제1 객체의 위치에 따라, 제2 비디오 프레임 이미지를 획득하기 위해 상기 제1 비디오 프레임 이미지 상에 전경 이미지로서 제3 객체를 오버레이하는 단계는:
    상기 제1 비디오 프레임 이미지에서 상기 제1 객체의 복수의 제1 주요 포인트에 기초하여 상기 제1 비디오 프레임 이미지에서 상기 제1 객체의 앵커 포인트를 계산하는 단계;
    상기 제3 객체의 앵커 포인트를 상기 제1 비디오 프레임 이미지에서 상기 제1 객체의 앵커 포인트와 정렬함으로써, 상기 제2 비디오 프레임 이미지를 획득하기 위해 상기 제1 비디오 프레임 이미지에서 전경 이미지로서 상기 제3 객체를 오버레이하는 단계를 포함하는
    방법.
  4. 제1항 내지 제3항 중 어느 한 항에 있어서,
    상기 제1 비디오 프레임 이미지에서 상기 제2 객체의 위치에 따라, 상기 제3 비디오 프레임 이미지를 획득하기 위해 상기 제2 비디오 프레임 이미지의 제3 객체 상에 전경 이미지로서 상기 제2 객체를 중첩시키는 단계는:
    상기 제1 객체에 미리 설정된 두 개의 주요 포인트 사이의 제1 거리를 계산하는 단계;
    상기 제1 거리에 기초하여 상기 제2 객체의 오프셋을 계산하는 단계;
    제1 비디오 프레임 이미지에서의 제2 객체의 위치 및 제2 객체의 오프셋에 따라, 상기 제3 비디오 프레임 이미지를 획득하기 위해 상기 제2 비디오 프레임 이미지의 상기 제3 객체 상에 전경 이미지로서 상기 제2 객체를 중첩시키는 단계를 포함하는
    방법.
  5. 제4항에 있어서,
    상기 제1 거리에 기초하여 상기 제2 객체의 오프셋을 계산하는 단계는:
    상기 제1 객체의 요각 및 피치각을 획득하는 단계 - 상기 요각은 상기 제1 비디오 프레임 이미지에서 제1 객체의 방위와 렌즈 촬영 방향 사이의 수평각이고, 상기 피치각은 상기 제1 비디오 프레임 이미지에서 상기 제1 객체의 방위와 상기 렌즈 촬영 방향 사이의 수직각임 -;
    및 상기 제1 거리, 상기 요각 및 상기 피치각에 기초하여 상기 제2 객체의 오프셋을 계산하는 단계를 포함하는
    방법.
  6. 제4항 또는 제5항에 있어서,
    상기 제1 비디오 프레임 이미지에서의 상기 제2 객체의 위치 및 상기 제2 객체의 오프셋에 따라, 상기 제3 비디오 프레임 이미지를 획득하기 위해 상기 제2 비디오 프레임 이미지의 제3 객체 상에 전경 이미지로서 상기 제2 객체를 중첩시키는 단계는:
    대상 앵커 포인트를 획득하기 위해 상기 제2 객체의 오프셋에 따라 상기 제1 비디오 프레임 이미지에서 상기 제2 객체의 초기 앵커 포인트에 대한 위치 오프셋을 수행하는 단계;
    상기 제2 비디오 프레임 이미지에서, 상기 제3 비디오 프레임 이미지를 획득하기 위해 상기 대상 앵커 포인트의 위치에 전경 이미지로서 상기 제2 객체를 렌더링하는 단계를 포함하는
    방법.
  7. 제1항 내지 제6항 중 어느 한 항에 있어서,
    상기 제3 비디오 프레임 이미지를 획득한 후,
    상기 제3 비디오 프레임 이미지에서 상기 제2 객체 및 상기 제3 객체의 컬러 공간을 RGB 컬러 공간에서 HSV 컬러 공간으로 변환하는 단계;
    상기 HSV 컬러 공간에서 H 채널의 제2 객체의 값을 상기 H 채널의 상기 제3 객체의 값으로 대체하는 단계;
    제4 비디오 프레임 이미지를 획득하기 위해 상기 제2 객체 및 상기 제3 객체의 컬러 공간을 상기 HSV 공간에서 상기 RGB 컬러 공간으로 변환하는 단계를 더 포함하는
    방법.
  8. 이미지 처리 장치에 있어서,
    제1 비디오 프레임 이미지의 제1 객체 및 상기 제1 객체에 위치된 제2 객체를 식별하도록 구성된 객체 식별 모듈;
    상기 제1 비디오 프레임 이미지에서 상기 제1 객체의 위치에 따라, 제2 비디오 프레임 이미지를 획득하기 위해 상기 제1 비디오 프레임 이미지에 전경 이미지로서 제3 객체를 오버레이하도록 구성된 제2 비디오 프레임 이미지 생성 모듈 - 상기 제3 객체는 상기 제2 비디오 프레임 이미지에서 상기 제1 객체를 오버레이함 -;
    상기 제1 비디오 프레임 이미지에서 상기 제2 객체의 위치에 따라, 제3 비디오 프레임 이미지를 획득하기 위해 상기 제2 비디오 프레임 이미지의 상기 제3 객체 상에 전경 이미지로서 상기 제2 객체를 중첩시키도록 구성된 제3 비디오 프레임 생성 모듈을 포함하는
    장치.
  9. 제8항에 있어서,
    상기 객체 식별 모듈은:
    상기 제1 비디오 프레임 이미지에서 상기 제1 객체의 복수의 제1 주요 포인트 및 상기 제2 객체의 복수의 제2 주요 포인트를 식별하고;
    상기 제1 객체의 복수의 제1 주요 포인트에 기초하여 상기 제1 객체를 식별하고;
    상기 제2 객체의 복수의 제2 주요 포인트에 기초하여 상기 제2 객체를 식별하도록 - 상기 복수의 제2 주요 포인트는 상기 제2 객체의 가장자리 주요 포인트임 - 더 구성되는
    장치.
  10. 제9항에 있어서,
    상기 제2 비디오 프레임 이미지 생성 모듈은:
    상기 제1 비디오 프레임 이미지에서 상기 제1 객체의 복수의 제1 주요 포인트에 기초하여 상기 제1 비디오 프레임 이미지에서 상기 제1 객체의 앵커 포인트를 계산하고;
    상기 제3 객체의 앵커 포인트를 상기 제1 비디오 프레임 이미지의 상기 제1 객체의 앵커 포인트와 정렬함으로써, 상기 제2 비디오 프레임 이미지를 획득하기 위해 상기 제1 비디오 프레임 이미지의 전경 이미지로서 상기 제3 객체를 오버레이하도록 구성되는
    장치.
  11. 제8항 내지 제10항 중 어느 한 항에 있어서,
    상기 제2 비디오 프레임 이미지 생성 모듈은:
    상기 제1 객체에 미리 설정된 2개의 주요 포인트 사이의 제1 거리를 계산하고;
    상기 제1 거리에 기초하여 상기 제2 객체의 오프셋을 계산하고;
    상기 제1 비디오 프레임 이미지에서의 상기 제2 객체의 위치 및 상기 제2 객체의 오프셋에 따라, 상기 제3 비디오 프레임 이미지를 획득하기 위해 상기 제2 비디오 프레임 이미지의 상기 제3 객체 상에 전경 이미지로서 상기 제2 객체를 중첩시키도록 더 구성되는
    장치.
  12. 제11항에 있어서,
    상기 제1 거리에 기초하여 상기 제2 객체의 오프셋을 계산하는 단계는:
    상기 제1 객체의 요각 및 피치각을 획득하는 단계 - 상기 요각은 상기 제1 비디오 프레임 이미지에서 제1 객체의 방위와 렌즈 촬영 방향 사이의 수평각이고, 상기 피치각은 상기 제1 비디오 프레임 이미지에서 상기 제1 객체의 방위와 상기 렌즈 촬영 방향 사이의 수직각임 -;
    및 상기 제1 거리, 상기 요각 및 상기 피치각에 기초하여 상기 제2 객체의 오프셋을 계산하는 단계를 포함하는
    장치.
  13. 제11항 또는 제12항에 있어서,
    상기 제1 비디오 프레임 이미지에서의 상기 제2 객체의 위치 및 상기 제2 객체의 오프셋에 따라, 상기 제3 비디오 프레임 이미지를 획득하기 위해 상기 제2 비디오 프레임 이미지의 상기 제3 객체 상에 전경 이미지로서 상기 제2 객체를 중첩시키는 단계는:
    대상 앵커 포인트를 획득하기 위해 상기 제2 객체의 오프셋에 따라 상기 제1 비디오 프레임 이미지에서 상기 제2 객체의 초기 앵커 포인트에 대한 위치 오프셋을 수행하는 단계;
    상기 제2 비디오 프레임 이미지에서, 상기 제3 비디오 프레임 이미지를 획득하기 위해 상기 제2 객체를 전경 이미지로서 상기 대상 앵커 포인트의 위치에 렌더링하는 단계를 포함하는
    장치.
  14. 제8항 내지 제13항 중 어느 한 항에 있어서,
    상기 이미지 처리 장치는:
    상기 제3 비디오 프레임 이미지에서 상기 제2 객체 및 상기 제3 객체의 컬러 공간을 RGB 컬러 공간에서 HSV 컬러 공간으로 변환하고; 상기 HSV 컬러 공간의 H 채널에 있는 상기 제2 객체의 값을 상기 H 채널에 있는 상기 제3 객체의 값으로 대체하고; 제4 비디오 프레임 이미지를 획득하기 위해 상기 제2 객체 및 상기 제3 객체의 컬러 공간을 상기 HSV 공간으로부터 상기 RGB 컬러 공간으로 변환하도록 구성된 제4 비디오 이미지 생성 모듈을 더 포함하는
    장치.
  15. 전자 장치에 있어서,
    컴퓨터 판독 가능 명령을 저장하기 위한 메모리; 및
    상기 컴퓨터 판독 가능 명령을 실행하기 위한 프로세서를 포함하고, 상기 컴퓨터 판독 가능 명령을 실행할 때, 상기 프로세서로 하여금, 제1항 내지 제7항 중 어느 한 항의 이미지 처리 방법을 구현하도록 하는
    장치.
  16. 컴퓨터 판독 가능 명령을 저장하기 위한 비일시적 컴퓨터 판독 가능 저장 매체에 있어서,
    상기 컴퓨터에 의해 실행될 때, 상기 컴퓨터로 하여금,
    제1항 내지 제7항 중 어느 한 항의 이미지 처리 방법을 실행하게 하는
    비일시적 컴퓨터 판독 가능 저장 매체.
  17. 컴퓨터 프로그램에 있어서,
    상기 컴퓨터 프로그램이 컴퓨터에 의해 실행될 때, 상기 컴퓨터는 제1항 내지 제7항 중 어느 한 항의 이미지 처리 방법을 실행되는
    컴퓨터 프로그램.
KR1020227023064A 2019-12-18 2020-12-16 이미지 처리 방법, 장치, 전자 장치 및 컴퓨터 판독 가능 저장 매체 KR102534449B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201911306421.6A CN112991147B (zh) 2019-12-18 2019-12-18 图像处理方法、装置、电子设备及计算机可读存储介质
CN201911306421.6 2019-12-18
PCT/CN2020/136993 WO2021121291A1 (zh) 2019-12-18 2020-12-16 图像处理方法、装置、电子设备及计算机可读存储介质

Publications (2)

Publication Number Publication Date
KR20220099584A true KR20220099584A (ko) 2022-07-13
KR102534449B1 KR102534449B1 (ko) 2023-05-26

Family

ID=76343710

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020227023064A KR102534449B1 (ko) 2019-12-18 2020-12-16 이미지 처리 방법, 장치, 전자 장치 및 컴퓨터 판독 가능 저장 매체

Country Status (10)

Country Link
US (1) US11651529B2 (ko)
EP (1) EP4060611A4 (ko)
JP (1) JP7214926B1 (ko)
KR (1) KR102534449B1 (ko)
CN (1) CN112991147B (ko)
AU (1) AU2020404293B2 (ko)
BR (1) BR112022012014A2 (ko)
CA (1) CA3162058A1 (ko)
MX (1) MX2022007700A (ko)
WO (1) WO2021121291A1 (ko)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104899825A (zh) * 2014-03-06 2015-09-09 腾讯科技(深圳)有限公司 一种对图片人物造型的方法和装置
KR20170013379A (ko) * 2014-08-12 2017-02-06 센젠 차이나 스타 옵토일렉트로닉스 테크놀로지 컴퍼니 리미티드 Wrgb 색포화도를 향상시키는 방법
KR20180054406A (ko) * 2016-11-15 2018-05-24 삼성전자주식회사 영상 처리 장치 및 방법
CN108171716A (zh) * 2017-12-25 2018-06-15 北京奇虎科技有限公司 基于自适应跟踪框分割的视频人物装扮方法及装置
CN109658420A (zh) * 2018-11-21 2019-04-19 深圳艺达文化传媒有限公司 短视频的换脸方法及相关产品

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4603249B2 (ja) 2003-07-07 2010-12-22 パイオニア株式会社 カメラ付き携帯電話機における画像処理装置
US8620038B2 (en) * 2006-05-05 2013-12-31 Parham Aarabi Method, system and computer program product for automatic and semi-automatic modification of digital images of faces
CN103116902A (zh) * 2011-11-16 2013-05-22 华为软件技术有限公司 三维虚拟人头像生成方法、人头像运动跟踪方法和装置
CN104797165A (zh) * 2013-08-30 2015-07-22 松下知识产权经营株式会社 化妆辅助装置、化妆辅助方法以及化妆辅助程序
JP6304999B2 (ja) * 2013-10-09 2018-04-04 アイシン精機株式会社 顔検出装置、方法およびプログラム
JP6287337B2 (ja) * 2014-02-28 2018-03-07 富士ゼロックス株式会社 画像処理装置、画像処理方法、画像処理システムおよびプログラム
CN105100775B (zh) * 2015-07-29 2017-12-05 努比亚技术有限公司 一种图像处理方法及装置、终端
WO2018003421A1 (ja) * 2016-06-30 2018-01-04 パナソニックIpマネジメント株式会社 画像処理装置および画像処理方法
FR3053509B1 (fr) 2016-06-30 2019-08-16 Fittingbox Procede d’occultation d’un objet dans une image ou une video et procede de realite augmentee associe
CN108957742B (zh) * 2017-05-19 2021-09-03 深圳市易瞳科技有限公司 一种实现画面虚拟透明动态调节的增强现实头盔及方法
CN107330408B (zh) * 2017-06-30 2021-04-20 北京乐蜜科技有限责任公司 视频处理方法、装置、电子设备及存储介质
WO2019014646A1 (en) * 2017-07-13 2019-01-17 Shiseido Americas Corporation REMOVAL OF VIRTUAL FACIAL MAKE-UP, FAST FACIAL DETECTION AND TRACK POINT TRACKING
CN109410119A (zh) 2017-08-18 2019-03-01 北京凤凰都市互动科技有限公司 面具图像变形方法及其系统
CN107563962A (zh) * 2017-09-08 2018-01-09 北京奇虎科技有限公司 视频数据实时处理方法及装置、计算设备
CN107680105B (zh) * 2017-10-12 2021-05-25 北京奇虎科技有限公司 基于虚拟世界的视频数据实时处理方法及装置、计算设备
CN107820027A (zh) * 2017-11-02 2018-03-20 北京奇虎科技有限公司 视频人物装扮方法、装置、计算设备及计算机存储介质
CN107808372B (zh) * 2017-11-02 2022-01-28 北京奇虎科技有限公司 图像穿越处理方法、装置、计算设备及计算机存储介质
US20190206753A1 (en) 2017-12-30 2019-07-04 Intel Corporation Bicontinuous porous ceramic composite for semiconductor package applications
CN108416835B (zh) * 2018-01-31 2022-07-05 福建天晴在线互动科技有限公司 一种脸部特效的实现方法及终端
EP3534333A1 (en) * 2018-02-28 2019-09-04 Aptiv Technologies Limited Method for calibrating the position and orientation of a camera relative to a calibration pattern
US10762665B2 (en) * 2018-05-23 2020-09-01 Perfect Corp. Systems and methods for performing virtual application of makeup effects based on a source image
US20200082158A1 (en) * 2018-09-10 2020-03-12 Algomus, Inc. Facial image makeup transfer system
RU2703327C1 (ru) 2018-12-10 2019-10-16 Самсунг Электроникс Ко., Лтд. Способ обработки двухмерного изображения и реализующее его вычислительное устройство пользователя
WO2020122513A1 (ko) 2018-12-10 2020-06-18 삼성전자주식회사 2차원 이미지 처리 방법 및 이 방법을 실행하는 디바이스
CN110062176B (zh) * 2019-04-12 2020-10-30 北京字节跳动网络技术有限公司 生成视频的方法、装置、电子设备和计算机可读存储介质
CN110475150B (zh) * 2019-09-11 2021-10-08 广州方硅信息技术有限公司 虚拟礼物特效的渲染方法和装置、直播系统

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104899825A (zh) * 2014-03-06 2015-09-09 腾讯科技(深圳)有限公司 一种对图片人物造型的方法和装置
KR20170013379A (ko) * 2014-08-12 2017-02-06 센젠 차이나 스타 옵토일렉트로닉스 테크놀로지 컴퍼니 리미티드 Wrgb 색포화도를 향상시키는 방법
KR20180054406A (ko) * 2016-11-15 2018-05-24 삼성전자주식회사 영상 처리 장치 및 방법
CN108171716A (zh) * 2017-12-25 2018-06-15 北京奇虎科技有限公司 基于自适应跟踪框分割的视频人物装扮方法及装置
CN109658420A (zh) * 2018-11-21 2019-04-19 深圳艺达文化传媒有限公司 短视频的换脸方法及相关产品

Also Published As

Publication number Publication date
JP2023504926A (ja) 2023-02-07
AU2020404293B2 (en) 2023-09-28
AU2020404293A1 (en) 2022-07-07
US11651529B2 (en) 2023-05-16
JP7214926B1 (ja) 2023-01-30
WO2021121291A1 (zh) 2021-06-24
CN112991147A (zh) 2021-06-18
CA3162058A1 (en) 2021-06-24
EP4060611A4 (en) 2023-01-18
EP4060611A1 (en) 2022-09-21
CN112991147B (zh) 2023-10-27
US20220319062A1 (en) 2022-10-06
KR102534449B1 (ko) 2023-05-26
MX2022007700A (es) 2022-09-19
BR112022012014A2 (pt) 2022-08-30

Similar Documents

Publication Publication Date Title
CN111242881B (zh) 显示特效的方法、装置、存储介质及电子设备
CN110058685B (zh) 虚拟对象的显示方法、装置、电子设备和计算机可读存储介质
CN112989904B (zh) 风格图像生成方法、模型训练方法、装置、设备和介质
EP4274221A1 (en) Special-effect display method and apparatus, and device and medium
CN106846497B (zh) 应用于终端的呈现三维地图的方法和装置
CN110796664B (zh) 图像处理方法、装置、电子设备及计算机可读存储介质
WO2019060985A1 (en) CLOUD SYSTEM AND METHOD FOR CREATING A VIRTUAL GUIDED TOUR
CN109754464B (zh) 用于生成信息的方法和装置
EP4300943A1 (en) Subtitle rendering method and apparatus for virtual reality space, device, and medium
CN115810101A (zh) 三维模型风格化方法、装置、电子设备及存储介质
CN109981989B (zh) 渲染图像的方法、装置、电子设备和计算机可读存储介质
CN112714263B (zh) 视频生成方法、装置、设备及存储介质
CN111818265B (zh) 基于增强现实模型的交互方法、装置、电子设备及介质
CN111833459B (zh) 一种图像处理方法、装置、电子设备及存储介质
CN109816791B (zh) 用于生成信息的方法和装置
CN116563740A (zh) 基于扩展现实的控制方法、装置、电子设备和存储介质
WO2023035973A1 (zh) 视频处理方法、装置、设备及介质
KR102534449B1 (ko) 이미지 처리 방법, 장치, 전자 장치 및 컴퓨터 판독 가능 저장 매체
CN114049403A (zh) 一种多角度三维人脸重建方法、装置及存储介质
CN116527993A (zh) 视频的处理方法、装置、电子设备、存储介质和程序产品
RU2802724C1 (ru) Способ и устройство обработки изображений, электронное устройство и машиночитаемый носитель информации
CN110807728B (zh) 对象的显示方法、装置、电子设备及计算机可读存储介质
EP4086102A2 (en) Navigation method and apparatus, electronic device, readable storage medium and computer program product
CN117152385A (zh) 图像处理方法、装置、电子设备及存储介质
CN115375801A (zh) 图像处理方法、装置、设备及存储介质

Legal Events

Date Code Title Description
A302 Request for accelerated examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant