WO2020183961A1 - 画像処理装置、および画像処理方法、並びにプログラム - Google Patents

画像処理装置、および画像処理方法、並びにプログラム Download PDF

Info

Publication number
WO2020183961A1
WO2020183961A1 PCT/JP2020/003361 JP2020003361W WO2020183961A1 WO 2020183961 A1 WO2020183961 A1 WO 2020183961A1 JP 2020003361 W JP2020003361 W JP 2020003361W WO 2020183961 A1 WO2020183961 A1 WO 2020183961A1
Authority
WO
WIPO (PCT)
Prior art keywords
texture
image
unit
dimensional
acquired
Prior art date
Application number
PCT/JP2020/003361
Other languages
English (en)
French (fr)
Inventor
浩平 宮本
Original Assignee
ソニー株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ソニー株式会社 filed Critical ソニー株式会社
Priority to US17/435,413 priority Critical patent/US11798227B2/en
Publication of WO2020183961A1 publication Critical patent/WO2020183961A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/04Texture mapping
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/40Analysis of texture
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/90Determination of colour characteristics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/60Type of objects
    • G06V20/64Three-dimensional objects
    • G06V20/647Three-dimensional objects by matching two-dimensional images to three-dimensional objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/161Detection; Localisation; Normalisation
    • G06V40/162Detection; Localisation; Normalisation using pixel segmentation or colour matching
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/08Indexing scheme for image data processing or generation, in general involving all processing steps from image acquisition to 3D model generation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10024Color image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20092Interactive image processing based on input by user

Definitions

  • the present disclosure relates to an image processing device, an image processing method, and a program. More specifically, the present invention relates to an image processing apparatus, an image processing system, and a program that execute a three-dimensional (3D) model generation process and a three-dimensional image rendering process.
  • 3D three-dimensional
  • Patent Document 1 Japanese Unexamined Patent Publication No. 2017-138913 discloses a process of replacing a CG character with an image having a face of a user who is a player.
  • a user's face image is photographed, the skin color region of the photographed face image is converted from RGB values to HSV (hue, saturation, brightness) values and analyzed, and the user's skin color obtained as a result of this analysis is obtained.
  • HSV hue, saturation, brightness
  • the device disclosed in this document does not adjust the skin to be converted in consideration of the texture of the skin, the resolution of the image to be replaced, the noise, and the like. Therefore, a feeling of strangeness remains in the combined image.
  • the present disclosure has been made in view of the above-mentioned problems, for example, and is an image processing device that executes a three-dimensional (3D) model generation process having a more natural reality, that is, a three-dimensional image rendering process, and an image. It provides a processing method and a program.
  • a three-dimensional (3D) model generation process having a more natural reality, that is, a three-dimensional image rendering process, and an image. It provides a processing method and a program.
  • the configuration of one embodiment of the present disclosure is more natural even for a hidden region (occlusion region) not included in the two-dimensional image in a configuration for generating a three-dimensional model (three-dimensional image) based on, for example, a two-dimensional image. It provides an image processing apparatus capable of generating a three-dimensional image having realistic colors and textures, an image processing method, and a program.
  • the first aspect of the disclosure is A 3D shape restoration unit that inputs a 2D image and generates a 3D model corresponding to the input image, It has a texture processing unit that gives a texture to the 3D model generated by the 3D shape restoration unit.
  • the texture processing unit The process of acquiring an existing texture similar to the acquired texture acquired from the two-dimensional image from the texture database, and A conversion function calculation process that brings the color of the existing texture closer to the color of the acquired texture,
  • there is an image processing device that executes a process of setting a texture calculated by applying the conversion function to the existing texture in a texture unset area where a texture cannot be obtained from the two-dimensional image.
  • the second aspect of the present disclosure is This is an image processing method executed in an image processing device.
  • a 3D shape restoration process execution step in which the 3D shape restoration unit inputs a 2D image and generates a 3D model corresponding to the input image.
  • the texture processing unit has a texture addition processing execution step for imparting a texture to the three-dimensional model generated by the three-dimensional shape restoration unit.
  • the texture addition processing execution step The process of acquiring an existing texture similar to the acquired texture acquired from the two-dimensional image from the texture database, and A conversion function calculation process that brings the color of the existing texture closer to the color of the acquired texture,
  • the three-dimensional model there is an image processing method for executing a process of setting a texture calculated by applying the conversion function to the existing texture in a texture unset area where a texture cannot be obtained from the two-dimensional image.
  • the third aspect of the present disclosure is A program that executes image processing in an image processing device.
  • a 3D shape restoration process execution step in which a 2D image is input to the 3D shape restoration unit and a 3D model corresponding to the input image is generated.
  • the texture processing unit is made to execute a texture addition processing execution step for imparting a texture to the three-dimensional model generated by the three-dimensional shape restoration unit.
  • the texture addition processing execution step The process of acquiring an existing texture similar to the acquired texture acquired from the two-dimensional image from the texture database, and A conversion function calculation process that brings the color of the existing texture closer to the color of the acquired texture,
  • the three-dimensional model there is a program that executes a process of setting a texture calculated by applying the conversion function to the existing texture in a texture unset area where a texture cannot be obtained from the two-dimensional image.
  • the program of the present disclosure is, for example, a program that can be provided by a storage medium or a communication medium that is provided in a computer-readable format to an image processing device or a computer system that can execute various program codes.
  • a program that can be provided by a storage medium or a communication medium that is provided in a computer-readable format to an image processing device or a computer system that can execute various program codes.
  • system is a logical set configuration of a plurality of devices, and the devices having each configuration are not limited to those in the same housing.
  • a device and a method for generating a three-dimensional model in which a more natural texture is set in an occlusion region where a texture cannot be obtained from a two-dimensional image are realized.
  • it has a three-dimensional shape restoration unit that generates a three-dimensional model based on a two-dimensional image, and a texture processing unit that imparts a texture to the three-dimensional model.
  • the texture processing unit acquires an existing texture similar to the acquired texture from the 2D image from the DB, calculates a conversion function that brings the color of the existing texture closer to the color of the acquired texture, and is an area where the texture cannot be obtained from the 2D image. Set the texture calculated by applying the conversion function to the existing texture.
  • a texture calculated by applying a conversion function is set in an occlusion region where a texture cannot be obtained from a two-dimensional image.
  • a device and a method for generating a three-dimensional model in which a more natural texture is set in an occlusion region where a texture cannot be obtained from a two-dimensional image are realized. It should be noted that the effects described in the present specification are merely exemplary and not limited, and may have additional effects.
  • the image processing apparatus of the present disclosure generates a three-dimensional (3D) model with a more natural reality, that is, a three-dimensional image. For example, when a three-dimensional model (three-dimensional image) is generated based on one two-dimensional image, it is necessary to process a hidden area (occlusion area) that is not included in the two-dimensional image.
  • a three-dimensional model three-dimensional image
  • occlusion area hidden area
  • the "3D shape” and “texture” of the left half of the face can be obtained directly from the original 2D image. It can.
  • information cannot be obtained for the face area on the right half that is not included in the 2D image, it is necessary to predict and restore the "three-dimensional shape” and "texture” on the right half of the face by some method. There is.
  • an existing three-dimensional model (Primor model) is used as a three-dimensional shape restoration process of a hidden region (occlusion region) not included in such a two-dimensional image.
  • a 3D model of a face is generated from a 2D image of a human face
  • features similar to the 2D image are obtained from various 3D models of the face (existing model (Primor model)) stored in the database in advance.
  • the existing 3D model to have is selected, the selected existing 3D model is deformed, and the 3D shape of the occlusion region not included in the 2D image is restored.
  • the Fill Hole technique may be used as the restoration process for the three-dimensional shape of the occlusion region.
  • the Fill Hole technique is a technique for filling the three-dimensional shape of the information-missing mesh based on the information of the surrounding mesh of the mesh lacking information.
  • the existing texture data having characteristics similar to the two-dimensional image is obtained from various texture data (existing texture data) stored in the database in advance. Select and use the selected existing texture data.
  • a correction process is performed to analyze the characteristics (color, texture, etc.) of the original two-dimensional image and bring the existing texture data closer to the characteristics (color, texture, etc.) of the two-dimensional image.
  • a method of utilizing the Inpinting technique which is an image restoration technique by embedding an image, may be applied.
  • the 3D model (existing model (Primor model)) used for the above-mentioned 3D shape restoration processing is used as a 3D model (existing model (Prior model)) including various texture data, and this 3D model (existing model). (Primor model)) may be used to perform a process of restoring both the three-dimensional shape and the texture information.
  • the image processing apparatus of the present disclosure performs a process of generating a three-dimensional model from a two-dimensional image
  • the following process is performed as a process of restoring the texture of a hidden region (occlusion region) not included in the two-dimensional image.
  • a part of the texture is cut out from the input 2D image or the texture map generated based on the 2D image, and a texture map (UV texture map) corresponding to the 3D model having a similar existing texture is obtained from the texture database.
  • select. B
  • the selected texture map (UV texture map) corresponding to the 3D model is subjected to signal processing such as color conversion, noise addition processing, and resolution conversion processing, and is not included in the 2D image.
  • signal processing such as color conversion, noise addition processing, and resolution conversion processing
  • FIG. 1 is a block diagram showing a configuration of the image processing device 100 of the present disclosure.
  • the image processing apparatus 100 of the present disclosure generates a three-dimensional model by using various three-dimensional models (existing three-dimensional model (Primor model)) stored in the database in advance, and creates a three-dimensional image. Is rendered and displayed on the display unit.
  • three-dimensional models existing three-dimensional model (Primor model)
  • the database stores various existing 3D models such as human faces, human bodies, animals, plants, structures, and buildings.
  • the image processing apparatus 100 of the present disclosure can generate a new three-dimensional model of various objects by referring to these existing three-dimensional models stored in a database.
  • a three-dimensional model of a human face is generated will be described as an example.
  • the imaging unit 20 shown in FIG. 1 captures an image (two-dimensional image) and a distance image (depth image) of the face of the subject 10.
  • the subject 10 is a subject for which a three-dimensional model is generated.
  • the subject 10 is a human face.
  • the imaging unit 20 captures at least one or more color images, for example, an RGB image or a distance image (depth image), and inputs the images to the image processing apparatus 100.
  • the input data analysis and conversion unit 111 of the image processing device 100 analyzes and converts the image data input from the image pickup unit 20. For example, when an RGB color image is input, it is converted into a format such as bitmap data. Further, when a distance image (depth image) is input, processing such as conversion to 16-bit Tiff format data is performed.
  • the mode of data conversion may be any data format that can be processed by each subsequent processing unit, and differs depending on the configuration of the subsequent processing unit.
  • conversion data generated by the conversion unit 111 (for example, an RGB image and a depth image) is input to the object recognition unit 112.
  • the object recognition unit 112 analyzes an RGB image or a depth image, determines the object type of the subject (object), and the existing three-dimensional model (existing three-dimensional model (Priority model)) corresponding to the determined object type is three. Determine if it exists in the dimensional model database 130.
  • the three-dimensional model database 130 may be a database inside the image processing device 100, or may use, for example, a database accessible via the Internet or the like.
  • the object type determination process in the object recognition unit 112 can be omitted.
  • various existing methods such as pattern matching can be applied.
  • An object type determination result as an object recognition result executed by the object recognition unit 112, for example, Recognition object type human face This result is input to the three-dimensional shape restoration unit 113 together with the conversion data (for example, RGB image and depth image) generated by the conversion unit 111.
  • the 3D shape restoration unit 113 uses the existing 3D model (Prior model) of the human face acquired from the 3D model database 130 to transform the existing 3D model and input data (RGB image and depth). A three-dimensional shape correction process that brings the image closer to the image) is performed to generate a new three-dimensional model corresponding to the subject 10 photographed by the imaging unit 20.
  • the three-dimensional shape restoration unit 113 first expresses the data acquired from the depth image as point cloud data on three-dimensional coordinates (a point cloud ( Point Cloud) is generated.
  • the generated point cloud (Point Cloud) and the existing 3D model (Prior model) of the human face acquired from the 3D model database 130 are aligned and the correspondence between the vertices is taken. For example, processing is performed in which items having a short distance are paired with corresponding points. After that, the existing three-dimensional model (Prior model) is deformed so as to reduce the error between all the corresponding points.
  • the three-dimensional shape restoration unit 113 inputs one RGB image 201 and a depth image 202 as captured images of the subject 10.
  • the RGB image 201 is a color image.
  • step S01 the three-dimensional shape restoration unit 113 generates a point cloud 203 in which the data acquired from the depth image 202 is expressed as point cloud data on the three-dimensional coordinates.
  • step S02 the 3D shape restoration unit 113 selects and acquires an existing 3D model (Prior model) that matches the object type identified by the object recognition unit 112 from the 3D model database 130.
  • the existing three-dimensional model (Prior model) 211 of the human face shown in FIG. 2 is selected.
  • step S03 the three-dimensional shape restoration unit 113 uses the point cloud 203 generated in step S01 and the existing three-dimensional model (prior model) 211 of the human face acquired from the three-dimensional model database 130. Align with and take the correspondence between the vertices. For example, processing is performed in which items having a short distance are paired with corresponding points.
  • step S04 the existing 3D model (Prior model) 211 is deformed so as to reduce the error between all the corresponding points, and the restored 3D model 220 is generated. ..
  • the restored three-dimensional model 220 is a three-dimensional model that reflects the face image of the subject 10 and is closer to the subject 10.
  • the restored 3D model 220 is a new 3D model corresponding to the subject 10 in which the 3D shape including a hidden area (occlusion area) not included in the 2D image captured by the imaging unit 20 is restored.
  • the three-dimensional shape restoration unit 113 of the image processing device 100 of FIG. 1 executes the processing described with reference to FIGS. 2 and 3, and reflects the face image of the subject 10, and the restoration three-dimensional model 220 closer to the subject 10. To generate.
  • the restored 3D model 220 generated by the 3D shape restoration unit 113 is input to the texture projection unit 114.
  • the conversion data (for example, RGB image) generated by the conversion unit 111 is also input to the texture projection unit 114.
  • the texture projection unit 114 to the color composition unit 120 correspond to a texture processing unit that executes a texture imparting process on the restored three-dimensional model 220 generated by the three-dimensional shape restoration unit 113.
  • a texture with natural reality is given even to the occlusion region which is not included in the two-dimensional image which is the input image.
  • the 3D model is completed.
  • the texture projection unit 114 projects a texture based on the conversion data (for example, RGB image) generated by the conversion unit 111 on the model restored by the three-dimensional shape restoration unit 113, that is, the restored three-dimensional model 220 shown in FIG. Perform processing. That is, a texture projection process is performed in which an image of each region of the two-dimensional image obtained by photographing the subject 10 is pasted on the corresponding region of the restored three-dimensional model 220.
  • the conversion data for example, RGB image
  • the two-dimensional image of the subject 10 has only the texture information of a part of the restored three-dimensional model 220. That is, the hidden area (occlusion area) not included in the two-dimensional image is masked and the texture is not projected.
  • the user can specify the masking method such as setting the mask area. For example, when projecting a face image, various settings can be made for the hair region, such as setting not to perform texture projection even if there is texture information in the two-dimensional image.
  • a method of generating a three-dimensional model in which the texture is directly projected onto the three-dimensional model can also be applied, but in many cases, two three-dimensional models are used to improve the processing efficiency. It is executed using the three-dimensionally expanded data, so-called UV expanded data.
  • the data in which the texture information is pasted on the UV development data is called a UV texture map.
  • FIG. 4 (1) is an example of a UV texture map in which texture information is set for the entire area of the three-dimensional model. One point on the UV texture map corresponds to one point on the 3D model.
  • FIG. 4 (2) is an unfinished UV texture map corresponding to an input image (two-dimensional image), and is an example of a UV texture map in which texture information is set only in a substantially front region of the face.
  • it corresponds to an example of a UV texture map that can be generated by using the RGB image 201 obtained by photographing the subject 10 from the front.
  • the black part corresponds to an occlusion area or the like, and is an area where texture information cannot be obtained from the two-dimensional image.
  • the hair area is an area in which texture information is not projected by mask processing set by the user.
  • the UV texture map subjected to the texture projection process that is, the unfinished UV texture map corresponding to the input image (two-dimensional image) shown in FIG. 4 (2) (UV texture map having texture information only in a part area). ) Is input to the texture acquisition unit 115.
  • the UV texture map input to the texture acquisition unit 115 is a three-dimensional model having texture information (image information such as color and pattern) only partially. That is, texture information is not set in a hidden area (occlusion area) that is not included in the two-dimensional image, a mask area that the user did not target for texture projection, and the like.
  • the texture acquisition unit 115 is a processing unit in which the texture projection unit 114 acquires texture information from the input image-compatible unfinished UV texture map 240 generated by using the captured image (two-dimensional image) of the subject 10.
  • a part of the texture-set area is selected as the texture acquisition area from the input image-corresponding unfinished UV texture map 240, and the texture (image) of this texture acquisition area is acquired.
  • the acquisition texture (image) 241 shown in FIG. 5 is acquired.
  • the texture acquisition area can be determined by various methods such as a method of setting the area to be predetermined for each object or a method of setting the area to be specified by the user. When the method of setting a predetermined area for each object is applied, there is a possibility that the texture is not set in the area or the texture cannot be analyzed. In such a case, another area in which the texture that can be analyzed is set is set as a texture acquisition alternative area, and the texture is acquired from this alternative area.
  • the acquired texture (image) 241 acquired by the texture acquisition unit 115 from the unfinished UV texture map 240 corresponding to the input image is input to the texture analysis unit 116.
  • the texture analysis unit 116 executes the analysis process of the acquired texture (image) 241 acquired by the texture acquisition unit 115. Specifically, image analysis of color, pattern, brightness, texture, etc. is performed. Further, it is preferable to also execute the analysis process according to the object type. For example, in the case of a human face, the texture of the skin is analyzed.
  • the texture analysis unit 116 can analyze the texture by using the means specified by the user. For example, when performing a process of generating a three-dimensional model of a face, it is effective to execute an analysis of the texture of the skin as an analysis process.
  • the texture analysis data (auxiliary information) generated by the texture analysis unit 116 is input to the texture DB search unit 117 together with the acquired texture (image) 241 acquired by the texture acquisition unit 115.
  • the texture DB search unit 117 is an existing texture most similar to the acquired texture 241 from the texture database 140 based on the acquired texture 241 acquired by the texture acquisition unit 115 and the texture analysis data (auxiliary information) generated by the texture analysis unit 116. Get the texture.
  • Texture data having various features is stored in the texture database 140.
  • a specific example of the data stored in the texture database 140 will be described with reference to FIG. As shown in FIG. 6, the texture database 140 stores various different UV texture maps. These UV texture maps are color data.
  • the UV texture map is data obtained by developing a three-dimensional model with a texture in two dimensions, and one point of the UV texture map corresponds to one point of the three-dimensional model. That is, the UV texture map is a map having texture information (pixel values (color information such as RGB values)) of all points of the three-dimensional model.
  • the texture database 140 may be a database inside the image processing device 100, or may use, for example, a database accessible via the Internet or the like.
  • the three-dimensional model database 130 and the texture database 140 are shown as separate databases, but these databases can also be configured as one database. That is, one database in which the three-dimensional model having the texture information is stored can be used as the three-dimensional model database 130 and the texture database 140.
  • the texture DB search unit 117 uses the texture acquisition unit 115 to acquire the acquired texture 241 acquired from the input image-compatible unfinished UV texture map 240 and the texture analysis data (auxiliary information) generated by the texture analysis unit 116. Based on this, the existing similar texture data most similar to the acquired texture 241 is acquired from the texture database 140. An example of a similar existing texture search process will be described with reference to FIG. 7.
  • the texture DB search unit 117 acquires the texture of the image position corresponding to the acquisition position of the acquisition texture 241 acquired by the texture acquisition unit 115 from each of the UV texture maps stored in the texture database 140. And compare each one. This comparison process is performed to select the UV texture map with the texture most similar to the acquired texture 241. Select the UV texture map with the texture that has the closest component by comparing it with the auxiliary information (analysis results such as skin texture).
  • the UV texture map 005 stored in the texture database 140 is selected as the UV texture map having the texture most similar to the acquired texture 241.
  • the texture database search unit 117 has a structure in which the texture database 140 records not only the UV texture map but also the attribute information (information such as color characteristics, brightness, texture, and texture of the skin) of each UV texture map. , It may be configured to select a similar texture based on these attribute information.
  • An existing UV texture map containing similar textures selected from the texture database 140 is input to the color converter 118.
  • the process executed by the color conversion unit 118 will be described with reference to FIG. First, the color conversion unit 118 calculates a color conversion function that converts the existing similar texture 251 of the existing similar UV texture map 250 selected from the texture database 140 into the color of the acquired texture (image) 241.
  • the existing similar texture 251 is a texture acquired in the similar texture search process in the texture DB search unit 117. That is, it is the texture (texture of the cheek region) of the existing similar UV texture map 250 at substantially the same position as the acquisition position (cheek region) of the acquisition texture 241 acquired by the texture acquisition unit 115.
  • the color conversion unit 118 calculates a color conversion function that converts the existing similar texture 242 into the color of the acquired texture 241 acquired from the input image-corresponding unfinished UV texture map 240.
  • the color conversion function is, for example, a color conversion matrix as shown in FIG.
  • As the color conversion matrix for example, a matrix that converts each value defined in the RGB color space, the HSV color space, and the Lab color space can be applied.
  • the color conversion unit 118 multiplies the color value of each pixel of the existing similar texture 242 shown in FIG. 8, for example, the Lab value of each pixel by the 3 ⁇ 3 color conversion matrix shown in the figure to obtain the color value of the acquired texture 241. Calculate the outputable color conversion function (for example, color conversion matrix).
  • the color conversion unit 118 applies the obtained color conversion function (for example, a color conversion matrix) to execute the texture setting process for the region in which the texture is not set in the input image-compatible unfinished UV texture map 240. ..
  • the obtained color conversion function for example, a color conversion matrix
  • the unfinished UV texture map 240 corresponding to the input image shown in FIG. 9 is a texture map generated based on the input image (two-dimensional image), and a texture is added only to a part of the texture map to the two-dimensional image which is a captured image. It is an unfinished texture map in which no texture is set in the occlusion area, which is a hidden area that is not included.
  • the finished UV corresponding to the input image in which the texture is finally set in all areas By adding the unfinished UV texture map 240 corresponding to the input image and the texture map generated by the calculation formula below Filter shown in FIG. 9, the finished UV corresponding to the input image in which the texture is finally set in all areas. Generate a texture map 280.
  • the color synthesizing unit 120 executes an addition process of adding the unfinished UV texture map 240 corresponding to the input image and the texture map generated by the calculation formula below Filter.
  • the color conversion unit 118 and the signal processing unit 119 multiply the pixel value of each pixel of the existing similar UV texture map 250 selected from the texture database 140 by the color conversion matrix described above with reference to FIG. 8, and the multiplication result is obtained. Is filtered, and the mask 271 is further multiplied.
  • This formula that is, Filter ((existing similar UV texture map 250) x (color conversion matrix)) x (mask)
  • Filter ((existing similar UV texture map 250) x (color conversion matrix)) x (mask)
  • a texture map in which a texture is set is generated only in the texture unset area of the completed UV texture map 280 corresponding to the input image.
  • the texture to be set is a texture having a color obtained by converting the color of the texture of the existing similar UV texture map 250 by a color conversion matrix. That is, the texture is subjected to a color conversion process that is close to the color of the texture of the completed UV texture map 280 corresponding to the input image.
  • the color conversion unit 118 and the signal processing unit 119 apply the obtained color conversion function (for example, a color conversion matrix) to the region in which the texture is not set in the input image-compatible unfinished UV texture map 240. Execute the texture setting process.
  • the obtained color conversion function for example, a color conversion matrix
  • the processing of the signal processing unit 119 that executes the processing corresponding to the arithmetic expression [Filter] shown in FIG. 9 will be described.
  • [Filter] means a filtering process.
  • the signal processing unit 119 (A) Original texture area in the unfinished UV texture map 240 for input images, (B) A texture area newly added by the color conversion process of the existing similar UV texture map 250, Signal processing is performed to reduce the difference between these two texture regions.
  • the texture region of (b) above that is, (B)
  • Signal processing such as resolution conversion processing, blurring processing, and sharpness processing for the texture area newly added by the color conversion processing of the existing similar UV texture map 250 is executed to obtain the texture area of (b) and the above.
  • Area (a) that is, (A) Texture area originally in the unfinished UV texture map 240 for input images, Reduce the difference from this area.
  • the signal processing unit 119 has the resolution and noise level of the texture area newly added by the color conversion processing of the existing similar UV texture map 250 and the texture area originally existing in the input image compatible unfinished UV texture map 240.
  • the pixel value correction process (filtering process) of the texture area newly added by the color conversion process of the existing similar UV texture map 250 is executed so as to match them.
  • the color synthesis unit 120 (A) Input image compatible unfinished UV texture map 240 and (B) A UV texture map newly generated by color conversion processing and signal processing of an existing similar UV texture map 250, The process of synthesizing (adding) these two texture maps is executed.
  • the completed UV texture map 280 corresponding to the input image in which the texture is set in all the areas is generated.
  • the color synthesizing unit 120 performs ⁇ -blending (pixel values of two nearby pixels as a coefficient ( ⁇ value)) as a correction process of pixel values near the boundary in order to reduce discomfort at the boundary portion between the two texture regions at the time of synthesizing. It is preferable to carry out the process of synthesizing by applying.
  • the color conversion unit 118, the signal processing unit 119, and the color composition unit 120 perform processing according to the calculation formula shown in FIG. 9, and finally the input image compatible completed UV in which textures are set in all areas.
  • Generate a texture map 280. That is, (Unfinished UV texture map 240 for input image) + Filter ((existing similar UV texture map 250) x (color conversion matrix)) x (mask) input image compatible completed UV texture map 280 ... (Equation 1)
  • the color conversion unit 118, the signal processing unit 119, and the color composition unit 120 execute processing according to the above calculation formula (Equation 1) to generate an input image-compatible completed UV texture map 280 in which textures are set in all areas. Generate.
  • the completed UV texture map 280 corresponding to the input image in which the texture is set in all areas is converted into a three-dimensional model (three-dimensional image) by the three-dimensional model output unit 121 and displayed on the display unit 30.
  • the three-dimensional model generated here is the restored three-dimensional model 220 generated by the deformation processing of the existing three-dimensional model generated by the three-dimensional shape restoration unit 113 described above with reference to FIGS. 2 and 3. It is a model having a three-dimensional shape, and is a three-dimensional model (three-dimensional image) in which a texture corresponding to the completed UV texture map 280 corresponding to the input image described with reference to FIG. 9 is set in this three-dimensional model.
  • a three-dimensional model having a texture generated by applying the configuration of the image processing apparatus 100 shown in FIG. 1 and its UV texture map are newly added to the three-dimensional model database 130 and the texture database 140. It may be stored as registration data.
  • the flowchart shown in FIG. 11 is a flowchart illustrating a sequence of processes executed by the image processing apparatus 100 of the present disclosure.
  • the processing according to the flowchart shown in FIG. 11 is performed under the control of a data processing unit including a controller including a CPU having a program execution function according to a program stored in the storage unit of the image processing device 100, for example. Will be executed.
  • the processing of each step of the flow shown in FIG. 11 will be sequentially described.
  • Step S101 First, in step S101, the image processing device 100 inputs image data, which is data that is a three-dimensional model generation source, and executes a process of converting the data into data that can be processed by the subsequent processing unit. For example, image data such as a two-dimensional image and a depth image is input to perform data conversion.
  • image data such as a two-dimensional image and a depth image is input to perform data conversion.
  • This process is a process executed by the input data analysis and conversion unit 111 of the image processing apparatus 100 shown in FIG.
  • the input data analysis and conversion unit 111 analyzes and converts the image data input from the imaging unit 20. For example, when an RGB color image is input, it is converted into a format such as bitmap data. Further, when a distance image (depth image) is input, processing such as conversion to 16-bit Tiff format data is performed.
  • the mode of data conversion may be any data format that can be processed by each subsequent processing unit, and differs depending on the configuration of the subsequent processing unit.
  • Step S102 the image processing apparatus 100 executes the object identification process based on the input image in step S102. That is, the type of the object is determined.
  • This process is a process executed by the object recognition unit 112 of the image processing device 100 shown in FIG.
  • the object recognition unit 112 analyzes an RGB image or a depth image to determine the object type of the subject (object).
  • Step S103 the image processing apparatus 100 determines whether or not the identified three-dimensional model corresponding to the object type is stored in the three-dimensional model database 130.
  • This process is also a process executed by the object recognition unit 112 of the image processing device 100 shown in FIG.
  • the object recognition unit 112 determines whether or not an existing 3D model (existing 3D model (Prior model)) corresponding to the object type determined in step S102 exists in the 3D model database 130. If it is stored in the database, the process proceeds to step S104. On the other hand, if it is not stored in the database, the processing of this disclosure cannot be performed, so the processing is terminated.
  • Step S104 The processing after step S104 is executed when it is determined that the existing three-dimensional model (existing three-dimensional model (Prior model)) corresponding to the object type determined in step S102 exists in the three-dimensional model database 130.
  • step S104 the image processing apparatus 100 acquires the existing 3D model from the 3D model database 130, aligns the point cloud generated based on the input image with the existing 3D model, and performs deformation processing. A restored 3D model that reflects the 3D shape of the input image is generated.
  • This process is a process executed by the three-dimensional shape restoration unit 113 of the image processing device 100 shown in FIG.
  • the three-dimensional shape restoration unit 113 executes the process described above with reference to FIGS. 2 and 3. That is, first, a point cloud (Point Cloud) expressed as point cloud data on three-dimensional coordinates is generated based on the depth image.
  • Point Cloud Point Cloud
  • an existing 3D model (Prior model) that matches the object type identified by the object recognition unit 112 is selected from the 3D model database 130.
  • alignment and correspondence point pair setting are performed between the generated point cloud (Point Cloud) and the existing 3D model (Prior model) of the human face acquired from the 3D model database 130.
  • the existing three-dimensional model (Prior model) is deformed so as to reduce the error between all the corresponding points, and the restored three-dimensional model 220 is generated.
  • the restored three-dimensional model 220 is a three-dimensional model that reflects the face image of the subject 10 and is closer to the subject 10.
  • step S105 the image processing device 100 projects the texture acquired from the input image data onto the UV development data corresponding to the restored three-dimensional model to generate an unfinished UV texture map corresponding to the input image.
  • This process is a process executed by the texture projection unit 114 of the image processing device 100 shown in FIG.
  • the texture projection unit 114 projects a texture based on the conversion data (for example, RGB image) generated by the conversion unit 111 on the model restored by the three-dimensional shape restoration unit 113, that is, the restored three-dimensional model 220 shown in FIG. Perform processing. That is, a texture projection process is performed in which an image of each region of the two-dimensional image obtained by photographing the subject 10 is pasted on the corresponding region of the restored three-dimensional model 220.
  • the two-dimensional image of the subject 10 has only the texture information of a part of the restored three-dimensional model 220. That is, the hidden area (occlusion area) not included in the two-dimensional image is masked and the texture is not projected.
  • the user can specify the masking method such as setting the mask area. For example, when projecting a face image, various settings can be made for the hair region, such as setting not to perform texture projection even if there is texture information in the two-dimensional image.
  • a method of generating a three-dimensional model in which the texture is directly projected onto the three-dimensional model can also be applied, but in many cases, two three-dimensional models are used to improve the processing efficiency. It is executed using the three-dimensionally expanded data, so-called UV expanded data.
  • the data in which the texture information is pasted on the UV development data is called a UV texture map.
  • the unfinished UV texture map corresponding to the input image shown in FIG. 4 (2) is generated.
  • Step S106 the image processing device 100 acquires a texture from the texture acquisition area selected from the input image-corresponding unfinished UV texture map.
  • This process is a process executed by the texture acquisition unit 115 of the image processing device 100 shown in FIG.
  • the texture acquisition unit 115 acquires texture information from the input image-compatible unfinished UV texture map 240 generated by the texture projection unit 114 using the captured image (two-dimensional image) of the subject 10.
  • the acquired texture (image) 241 is acquired from a part of the area where the texture is set from the input image-compatible unfinished UV texture map 240.
  • step S107 the image processing apparatus 100 collates the acquired texture with the existing textures of the plurality of UV texture maps stored in the texture DB 140, and obtains an existing similar UV texture map having the texture with the highest degree of similarity. select.
  • This process is a process executed by the texture DB search unit 117 of the image processing device 100 shown in FIG.
  • the texture DB search unit 117 is an existing texture most similar to the acquired texture 241 from the texture database 140 based on the acquired texture 241 acquired by the texture acquisition unit 115 and the texture analysis data (auxiliary information) generated by the texture analysis unit 116. Get the texture.
  • the texture DB search unit 117 stores the texture of the image position corresponding to the acquisition position of the acquisition texture 241 acquired by the texture acquisition unit 115 in the texture database 140. Get from each of the texture maps and compare each one. This comparison process is performed to select the UV texture map with the texture most similar to the acquired texture 241. Select the UV texture map with the texture that has the closest component by comparing it with the auxiliary information (analysis results such as skin texture).
  • Step S108 the image processing apparatus 100 calculates a color conversion matrix that converts the texture of the selected existing similar UV texture map into the acquired texture.
  • This process is a process executed by the color conversion unit 118 of the image processing apparatus 100 shown in FIG.
  • the color conversion unit 118 calculates a color conversion function that converts the existing similar texture 242 into the color of the acquired texture 241 acquired from the input image-corresponding unfinished UV texture map 240.
  • the color conversion function is, for example, a color conversion matrix as shown in FIG.
  • As the color conversion matrix for example, a matrix that converts each value defined in the RGB color space, the HSV color space, and the Lab color space can be applied.
  • step S109 the image processing apparatus 100 applies the color conversion matrix to the existing similar UV texture map to calculate the texture of the texture unset region of the input image-compatible unfinished UV texture map.
  • This process is also a process executed by the color conversion unit 118 of the image processing apparatus 100 shown in FIG.
  • the color conversion unit 118 applies the color conversion function (for example, the color conversion matrix) obtained in step S108 to set the texture for the unfinished UV texture map 240 corresponding to the input image shown in FIG. Execute the process.
  • the color conversion function for example, the color conversion matrix
  • This process is the process described above with reference to FIG. 9, that is, the arithmetic expression below Filter in the arithmetic expression shown in FIG. 9, that is, Filter ((existing similar UV texture map 250) x (color conversion matrix)) x (mask) This is a process corresponding to this arithmetic expression.
  • the color conversion unit 118 multiplies the pixel value of each pixel of the existing similar UV texture map 250 selected from the texture database 140 by the color conversion matrix described above with reference to FIG. 8, and further obtains the filtering result. And multiply by the mask 271.
  • This formula that is, Filter ((existing similar UV texture map 250) x (color conversion matrix)) x (mask)
  • Filter ((existing similar UV texture map 250) x (color conversion matrix)) x (mask)
  • a texture map in which a texture is set is generated only in the texture unset area of the completed UV texture map 280 corresponding to the input image.
  • the texture to be set is a texture having a color obtained by converting the color of the texture of the existing similar UV texture map 250 by a color conversion matrix. That is, the texture is subjected to a color conversion process that is close to the color of the texture of the completed UV texture map 280 corresponding to the input image.
  • step S110 the image processing apparatus 100 executes signal processing on the texture region calculated by applying the color conversion matrix, synthesizes the texture map after the signal processing and the unfinished UV texture map corresponding to the input image. , Generates a completed UV texture map for input images.
  • This process is a process executed by the signal processing unit 119 and the color synthesis unit 120 of the image processing apparatus 100 shown in FIG.
  • the signal processing unit 119 executes a process corresponding to the arithmetic expression [Filter] shown in FIG.
  • the color synthesizing unit 120 executes the addition process in the calculation formula shown in FIG.
  • the signal processing unit 119 (A) Original texture area in the unfinished UV texture map 240 for input images, (B) A texture area newly added by the color conversion process of the existing similar UV texture map 250, Signal processing is performed to reduce the difference between these two texture regions.
  • the texture region of (b) above that is, (B)
  • Signal processing such as resolution conversion processing, blurring processing, and sharpness processing for the texture area newly added by the color conversion processing of the existing similar UV texture map 250 is executed to obtain the texture area of (b) above.
  • the area (a) above that is, (A) Texture area originally in the unfinished UV texture map 240 for input images, Signal processing is performed to reduce the difference from this region.
  • the color synthesizing unit 120 (A) Input image compatible unfinished UV texture map 240 and (B) A UV texture map newly generated by color conversion processing and signal processing of an existing similar UV texture map 250, The process of synthesizing (adding) these two texture maps is executed. By this addition process, a completed UV texture map 280 corresponding to the input image in which textures are finally set in all areas is generated.
  • the completed UV texture map 280 corresponding to the input image in which the texture is set in all areas is converted into a three-dimensional model (three-dimensional image) by the three-dimensional model output unit 121 and displayed on the display unit 30.
  • the three-dimensional model generated here is the restored three-dimensional model 220 generated by the deformation processing of the existing three-dimensional model generated by the three-dimensional shape restoration unit 113 described above with reference to FIGS. 2 and 3. It is a model having a three-dimensional shape, and is a three-dimensional model (three-dimensional image) in which a texture corresponding to the completed UV texture map 280 corresponding to the input image described with reference to FIG. 9 is set in this three-dimensional model.
  • the processing of the present disclosure is not limited to the human face, but an existing three-dimensional model or existing texture data can be used. If so, it is possible to process any object.
  • three-dimensional models of various objects such as human faces, human bodies, animals, plants, structures, and buildings can be used for generation processing.
  • the image processing device of the present disclosure can be specifically configured by an information processing device such as a PC (Personal Computer).
  • PC Personal Computer
  • the image processing device 300 includes a controller 301, a ROM (Read Only Memory) 302, a RAM (Random Access Memory) 303, an input / output interface 305, and a bus 304 connecting these to each other.
  • ROM Read Only Memory
  • RAM Random Access Memory
  • the controller 301 appropriately accesses the RAM 303 and the like as necessary, and comprehensively controls each block of the image processing device 300 while performing various arithmetic processes.
  • the controller 301 may be a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), or the like.
  • the ROM 302 is a non-volatile memory in which firmware such as an OS, a program, and various parameters to be executed by the controller 301 is fixedly stored.
  • the RAM 303 is used as a work area of the controller 301, etc., and temporarily holds the OS, various applications being executed, and various data being processed.
  • An input unit 306, an output unit 307, a storage unit 308, a communication unit 309, a drive 310 to which the removable media 311 can be mounted, and the like are connected to the input / output interface 305.
  • the input / output interface 105 may be configured to be connectable to an external peripheral device via a USB (Universal Serial Bus) terminal, an IEEE terminal, or the like.
  • USB Universal Serial Bus
  • the input unit 306 is, for example, an input unit capable of inputting a captured image of the imaging unit 20 shown in FIG. 1 and further inputting user operation information and the like.
  • the input unit 306 may have an imaging unit.
  • the input unit 306 also includes a pointing device such as a mouse, a keyboard, a touch panel, and other input devices.
  • the output unit 307 outputs data to the display unit 30 shown in FIG.
  • the output unit 307 may have a display unit.
  • the storage unit 308 is a non-volatile memory such as an HDD (Hard Disk Drive), a flash memory (SSD; Solid State Drive), or other solid-state memory.
  • the storage unit 308 stores the OS, various applications, and various data.
  • the storage unit 308 is also used as a storage area for input images, image information, generated output image groups, and the like.
  • the communication unit 309 is, for example, a NIC (Network Interface Card) for Ethernet (registered trademark), and is responsible for communication processing via a network.
  • NIC Network Interface Card
  • Ethernet registered trademark
  • the drive 310 is used for data recording and reproduction processing using the removable media 311.
  • the removable media 311 is composed of, for example, a BD, a DVD, a CD, an HDD, a flash memory, or the like.
  • a 3D shape restoration unit that inputs a 2D image and generates a 3D model corresponding to the input image. It has a texture processing unit that gives a texture to the 3D model generated by the 3D shape restoration unit.
  • the texture processing unit The process of acquiring an existing texture similar to the acquired texture acquired from the two-dimensional image from the texture database, and A conversion function calculation process that brings the color of the existing texture closer to the color of the acquired texture,
  • An image processing device that executes a process of setting a texture calculated by applying the conversion function to the existing texture in a texture unset area where a texture cannot be obtained from the two-dimensional image in the three-dimensional model.
  • the texture processing unit is The image processing apparatus according to (1), wherein a texture calculated by applying the conversion function to the existing texture is set in an occlusion region where a texture cannot be obtained from the two-dimensional image in the three-dimensional model.
  • the texture processing unit is The image processing apparatus according to (1) or (2), which calculates a color conversion matrix as a conversion function that brings the color of the existing texture closer to the color of the acquired texture.
  • the texture database is It is a database that stores UV texture maps, which are texture data for 3D models.
  • the texture processing unit From a plurality of UV texture maps stored in the texture database, the texture of the same region as the acquisition region of the acquired texture acquired from the two-dimensional image is acquired, and the UV texture map having the texture most similar to the acquired texture is obtained.
  • the image processing apparatus according to any one of (1) to (3) to be selectively acquired.
  • the texture processing unit is The image processing apparatus according to (4), wherein the texture calculated by applying the conversion function to the UV texture map is set in the three-dimensional model.
  • the texture processing unit is A texture analysis unit that analyzes the acquired texture acquired from the two-dimensional image, and The image processing apparatus according to any one of (1) to (5), which has a texture database search unit that selects an existing texture similar to the acquired texture from the texture database based on the analysis result of the texture analysis unit.
  • the texture database is It is a configuration in which the UV texture map, which is the texture data corresponding to the three-dimensional model, and the attribute information of each UV texture map are associated and recorded.
  • the texture database search unit The image processing apparatus according to (6) or (7), which executes a texture search process using the attribute information.
  • the image processing apparatus further includes It has an object recognition unit that executes object identification based on the input image.
  • the object recognition unit determines the type of object for which a three-dimensional model is generated, and determines the type of object.
  • the three-dimensional shape restoration unit is An existing 3D model of a type that matches the determined object type is acquired from the database, and the acquired existing 3D model is transformed to generate a 3D model corresponding to the input image (1) to (8).
  • the three-dimensional shape restoration unit is Using the depth image included in the input image, a point cloud consisting of point cloud data on three-dimensional coordinates is generated.
  • the 3D model corresponding to the input image is executed by transforming the existing 3D model so as to detect the corresponding points between the generated point cloud and the existing 3D model and reduce the error between the corresponding points.
  • the image processing apparatus according to (9).
  • the texture processing unit is A conversion function calculation process that brings the color of the existing texture closer to the color of the acquired texture, In the three-dimensional model, a color conversion unit that executes a process of setting a texture calculated by applying the conversion function to the existing texture in a texture unset area where a texture cannot be obtained from the two-dimensional image.
  • the texture generated by the color conversion unit and The image processing apparatus according to any one of (1) to (10), which has a signal processing unit that executes signal processing for reducing a difference from a texture obtained from the input image.
  • the signal processing unit The image processing apparatus according to (11), which executes at least one of resolution conversion processing, blurring processing, and sharpness processing on the texture generated by the color conversion unit.
  • a 3D shape restoration process execution step in which the 3D shape restoration unit inputs a 2D image and generates a 3D model corresponding to the input image.
  • the texture processing unit has a texture addition processing execution step for imparting a texture to the three-dimensional model generated by the three-dimensional shape restoration unit.
  • a program that executes image processing in an image processing device A 3D shape restoration process execution step in which a 2D image is input to the 3D shape restoration unit and a 3D model corresponding to the input image is generated.
  • the texture processing unit is made to execute a texture addition processing execution step for imparting a texture to the three-dimensional model generated by the three-dimensional shape restoration unit.
  • the series of processes described in the specification can be executed by hardware, software, or a composite configuration of both.
  • the program in which the processing sequence is recorded is installed in the memory in the computer incorporated in the dedicated hardware and executed, or the program is stored in a general-purpose computer capable of executing various processing. It can be installed and run.
  • the program can be pre-recorded on a recording medium.
  • programs can be received via a network such as LAN (Local Area Network) or the Internet and installed on a recording medium such as a built-in hard disk.
  • the various processes described in the specification are not only executed in chronological order according to the description, but may also be executed in parallel or individually as required by the processing capacity of the device that executes the processes.
  • the system is a logical set configuration of a plurality of devices, and the devices having each configuration are not limited to those in the same housing.
  • a device and a method for generating a three-dimensional model in which a more natural texture is set in an occlusion region where a texture cannot be obtained from a two-dimensional image are realized.
  • it has a three-dimensional shape restoration unit that generates a three-dimensional model based on a two-dimensional image, and a texture processing unit that imparts a texture to the three-dimensional model.
  • the texture processing unit acquires an existing texture similar to the acquired texture from the 2D image from the DB, calculates a conversion function that brings the color of the existing texture closer to the color of the acquired texture, and is an area where the texture cannot be obtained from the 2D image.
  • a texture calculated by applying a conversion function is set in an occlusion region where a texture cannot be obtained from a two-dimensional image.
  • Imaging unit 30 Display unit 100 Image processing device 111 Input data analysis and conversion unit 112 Object recognition unit 113 3D shape restoration unit 114 Texture projection unit 115 Texture acquisition unit 116 Texture analysis unit 117 Texture DB search unit 118 Color conversion unit 119 Signal processing unit 120 Color composition unit 121 3D model output unit 130 3D model database 140 Texture database 201 RGB image 202 Depth image 203 Point cloud 211 Existing 3D model 220 Restored 3D model 240 Input image compatible Unfinished UV texture map 241 Acquired texture 250 Existing similar UV texture map 251 Existing similar texture 280 Input image compatible Completed UV texture map 300 Image processing device 301 Controller 302 ROM 303 RAM 304 Bus 305 Input / output interface 306 Input unit 307 Output unit 308 Storage unit 309 Communication unit 310 Drive 311 Removable media

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Graphics (AREA)
  • Multimedia (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Geometry (AREA)
  • Software Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Oral & Maxillofacial Surgery (AREA)
  • Human Computer Interaction (AREA)
  • Health & Medical Sciences (AREA)
  • Image Generation (AREA)
  • Image Processing (AREA)

Abstract

2次元画像からテクスチャが得られないオクルージョン領域に、より自然なテクスチャを設定した3次元モデルを生成する装置、方法を提供する。2次元画像に基づく3次元モデルを生成する3次元形状復元部と、3次元モデルにテクスチャを付与するテクスチャ処理部を有する。テクスチャ処理部は、2次元画像からの取得テクスチャに類似する既存テクスチャをDBから取得し、既存テクスチャの色を取得テクスチャの色に近づける変換関数を算出し、2次元画像からテクスチャが得られない領域に既存テクスチャに変換関数を適用して算出したテクスチャを設定する。例えば2次元画像からテクスチャが得られないオクルージョン領域に、変換関数を適用して算出したテクスチャを設定する。

Description

画像処理装置、および画像処理方法、並びにプログラム
 本開示は、画像処理装置、および画像処理方法、並びにプログラムに関する。さらに詳細には、3次元(3D)モデルの生成処理や、3次元画像のレンダリング処理を実行する画像処理装置、画像処理システム、並びにプログラムに関する。
 近年、コンピュータ・グラフィクス(CG:Computer Graphics)技術を用いた3次元画像生成技術が、映画やゲームなど様々な分野で利用されている。
 例えば、特許文献1(特開2017-138913号公報)には、CGキャラクタを、プレーヤであるユーザの顔を持つ画像に置き換える処理について開示している。
 この文献は、ユーザの顔画像を撮影して、撮影した顔画像の肌色領域をRGB値からHSV(色相、彩度、明度)値に変換して解析し、この解析結果として得られるユーザの肌色情報を置き換え対象となるCGキャラクタの顔、腕、足等の肌色に反映させる技術を開示している。
 しかし、この文献に開示された装置は、肌の肌理や置き換え元の画像の解像度感や、ノイズ感等を考慮して、変換対象となる肌の調整は行なっていない。そのため、合成後の画像に違和感が残る。
 また、例えば顔のRGB画像1枚から顔全体の3次元形状とテクスチャを復元する処理を行う既存ソフトウェアもある。しかし、多くの既存ソフトウェアは、例えば顔の皮膚(スキン)と想定される領域の平均色を算出し、予め用意してある1枚の高解像度UVテクスチャデータを算出平均色に近づける色補正を行って合成を行う構成となっている。
 この手法は、上記特許文献1に記載の構成と同様、肌の肌理や被写体の属性等を考慮した肌色調整を行うものではなく、依然として合成後の画像に違和感が残るという問題がある。
特開2017-138913号公報
 本開示は、例えば上述の問題点に鑑みてなされたものであり、より自然なリアリティのある3次元(3D)モデルの生成処理、すなわち3次元画像のレンダリング処理を実行する画像処理装置、および画像処理方法、並びにプログラムを提供するものである。
 本開示の一実施例の構成は、例えば2次元画像に基づいて3次元モデル(3次元画像)を生成する構成において、2次元画像に含まれない隠れた領域(オクルージョン領域)についても、より自然なリアリティのある色や質感を有する3次元画像を生成可能とした画像処理装置、および画像処理方法、並びにプログラムを提供するものである。
 本開示の第1の側面は、
 2次元画像を入力し、入力画像対応の3次元モデルを生成する3次元形状復元部と、
 前記3次元形状復元部が生成した3次元モデルにテクスチャを付与するテクスチャ処理部を有し、
 前記テクスチャ処理部は、
 前記2次元画像から取得した取得テクスチャに類似する既存テクスチャをテクスチャデータベースから取得する処理と、
 前記既存テクスチャの色を、前記取得テクスチャの色に近づける変換関数算出処理と、
 前記3次元モデル中、前記2次元画像からテクスチャが得られないテクスチャ未設定領域に、前記既存テクスチャに前記変換関数を適用して算出したテクスチャを設定する処理を実行する画像処理装置にある。
 さらに、本開示の第2の側面は、
 画像処理装置において実行する画像処理方法であり、
 3次元形状復元部が、2次元画像を入力し、入力画像対応の3次元モデルを生成する3次元形状復元処理実行ステップと、
 テクスチャ処理部が、前記3次元形状復元部が生成した3次元モデルにテクスチャを付与するテクスチャ付与処理実行ステップを有し、
 前記テクスチャ付与処理実行ステップにおいては、
 前記2次元画像から取得した取得テクスチャに類似する既存テクスチャをテクスチャデータベースから取得する処理と、
 前記既存テクスチャの色を、前記取得テクスチャの色に近づける変換関数算出処理と、
 前記3次元モデル中、前記2次元画像からテクスチャが得られないテクスチャ未設定領域に、前記既存テクスチャに前記変換関数を適用して算出したテクスチャを設定する処理を実行する画像処理方法にある。
 さらに、本開示の第3の側面は、
 画像処理装置において画像処理を実行させるプログラムであり、
 3次元形状復元部に、2次元画像を入力し、入力画像対応の3次元モデルを生成させる3次元形状復元処理実行ステップと、
 テクスチャ処理部に、前記3次元形状復元部が生成した3次元モデルにテクスチャを付与させるテクスチャ付与処理実行ステップを実行させ、
 前記テクスチャ付与処理実行ステップにおいては、
 前記2次元画像から取得した取得テクスチャに類似する既存テクスチャをテクスチャデータベースから取得する処理と、
 前記既存テクスチャの色を、前記取得テクスチャの色に近づける変換関数算出処理と、
 前記3次元モデル中、前記2次元画像からテクスチャが得られないテクスチャ未設定領域に、前記既存テクスチャに前記変換関数を適用して算出したテクスチャを設定する処理を実行させるプログラムにある。
 なお、本開示のプログラムは、例えば、様々なプログラム・コードを実行可能な画像処理装置やコンピュータ・システムに対して、コンピュータ可読な形式で提供する記憶媒体、通信媒体によって提供可能なプログラムである。このようなプログラムをコンピュータ可読な形式で提供することにより、画像処理装置やコンピュータ・システム上でプログラムに応じた処理が実現される。
 本開示のさらに他の目的、特徴や利点は、後述する本開示の実施例や添付する図面に基づくより詳細な説明によって明らかになるであろう。なお、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
 本開示の一実施例の構成によれば、2次元画像からテクスチャが得られないオクルージョン領域に、より自然なテクスチャを設定した3次元モデルを生成する装置、方法が実現される。
 具体的には、例えば、2次元画像に基づく3次元モデルを生成する3次元形状復元部と、3次元モデルにテクスチャを付与するテクスチャ処理部を有する。テクスチャ処理部は、2次元画像からの取得テクスチャに類似する既存テクスチャをDBから取得し、既存テクスチャの色を取得テクスチャの色に近づける変換関数を算出し、2次元画像からテクスチャが得られない領域に既存テクスチャに変換関数を適用して算出したテクスチャを設定する。例えば2次元画像からテクスチャが得られないオクルージョン領域に、変換関数を適用して算出したテクスチャを設定する。
 本構成により、2次元画像からテクスチャが得られないオクルージョン領域に、より自然なテクスチャを設定した3次元モデルを生成する装置、方法が実現される。
 なお、本明細書に記載された効果はあくまで例示であって限定されるものではなく、また付加的な効果があってもよい。
本開示の画像処理装置の構成例について説明する図である。 3次元形状復元部の実行する処理について説明する図である。 3次元形状復元部の実行する処理について説明する図である。 UVテクスチャマップの一例について説明する図である。 テクスチャ取得部の実行する処理について説明する図である。 テクスチャデータベースに格納されたデータの具体例について説明する図である。 テクスチャDB検索部の実行する処理について説明する図である。 色変換部の実行する処理について説明する図である。 色変換部、信号処理部、色合成部の実行する処理について説明する図である。 色変換部、信号処理部、色合成部の実行する処理について説明する図である。 本開示の画像処理装置の実行する処理のシーケンスについて説明するフローチャートを示す図である。 画像処理装置のハードウェア構成例について説明する図である。
 以下、図面を参照しながら本開示の画像処理装置、および画像処理方法、並びにプログラムの詳細について説明する。なお、説明は以下の項目に従って行なう。
 1.本開示の画像処理装置の実行する処理の概要について
 2.本開示の画像処理装置の構成と実行する処理の詳細について
 3.本開示の画像処理装置の実行する処理のシーケンスについて
 4.画像処理装置のハードウェア構成例について
 5.本開示の構成のまとめ
  [1.本開示の画像処理装置の実行する処理の概要について]
 本開示の画像処理装置は、より自然なリアリティのある3次元(3D)モデルの生成処理、すなわち3次元画像を生成する。
 例えば、例えば1枚の2次元画像に基づいて3次元モデル(3次元画像)を生成する場合、2次元画像に含まれない隠れた領域(オクルージョン領域)に対する処理が必要となる。
 2次元画像に含まれない隠れた領域(オクルージョン領域)は、形状、色、模様等を直接観察することができないので、これらを何らかの手法で推測することが必要となる。
 すなわち、オクルージョン領域についての「3次元形状」や、3次元モデルの分割領域である「メッシュ」に対する貼り付け画像である「テクスチャ」、これらについて予測して3次元モデルを生成する処理が必要となる。
 例えば顔の左半分が撮影された2次元画像から3次元モデルを生成する場合、顔の左半分の「3次元形状」や「テクスチャ」は、元となる2次元画像から直接、取得することができる。しかし、2次元画像に含まれない右半分の顔領域については、情報が得られないため、顔の右半分の「3次元形状」や「テクスチャ」については、何らかの手法で予測して復元する必要がある。
 本開示の画像処理装置では、このような2次元画像に含まれない隠れた領域(オクルージョン領域)の3次元形状復元処理として、例えば、既存3次元モデル(Priorモデル)を利用する。
 例えば人の顔の2次元画像から顔の3次元モデルを生成する場合、予めデータベースに格納された様々な顔の3次元モデル(既存モデル(Priorモデル))から、2次元画像に類似する特徴を持つ既存3次元モデルを選択し、選択した既存3次元モデルを変形して、2次元画像に含まれないオクルージョン領域の3次元形状を復元する。
 また、オクルージョン領域の3次元形状を復元処理として、Fill Hole技術を利用してもよい。
 Fill Hole技術は、情報が欠落したメッシュの周囲メッシュ情報に基づいて情報欠落メッシュの3次元形状を埋める技術である。
 また、オクルージョン領域のテクスチャ復元処理は、上記の3次元形状復元処理と同様、予めデータベースに格納された様々なテクスチャデータ(既存テクスチャデータ)から、2次元画像に類似する特徴を持つ既存テクスチャデータを選択し、選択した既存テクスチャデータを利用する。
 なお、この既存テクスチャデータの利用時には、元の2次元画像の特徴(色、質感等)等を解析し、既存テクスチャデータを、この2次元画像の特徴(色、質感等)に近づける補正処理を行う。
 また、画像埋め込みによる画像修復技術であるInpainting技術を利用する方法を適用してもよい、
 なお、上述した3次元形状復元処理に利用する3次元モデル(既存モデル(Priorモデル))を様々なテクスチャデータを含む3次元モデル(既存モデル(Priorモデル))として、この3次元モデル(既存モデル(Priorモデル))を利用して3次元形状とテクスチャ情報の両者を復元する処理を行う構成としてもよい。
 本開示の画像処理装置は、2次元画像から3次元モデルを生成する処理を行う場合、2次元画像に含まれない隠れた領域(オクルージョン領域)のテクスチャを復元する処理として、例えば以下の処理を行う。
 (a)入力した2次元画像、または2次元画像に基づいて生成したテクスチャマップから一部のテクスチャを切り出し、テクスチャデータベースから類似する既存テクスチャを有する3次元モデル対応のテクスチャマップ(UVテクスチャマップ)を選択する。
 (b)次に、選択した3次元モデル対応のテクスチャマップ(UVテクスチャマップ)に対して、色変換や、ノイズ付加処理や解像度変換処理などの信号処理を施して、2次元画像に含まれない隠れた領域(オクルージョン領域)のテクスチャとして設定する。
 以下、これらの処理を実行する本開示の画像処理装置の構成と処理の詳細について説明する。
  [2.本開示の画像処理装置の構成と実行する処理の詳細について]
 以下、図面を参照して、本開示の画像処理装置の構成と実行する処理の詳細について説明する。
 図1は本開示の画像処理装置100の構成を示すブロック図である。
 以下、図1に示すブロック図を用いて本開示の画像処理装置100の構成と処理について説明する。本開示の画像処理装置100は、前述したように、予めデータベースに格納された様々な3次元モデル(既存3次元モデル(Priorモデル))を利用して、3次元モデルを生成し、3次元画像をレンダリングして表示部に表示する処理を行う。
 データベースには、例えば人の顔、人の体、動物、植物、工作物、建築物等、様々な既存3次元モデルが格納されている。本開示の画像処理装置100は、データベースに格納されたこれらの既存3次元モデルを参照することで、様々な物体の新たな3次元モデルを生成することが可能である。
 以下では、説明を分かりやすくするため、一例として人の顔の3次元モデルの生成処理を行う場合の例について説明する。
 図1に示す撮像部20は、被写体10の顔の画像(2次元画像)や距離画像(デプス画像)を撮影する。被写体10は3次元モデルの生成対象となる被写体である。ここでは被写体10は、人の顔とする。
 撮像部20は、少なくとも1枚以上のカラー画像、例えばRGB画像や距離画像(デプス画像)を撮影して画像処理装置100に入力する。
 画像処理装置100の入力データ解析、変換部111は、撮像部20から入力した画像データを解析して変換する。例えばRGBカラー画像を入力した場合、ビットマップデータなどの形式に変換する。また、距離画像(デプス画像)を入力した場合、16bitのTiff形式のデータに変換する処理などを行う。
 なお、データ変換の態様は、後続の各処理部が処理可能なデータ形式であればよく、後続処理部の構成に応じて異なる。
 入力データ解析、変換部111の生成した変換データ(例えばRGB画像と、デプス画像)は、オブジェクト認識部112に入力される。
 オブジェクト認識部112は、RGB画像やデプス画像を解析し、被写体(オブジェクト)のオブジェクト種類を判別し、判別したオブジェクト種類に対応する既存の3次元モデル(既存3次元モデル(Priorモデル)が、3次元モデルデータベース130に存在するかどうかを判別する。
 3次元モデルデータベース130は、画像処理装置100内部のデータベースとしてもよいし、例えばインターネット等を介してアクセス可能なデータベースを利用してもよい。
 なお、被写体の種類が予め分かっている場合には、オブジェクト認識部112におけるオブジェクト種類の判別処理は省略可能である。
 オブジェクト認識部112において実行するオブジェクト認識方法としては、パターンマッチング等、様々な既存の手法が適用可能である。
 オブジェクト認識部112において実行されたオブジェクト認識結果としてのオブジェクト種類の判別結果、例えば、
 認識オブジェクト種類=人の顔
 この結果は、変換部111の生成した変換データ(例えばRGB画像と、デプス画像)とともに、3次元形状復元部113に入力される。
 3次元形状復元部113は、オブジェクト認識部112におけるオブジェクト認識結果に基づいて、3次元モデルデータベース130から認識されたオブジェクト種類に一致する既存3次元モデル(Priorモデル)を選択取得する。
 例えば、本例では、
 認識オブジェクト種類=人の顔
 であるので、
 3次元形状復元部113は、3次元モデルデータベース130から人の顔の既存3次元モデル(Priorモデル)を選択取得する。
 3次元形状復元部113は、3次元モデルデータベース130から取得した人の顔の既存3次元モデル(Priorモデル)を利用して、この既存3次元モデルを変形させて、入力データ(RGB画像とデプス画像)に近づける3次元形状の補正処理を行い、撮像部20の撮影した被写体10に対応する新規の3次元モデルを生成する。
 例えば、1枚のRGB画像とデプス画像を入力データとする場合、3次元形状復元部113は、まず、デプス画像から取得されるデータを、3次元座標上の点群データとして表現したポイントクラウド(Point Could)を生成する。
 さらに、生成したポイントクラウド(Point Could)と、3次元モデルデータベース130から取得した人の顔の既存3次元モデル(Priorモデル)との間で、位置合わせを行って、頂点間の対応を取る。例えば、距離が近いものを対応点のペアとする処理等を行う。
 その後、全ての対応点間の誤差を小さくしていくように、既存3次元モデル(Priorモデル)を変形させる。
 この処理によって、撮像部20の撮影した2次元画像には含まれない隠れた領域(オクルージョン領域)を含む3次元形状を復元した新たな被写体10対応の3次元モデルを生成することができる。
 この3次元形状復元部113の実行する処理の具体例について、図2、図3を参照して説明する。
 3次元形状復元部113は、図2に示すように、被写体10の撮影画像として、1枚のRGB画像201とデプス画像202を入力する。
 なお、RGB画像201は、カラー画像である。
 3次元形状復元部113は、まず、ステップS01において、デプス画像202から取得されるデータを、3次元座標上の点群データとして表現したポイントクラウド(Point Could)203を生成する。
 次に、3次元形状復元部113は、ステップS02において、3次元モデルデータベース130から、オブジェクト認識部112において識別されたオブジェクト種類に一致する既存3次元モデル(Priorモデル)を選択取得する。図2に示す人の顔の既存3次元モデル(Priorモデル)211が選択される。
 次に、3次元形状復元部113は、ステップS03において、ステップS01で生成したポイントクラウド(Point Could)203と、3次元モデルデータベース130から取得した人の顔の既存3次元モデル(Priorモデル)211との間で、位置合わせを行って、頂点間の対応を取る。例えば、距離が近いものを対応点のペアとする処理等を行う。
 その後、図3に示すように、ステップS04において、全ての対応点間の誤差を小さくしていくように、既存3次元モデル(Priorモデル)211を変形させて、復元3次元モデル220を生成する。
 復元3次元モデル220は、被写体10の顔画像を反映した、被写体10により近い3次元モデルとなる。
 復元3次元モデル220は、撮像部20の撮影した2次元画像には含まれない隠れた領域(オクルージョン領域)を含む3次元形状を復元した新たな被写体10対応の3次元モデルである。
 図1に戻り、画像処理装置100の構成と処理の説明を続ける。
 図1の画像処理装置100の3次元形状復元部113は、図2、図3を参照して説明した処理を実行し、被写体10の顔画像を反映した、被写体10により近い復元3次元モデル220を生成する。
 3次元形状復元部113の生成した復元3次元モデル220は、テクスチャ投影部114に入力される。テクスチャ投影部114には、変換部111の生成した変換データ(例えばRGB画像)も併せて入力される。
 なお、テクスチャ投影部114~色合成部120は、3次元形状復元部113の生成した復元3次元モデル220に対するテクスチャ付与処理を実行するテクスチャ処理部に相当する。
 テクスチャ投影部114~色合成部120によって構成されるテクスチャ処理部の実行する処理によって、入力画像である2次元画像には含まれないオクルージョン領域に対しても、自然なリアリティのあるテクスチャを付与した3次元モデルが完成する。
 テクスチャ投影部114は、3次元形状復元部113で復元されたモデル、すなわち、図3に示す復元3次元モデル220に対して、変換部111の生成した変換データ(例えばRGB画像)に基づくテクスチャ投影処理を行う。
 すなわち、被写体10を撮影した2次元画像の各領域の画像を、復元3次元モデル220の対応領域に貼り付けるテクスチャ投影処理を行う。
 ただし、被写体10を撮影した2次元画像は、復元3次元モデル220の一部の領域のテクスチャ情報しか有していない。すなわち、2次元画像に含まれない隠れた領域(オクルージョン領域)については、マスク処理を行い、テクスチャ投影は行わない。
 なお、マスク領域の設定等、マスク方法については、ユーザが指定することが可能である。例えば顔画像を投影する場合、髪の毛の領域については2次元画像中にテクスチャ情報があってもテクスチャ投影を行わない設定とするなど、様々な設定が可能である。
 テクスチャ投影部114におけるテクスチャ投影処理は、3次元モデルに直接、テクスチャを投影した3次元モデルを生成する手法も適用可能であるが、多くの場合、処理の効率化のため、3次元モデルを2次元展開したデータ、いわゆるUV展開データを用いて実行される。UV展開データ上にテクスチャ情報を貼り付けたデータはUVテクスチャマップと呼ばれる。
 UVテクスチャマップの一例を図4に示す。
 図4(1)は、3次元モデルの全領域に対するテクスチャ情報を設定したUVテクスチャマップの例である。UVテクスチャマップの1つの点は3次元モデルの1点に対応する。
 図4(2)は、入力画像(2次元画像)対応未完成UVテクスチャマップであり、顔のほぼ正面領域のみにテクスチャ情報を設定したUVテクスチャマップの例である。本例において、被写体10を正面から撮影したRGB画像201を用いて生成可能なUVテクスチャマップの一例に相当する。
 黒い部分は、オクルージョン領域等に相当し、2次元画像からテクスチャ情報が取得できない領域である。
 なお、髪の毛の領域はユーザ設定によるマスク処理によってテクスチャ情報を投影していない領域である。
 テクスチャ投影部114において、テクスチャ投影処理がなされたUVテクスチャマップ、すなわち、図4(2)に示す入力画像(2次元画像)対応未完成UVテクスチャマップ(一部領域のみテクスチャ情報を有するUVテクスチャマップ)は、テクスチャ取得部115に入力される。
 テクスチャ取得部115に入力されるUVテクスチャマップは、一部のみにテクスチャ情報(色、模様等の画像情報)を有する3次元モデルである。すなわち、2次元画像に含まれない隠れた領域(オクルージョン領域)や、ユーザがテクスチャ投影対象としなかったマスク領域等には、テクスチャ情報が設定されていない。
 テクスチャ取得部115は、テクスチャ投影部114が、被写体10の撮影画像(2次元画像)を利用して生成した入力画像対応未完成UVテクスチャマップ240から、テクスチャ情報を取得する処理部である。
 例えば、図5に示すように、入力画像対応未完成UVテクスチャマップ240からテクスチャが設定された一部の領域をテクスチャ取得領域として選択し、このテクスチャ取得領域のテクスチャ(画像)を取得する。
 例えば、図5に示す取得テクスチャ(画像)241を取得する。
 なお、テクスチャ取得領域については、例えばオブジェクト毎に予め決められた領域とする方法、あるいはユーザが指定した領域とする方法等、様々な方法で決定することが可能である。なお、オブジェクト毎に予め決められた領域とする方法を適用した場合、その領域にテクスチャが設定されていない場合や、テクスチャの解析が不可能である可能性もある。このような場合は、解析可能なテクスチャが設定された別の領域をテクスチャ取得代替領域として、この代替領域からテクスチャを取得する。
 テクスチャ取得部115が、入力画像対応未完成UVテクスチャマップ240から取得した取得テクスチャ(画像)241は、テクスチャ解析部116に入力される。
 テクスチャ解析部116は、テクスチャ取得部115が取得した取得テクスチャ(画像)241の解析処理を実行する。
 具体的には、色、模様、輝度、質感等の画像解析を行う。さらに、オブジェクト種類に応じた解析処理も併せて実行することが好ましい。
 例えば、人の顔である場合、肌の肌理の解析などを実行する。
 テクスチャ解析部116では、ユーザが指定した手段を用いてテクスチャを解析することが可能である。例えば顔の3次元モデルを生成する処理を行う場合、肌の肌理の解析などを解析処理として実行することが有効である。
 テクスチャ解析部116が生成したテクスチャ解析データ(補助情報)は、テクスチャ取得部115が取得した取得テクスチャ(画像)241とともに、テクスチャDB検索部117に入力される。
 テクスチャDB検索部117は、テクスチャ取得部115が取得した取得テクスチャ241と、テクスチャ解析部116が生成したテクスチャ解析データ(補助情報)に基づいて、テクスチャデータベース140から、取得テクスチャ241に最も類似する既存テクスチャを取得する。
 テクスチャデータベース140には、様々な特徴を持つテクスチャデータが格納されている。
 図6を参照して、テクスチャデータベース140に格納されたデータの具体例について説明する。
 テクスチャデータベース140には、図6に示すように、様々な異なるUVテクスチャマップが格納されている。
 なお、これらのUVテクスチャマップはカラーデータである。
 先に説明したようにUVテクスチャマップは、テクスチャ付きの3次元モデルを2次元展開したデータであり、UVテクスチャマップの1つの点は3次元モデルの1点に対応する。
 すなわち、UVテクスチャマップは、3次元モデルの全ての点のテクスチャ情報(画素値(RGB値等の色情報等))を有するマップである。
 なお、テクスチャデータベース140は、画像処理装置100内部のデータベースとしてもよいし、例えばインターネット等を介してアクセス可能なデータベースを利用してもよい。
 なお、図1では、3次元モデルデータベース130と、テクスチャデータベース140を個別のデータベースとして示しているが、これらのデータベースは1つのデータベースとして構成することも可能である。すなわちテクスチャ情報を持つ3次元モデルが格納された1つのデータベースを3次元モデルデータベース130と、テクスチャデータベース140として利用することも可能である。
 前述したように、テクスチャDB検索部117は、テクスチャ取得部115が、入力画像対応未完成UVテクスチャマップ240から取得した取得テクスチャ241と、テクスチャ解析部116が生成したテクスチャ解析データ(補助情報)に基づいて、テクスチャデータベース140から、取得テクスチャ241に最も類似する既存類似テクスチャデータを取得する。
 類似する既存テクスチャの検索処理例について、図7を参照して説明する。
 図7に示すように、テクスチャDB検索部117は、テクスチャ取得部115が取得した取得テクスチャ241の取得位置に対応する画像位置のテクスチャを、テクスチャデータベース140に格納されたUVテクスチャマップの各々から取得して、それぞれを比較する。
 この比較処理を実行して、取得テクスチャ241に最も類似するテクスチャを持つUVテクスチャマップを選択する。補助情報(肌の肌理などの解析結果)と照らし合わせて最も近い成分を持つテクスチャを持つUVテクスチャマップを選択する。
 例えば、図7に示す例において、テクスチャデータベース140に格納されたUVテクスチャマップ005が、取得テクスチャ241に最も類似するテクスチャを持つUVテクスチャマップとして選択される。
 なお、テクスチャデータベース140を、UVテクスチャマップのみならず、UVテクスチャマップ各々の属性情報(色の特性、明るさ、質感、肌の肌理などの情報)を記録した構成として、テクスチャDB検索部117は、これらの属性情報に基づいて類似するテクスチャを選択する構成としてもよい。
 テクスチャデータベース140から選択された類似テクスチャを含む既存UVテクスチャマップは、色変換部118に入力される。
 図8を参照して色変換部118の実行する処理について説明する。
 色変換部118は、まず、テクスチャデータベース140から選択した既存類似UVテクスチャマップ250の既存類似テクスチャ251を取得テクスチャ(画像)241の色に変換する色変換関数を算出する。
 既存類似テクスチャ251は、テクスチャDB検索部117における類似テクスチャ検索処理において取得したテクスチャである。すなわち、テクスチャ取得部115が取得した取得テクスチャ241の取得位置(頬の領域)とほぼ同じ位置の既存類似UVテクスチャマップ250のテクスチャ(頬領域のテクスチャ)である。
 色変換部118は、この既存類似テクスチャ242を、入力画像対応未完成UVテクスチャマップ240から取得した取得テクスチャ241の色に変換する色変換関数を算出する。
 色変換関数は、例えば図8に示すような色変換行列である。
 色変換行列は、例えばRGB色空間、HSV色空間、Lab色空間において定義される各値を変換する行列が適用可能である。
 色変換部118は、図8に示す既存類似テクスチャ242の各画素の色値、例えば各画素のLab各値に図に示す3×3の色変換行列を乗算して取得テクスチャ241の色値を出力可能な色変換関数(例えば色変換行列)を算出する。
 次に、色変換部118は、求めた色変換関数(例えば色変換行列)を適用して、入力画像対応未完成UVテクスチャマップ240中のテクスチャの設定されていない領域に対するテクスチャ設定処理を実行する。
 図9を参照して、色変換部118、信号処理部119、色合成部120の実行する処理の具体例について説明する。
 図9に示す入力画像対応未完成UVテクスチャマップ240は、入力画像(2次元画像)に基づいて生成されたテクスチャマップであり、一部のみにテクスチャが付与され、撮影画像である2次元画像に含まれない隠れた領域であるオクルージョン領域等にはテクスチャが設定されていない未完成テクスチャマップである。
 この入力画像対応未完成UVテクスチャマップ240と、図9に示すFilter以下の演算式によって生成されるテクスチャマップを加算することで、最終的に全ての領域にテクスチャの設定された入力画像対応完成UVテクスチャマップ280を生成する。
 図9に示すFilter以下の演算式、すなわち、
 Filter((既存類似UVテクスチャマップ250)×(色変換行列))×(マスク)
 この演算式に相当する処理を実行するのが、色変換部118と信号処理部119である。
 入力画像対応未完成UVテクスチャマップ240と、Filter以下の演算式によって生成されるテクスチャマップを加算する加算処理を実行するのが色合成部120である。
 まず、Filter以下の演算式、すなわち、
 Filter((既存類似UVテクスチャマップ250)×(色変換行列))×(マスク)
 この演算式に相当する処理を実行する色変換部118と信号処理部119の処理について説明する。
 色変換部118と信号処理部119は、テクスチャデータベース140から選択した既存類似UVテクスチャマップ250の各画素の画素値に、先に図8を参照して説明した色変換行列を乗算し、乗算結果に対するフィルタリング処理を実行して、さらに、マスク271を乗算する。
 マスク271は、入力画像対応未完成UVテクスチャマップ240のテクスチャ設定領域=0、テクスチャ未設定領域=1としたマスクである。
 この演算式、すなわち、
 Filter((既存類似UVテクスチャマップ250)×(色変換行列))×(マスク)
 この演算式により、入力画像対応完成UVテクスチャマップ280のテクスチャ未設定領域のみに、テクスチャが設定されたテクスチャマップが生成される。
 設定されるテクスチャは、既存類似UVテクスチャマップ250のテクスチャの色を色変換行列で変換した色を有するテクスチャである。
 すなわち、入力画像対応完成UVテクスチャマップ280のテクスチャの持つ色に近づけた色変換処理が施されたテクスチャとなる。
 このように、色変換部118と信号処理部119は、求めた色変換関数(例えば色変換行列)を適用して、入力画像対応未完成UVテクスチャマップ240中のテクスチャの設定されていない領域に対するテクスチャ設定処理を実行する。
 図9に示す演算式の[Filter]に相当する処理を実行する信号処理部119の処理について説明する。
 [Filter]は、フィルタリング処理を意味する。
 信号処理部119は、
 (a)入力画像対応未完成UVテクスチャマップ240に元々あるテクスチャ領域、
 (b)既存類似UVテクスチャマップ250の色変換処理によって新たに追加したテクスチャ領域、
 これら2つのテクスチャ領域の差異を低減する信号処理を実行する。
 具体的には、例えば、上記(b)のテクスチャ領域、すなわち、
 (b)既存類似UVテクスチャマップ250の色変換処理によって新たに追加したテクスチャ領域に対する解像度変換処理やぼかし処理、さらにシャープネス処理などの信号処理を実行して、上記(b)のテクスチャ領域と、上記(a)の領域、すなわち、
 (a)入力画像対応未完成UVテクスチャマップ240に元々あったテクスチャ領域、
 この領域との差異を低減させる。
 このように信号処理部119は、既存類似UVテクスチャマップ250の色変換処理によって新たに追加したテクスチャ領域と、入力画像対応未完成UVテクスチャマップ240に元々あったテクスチャ領域との解像度やノイズレベルが一致していない場合等に、これらを一致させるように、既存類似UVテクスチャマップ250の色変換処理によって新たに追加したテクスチャ領域の画素値補正処理(フィルタリング処理)を実行する。
 次に、図9に示す演算式中の加算処理を実行する色合成部120の実行する処理について説明する。
 色合成部120は、
 (a)入力画像対応未完成UVテクスチャマップ240と、
 (b)既存類似UVテクスチャマップ250の色変換処理と信号処理によって新たに生成したUVテクスチャマップ、
 これらの2つのテクスチャマップを合成(加算)する処理を実行する、
 この加算処理によって、最終的に全ての領域にテクスチャの設定された入力画像対応完成UVテクスチャマップ280が生成される。
 なお、色合成部120は、合成時の2つのテクスチャ領域境界部分について違和感を低減するため境界付近の画素値の補正処理として、αブレンド(2つの近接画素の画素値を、係数(α値)を適用して合成する処理)を行うことが好ましい。
 このように、色変換部118、信号処理部119、色合成部120は、図9に示す演算式に従った処理を行い、最終的に全ての領域にテクスチャの設定された入力画像対応完成UVテクスチャマップ280を生成する。
 すなわち、
 (入力画像対応未完成UVテクスチャマップ240)+
 Filter((既存類似UVテクスチャマップ250)×(色変換行列))×(マスク)=入力画像対応完成UVテクスチャマップ280・・・(式1)
 色変換部118、信号処理部119、色合成部120は、上記演算式(式1)に従った処理を実行して、全ての領域にテクスチャの設定された入力画像対応完成UVテクスチャマップ280を生成する。
 全ての領域にテクスチャの設定された入力画像対応完成UVテクスチャマップ280は、3次元モデル出力部121において3次元モデル(3次元画像)に変換され、表示部30に表示される。
 なお、ここで生成される3次元モデルは、先に図2、図3を参照して説明した3次元形状復元部113が生成した既存3次元モデルの変形処理によって生成した復元3次元モデル220の3次元形状を有するモデルであり、この3次元モデルに、図9を参照して説明した入力画像対応完成UVテクスチャマップ280対応のテクスチャを設定した3次元モデル(3次元画像)である。
 なお、図1に示す画像処理装置100の構成を適用して生成したテクスチャを有する3次元モデルやそのUVテクスチャマップは、図10に示すように、3次元モデルデータベース130や、テクスチャデータベース140に新規登録データとして格納してもよい。
  [3.本開示の画像処理装置の実行する処理のシーケンスについて]
 次に、本開示の画像処理装置の実行する処理のシーケンスについて説明する。
 図11に示すフローチャートは、本開示の画像処理装置100の実行する処理のシーケンスについて説明するフローチャートである。
 なお、図11に示すフローチャートに従った処理は、例えば、画像処理装置100の記憶部に格納されたプログラムに従って、プログラム実行機能を持つCPU等を備えたコントローラからなるデータ処理部の制御の下に実行される。
 図11に示すフローの各ステップの処理について、順次、説明する。
  (ステップS101)
 まず、画像処理装置100は、ステップS101において、3次元モデル生成元となるデータである画像データを入力し、後続処理部で処理可能なデータに変換する処理を実行する。例えば、2次元画像、デプス画像等の画像データを入力してデータ変換を行う。
 この処理は、図1に示す画像処理装置100の入力データ解析、変換部111が実行する処理である。入力データ解析、変換部111は、撮像部20から入力した画像データを解析して変換する。例えばRGBカラー画像を入力した場合、ビットマップデータなどの形式に変換する。また、距離画像(デプス画像)を入力した場合、16bitのTiff形式のデータに変換する処理などを行う。
 なお、データ変換の態様は、後続の各処理部が処理可能なデータ形式であればよく、後続処理部の構成に応じて異なる。
  (ステップS102)
 次に、画像処理装置100は、ステップS102において、入力画像に基づくオブジェクト識別処理を実行する。すなわちオブジェクトの種類判別を行う。
 この処理は、図1に示す画像処理装置100のオブジェクト認識部112が実行する処理である。
 オブジェクト認識部112は、RGB画像やデプス画像を解析し、被写体(オブジェクト)のオブジェクト種類を判別する。
  (ステップS103)
 次に、画像処理装置100は、ステップS103において、識別されたオブジェクト種類対応の3次元モデルが、3次元モデルデータベース130に格納されているか否かを判定する。
 この処理も、図1に示す画像処理装置100のオブジェクト認識部112が実行する処理である。
 オブジェクト認識部112は、ステップS102で判別したオブジェクト種類に対応する既存の3次元モデル(既存3次元モデル(Priorモデル)が、3次元モデルデータベース130に存在するかどうかを判定する。
 データベースに格納されている場合はステップS104に進む。
 一方、データベースに格納されていない場合は、本開示の処理はできないので処理を終了する。
  (ステップS104)
 ステップS104以降の処理は、ステップS102で判別したオブジェクト種類に対応する既存の3次元モデル(既存3次元モデル(Priorモデル)が、3次元モデルデータベース130に存在すると判定した場合に実行される。
 この場合、画像処理装置100は、ステップS104において、3次元モデルデータベース130から既存3次元モデルを取得し、入力画像に基づいて生成したポイントクラウドと既存3次元モデルの位置合わせ、変形処理を行い、入力画像の3次元形状を反映した復元3次元モデルを生成する。
 この処理は、図1に示す画像処理装置100の3次元形状復元部113が実行する処理である。
 3次元形状復元部113は、先に図2、図3を参照して説明した処理を実行する。
 すなわち、まず、デプス画像に基づいて、3次元座標上の点群データとして表現したポイントクラウド(Point Could)を生成する。
 次に、3次元モデルデータベース130から、オブジェクト認識部112において識別されたオブジェクト種類に一致する既存3次元モデル(Priorモデル)を選択する。
 次に、生成したポイントクラウド(Point Could)と、3次元モデルデータベース130から取得した人の顔の既存3次元モデル(Priorモデル)との間で、位置合わせと対応点ペア設定を行う。
 その後、図3に示すように、全ての対応点間の誤差を小さくしていくように、既存3次元モデル(Priorモデル)を変形させて、復元3次元モデル220を生成する。
 復元3次元モデル220は、被写体10の顔画像を反映した、被写体10により近い3次元モデルとなる。
  (ステップS105)
 次に、画像処理装置100は、ステップS105において、入力画像データから取得したテクスチャを、復元3次元モデル対応のUV展開データに投影して、入力画像対応未完成UVテクスチャマップを生成する。
 この処理は、図1に示す画像処理装置100のテクスチャ投影部114が実行する処理である。
 テクスチャ投影部114は、3次元形状復元部113で復元されたモデル、すなわち、図3に示す復元3次元モデル220に対して、変換部111の生成した変換データ(例えばRGB画像)に基づくテクスチャ投影処理を行う。
 すなわち、被写体10を撮影した2次元画像の各領域の画像を、復元3次元モデル220の対応領域に貼り付けるテクスチャ投影処理を行う。
 ただし、被写体10を撮影した2次元画像は、復元3次元モデル220の一部の領域のテクスチャ情報しか有していない。すなわち、2次元画像に含まれない隠れた領域(オクルージョン領域)については、マスク処理を行い、テクスチャ投影は行わない。
 なお、マスク領域の設定等、マスク方法については、ユーザが指定することが可能である。例えば顔画像を投影する場合、髪の毛の領域については2次元画像中にテクスチャ情報があってもテクスチャ投影を行わない設定とするなど、様々な設定が可能である。
 テクスチャ投影部114におけるテクスチャ投影処理は、3次元モデルに直接、テクスチャを投影した3次元モデルを生成する手法も適用可能であるが、多くの場合、処理の効率化のため、3次元モデルを2次元展開したデータ、いわゆるUV展開データを用いて実行される。UV展開データ上にテクスチャ情報を貼り付けたデータはUVテクスチャマップと呼ばれる。
 例えば、図4(2)に示す入力画像対応未完成UVテクスチャマップが生成される。
  (ステップS106)
 次に、画像処理装置100は、ステップS106において、入力画像対応未完成UVテクスチャマップから選択したテクスチャ取得領域からテクスチャを取得する。
 この処理は、図1に示す画像処理装置100のテクスチャ取得部115が実行する処理である。
 テクスチャ取得部115は、テクスチャ投影部114が、被写体10の撮影画像(2次元画像)を利用して生成した入力画像対応未完成UVテクスチャマップ240から、テクスチャ情報を取得する。
 例えば、図5に示すように、入力画像対応未完成UVテクスチャマップ240からテクスチャが設定された一部の領域から、取得テクスチャ(画像)241を取得する。
  (ステップS107)
 次に、画像処理装置100は、ステップS107において、取得テクスチャと、テクスチャDB140に格納された複数のUVテクスチャマップの既存テクスチャとを照合し、最も類似度の高いテクスチャを持つ既存類似UVテクスチャマップを選択する。
 この処理は、図1に示す画像処理装置100のテクスチャDB検索部117が実行する処理である。
 テクスチャDB検索部117は、テクスチャ取得部115が取得した取得テクスチャ241と、テクスチャ解析部116が生成したテクスチャ解析データ(補助情報)に基づいて、テクスチャデータベース140から、取得テクスチャ241に最も類似する既存テクスチャを取得する。
 先に図7を参照して説明したように、テクスチャDB検索部117は、テクスチャ取得部115が取得した取得テクスチャ241の取得位置に対応する画像位置のテクスチャを、テクスチャデータベース140に格納されたUVテクスチャマップの各々から取得して、それぞれを比較する。
 この比較処理を実行して、取得テクスチャ241に最も類似するテクスチャを持つUVテクスチャマップを選択する。補助情報(肌の肌理などの解析結果)と照らし合わせて最も近い成分を持つテクスチャを持つUVテクスチャマップを選択する。
  (ステップS108)
 次に、画像処理装置100は、ステップS108において、選択した既存類似UVテクスチャマップのテクスチャを、取得テクスチャに変換する色変換行列を算出する。
 この処理は、図1に示す画像処理装置100の色変換部118が実行する処理である。
 色変換部118は、この既存類似テクスチャ242を、入力画像対応未完成UVテクスチャマップ240から取得した取得テクスチャ241の色に変換する色変換関数を算出する。
 色変換関数は、例えば図8に示すような色変換行列である。
 色変換行列は、例えばRGB色空間、HSV色空間、Lab色空間において定義される各値を変換する行列が適用可能である。
  (ステップS109)
 次に、画像処理装置100は、ステップS109において、色変換行列を既存類似UVテクスチャマップに適用して、入力画像対応未完成UVテクスチャマップのテクスチャ未設定領域のテクスチャを算出する。
 この処理も、図1に示す画像処理装置100の色変換部118が実行する処理である。
 色変換部118は、ステップS108で求めた色変換関数(例えば色変換行列)を適用して、図8に示す入力画像対応未完成UVテクスチャマップ240中のテクスチャの設定されていない領域に対するテクスチャ設定処理を実行する。
 この処理は、先に図9を参照して説明した処理、すなわち、図9に示す演算式中の、Filter以下の演算式、すなわち、
 Filter((既存類似UVテクスチャマップ250)×(色変換行列))×(マスク)
 この演算式に相当する処理である。
 色変換部118は、テクスチャデータベース140から選択した既存類似UVテクスチャマップ250の各画素の画素値に、先に図8を参照して説明した色変換行列を乗算し、さらに、そのフィルタリング結果に対してマスク271を乗算する。
 マスク271は、入力画像対応未完成UVテクスチャマップ240のテクスチャ設定領域=0、テクスチャ未設定領域=1としたマスクである。
 この演算式、すなわち、
 Filter((既存類似UVテクスチャマップ250)×(色変換行列))×(マスク)
 この演算式により、入力画像対応完成UVテクスチャマップ280のテクスチャ未設定領域のみに、テクスチャが設定されたテクスチャマップが生成される。
 設定されるテクスチャは、既存類似UVテクスチャマップ250のテクスチャの色を色変換行列で変換した色を有するテクスチャである。
 すなわち、入力画像対応完成UVテクスチャマップ280のテクスチャの持つ色に近づけた色変換処理が施されたテクスチャとなる。
  (ステップS110)
 次に、画像処理装置100は、ステップS110において、色変換行列の適用によって算出したテクスチャ領域に対する信号処理を実行し、信号処理後のテクスチャマップと、入力画像対応未完成UVテクスチャマップを合成して、入力画像対応完成UVテクスチャマップを生成する。
 この処理は、図1に示す画像処理装置100の信号処理部119と色合成部120の実行する処理である。
 先に図9を参照して説明したように、信号処理部119は、図9に示す演算式の[Filter]に相当する処理を実行する。
 また、色合成部120は、図9に示す演算式中の加算処理を実行する。
 まず、信号処理部119は、
 (a)入力画像対応未完成UVテクスチャマップ240に元々あるテクスチャ領域、
 (b)既存類似UVテクスチャマップ250の色変換処理によって新たに追加したテクスチャ領域、
 これら2つのテクスチャ領域の差異を低減する信号処理を実行する。
 具体的には、例えば、上記(b)のテクスチャ領域、すなわち、
 (b)既存類似UVテクスチャマップ250の色変換処理によって新たに追加したテクスチャ領域に対する解像度変換処理や、ぼかし処理、さらにシャープネス処理などの信号処理を実行して、上記(b)のテクスチャ領域と、上記(a)の領域、すなわち、
 (a)入力画像対応未完成UVテクスチャマップ240に元々あったテクスチャ領域、
 この領域との差異を低減させるための信号処理を実行する。
 次に、色合成部120は、
 (a)入力画像対応未完成UVテクスチャマップ240と、
 (b)既存類似UVテクスチャマップ250の色変換処理と信号処理によって新たに生成したUVテクスチャマップ、
 これらの2つのテクスチャマップを合成(加算)する処理を実行する、
 この加算処理によって、最終的に全ての領域にテクスチャの設定された入力画像対応完成UVテクスチャマップ280が生成される。
 その後、全ての領域にテクスチャの設定された入力画像対応完成UVテクスチャマップ280は、3次元モデル出力部121において3次元モデル(3次元画像)に変換され、表示部30に表示される。
 なお、ここで生成される3次元モデルは、先に図2、図3を参照して説明した3次元形状復元部113が生成した既存3次元モデルの変形処理によって生成した復元3次元モデル220の3次元形状を有するモデルであり、この3次元モデルに、図9を参照して説明した入力画像対応完成UVテクスチャマップ280対応のテクスチャを設定した3次元モデル(3次元画像)である。
 なお、上述した実施例においては、人の顔の3次元モデルを生成する実施例として説明したが、本開示の処理は、人の顔に限らず、既存の3次元モデルや既存のテクスチャデータがあれば、あらゆる物体を処理対象とすることが可能である。例えば、人の顔、人の体、動物、植物、工作物、建築物等、様々な物の3次元モデルのを生成処理に利用可能である。
  [4.画像処理装置のハードウェア構成例について]
 次に、図12を参照して本開示の画像処理装置のハードウェア構成例について説明する。
 本開示の画像処理装置は、例えば、具体的には、PC(Personal Computer)等の情報処理装置によって構成することが可能である。
 図12に示すように画像処理装置300は、コントローラ301、ROM(Read Only Memory)302、RAM(Random Access Memory)303、入出力インタフェース305、および、これらを互いに接続するバス304を備える。
 コントローラ301は、必要に応じてRAM303等に適宜アクセスし、各種演算処理を行いながら画像処理装置300の各ブロック全体を統括的に制御する。コントローラ301は、CPU(Central Processing Unit)、GPU(Graphics Processing Unit)等であってもよい。ROM302は、コントローラ301に実行させるOS、プログラムや各種パラメータなどのファームウェアが固定的に記憶されている不揮発性のメモリである。RAM303は、コントローラ301の作業用領域等として用いられ、OS、実行中の各種アプリケーション、処理中の各種データを一時的に保持する。
 入出力インタフェース305には、入力部306、出力部307、記憶部308、通信部309、および、リムーバブルメディア311を装着可能なドライブ310等が接続される。
 なお、入出力インタフェース105は、これらの各要素の他、USB(Universal Serial Bus)端子やIEEE端子等を介して外部周辺機器と接続可能に構成されてもよい。
 入力部306は、例えば、図1に示す撮像部20の撮影画像を入力し、さらにユーザの操作情報等を入力可能な入力部である。入力部306が撮像部を有する構成としてもよい。
 入力部306には、例えばマウス等のポインティングデバイス、キーボード、タッチパネル、その他の入力装置も含まれる。
 出力部307は、図1に示す表示部30に対するデータ出力を行う。出力部307が表示部を有する構成としてもよい。
 記憶部308は、例えばHDD(Hard Disk Drive)や、フラッシュメモリ(SSD;Solid State Drive)、その他の固体メモリ等の不揮発性メモリである。記憶部308には、OSや各種アプリケーション、各種データが記憶される。記憶部308は、また、入力画像や、画像情報、生成した出力画像群等の記憶領域としても利用される。
 通信部309は、例えばEthernet(登録商標)用のNIC(Network Interface Card)であり、ネットワークを介した通信処理を担う。
 ドライブ310は、リムーバブルメディア311を利用したデータ記録、再生処理に利用される。
 リムーバブルメディア311は、例えばBD、DVD、CD、HDD、フラッシュメモリ等によって構成される。
  [5.本開示の構成のまとめ]
 以上、特定の実施例を参照しながら、本開示の実施例について詳解してきた。しかしながら、本開示の要旨を逸脱しない範囲で当業者が実施例の修正や代用を成し得ることは自明である。すなわち、例示という形態で本発明を開示してきたのであり、限定的に解釈されるべきではない。本開示の要旨を判断するためには、特許請求の範囲の欄を参酌すべきである。
 なお、本明細書において開示した技術は、以下のような構成をとることができる。
 (1) 2次元画像を入力し、入力画像対応の3次元モデルを生成する3次元形状復元部と、
 前記3次元形状復元部が生成した3次元モデルにテクスチャを付与するテクスチャ処理部を有し、
 前記テクスチャ処理部は、
 前記2次元画像から取得した取得テクスチャに類似する既存テクスチャをテクスチャデータベースから取得する処理と、
 前記既存テクスチャの色を、前記取得テクスチャの色に近づける変換関数算出処理と、
 前記3次元モデル中、前記2次元画像からテクスチャが得られないテクスチャ未設定領域に、前記既存テクスチャに前記変換関数を適用して算出したテクスチャを設定する処理を実行する画像処理装置。
 (2) 前記テクスチャ処理部は、
 前記3次元モデル中、前記2次元画像からテクスチャが得られないオクルージョン領域に、前記既存テクスチャに前記変換関数を適用して算出したテクスチャを設定する(1)に記載の画像処理装置。
 (3) 前記テクスチャ処理部は、
 前記既存テクスチャの色を、前記取得テクスチャの色に近づける変換関数として、色変換行列を算出する(1)または(2)に記載の画像処理装置。
 (4) 前記テクスチャデータベースは、
 3次元モデル対応のテクスチャデータであるUVテクスチャマップを格納したデータベースであり、
 前記テクスチャ処理部は、
 前記テクスチャデータベースに格納された複数のUVテクスチャマップから、前記2次元画像から取得した取得テクスチャの取得領域と同一の領域のテクスチャを取得して、取得テクスチャに最も類似するテクスチャを有するUVテクスチャマップを選択取得する(1)~(3)いずれかに記載の画像処理装置。
 (5) 前記テクスチャ処理部は、
 前記UVテクスチャマップに前記変換関数を適用して算出したテクスチャを、前記3次元モデルに設定する(4)に記載の画像処理装置。
 (6) 前記テクスチャ処理部は、
 前記2次元画像から取得した取得テクスチャの解析を実行するテクスチャ解析部と、
 前記テクスチャ解析部の解析結果に基づいて、前記テクスチャデータベースから、前記取得テクスチャに類似する既存テクスチャを選択するテクスチャデータベース検索部を有する(1)~(5)いずれかに記載の画像処理装置。
 (7) 前記テクスチャ解析部は、ユーザ指定に従ったテクスチャ解析処理を実行する(6)に記載の画像処理装置。
 (8) 前記テクスチャデータベースは、
 3次元モデル対応のテクスチャデータであるUVテクスチャマップと、UVテクスチャマップ各々の属性情報を対応付けて記録した構成であり、
 前記テクスチャデータベース検索部は、
 前記属性情報を利用したテクスチャ検索処理を実行する(6)または(7)に記載の画像処理装置。
 (9) 前記画像処理装置は、さらに、
 前記入力画像に基づくオブジォクト識別を実行するオブジェクト認識部を有し、
 前記オブジェクト認識部は、3次元モデル生成対象のオブジェクト種類を判別し、
 前記3次元形状復元部は、
 判別されたオブジェクト種類に一致する種類の既存3次元モデルをデータベースから取得して、取得した既存3次元モデルを変形して入力画像対応の3次元モデルを生成する(1)~(8)いずれかに記載の画像処理装置。
 (10) 前記3次元形状復元部は、
 前記入力画像に含まれるデプス画像を利用して、3次元座標上の点群データからなるポイントクラウドを生成し、
 生成したポイントクラウドと、前記既存3次元モデルとの対応点を検出して、対応点間の誤差を小さくするように、前記既存3次元モデルの変形処理を実行して入力画像対応の3次元モデルを生成する(9)に記載の画像処理装置。
 (11) 前記テクスチャ処理部は、
 前記既存テクスチャの色を、前記取得テクスチャの色に近づける変換関数算出処理と、
 前記3次元モデル中、前記2次元画像からテクスチャが得られないテクスチャ未設定領域に、前記既存テクスチャに前記変換関数を適用して算出したテクスチャを設定する処理を実行する色変換部と、
 前記色変換部の生成したテクスチャと、
 前記入力画像から得られるテクスチャとの差分を低減するための信号処理を実行する信号処理部を有する(1)~(10)いずれかに記載の画像処理装置。
 (12) 前記信号処理部は、
 前記色変換部の生成したテクスチャに対する解像度変換処理、ぼかし処理、シャープネス処理の少なくともいずれかの処理を実行する(11)に記載の画像処理装置。
 (13) 画像処理装置において実行する画像処理方法であり、
 3次元形状復元部が、2次元画像を入力し、入力画像対応の3次元モデルを生成する3次元形状復元処理実行ステップと、
 テクスチャ処理部が、前記3次元形状復元部が生成した3次元モデルにテクスチャを付与するテクスチャ付与処理実行ステップを有し、
 前記テクスチャ付与処理実行ステップにおいては、
 前記2次元画像から取得した取得テクスチャに類似する既存テクスチャをテクスチャデータベースから取得する処理と、
 前記既存テクスチャの色を、前記取得テクスチャの色に近づける変換関数算出処理と、
 前記3次元モデル中、前記2次元画像からテクスチャが得られないテクスチャ未設定領域に、前記既存テクスチャに前記変換関数を適用して算出したテクスチャを設定する処理を実行する画像処理方法。
 (14) 画像処理装置において画像処理を実行させるプログラムであり、
 3次元形状復元部に、2次元画像を入力し、入力画像対応の3次元モデルを生成させる3次元形状復元処理実行ステップと、
 テクスチャ処理部に、前記3次元形状復元部が生成した3次元モデルにテクスチャを付与させるテクスチャ付与処理実行ステップを実行させ、
 前記テクスチャ付与処理実行ステップにおいては、
 前記2次元画像から取得した取得テクスチャに類似する既存テクスチャをテクスチャデータベースから取得する処理と、
 前記既存テクスチャの色を、前記取得テクスチャの色に近づける変換関数算出処理と、
 前記3次元モデル中、前記2次元画像からテクスチャが得られないテクスチャ未設定領域に、前記既存テクスチャに前記変換関数を適用して算出したテクスチャを設定する処理を実行させるプログラム。
 なお、明細書中において説明した一連の処理はハードウェア、またはソフトウェア、あるいは両者の複合構成によって実行することが可能である。ソフトウェアによる処理を実行する場合は、処理シーケンスを記録したプログラムを、専用のハードウェアに組み込まれたコンピュータ内のメモリにインストールして実行させるか、あるいは、各種処理が実行可能な汎用コンピュータにプログラムをインストールして実行させることが可能である。例えば、プログラムは記録媒体に予め記録しておくことができる。記録媒体からコンピュータにインストールする他、LAN(Local Area Network)、インターネットといったネットワークを介してプログラムを受信し、内蔵するハードディスク等の記録媒体にインストールすることができる。
 また、明細書に記載された各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。また、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
 以上、説明したように、本開示の一実施例の構成によれば、2次元画像からテクスチャが得られないオクルージョン領域に、より自然なテクスチャを設定した3次元モデルを生成する装置、方法が実現される。
 具体的には、例えば、2次元画像に基づく3次元モデルを生成する3次元形状復元部と、3次元モデルにテクスチャを付与するテクスチャ処理部を有する。テクスチャ処理部は、2次元画像からの取得テクスチャに類似する既存テクスチャをDBから取得し、既存テクスチャの色を取得テクスチャの色に近づける変換関数を算出し、2次元画像からテクスチャが得られない領域に既存テクスチャに変換関数を適用して算出したテクスチャを設定する。例えば2次元画像からテクスチャが得られないオクルージョン領域に、変換関数を適用して算出したテクスチャを設定する。
 本構成により、2次元画像からテクスチャが得られないオクルージョン領域に、より自然なテクスチャを設定した3次元モデルを生成する装置、方法が実現される。
  10 被写体
  20 撮像部
  30 表示部
 100 画像処理装置
 111 入力データ解析、変換部
 112 オブジェクト認識部
 113 3次元形状復元部
 114 テクスチャ投影部
 115 テクスチャ取得部
 116 テクスチャ解析部
 117 テクスチャDB検索部
 118 色変換部
 119 信号処理部
 120 色合成部
 121 3次元モデル出力部
 130 3次元モデルデータベース
 140 テクスチャデータベース
 201 RGB画像
 202 デプス画像
 203 ポイントクラウド
 211 既存3次元モデル
 220 復元3次元モデル
 240 入力画像対応未完成UVテクスチャマップ
 241 取得テクスチャ
 250 既存類似UVテクスチャマップ
 251 既存類似テクスチャ
 280 入力画像対応完成UVテクスチャマップ
 300 画像処理装置
 301 コントローラ
 302 ROM
 303 RAM
 304 バス
 305 入出力インタフェース
 306 入力部
 307 出力部
 308 記憶部
 309 通信部
 310 ドライブ
 311 リムーバブルメディア

Claims (14)

  1.  2次元画像を入力し、入力画像対応の3次元モデルを生成する3次元形状復元部と、
     前記3次元形状復元部が生成した3次元モデルにテクスチャを付与するテクスチャ処理部を有し、
     前記テクスチャ処理部は、
     前記2次元画像から取得した取得テクスチャに類似する既存テクスチャをテクスチャデータベースから取得する処理と、
     前記既存テクスチャの色を、前記取得テクスチャの色に近づける変換関数算出処理と、
     前記3次元モデル中、前記2次元画像からテクスチャが得られないテクスチャ未設定領域に、前記既存テクスチャに前記変換関数を適用して算出したテクスチャを設定する処理を実行する画像処理装置。
  2.  前記テクスチャ処理部は、
     前記3次元モデル中、前記2次元画像からテクスチャが得られないオクルージョン領域に、前記既存テクスチャに前記変換関数を適用して算出したテクスチャを設定する請求項1に記載の画像処理装置。
  3.  前記テクスチャ処理部は、
     前記既存テクスチャの色を、前記取得テクスチャの色に近づける変換関数として、色変換行列を算出する請求項1に記載の画像処理装置。
  4.  前記テクスチャデータベースは、
     3次元モデル対応のテクスチャデータであるUVテクスチャマップを格納したデータベースであり、
     前記テクスチャ処理部は、
     前記テクスチャデータベースに格納された複数のUVテクスチャマップから、前記2次元画像から取得した取得テクスチャの取得領域と同一の領域のテクスチャを取得して、取得テクスチャに最も類似するテクスチャを有するUVテクスチャマップを選択取得する請求項1に記載の画像処理装置。
  5.  前記テクスチャ処理部は、
     前記UVテクスチャマップに前記変換関数を適用して算出したテクスチャを、前記3次元モデルに設定する請求項4に記載の画像処理装置。
  6.  前記テクスチャ処理部は、
     前記2次元画像から取得した取得テクスチャの解析を実行するテクスチャ解析部と、
     前記テクスチャ解析部の解析結果に基づいて、前記テクスチャデータベースから、前記取得テクスチャに類似する既存テクスチャを選択するテクスチャデータベース検索部を有する請求項1に記載の画像処理装置。
  7.  前記テクスチャ解析部は、ユーザ指定に従ったテクスチャ解析処理を実行する請求項6に記載の画像処理装置。
  8.  前記テクスチャデータベースは、
     3次元モデル対応のテクスチャデータであるUVテクスチャマップと、UVテクスチャマップ各々の属性情報を対応付けて記録した構成であり、
     前記テクスチャデータベース検索部は、
     前記属性情報を利用したテクスチャ検索処理を実行する請求項6に記載の画像処理装置。
  9.  前記画像処理装置は、さらに、
     前記入力画像に基づくオブジォクト識別を実行するオブジェクト認識部を有し、
     前記オブジェクト認識部は、3次元モデル生成対象のオブジェクト種類を判別し、
     前記3次元形状復元部は、
     判別されたオブジェクト種類に一致する種類の既存3次元モデルをデータベースから取得して、取得した既存3次元モデルを変形して入力画像対応の3次元モデルを生成する請求項1に記載の画像処理装置。
  10.  前記3次元形状復元部は、
     前記入力画像に含まれるデプス画像を利用して、3次元座標上の点群データからなるポイントクラウドを生成し、
     生成したポイントクラウドと、前記既存3次元モデルとの対応点を検出して、対応点間の誤差を小さくするように、前記既存3次元モデルの変形処理を実行して入力画像対応の3次元モデルを生成する請求項9に記載の画像処理装置。
  11.  前記テクスチャ処理部は、
     前記既存テクスチャの色を、前記取得テクスチャの色に近づける変換関数算出処理と、
     前記3次元モデル中、前記2次元画像からテクスチャが得られないテクスチャ未設定領域に、前記既存テクスチャに前記変換関数を適用して算出したテクスチャを設定する処理を実行する色変換部と、
     前記色変換部の生成したテクスチャと、
     前記入力画像から得られるテクスチャとの差分を低減するための信号処理を実行する信号処理部を有する請求項1に記載の画像処理装置。
  12.  前記信号処理部は、
     前記色変換部の生成したテクスチャに対する解像度変換処理、ぼかし処理、シャープネス処理の少なくともいずれかの処理を実行する請求項11に記載の画像処理装置。
  13.  画像処理装置において実行する画像処理方法であり、
     3次元形状復元部が、2次元画像を入力し、入力画像対応の3次元モデルを生成する3次元形状復元処理実行ステップと、
     テクスチャ処理部が、前記3次元形状復元部が生成した3次元モデルにテクスチャを付与するテクスチャ付与処理実行ステップを有し、
     前記テクスチャ付与処理実行ステップにおいては、
     前記2次元画像から取得した取得テクスチャに類似する既存テクスチャをテクスチャデータベースから取得する処理と、
     前記既存テクスチャの色を、前記取得テクスチャの色に近づける変換関数算出処理と、
     前記3次元モデル中、前記2次元画像からテクスチャが得られないテクスチャ未設定領域に、前記既存テクスチャに前記変換関数を適用して算出したテクスチャを設定する処理を実行する画像処理方法。
  14.  画像処理装置において画像処理を実行させるプログラムであり、
     3次元形状復元部に、2次元画像を入力し、入力画像対応の3次元モデルを生成させる3次元形状復元処理実行ステップと、
     テクスチャ処理部に、前記3次元形状復元部が生成した3次元モデルにテクスチャを付与させるテクスチャ付与処理実行ステップを実行させ、
     前記テクスチャ付与処理実行ステップにおいては、
     前記2次元画像から取得した取得テクスチャに類似する既存テクスチャをテクスチャデータベースから取得する処理と、
     前記既存テクスチャの色を、前記取得テクスチャの色に近づける変換関数算出処理と、
     前記3次元モデル中、前記2次元画像からテクスチャが得られないテクスチャ未設定領域に、前記既存テクスチャに前記変換関数を適用して算出したテクスチャを設定する処理を実行させるプログラム。
PCT/JP2020/003361 2019-03-12 2020-01-30 画像処理装置、および画像処理方法、並びにプログラム WO2020183961A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US17/435,413 US11798227B2 (en) 2019-03-12 2020-01-30 Image processing apparatus and image processing method

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2019044457A JP2020149174A (ja) 2019-03-12 2019-03-12 画像処理装置、および画像処理方法、並びにプログラム
JP2019-044457 2019-03-12

Publications (1)

Publication Number Publication Date
WO2020183961A1 true WO2020183961A1 (ja) 2020-09-17

Family

ID=72426724

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2020/003361 WO2020183961A1 (ja) 2019-03-12 2020-01-30 画像処理装置、および画像処理方法、並びにプログラム

Country Status (3)

Country Link
US (1) US11798227B2 (ja)
JP (1) JP2020149174A (ja)
WO (1) WO2020183961A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11776204B2 (en) * 2020-03-31 2023-10-03 Sony Group Corporation 3D dataset generation for neural network model training
US20230073587A1 (en) * 2021-09-09 2023-03-09 The Boeing Company Automated volumetric image capture of an object to support general visual inspection

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006163852A (ja) * 2004-12-08 2006-06-22 Nippon Telegr & Teleph Corp <Ntt> 3次元画像生成装置、3次元画像生成方法、及び3次元画像生成プログラム
US20100328307A1 (en) * 2009-06-25 2010-12-30 Samsung Electronics Co., Ltd. Image processing apparatus and method
WO2011155068A1 (ja) * 2010-06-11 2011-12-15 株式会社アルトロン キャラクタ生成システム、キャラクタ生成方法及びプログラム
JP2016048467A (ja) * 2014-08-27 2016-04-07 Kddi株式会社 運動視差再現方法、装置およびプログラム

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5949409A (en) * 1994-12-02 1999-09-07 Sony Corporation Image processing in which the image is divided into image areas with specific color lookup tables for enhanced color resolution
US6424351B1 (en) * 1999-04-21 2002-07-23 The University Of North Carolina At Chapel Hill Methods and systems for producing three-dimensional images using relief textures
US9025868B2 (en) * 2013-02-27 2015-05-05 Sony Corporation Method and system for image processing to determine a region of interest
JP6370820B2 (ja) 2016-02-05 2018-08-08 株式会社バンダイナムコエンターテインメント 画像生成システム、ゲーム装置及びプログラム。
CN108876886B (zh) * 2017-05-09 2021-07-27 腾讯科技(深圳)有限公司 图像处理方法、装置和计算机设备
US10521920B2 (en) * 2017-09-21 2019-12-31 Intel Corporation Reducing textured IR patterns in stereoscopic depth sensor imaging

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006163852A (ja) * 2004-12-08 2006-06-22 Nippon Telegr & Teleph Corp <Ntt> 3次元画像生成装置、3次元画像生成方法、及び3次元画像生成プログラム
US20100328307A1 (en) * 2009-06-25 2010-12-30 Samsung Electronics Co., Ltd. Image processing apparatus and method
WO2011155068A1 (ja) * 2010-06-11 2011-12-15 株式会社アルトロン キャラクタ生成システム、キャラクタ生成方法及びプログラム
JP2016048467A (ja) * 2014-08-27 2016-04-07 Kddi株式会社 運動視差再現方法、装置およびプログラム

Also Published As

Publication number Publication date
US11798227B2 (en) 2023-10-24
JP2020149174A (ja) 2020-09-17
US20220180597A1 (en) 2022-06-09

Similar Documents

Publication Publication Date Title
JP6613605B2 (ja) 深度画像の深度値復元方法及びシステム
KR100407111B1 (ko) 얼굴 영상의 형태 정보에 기반한 합성 얼굴 영상 생성장치 및 그 방법
CN109409335B (zh) 图像处理方法、装置、计算机可读介质及电子设备
AU2016225946B2 (en) Style transfer for headshot portraits
US9710965B2 (en) Capturing and stylizing hair for 3D fabrication
JP2000067267A (ja) 三次元シーンにおける形状及び模様の復元方法及び装置
JP4776705B2 (ja) 画像処理装置および方法
KR100967701B1 (ko) 3차원 유화 데이터의 복원
CN113012293A (zh) 石刻模型构建方法、装置、设备及存储介质
EP3756163B1 (en) Methods, devices, and computer program products for gradient based depth reconstructions with robust statistics
CN113924600A (zh) 基于单个图像的实时身体动画
JP6409433B2 (ja) 画像生成装置、画像検出システム及び画像生成方法
WO2020183961A1 (ja) 画像処理装置、および画像処理方法、並びにプログラム
CN114746904A (zh) 三维人脸重建
CN115713585B (zh) 纹理图像重建方法、装置、计算机设备和存储介质
US10403038B2 (en) 3D geometry enhancement method and apparatus therefor
CN115880748A (zh) 人脸重建和遮挡区域识别方法、装置、设备及存储介质
JP7406654B2 (ja) 実際の場所の仮想環境復元を作成するための方法
KR101319260B1 (ko) 영상 복원 장치 및 방법과 이를 이용한 영상 변환 장치 및 방법
KR20150001580A (ko) 실제 객체를 증강하는 방법, 장치 및 컴퓨터 프로그램 제품
JPH11175765A (ja) 3次元モデル作成方法、3次元モデル作成装置及び記憶媒体
WO2023132261A1 (ja) 情報処理システム、情報処理方法および情報処理プログラム
Van Gool et al. Modeling shapes and textures from images: new frontiers
KR102559691B1 (ko) 뉴럴 렌더링 기반 형상 색상 통합 3d 메시 복원 방법 및 장치
EP4258221A2 (en) Image processing apparatus, image processing method, and program

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20769995

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20769995

Country of ref document: EP

Kind code of ref document: A1