Head model creation device and head model creation method
The head model creation device and method address the challenge of uneven hair reproduction by analyzing and projecting points on a spherical model to accurately identify hair root positions and rearrange points, achieving natural and accurate hair modeling.
Patent Information
- Application Number
- JP2024149801
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2023-09-22
- Filing Date
- 2024-08-30
- Publication Date
- 2025-04-04
AI Technical Summary
Existing methods for creating realistic avatars struggle to accurately model hair due to its diverse shapes and the need for numerous predefined patterns, leading to uneven hair reproduction.
A head model creation device and method that includes an image input processing unit, a head shape creation unit, and a projection unit to analyze and project points on a spherical model, identifying the hair root position and rearranging points to suppress unevenness.
The method effectively suppresses unevenness in hair reproduction models by accurately identifying hair root positions and rearranging points based on fluctuation components, resulting in more natural and accurate hair modeling.
Smart Images

Figure 2025051613000001_ABST
Abstract
Description
[Technical field]
[0001] The present invention relates to a head model creating device and a head model creating method. [Background technology]
[0002] In some cases, a real avatar created based on one's own appearance is used as an avatar in virtual reality spaces. When creating such a real avatar, one method is to model oneself using a 3D scanner. When creating a real avatar, modeling the entire body requires a lot of processing, so in some cases only the head is modeled. One method for modeling the head (entire face) is to use a 3-Dimensional Morphable Model (3DMM). This method generates a model by analyzing an input image and inferring the shape and texture of the 3DMM. By using a 3DMM, it is possible to reproduce the face by deforming the shape and adding texture, but hairstyles are highly diverse and it is extremely difficult to define a basic deformation model.
[0003] Furthermore, as a method for reproducing hair in animation, for example, there is a method described in Patent Document 1. In Patent Document 1, a master hair and a hair bundle having member hairs set around the master hair are provided, and the master hair is set at each position on the head, and the member hairs are set around it to reproduce the hair. [Prior art documents] [Patent documents]
[0004] [Patent Document 1] JP 2009-20874 A Summary of the Invention [Problem to be solved by the invention]
[0005] As a method for reproducing hair, there is a method of setting multiple patterns in advance and applying the prepared hairstyle by pattern matching. However, since there are various shapes of actual hair, it is necessary to prepare many patterns in order to apply with high accuracy. In addition, if the position is set for each model as in the device described in Patent Document 1, the processing work becomes more. In addition, since the size of the face and head, the position of the hair root, etc. differ from person to person, there is a possibility that unevenness will occur in the hair of the reproduction model. Therefore, it is required to suppress unevenness of the hair in the reproduction model.
[0006] In view of the above-mentioned problems, an object of the present invention is to provide a head model creating device and a head model creating method that can suppress unevenness in hair. [Means for solving the problem]
[0007] A head model creation device according to one embodiment of the present invention includes an image input processing unit to which an image including a person's head is input, and a head shape creation unit that analyzes the image, identifies the shape of the head, and identifies the area in which the roots of the hair are to be located as the scalp area. The head shape creation unit has a first placement unit that places a plurality of points on a spherical model for the head based on a predetermined rule, a second placement unit that rearranges the placed plurality of points using fluctuation components that indicate a movement direction and a movement distance, a third placement unit that arranges the spherical model so as to be superimposed on the head, a projection unit that projects the rearranged plurality of points onto a position where a straight line from an origin of the spherical model passes through the rearranged plurality of points and intersects with the surface of the head, and an identification unit that determines the position of the point projected on the surface of the head as the hair root position.
[0008] A head model creation method according to one aspect of the present invention includes an image input processing step in which an image including a person's head is input, and a head shape creation step in which the image is analyzed, the shape of the head is identified, and an area in which the hair roots are located is identified as the scalp area. The head shape creation step includes a first arrangement step in which a plurality of points are arranged on a spherical model for the head based on a predetermined rule, a second arrangement step in which the arranged plurality of points are rearranged using fluctuation components indicating a movement direction and a movement distance, a third arrangement step in which the spherical model is arranged so as to be superimposed on the head, a projection step in which the rearranged plurality of points are projected onto a position where a straight line from an origin of the spherical model passes through the rearranged plurality of points and intersects with the surface of the head, and an identification step in which the positions of the points projected on the surface of the head are identified as hair root positions. Effect of the Invention
[0009] According to the present invention, unevenness in hair can be suppressed. [Brief description of the drawings]
[0010] [Figure 1] FIG. 1 is a diagram showing an example of a head model creating system according to this embodiment. [Diagram 2] FIG. 2 is a flowchart showing an example of a scalp model creating method. [Diagram 3] FIG. 3 is a schematic diagram for explaining the process of the scalp model creating method. [Figure 4] FIG. 4 is a schematic diagram for explaining hair parts. [Diagram 5] FIG. 5 is a flowchart showing an example of a scalp model creating method. [Figure 6] FIG. 6 is a schematic diagram for explaining the process of creating a front hair model. [Figure 7] FIG. 7 is a schematic diagram for explaining the process of creating a front hair model. [Figure 8] FIG. 8 is a schematic diagram for explaining the process of creating a front hair model. [Figure 9]FIG. 9 is a schematic diagram for explaining the process of creating a front hair model. [Figure 10] FIG. 10 is a schematic diagram for explaining the process of creating a front hair model. [Figure 11] FIG. 11 is a schematic diagram for explaining the relationship between the parameters and the outline of the front hair. [Figure 12] FIG. 12 is a schematic diagram for explaining hair growth. [Figure 13] FIG. 13 is a schematic diagram for explaining hair growth. [Figure 14] FIG. 14 is a schematic diagram for explaining hair growth. [Figure 15] FIG. 15 is a schematic diagram for explaining hair growth. [Figure 16] FIG. 16 is a schematic diagram for explaining hair growth. [Figure 17] FIG. 17 is a schematic diagram showing an example of a front hair model. [Figure 18] FIG. 18 is a schematic diagram showing an example of a front hair model. [Figure 19] FIG. 19 is a schematic diagram showing an example of a front hair model. [Figure 20] FIG. 20 is a flow chart illustrating an example of a method for identifying a scalp area. [Figure 21] FIG. 21 is a schematic diagram for explaining the process of identifying the scalp area. [Figure 22] FIG. 22 is a flow chart showing an example of a method for identifying a hair root position. [Figure 23] FIG. 23 is a diagram illustrating an example of a reference sphere model. [Figure 24] FIG. 24 is a schematic diagram showing an example of a reference sphere model. [Diagram 25] FIG. 25 is a top view showing an example of a group of points arranged in a spiral shape. [Figure 26] FIG. 26 is a partial enlarged view of FIG. 25, and is a view for explaining the process of rearranging the arranged point cloud. [Figure 27]FIG. 27 shows the point cloud relocated to the reference sphere model. [Figure 28] FIG. 28 is a schematic diagram for explaining the process of identifying the hair root position. [Figure 29] FIG. 29 is a schematic diagram for explaining the process of identifying the hair root position. [Diagram 30] FIG. 30 is a flowchart showing an example of a method for creating a parting model. [Diagram 31] FIG. 31 is a diagram illustrating an example of the parting model creation process. [Diagram 32] FIG. 32 is a diagram illustrating an example of the parting model creation process. [Diagram 33] FIG. 33 is a diagram illustrating an example of the parting model creation process. [Diagram 34] FIG. 34 is a diagram illustrating an example of the parting model creation process. [Diagram 35] FIG. 35 is a flowchart showing an example of processing for arranging a hair root according to the second embodiment. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0011] Hereinafter, an embodiment of the present invention will be described in detail with reference to the drawings. Note that the present invention is not limited to the embodiment described below.
[0012] (First embodiment) 1 is a diagram showing an example of a head model creation system according to this embodiment. The head model creation system 10 according to this embodiment acquires an image including a person's head, and creates a model of the person's head included in the acquired image. The head model creation system 10 includes a camera 12, an image storage device 14, and a head model creation device 20.
[0013] Camera 12 is a device that captures images. The images captured by camera 12 may be either moving images or still images. Camera 12 outputs the captured image data to head model creation device 20. As a method for camera 12 to output image data to head model creation device 20, various methods can be used, such as wired or wireless communication, or a method using a recording medium.
[0014] The image storage device 14 stores image data, which is data of an image including a person's head. The image storage device 14 is a memory that stores various information, and includes at least one of a main storage device such as a RAM (Random Access Memory), a ROM (Read Only Memory), and an external storage device such as an HDD (Hard Disk Drive). The image storage device 14 outputs the image data to the head model creation device 20. The image storage device 14 can use various methods such as wired or wireless communication as a method for outputting the image data to the head model creation device 20.
[0015] The head model creation device 20 processes image data including the person's head supplied from the camera 12 and image storage device 14, and creates a model of the person's head. The process of creating a front hair model, which is a feature of the present invention, will be described below. The head model creation device 20 can also create models of hair other than the front hair model, side hair models, and facial models using well-known techniques to create a head model.
[0016] The head model creation device 20 is a personal computer, a smartphone, a tablet terminal, etc. The head model creation device 20 may connect each unit by wireless or wired communication, and perform some processing on the cloud. The head model creation device 20 includes an image input processing unit 22, an input unit 24, an output unit 26, a calculation unit 28, and a storage unit 30.
[0017] The image input processing unit 22 acquires image data supplied from the camera 12 and the image storage device 14. The image input processing unit 22 is, for example, a storage device such as a RAM or a ROM, and may include an arithmetic circuit such as a CPU (Central Processing Unit). The image input processing unit 22 converts the acquired image data into image data that can be processed by the arithmetic unit 28, and outputs the image data to the arithmetic unit 28. The image input processing unit 22 may also store the acquired data in the storage unit 30.
[0018] The input unit 24 accepts various input operations for the head model creation device 20. The input unit 24 outputs an input signal corresponding to the accepted input operation to the calculation unit 28. The input unit 24 includes, for example, a touch panel, a button, a switch, and the like. When a touch panel is used as the input unit 24, the input unit 24 is disposed on the output unit 26.
[0019] The output unit 26 is a display unit that displays various images. The output unit 26 is a display including, for example, a liquid crystal display (LCD) and an organic electro-luminescence (EL) display. In addition to the display unit, the output unit 26 may also include an audio output unit (speaker) that outputs audio and a tactile stimulus output unit that outputs a tactile stimulus to the user U. The tactile stimulus output unit outputs a tactile stimulus to the user U by physically operating by vibration or the like, but the type of tactile stimulus is not limited to vibration and may be any type.
[0020] The calculation unit 28 is a calculation device and includes a calculation circuit such as a CPU. The calculation unit 28 includes a head shape creation unit 40, a hair parts classification unit 42, a front hair creation unit 44, a side hair creation unit 46, a back hair creation unit 47, a parting creation unit 48, and a synthesis unit 49. The calculation unit 28 reads out a program (software) from the storage unit 30 and executes it to realize the head shape creation unit 40, the hair parts classification unit 42, the front hair creation unit 44, the side hair creation unit 46, the back hair creation unit 47, the parting creation unit 48, and the synthesis unit 49, and executes the processes. The calculation unit 28 may execute these processes using one CPU, or may be provided with multiple CPUs and execute the processes using the multiple CPUs. In addition, at least a portion of the head shape creation unit 40, hair parts classification unit 42, front hair creation unit 44, side hair creation unit 46, back hair creation unit 47, parting creation unit 48, and synthesis unit 49 may be realized by hardware.
[0021] The head shape creation unit 40 executes a process of analyzing the image to identify the head shape and scalp area. Here, the scalp area is an area in the head where the roots of the hair are arranged, that is, an area where the base point of the hair is arranged. The process of the head shape creation unit 40 to identify the head shape and scalp area from the image can use various shape recognition techniques. For example, the head shape creation unit 40 may perform pattern matching using a representative head shape of the human body to identify the shape and orientation of the head in the image. In addition, the head shape creation unit 40 may set the position of the scalp that is preset in the head shape as the scalp area. The head shape creation unit 40 identifies the hair root position of the scalp area. The head shape creation unit 40 has a first arrangement unit 401, a second arrangement unit 402, a third arrangement unit 403, a projection unit 404, and an identification unit 405. The first arrangement unit 401, the second arrangement unit 402, the third arrangement unit 403, the projection unit 404, and the identification unit 405 will be described later.
[0022] The hair part classification unit 42 analyzes the image and classifies the areas of the hair parts on the head. In this embodiment, the hair parts are classified into a front hair area, left and right side hair areas, a back hair area, and a parting area. The front hair area is an area that includes front hair, and the side hair area is an area that includes side hair. The back hair area is an area that includes back hair. The parting area is an area that includes a part. The hair part classification unit 42 performs machine learning on teacher data in which the areas of the hair parts of the image are classified, and classifies them into each area using a program that performs segmentation of the hair parts. Note that the processing of the hair part classification unit 42 preferably uses machine learning, but is not limited to this, and hair parts can be classified by various methods.
[0023] The bangs creation unit 44 creates a bangs model, which is a model of bangs, using information on the scalp area of the head extracted by the head shape creation unit 40 and information on the bangs area extracted by the hair parts classification unit 42. The bangs creation unit 44 sets a target area, which is an area of the scalp where hair that reproduces the bangs is to be placed. The bangs creation unit 44 also determines various parameters of the bangs using information on the scalp area of the head, information on the bangs area, and information on the image of the bangs. The bangs creation unit 44 grows hair roots in the target area based on the various parameters, and creates a bangs model.
[0024] The side hair creation unit 46 creates a side hair model, which is a model of side hair, using information on the scalp area of the head extracted by the head shape creation unit 40 and information on the side hair area extracted by the hair parts classification unit 42. The side hair creation unit 46 may create the side hair model by the same process as the front hair creation unit 44, or may create the side hair model by another known method.
[0025] The back hair creation unit 47 creates a back hair model, which is a model of the back hair, using the information on the scalp area of the head extracted by the head shape creation unit 40 and the information on the back hair area extracted by the hair parts classification unit 42. The back hair creation unit 47 may create the back hair model by the same process as the front hair creation unit 44, or may create the back hair model by another known method.
[0026] Parting creation unit 48 creates a parting model using information on the scalp area of the head extracted by head shape creation unit 40 and information on the parting area extracted by hair parts classification unit 42. With regard to the growth of hair roots in the parting area, parting creation unit 48 may grow the hair roots using the same process as front hair creation unit 44, or may grow the hair roots using other known methods. The process of parting creation unit 48 will be described later.
[0027] The synthesis unit 49 synthesizes the front hair model created by the front hair creation unit 44, the side hair model created by the side hair creation unit 46, the back hair model created by the back hair creation unit 47, and the parting model created by the parting creation unit 48, to create a model of the hair on the head of the image. The synthesis unit 49 may further synthesize a model of the face of the head.
[0028] The storage unit 30 is a memory that stores various information such as the calculation contents and programs of the calculation unit 28, and includes at least one of a RAM (Random Access Memory), a main storage device such as a ROM (Read Only Memory), and an external storage device such as a HDD (Hard Disk Drive). The program for the calculation unit 28 saved in the storage unit 30 may be stored in a recording medium that can be read by the head model creation device 20. The storage unit 30 includes a processing program 50 and a condition table 52. The processing program 50 is a program that is executed by the calculation unit 28 to realize each process of creating a head model. The processing program 50 includes a head model creation program that executes the creation process of the head model executed by the calculation unit 28. The processing program 50 is a program created by machine learning, a program created by an operator, or the like. The processing program 50 may also be a combination of multiple programs. The condition table 52 includes parameters, judgment criteria, and the like for the processing of the program executed by the calculation unit 28.
[0029] Next, the processing of the head model creation device 20 will be described with reference to Fig. 2 to Fig. 20. Fig. 2 is a flow chart showing an example of a scalp model creation method. Fig. 3 is a schematic diagram for explaining the processing of the scalp model creation method. Fig. 4 is a schematic diagram for explaining hair parts.
[0030] First, the creation of the entire head model will be described with reference to Figs. 2 to 4. Calculation unit 28 of head model creation device 20 realizes the processing shown in Fig. 2 by executing the processing of each unit. Calculation unit 28 acquires image data via image input processing unit 22 (step S12). As described above, the image data is an image including a person's head. Calculation unit 28 extracts a head shape from the image using head shape creation unit 40, and specifies the scalp area (step S14). Calculation unit 28 specifies the hair root positions in the scalp area using head shape creation unit 40 (step S15). The specification of the hair root positions will be described later.
[0031] The calculation unit 28 classifies hair parts from the image using the hair part classification unit 42 (step S16). The hair part classification unit 42 extracts a hair region from the image and classifies the extracted hair region into parts. For example, the hair part classification unit 42 analyzes the image 102 including the person's head 104 shown in FIG. 3, and extracts the hair region 110 of the image 102a as shown in FIG. 4. The hair part classification unit 42 further classifies the hair region 110 into a front hair area 112, a first side hair area 114, a second side hair area 116, a back hair area and a parting area (not shown). The calculation unit 28 sets an outline 118 based on the front hair area 112. The outline 118 will be described later. In this embodiment, the side hair is classified into two areas, left and right, but it may be classified into the front hair area 112 and other hair areas.
[0032] The calculation unit 28 creates bangs using the bangs creation unit 44 (step S18). The bangs creation unit 44 sets the scalp area where the bangs will be formed and various parameters of the bangs based on the information of the image 102, the information of the scalp area detected by the head shape creation unit 40, and the information of the bangs area 112, and grows the hair based on the settings to create a bangs model. The creation of the bangs model will be described later.
[0033] Calculation unit 28 creates side hair using side hair creation unit 46 (step S20). Side hair creation unit 46 creates a side hair model in the area corresponding to first side hair area 114 and second side hair area 116. Calculation unit 28 creates back hair using back hair creation unit 47 (step S21). Back hair creation unit 47 creates a back hair model in the area corresponding to the back hair area. Calculation unit 28 creates a part using parting creation unit 48 (step S22). Parting creation unit 48 creates a parting model in the area corresponding to the parting area. Calculation unit 28 creates a hair model by synthesizing the created hair, that is, the front hair, side hair, and back hair, using synthesis unit 49 (step S23). The creation of the parting model will be described later.
[0034] Next, a method for creating a front hair model will be described with reference to Fig. 5 to Fig. 20. First, the process will be described with reference to Fig. 5. Fig. 5 is a flow chart showing an example of a method for creating a scalp model. The calculation unit 28 executes the processes shown in Fig. 5 in the front hair creation unit 44 to create a front hair model.
[0035] The front hair creation unit 44 acquires the scalp area (step S32). The front hair creation unit 44 acquires the information of the scalp area extracted by the head shape creation unit 40. FIG. 6 is a schematic diagram for explaining the process of creating a front hair model. FIG. 6 is a diagram that shows a three-dimensional shape of a head model. FIG. 6 shows the head shape extracted by the head shape creation unit 40, that is, the shape obtained by extracting the head shape from an image and removing the hair. A scalp area 117 (an area surrounded by a dotted line in FIG. 6) is set in the head shape. The scalp area 117 is an area in which hair roots that form a hair model are arranged. Next, the front hair creation unit 44 acquires the front hair area of the hair parts (step S34). The front hair creation unit 44 acquires the information of the front hair area classified by the hair parts classification unit 42. The processes of steps S32 and S34 may be performed simultaneously or in the reverse order.
[0036] Next, the front hair creation unit 44 shapes the outline based on the front hair area (step S36). FIG. 7 is a diagram showing the process of shaping the outline. The front hair creation unit 44 estimates the left and right parting lines from the segmentation result. Specifically, the front hair creation unit 44 sets the boundary between the first side hair area 114 and the second side hair area 116 as the parting line. The front hair creation unit 44 recognizes the left and right eyes by image recognition, connects the centers of the left and right eyes with a line, and draws a perpendicular line from the midpoint to set the point on the line with the maximum brightness value as the apex of the nose. The front hair creation unit 44 connects the apex of the nose and the end point of the parting line with a line to set the bridge of the nose. The front hair creation unit 44 joins the parting line and the bridge of the nose to set the parting extension line 121. The bangs creation unit 44 determines the uppermost position where the parting line 121 intersects with the boundary line 112a of the bangs area 112 above the head as the apex angle point 119.
[0037] Next, the front hair creation unit 44 arranges plots 130 at a predetermined interval toward the boundary line 112a of the front hair area, starting from the apex point 119. The angle between the line connecting the plot 130 and the apex point 119 and the parting extension line is calculated for each plot 130, and the apex angle is calculated based on the calculation result. For example, the average value of the angles of the left and right plots is calculated and set as the apex angle. Next, the front hair creation unit 44 sets the base based on the hair tip, that is, the area farthest from the apex point 119, based on the information of the boundary line 112a of the front hair area. Specifically, the front hair creation unit 44 connects the point farthest from the apex point 119 among the points on the boundary line 112a of the front hair area to the point adjacent to the left (or right) of the point, and extends it until it overlaps with the two sides from the apex point 119 to set as the base. The method for setting the position of the base is not limited to this, and the front hair creation unit 44 may set the base based on the positions of the eyebrows and eyelids. Next, the front hair creation unit 44 creates an outline 118, which is a triangle with the apex point 119 as its apex, based on the apex angle 119, the apex angle, and the position of the base. Here, this triangle is not strictly speaking a triangle because it is on a curved surface, but it will be treated as a triangle for ease of explanation.
[0038] The front hair creation unit 44 estimates the scalp area (target area) of the front hair (step S38). As shown in Fig. 6, the front hair creation unit 44 sets the scalp area 117 included in the outline 118 as the target area 120, which is the scalp area of the front hair. In other words, the front hair creation unit 44 specifies the area where the scalp area 117 and the front hair area 112 overlap as the target area. The front hair creation unit 44 generates front hair in the specified target area.
[0039] The bangs creation unit 44 estimates bangs deformation parameters (step S40). The deformation parameters are parameters (growth parameters) that adjust the growth direction of each hair when creating the bangs model. The deformation parameters include light and dark parameters that control the state of the hair bundle, that is, the amount of hair at each position in the direction parallel to the bottom side of the outline 118, and the waving direction, waving position, central bulge, diagonal bang, etc. that adjust the flow of the hair. The bangs creation unit 44 analyzes the bangs area 112 and sets each parameter.
[0040] The front hair creation unit 44 estimates the light and dark parameters by detecting the light and dark of the image of the front hair area 112. The front hair creation unit 44 calculates whether the front hair covers the entire forehead or is see-through (the forehead is visible through the front hair), and if it is see-through, the degree of the see-through. The front hair creation unit 44 draws a line parallel to the bottom of the outline 118 at any position and detects the light and dark at each position. Specifically, it obtains the RGB value or the brightness value of the image at the measurement line. FIGS. 8 to 10 are schematic diagrams for explaining the process of creating a front hair model. FIGS. 8 to 10 are diagrams showing examples of light and dark parameters, which are changes in light and dark in the left and right directions of the line parallel to the bottom of the outline 118. The light and dark lines 150, 152, and 154 shown in FIGS. 8 to 10 are respectively different light and dark of the front hair. The left and right directions in FIGS. 8 to 10 are the left and right directions of the image captured by the camera 12. As shown in Figs. 8 to 10, the light and dark lines 150, 152, and 154 change in light and dark depending on the hairstyle. The light and dark lines 150, 152, and 154 are darker where there is a lot of hair and lighter where there is less hair. The amount of hair at each position can be estimated from the interval and change of light and dark. In other words, the degree of see-through can be estimated by reading the periodicity of the parts where the skin color is visible and the parts where the hair is visible, and the proportion of the forehead that is visible. The front hair creation unit 44 may estimate the degree of see-through based on the contrast of the image.
[0041] The front hair creation unit 44 calculates the bangs' waving direction, bangs' position, central bulge, and diagonal bangs as transformation parameters from the shape of the front hair area boundary line 112a. The front hair creation unit 44 obtains the slope of a line segment connecting adjacent plot points sampled at a predetermined interval along the front hair area boundary line 112a from the apex angle point 119. The front hair creation unit 44 determines a reference line 140 by connecting adjacent plots 130 as shown in FIG. 7, for example, and detects the slope of the front hair area boundary line 112a based on the reference line 140. The front hair creation unit 44 detects the slope for each of the multiple plots 130. The front hair creation unit 44 may detect the slope for the plots 130 located on the left and right of the parting extension line 121.
[0042] The front hair creation unit 44 may detect the inclination with respect to the reference line 140 that connects the apex point 119 and the plot 130. The front hair creation unit 44 may not plot the range including the set base line on the border line 112a of the front hair area. The front hair creation unit 44 calculates the swing direction of the front hair from the degree of change on the base side. The front hair creation unit 44 calculates the difference between the inclination of the plot 130 closest to the base side and the inclination of the plot 130 located on the apex side of the plot 130. The front hair creation unit 44 may calculate the difference between the inclination of the plot 130 closest to the apex point 119 and the inclination of the plot 130 located on the base side of the plot 130. The front hair creation unit 44 detects the difference in the inclination for each of the left and right sides of the parting extension line 121. The front hair creation unit 44 sets the calculated value as the parameter of the swing direction. The bulge in the center is calculated to be a bulge or a depression based on the degree of change between the apex side and the base side. The bangs creation unit 44 calculates the difference in slope between the plot 130 closest to the base and the plot 130 closest to the apex point 119, which is half the number of plots 130 between them. The bangs creation unit 44 sets the calculated value as the parameter of the bulge in the center. The diagonal bangs are calculated to be symmetrical or sweeping based on the difference in the amount of change between the left and right. The bangs creation unit 44 calculates the slope of the plot 130 located a predetermined number of plots on the apex side from the plot 130 closest to the base. The bangs creation unit 44 detects the difference in slope for each of the left and right sides of the parting extension line 121. The bangs creation unit 44 sets the calculated value as the parameter of the diagonal bang.
[0043] FIG. 11 is a schematic diagram for explaining the relationship between the transformation parameters and the bangs area 112. The bangs creation unit 44 compares two left and right values of the parameter of the bangs direction, and determines the direction with the larger value as the bangs direction. The bangs creation unit 44 determines the size of the bangs based on the magnitude of the parameter value of the direction determined as the bangs direction. If the magnitude of the parameter is smaller than a first threshold value, the bangs creation unit 44 determines that there is no bang (i.e., determines the reference shape 160). If the magnitude of the parameter is equal to or larger than the first threshold value and smaller than a second threshold value, the bangs creation unit 44 determines that the bangs position is up. If the magnitude of the parameter is greater than the second threshold value, the bangs creation unit 44 determines that the bangs position is the tip of the hair.
[0044] As shown in FIG. 11, when a reference shape 160 is used, by deforming the reference shape 160 based on the parameters of the wing direction, it is possible to appropriately reproduce either the left or right wing direction as indicated by arrow 162, and either the up or down wing position as indicated by arrow 164.
[0045] The bangs creation unit 44 determines the central bulge based on the magnitude of the parameter value of the central bulge. If the magnitude of the parameter is smaller than a third threshold, the bangs creation unit 44 determines that the central bulge is thin. If the magnitude of the parameter is equal to or greater than the third threshold and smaller than a fourth threshold, the bangs creation unit 44 determines that there is no central bulge (i.e., determines the reference shape 160). If the magnitude of the parameter is greater than the fourth threshold, the bangs creation unit 44 determines that the central bulge is full.
[0046] 11, when a reference shape 160 is used, by deforming the reference shape 160 based on the parameters of the bulge in the center, it is possible to reproduce a slender or plump shape as indicated by the arrow 172. In other words, it is possible to change the direction and degree of unevenness of the curved shape of the outer edge.
[0047] The bangs creation unit 44 compares the two left and right values of the diagonal bang parameter and determines the direction with the larger value as the diagonal bang direction. The bangs creation unit 44 determines the diagonal bang based on the magnitude of the parameter value of the direction determined as the diagonal bang direction. If the magnitude of the parameter is smaller than a fifth threshold, the bangs creation unit 44 determines that there is no diagonal bang (i.e., determines the reference shape 160). If the magnitude of the parameter is equal to or greater than the fifth threshold, the bangs creation unit 44 determines that there is a diagonal bang.
[0048] As shown in Fig. 11, when a reference shape 160 is used, by modifying the reference shape 160 based on the parameters of the diagonal bang, it is possible to reproduce either a leftward flow or a rightward flow as indicated by the arrow 182. In other words, it is possible to change the overall direction of the shape of the outer edge. Fig. 11 shows a shape obtained by varying any one of the parameters of the bangs, the central bulge, and the diagonal bang with respect to the reference shape 160, but various shapes can be obtained by combining them.
[0049] The front hair creation unit 44 grows each hair root in the scalp area of the front hair using the transformation parameters to create the front hair (step S42). Fig. 12 to Fig. 16 are schematic diagrams for explaining the growth of hair. Fig. 12 and Fig. 13 are diagrams showing the growth of hair, and Fig. 14 to Fig. 16 show the growth of hair by a vector V (r, φ, θ) of polar coordinates. The front hair creation unit 44 acquires the position of the hair root in the target area, which is the scalp area of the front hair, from the head shape creation unit 40. As shown in Fig. 12, the front hair creation unit 44 grows the hair at the position of the hair root of the head 180 with a vector 182 perpendicular to the scalp. The growth means that the locus from the position (coordinate) of the hair root to the coordinate indicated by the vector V is made the hair. After the front hair creation unit 44 grows the hair a certain distance from the scalp, as shown in Fig. 13, the front hair creation unit 44 grows the hair along a vector 184 on a curved surface 192 along the scalp to create the hair 190. That is, the r component, which is the radial component of the polar coordinates, is monotonically decreased from the dotted line that is the scalp position and set to 0 at a certain distance, as shown in FIG. 14. This allows the hair to grow on a curved surface 192 that is a certain distance away from the scalp. In addition, in the case of bangs that spread straight out, the φ component and the θ component are set as vectors that grow radially from the apex angle position, as shown in FIG. 15. In contrast, in the case of diagonal bangs, the deformation parameters are adjusted and the vectors are set as vectors whose growing direction gradually changes, as shown in FIG. 16. The bangs creation unit 44 creates a bangs model by calculating the vector of each hair based on the deformation parameters and growing it.
[0050] 17 to 19 are schematic diagrams showing examples of bangs models. By executing the above process, bangs models 200, 202, and 204 shown in FIGS. 17 to 19 can be created based on an image of an actual person's head. The bangs model 202 shown in FIG. 17 is bangs created with the detection results shown in FIG. 8, in which the diagonal bangs are not diagonal, the central bulge is slightly bulging at the center, the flick direction is straight, and the see-through is created with the detection results shown in FIG. 8. The bangs model 202 shown in FIG. 18 is bangs created with the diagonal bangs slightly swept to the left, the central bulge is slightly deflated at the center, the flick direction is flicked to the right at the tips, and the see-through is created with the detection results shown in FIG. 9. The bangs model 204 shown in FIG. 19 is bangs created with the diagonal bangs swept to the left, the central bulge is slightly bulging at the center, the flick direction is flicked to the right at the tips, and the see-through is created with the detection results shown in FIG. 10. As shown in Figs. 17 to 20, by creating bangs using the detected target area and parameters based on the image, bangs models of various shapes can be created.
[0051] As described above, the head model creation system 10 shapes the bangs area classified by the segmentation that classifies the areas of hair parts in the scalp area with an outline, and sets the scalp area that overlaps with this outline as the target area and the area in which the hair roots for forming the bangs are placed. Furthermore, the head model creation system 10 calculates various parameters that express the bangs style from the analysis of the shape of the bangs area, and creates a bangs model by growing the bangs from the bangs root area to the hair tips using a vector (hair growth function) that incorporates the various calculated parameters.
[0052] By doing as described above, hair can be appropriately represented, but since hairlines and faces vary from person to person, unnaturalness such as a wide forehead may occur when a head model is represented. Therefore, by specifying the scalp area as described below, unnaturalness when a head model is represented can be suppressed. Below, a method for specifying the scalp area will be described with reference to Figs. 20 and 21.
[0053] FIG. 20 is a flow chart showing an example of a method for identifying a scalp area. FIG. 21 is a schematic diagram for explaining a process for identifying a scalp area. FIG. 21 shows the head shape extracted by head shape creation unit 40, that is, the shape obtained by extracting the head shape from an image and removing the hair. Calculation unit 28 executes each process shown in FIG. 20 in head shape creation unit 40 to identify the scalp area. Calculation unit 28 outputs information on the scalp area identified by head shape creation unit 40 to front hair creation unit 44.
[0054] The head shape creation section 40 identifies the scalp area 117 based on a predetermined position from the landmarks included in the head. The landmarks here refer to the landmarks of the face 300, and indicate the positions of parts of the face 300 such as the eyes, nose, eyebrows, ears, and mouth.
[0055] The head shape creation unit 40 acquires landmarks (step S52). The head shape creation unit 40 acquires landmarks of the face 300 using, for example, open source image recognition software called dlib. The number of landmarks to be extracted is not particularly limited, but for example, 70 points are extracted. The head shape creation unit 40 extracts landmarks of predetermined parts from the landmarks of the face 300. In this embodiment, the head shape creation unit 40 extracts five landmarks: a landmark 312 at the root of the nose, a landmark 314 at the base of the bridge of the nose, a landmark 316 at the first end of the eyeball, a landmark 318 at the second end of the eyeball, and a landmark 320 at the upper end of the eyeball.
[0056] The nose root landmark 312 is a position where the nose intersects with a straight line connecting the left and right inner corners of the eyes. The head shape creation unit 40 may determine the position of the nose root landmark 312 as the midpoint of the straight line connecting the left and right inner corners of the eyes, as the maximum luminance value on the straight line connecting the left and right inner corners of the eyes, as the midpoint between two points on the straight line connecting the left and right inner corners of the eyes among the edges of the nose extracted by edge extraction using a well-known technique, or as a position where a perpendicular line is extended from the columella base landmark 314 to the straight line connecting the left and right inner corners of the eyes. The columella base landmark 314 is a position of the base of the columella, a wall that separates the left and right nostrils. The head shape creation unit 40 may determine the position of the columella base landmark 314 as the midpoint of the straight line connecting the lower ends of the left and right nostrils, as the minimum luminance value on the straight line connecting the lower ends of the left and right nostrils, or as the lower end of the edge of the nose extracted by edge extraction using a well-known technique (a position corresponding to the columella). The landmark 316 at the first end of the eyeball is the end of the eyeball on the outer corner side. The landmark 318 at the second end of the eyeball is the end of the eyeball on the inner corner side. The landmark 320 at the upper end of the eyeball is the end on the upper side (eyelid side) of the eyeball. The landmark 316 at the first end of the eyeball, the landmark 318 at the second end of the eyeball, and the landmark 320 at the upper end of the eyeball may be the ends of the eyeball of the right eye, but in this embodiment, the end of the eyeball of the left eye will be used for explanation. The head shape creation unit 40 may acquire five or more landmarks. The head shape creation unit 40 may also acquire other landmarks. The head shape creation unit 40 may acquire, for example, the landmark 322 at the upper end of the eyebrow. The head shape creation unit 40 may acquire the landmarks of the face 300 by other known techniques.
[0057] Head shape creation section 40 calculates the midline (step S54). Midline 330 is a straight line that passes through landmark 312 at the root of the nose and landmark 314 at the base of the columella. Midline 330 can also be said to be a line that divides face 300 into left and right.
[0058] The head shape creation section 40 calculates a first straight line (step S56). The first straight line 340 is a straight line that intersects the median line 330 at a right angle and passes through the landmark 314 at the base of the nose.
[0059] The head shape creation section 40 calculates the eyeball point (step S58). The head shape creation section 40 obtains the distance d between the landmark 316 at the first end of the eyeball and the landmark 318 at the second end of the eyeball. In other words, the distance d is the distance between the left and right ends of the eyeball. The head shape creation section 40 then calculates as the eyeball point M a point located a predetermined multiple of the distance d above the landmark 320 at the top end of the eyeball in parallel to the midline 330. Here, the predetermined multiple may be set arbitrarily, but is preferably 0.4, for example. In other words, the head shape creation section 40 calculates as the eyeball point M a point located 0.4 times the distance d, that is, 0.4d above the landmark 320 at the top end of the eyeball in parallel to the midline 330. If the head shape creation unit 40 is unable to acquire the landmark 320 at the top of the eyeball, it may calculate the position x times the distance d from the midpoint between the landmark 316 at the first end of the eyeball and the landmark 318 at the second end of the eyeball as the eyeball point M. That is, the head shape creation unit 40 calculates the point located xd above the landmark 320 at the top of the eyeball in parallel to the midline 330 as the eyeball point M. In this case, it is preferable to set x separately. The head shape creation unit 40 may calculate the eyeball point M by any method. For example, if the head shape creation unit 40 is able to acquire the landmark of the eyebrow, it may calculate the midpoint between the landmark 322 at the apex of the eyebrow and the landmark 320 at the top of the eyeball as the eyeball point M. That is, it is preferable to obtain the eyeball point by a ratio calculation based on the eyeball.
[0060] Head shape creation section 40 calculates the intersection point (step S60). Head shape creation section 40 calculates second straight line 342 that is perpendicular to median line 330 and passes through eyeball point M. Then, intersection point C between median line 330 and second straight line 342 is calculated.
[0061] The head shape creation unit 40 calculates the external division point (step S62). The head shape creation unit 40 calculates a point that externally divides the distance between the landmark 314 of the base of the nose and the intersection point C at a predetermined ratio as the external division point D. The predetermined ratio may be any ratio, but is preferably 2:1. For example, the head shape creation unit 40 calculates a point that externally divides the landmark 314 of the base of the nose and the intersection point C at a ratio of 2:1 as the external division point D. In other words, the head shape creation unit 40 calculates the external division point D so that the distance B between the landmark 314 of the base of the nose and the intersection point C and the distance A between the intersection point C and the external division point D are equal. Note that the external division point D may be calculated without being limited to a ratio of 2:1 depending on the individual's face, statistical data, etc. In addition, the head shape creation unit 40 preferably calculates a third straight line 344 after calculating the external division point D. The third straight line 344 is a straight line that is perpendicular to the median line 330 and passes through the external division point D.
[0062] The head shape creation section 40 specifies the scalp area (step S64). The head shape creation section 40 determines the position of the scalp that is set in advance in the head shape as a provisional scalp area, and determines the boundary line thereof as a provisional hairline line 350.
[0063] The head shape creation unit 40 moves the provisional hairline line 350 along the shape of the head until it intersects with the external division point D, and obtains the final hairline line 352, thereby identifying the scalp area 117. In other words, the provisional scalp area including the provisional hairline line 350 on its boundary line is identified as the scalp area 117 including the external division point D and the final hairline line 352 on its boundary line. If the intersection point between the provisional hairline line 350 and the median line 330 is the apex E, the head shape creation unit 40 moves the provisional hairline line 350 along the shape of the head until it intersects with the external division point D, and obtains the final hairline line 352, thereby identifying the scalp area 117. In other words, the head shape creation unit 40 moves the provisional hairline line 350 along the shape of the head until its apex E intersects with the third straight line 344. The head shape creation section 40 outputs information about the identified scalp area 117 to the front hair creation section 44.
[0064] As described above, the head model creation system 10 acquires the facial landmarks included in the head, performs processing to calculate lines and points, and identifies the scalp area. The head model creation system 10 identifies the scalp area based on the final hairline line.
[0065] Next, a method for identifying the hair root position of the scalp area in the head model will be described with reference to Figs. 22 to 29. In the above, as an example, the head shape creation unit 40 identifies the scalp area 117 of the front hair. The method for identifying the hair root position described below is not limited to the front hair, and can be applied to various areas for creating a hair model. Specifically, the head shape creation unit 40 may identify the scalp area 117 of the side hair or the back hair. The head shape creation unit 40 may divide the scalp area as desired, as long as it can identify the scalp area 117. The head model creation system 10 identifies the hair root position in the scalp area of the entire head by the calculation unit 28 in the method described below, thereby making it possible to suppress unevenness in the hair of the head model.
[0066] FIG. 22 is a flow chart showing an example of a method for identifying a hair root position. FIG. 23 is a diagram showing an example of a reference spherical model. FIG. 24 is a schematic diagram showing an example of a reference spherical model. FIG. 25 is a top view showing an example of a point group arranged in a spiral shape. FIG. 26 is a partially enlarged view of FIG. 25, and is a diagram explaining the process of rearranging the arranged point group. FIG. 27 is a diagram showing the point group rearranged on the reference spherical model. FIG. 28 and FIG. 29 are schematic diagrams for explaining the process of identifying a hair root position. Note that FIG. 26 is a diagram showing an enlarged view of the area AR in FIG. 25. The calculation unit 28 executes each process shown in FIG. 22 in the head shape creation unit 40 to identify the hair root position. Note that the reference spherical model is a spherical model. Hereinafter, the reference spherical model will be appropriately described as a spherical model.
[0067] The head shape creation unit 40 arranges a plurality of points on a reference spherical model for the head in the first arrangement unit 401 based on a predetermined rule (step S72). The first arrangement unit 401 generates a reference spherical model 600 for the head as shown in FIG. 23. The first arrangement unit 401 arranges a plurality of points P on the surface of the reference spherical model 600 based on a predetermined rule as shown in FIG. 24. The number of the plurality of points P corresponds to the number of strands St (see FIG. 29), that is, the number of hairs in the head model. That is, the number of the plurality of points P and the number of strands St are the same. Note that in this embodiment, the reference spherical model 600 may be an ideal sphere, an elliptical sphere, or a sphere generated from a head shape with hair removed (see FIG. 6, FIG. 12, FIG. 21, etc.). The size of the reference spherical model 600 may be arbitrary. In this embodiment, an ideal sphere is shown. The ideal sphere here refers to a sphere with a constant radius.
[0068] The predetermined rule in this embodiment is a function that arranges a plurality of points P at regular intervals on the reference sphere model 600. The predetermined rule is, for example, a function that generates a spiral. Specifically, as shown in FIG. 24 and FIG. 25, the first arrangement unit 401 arranges a plurality of points P at regular intervals in a spiral shape on the reference sphere model 600 based on the function that generates a spiral. In FIG. 25, adjacent points along a spiral are arranged at regular intervals. In FIG. 25, a plurality of points P are arranged in a spiral shape on the surface of the reference sphere model 600 from the zenith to the nadir (from the Z direction to the direction opposite to the Z direction). Note that the predetermined rule is not limited to a function that generates a spiral, and may be a Fibonacci sequence, a golden ratio, or the like.
[0069] The horizontal direction is defined as the X direction, the direction perpendicular to the X direction is defined as the Y direction, the vertical direction is defined as the Z direction, and the circumferential direction of the reference spherical model 600 along the spiral is defined as the spiral direction.
[0070] The head shape creation section 40 rearranges the multiple points P arranged by the second arrangement section 402 using a fluctuation component (step S74). As shown in Fig. 26, the second arrangement section 402 fluctuates and superimposes the multiple points P using a random function. The fluctuation superimposition is a process of moving (rearranging) the positions of the multiple points P to the positions of the tips of arrows 602 so that the movement direction and movement distance of each of the multiple points P differs. Note that the arrow 602 shown in Fig. 26 indicates the movement direction and movement distance of the multiple points P due to the random function. In other words, the arrow 602 can be said to be a vector. The multiple moved points P each become a point Pm. Note that the fluctuation component refers to the movement direction and movement distance of the multiple points P due to the random function.
[0071] Here, a description will be given of vector 602 of a plurality of points P. The components (fluctuation components) of the vector are generated randomly. In this embodiment, as an example of a method for randomly generating fluctuation components, random numbers are assigned to θ and φ of polar coordinates (θ, φ).
[0072] The polar coordinates of each of the multiple points P before movement are (θi, φi). If the fluctuation components are (dθi, dφi) and the polar coordinates of each point Pm after the fluctuation is superimposed (after movement) are (θi', φi'), then θi' and φi' are expressed by the following equations (1) and (2). θi´ = θi + dθi (1) φi´ = φi + dφi (2)
[0073] Moreover, the fluctuation components (dθi, dφi) are expressed by the following formulas (3) and (4) using a random function rand() that generates random numbers within the range of −1 to 1. dθi = rand() K (3) dφi=rand()·K / sin(θi)··(4)
[0074] Here, K is a coefficient for adjusting the amplitude of the fluctuation. rand() is a function for generating a random number each time the fluctuation component is calculated. The distance ratio of φ in θ is normalized by dividing dφ by sinθi. In this embodiment, the coefficient K for adjusting the amplitude of the fluctuation is less than half the distance between adjacent points P on the horizontal plane. Specifically, the maximum value of the coefficient K is preferably 0.3 to 0.4 times the distance between adjacent points P on the spiral, but is not limited to this. In other words, the fluctuation component is expressed as the product of a random number and a coefficient less than half the distance between adjacent points P along the spiral.
[0075] The head shape creation unit 40 uses the third placement unit 403 to place the reference spherical model 600 so that the origin O of the reference spherical model 600 coincides with the center Oh of the head (step S76). As shown in Figs. 27 and 28, the reference spherical model 600 having the rearranged points Pm is placed so that the origin O of the reference spherical model 600 coincides with the center Oh of the head. In detail, the third placement unit 403 calculates a straight line 610 (see Fig. 29) extending from the space between the eyebrows to the back of the head. The third placement unit 403 calculates a straight line 612 passing through the left and right ear helices. Specifically, the third placement unit 403 calculates the straight line 610 extending horizontally from the space between the eyebrows to the back of the head and the straight line 612 passing through the upper ends of the left and right ear helices. The third placement unit 403 determines the intersection of these straight lines as the center Oh of the head.
[0076] Alternatively, the head shape creation section 40 calculates a straight line passing through the upper ends of the left and right ear helices. The point that bisects this straight line may be obtained as the center Oh of the head.
[0077] Then, the third arrangement unit 403 arranges the reference spherical model 600 having the rearranged points Pm so that the origin O of the reference spherical model 600 coincides with the center Oh of the head. The center Oh of the head may be within a range in which no unnaturalness occurs when the model is reproduced. That is, the third arrangement unit 403 arranges the reference spherical model 600 so as to overlap with the head within a range in which no unnaturalness occurs when the model is reproduced. For example, straight lines may be drawn within a range R of a radius of several centimeters from the upper ends of the left and right ear helices and the space between the eyebrows, and the intersection of these straight lines may be set as the center Oh of the head. That is, the center Oh of the head may be within a range R of a radius of several centimeters from the center Oh of the head calculated by the above-mentioned method. For example, the center Oh of the head may be within a range of 5% to 10% of the length of the line segment drawn between the upper ends of the left and right ear helices, or the line segment from the space between the eyebrows to the back of the head.
[0078] The head shape creation unit 40 projects the multiple points Pm rearranged by the projection unit 404 onto a position where a straight line 614 from the origin O of the reference spherical model 600 passes through the rearranged multiple points Pm and intersects with the surface of the head (step S78). As shown in FIG. 28, the projection unit 404 calculates a straight line 614 that passes through the multiple rearranged points Pm from the origin O of the reference spherical model 600. The projection unit 404 extends the straight line 614 to the surface of the head (scalp area 117), and projects the point Pm onto the intersection point of the straight line 614 and the scalp area 117. Note that the projection unit 404 excludes the point Pm that is not projected onto the scalp area 117.
[0079] The head shape creation section 40 identifies the positions of the points projected onto the surface of the head by the identification section 405 as hair root positions (step S80). The identification section 405 identifies the positions of each projected point Ph as hair root positions, as shown in Fig. 29. For the sake of explanation, Fig. 28 shows one each of points Pm and Ph.
[0080] Next, an example of a method for creating a parting model will be described. An example of the flow of the process for creating a parting model by the parting creation section 48 will be described with reference to Fig. 30. Fig. 30 is a flow chart showing an example of a method for creating a parting model. Figs. 31 to 34 are diagrams for explaining an example of the process for creating a parting model. Figs. 31 and 34 show an example of a head model, and Figs. 32 and 33 show hair roots of the head model. The arrow in Fig. 32 indicates the growth direction of the hair roots. The arrow in Fig. 33 indicates the movement direction of the hair roots in the process for moving the hair root position, which will be described later.
[0081] The calculation unit 28 executes the processes shown in FIG. 30 in the parting creation unit 48 to create a parting model.
[0082] The parting creation unit 48 obtains the parting area of the hair part (step S90). The parting creation unit 48 obtains information on the parting area classified by the hair part classification unit 42.
[0083] The parting creation unit 48 detects the parting 632 and specifies the parting target area 630 (step S92). As shown in Figs. 31 and 32, the parting creation unit 48 detects the parting 632 and creates a parting boundary line 630a. The parting creation unit 48 creates the parting boundary line 630a based on the growth direction of hair along the parting 632, and specifies the inside of the parting boundary line 630a including the parting 632 as the parting target area 630. The parting creation unit 48 specifies an area including the parting 632 where the growth direction of hair along the parting 632 is dispersed in the direction indicated by the arrow (left and right direction) as the parting target area 630. The parting creation unit 48 may specify an area where the growth direction of hair along the parting 632 is dispersed as the parting target area 630. The parting creation unit 48 may specify an area within a predetermined distance from the parting 632 as the parting target area 630. The division creating section 48 may specify a rectangle having a predetermined width that includes the entire division 632 as the division target area 630 .
[0084] The parting creation unit 48 identifies the dispersion position Pd (step S94). The parting creation unit 48 identifies the dispersion position Pd from the detected parting 632. The parting creation unit 48 identifies the position where the hair growth direction is dispersed left and right and backward as the dispersion position Pd. The parting creation unit 48 may identify the position where the hair growth direction is dispersed as the dispersion position Pd. The parting creation unit 48 may identify the position in the parting target area 630 where the hair growth direction is most dispersed as the dispersion position Pd.
[0085] The parting creation unit 48 creates a dispersion line 634 (step S96). The parting creation unit 48 creates the dispersion line 634 indicating the position of the parting 632 from the specified dispersion position Pd. In the example of Fig. 31 and Fig. 32, the parting creation unit 48 creates the dispersion line 634 from the dispersion position Pd toward the face along the parting 632. The parting creation unit 48 may create the dispersion line 634 by, for example, the least squares method. That is, the parting creation unit 48 may assume a line from the dispersion position Pd toward the face, drop perpendicular lines from several points on the line, calculate the distance to the point where the line touches the parting 632, and create the line where the square of these distances is the smallest as the dispersion line 634. The parting creation unit 48 may create the dispersion line 634 by other methods.
[0086] The parting creation unit 48 identifies the gap 636 (step S98). The parting creation unit 48 identifies the gap 636 in the parting target area 630. For example, the parting creation unit 48 identifies an area in the parting target area 630 surrounded by hair roots that are more than a predetermined distance away from the dispersion line 634 as the gap 636. The predetermined distance may be determined arbitrarily. The parting creation unit 48 may calculate the distance from a point on the dispersion line 634 to a point where the perpendicular line meets the hair root, and if the distance is more than the predetermined distance, identify the area between the dispersion line 634 and the hair root as the gap 636.
[0087] The parting creation unit 48 moves the hair root positions around the parting target area 630 to the parting target area 630 (step S100). Specifically, the parting creation unit 48 moves the hair root positions around the parting target area 630. For example, the parting creation unit 48 sets the first hair root from the parting boundary line 630a of the parting target area 630 as a hair root around the parting target area 630, and moves the hair root position. As shown in FIG. 33, the parting creation unit 48 selects the hair root Mh to be moved. The parting creation unit 48 selects the first hair root from the parting boundary line 630a as the hair root Mh to be moved. The parting creation unit 48 moves the hair root position of the selected hair root Mh to the parting target area 630. The parting creation unit 48 selects a hair root included around the gap 636. The parting creation unit 48 selects a hair root Mh that is located a predetermined distance away from the dispersion line 634 and is the first hair root to be moved from the boundary of the gap 636. The parting creation unit 48 moves the hair root position of the selected hair root Mh toward the dispersion line 634. The parting creation unit 48 moves the hair root position of the selected hair root Mh so that it overlaps with the dispersion line 634. The parting creation unit 48 also moves the hair root position of the selected hair root Mh toward the dispersion line 634, into the gap 636. In this way, the parting creation unit 48 can reduce the gap 636 in the parting target area 630 of the parting model, as shown in FIG.
[0088] The parting creation section 48 may regard hair roots included within an area a predetermined distance outward from the parting boundary line 630a as hair roots surrounding the parting target area 630, and may move the positions of those hair roots. The parting creation section 48 may also move the positions of all hair roots included within an area a predetermined distance outward from the parting boundary line 630a.
[0089] The parting creating section 48 may also regard hair roots that are within a range a predetermined distance outward from the gap 636 as hair roots that are included around the gap 636, and move the positions of those hair roots. The parting creating section 48 may also move the positions of all hair roots that are within a range a predetermined distance outward from the gap 636.
[0090] In this embodiment, the parting creation unit 48 performs the above-mentioned processes from step S90 to step S100 after the second placement unit 402 performs the process of step S74 shown in Fig. 22. That is, the parting creation unit 48 performs the above-mentioned processes from step S90 to step S100 after the second placement unit 402 performs fluctuation superimposition.
[0091] After the second arrangement unit 402 has performed the fluctuation superimposition, the parting creation unit 48 obtains the parting area and identifies the parting target area 630 and the dispersion position Pd. The parting creation unit 48 creates a dispersion line 634 from the dispersion position Pd, identifies a gap 636, and moves the hair root positions to the parting target area 630, the dispersion line 634, and the gap 636. Therefore, gaps that have occurred in the parting target area can be appropriately processed.
[0092] Second embodiment The second embodiment differs from the first embodiment in that the first placement unit 401 places hair roots in the parting target area based on information processed by the parting creation unit 48. The same or corresponding reference symbols are used for configurations and processes similar to those of the first embodiment, and detailed descriptions thereof will be omitted.
[0093] FIG. 35 is a flowchart showing an example of processing for arranging a hair root according to the second embodiment.
[0094] The processes from step S112 to step S120 are similar to those from step S90 to step S100 in FIG. 31, respectively, and therefore will not be described.
[0095] The head shape creation unit 40 places a plurality of points in the gap 636 while placing a plurality of points on the spherical model for the head in the first placement unit 401 based on a predetermined rule (step S122). The first placement unit 401 acquires information processed by the parting creation unit 48, and places a plurality of points P based on the predetermined rule and the acquired information. The first placement unit 401 acquires the parting target area 630, the dispersion position Pd, the dispersion line 634, the gap 636, etc. from the parting creation unit 48. The first placement unit 401 reflects the information acquired from the parting creation unit 48 in, for example, the reference spherical model 600 (see Figs. 23 and 24), and places a plurality of points P on the reference spherical model 600 based on the predetermined rule, while placing a plurality of points P in the parting target area 630 with an interval narrower than that of the predetermined rule. As in the first embodiment, the first arrangement section 401 arranges a plurality of points P at regular intervals, for example in a spiral shape, and then arranges a plurality of points P at intervals narrower than the regular intervals in the parting target area 630. After the first arrangement section 401 has finished arranging the plurality of points P in the parting target area 630, it again arranges a plurality of points P at regular intervals. The first arrangement section 401 may arrange the plurality of points P in the parting target area 630 so as to overlap with the dispersion line 634, or may arrange the points P in the gap 636.
[0096] Furthermore, first placement section 401 may not place multiple points P based on a predetermined rule, but may place multiple points P so as to reduce gaps 636 in parting target area 630 based on information obtained from parting creation section 48. For example, first placement section 401 obtains parting information from parting creation section 48, and places multiple points P in the front hair area, side hair area, and back hair area, while placing some of the points in parting target area 630.
[0097] Steps S126 to S132 are similar to steps S74 to S80 in FIG. 22, respectively, and therefore will not be described.
[0098] In the second embodiment, the parting creation unit 48 performs processing before the first placement unit 401 performs processing. The first placement unit 401 obtains information about the processing performed by the parting creation unit 48, and places hair roots based on the obtained processing information. In this way, hair roots can be appropriately placed in the parting area.
[0099] Third embodiment The third embodiment differs from the first embodiment in that the parting creation section 48 adds points (hair roots) to the parting target area 630.
[0100] As in the first embodiment, after the processing of the second placement unit 402 is completed, the parting creation unit 48 selects hair roots Mh to be moved around the parting target area 630 and moves the hair root positions of the selected hair roots Mh toward the dispersion line 634. If a gap 636 still occurs even after the hair root positions of the hair roots Mh selected for the parting target area 630 are moved toward the dispersion line 634, the parting creation unit 48 adds new points to the parting target area 630. Furthermore, the parting creation unit 48 places some of the points not placed by the first placement unit 401 in the parting target area 630. Specifically, when placing a plurality of points on the reference sphere model 600, the first placement unit 401 does not place some of the points. After the fluctuation superimposition of the second placement unit 402 is completed, the parting creation unit 48 places some of the points not placed by the first placement unit 401 in the parting target area 630. In this way, the hair roots can be appropriately positioned in the parting area. The parting creation section 48 may also position new points in the parting target area 630 without moving the hair root positions.
[0101] As described above, calculation unit 28 specifies the hair root position using head shape creation unit 40. Calculation unit 28 creates hair at the specified hair root position. Calculation unit 28 creates bangs at the specified hair root position using bangs creation unit 44 as described above. This allows calculation unit 28 to create bangs while suppressing unevenness in the bangs.
[0102] Similarly to the front hair, calculation unit 28 creates left and right hairs at the identified hair root position using side hair creation unit 46. Calculation unit 28 creates back hair using back hair creation unit 47. Calculation unit 28 combines the created side hair and back hair using combination unit 49. This allows calculation unit 28 to create a head model with a 7:3 part hairstyle, for example, as shown in Fig. 29. By creating a head model in this manner, calculation unit 28 can suppress unevenness in the hair across scalp area 117.
[0103] The head model creation system 10 can create a bangs model by automatic processing after inputting an image, by setting a bangs area and a base area for growing the bangs from an image, calculating deformation parameters based on the information on the bangs area and the target area, and growing the hair roots in the target area based on the deformation parameters. In addition, by setting parameters through analysis based on the image and growing the hair, a model based on the shape of the bangs in the image can be created. In other words, it is possible to model bangs in various patterns without preparing various patterns in advance.
[0104] The head model creation system 10 specifies the positions of the hair roots by the head shape creation section 40. This makes it possible to suppress unevenness in the hair.
[0105] In addition, the predetermined rule is a function that generates a spiral. Therefore, points can be arranged all over the reference sphere model 600, and the hair roots of the head can be approximated.
[0106] The fluctuation component is calculated by multiplying a random function that generates random numbers by a coefficient that is less than half the distance between adjacent points along the spiral, which makes it possible to limit the fluctuation component and relocate the points to appropriate positions.
[0107] The center of the head is the intersection of a line extending from the space between the eyebrows to the back of the head and a line passing through the left and right ear helices of the head. By setting the center of the head in this way, the reference spherical model 600 can be positioned near the middle of the head.
[0108] The calculation unit 28 creates a parting for the head model using the parting creation unit 48. The parting creation unit 48 acquires information about the parting area, identifies a parting target area 630 from the parting area information, creates a dispersion line 634 along a parting 632, and identifies gaps 636 in the parting target area 630. The parting creation unit 48 moves the hair root position to the parting target area 630. Therefore, the hair roots can be appropriately positioned in the parting target area.
[0109] The calculation unit 28 creates a parting for the head model using the parting creation unit 48. The first placement unit 401 also obtains parting information from the parting creation unit 48, and places multiple points based on a predetermined rule and the parting information. Therefore, hair roots can be appropriately placed in the parting target area.
[0110] Although the embodiments of the present invention have been described above, the embodiments are not limited to the contents of these embodiments. The above-described components include those that can be easily imagined by a person skilled in the art, those that are substantially the same, and those that are within the so-called equivalent range. Furthermore, the above-described components can be appropriately combined, and the configurations of each embodiment can also be combined. Furthermore, various omissions, substitutions, or modifications of the components can be made without departing from the gist of the above-described embodiments. [Explanation of symbols]
[0111] 10 Head model creation system 12 Camera 14 Image storage device 20 Head model creation device 22 Image input processing section 24 Input section 26 Output section 28 Arithmetic section 30 Storage section 40 Head Shape Creation Section 42 Hair Parts Classification Section 44 Bangs Creation Department 46 Side Hair Creation Department 48 Parting Creation Section 49 Synthesis Section 50 Processing Program 52 Condition Table 102, 102a Images 104 Head 110 Hair area 112 Bangs area 114 First Side Hair Area 116 2nd Side Hair Area 118 Outline 300 faces 312 Nose base landmark 314 Base of the Columella Landmark 316 Eyeball First Edge Landmark 318 Eyeball second end landmark 320 Eyeball Top Landmark 330 Midline 340 1st straight line 342 Second straight line 344 3rd straight line 350 Temporary hairline 352 Final hairline 600 Reference Sphere Model 610,612,614 straight line 630 Parting area 632 Parting 634 dispersion line 636 Gap A,B,d distance C intersection D outer equinox E vertex M eyeball point P, Ph, Pm points Pd distribution position
Claims
1. an image input processing unit to which an image including a person's head is input; A head shape creation unit that analyzes the image, identifies the shape of the head, and identifies an area where the hair roots are located as a scalp area, The head shape creation unit includes a first arrangement unit that arranges a plurality of points on a spherical model for the head based on a predetermined rule; a second arrangement unit that rearranges the arranged points using fluctuation components that indicate a moving direction and a moving distance; a third placement unit that places the spherical model on the head; a projection unit that projects the rearranged points onto a position where a straight line from an origin of the spherical model passes through the rearranged points and intersects with a surface of the head; A specifying unit that specifies the position of the point projected onto the surface of the head as a hair root position. Head model creation device.
2. 2. A head model creating device according to claim 1, wherein the predetermined rule is a function for generating a spiral.
3. 3. The head model creating device according to claim 2, wherein the fluctuation component is calculated by multiplying a random function that generates random numbers by a coefficient that is less than half the distance between adjacent points along the spiral.
4. 3. The head model creating device according to claim 1, wherein the center of the head is an intersection point between a line extending from the space between the eyebrows to the back of the head and a line passing through the left and right ear helices of the head.
5. A division creating unit detects a division and identifies an area along the division as a division target area, 3. The head model creation device according to claim 1, wherein the parting creation section identifies a dispersion position of the parting in the parting target area, creates a dispersion line from the dispersion position, identifies gaps between the hair roots in the parting target area, and moves the hair root positions included around the gaps toward the dispersion line.
6. A division creating unit detects a division and identifies an area along the division as a division target area, 3. A head model creation device according to claim 1 or 2, wherein the first placement section acquires information processed by the parting creation section, and places a plurality of points on a spherical model for the head based on a predetermined rule and the information acquired from the parting creation section, while placing the plurality of points in the parting target area at intervals narrower than those determined by the predetermined rule.
7. an image input processing step in which an image including a person's head is input; A head shape creation step of analyzing the image, identifying a head shape, and identifying an area where hair roots are located as a scalp area, The head shape creation step includes a first arrangement step of arranging a plurality of points on a spherical model for the head based on a predetermined rule; a second arrangement step of rearranging the arranged points using fluctuation components indicating a moving direction and a moving distance; a third placement step of placing the spherical model on the head; a projection step of projecting the relocated points onto a position where a straight line from an origin of the spherical model passes through the relocated points and intersects with a surface of the head; and a step of identifying the position of the point projected onto the surface of the head as a hair root position. How to create a head model.
Citation Information
Patent Citations
Hair simulation method, and device therefor
JP2009020874A