KR102844957B1 - Method for Real-time Fur Rendering - Google Patents
Method for Real-time Fur RenderingInfo
- Publication number
- KR102844957B1 KR102844957B1 KR1020190138005A KR20190138005A KR102844957B1 KR 102844957 B1 KR102844957 B1 KR 102844957B1 KR 1020190138005 A KR1020190138005 A KR 1020190138005A KR 20190138005 A KR20190138005 A KR 20190138005A KR 102844957 B1 KR102844957 B1 KR 102844957B1
- Authority
- KR
- South Korea
- Prior art keywords
- fur
- hair
- region
- offset
- rendering
- Prior art date
- Legal status (The legal status 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 status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/10—Geometric effects
- G06T15/20—Perspective computation
- G06T15/205—Image-based rendering
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/04—Texture mapping
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/11—Region-based segmentation
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/40—Analysis of texture
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/50—Depth or shape recovery
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Computer Graphics (AREA)
- Computing Systems (AREA)
- Geometry (AREA)
- Processing Or Creating Images (AREA)
Abstract
일 실시예에 따른 실시간 털 렌더링 장치가 수행하는 실시간 털 렌더링하는 방법은 영상에서 털 영역을 추출하는 단계와, 상기 털 영역에서 제1 및 제2 영역을 선택하는 단계와, 털 길이 맵을 이용하여 상기 제1 영역과 상기 제2 영역을 다르게 렌더링하는 단계를 포함하여 수행된다.A real-time fur rendering method performed by a real-time fur rendering device according to one embodiment includes the steps of extracting a fur region from an image, selecting first and second regions from the fur region, and rendering the first region and the second region differently using a fur length map.
Description
본 발명은 실시간으로 털을 렌더링하는 방법에 관한 것이다.The present invention relates to a method for rendering fur in real time.
최근 컴퓨터 성능이 향상됨에 따라, 3차원 컴퓨터 그래픽스(CG) 기술은 영화, 광고, 게임, 애니메이션 등에서 널리 사용되고 있다. 특히, 그래픽 기술이 발전함에 따라 실제 촬영 영상에 근접 또는 동일한 수준의 영상 생성이 가능하게 되었고, 그에 따라 더욱 극사실적 영상 표현 기술을 요구하고 있다.With recent advances in computer performance, 3D computer graphics (CG) technology is being widely used in movies, advertisements, games, animation, and more. In particular, advancements in graphics technology have made it possible to create images that are close to or identical to actual footage, and this has led to a growing demand for more hyper-realistic image expression technology.
털 렌더링 기법은 동물의 잔털을 표현하는 기법으로, 영화나 게임, 애니메이션에서 3차원 상의 옷의 질감이나 동물의 특징을 표현하는데 사용되었다. 사실적인 털의 표현을 위하여 영화나 애니메이션 분야에서는 고성능 컴퓨터를 사용하여 오랜 시간에 걸친 렌더링 과정을 통하여 표현해 왔다. 하지만, 게임분야나 모바일 분야와 같은 사용자와의 실시간 상호작용이 강조되는 분야에서는 이런 털의 느낌을 정적인 털의 이미지만을 사용하여 표현할 수 밖에 없는 문제점이 있었다. 털의 표현은 많은 메모리 소모를 야기시키기 때문이다. 따라서, 실시간으로 부하량을 줄이면서 털의 표현을 사실적으로 묘사하기 위한 연구가 진행되고 있다.Fur rendering techniques, which represent the fine hairs of animals, have been used to express the texture of clothing and animal features in 3D scenes in movies, games, and animation. To achieve realistic fur, the film and animation industries have utilized high-performance computers and lengthy rendering processes. However, in fields that emphasize real-time user interaction, such as games and mobile devices, the sensation of fur can only be expressed using static fur images. This is because fur representation consumes significant memory. Therefore, research is being conducted to realistically depict fur while reducing the load in real time.
본 발명이 해결하고자 하는 과제는 부하량을 줄이면서도 사용자가 보기에 부자연스럽지 않게 털 표현을 사실적으로 묘사하기 위한 실시간 털 렌더링 방법이다.The problem that the present invention seeks to solve is a real-time fur rendering method for realistically depicting fur expression without making it appear unnatural to the user while reducing the load.
다만, 본 발명의 해결하고자 하는 과제는 이상에서 언급한 것으로 제한되지 않으며, 언급되지 않은 또 다른 해결하고자 하는 과제는 아래의 기재로부터 본 발명이 속하는 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.However, the problems to be solved by the present invention are not limited to those mentioned above, and other problems to be solved that are not mentioned can be clearly understood by a person having ordinary skill in the art to which the present invention pertains from the description below.
일 실시예에 따른 실시간 털 렌더링 장치가 수행하는 실시간 털 렌더링하는 방법은 영상에서 털 영역을 추출하는 단계와, 상기 털 영역에서 제1 및 제2 영역을 선택하는 단계와, 털 길이 맵을 이용하여 상기 제1 영역과 상기 제2 영역을 다르게 렌더링하는 단계를 포함하여 수행된다.A real-time fur rendering method performed by a real-time fur rendering device according to one embodiment includes the steps of extracting a fur region from an image, selecting first and second regions from the fur region, and rendering the first region and the second region differently using a fur length map.
일 실시예에 따른 실시간 털 렌더링 장치는 영상에서 털 영역을 추출하는 추출부; 상기 털 영역의 털 길이 맵을 구하는 털길이맵부; 및 상기 털 영역에서 제1 및 제2 영역을 선택하고, 상기 제1 영역과 상기 제2 영역을 다르게 렌더링하는 렌더링부를 포함한다.A real-time fur rendering device according to one embodiment includes an extraction unit for extracting a fur region from an image; a fur length map unit for obtaining a fur length map of the fur region; and a rendering unit for selecting first and second regions from the fur region and rendering the first region and the second region differently.
본 발명의 실시예에 따르면 실시간으로 털을 렌더링할 때, 부하량이 낮으면서도 사실적으로 털 길이를 표현할 수 있고 사용자가 볼 때도 자연스럽고 어색하지 않을 수 있다.According to an embodiment of the present invention, when rendering fur in real time, the length of fur can be expressed realistically while having a low load, and can be viewed naturally and without being awkward when viewed by a user.
도 1은 본 발명의 일 실시예에 따른 실시간 털 렌더링 장치의 구성도이다.
도 2는 본 발명의 일 실시예에 따른 실시간 털 렌더링 방법에 대한 순서도이다.
도 3 내지 도 7은 본 발명의 일 실시예에 따른 실시간 털 렌더링 방법을 설명하기 위한 예시도이다.Figure 1 is a configuration diagram of a real-time fur rendering device according to one embodiment of the present invention.
FIG. 2 is a flowchart of a real-time fur rendering method according to one embodiment of the present invention.
Figures 3 to 7 are exemplary diagrams for explaining a real-time fur rendering method according to one embodiment of the present invention.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다.The advantages and features of the present invention, and the methods for achieving them, will become clearer with reference to the embodiments described in detail below together with the accompanying drawings. However, the present invention is not limited to the embodiments disclosed below and may be implemented in various different forms. These embodiments are provided solely to ensure that the disclosure of the present invention is complete and to fully inform those skilled in the art of the scope of the invention, and the present invention is defined solely by the scope of the claims.
본 발명의 실시예들을 설명함에 있어서 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다. 그리고 후술되는 용어들은 본 발명의 실시예에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다. When describing embodiments of the present invention, detailed descriptions of known functions or configurations will be omitted if they are deemed to unnecessarily obscure the gist of the invention. Furthermore, the terms described below are defined in light of their functions in the embodiments of the present invention and may vary depending on the intent or custom of the user or operator. Therefore, their definitions should be based on the overall content of this specification.
도 1을 참조하여 본 발명의 일 실시예에 따른 실시간 털 렌더링 장치(1)에 대해서 설명하기로 한다. 도 1은 본 발명의 일 실시예에 따른 실시간 털 렌더링 장치(1)의 구성도이다.A real-time fur rendering device (1) according to one embodiment of the present invention will be described with reference to FIG. 1. FIG. 1 is a configuration diagram of a real-time fur rendering device (1) according to one embodiment of the present invention.
도 1을 참조하면, 실시간 털 렌더링 장치(1)는 추출부(10), 털길이맵부(20), 렌더링부(30)를 포함한다.Referring to FIG. 1, a real-time fur rendering device (1) includes an extraction unit (10), a fur length map unit (20), and a rendering unit (30).
추출부(10)는 영상에서 털 영역을 추출한다. 그리고 털길이맵부(20)는 추출된 털 영역의 털 길이 맵을 구한다. 렌더링부(30)는 털 영역에서 제1 및 제2 영역을 선택하고, 제1 영역과 제2 영역을 렌더링하는데, 제1 영역과 제2 영역을 서로 다르게 렌더링한다. 장치의 구체적인 동작 과정, 방법 및 내용은 하기에서 자세하게 설명하기로 한다. The extraction unit (10) extracts a hair region from an image. The hair length map unit (20) obtains a hair length map of the extracted hair region. The rendering unit (30) selects first and second regions from the hair region and renders the first and second regions, rendering the first and second regions differently. The specific operation process, method, and content of the device will be described in detail below.
도 2 내지 도 7을 참조하여 본 발명의 일 실시예에 따른 실시간 털 렌더링 방법에 대해서 설명하기로 한다. 도 2는 본 발명의 일 실시예에 따른 실시간 털 렌더링 방법에 대한 순서도이고, 도 3 내지 도 7은 본 발명의 일 실시예에 따른 실시간 털 렌더링 방법을 설명하기 위한 예시도이다.A real-time fur rendering method according to an embodiment of the present invention will be described with reference to FIGS. 2 to 7. FIG. 2 is a flowchart of a real-time fur rendering method according to an embodiment of the present invention, and FIGS. 3 to 7 are exemplary diagrams for explaining a real-time fur rendering method according to an embodiment of the present invention.
먼저, 영상(100)에서 털 영역(105)을 추출한다(S100). 영상(100)의 모든 부분에 대해서 실시간으로 털 렌더링을 수행할 필요는 없으므로, 실시간으로 털을 렌더링해야하는 털 영역(105)을 영상에서 선택한다. 도 3을 참조하면, 영상(100)에서 실시간으로 털 렌더링을 해야하는 털 영역(105)은 너구리 부분이므로 너구리 부분을 추출한다. 털 영역(105)은 하나의 객체 내에서 선택될 수 있으며, 선택된 털 영역(105) 내에서 털 렌더링이 선택적으로 수행될 수 있다.First, a fur region (105) is extracted from an image (100) (S100). Since real-time fur rendering does not need to be performed for all parts of the image (100), a fur region (105) for which real-time fur rendering is required is selected from the image. Referring to FIG. 3, the fur region (105) for which real-time fur rendering is required in the image (100) is a raccoon area, and thus the raccoon area is extracted. The fur region (105) can be selected within a single object, and fur rendering can be selectively performed within the selected fur region (105).
참고로, 3차원 모델은 일반적으로 폴리곤(메쉬)과 색상 텍스처로 구성되는데 하나하나의 털을 메쉬로 제작하면 실시간으로 수행해야할 렌더링의 수가 너무 많아 과부하가 걸리기 때문에 털 영역(105)의 메쉬는 털의 형상을 갖고 있지 않으며 후술할 털 렌더링 과정을 통해 털의 위치로 예상되는 지점에 털을 그려주는 연산을 수행한다.For reference, a 3D model is generally composed of polygons (mesh) and color textures. If each hair is made into a mesh, the number of renderings that must be performed in real time will be too large, causing an overload. Therefore, the mesh of the hair area (105) does not have the shape of the hair, and an operation is performed to draw the hair at the point expected to be the location of the hair through the hair rendering process described later.
한편, 털 영역(105)의 털 길이 맵(200)을 별도로 구한다. 털 길이 맵(200)은 직접 구해서 저장해두거나 외부로부터 수신받을 수 있다. 도 4에서 털 영역(105)에 대한 털 길이 맵(200)이 어떻게 생성되는지 확인할 수 있다. 털 길이 맵(200)은 털 영역(105)의 노말(normal) 값을 통해 생성할 수 있다. 또한, 털 길이 맵(200)을 통해 털 영역(105)의 부분마다 어떤 특징이 있는지 확인할 수 있다. 예를 들어, 털 길이 맵(200)을 통해 각 부분 마다 털 길이가 긴지 짧은지, 털이 빽빽하게 있는지 듬성듬성 있는지 등을 확인할 수 있다.이어서, 도 5를 참조하면 털 영역(105)에서 털 렌더링을 수행할 제1 영역(110)과 제2 영역(120)을 선택한다(S200). 제1 및 제2 영역(110, 120)은 털 영역(105) 내에서 선택되며 각각의 털 렌더링 하는 방법이 달라야 하므로 제1 영역(110)과 제2 영역(120)은 서로 다르다. Meanwhile, a hair length map (200) of the hair area (105) is obtained separately. The hair length map (200) can be obtained and stored directly or received from an external source. In Fig. 4, it can be confirmed how the hair length map (200) for the hair area (105) is generated. The hair length map (200) can be generated through the normal value of the hair area (105). In addition, it is possible to check what characteristics each part of the hair area (105) has through the hair length map (200). For example, it is possible to check whether the hair length of each part is long or short, and whether the hair is dense or sparse through the hair length map (200). Next, referring to Fig. 5, a first area (110) and a second area (120) for performing hair rendering in the hair area (105) are selected (S200). The first and second regions (110, 120) are selected within the fur region (105), and since the fur rendering method of each region must be different, the first region (110) and the second region (120) are different from each other.
구체적으로 제1 영역(110)과 제2 영역(120)을 선택(S200)하는 과정은 다음과 같다. 털 길이 맵(200)을 통해 털 영역(105)을 유형별로 구분할 수 있다. 상술한 바와 같이 털 길이 맵(200)을 통해 털의 길이, 털의 밀도에 대한 정보를 구할 수 있으며 이들 정보를 활용하여 털 영역(105)을 유형 별로 구분할 수 있다. 구체적으로 털의 길이와 털의 밀도가 동일한 부분들을 그룹화하여 유형별로 나누어 구분할 수 있다.Specifically, the process of selecting the first region (110) and the second region (120) (S200) is as follows. The hair region (105) can be classified by type through the hair length map (200). As described above, information on hair length and hair density can be obtained through the hair length map (200), and the hair region (105) can be classified by type by utilizing this information. Specifically, parts having the same hair length and hair density can be grouped and classified by type.
그리고, 유형별로 구분된 영역 중에서 실시간 털 렌더링을 수행할 영역을 선택할 수 있다. 도 5에서는 예시적으로 제1 영역(110)으로 너구리의 수염을 선택하였고, 제2 영역(120)으로 너구리의 발을 선택하였다. In addition, a region for real-time fur rendering can be selected from among regions classified by type. In Fig. 5, the raccoon's whiskers are selected as the first region (110), and the raccoon's paws are selected as the second region (120).
본 발명에서는 설명의 편의를 위해 제1 영역(110)과 제2 영역(120), 즉 2개의 영역을 선택하는 것으로 설명하였지만 이에 제한되는 것은 아니다. 예를 들어, 털 길이 맵(200)을 통해 유형별로 구분된 영역이 3개 이상일 수도 있다. 도 5에서도 섬세한 렌더링을 위해 털 영역(105)을 너구리의 눈, 수염, 발, 귀, 머리, 몸체, 다리, 꼬리, 발 등으로 유형별로 구분할 수 있다. 또한, 유형별로 구분된 영역 중 3개 이상의 영역을 선택할 수 있다. 도 5에서는 제1 영역(110)으로 수염을, 제2 영역(120)으로 발을 선택하였지만, 제3 영역으로 몸통, 제4 영역으로 꼬리 등을 선택하여 3개 이상의 영역에 대해서 실시간으로 털 렌더링을 수행할 수 있다.In the present invention, for the convenience of explanation, it is described that two regions, i.e., a first region (110) and a second region (120), are selected, but it is not limited thereto. For example, there may be three or more regions classified by type through a fur length map (200). In FIG. 5, for detailed rendering, the fur regions (105) can be classified by type into eyes, whiskers, feet, ears, head, body, legs, tail, and feet of a raccoon. In addition, three or more regions can be selected among the regions classified by type. In FIG. 5, the whiskers are selected as the first region (110) and the feet are selected as the second region (120), but by selecting the body as the third region, and the tail as the fourth region, fur rendering can be performed in real time for three or more regions.
이어서, 제1 영역(110)과 제2 영역(120)을 렌더링한다(S300). 털 길이 맵(200)을 통해 제1 영역(110)과 제2 영역(120)의 유형별로 구분하였으므로 제1 영역(110)의 털 렌더링 수행 과정과 제2 영역(120)의 렌더링 수행 과정은 서로 다르다.Next, the first region (110) and the second region (120) are rendered (S300). Since the first region (110) and the second region (120) are distinguished by type through the hair length map (200), the hair rendering process of the first region (110) and the rendering process of the second region (120) are different from each other.
먼저, 제1 영역(110)에 대한 렌더링 과정은 다음과 같다. 제1 영역(110)의 제1 털 모델(210)을 생성한다. 제1 털 모델(210)은 털의 밀도, 제1 영역(110)의 알파(alpha) 값, 노말(normal) 값 등을 통해 구할 수 있다. 이어서, 제1 영역(110)의 제1 밀도 노이즈 텍스처(220)를 구한다. 제1 밀도 노이즈 텍스처(220)는 다수의 덴시티 레이어(Density Layers) 중에서 선택된다. 제1 털 모델(210)에서는 제1 털 오프셋을 정한다. 제1 털 오프셋 값과 선택된 제1 밀도 노이즈 텍스처(220)의 값을 비교하여 제1 털 오프셋 값이 제1 밀도 노이즈 텍스처 값보다 작으면 제1 영역(110)의 해당 픽셀에 털을 그린다. 제1 털 오프셋 값이 제1 밀도 노이즈 텍스처 값보다 크면 해당 픽셀에 털을 그리지 않는다. 이미 구한 털 길이 맵(200)을 통해 제1 영역(110)의 특성을 파악하였으므로, 제1 영역(110)에 맞는 제1 털 모델의 오프셋 값, 제1 밀도 노이즈 텍스처 값을 선택할 수 있고, 제1 털 모델(210)의 모델링 개수를 조절하여 털 렌더링을 조절할 수 있다.First, the rendering process for the first region (110) is as follows. A first fur model (210) of the first region (110) is created. The first fur model (210) can be obtained through fur density, an alpha value of the first region (110), a normal value, etc. Next, a first density noise texture (220) of the first region (110) is obtained. The first density noise texture (220) is selected from a plurality of density layers. In the first fur model (210), a first fur offset is determined. The first fur offset value and the value of the selected first density noise texture (220) are compared, and if the first fur offset value is smaller than the first density noise texture value, fur is drawn in the corresponding pixel of the first region (110). If the first fur offset value is larger than the first density noise texture value, fur is not drawn in the corresponding pixel. Since the characteristics of the first region (110) have been identified through the already obtained hair length map (200), the offset value of the first hair model and the first density noise texture value suitable for the first region (110) can be selected, and the hair rendering can be controlled by adjusting the number of modeling of the first hair model (210).
제2 영역(120)에 대한 렌더링 과정도 제1 영역(110)과 동일하다. 제2 영역(120)의 제2 털 모델(210)을 생성한다. 제2 털 모델(210)은 털의 밀도, 제2 영역(120)의 알파(alpha) 값, 노말(normal) 값 등을 통해 구할 수 있다. 이어서, 제2 영역(120)의 제2 밀도 노이즈 텍스처(220)를 구한다. 제2 밀도 노이즈 텍스처(220)는 다수의 덴시티 레이어(Density Layers) 중에서 선택된다. 제2 털 모델(210)에서는 제2 털 오프셋을 정한다. 제2 털 오프셋 값과 선택된 제2 밀도 노이즈 텍스처(220)의 값을 비교하여 제2 털 오프셋 값이 제2 밀도 노이즈 텍스처 값보다 작으면 제2 영역(120)의 해당 픽셀에 털을 그린다. 제2 털 오프셋 값이 제2 밀도 노이즈 텍스처 값보다 크면 해당 픽셀에 털을 그리지 않는다. 이미 구한 털 길이 맵(200)을 통해 제2 영역(120)의 특성을 파악하였으므로, 제2 영역(120)에 맞는 제2 털 모델의 오프셋 값, 제2 밀도 노이즈 텍스처 값을 선택할 수 있고, 제2 털 모델(210)의 모델링 개수를 조절하여 털 렌더링을 조절할 수 있다.The rendering process for the second area (120) is the same as that for the first area (110). A second fur model (210) of the second area (120) is generated. The second fur model (210) can be obtained through fur density, an alpha value of the second area (120), a normal value, etc. Next, a second density noise texture (220) of the second area (120) is obtained. The second density noise texture (220) is selected from a plurality of density layers. In the second fur model (210), a second fur offset is determined. The second fur offset value and the value of the selected second density noise texture (220) are compared, and if the second fur offset value is smaller than the second density noise texture value, fur is drawn in the corresponding pixel of the second area (120). If the second fur offset value is larger than the second density noise texture value, fur is not drawn in the corresponding pixel. Since the characteristics of the second area (120) have been identified through the already obtained hair length map (200), the offset value and the second density noise texture value of the second hair model suitable for the second area (120) can be selected, and the hair rendering can be controlled by adjusting the number of modeling of the second hair model (210).
이와 같이 털 렌더링 과정은 털 길이 맵(200)을 활용하여 각각의 영역에 어느 정도의 길이로 털을 그릴지, 어느 정도의 밀도로 털을 그릴지(몇 개의 털을 그릴지)를 정할 수 있다. 그리고, 털 길이 맵(200)을 통해 각각의 영역의 특성을 반영하여 실시간으로 털을 렌더링하였으므로, 털이 그려지는 형태가 각 영역마다 달라질 수 있다.In this way, the fur rendering process can use the fur length map (200) to determine the length of the fur to be drawn in each area and the density at which the fur should be drawn (how many furs to draw). In addition, since the fur is rendered in real time by reflecting the characteristics of each area through the fur length map (200), the shape of the fur drawn can vary for each area.
결국, 털 길이 맵(200)을 통해 털 모델(210), 밀도 노이즈 텍스처 값, 오프셋 값이 바뀌기 때문에 각 영역의 특성에 맞는 털 렌더링이 가능하다.Ultimately, because the fur model (210), density noise texture value, and offset value are changed through the fur length map (200), fur rendering suitable for the characteristics of each area is possible.
도 6은 실시간 털 렌더링을 통해 생성된 영상(130)이다. 제1 영역(110)과 제2 영역(120)의 렌더링을 서로 다르게 수행했기 때문에 제1 영역(110)과 제2 영역(120)의 털 그리는 과정이 달라 털 길이가 서로 다름을 확인할 수 있다. 만약 상술한 바와 같이 각 영역 별로 털 렌더링 수행하지 않으면 털 영역(105)의 모든 영역에 일률적으로 털 렌더링이 수행되기 때문에 도 7과 같이 제1 영역(110)과 제2 영역(120)이 동일하게 털이 그려진다. 따라서, 사용자 입장에서는 털 렌더링한 결과가 부자연스럽게 느껴질 수밖에 없다.Fig. 6 is an image (130) generated through real-time fur rendering. Since the rendering of the first region (110) and the second region (120) were performed differently, the fur drawing process of the first region (110) and the second region (120) is different, and it can be confirmed that the fur lengths are different. If fur rendering is not performed for each region as described above, fur rendering is performed uniformly in all regions of the fur region (105), so the fur is drawn in the same way in the first region (110) and the second region (120), as shown in Fig. 7. Therefore, the user cannot help but feel that the fur rendering result is unnatural.
털 모델을 구하는 방법과 밀도 노이즈 텍스처를 구하는 과정은 이미 공지된 기술이므로 자세한 설명은 생략하였다.The process of obtaining a fur model and a density noise texture is already known, so a detailed description is omitted.
한편, 도 3 내지 도 7에서는 영상(100)에 하나의 객체인 너구리만 있는 것으로 도시하였으나 이에 제한되는 것은 아니며 영상에 다수의 객체가 존재하면 다수의 객체에 대해서 털 렌더링을 수행할 수 있다. 다만, 실시간 털 렌더링을 수행할 털 영역을 추출하고 털 길이 맵을 구하고 제1 영역과 제2 영역을 선택하는 등의 실시간 털 렌더링 방법은 각각의 객체 별로 개별적으로 수행한다.Meanwhile, in FIGS. 3 to 7, only one object, a raccoon, is depicted in the image (100), but this is not a limitation, and if multiple objects exist in the image, fur rendering can be performed on multiple objects. However, the real-time fur rendering method, such as extracting a fur area for performing real-time fur rendering, obtaining a fur length map, and selecting a first area and a second area, is performed individually for each object.
한편, 상기 실시간 털 렌더링 방법은 이러한 방법의 각 단계를 수행하도록 프로그램된 컴퓨터 판독가능한 기록매체에 저장된 컴퓨터 프로그램의 형태로 구현 가능하다.Meanwhile, the above real-time fur rendering method can be implemented in the form of a computer program stored in a computer-readable recording medium programmed to perform each step of the method.
또한, 상기 실시간 털 렌더링 방법은 이러한 방법의 각 단계를 수행하도록 프로그램된 컴퓨터 프로그램을 저장하는 컴퓨터 판독가능한 기록매체의 형태로 구현 가능하다.Additionally, the above real-time fur rendering method can be implemented in the form of a computer-readable recording medium storing a computer program programmed to perform each step of the method.
이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 품질에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 발명에 개시된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 균등한 범위 내에 있는 모든 기술사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.The above description is merely an illustrative illustration of the technical idea of the present invention, and those skilled in the art will appreciate that various modifications and variations can be made without departing from the essential quality of the present invention. Therefore, the embodiments disclosed in the present invention are intended to illustrate, rather than limit, the technical idea of the present invention, and the scope of the technical idea of the present invention is not limited by these embodiments. The scope of protection of the present invention should be interpreted by the following claims, and all technical ideas within a scope equivalent thereto should be interpreted as being included in the scope of the rights of the present invention.
1: 실시간 털 렌더링 장치 10: 추출부
20: 털길이맵부 30: 렌더링부
100: 영상 105: 털 영역
110: 제1 영역 120: 제2 영역
130: 생성된 영상 200: 털 길이 맵1: Real-time fur rendering device 10: Extraction unit
20: Hair length map part 30: Rendering part
100: Image 105: Hair area
110: Area 1 120: Area 2
130: Generated image 200: Hair length map
Claims (10)
영상에서 털 영역을 추출하는 단계와,
상기 털 영역에 포함되는 각 영역 별 털의 길이 및 밀도를 나타내는 털 길이 맵을 이용하여 상기 각 영역 별 털의 길이 및 털의 밀도를 확인하는 단계와,
상기 확인된 상기 각 영역 별 털의 길이 및 털의 밀도를 기초로
상기 털 영역에서 제1 영역 및 상기 제1 영역과는 다른 제2 영역을 선택하는 단계와,
상기 털 길이 맵을 이용하여 상기 제1 영역에 대응하는 제1 털 모델과 상기 제2 영역에 대응하고 상기 제1 털 모델과는 다른 제2 털 모델을 생성하는 단계와,
상기 제1 털 모델을 이용하여 상기 제1 영역을 렌더링하고, 상기 제2 털 모델을 이용하여 상기 제2 영역을 상기 제1 영역과 다르게 렌더링하는 단계를 포함하고,
상기 렌더링하는 단계는,
상기 제1 영역에 대응하는 제1 밀도 노이즈 텍스처 및 제1 털 오프셋과 상기 제2 영역에 대응하는 제2 밀도 노이즈 텍스처 및 제2 털 오프셋을 획득하는 단계;
상기 제1 털 모델의 상기 제1 털 오프셋과 상기 제1 밀도 노이즈 텍스처를 비교하여, 상기 제1 털 오프셋이 상기 제1 밀도 노이즈 텍스처의 값보다 작으면 털을 생성하는 방식으로 상기 제1 영역을 렌더링하고, 상기 제1 털 오프셋이 상기 제1 밀도 노이즈 텍스처의 값 이상이면 털을 생성하지 않는 단계; 및
상기 제2 털 모델의 상기 제2 털 오프셋과 상기 제2 밀도 노이즈 텍스처를 비교하여, 상기 제2 털 오프셋이 상기 제2 밀도 노이즈 텍스처의 값보다 작으면 털을 생성하는 방식으로 상기 제2 영역을 렌더링하고, 상기 제2 털 오프셋이 상기 제2 밀도 노이즈 텍스처의 값 이상이면 털을 생성하지 않는 단계를 포함하고,
상기 제1 털 오프셋 및 상기 제2 털 오프셋은,
상기 털 길이 맵 및 대응되는 영역에 기초해서 정해지고,
상기 제1 밀도 노이즈 텍스처의 값과 상기 제2 밀도 노이즈 텍스처의 값은 서로 다른 값이고,
상기 제1 털 오프셋과 상기 제2 털 오프셋은 서로 다른 값이고,
상기 제1 영역 및 상기 제2 영역은 서로 다른 털의 유형으로 구분되고,
상기 유형은,
렌더링하고자 하는 객체의 눈, 수염, 발, 귀, 머리, 몸체, 다리, 꼬리 및 발 중 적어도 둘을 포함하는
실시간 털 렌더링 방법In a real-time fur rendering method performed by a real-time fur rendering device,
Steps to extract hair areas from the image,
A step of confirming the length and density of hair in each area using a hair length map indicating the length and density of hair in each area included in the hair area,
Based on the length and density of hair in each area confirmed above
A step of selecting a first region and a second region different from the first region in the above hair region;
A step of generating a first hair model corresponding to the first region and a second hair model corresponding to the second region and different from the first hair model using the hair length map;
A step of rendering the first area using the first fur model and rendering the second area differently from the first area using the second fur model,
The above rendering step is,
A step of obtaining a first density noise texture and a first fur offset corresponding to the first region and a second density noise texture and a second fur offset corresponding to the second region;
A step of comparing the first fur offset of the first fur model with the first density noise texture, rendering the first area in a manner of generating fur if the first fur offset is smaller than the value of the first density noise texture, and not generating fur if the first fur offset is greater than or equal to the value of the first density noise texture; and
Comprising a step of comparing the second fur offset of the second fur model with the second density noise texture, rendering the second area in a manner of generating fur if the second fur offset is less than a value of the second density noise texture, and not generating fur if the second fur offset is greater than or equal to a value of the second density noise texture.
The above first hair offset and the above second hair offset are,
It is determined based on the above hair length map and corresponding area,
The values of the first density noise texture and the values of the second density noise texture are different values,
The above first hair offset and the above second hair offset have different values,
The first region and the second region are distinguished by different hair types,
The above types are,
Contains at least two of the eyes, whiskers, feet, ears, head, body, legs, tail, and feet of the object you want to render.
How to render fur in real time
상기 제1 및 제2 영역을 선택하는 단계는,
상기 털 길이 맵을 통해 상기 털 영역을 유형별로 구분하고,
상기 구분된 유형 중 상기 제1 영역과 상기 제1 영역과 다른 상기 제2 영역을 선택하는 것을 포함하는 실시간 털 렌더링 방법In the first paragraph,
The step of selecting the first and second areas above is:
The hair area is divided into types through the above hair length map,
A real-time fur rendering method comprising selecting the first region and the second region different from the first region among the above-described types.
상기 털 영역을 유형별로 구분하는 것은,
털의 길이와 털의 밀도 중 적어도 하나를 포함하여 구분하는 실시간 털 렌더링 방법In the second paragraph,
The above hair areas are classified by type,
A real-time fur rendering method that distinguishes between fur length and fur density.
상기 제1 털 모델 및 상기 제2 털 모델 중 적어도 하나는 상기 털 길이 맵을 통해 조절되는 실시간 털 렌더링 방법In the first paragraph,
A real-time fur rendering method in which at least one of the first fur model and the second fur model is adjusted through the fur length map
상기 렌더링하는 단계를 수행한 이후에,
상기 제1 영역의 털 길이와 상기 제2 영역의 털 길이는 서로 다른 실시간 털 렌더링 방법In paragraph 5,
After performing the above rendering steps,
A real-time fur rendering method in which the fur lengths of the first region and the fur lengths of the second region are different from each other
상기 털 영역은 하나의 객체 내에서 선택되는 실시간 털 렌더링 방법In the first paragraph,
The above fur area is a real-time fur rendering method selected within one object.
상기 털 영역의 털 길이 맵을 구하는 털길이맵부; 및
상기 털 영역에 포함되는 각 영역 별 털의 길이 및 밀도를 나타내는 털 길이 맵을 이용하여 상기 각 영역 별 털의 길이 및 털의 밀도를 확인하고, 상기 확인된 상기 각 영역 별 털의 길이 및 털의 밀도를 기초로 상기 털 영역에서 제1 영역 및 상기 제1 영역과는 다른 제2 영역을 선택하고, 상기 털 길이 맵을 이용하여 상기 제1 영역에 대응하는 제1 털 모델과 상기 제2 영역에 대응하고 상기 제1 털 모델과는 다른 제2 털 모델을 생성하고, 상기 제1 털 모델을 이용하여 상기 제1 영역을 렌더링하고, 상기 제2 털 모델을 이용하여 상기 제2 영역을 상기 제1 영역과 다르게 렌더링하는 렌더링부를 포함하고,
상기 렌더링부는,
상기 제1 영역에 대응하는 제1 밀도 노이즈 텍스처 및 제1 털 오프셋과 상기 제2 영역에 대응하는 제2 밀도 노이즈 텍스처 및 제2 털 오프셋을 획득하고,
상기 제1 털 모델의 상기 제1 털 오프셋과 상기 제1 밀도 노이즈 텍스처를 비교하여, 상기 제1 털 오프셋이 상기 제1 밀도 노이즈 텍스처의 값보다 작으면 털을 생성하는 방식으로 상기 제1 영역을 렌더링하고, 상기 제1 털 오프셋이 상기 제1 밀도 노이즈 텍스처의 값 이상이면 털을 생성하지 않고,
상기 제2 털 모델의 상기 제2 털 오프셋과 상기 제2 밀도 노이즈 텍스처를 비교하여, 상기 제2 털 오프셋이 상기 제2 밀도 노이즈 텍스처의 값보다 작으면 털을 생성하는 방식으로 상기 제2 영역을 렌더링하고, 상기 제2 털 오프셋이 상기 제2 밀도 노이즈 텍스처의 값 이상이면 털을 생성하지 않고,
상기 제1 털 오프셋 및 상기 제2 털 오프셋은,
상기 털 길이 맵 및 대응되는 영역에 기초해서 정해지고,
상기 제1 밀도 노이즈 텍스처의 값과 상기 제2 밀도 노이즈 텍스처의 값은 서로 다른 값이고,
상기 제1 털 오프셋과 상기 제2 털 오프셋은 서로 다른 값이고,
상기 제1 영역 및 상기 제2 영역은 서로 다른 털의 유형으로 구분되고,
상기 유형은,
렌더링하고자 하는 객체의 눈, 수염, 발, 귀, 머리, 몸체, 다리, 꼬리 및 발 중 적어도 둘을 포함하는
실시간 털 렌더링 장치.
An extraction unit that extracts hair areas from an image;
A hair length map section for obtaining a hair length map of the above hair area; and
A rendering unit is included that verifies the length and density of hair in each region using a hair length map indicating the length and density of hair in each region included in the hair region, selects a first region and a second region different from the first region in the hair region based on the verified length and density of hair in each region, generates a first hair model corresponding to the first region and a second hair model corresponding to the second region and different from the first hair model using the hair length map, renders the first region using the first hair model, and renders the second region differently from the first region using the second hair model.
The above rendering part,
Obtain a first density noise texture and a first fur offset corresponding to the first region and a second density noise texture and a second fur offset corresponding to the second region,
The first area is rendered in a manner of generating fur by comparing the first fur offset of the first fur model with the first density noise texture, and if the first fur offset is less than the value of the first density noise texture, fur is not generated, and if the first fur offset is greater than or equal to the value of the first density noise texture,
The second area is rendered in a manner of generating fur by comparing the second fur offset of the second fur model with the second density noise texture, and if the second fur offset is less than the value of the second density noise texture, fur is not generated, and if the second fur offset is greater than or equal to the value of the second density noise texture,
The above first hair offset and the above second hair offset are,
It is determined based on the above hair length map and corresponding area,
The values of the first density noise texture and the values of the second density noise texture are different values,
The above first hair offset and the above second hair offset have different values,
The first region and the second region are distinguished by different hair types,
The above types are,
Contains at least two of the eyes, whiskers, feet, ears, head, body, legs, tail, and feet of the object you want to render.
Real-time fur rendering device.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| KR1020190138005A KR102844957B1 (en) | 2019-10-31 | 2019-10-31 | Method for Real-time Fur Rendering |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| KR1020190138005A KR102844957B1 (en) | 2019-10-31 | 2019-10-31 | Method for Real-time Fur Rendering |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| KR20210052004A KR20210052004A (en) | 2021-05-10 |
| KR102844957B1 true KR102844957B1 (en) | 2025-08-08 |
Family
ID=75917863
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| KR1020190138005A Active KR102844957B1 (en) | 2019-10-31 | 2019-10-31 | Method for Real-time Fur Rendering |
Country Status (1)
| Country | Link |
|---|---|
| KR (1) | KR102844957B1 (en) |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US11983810B1 (en) * | 2021-04-23 | 2024-05-14 | Apple Inc. | Projection based hair rendering |
Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20050210994A1 (en) * | 2004-03-25 | 2005-09-29 | Pixar | Volumetric hair rendering |
| JP2012208945A (en) * | 2006-07-24 | 2012-10-25 | Sony Corp | Hair motion compositor system and optimization techniques for use in hair/fur pipeline |
Family Cites Families (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR101072889B1 (en) | 2008-12-02 | 2011-10-17 | 한국전자통신연구원 | Apparatus and method to generate ambient occlusion map to render fur |
-
2019
- 2019-10-31 KR KR1020190138005A patent/KR102844957B1/en active Active
Patent Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20050210994A1 (en) * | 2004-03-25 | 2005-09-29 | Pixar | Volumetric hair rendering |
| JP2012208945A (en) * | 2006-07-24 | 2012-10-25 | Sony Corp | Hair motion compositor system and optimization techniques for use in hair/fur pipeline |
Also Published As
| Publication number | Publication date |
|---|---|
| KR20210052004A (en) | 2021-05-10 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US8566736B1 (en) | Visualization of value resolution for multidimensional parameterized data | |
| CN111369655B (en) | Rendering method, rendering device and terminal equipment | |
| KR20220051376A (en) | 3D Data Generation in Messaging Systems | |
| CN111652123B (en) | Image processing and image synthesizing method, device and storage medium | |
| CN106815883A (en) | The hair treating method and system of a kind of game role | |
| CN104751507B (en) | Graphical content rendering intent and device | |
| JP2023001336A (en) | Image display method, image display device, electronic equipment, storage medium, and computer program | |
| US11010952B1 (en) | Method and user interface for generating tangent vector fields usable for generating computer-generated imagery | |
| CN106683201A (en) | Scene editing method and device based on three-dimensional virtual reality | |
| US20230169733A1 (en) | System and method for rendering objects in an extended reality | |
| JP7795043B2 (en) | Prompt-driven image editing using machine learning | |
| KR102108422B1 (en) | System and Method for Optimizing Facial Expression of Virtual Characters through AI-based Facial Expression Classification and Retargeting, and Computer Readable Storage Medium | |
| US20160364896A1 (en) | Method and system for generating a user-customized computer-generated animation | |
| CN110322571B (en) | Page processing method, device and medium | |
| KR102776485B1 (en) | Method and apparatus of displaying 3d virtual clothing | |
| JP2025525285A (en) | Segmentation of objects in images | |
| KR102844957B1 (en) | Method for Real-time Fur Rendering | |
| US9704290B2 (en) | Deep image identifiers | |
| WO2025001846A1 (en) | Method and system for enhancing sense of reality of virtual model on basis of generative network | |
| KR20080018404A (en) | Computer-readable recording medium that stores background creation programs for game production | |
| US11710270B2 (en) | Method for scattering points in a uniform arbitrary distribution across a target mesh for a computer animated creature | |
| US7917535B1 (en) | Task membership and task masks | |
| Weiss et al. | Graph‐Based Synthesis for Skin Micro Wrinkles | |
| US11210849B2 (en) | System for procedural generation of braid representations in a computer image generation system | |
| Díaz et al. | Adaptive Cross‐sections of Anatomical Models |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| PA0109 | Patent application |
St.27 status event code: A-0-1-A10-A12-nap-PA0109 |
|
| PG1501 | Laying open of application |
St.27 status event code: A-1-1-Q10-Q12-nap-PG1501 |
|
| A201 | Request for examination | ||
| PA0201 | Request for examination |
St.27 status event code: A-1-2-D10-D11-exm-PA0201 |
|
| D13-X000 | Search requested |
St.27 status event code: A-1-2-D10-D13-srh-X000 |
|
| D14-X000 | Search report completed |
St.27 status event code: A-1-2-D10-D14-srh-X000 |
|
| E902 | Notification of reason for refusal | ||
| PE0902 | Notice of grounds for rejection |
St.27 status event code: A-1-2-D10-D21-exm-PE0902 |
|
| P11-X000 | Amendment of application requested |
St.27 status event code: A-2-2-P10-P11-nap-X000 |
|
| P13-X000 | Application amended |
St.27 status event code: A-2-2-P10-P13-nap-X000 |
|
| E601 | Decision to refuse application | ||
| PE0601 | Decision on rejection of patent |
St.27 status event code: N-2-6-B10-B15-exm-PE0601 |
|
| E13-X000 | Pre-grant limitation requested |
St.27 status event code: A-2-3-E10-E13-lim-X000 |
|
| P11-X000 | Amendment of application requested |
St.27 status event code: A-2-2-P10-P11-nap-X000 |
|
| PX0701 | Decision of registration after re-examination |
St.27 status event code: A-3-4-F10-F13-rex-PX0701 |
|
| X701 | Decision to grant (after re-examination) | ||
| F11 | Ip right granted following substantive examination |
Free format text: ST27 STATUS EVENT CODE: A-2-4-F10-F11-EXM-PR0701 (AS PROVIDED BY THE NATIONAL OFFICE) |
|
| PR0701 | Registration of establishment |
St.27 status event code: A-2-4-F10-F11-exm-PR0701 |
|
| PR1002 | Payment of registration fee |
St.27 status event code: A-2-2-U10-U11-oth-PR1002 Fee payment year number: 1 |
|
| U11 | Full renewal or maintenance fee paid |
Free format text: ST27 STATUS EVENT CODE: A-2-2-U10-U11-OTH-PR1002 (AS PROVIDED BY THE NATIONAL OFFICE) Year of fee payment: 1 |
|
| PG1601 | Publication of registration |
St.27 status event code: A-4-4-Q10-Q13-nap-PG1601 |
|
| Q13 | Ip right document published |
Free format text: ST27 STATUS EVENT CODE: A-4-4-Q10-Q13-NAP-PG1601 (AS PROVIDED BY THE NATIONAL OFFICE) |