KR102641060B1 - Image processing method and apparatus for facilitating 3d object editing by a user - Google Patents

Image processing method and apparatus for facilitating 3d object editing by a user Download PDF

Info

Publication number
KR102641060B1
KR102641060B1 KR1020220061759A KR20220061759A KR102641060B1 KR 102641060 B1 KR102641060 B1 KR 102641060B1 KR 1020220061759 A KR1020220061759 A KR 1020220061759A KR 20220061759 A KR20220061759 A KR 20220061759A KR 102641060 B1 KR102641060 B1 KR 102641060B1
Authority
KR
South Korea
Prior art keywords
image
information
map
pixel
texture map
Prior art date
Application number
KR1020220061759A
Other languages
Korean (ko)
Other versions
KR20230162184A (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 주식회사 원유니버스
Priority to KR1020220061759A priority Critical patent/KR102641060B1/en
Priority to PCT/KR2023/001639 priority patent/WO2023224212A1/en
Publication of KR20230162184A publication Critical patent/KR20230162184A/en
Application granted granted Critical
Publication of KR102641060B1 publication Critical patent/KR102641060B1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/20Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • G06T13/203D [Three Dimensional] animation
    • G06T13/403D [Three Dimensional] animation of characters, e.g. humans, animals or virtual beings
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/04Texture mapping
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/20Finite element generation, e.g. wire-frame surface description, tesselation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Graphics (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Architecture (AREA)
  • Geometry (AREA)
  • Human Computer Interaction (AREA)
  • Processing Or Creating Images (AREA)
  • Image Generation (AREA)

Abstract

사용자에 의한 3차원(3D) 객체 편집을 용이하게 하는 영상 처리 방법으로서, 3D 객체의 원본 이미지를 획득하는 단계; 객체 편집 단계; 편집된 객체에 대한 2D 이미지와 UV 맵 이미지를 획득하는 편집 이미지 획득 단계; 상기 편집 이미지 획득 단계와는 병렬적으로 수행되되, 상기 원본 이미지에 대한 원본 텍스쳐 맵을 생성하는 단계; 상기 2D 이미지와 상기 UV 맵 이미지로부터 픽셀 정보를 수집하는 단계; 상기 2D 이미지 픽셀 정보와, 상기 UV 맵 이미지 픽셀 정보와, 상기 텍스쳐 맵 정보를 이용하여, 실제 3D 모델에 적용될 보정된 텍스쳐 맵을 모델링하는 단계; 및 상기 보정된 텍스쳐 맵을 이용하여 UV매핑을 수행하는 단계를 포함하는 영상처리방법이 개시된다.An image processing method that facilitates editing of a three-dimensional (3D) object by a user, comprising: acquiring an original image of a 3D object; object editing step; An editing image acquisition step of acquiring a 2D image and a UV map image for the edited object; Performed in parallel with the edited image acquisition step, generating an original texture map for the original image; collecting pixel information from the 2D image and the UV map image; Modeling a corrected texture map to be applied to an actual 3D model using the 2D image pixel information, the UV map image pixel information, and the texture map information; and performing UV mapping using the corrected texture map.

Description

사용자에 의한 3차원(3D) 객체 편집을 용이하게 하는 영상처리방법 및 영상처리장치{IMAGE PROCESSING METHOD AND APPARATUS FOR FACILITATING 3D OBJECT EDITING BY A USER}Image processing method and image processing device that facilitates editing of three-dimensional (3D) objects by users {IMAGE PROCESSING METHOD AND APPARATUS FOR FACILITATING 3D OBJECT EDITING BY A USER}

본 발명은 사용자에 의한 3차원(3D) 객체 편집을 용이하게 하는 영상처리방법 및 영상처리장치에 관한 것으로, 구체적으로는 사용자에 의한 3D 아바타 메이크업 편집을 용이하게 하는 영상처리방법 및 영상처리장치에 관한 것이다.The present invention relates to an image processing method and an image processing device that facilitate editing of three-dimensional (3D) objects by a user. Specifically, the present invention relates to an image processing method and an image processing device that facilitates editing of 3D avatar makeup by a user. It's about.

메타버스에서 자신을 대변하는 3D 아바타 객체 메이크업을 사용자가 직접 수정하는 방식에는 크게 두 가지가 있다. There are two main ways for users to directly modify the makeup of the 3D avatar object that represents them in the metaverse.

첫째는, 다이렉트 페인팅 방식으로, 실제 3D 모델에 페인팅을 수행하기 때문에 직관적이라는 장점이 있는 반면, 일반적으로 사용자에게는 익숙하지 않은 3D 공간에서의 페인팅이기 때문에 어색하고 세밀한 묘사가 어렵다는 단점이 있다. First, the direct painting method has the advantage of being intuitive because painting is performed on an actual 3D model, but it has the disadvantage of being awkward and difficult to depict in detail because it is painting in a 3D space that is generally unfamiliar to users.

둘째는, 텍스쳐 리얼타임 편집 방식으로, 일반적으로 익숙한 2D 평면 상에 드로잉하는 것이기 때문에 편하고 세밀한 묘사가 가능하다는 장점이 있는 반면, 직접적으로 사용자 눈에 보이는 모습이 아닌 텍스쳐 상 모습에 그려야 하므로 직관적이지 않고 어색하다는 단점이 있다. Second, it is a texture real-time editing method, which has the advantage of enabling convenient and detailed depiction because it draws on a generally familiar 2D plane. However, it is not intuitive because it must be drawn on the texture rather than the image directly visible to the user. The downside is that it's awkward.

이와 같이 종래의 방식들의 단점들을 보완한, 직관적이면서도 세밀한 묘사가 가능하며, 사용자 편의성을 향상시킬 수 있는 3D 객체 메이크업을 위한 영상처리방법 및 영상처리장치가 요구되는 실정이다. As such, there is a need for an image processing method and image processing device for 3D object makeup that complements the shortcomings of conventional methods, enables intuitive and detailed description, and improves user convenience.

본 발명은 상기한 종래의 문제점을 해결하기 위해 안출된 것으로, 직관적이면서도 세밀한 묘사가 가능하며, 사용자 편의성을 향상시킬 수 있는 3D 객체 메이크업을 위한 영상처리방법 및 영상처리장치를 제공하는 데 그 목적이 있다.The present invention was developed to solve the above-described conventional problems, and its purpose is to provide an image processing method and image processing device for 3D object makeup that enables intuitive and detailed description and improves user convenience. there is.

본 발명의 일 실시형태에 따른 사용자에 의한 3차원(3D) 객체 편집을 용이하게 하는 영상처리방법은, 3D 객체의 원본 이미지를 획득하는 단계; 객체 편집 단계; 편집된 객체에 대한 2D 이미지와 UV 맵 이미지를 획득하는 편집 이미지 획득 단계; 상기 편집 이미지 획득 단계와는 병렬적으로 수행되되, 상기 원본 이미지에 대한 원본 텍스쳐 맵을 생성하는 단계; 상기 2D 이미지와 상기 UV 맵 이미지로부터 픽셀 정보를 수집하는 단계; 상기 2D 이미지 픽셀 정보와, 상기 UV 맵 이미지 픽셀 정보와, 상기 텍스쳐 맵 정보를 이용하여, 실제 3D 모델에 적용될 보정된 텍스쳐 맵을 모델링하는 단계; 및 상기 보정된 텍스쳐 맵을 이용하여 UV매핑을 수행하는 단계를 포함한다. An image processing method that facilitates editing of a three-dimensional (3D) object by a user according to an embodiment of the present invention includes obtaining an original image of a 3D object; object editing step; An editing image acquisition step of acquiring a 2D image and a UV map image for the edited object; Performed in parallel with the edited image acquisition step, generating an original texture map for the original image; collecting pixel information from the 2D image and the UV map image; Modeling a corrected texture map to be applied to an actual 3D model using the 2D image pixel information, the UV map image pixel information, and the texture map information; and performing UV mapping using the corrected texture map.

일 실시예에 있어서, 상기 객체 편집 단계는, 편집 인터페이스를 통해 입력되는 사용자 편집 명령에 따라 수행되며, 상기 사용자는 상기 편집 인터페이스를 이용하여, 상기 편집 이미지가 획득되는 소정 위치를 설정할 수 있는 것이 바람직하다. In one embodiment, the object editing step is performed according to a user editing command input through an editing interface, and the user is preferably able to set a predetermined location where the edited image is obtained using the editing interface. do.

일 실시예에 있어서, 상기 영상처리방법은, 상기 보정된 텍스쳐 맵을 모델링하여 매핑한 3D 모델을 상기 출력부를 통해 실시간으로 출력하는 것이 바람직하다. In one embodiment, the image processing method preferably models the corrected texture map and outputs a mapped 3D model in real time through the output unit.

일 실시예에 있어서, 상기 2D 이미지와 상기 UV 맵 이미지로부터 픽셀 정보를 수집하는 단계는, 상기 2D 이미지로부터 소정 좌표의 픽셀 색상 정보를 수집하고, 상기 UV 맵 이미지로부터 상기 소정 좌표와 동일 좌표의 픽셀 UV 정보를 수집하고, 상기 원본 텍스쳐 맵에서, 상기 픽셀 UV 정보에 대응되는 UV 좌표를 갖는 픽셀 색상 정보를 수집하는 출력하는 것이 바람직하다. In one embodiment, the step of collecting pixel information from the 2D image and the UV map image includes collecting pixel color information at a predetermined coordinate from the 2D image, and pixel color information at the same coordinate as the predetermined coordinate from the UV map image. It is desirable to collect UV information and output pixel color information with UV coordinates corresponding to the pixel UV information from the original texture map.

일 실시예에 있어서, 상기 2D 이미지로부터 수집된 픽셀 색상 정보와 상기 원본 텍스쳐 맵으로부터 수집된 픽셀 색상 정보를 비교하여, 양자가 상이한 경우에는 상기 2D 이미지로부터 수집된 픽셀 색상 정보를 실제 3D 모델에 매핑될 정보로서 결정하는 출력하는 것이 바람직하다. In one embodiment, the pixel color information collected from the 2D image is compared with the pixel color information collected from the original texture map, and if the two are different, the pixel color information collected from the 2D image is mapped to an actual 3D model. It is desirable to output the information to be used for decision making.

본 발명의 다른 실시형태에 따르면, 사용자에 의한 3차원(3D) 객체 편집을 용이하게 하는 영상처리장치로서, 상기 사용자의 3D 객체 편집을 지원하는 편집 인터페이스를 포함하는 입력부와 출력부를 포함하는 사용자 인터페이스부; 상기 출력부에 디스플레이되는 원본 3D 객체 이미지에 대한 2D 이미지와 UV 맵 이미지를 획득하는 이미지 획득부; 상기 원본 3D 객체 이미지를 2차원의 UV 공간 상에 전개하여 원본 텍스쳐 맵을 생성하는 텍스쳐 생성부; 상기 이미지 획득부가 획득한 이미지로부터 소정 좌표의 픽셀 정보를 추출하는 픽셀 정보 추출부; 상기 2D 이미지와, 상기 UV 맵 이미지와, 상기 원본 텍스쳐 맵을 이용하여 실제 3D 모델에 적용될 보정된 텍스쳐 맵을 모델링하는 모델링부; 및 상기 보정된 텍스쳐 맵을 3D 모델에 매핑하는 UV매핑부를 포함하여 구성되는 영상처리장치가 개시된다.According to another embodiment of the present invention, an image processing device that facilitates editing of three-dimensional (3D) objects by a user, the user interface including an input unit and an output unit including an editing interface that supports the user's editing of 3D objects. wealth; an image acquisition unit that acquires a 2D image and a UV map image for the original 3D object image displayed on the output unit; a texture generator that generates an original texture map by expanding the original 3D object image in a two-dimensional UV space; a pixel information extraction unit that extracts pixel information of predetermined coordinates from the image acquired by the image acquisition unit; a modeling unit that models a corrected texture map to be applied to an actual 3D model using the 2D image, the UV map image, and the original texture map; and a UV mapping unit that maps the corrected texture map to a 3D model.

일 실시예에 있어서, 상기 편집 인터페이스는, 상기 사용자가 객체 편집 시에, 상기 이미지 획득부에 의해 획득되는 편집 이미지가 획득되는 소정 위치를 설정할 수 있도록 지원하는 것이 바람직하다. In one embodiment, the editing interface preferably supports the user to set a predetermined position where the edited image acquired by the image acquisition unit is acquired when editing an object.

일 실시예에 있어서, 상기 출력부는, 상기 보정된 텍스쳐 맵을 모델링하여 매핑한 3D 모델을 실시간으로 출력하는 것이 바람직하다. In one embodiment, the output unit preferably models the corrected texture map and outputs a mapped 3D model in real time.

일 실시예에 있어서, 상기 픽셀 정보 추출부는, 상기 2D 이미지로부터 소정 좌표의 픽셀 색상 정보를 수집하고, 상기 UV 맵 이미지로부터 상기 소정 좌표와 동일 좌표의 픽셀 UV 정보를 수집하고, 상기 원본 텍스쳐 맵에서, 상기 픽셀 UV 정보에 대응되는 UV 좌표를 갖는 픽셀 색상 정보를 수집하는 것이 바람직하다. In one embodiment, the pixel information extraction unit collects pixel color information of a predetermined coordinate from the 2D image, collects pixel UV information of the same coordinate as the predetermined coordinate from the UV map image, and collects pixel UV information of the same coordinate as the predetermined coordinate from the UV map image. , it is desirable to collect pixel color information with UV coordinates corresponding to the pixel UV information.

일 실시예에 있어서, 상기 모델링부는, 상기 2D 이미지로부터 수집된 픽셀 색상 정보와 상기 원본 텍스쳐 맵으로부터 수집된 픽셀 색상 정보를 비교하여, 양자가 상이한 경우에는 상기 2D 이미지로부터 수집된 픽셀 색상 정보를 실제 3D 모델에 매핑될 정보로서 결정함으로써 보정된 텍스쳐 맵을 모델링하는 것이 바람직하다. In one embodiment, the modeling unit compares the pixel color information collected from the 2D image with the pixel color information collected from the original texture map, and if the two are different, the pixel color information collected from the 2D image is compared to the actual pixel color information collected from the 2D image. It is desirable to model the corrected texture map by determining it as information to be mapped to the 3D model.

따라서 본 발명에 따르면, 사용자가 직관적이고 용이하게 3D 아바타 메이크업 편집을 행할 수 있다. Therefore, according to the present invention, a user can edit 3D avatar makeup intuitively and easily.

또한, 본 발명에 따르면, 객체 편집시에 세밀한 묘사가 가능하다는 효과가 있다. Additionally, according to the present invention, there is an effect that detailed description is possible when editing an object.

또한, 본 발명에 따르면, 3D 객체 편집에 있어서 사용자 편의성을 향상시키는 효과가 있다. Additionally, according to the present invention, there is an effect of improving user convenience in editing 3D objects.

도 1은 본 발명의 일 실시예에 따른 영상처리장치의 구성도이다.
도 2 는 UV 매핑을 설명하기 위한 도이다.
도 3 은 본 발명의 일 실시예에 따른 영상처리방법의 순서도이다.
도 4 는 본 발명의 일 실시예에 따른 영상처리방법을 설명하기 위한 도이다.
도 5 는 본 발명의 다른 실시예에 따른 영상처리방법을 설명하기 위한 도이다.
1 is a configuration diagram of an image processing device according to an embodiment of the present invention.
Figure 2 is a diagram for explaining UV mapping.
Figure 3 is a flowchart of an image processing method according to an embodiment of the present invention.
Figure 4 is a diagram for explaining an image processing method according to an embodiment of the present invention.
Figure 5 is a diagram for explaining an image processing method according to another embodiment of the present invention.

이하, 첨부된 도면들을 참조하여 바람직한 실시예를 첨부된 도면을 참조하여 설명한다. 이 과정에서 도면에 도시된 선들의 두께나 구성요소의 크기 등은 설명의 명료성과 편의상 과장되게 도시되어 있을 수 있다. 또한, 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로써 이는 사용자, 운용자의 의도 또는 관례에 따라 달라질 수 있다. 그러므로, 이러한 용어들에 대한 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.Hereinafter, preferred embodiments will be described with reference to the attached drawings. In this process, the thickness of lines or sizes of components shown in the drawing may be exaggerated for clarity and convenience of explanation. In addition, the terms described below are terms defined in consideration of functions in the present invention, and may vary depending on the intention or custom of the user or operator. Therefore, definitions of these terms should be made based on the content throughout this specification.

본 명세서에서 모듈이라 함은, 본 발명의 기술적 사상을 수행하기 위한 하드웨어 및 상기 하드웨어를 구동하기 위한 소프트웨어의 기능적, 구조적 결합을 의미할 수 있다. 예컨대, 상기 모듈은 소정의 코드와 상기 소정의 코드가 수행되기 위한 하드웨어 리소스의 논리적인 단위를 의미할 수 있으며, 반드시 물리적으로 연결된 코드를 의미하거나, 한 종류의 하드웨어를 의미하는 것은 아님은 본 발명의 기술분야의 평균적 전문가에게는 용이하게 추론될 수 있다.In this specification, a module may mean a functional and structural combination of hardware for carrying out the technical idea of the present invention and software for driving the hardware. For example, the module may mean a logical unit of a predetermined code and hardware resources for executing the predetermined code, and does not necessarily mean a physically connected code or one type of hardware. It can be easily inferred by an average expert in the technical field.

또한, 어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.Additionally, when a component is referred to as being “connected” or “connected” to another component, it may be directly connected or connected to the other component, but other components may also exist in between. It must be understood that there is. On the other hand, when it is mentioned that a component is “directly connected” or “directly connected” to another component, it should be understood that there are no other components in between.

단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. Singular expressions include plural expressions unless the context clearly dictates otherwise.

또한, 본원 명세서 전체에서, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성 요소를 더 포함할 수 있는 것을 의미한다. In addition, throughout the specification of the present application, when a part "includes" a certain element, this means that it may further include other elements rather than excluding other elements, unless specifically stated to the contrary.

본 발명은 본 발명의 필수적 특징을 벗어나지 않는 범위에서 다른 특정한 형태로 구체화될 수 있음은 당업자에게 자명하다. It is obvious to those skilled in the art that the present invention can be embodied in other specific forms without departing from the essential features of the present invention.

이하, 도면들을 참조하여 본 발명의 실시예에 대해 상세히 설명하기로 한다. 도면상에서 동일 부호는 동일한 요소를 지칭한다.Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings. In the drawings, like symbols refer to like elements.

또한, 하기 실시예는 본 발명의 권리범위를 한정하는 것이 아니라 단지 예시로 제시하는 것이며, 본 기술 사상을 통해 구현되는 다양한 실시예가 있을 수 있다.In addition, the following examples do not limit the scope of the present invention, but are provided merely as examples, and there may be various embodiments implemented through the technical idea of the present invention.

이하의 설명에서 3D(3차원) 모델은 가상의 3D 공간에서 표현되는 3D 컨텐츠를 의미한다. 예를 들어, 3D 모델은 3D 현실세계에서의 사물을 가상의 3D 공간에서 표현하는 3D 컨텐츠일 수 있다. 이하의 설명에서 3D는 삼차원을, 2D는 이차원을 의미한다In the following description, a 3D (three-dimensional) model refers to 3D content expressed in a virtual 3D space. For example, a 3D model may be 3D content that represents an object in the 3D real world in a virtual 3D space. In the following description, 3D means three dimensions and 2D means two dimensions.

영상처리장치image processing device

도 1은 본 발명의 실시예에 따른 영상처리장치(100)의 구성도이다. Figure 1 is a configuration diagram of an image processing device 100 according to an embodiment of the present invention.

도면을 참조하면, 영상처리장치(100)는 사용자 인터페이스부(110), 이미지 획득부(120), 텍스쳐 생성부(130), 픽셀 정보 추출부(140), 모델링부(150), UV매핑부(160), 저장부(170), 제어부(180) 를 포함하여 구성될 수 있다. Referring to the drawing, the image processing device 100 includes a user interface unit 110, an image acquisition unit 120, a texture creation unit 130, a pixel information extraction unit 140, a modeling unit 150, and a UV mapping unit. It may be configured to include (160), a storage unit (170), and a control unit (180).

상기 구성은 예시적인 것으로서, 나열된 구성 중 일부가 생략될 수도 있고, 나열되지 않은 구성이 영상처리장치(100)에 더 포함될 수도 있다. The above configurations are illustrative, and some of the listed configurations may be omitted, and configurations not listed may be further included in the image processing apparatus 100.

사용자 인터페이스부(110)는 영상처리장치(100)와 사용자와의 소통을 위한 것으로, 입력부(112)와 출력부(114)를 포함한다. The user interface unit 110 is for communication between the image processing device 100 and the user and includes an input unit 112 and an output unit 114.

입력부(112)는 사용자로부터 처리 명령을 포함하는 정보를 입력받을 수 있다. 이러한 입력부(112)는 음성 입력부, 제스쳐 입력부, 터치 입력부 및 기계식 입력부 중 적어도 하나를 포함할 수 있다. The input unit 112 may receive information including a processing command from the user. This input unit 112 may include at least one of a voice input unit, a gesture input unit, a touch input unit, and a mechanical input unit.

또한, 입력부(112)는, 사용자의 객체 편집을 지원하는 편집 인터페이스(미도시)를 포함한다. 편집 인터페이스는, 키보드 입력 및 터치 스크린 기반 제스쳐들을 포함하는 입력을 사용하여 사용자들로 하여금 객체 이미지를 편집할 수 있게 한다. 예를 들어, 사용자는 편집 인터페이스를 통해 원본 객체의 컬러, 크기, 또는 임의의 다른 시각적 속성을 변경할 수 있다.Additionally, the input unit 112 includes an editing interface (not shown) that supports user editing of objects. The editing interface allows users to edit object images using input including keyboard input and touch screen-based gestures. For example, a user can change the color, size, or any other visual property of the original object through an editing interface.

또한, 편집 인터페이스는, 사용자가 객체 편집시, 객체 이미지가 획득되는 소정 위치를 사용자가 임의로 결정하도록 지원할 수 있다. 예를 들어, 객체가 3D 아바타 얼굴인 경우, 편집 인터페이스는 3D 객체를 사용자가 원하는 다양한 각도로 회전시켜 디스플레이하고, 사용자가 지정하는 소정 위치에서 관측되는 객체 이미지를 편집 대상 이미지로서 선택하도록 할 수 있다. Additionally, the editing interface may support the user to arbitrarily determine a predetermined location where the object image is obtained when the user edits an object. For example, if the object is a 3D avatar face, the editing interface can display the 3D object by rotating it to various angles desired by the user, and allow the user to select the object image observed at a certain location designated by the user as the image to be edited. .

한편, 출력부(114)는 시각, 청각, 촉각 등과 관련된 출력을 발생시키기 위한 것으로, 디스플레이부, 스피커 중 적어도 하나를 포함할 수 있다. Meanwhile, the output unit 114 is intended to generate output related to vision, hearing, tactile sensation, etc., and may include at least one of a display unit and a speaker.

또한, 출력부(114)는 미리 보기 인터페이스(미도시)를 더 포함할 수 있다. 사용자는 편집된 결과물인 3D 객체 모델을 생성하기 이전에, 미리보기 인터페이스를 통해, 편집된 3D 객체를 미리 보고 검토할 수 있다. 또한, 미리보기 인터페이스는 사용자가, 예를 들어, 디스플레이 스크린 상의 3D 객체의 스케일, 배향 또는 배치를 변경할 수 있도록 지원할 수도 있다.Additionally, the output unit 114 may further include a preview interface (not shown). Users can preview and review the edited 3D object through the preview interface before creating the edited 3D object model. Additionally, the preview interface may support a user to, for example, change the scale, orientation or placement of a 3D object on the display screen.

이러한 입력부(112)와 출력부(114)는 별개의 구성으로 마련될 수도 있고, 터치 입력 방식의 디스플레이부와 같이 일체로 마련될 수도 있다.The input unit 112 and the output unit 114 may be provided as separate components, or may be provided integrally, such as a touch input display unit.

또한, 사용자 인터페이스부(110)는 사용자 인터페이스부(110)의 각 구성의 전반적인 동작을 제어하는 프로세서(미도시)를 더 포함할 수 있다. Additionally, the user interface unit 110 may further include a processor (not shown) that controls the overall operation of each component of the user interface unit 110.

이미지 획득부(120)는, 출력부(114)에 디스플레이되는 객체 이미지를 획득한다. The image acquisition unit 120 acquires an object image displayed on the output unit 114.

예를 들어, 이미지 획득부(120)는 사용자에 의해 편집이 이루어지기 전의 객체 모델에 대한 원본 이미지를 캡쳐하여 획득할 수 있다. For example, the image acquisition unit 120 may capture and acquire the original image of the object model before editing by the user.

또한, 이미지 획득부(120)는, 사용자가 지정한 소정 위치에서 관측되는, 사용자에 의해 편집된 객체 모델에 대한 2D 이미지를 획득할 수 있다. Additionally, the image acquisition unit 120 may acquire a 2D image for an object model edited by the user that is observed at a location designated by the user.

또한, 이미지 획득부(120)는, 사용자가 지정한 소정 위치에서 관측되는, 객체 모델에 대한 UV 맵 이미지를 획득할 수 있다. 구체적으로, 이미지 획득부(120)는 기 설정된 3D 모델 정보를 이용하여 3D 객체 모델에 대한 UV 맵 이미지와 UV 매핑 좌표 정보들을 생성할 수 있다. Additionally, the image acquisition unit 120 may acquire a UV map image for the object model observed at a location designated by the user. Specifically, the image acquisition unit 120 may generate a UV map image and UV mapping coordinate information for a 3D object model using preset 3D model information.

여기서, 객체에 대한 2D 이미지와 UV 맵 이미지는 각 픽셀이 담고 있는 정보는 상이하지만, 로케이션(location)은 일치하는 1:1 매칭 이미지이다. Here, the 2D image of the object and the UV map image are 1:1 matching images in which the information contained in each pixel is different, but the location is the same.

텍스쳐 맵 생성부(130)는 객체 모델의 텍스쳐를 표현하는 텍스쳐 맵을 생성한다. The texture map generator 130 generates a texture map representing the texture of the object model.

여기서, 텍스쳐 맵은 3D 객체 이미지를 2차원의 UV 공간 상에 전개(unwrap)하여 획득된, 3D 객체 이미지에 대한 2차원의 UV 맵이다. 텍스쳐 맵은, 객체 모델을 구성하는 폴리곤(Polygon)들을 포함하고 모델의 폴리곤과 전개된 폴리곤이 같은 모양을 갖도록 하는 UV 매핑 좌표 정보들을 포함한다. 이 때, UV 맵은 3D 객체 모델의 3차원 좌표를 기반으로 3D 객체 이미지를 2차원의 UV 공간에 전개하여 획득된다. Here, the texture map is a two-dimensional UV map for a 3D object image obtained by unwrapping the 3D object image in a two-dimensional UV space. The texture map includes polygons that make up the object model and includes UV mapping coordinate information that ensures that the polygon of the model and the expanded polygon have the same shape. At this time, the UV map is obtained by expanding the 3D object image into a 2-dimensional UV space based on the 3-dimensional coordinates of the 3D object model.

여기서, UV 맵은 구형 전개(spherical unwrap)를 적용하여 메쉬 구조의 3D 모델에서 각 꼭지점의 3차원 좌표(x,y,z)를 아래의 수학식 1 에 따라 UV 좌표계의 좌표(u,v)로 변환하여 획득할 수 있다. Here, the UV map applies spherical unwrap to convert the three-dimensional coordinates (x, y, z) of each vertex in the 3D model of the mesh structure into the coordinates (u, v) of the UV coordinate system according to Equation 1 below. It can be obtained by converting to .

Figure 112022053383516-pat00001
Figure 112022053383516-pat00001

(여기서, r 은 구형 전개 시에 구의 반지름이며,

Figure 112022053383516-pat00002
임.)(Here, r is the radius of the sphere when spherically expanded,
Figure 112022053383516-pat00002
lim.)

본 발명에서, 텍스쳐 맵 생성부(130)는, 사용자에 의한 객체의 편집이 이루어지기 이전에, 원본 이미지에 대한 텍스쳐 맵을 생성한다. In the present invention, the texture map generator 130 generates a texture map for the original image before the object is edited by the user.

픽셀 정보 추출부(140)는, 이미지 획득부(120)가 획득한 2D 이미지로부터 소정 좌표(x,y)의 픽셀 색상 정보를 추출하며, 이미지 획득부(120)가 획득한 UV 맵 이미지로부터 동일한 좌표(x,y)의 픽셀 UV 정보를 추출한다. The pixel information extraction unit 140 extracts pixel color information of predetermined coordinates (x, y) from the 2D image acquired by the image acquisition unit 120, and extracts the same pixel color information from the UV map image acquired by the image acquisition unit 120. Extract pixel UV information at coordinates (x,y).

여기서, 픽셀 정보 추출부(140)가 2D 이미지로부터 획득한 픽셀 색상 정보는 RGB 정보를 포함하며, 픽셀 정보 추출부(140)가 UV 맵 이미지로부터 획득한 픽셀 정보는 UV 좌표 정보를 포함한다. Here, the pixel color information obtained by the pixel information extractor 140 from the 2D image includes RGB information, and the pixel information obtained by the pixel information extractor 140 from the UV map image includes UV coordinate information.

모델링부(150)는 이미지 획득부(120)에서 획득된 2D 이미지 정보와, UV 맵 이미지 정보와, 텍스쳐 맵 생성부(130)에서 생성된 텍스쳐 맵 정보를 이용하여 실제 3D 모델에 적용될 보정된 텍스쳐 맵을 모델링한다. The modeling unit 150 uses the 2D image information acquired by the image acquisition unit 120, the UV map image information, and the texture map information generated by the texture map generator 130 to create a corrected texture to be applied to the actual 3D model. Model the map.

구체적으로, 모델링부(150)는, 픽셀 정보 추출부(150)가 추출한 UV 맵 이미지에서의 소정 좌표에 대한 픽셀 UV 정보를 이용하여, 해당 픽셀 UV 정보에 대응되는 UV 좌표를 갖는 원본 텍스쳐 맵의 픽셀에 대하여 픽셀 색상 정보를 수집하고, 이를 2D 이미지 내에서 동일 좌표를 갖는 픽셀에 대한 픽셀 색상 정보와 비교함으로써, 실제 3D 모델에 매핑될 픽셀 색상 정보를 결정한다. Specifically, the modeling unit 150 uses pixel UV information for a predetermined coordinate in the UV map image extracted by the pixel information extraction unit 150 to create an original texture map with UV coordinates corresponding to the pixel UV information. By collecting pixel color information for a pixel and comparing it with pixel color information for pixels with the same coordinates in the 2D image, pixel color information to be mapped to the actual 3D model is determined.

여기서, 해당 위치의 원본 텍스쳐 맵의 픽셀에 대한 픽셀 색상 정보와, 해당 위치의 2D 이미지의 픽셀 색상 정보가 상이한 경우에는, 2D 이미지의 픽셀 색상 정보를 실제 3D 모델에 매핑될 정보로서 결정함으로써, 사용자에 의한 객체 편집을 반영할 수 있다. Here, if the pixel color information for the pixel of the original texture map at the corresponding location is different from the pixel color information of the 2D image at the corresponding location, the pixel color information of the 2D image is determined as information to be mapped to the actual 3D model, so that the user Can reflect object editing by .

상기와 같은 방식으로, 모델링부(150)는 사용자에 의해 편집된 객체의 2D 이미지 정보와, UV 맵 이미지 정보와, 텍스쳐 맵 정보를 이용하여 실제 3D 모델에 적용될 보정된 텍스쳐를 생성하는 것이다. In the same manner as described above, the modeling unit 150 generates a corrected texture to be applied to the actual 3D model using 2D image information, UV map image information, and texture map information of the object edited by the user.

또한, 상기 과정은 하나의 픽셀에 대해 수행되는 것으로, 나머지 픽셀들에 대해서도 상기 과정을 반복함으로써 실제 3D 모델에 매핑될 텍스쳐 맵이 완성된다. Additionally, the above process is performed for one pixel, and by repeating the process for the remaining pixels, a texture map to be mapped to the actual 3D model is completed.

실제 모델에 매핑 적용될 최종 텍스쳐 맵이 생성되면, UV 매핑부(160)는 이를 실제 3D 모델에 UV 매핑하여 3D 객체 이미지를 합성한다. Once the final texture map to be mapped to the actual model is generated, the UV mapping unit 160 synthesizes a 3D object image by UV mapping it to the actual 3D model.

UV매핑은 2차원 그림을 3차원 모델로 만드는 3차원 모델링 프로세스로서, 도 2는 3D 모델의 메쉬(Mesh, 210)와 머티리얼(Material, 220) 및 2D 이미지(230)의 관계를 설명하기 위한 도면이다. 메쉬(210)는 복수의 좌표 데이터를 저장하는 데이터 구조일 수 있으며, 2D 객체의 형상에 기초하여 3D 메시를 생성할 수 있다.UV mapping is a 3D modeling process that turns a 2D picture into a 3D model. Figure 2 is a diagram to explain the relationship between the mesh 210 of the 3D model, the material 220, and the 2D image 230. am. The mesh 210 may be a data structure that stores a plurality of coordinate data, and may create a 3D mesh based on the shape of a 2D object.

메쉬(210)는 폴리곤 데이터와 UV를 포함할 수 있다. 폴리곤 데이터는 3D 모델의 형상을 구성하는 폴리곤을 나타내는 정점(Vertice), 선(edge) 및 면(face)으로 구성될 수 있다. UV는 폴리곤의 정점/선/면과 대응되는 텍스쳐의 2차원 좌표를 의미한다. 도면을 참조하면, 예를 들어, UV 는 x, y, z 좌표에 의하여 정의되는 일 면(face)에 대응되는 텍스쳐 1의 u, v좌표를 나타낼 수 있다. The mesh 210 may include polygon data and UV. Polygon data may be composed of vertices, edges, and faces representing polygons that make up the shape of a 3D model. UV refers to the two-dimensional coordinates of the texture corresponding to the vertex/line/face of the polygon. Referring to the drawing, for example, UV may represent the u and v coordinates of texture 1 corresponding to a face defined by x, y, and z coordinates.

머티리얼(220)은 복수의 텍스쳐를 포함하여 구성될 수 있다. 도면에는, 머티리얼(220)이 텍스쳐1 과 텍스쳐 2를 포함하여 구성되는 예가 도시되어 있다. 머티리얼(220)에 포함되는 텍스쳐는 2D 이미지를 기반으로 생성될 수 있다. Material 220 may be composed of multiple textures. The drawing shows an example in which the material 220 includes texture 1 and texture 2. The texture included in the material 220 may be created based on a 2D image.

이에 따라, 메쉬에 의하여 정의되는 하나의 면은 하나의 머티리얼과 대응될 수 있다. 예를 들어, 하나의 면마다 다른 머티리얼이 대응될 수 있다. 또한, 머티리얼은 하나의 메쉬 내 다수의 면 혹은 다수의 메쉬 내 다수의 면에 대응될 수도 있다. 이에 따라, 2D 이미지를 기반으로 생성된 텍스쳐는 폴리곤 데이터에 의하여 생성된 3D 모델의 일 면에 표현될 수 있으며, 이의 대응 관계는 UV에 의하여 식별될 수 있다.Accordingly, one face defined by the mesh can correspond to one material. For example, a different material may correspond to each face. Additionally, a material may correspond to multiple faces within one mesh or multiple faces within multiple meshes. Accordingly, the texture generated based on the 2D image can be expressed on one side of the 3D model generated by polygon data, and its corresponding relationship can be identified by UV.

또 다른 구성으로, 저장부(170)는 본 발명에 따른 영상 처리 방법과 관련된 다양한 데이터를 저장할 수 있다. 저장부(170)는 플래시 메모리(flash memory), 하드디스크(hard disk), SD 카드(Secure Digital Card), 램 (Random Access Memory, RAM), 롬(Read Only Memory, ROM), 웹 스토리지(web storage) 등의 저장 매체 중 어느 하나 이상의 저장매체로 구현될 수 있다.In another configuration, the storage unit 170 may store various data related to the image processing method according to the present invention. The storage unit 170 includes flash memory, hard disk, Secure Digital Card (SD card), Random Access Memory (RAM), Read Only Memory (ROM), and web storage. It may be implemented with one or more storage media such as storage).

제어부(180)는, 영상처리장치(100)의 각 부의 전반적인 동작을 제어하여 본 발명에 따른 영상 처리 방법을 수행하도록 한다. 제어부(180)는 사용자 인터페이스부(110), 이미지 획득부(120), 텍스쳐 맵 생성부(130), 픽셀 정보 추출부(140), 모델링부(150), UV 맵핑부(160), 저장부(170) 중 적어도 어느 하나를 포함한, 영상처리장치(100)의 각 구성을 제어할 수 있다.The control unit 180 controls the overall operation of each part of the image processing apparatus 100 to perform the image processing method according to the present invention. The control unit 180 includes a user interface unit 110, an image acquisition unit 120, a texture map creation unit 130, a pixel information extraction unit 140, a modeling unit 150, a UV mapping unit 160, and a storage unit. Each component of the image processing apparatus 100, including at least one of (170), can be controlled.

제어부(180)는, ASICs (application specific integrated circuits), DSPs(digital signal processors), DSPDs(digital signal processing devices), PLDs(programmable logic devices), FPGAs(field programmable gate arrays), 프로세서(processors), 제어기 (controllers), 마이크로 컨트롤러(micro-controllers), 마이크로 프로세서(microprocessors) 중 적어도 하나로 구현될 수 있다.The control unit 180 includes application specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field programmable gate arrays (FPGAs), processors, and controllers. It may be implemented with at least one of (controllers), micro-controllers, and microprocessors.

영상 처리 방법Image processing method

본 발명에 따른 영상 처리 방법은 상술한 영상처리장치(100)를 통해 구현될 수 있다. 도 3 은 본 발명의 일 실시예에 따른 영상 처리 방법의 순서도이다.The image processing method according to the present invention can be implemented through the image processing apparatus 100 described above. Figure 3 is a flowchart of an image processing method according to an embodiment of the present invention.

도 3을 참조하면, 우선, 객체의 원본 이미지를 획득한다(S100). 상술한 바와 같이, 원본 이미지는 영상처리장치(100)의 이미지 획득부(120)에 의해 획득될 수 있다. Referring to Figure 3, first, the original image of the object is acquired (S100). As described above, the original image may be acquired by the image acquisition unit 120 of the image processing device 100.

여기서, 획득되는 이미지는 사용자에 의해 편집되기 이전의 객체 이미지가 될 것이다. Here, the acquired image will be the object image before editing by the user.

다음으로, 사용자에 의해 객체 편집이 수행된다(S110). 상술한 바와 같이, 사용자는 편집 인터페이스를 통해 원본 객체의 컬러, 크기, 또는 임의의 다른 시각적 속성을 변경할 수 있다.Next, object editing is performed by the user (S110). As described above, the user can change the color, size, or any other visual attribute of the original object through the editing interface.

원본 이미지에 대하여 사용자에 의한 객체 편집이 이루어지면, 이에 대한 2D 이미지와 UV 맵 이미지를 획득한다(S120). 편의상, 이를 편집 이미지 획득 단계(S120)라고 지칭한다. 상술한 바와 같이, 2D 이미지와 UV 맵 이미지도, 이미지 획득부(120)에 의해 획득될 수 있다. When an object is edited by a user on the original image, a 2D image and a UV map image for the original image are acquired (S120). For convenience, this is referred to as the editing image acquisition step (S120). As described above, 2D images and UV map images may also be acquired by the image acquisition unit 120.

여기서, 사용자는 이미지가 획득되는 소정 위치를 결정할 수 있다. 예를 들어, 객체가 아바타 얼굴이고, 사용자가 아바타 얼굴의 메이크업을 수정하고자 할 때, 얼굴 정면을 기준으로 메이크업을 수정하길 원한다면, 얼굴 정면의 이미지를 획득할 수 있다. Here, the user can determine a predetermined location where the image is acquired. For example, when the object is an avatar face and the user wants to modify the makeup of the avatar's face and wants to modify the makeup based on the front of the face, an image of the front of the face can be obtained.

한편, 사용자가 아바타 얼굴의 우측면(디스플레이되는 화면 기준)의 볼터치를 추가하는 편집을 하고자 할 때에는, 우측 45도에서 바라본 얼굴 측면의 이미지를 획득할 수 있으며, 반대로 아바타 얼굴의 좌측면의 볼터치를 추가하는 편집을 하고자 할 때에는, 좌측 45도에서 바라본 얼굴 측면의 이미지를 획득할 수 있다.Meanwhile, when the user wants to edit to add a cheek touch to the right side of the avatar's face (based on the displayed screen), an image of the side of the face viewed from 45 degrees on the right can be obtained, and conversely, a cheek touch to the left side of the avatar's face can be obtained. When you want to edit to add, you can obtain an image of the side of the face viewed from 45 degrees to the left.

이를 위해, 편집 인터페이스는 3D 객체를 사용자가 원하는 각도로 회전시켜 디스플레이하는 기능을 제공할 수 있다. To this end, the editing interface can provide a function to display a 3D object by rotating it to an angle desired by the user.

한편, 편집 이미지 획득 단계(S120) 와는 병렬적으로 텍스쳐 맵을 생성한다(S130). 텍스쳐 맵은 원본 이미지에 대하여 객체의 텍스쳐를 표현하는 것으로서, 원본 이미지 획득 단계(S100) 이후에 수행되며, 편집 이미지 획득 단계(S120) 와는 별도의 선후 관계가 없이 병렬적으로 이루어질 수 있다. Meanwhile, a texture map is generated (S130) in parallel with the editing image acquisition step (S120). The texture map represents the texture of an object with respect to the original image, and is performed after the original image acquisition step (S100), and can be performed in parallel with the edited image acquisition step (S120) without any separate precedence relationship.

다음으로, 획득된 2D 이미지와 UV 맵 이미지로부터 픽셀 정보를 수집한다(S140). 구체적으로, 픽셀 정보 추출부(140)는, 2D 이미지로부터 소정 좌표(x,y)의 픽셀에 대하여 픽셀 색상 정보를 추출하고, UV 맵 이미지로부터 그와 동일한 좌표(x,y)의 픽셀에 대하여 픽셀 UV 정보를 추출한다. Next, pixel information is collected from the acquired 2D image and UV map image (S140). Specifically, the pixel information extraction unit 140 extracts pixel color information for a pixel at predetermined coordinates (x, y) from the 2D image, and extracts pixel color information for a pixel at the same coordinates (x, y) from the UV map image. Extract pixel UV information.

여기서, 2D 이미지로부터 획득한 픽셀 색상 정보는 RGB 정보를 포함하며, UV 맵 이미지로부터 획득한 픽셀 정보는 UV 좌표 정보를 포함한다. Here, pixel color information obtained from the 2D image includes RGB information, and pixel information obtained from the UV map image includes UV coordinate information.

또한, 픽셀 정보 추출부(140)는, 편집 이미지 획득 단계(S120)에서 획득된 UV 맵 이미지에서의 소정 좌표에 대한 픽셀 UV 정보를 이용하여, 텍스쳐 맵 생성 단계(S140)에서 생성된 원본 텍스쳐 맵에서의, 해당 픽셀 UV 정보에 대응되는 (u,v) 좌표를 갖는 픽셀에 대한 픽셀 색상 정보를 수집한다. In addition, the pixel information extraction unit 140 uses pixel UV information for predetermined coordinates in the UV map image obtained in the edited image acquisition step (S120) to extract the original texture map generated in the texture map generation step (S140). In , pixel color information for a pixel with (u,v) coordinates corresponding to the corresponding pixel UV information is collected.

다음으로, 실제 3D 모델에 적용될 보정된 텍스쳐 맵을 모델링한다(S150). 보정된 텍스쳐 맵은, 2D 이미지 정보와, UV 맵 이미지 정보와, 텍스쳐 맵 정보를 이용하여 모델링부(150)에서 모델링된다. Next, the corrected texture map to be applied to the actual 3D model is modeled (S150). The corrected texture map is modeled in the modeling unit 150 using 2D image information, UV map image information, and texture map information.

구체적으로, 모델링부(150)는, 픽셀 정보 수집 단계(S140)에서 수집된, 2D 이미지에서 추출된 소정 좌표(x,y)의 픽셀 색상 정보와, UV 맵 이미지에서 추출된 소정 좌표(x,y)의 픽셀 UV 정보에 대응되는 UV 좌표를 갖는 텍스쳐 맵 상의 픽셀 색상 정보를 비교하여, 양자가 상이한 경우에는, 2D 이미지에서 추출된 소정 좌표(x,y)의 픽셀 색상 정보를 실제 3D 모델에 매핑될 정보로서 결정한다.Specifically, the modeling unit 150 collects pixel color information of predetermined coordinates (x, y) extracted from the 2D image collected in the pixel information collection step (S140) and predetermined coordinates (x, y) extracted from the UV map image. The pixel color information on the texture map with the corresponding UV coordinates is compared with the pixel UV information of y), and if the two are different, the pixel color information of the given coordinates (x, y) extracted from the 2D image is added to the actual 3D model. Determine the information to be mapped.

이는 객체 이미지의 특정 픽셀에 대해 수행되는 일련의 작업으로서, 상기 과정을 모든 픽셀에 대해 반복 수행함으로써, 모델링부(150)는 실제 모델에 매핑 적용될 최종 텍스쳐 맵을 생성할 수 있다. This is a series of operations performed on specific pixels of the object image. By repeating the process for all pixels, the modeling unit 150 can generate a final texture map to be mapped to the actual model.

실제 모델에 매핑 적용될 최종 텍스쳐 맵이 생성되면, 이를 이용하여 UV 맵핑을 수행하여 3D 객체 이미지를 합성한다(S160). Once the final texture map to be mapped to the actual model is created, UV mapping is performed using it to synthesize a 3D object image (S160).

다음으로, 도 4를 참조하여, 상기의 본 발명이 적용된 일 실시예를 설명한다. Next, with reference to FIG. 4, an embodiment to which the above invention is applied will be described.

본 예시는, 사용자가 아바타의 얼굴 이미지(볼터치 없음)에서 볼터치 부분에 해당되는 메이크업을 추가하는 예이다. In this example, the user adds makeup corresponding to the cheek touch area in the avatar's face image (no cheek touch).

도면을 참조하면, (a)는 사용자에 의해 편집된 객체에 대한 2D 이미지이고, (b) 는 객체에 대한 UV 맵 이미지이고, (c) 는 사용자에 의해 편집되기 전의 원본 이미지에 대한 텍스쳐 맵이다. Referring to the drawing, (a) is a 2D image for the object edited by the user, (b) is a UV map image for the object, and (c) is a texture map for the original image before editing by the user. .

우선, 이미지 획득부(120)는 객체의 원본 이미지를 획득한다. 이것은 사용자에 의해 편집되기 이전의 객체 이미지로서, 본 실시예에서는 볼터치 메이크업이 없는 아바타 얼굴 이미지가 될 것이다. First, the image acquisition unit 120 acquires the original image of the object. This is an object image before editing by the user, and in this embodiment, it will be an avatar face image without cheek touch makeup.

다음으로, 사용자는 편집 인터페이스를 통해 볼터치 메이크업을 추가하는 객체 편집을 수행한다. Next, the user performs object editing to add cheek touch makeup through the editing interface.

사용자에 의한 편집이 이루어지면, 이미지 획득부(120)는 편집된 객체에 대한 2D 이미지와 UV 맵 이미지를 획득한다. 이 때, 사용자는 이미지가 획득되는 소정 위치를 결정할 수 있다. 도 4 의 실시예에서는 사용자가 얼굴 정면의 이미지를 획득하는 경우를 설명한다. When editing is performed by the user, the image acquisition unit 120 acquires a 2D image and a UV map image for the edited object. At this time, the user can determine a predetermined location where the image is acquired. The embodiment of FIG. 4 explains a case where a user obtains an image of the front of the face.

이렇게 획득된 이미지들이 도 4 에 도시되며, (a) 는 편집된 객체에 대한 2D 이미지이고, (b)는 객체에 대한 UV 맵 이미지이다. The images obtained in this way are shown in FIG. 4, where (a) is a 2D image for the edited object and (b) is a UV map image for the object.

이미지 획득 단계와 병렬적으로, 텍스쳐 맵 생성부(130)는 원본 이미지를 이용하여 텍스쳐 맵을 생성한다. 도면에서, (c)는 사용자 편집 전의, 원본 이미지로부터 생성된 텍스쳐 맵을 도시한다. 따라서, (c)에는 볼터치 메이크업이 존재하지 않는다.In parallel with the image acquisition step, the texture map generator 130 creates a texture map using the original image. In the drawing, (c) shows a texture map created from the original image before user editing. Therefore, there is no cheek touch makeup in (c).

다음으로, 획득된 2D 이미지(a)와 UV 맵 이미지(b)로부터 픽셀 정보를 수집한다. 도면을 참조하면, 2D 이미지(a)로부터 소정 좌표(x,y)의 픽셀에 대하여 픽셀 색상 정보를 추출하고, 이는 본 실시예에서 rgb(214, 177, 208)에 해당된다. Next, pixel information is collected from the acquired 2D image (a) and UV map image (b). Referring to the drawing, pixel color information is extracted for a pixel at predetermined coordinates (x, y) from the 2D image (a), which corresponds to rgb (214, 177, 208) in this embodiment.

다음으로, 도 4b 의 UV 맵 이미지로부터, 2D 이미지에서 픽셀 색상 정보를 추출한 픽셀과 동일한 좌표(x,y)를 갖는 픽셀에 대하여, UV 정보를 추출한다. 본 실시예에서 해당 픽셀의 UV 좌표는 (0.2, 0.4) 에 해당된다. Next, from the UV map image of FIG. 4B, UV information is extracted for a pixel having the same coordinates (x, y) as the pixel from which pixel color information was extracted from the 2D image. In this example, the UV coordinates of the corresponding pixel correspond to (0.2, 0.4).

UV 맵 이미지에서 픽셀 UV 정보가 수집되면, 이를 이용하여, 원본 이미지에 대한 텍스쳐 맵(c) 상에서, 해당 UV 좌표 (0.2, 0.4)를 갖는 픽셀에 대한 픽셀 색상 정보를 수집한다. When pixel UV information is collected from the UV map image, pixel color information for the pixel with the corresponding UV coordinates (0.2, 0.4) is collected on the texture map (c) for the original image.

다음으로, 2D 이미지(a)의 픽셀 색상 정보와 원본 이미지에 대한 텍스쳐 맵(c)의 픽셀 색상 정보를 비교하여, 양자가 상이한 경우에는, 2D 이미지에서 추출된 소정 좌표(x,y)의 픽셀 색상 정보를 실제 3D 모델에 매핑될 정보로서 결정한다.Next, the pixel color information of the 2D image (a) is compared with the pixel color information of the texture map (c) for the original image, and if the two are different, the pixel at predetermined coordinates (x, y) extracted from the 2D image Color information is determined as information to be mapped to the actual 3D model.

상기와 같이, 실제 3D 모델에 적용될 보정된 텍스쳐 맵을 모델링하며, 상기 과정을 모든 픽셀에 대해 반복 수행함으로써, 실제 모델에 매핑 적용될 최종 텍스쳐 맵을 생성하게 된다. As described above, the corrected texture map to be applied to the actual 3D model is modeled, and the process is repeated for all pixels to generate the final texture map to be mapped to the actual model.

실제 모델에 매핑 적용될 최종 텍스쳐 맵이 생성되면, 이를 이용하여 UV 맵핑을 수행하여 3D 객체 이미지를 합성한다. Once the final texture map to be mapped to the actual model is created, UV mapping is performed using it to synthesize a 3D object image.

상기와 같은 방식으로, 본 발명에 따르면, 사용자에 의한 3D 객체 편집을 실시간으로 반영하여 출력할 수 있다. In the above manner, according to the present invention, editing of a 3D object by a user can be reflected and output in real time.

한편, 도 5 는 사용자가 오른쪽 볼터치 메이크업을 추가하는 실시예에 대한 도면이다. 도 4 의 실시예와 다른 부분은, 얼굴 정면의 이미지를 획득하는 것이 아니라, 얼굴 우측면 45도 각도에서 관측된 이미지를 획득하는 점에서 차이가 있다. 나머지 프로세스는 동일하므로 이에 대한 중복되는 설명은 생략하도록 한다. Meanwhile, Figure 5 is a diagram of an embodiment in which a user adds right cheek touch makeup. The difference from the embodiment of FIG. 4 is that, rather than acquiring an image of the front of the face, an image observed from a 45-degree angle on the right side of the face is acquired. The rest of the process is the same, so redundant explanations will be omitted.

이상에서 설명된 실시예들은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CDROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체 (magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다. 소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로 (collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다. The embodiments described above may be implemented in the form of program instructions that can be executed through various computer means and recorded on a computer-readable medium. The computer-readable medium may include program instructions, data files, data structures, etc., singly or in combination. Program instructions recorded on the medium may be specially designed and configured for the embodiment or may be known and available to those skilled in the art of computer software. Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks, and magnetic tapes, optical media such as CDROMs and DVDs, and magneto-optical media such as floptical disks. Includes magneto-optical media, and hardware devices specifically configured to store and execute program instructions, such as ROM, RAM, flash memory, etc. Examples of program instructions include machine language code, such as that produced by a compiler, as well as high-level language code that can be executed by a computer using an interpreter, etc. The hardware devices described above may be configured to operate as one or more software modules to perform the operations of the embodiments, and vice versa. Software may include a computer program, code, instructions, or a combination of one or more of these, which may configure a processing unit to operate as desired, or may be processed independently or collectively. You can command the device. Software and/or data may be used on any type of machine, component, physical device, virtual equipment, computer storage medium or device to be interpreted by or to provide instructions or data to a processing device. , or may be permanently or temporarily embodied in a transmitted signal wave. Software may be distributed over networked computer systems and thus stored or executed in a distributed manner. Software and data may be stored on one or more computer-readable recording media.

이상과 같이 실시예들이 비록 한정된 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기를 기초로 다양한 기술적 수정 및 변형을 적용할 수 있다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다. 그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 청구범위의 범위에 속한다.Although the embodiments have been described with limited drawings as described above, those skilled in the art can apply various technical modifications and variations based on the above. For example, the described techniques are performed in a different order than the described method, and/or components of the described system, structure, device, circuit, etc. are combined or combined in a different form than the described method, or other components are used. Alternatively, appropriate results may be achieved even if substituted or substituted by an equivalent. Therefore, other implementations, other embodiments, and equivalents of the claims also fall within the scope of the following claims.

100: 영상처리장치
110: 사용자 인터페이스부
112: 입력부
114: 출력부
120: 이미지 획득부
130: 텍스쳐 맵 생성부
140 : 픽셀 정보 추출부
150: 모델링부
160: UV 매핑부
170: 저장부
180: 제어부
210: 메쉬
220: 머티리얼
230: 2D 이미지
100: Image processing device
110: User interface unit
112: input unit
114: output unit
120: Image acquisition unit
130: Texture map generation unit
140: Pixel information extraction unit
150: Modeling department
160: UV mapping unit
170: storage unit
180: control unit
210: mesh
220: Material
230: 2D image

Claims (10)

사용자에 의한 3차원(3D) 객체 편집을 용이하게 하는 영상 처리 방법으로서,
3D 객체의 원본 이미지를 획득하는 단계;
객체 편집 단계;
편집된 객체에 대한 2D 이미지와 UV 맵 이미지를 획득하는 편집 이미지 획득 단계;
상기 편집 이미지 획득 단계와는 병렬적으로 수행되되, 상기 원본 이미지에 대한 원본 텍스쳐 맵을 생성하는 단계;
상기 2D 이미지와 상기 UV 맵 이미지로부터 픽셀 정보를 수집하는 단계;
상기 2D 이미지 픽셀 정보와, 상기 UV 맵 이미지 픽셀 정보와, 상기 텍스쳐 맵 정보를 이용하여, 실제 3D 모델에 적용될 보정된 텍스쳐 맵을 모델링하는 단계; 및
상기 보정된 텍스쳐 맵을 이용하여 UV매핑을 수행하는 단계를 포함하고,

상기 2D 이미지와 상기 UV 맵 이미지로부터 픽셀 정보를 수집하는 단계는,
상기 2D 이미지로부터 소정 좌표의 픽셀 색상 정보를 수집하고, 상기 UV 맵 이미지로부터 상기 소정 좌표와 동일 좌표의 픽셀 UV 정보를 수집하고,
상기 원본 텍스쳐 맵에서, 상기 픽셀 UV 정보에 대응되는 UV 좌표를 갖는 픽셀 색상 정보를 수집하는 것을 특징으로 하는 영상처리방법.
An image processing method that facilitates editing of three-dimensional (3D) objects by a user, comprising:
Obtaining an original image of a 3D object;
object editing step;
An editing image acquisition step of acquiring a 2D image and a UV map image for the edited object;
Performed in parallel with the edited image acquisition step, generating an original texture map for the original image;
collecting pixel information from the 2D image and the UV map image;
Modeling a corrected texture map to be applied to an actual 3D model using the 2D image pixel information, the UV map image pixel information, and the texture map information; and
Comprising the step of performing UV mapping using the corrected texture map,

The step of collecting pixel information from the 2D image and the UV map image is,
Collecting pixel color information at predetermined coordinates from the 2D image, and collecting pixel UV information at the same coordinates as the predetermined coordinates from the UV map image,
An image processing method comprising collecting pixel color information having UV coordinates corresponding to the pixel UV information from the original texture map.
제1항에 있어서,
상기 객체 편집 단계는, 편집 인터페이스를 통해 입력되는 사용자 편집 명령에 따라 수행되며,
상기 사용자는 상기 편집 인터페이스를 이용하여, 상기 편집 이미지가 획득되는 소정 위치를 설정할 수 있는 것을 특징으로 하는 영상처리방법.

According to paragraph 1,
The object editing step is performed according to a user editing command input through an editing interface,
An image processing method wherein the user can set a predetermined location where the edited image is obtained using the editing interface.

제1항에 있어서, 상기 영상처리방법은,
상기 보정된 텍스쳐 맵을 모델링하여 매핑한 3D 모델을 실시간으로 출력하는 것을 특징으로 하는 영상처리방법.
The method of claim 1, wherein the image processing method:
An image processing method characterized by modeling the corrected texture map and outputting the mapped 3D model in real time.
삭제delete 제1항에 있어서,
상기 2D 이미지로부터 수집된 픽셀 색상 정보와 상기 원본 텍스쳐 맵으로부터 수집된 픽셀 색상 정보를 비교하여, 양자가 상이한 경우에는 상기 2D 이미지로부터 수집된 픽셀 색상 정보를 실제 3D 모델에 매핑될 정보로서 결정하는 것을 특징으로 하는 영상처리방법.
According to paragraph 1,
Comparing the pixel color information collected from the 2D image and the pixel color information collected from the original texture map, and if the two are different, determining the pixel color information collected from the 2D image as information to be mapped to the actual 3D model Featured image processing method.
사용자에 의한 3차원(3D) 객체 편집을 용이하게 하는 영상처리장치로서,
상기 사용자의 3D 객체 편집을 지원하는 편집 인터페이스를 포함하는 입력부와 출력부를 포함하는 사용자 인터페이스부;
상기 출력부에 디스플레이되는 원본 3D 객체 이미지에 대한 2D 이미지와 UV 맵 이미지를 획득하는 이미지 획득부;
상기 원본 3D 객체 이미지를 2차원의 UV 공간 상에 전개하여 원본 텍스쳐 맵을 생성하는 텍스쳐 맵 생성부;
상기 이미지 획득부가 획득한 이미지로부터 소정 좌표의 픽셀 정보를 추출하는 픽셀 정보 추출부;
상기 2D 이미지와, 상기 UV 맵 이미지와, 상기 원본 텍스쳐 맵을 이용하여 실제 3D 모델에 적용될 보정된 텍스쳐 맵을 모델링하는 모델링부; 및
상기 보정된 텍스쳐 맵을 3D 모델에 매핑하는 UV매핑부를 포함하여 구성되고,

상기 픽셀 정보 추출부는,
상기 2D 이미지로부터 소정 좌표의 픽셀 색상 정보를 수집하고, 상기 UV 맵 이미지로부터 상기 소정 좌표와 동일 좌표의 픽셀 UV 정보를 수집하고, 상기 원본 텍스쳐 맵에서, 상기 픽셀 UV 정보에 대응되는 UV 좌표를 갖는 픽셀 색상 정보를 수집하는 것을 특징으로 하는 영상처리장치.
An image processing device that facilitates three-dimensional (3D) object editing by the user,
a user interface unit including an input unit and an output unit including an editing interface that supports the user's editing of 3D objects;
an image acquisition unit that acquires a 2D image and a UV map image for the original 3D object image displayed on the output unit;
a texture map generator that generates an original texture map by expanding the original 3D object image in a two-dimensional UV space;
a pixel information extraction unit that extracts pixel information of predetermined coordinates from the image acquired by the image acquisition unit;
a modeling unit that models a corrected texture map to be applied to an actual 3D model using the 2D image, the UV map image, and the original texture map; and
It is configured to include a UV mapping unit that maps the corrected texture map to a 3D model,

The pixel information extraction unit,
Collecting pixel color information at predetermined coordinates from the 2D image, collecting pixel UV information at the same coordinates as the predetermined coordinates from the UV map image, and having UV coordinates corresponding to the pixel UV information in the original texture map. An image processing device characterized by collecting pixel color information.
제6항에 있어서, 상기 편집 인터페이스는,
상기 사용자가 객체 편집 시에, 상기 이미지 획득부에 의해 획득되는 편집 이미지가 획득되는 소정 위치를 설정할 수 있도록 지원하는 것을 특징으로 하는 영상처리장치.
The method of claim 6, wherein the editing interface is:
An image processing device characterized in that it supports the user to set a predetermined position where the edited image acquired by the image acquisition unit is obtained when editing an object.
제6항에 있어서,
상기 출력부는, 상기 보정된 텍스쳐 맵을 모델링하여 매핑한 3D 모델을 실시간으로 출력하는 것을 특징으로 하는 영상처리장치.
According to clause 6,
The output unit models the corrected texture map and outputs a mapped 3D model in real time.
삭제delete 제6항에 있어서, 상기 모델링부는,
상기 2D 이미지로부터 수집된 픽셀 색상 정보와 상기 원본 텍스쳐 맵으로부터 수집된 픽셀 색상 정보를 비교하여, 양자가 상이한 경우에는 상기 2D 이미지로부터 수집된 픽셀 색상 정보를 실제 3D 모델에 매핑될 정보로서 결정함으로써 보정된 텍스쳐 맵을 모델링하는 것을 특징으로 하는 영상처리장치.

The method of claim 6, wherein the modeling unit,
Compare the pixel color information collected from the 2D image and the pixel color information collected from the original texture map, and if the two are different, correct by determining the pixel color information collected from the 2D image as information to be mapped to the actual 3D model. An image processing device characterized by modeling a texture map.

KR1020220061759A 2022-05-20 2022-05-20 Image processing method and apparatus for facilitating 3d object editing by a user KR102641060B1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020220061759A KR102641060B1 (en) 2022-05-20 2022-05-20 Image processing method and apparatus for facilitating 3d object editing by a user
PCT/KR2023/001639 WO2023224212A1 (en) 2022-05-20 2023-02-06 Image processing method and image processing device for facilitating three-dimensional object editing by user

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220061759A KR102641060B1 (en) 2022-05-20 2022-05-20 Image processing method and apparatus for facilitating 3d object editing by a user

Publications (2)

Publication Number Publication Date
KR20230162184A KR20230162184A (en) 2023-11-28
KR102641060B1 true KR102641060B1 (en) 2024-02-27

Family

ID=88835464

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220061759A KR102641060B1 (en) 2022-05-20 2022-05-20 Image processing method and apparatus for facilitating 3d object editing by a user

Country Status (2)

Country Link
KR (1) KR102641060B1 (en)
WO (1) WO2023224212A1 (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100194768A1 (en) * 2009-02-05 2010-08-05 Autodesk, Inc. System and method for painting 3D models with 2D painting tools

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6862024B2 (en) * 2002-04-17 2005-03-01 Mitsubishi Electric Research Laboratories, Inc. Enhancing textured range images using a 2D editor
KR100914846B1 (en) * 2007-12-15 2009-09-02 한국전자통신연구원 Method and system for texturing of 3d model in 2d environment
KR101189687B1 (en) * 2012-05-11 2012-10-11 (주) 엔소울즈 Method for creating 3d character
US20190164329A1 (en) * 2017-11-30 2019-05-30 Htc Corporation Virtual reality device, image processing method, and non-transitory computer readable storage medium

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100194768A1 (en) * 2009-02-05 2010-08-05 Autodesk, Inc. System and method for painting 3D models with 2D painting tools

Also Published As

Publication number Publication date
WO2023224212A1 (en) 2023-11-23
KR20230162184A (en) 2023-11-28

Similar Documents

Publication Publication Date Title
KR20210103435A (en) Method and apparatus for synthesizing virtual object image, electronic device and storage medium
US9208607B2 (en) Apparatus and method of producing 3D model
Goesele et al. Ambient point clouds for view interpolation
KR101388133B1 (en) Method and apparatus for creating a 3D model from 2D photograph image
US9202309B2 (en) Methods and apparatus for digital stereo drawing
JP5299173B2 (en) Image processing apparatus, image processing method, and program
US20130124148A1 (en) System and Method for Generating Editable Constraints for Image-based Models
CN108352082B (en) Techniques to crowd 3D objects into a plane
CN108140254A (en) 3D models are generated from map datum
CN108140260A (en) The generation of 3D models and user interface from map datum
JP2008186456A (en) Methodology for 3d scene reconstruction from 2d image sequences
KR101507776B1 (en) methof for rendering outline in three dimesion map
Olsen et al. Image-assisted modeling from sketches.
JP7294788B2 (en) Classification of 2D images according to the type of 3D placement
JPH09319896A (en) Three-dimensional image generating device
US11217002B2 (en) Method for efficiently computing and specifying level sets for use in computer simulations, computer graphics and other purposes
KR102641060B1 (en) Image processing method and apparatus for facilitating 3d object editing by a user
JP3309841B2 (en) Synthetic moving image generating apparatus and synthetic moving image generating method
KR20180053494A (en) Method for constructing game space based on augmented reality in mobile environment
Hwang et al. Image-based object reconstruction using run-length representation
JP2021018570A (en) Image processing apparatus, image processing system, image processing method and program
Faynshteyn et al. Context-preserving volumetric data set exploration using a 3D painting metaphor
CN118071955B (en) Method for realizing three-dimensional map point embedding based on three.JS
JP2002312810A (en) Device and method for generating composite moving image
JP3540157B2 (en) Shape modeling method using image and recording medium storing shape modeling program

Legal Events

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