WO2026009705A1 - 情報処理装置および情報処理方法 - Google Patents
情報処理装置および情報処理方法Info
- Publication number
- WO2026009705A1 WO2026009705A1 PCT/JP2025/021890 JP2025021890W WO2026009705A1 WO 2026009705 A1 WO2026009705 A1 WO 2026009705A1 JP 2025021890 W JP2025021890 W JP 2025021890W WO 2026009705 A1 WO2026009705 A1 WO 2026009705A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- error
- depth information
- unit
- function
- information processing
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/50—Depth or shape recovery
- G06T7/55—Depth or shape recovery from multiple images
- G06T7/593—Depth or shape recovery from multiple images from stereo images
Definitions
- This disclosure relates to an information processing device and an information processing method, and in particular to an information processing device and an information processing method that are capable of efficiently generating learning images to which errors have been added.
- Patent Document 2 discloses a method for learning a noise-addition function from a correct depth map and a noisy depth map.
- An information processing device includes: an error modeling unit that generates an error modeling function that models an error distribution of the depth values or disparities included in the sparse depth information, based on sparse depth information in which depth values or disparities are stored in some pixels and correct depth information that is a correct value of the sparse depth information; and an error assigning unit that generates a random error using the error modeling function as an error assigning function and generates new depth information including the random error.
- An information processing method includes: generating an error modeling function that models an error distribution of the depth values or disparities included in the sparse depth information from sparse depth information in which depth values or disparities are stored in some pixels and correct depth information that is a correct value of the sparse depth information; generating a random error using the error modeling function as an error adding function, and generating new depth information including the random error.
- an error modeling function that models the error distribution of the depth values or disparities contained in the sparse depth information is generated from sparse depth information in which depth values or disparities are stored in some pixels and correct depth information that is the correct value of the sparse depth information.
- a random error is generated using the error modeling function as an error assignment function, and new depth information containing the random error is generated.
- the information processing device of one aspect of the present disclosure can be realized by causing a computer to execute a program.
- the program to be executed by the computer can be provided by transmitting it via a transmission medium or by recording it on a recording medium.
- the information processing device may be an independent device or an internal block that makes up a single device.
- FIG. 1 is a block diagram illustrating a configuration example of an information processing device according to a first embodiment of the present disclosure.
- FIG. 2 is a diagram illustrating input learning data input to a learning image input unit.
- FIG. 10 is a diagram illustrating the processing of an error modeling unit.
- FIG. 11 is a diagram summarizing the relationship between the correct distance and the standard deviation of the error when the parameter is the focal length.
- FIG. 10 is a diagram showing an error modeling function that models an error distribution for each focal length.
- 10 is a flowchart illustrating an error modeling process performed by an error modeling unit.
- 10 is a flowchart illustrating a data extension process performed by an error adding unit.
- FIG. 2 is a block diagram showing an example of the hardware configuration of a computer serving as the information processing apparatus of FIG. 1 .
- FIG. 10 is a block diagram illustrating a configuration example of an information processing system according to a second embodiment of the present disclosure.
- FIG. 1 shows an example of the configuration of an information processing apparatus according to a first embodiment of the present disclosure.
- the information processing device 1 in Figure 1 is a device that performs processing to learn a learning model that estimates dense depth information from sparse depth information. More precisely, learning the learning model is processing to determine the parameters of a DNN (Deep Neural Network) as the learning model.
- DNN Deep Neural Network
- the information processing device 1 has a training image input unit 21, an error modeling unit 22, an error assignment unit 23, and a training unit 24.
- the training image input unit 21 accepts training data input from the outside and outputs it to the error modeling unit 22 and the error assignment unit 23.
- the training data input to the training image input unit 21 will also be referred to as input training data to distinguish it from the training data (augmented training data) generated by the data augmentation process described below.
- disparity or depth values with high reliability where the reliability of the calculated disparity or depth value is equal to or greater than a predetermined value, are stored as pixel values, and pixels with low reliability store a predetermined pixel value (e.g., zero).
- pixels with low reliability and a predetermined pixel value stored are referred to as pixels with no pixel value stored, for convenience.
- the training image input unit 21 accepts input of sparse depth information and correct depth information, and outputs it to the error modeling unit 22 and the error assignment unit 23.
- the training image input unit 21 may accept input of the right RGB image, left RGB image, and correct depth information, calculate depth values or disparity and reliability by itself, generate sparse depth information, and output it together with the correct depth information to the error modeling unit 22 and the error assignment unit 23.
- depth information in which depth values or disparity are stored for all pixels, including pixels with low reliability, and correct depth information may be input to the training image input unit 21, which then generates sparse depth information based on the reliability and outputs training data consisting of pairs of sparse depth information and correct depth information to the error modeling unit 22 and the error assignment unit 23.
- Known methods can be used to calculate the depth values or disparity and reliability. For example, a method of calculating depth values or disparity using block matching is one example. Confidence is generally higher in areas such as the edge of an object and lower in areas such as flat areas.
- the error modeling unit 22 uses the input training data supplied from the training image input unit 21 to analyze the depth value or disparity error contained in the sparse depth information. As a result of the error analysis, the error modeling unit 22 generates an error modeling function that models the error distribution of the depth values or disparity. The error modeling unit 22 outputs the generated error modeling function and the parameters used in the error modeling function to the error assignment unit 23.
- the error assignment unit 23 performs augmentation (data expansion) using the input training data supplied from the training image input unit 21 and the error modeling function from the error modeling unit 22. More specifically, the error assignment unit 23 generates a random error by using the error modeling function generated by the error modeling unit 22 as an error assignment function that assigns an error during data expansion. The error assignment unit 23 then assigns the generated error to the correct depth information of the input training data supplied from the training image input unit 21, thereby generating new depth information containing a random error (hereinafter referred to as new depth information). This generates a pair of new depth information and correct depth information. The multiple pairs of new depth information and correct depth information generated here are referred to as expanded training data to distinguish them from the input training data. The new depth information is also sparse depth information in which depth values or disparities are stored only in highly reliable pixels.
- the error assigning unit 23 outputs the learning data, which includes the input learning data and the extended learning data, to the learning unit 24.
- the learning unit 24 uses the learning data supplied from the error assignment unit 23 to learn a learning model that estimates dense depth information from sparse depth information.
- the learning model may be, for example, a CNN (convolutional neural network), but other models may also be used. Any method may also be used for training the learning model. For example, the method disclosed in Patent Document 1, a prior art document, may be used to train a learning model that estimates dense depth information from sparse depth information.
- the training unit 24 may add the right RGB image and the left RGB image as input data for training.
- the training unit 24 may also add the reliability of the depth information as input data for training.
- the learning data input to the learning image input unit 21 is composed of data containing multiple pairs of sparse depth information 32 and ground truth depth information 33, which is its ground truth, as shown in Figure 2, for example.
- the sparse depth information 32 is generated from a right RGB image 31R and a left RGB image 31L, which are stereo images.
- the learning image input unit 21 may generate the sparse depth information 32 from the right RGB image 31R and the left RGB image 31L. Pixels shown in black in the sparse depth information 32 shown in Figure 2 are pixels with low reliability and represent pixels for which no pixel value is stored.
- Figure 3 is a diagram explaining the processing of the error modeling unit 22.
- the error modeling unit 22 calculates the error from the pair of sparse depth information 32 and correct depth information 33, and generates an error map 34.
- the error modeling unit 22 calculates the difference between the sparse depth information 32 and the correct depth information 33 only for pixels where pixel values are stored in the sparse depth information 32, and generates an error map 34.
- error map 34-1 is generated from the pair of sparse depth information 32-1 and correct depth information 33-1.
- Error map 34-2 is generated from the pair of sparse depth information 32-2 and correct depth information 33-2.
- Error map 34-3 is generated from the pair of sparse depth information 32-3 and correct depth information 33-3.
- error maps 34 are generated for all pairs of sparse depth information 32 and correct depth information 33 supplied from the training image input unit 21.
- the error modeling unit 22 uses the multiple error maps 34 generated (error maps 34-1, 34-2, 34-3, ...) to generate an error modeling function that models the error distribution.
- the error modeling unit 22 uses the multiple error maps 34 to calculate the standard deviation by assuming a predetermined error distribution for each predetermined parameter, and summarizes the relationship between the correct distance and the standard deviation of the error distribution.
- Figure 4 is a diagram summarizing the relationship between the correct distance and the standard deviation of the error for each focal length using multiple error maps 34, with the focal length as the parameter.
- fd represents the focal length
- the horizontal axis of Figure 4 represents the correct distance [mm]
- the vertical axis represents the standard deviation of a predetermined distribution assumed as the error distribution.
- the assumed error distribution can be, for example, a Gaussian distribution or a Laplace distribution.
- the vertical axis y in Figure 5 represents the standard deviation of a predetermined distribution assumed as the error distribution.
- the error modeling unit 22 outputs the generated error modeling function yf and the parameters used in the error modeling function yf to the error assigning unit 23.
- the error modeling function yf of equation (1) for each focal length and the focal length value, which is a parameter summarizing the error distribution, are output to the error assigning unit 23.
- the error assignment unit 23 calculated an error modeling function that uses focal length as an error distribution parameter as the error assignment function for assigning an error, but it may also calculate an error modeling function that uses data other than focal length as an error distribution parameter.
- optical system setting values and sensor setting values can be used as parameters that summarize the error distribution.
- optical system setting values that can be used as error distribution parameters include the focal length mentioned above, as well as f-number and lens aperture.
- sensor setting values that can be used as error distribution parameters include the pixel pitch or pixel size, sensitivity characteristics, and spectral characteristics of the image sensor.
- the error modeling function may be a function that uses one parameter, as in equation (1), or a function that uses two or more parameters.
- step S1 the error modeling unit 22 calculates the difference between the sparse depth information in which pixel values are stored and the correct depth information for each pixel, and generates an error map. By generating an error map for each pair of sparse depth information and correct depth information, multiple error maps are generated.
- step S2 the error modeling unit 22 uses the generated error maps to calculate the standard deviation for each specified parameter, assuming a specified error distribution, and summarizes the relationship between the correct distance and the standard deviation of the error distribution.
- step S3 the error modeling unit 22 generates an error modeling function that models the error distribution.
- step S4 the error modeling unit 22 outputs the generated error modeling function and the parameters that summarize the error modeling function to the error assignment unit 23, and then ends the error modeling process.
- step S21 the error assignment unit 23 selects a predetermined pair from among multiple pairs of sparse depth information and correct depth information, which are input training data supplied from the training image input unit 21.
- step S22 the error assignment unit 23 sets a specific pixel whose pixel value is stored in the sparse depth information of the selected set as the pixel of interest.
- step S23 the error assigning unit 23 obtains the correct distance of the pixel of interest from the correct depth information.
- the error assigning unit 23 calculates a pixel value including a random error according to a probability distribution ( ⁇ , ⁇ 2 ) with the mean ⁇ being the true distance of the pixel of interest and the standard deviation ⁇ being the standard deviation of the error assigning function yf, and sets this as the pixel value of the pixel of interest in the new depth information.
- the probability distribution ( ⁇ , ⁇ 2 ) is a probability distribution such as a Gaussian distribution or a Laplace distribution assumed as an error distribution.
- step S26 the error assigning unit 23 determines whether all pixels whose pixel values are stored in the selected sparse depth information have been set as pixels of interest. If it is determined in step S26 that not all pixels have been set as pixels of interest, processing proceeds to step S27, where the error assigning unit 23 sets the next pixel in the sparse depth information as the pixel of interest. Processing then returns to step S23, and the above-described processes of steps S23 to S26 are repeated.
- step S26 If it is determined in step S26 that all pixels have been designated as pixels of interest, this means that one piece of new depth information has been completed.
- This new depth information is also sparse depth information, as it is an image that stores pixel values containing random errors for pixels in which the pixel values of the selected sparse depth information are stored. If it is determined in step S26 that all pixels have been designated as pixels of interest, the process proceeds to step S28, and the error assignment unit 23 stores a set of the generated new depth information and the corresponding normal depth information in a predetermined storage unit such as an internal memory.
- step S29 the error assigning unit 23 determines whether a specified number of new depth information pieces have been generated for the selected sparse depth information.
- the number of new depth information pieces to be generated for one piece of sparse depth information is determined in advance. For example, if a setting is made to generate 10 new depth information pieces for one piece of sparse depth information, the error assigning unit 23 determines whether 10 new depth information pieces have been generated.
- step S29 If it is determined in step S29 that the specified number of new depth information pieces have not yet been generated for the selected sparse depth information piece, processing returns to step S22, and the above-described steps S22 to S29 are repeated. One more new depth information piece is generated by the processing of steps S22 to S29.
- step S29 If it is determined in step S29 that the specified number of new depth information pieces have been generated, processing proceeds to step S30, where the error assignment unit 23 determines whether new depth information pieces have been generated for all pairs of sparse depth information and correct depth information pieces, which are the input training data supplied from the training image input unit 21.
- step S30 If it is determined in step S30 that new depth information has not yet been generated for all pairs of sparse depth information and correct depth information supplied from the training image input unit 21, processing returns to step S21, and the above-described processing of steps S21 to S30 is repeated. By processing steps S21 to S30, another pair of sparse depth information and correct depth information is selected, and a specified number of new depth information are further generated.
- step S30 if it is determined in step S30 that new depth information has been generated for all pairs of sparse depth information and correct depth information supplied from the training image input unit 21, the process proceeds to step S31, where the error assignment unit 23 outputs the newly generated training data (extended training data) and the training data (input training data) supplied from the training image input unit 21 to the training unit 24, thereby completing the data extension process.
- the data expansion process by the error adding unit 23 is performed as described above.
- the error assignment unit 23 sets the error obtained by integrating the first error resulting from the first error assignment function using the first error modeling function and the second error resulting from the second error assignment function using the second error modeling function as the pixel value of the pixel of interest in the new depth information.
- the error obtained by integrating the first error and the second error can be, for example, the average or maximum value of the first error and the second error.
- the information processing device 1 described above can perform augmentation (data expansion) using input training data supplied from the training image input unit 21 to generate expanded training data.
- the error modeling unit 22 of the information processing device 1 analyzes errors contained in the sparse depth information of the input training data supplied from the training image input unit 21 and generates an error modeling function that models the error distribution.
- the error assignment unit 23 of the information processing device 1 generates new depth information, which is new depth information in which errors are efficiently assigned to correct depth information. Therefore, the information processing device 1 can efficiently generate training images in which errors are assigned.
- the learning unit 24 of the information processing device 1 can generate a learning model (deep neural network model) that is robust to noise using the generated training images.
- the learning model of the learning unit 24, which inputs depth information that is disparity or depth values, can have a smaller network scale than a learning model that inputs a right RGB image and a left RGB image.
- the series of processes executed by the information processing device 1 can be executed by hardware or software.
- the programs constituting the software are installed in a computer.
- the computer includes a microcomputer incorporated in dedicated hardware, and a general-purpose personal computer, for example, that can execute various functions by installing various programs.
- Figure 8 is a block diagram showing an example of the hardware configuration of a computer serving as information processing device 1.
- Computer 100 has a CPU (Central Processing Unit) 101, ROM (Read Only Memory) 102, and RAM (Random Access Memory) 103.
- CPU 101, ROM 102, and RAM 103 are interconnected by a bus 104.
- an input/output interface 105 Further connected to the bus 104 is an input/output interface 105. Connected to the input/output interface 105 are an input unit 106, an output unit 107, a storage unit 108, a communication unit 109, and a drive 110.
- the input unit 106 consists of a keyboard, mouse, microphone, touch panel, input terminals, etc.
- the output unit 107 consists of a display, speakers, output terminals, etc.
- the storage unit 108 consists of a hard disk, SSD (Solid State Drive), RAM disk, non-volatile memory, etc.
- the communication unit 109 consists of a network interface, etc.
- the drive 110 drives removable media 111 such as a magnetic disk, optical disk, magneto-optical disk, or semiconductor memory.
- the CPU 101 performs the above-described series of processes by, for example, loading a program stored in the storage unit 108 into the RAM 103 via the input/output interface 105 and bus 104 and executing it.
- the RAM 103 also stores data necessary for the CPU 101 to execute various processes, as appropriate.
- the program executed by the CPU 101 of the computer 100 can be provided by being recorded on removable media 111, such as package media.
- the program can also be provided via wired or wireless transmission media, such as a local area network, the Internet, or digital satellite broadcasting.
- the program can be installed in the storage unit 108 via the input/output interface 105 by inserting the removable media 111 into the drive 110.
- the program can also be received by the communication unit 109 via a wired or wireless transmission medium and installed in the storage unit 108.
- the program can be pre-installed in the ROM 102 or storage unit 108.
- FIG. 9 is a block diagram illustrating a configuration example of an information processing system according to the second embodiment of the present disclosure.
- the information processing system shown in FIG. 9 is a system that uses the learning model learned by the information processing device 1 in FIG. 1, and is composed of the information processing device 1 and an imaging device 300.
- the imaging device 300 is composed of a digital camera, an imaging sensor such as a CMOS image sensor or CCD, or an imaging module.
- the imaging device 300 has an imaging unit 321, a signal processing unit 322, and a memory unit 323, and the signal processing unit 322 has a parallax calculation unit 341 and an inference unit 342.
- the information processing device 1 uses the learning data supplied from the error assignment unit 23 to learn a learning model that estimates dense depth information from sparse depth information.
- the information processing device 1 outputs the parameters of the learning model as the learning result to the imaging device 300.
- the parameters of the learning model supplied from the information processing device 1 are stored in the storage unit 323 of the imaging device 300.
- the imaging unit 321 is configured as a stereo camera having a first imaging element that generates an image for the right eye (right eye image) and a second imaging element that generates an image for the left eye (left eye image). In this case, the imaging unit 321 generates a right eye image and a left eye image and outputs them to the parallax calculation unit 341. Also, if the imaging device 300 is an image sensor, for example, the imaging unit 321 is configured as a pixel array in which pixels with a dual pixel structure, in which two photodiodes are aligned in the left-right direction, are arranged two-dimensionally in a matrix. In this case, the imaging unit 321 outputs the signals of each of the two photodiodes in the pixel to the parallax calculation unit 341 as a phase difference signal.
- the disparity calculation unit 341 calculates the disparity or depth value and reliability for each pixel from the right-eye image and left-eye image supplied from the imaging unit 321.
- the disparity calculation unit 341 generates sparse depth information consisting only of the disparity or depth values of highly reliable pixels, in other words, pixels with a reliability equal to or greater than a predetermined value, from the calculated disparity or depth values of each pixel, and outputs this to the inference unit 342.
- the disparity calculation unit 341 calculates the disparity or depth value and reliability for each pixel based on the phase difference signal supplied from the imaging unit 321, generates sparse depth information consisting only of highly reliable pixels, and outputs this to the inference unit 342.
- the inference unit 342 estimates and outputs dense depth information using a learning model that estimates dense depth information from the generated sparse depth information.
- the parameters of the learning model are acquired from the memory unit 323.
- the dense depth information may be output to an external device, the memory unit 323 within the imaging device 300, or a display (not shown).
- the signal processing unit 322 is composed of, for example, an FPGA (Field Programmable Gate Array), a DSP (Digital Signal Processor), a microprocessor, etc.
- the storage unit 323 is composed of, for example, an SSD (Solid State Drive), HDD (Hard Disk Drive), or non-volatile memory, and stores the parameters of the learning model supplied from the information processing device 1.
- the information processing device 1 and the imaging device 300 may send and receive data directly via wired communication compliant with standards such as HDMI (registered trademark) (High-Definition Multimedia Interface) or USB (Universal Serial Bus), or via short-range wireless communication such as Bluetooth (registered trademark) or NFC (Near Field Communication), or may send and receive data via a network line such as the Internet or a LAN (Local Area Network).
- the imaging device 300 may obtain, from the server device, the parameters of the learning model uploaded to the server device by the information processing device 1.
- the imaging device 300 configured as described above can generate and output high-resolution (high-density) and high-accuracy depth information using the learning model (parameters) generated by the information processing device 1.
- a configuration equivalent to the imaging device 300 can be incorporated into electronic devices with distance measurement capabilities, such as smartphones, tablets, mobile devices such as game consoles, and head-mounted displays with distance measurement capabilities. This allows electronic devices such as smartphones to generate and output high-resolution, high-precision depth information.
- the technology disclosed herein can be configured as a cloud computing system in which a single function is shared and processed collaboratively by multiple devices via a network.
- each step described in the above flowchart can be executed by a single device, or can be shared and executed by multiple devices. If a single step includes multiple processes, the multiple processes included in that single step can be executed by a single device, or can be shared and executed by multiple devices.
- a system refers to a collection of multiple components (devices, modules (parts), etc.), regardless of whether all of the components are contained in the same housing. Therefore, multiple devices housed in separate housings and connected via a network, and a single device with multiple modules housed in a single housing, are both systems.
- the technology of the present disclosure can employ the following configurations.
- an error modeling unit that generates an error modeling function that models an error distribution of the depth values or disparities included in the sparse depth information, based on sparse depth information in which depth values or disparities are stored in some pixels and correct depth information that is a correct value of the sparse depth information; an error assigning unit that generates a random error by using the error modeling function as an error assigning function, and generates new depth information including the random error.
- the error modeling unit generates the error modeling function for each predetermined parameter;
- (11) generating an error modeling function that models an error distribution of the depth values or disparities included in the sparse depth information from sparse depth information in which depth values or disparities are stored in some pixels and correct depth information that is a correct value of the sparse depth information; generating a random error using the error modeling function as an error assignment function, and generating new depth information including the random error.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Image Analysis (AREA)
Abstract
本開示は、効率的に誤差を付与した学習用画像を生成することができるようにする情報処理装置および情報処理方法に関する。 情報処理装置は、一部の画素にデプス値または視差が格納されている疎なデプス情報とその正解値である正解デプス情報とから、疎なデプス情報に含まれるデプス値または視差の誤差分布をモデリングした誤差モデリング関数を生成する誤差モデリング部と、誤差モデリング関数を誤差付与関数として用いてランダムな誤差を発生させ、ランダムな誤差を含む新規デプス情報を生成する誤差付与部とを備える。本開示の技術は、例えば、学習データを用いて学習モデルの学習を行う情報処理装置等に適用できる。
Description
本開示は、情報処理装置および情報処理方法に関し、特に、効率的に誤差を付与した学習用画像を生成することができるようにした情報処理装置および情報処理方法に関する。
機械学習を用いたデプス推定において、例えば、左右2枚のステレオ画像(RGB画像)を学習モデルの入力として学習させると、ネットワーク規模が大きくなるため効率が悪い。また学習結果がステレオ画像のテクスチャに引っ張られることも多い。
そこで例えば、疎なデプス情報から密なデプス情報を推定する学習モデルを生成することにより、疎なデプス情報から密なデプス情報を生成するようにしたものがある(例えば、特許文献1参照)。
学習モデルの学習では、ノイズ耐性をあげるためRGB画像にノイズを付与して学習用画像のオーグメンテーション(データ拡張)を行うことが多い。特許文献2には、正解デプスマップとノイズありデプスマップから、ノイズ付加関数を学習する手法が開示されている。
しかしながら、機械学習を用いたデプス推定などにおいては、RGB画像のノイズと正解のデプス情報などとの関係性が不明瞭であり、どのようなオーグメンテーションをすれば良いのか難しい。
本開示は、このような状況に鑑みてなされたものであり、効率的に誤差を付与した学習用画像を生成することができるようにするものである。
本開示の一側面の情報処理装置は、
一部の画素にデプス値または視差が格納されている疎なデプス情報とその正解値である正解デプス情報とから、前記疎なデプス情報に含まれる前記デプス値または視差の誤差分布をモデリングした誤差モデリング関数を生成する誤差モデリング部と、
前記誤差モデリング関数を誤差付与関数として用いてランダムな誤差を発生させ、前記ランダムな誤差を含む新規デプス情報を生成する誤差付与部と
を備える。
一部の画素にデプス値または視差が格納されている疎なデプス情報とその正解値である正解デプス情報とから、前記疎なデプス情報に含まれる前記デプス値または視差の誤差分布をモデリングした誤差モデリング関数を生成する誤差モデリング部と、
前記誤差モデリング関数を誤差付与関数として用いてランダムな誤差を発生させ、前記ランダムな誤差を含む新規デプス情報を生成する誤差付与部と
を備える。
本開示の一側面の情報処理方法は、
一部の画素にデプス値または視差が格納されている疎なデプス情報とその正解値である正解デプス情報とから、前記疎なデプス情報に含まれる前記デプス値または視差の誤差分布をモデリングした誤差モデリング関数を生成することと、
前記誤差モデリング関数を誤差付与関数として用いてランダムな誤差を発生させ、前記ランダムな誤差を含む新規デプス情報を生成することと
を含む。
一部の画素にデプス値または視差が格納されている疎なデプス情報とその正解値である正解デプス情報とから、前記疎なデプス情報に含まれる前記デプス値または視差の誤差分布をモデリングした誤差モデリング関数を生成することと、
前記誤差モデリング関数を誤差付与関数として用いてランダムな誤差を発生させ、前記ランダムな誤差を含む新規デプス情報を生成することと
を含む。
本開示の一側面においては、一部の画素にデプス値または視差が格納されている疎なデプス情報とその正解値である正解デプス情報とから、前記疎なデプス情報に含まれる前記デプス値または視差の誤差分布をモデリングした誤差モデリング関数が生成され、前記誤差モデリング関数を誤差付与関数として用いてランダムな誤差が発生され、前記ランダムな誤差を含む新規デプス情報が生成される。
なお、本開示の一側面の情報処理装置は、コンピュータにプログラムを実行させることにより実現することができる。コンピュータに実行させるプログラムは、伝送媒体を介して伝送することにより、又は、記録媒体に記録して、提供することができる。
情報処理装置は、独立した装置であっても良いし、1つの装置を構成している内部ブロックであっても良い。
以下、添付図面を参照しながら、本開示の技術を実施するための形態(以下、実施の形態という)について説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。説明は以下の順序で行う。
1.第1実施の形態の構成例
2.学習データ生成処理の詳細
3.コンピュータ構成例
4.第2実施の形態の構成例
1.第1実施の形態の構成例
2.学習データ生成処理の詳細
3.コンピュータ構成例
4.第2実施の形態の構成例
<1.第1実施の形態の構成例>
図1は、本開示の第1実施の形態である情報処理装置の構成例を示している。
図1は、本開示の第1実施の形態である情報処理装置の構成例を示している。
図1の情報処理装置1は、疎なデプス情報から密なデプス情報を推定する学習モデルを学習する処理を行う装置である。学習モデルの学習とは、より厳密には、学習モデルとしてのDNN(Deep Neural Network)のパラメータを求める処理である。
情報処理装置1は、学習画像入力部21、誤差モデリング部22、誤差付与部23、及び、学習部24を有する。
学習画像入力部21は、外部から入力された学習データを受け付け、誤差モデリング部22及び誤差付与部23へ出力する。以下では、学習画像入力部21に入力された学習データを、後述するデータ拡張処理により生成された学習データ(拡張学習データ)と区別して、入力学習データとも称する。
学習画像入力部21に入力される学習データは、視差画像またはデプス画像で構成されるデプス情報と、その正解値(Ground Truth)である正解デプス情報との組を複数有するデータである。視差画像は、ステレオ画像である右側RGB画像と左側RGB画像とから計算された視差が各画素の画素値として格納された画像であり、デプス画像は、視差から計算されたデプス値が各画素の画素値として格納された画像である。ただし、学習画像入力部21に入力されるデプス情報は、右側RGB画像及び左側RGB画像と同一の解像度を有するが、一部の画素にのみデプス値または視差が格納されている疎なデプス情報である。具体的には、計算された視差またはデプス値の信頼度が所定値以上である、信頼度が高い視差またはデプス値については画素値として格納され、信頼度が低い画素については所定の画素値(例えば、ゼロ)が格納されている。なお、本実施の形態では、信頼度が低いとして所定の画素値が格納されている画素を、便宜上、画素値が格納されていない画素と称する。
学習画像入力部21は、疎なデプス情報と正解デプス情報の入力を受け付け、誤差モデリング部22及び誤差付与部23へ出力する。あるいはまた、学習画像入力部21は、右側RGB画像及び左側RGB画像と正解デプス情報の入力を受け付け、自身でデプス値または視差と信頼度とを計算して疎なデプス情報を生成し、正解デプス情報とともに、誤差モデリング部22及び誤差付与部23へ出力してもよい。あるいはまた、信頼度の低い画素を含む全ての画素にデプス値または視差が格納されたデプス情報と正解デプス情報が学習画像入力部21に入力され、学習画像入力部21が、信頼度に基づいて疎なデプス情報を生成し、疎なデプス情報と正解デプス情報との組からなる学習データを、誤差モデリング部22及び誤差付与部23へ出力してもよい。デプス値または視差と信頼度の計算手法には公知の手法を採用することができる。例えば、ブロックマッチングを用いてデプス値または視差を計算する手法などがある。信頼度は、一般に、物体のエッジ領域などで高くなり、平坦な領域などでは低くなる。
誤差モデリング部22は、学習画像入力部21から供給される入力学習データを用いて、疎なデプス情報に含まれるデプス値または視差の誤差を解析する。誤差モデリング部22は、誤差の解析結果として、デプス値または視差の誤差分布をモデリングした誤差モデリング関数を生成する。誤差モデリング部22は、生成した誤差モデリング関数と、その誤差モデリング関数に用いられるパラメータを、誤差付与部23へ出力する。
誤差付与部23は、学習画像入力部21から供給される入力学習データと、誤差モデリング部22からの誤差モデリング関数とを用いてオーグメンテーション(データ拡張)を行う。より具体的には、誤差付与部23は、誤差モデリング部22で生成された誤差モデリング関数を、データ拡張の際に誤差を付与する誤差付与関数として用いてランダムな誤差を発生させる。そして、誤差付与部23は、学習画像入力部21から供給された入力学習データの正解デプス情報に、生成した誤差を付与することにより、ランダムな誤差を含む新たなデプス情報(以下、新規デプス情報と称する。)を生成する。これにより、新規デプス情報と正解デプス情報との組が生成される。ここで生成された新規デプス情報と正解デプス情報との複数の組を、入力学習データと区別して、拡張学習データと称する。なお、新規デプス情報も、信頼度の高い画素にのみデプス値または視差が格納された疎なデプス情報となる。誤差付与部23は、入力学習データと拡張学習データとを含む学習データを、学習部24へ出力する。
学習部24は、誤差付与部23から供給される学習データを用いて、疎なデプス情報から密なデプス情報を推定する学習モデルを学習する。学習モデルは、例えばCNN(畳み込みニューラルネットワーク)を用いることができるが、その他のモデルでもよい。また、学習モデルの学習方法についても任意の手法を採用することができる。例えば、疎なデプス情報から密なデプス情報を推定する学習モデルの学習として、先行技術文献の特許文献1で開示された手法を採用してもよい。
学習部24は、右側RGB画像と左側RGB画像が学習画像入力部21に入力されていた場合には、右側RGB画像と左側RGB画像を学習の入力データとして加えてもよい。またデプス情報の信頼度を学習の入力データとして加えてもよい。
以上のように、情報処理装置1は、入力学習データである疎なデプス情報と正解デプス情報とから、誤差モデリング部22で生成された誤差モデリング関数を誤差付与関数として用いてデータ拡張することにより、新規デプス情報と正解デプス情報とからなる拡張学習データを生成する。そして、情報処理装置1は、入力学習データと拡張学習データを用いて、疎なデプス情報から密なデプス情報を推定する学習モデルを学習する。情報処理装置1は、少量の学習データセットから誤差の分布を解析し、最適な誤差分布をモデリングすることで効率的に誤差を付与して大量の学習データセットを生成することができ、効率的な学習を行うことができる。
<2.学習データ生成処理の詳細>
以下、情報処理装置1が行う処理の詳細を説明する。
以下、情報処理装置1が行う処理の詳細を説明する。
図2は、学習画像入力部21へ入力される入力学習データを説明する図である。
学習画像入力部21へ入力される学習データは、例えば、図2に示されるように、疎なデプス情報32と、その正解値(Ground Truth)である正解デプス情報33との組を複数有するデータで構成される。疎なデプス情報32は、ステレオ画像である右側RGB画像31Rと左側RGB画像31Lとから生成される。学習画像入力部21が、右側RGB画像31Rと左側RGB画像31Lとから、疎なデプス情報32を生成してもよい。図2に示される疎なデプス情報32において黒色で表された画素は、信頼度が低い画素であって、画素値が格納されていない画素を表す。
図2に示される右側RGB画像31Rと左側RGB画像31Lは、<URL:https://github.com/abhijithpunnappurath/dual-pixel-defocus-disparity?tab=readme-ov-file>の「Dataset」から取得したデータである。
図3は、誤差モデリング部22の処理を説明する図である。
誤差モデリング部22は、疎なデプス情報32と正解デプス情報33の組から誤差を計算し、誤差マップ34を生成する。誤差モデリング部22は、疎なデプス情報32の画素値が格納されている画素についてのみ、正解デプス情報33との差分を計算し、誤差マップ34を生成する。図3の例では、疎なデプス情報32-1と正解デプス情報33-1の組から、誤差マップ34-1が生成されている。疎なデプス情報32-2と正解デプス情報33-2の組から、誤差マップ34-2が生成されている。疎なデプス情報32-3と正解デプス情報33-3の組から、誤差マップ34-3が生成されている。同様に、学習画像入力部21から供給された全ての疎なデプス情報32と正解デプス情報33の組について誤差マップ34が生成される。
誤差モデリング部22は、生成された複数の誤差マップ34(誤差マップ34-1、34-2、34-3、・・・)を用いて、誤差分布をモデリングした誤差モデリング関数を生成する。まず、誤差モデリング部22は、複数の誤差マップ34を用いて、所定のパラメータ毎に所定の誤差分布を仮定して標準偏差を計算し、正解距離と誤差分布の標準偏差との関係をまとめる。
図4は、パラメータを焦点距離として、複数の誤差マップ34を用いて、焦点距離毎に正解距離と誤差の標準偏差との関係をまとめた図である。図4においてfdは焦点距離を表し、図4は、fd=1000[mm], fd=1250[mm], fd=2000[mm], fd=2500[mm], fd=5000[mm], fd=7500[mm], fd=10000[mm]の7種類について、正解距離と誤差の標準偏差との関係をまとめた図である。図4の横軸は、正解距離[mm]を表し、縦軸は、誤差分布として仮定した所定の分布の標準偏差を表す。仮定する誤差分布としては、例えば、ガウス分布やラプラス分布などを採用することができる。
次に、誤差モデリング部22は、誤差分布をモデリングした誤差モデリング関数を生成する。
図5は、fd=1.0[m], fd=1.25[m], fd=2.0[m], fd=2.5[m], fd=5[m], fd=10[m]の6種類の焦点距離毎に、誤差分布をモデリングした誤差モデリング関数yfを生成し、図4で示した誤差データ上に重ねた図である。なお、図4では横軸zの正解距離の単位が[mm]で表されていたが、図5では[m]で表されている。図5の縦軸yは、誤差分布として仮定した所定の分布の標準偏差を表す。
誤差モデリング関数yfは、例えば、特許文献2に開示された手法を用いて生成することができる。あるいはまた、PhySO(Physical Symbolic Optimization)と呼ばれる関数同定処理により誤差モデリング関数yfを求めてもよい。PhySOは、(x, y)のデータが与えられたときに、y=f(x)に適合する自由形式の記号的解析関数を推論するプログラムであり、物理的に不可能な解を排除し、自由度を制限するので性能が良い。PhySOについては、“https://github.com/WassimTenachi/PhySO”や“https://arxiv.org/pdf/2303.03192.pdf”などに開示されている。
例えば、図5に示される焦点距離毎の誤差の標準偏差を表す誤差モデリング関数yfとして、以下の式(1)が生成された。式(1)において、C1,C2,C3は所定の定数であり、fは焦点距離(fd)を表す固定値である。zは、誤差モデリング関数yfの変数であり、正解距離を表す。
最後に、誤差モデリング部22は、生成した誤差モデリング関数yfと、その誤差モデリング関数yfに用いたパラメータを、誤差付与部23へ出力する。図4,図5の例では、焦点距離毎の式(1)の誤差モデリング関数yfと、誤差分布をまとめたパラメータである焦点距離の値が、誤差付与部23へ出力される。
上述した例では、誤差付与部23が誤差を付与する誤差付与関数として、焦点距離を誤差分布のパラメータとする誤差モデリング関数を求めたが、焦点距離以外のデータを誤差分布のパラメータとする誤差モデリング関数を求めてもよい。誤差分布をまとめるパラメータには、例えば、光学系の設定値や、センサの設定値などを採用することができる。誤差分布のパラメータとして取り得る光学系の設定値の例としては、上述の焦点距離の他、例えば、f値、レンズ口径などが挙げられる。誤差分布のパラメータとして取り得るセンサの設定値の例としては、撮像センサの画素ピッチまたは画素サイズ、感度特性、分光特性などが挙げられる。誤差モデリング関数は、式(1)のように1つのパラメータを用いた関数でもよいし、2つ以上のパラメータを用いた関数でもよい。
<誤差モデリング処理>
次に、図6のフローチャートを参照して、誤差モデリング部22による誤差モデリング処理について説明する。この処理は、例えば、疎なデプス情報と正解デプス情報の組を複数有する入力学習データが、学習画像入力部21から供給されたとき開始される。
次に、図6のフローチャートを参照して、誤差モデリング部22による誤差モデリング処理について説明する。この処理は、例えば、疎なデプス情報と正解デプス情報の組を複数有する入力学習データが、学習画像入力部21から供給されたとき開始される。
初めに、ステップS1において、誤差モデリング部22は、画素値が格納されている疎なデプス情報の各画素について正解デプス情報との差分を計算し、誤差マップを生成する。疎なデプス情報と正解デプス情報の組それぞれについて誤差マップを生成することにより、複数の誤差マップが生成される。
ステップS2において、誤差モデリング部22は、生成した複数の誤差マップを用いて、所定のパラメータ毎に所定の誤差分布を仮定して標準偏差を計算し、正解距離と誤差分布の標準偏差との関係をまとめる。
ステップS3において、誤差モデリング部22は、誤差分布をモデリングした誤差モデリング関数を生成する。
ステップS4において、誤差モデリング部22は、生成した誤差モデリング関数と、その誤差モデリング関数をまとめたパラメータを、誤差付与部23へ出力して、誤差モデリング処理を終了する。
<データ拡張処理>
次に、図7のフローチャートを参照して、誤差モデリング部22で生成された誤差モデリング関数を用いて学習データを増やすデータ拡張処理を説明する。この処理は、例えば、誤差モデリング部22から誤差付与部23へ、誤差モデリング関数とパラメータが供給されたとき開始される。図7の処理では、焦点距離をパラメータとする式(1)の誤差モデリング関数が誤差モデリング部22から供給されたとして説明する。
次に、図7のフローチャートを参照して、誤差モデリング部22で生成された誤差モデリング関数を用いて学習データを増やすデータ拡張処理を説明する。この処理は、例えば、誤差モデリング部22から誤差付与部23へ、誤差モデリング関数とパラメータが供給されたとき開始される。図7の処理では、焦点距離をパラメータとする式(1)の誤差モデリング関数が誤差モデリング部22から供給されたとして説明する。
初めに、ステップS21において、誤差付与部23は、学習画像入力部21から供給された入力学習データである、疎なデプス情報と正解デプス情報の複数の組のなかから、所定の1つの組を選択する。
ステップS22において、誤差付与部23は、選択した組の疎なデプス情報において画素値が格納された所定の画素を注目画素とする。
ステップS23において、誤差付与部23は、注目画素の正解距離を正解デプス情報から取得する。
ステップS24において、誤差付与部23は、パラメータである焦点距離fを、例えばfd=1.0[m], fd=1.25[m], fd=2.0[m], fd=2.5[m], fd=5[m], fd=10[m]の6種類のなかからランダムに選択し、選択した焦点距離の誤差モデリング関数yfの変数zに、注目画素の正解距離を代入して、誤差付与関数yfの標準偏差を算出する。なお、ユースケースとして正解デプス情報が取り得る焦点距離が、例えば、fd=1.0~2.5[m]の範囲で与えられている場合には、fd=1.0~2.5[m]の範囲内からランダムに焦点距離fを選択し、誤差付与関数yfの標準偏差を算出することができる。
ステップS25において、誤差付与部23は、注目画素の正解距離を平均μ、誤差付与関数yfの標準偏差を標準偏差σとする確率分布(μ、σ2)に従ってランダムな誤差を含む画素値を算出し、新規デプス情報の注目画素の画素値に設定する。確率分布(μ、σ2)は、誤差分布として仮定したガウス分布やラプラス分布などの確率分布である。
ステップS26において、誤差付与部23は、選択した疎なデプス情報において画素値が格納された全ての画素を注目画素としたかを判定する。ステップS26で、まだ全ての画素を注目画素としていないと判定された場合、処理はステップS27へ進み、誤差付与部23は、疎なデプス情報において次の画素を注目画素に設定する。そして、処理がステップS23へ戻され、上述したステップS23~S26の処理が繰り返される。
ステップS26で全ての画素を注目画素としたと判定された場合は、一つの新規デプス情報が完成したことを意味する。この新規デプス情報も、選択した疎なデプス情報の画素値が格納された画素についてランダムな誤差を含む画素値を格納した画像となるので、疎なデプス情報である。ステップS26で、全ての画素を注目画素としたと判定された場合、処理はステップS28へ進み、誤差付与部23は、生成した新規デプス情報と、対応する正規デプス情報の組を、内部メモリ等の所定の記憶部へ記憶する。
ステップS29において、誤差付与部23は、選択した疎なデプス情報に対して、規定の枚数だけ新規デプス情報を生成したかを判定する。1枚の疎なデプス情報に対して何枚の新規デプス情報を生成するかが予め決定されている。例えば、1枚の疎なデプス情報に対して10枚の新規デプス情報を生成する設定がなされているとすると、誤差付与部23は、10枚の新規デプス情報を生成したか否かを判定する。
ステップS29で、選択した疎なデプス情報に対して、規定の枚数の新規デプス情報をまだ生成していないと判定された場合、処理はステップS22へ戻され、上述したステップS22~S29の処理が繰り返される。ステップS22~S29の処理により、1枚の新規デプス情報がさらに生成される。
そして、ステップS29で、規定の枚数の新規デプス情報を生成したと判定された場合、処理はステップS30へ進み、誤差付与部23は、学習画像入力部21から供給された入力学習データである、疎なデプス情報と正解デプス情報の全ての組について新規デプス情報を生成したかを判定する。
ステップS30で、学習画像入力部21から供給された疎なデプス情報と正解デプス情報の全ての組について新規デプス情報をまだ生成していないと判定された場合、処理はステップS21へ戻され、上述したステップS21~S30の処理が繰り返される。ステップS21~S30の処理により、疎なデプス情報と正解デプス情報の別の組が選択され、規定の枚数の新規デプス情報がさらに生成される。
一方、ステップS30で、学習画像入力部21から供給された疎なデプス情報と正解デプス情報の全ての組について新規デプス情報を生成したと判定された場合、処理はステップS31へ進み、誤差付与部23は、新たに生成した学習データ(拡張学習データ)と、学習画像入力部21から供給された学習データ(入力学習データ)を、学習部24へ出力して、データ拡張処理を終了する。
誤差付与部23によるデータ拡張処理は以上のように実行される。
誤差モデリング処理において、誤差モデルを、例えば、第1のパラメータを用いた第1の誤差モデリング関数と、第2のパラメータを用いた第2の誤差モデリング関数の2つの誤差モデリング関数で定式化した場合、誤差付与部23は、第1の誤差モデリング関数を用いた第1の誤差付与関数による第1の誤差と、第2の誤差モデリング関数を用いた第2の誤差付与関数による第2の誤差とを統合した誤差を、新規デプス情報の注目画素の画素値に設定する。第1の誤差と第2の誤差とを統合した誤差は、例えば、第1の誤差と第2の誤差の平均値や最大値とすることができる。
以上の情報処理装置1によれば、学習画像入力部21から供給される入力学習データを用いてオーグメンテーション(データ拡張)を行い、拡張学習データを生成することができる。情報処理装置1の誤差モデリング部22は、学習画像入力部21から供給された入力学習データの疎なデプス情報に含まれる誤差を解析して誤差分布をモデリングした誤差モデリング関数を生成する。情報処理装置1の誤差付与部23は、正解デプス情報に効率的に誤差を付与した新たなデプス情報である新規デプス情報を生成する。したがって、情報処理装置1は、効率的に誤差を付与した学習用画像を生成することができる。情報処理装置1の学習部24は、生成された学習用画像を用いて、ノイズに頑強な学習モデル(ディープニューラルネットワークモデル)を生成することができる。視差またはデプス値であるデプス情報を入力とする学習部24の学習モデルは、右側RGB画像と左側RGB画像を入力とする学習モデルと比較して、ネットワーク規模を小さくすることが可能である。
<3.コンピュータ構成例>
情報処理装置1が実行する一連の処理は、ハードウエアにより実行することもできるし、ソフトウエアにより実行することもできる。一連の処理をソフトウエアにより実行する場合には、そのソフトウエアを構成するプログラムが、コンピュータにインストールされる。ここで、コンピュータには、専用のハードウエアに組み込まれているマイクロコンピュータや、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどが含まれる。
情報処理装置1が実行する一連の処理は、ハードウエアにより実行することもできるし、ソフトウエアにより実行することもできる。一連の処理をソフトウエアにより実行する場合には、そのソフトウエアを構成するプログラムが、コンピュータにインストールされる。ここで、コンピュータには、専用のハードウエアに組み込まれているマイクロコンピュータや、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどが含まれる。
図8は、情報処理装置1としてのコンピュータのハードウエア構成例を示すブロック図である。
コンピュータ100は、CPU(Central Processing Unit)101,ROM(Read Only Memory)102,RAM(Random Access Memory)103を有する。CPU101、ROM102、及びRAM103は、バス104により相互に接続されている。
バス104には、さらに、入出力インタフェース105が接続されている。入出力インタフェース105には、入力部106、出力部107、記憶部108、通信部109、及びドライブ110が接続されている。
入力部106は、キーボード、マウス、マイクロホン、タッチパネル、入力端子などよりなる。出力部107は、ディスプレイ、スピーカ、出力端子などよりなる。記憶部108は、ハードディスク、SSD(Solid State Drive)、RAMディスク、不揮発性のメモリなどよりなる。通信部109は、ネットワークインタフェースなどよりなる。ドライブ110は、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブルメディア111を駆動する。
以上のように構成されるコンピュータ100では、CPU101が、例えば、記憶部108に記憶されているプログラムを、入出力インタフェース105及びバス104を介して、RAM103にロードして実行することにより、上述した一連の処理が行われる。RAM103にはまた、CPU101が各種の処理を実行する上において必要なデータなども適宜記憶される。
コンピュータ100のCPU101が実行するプログラムは、例えば、パッケージメディア等としてのリムーバブルメディア111に記録して提供することができる。また、プログラムは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の伝送媒体を介して提供することができる。
コンピュータ100において、プログラムは、リムーバブルメディア111をドライブ110に装着することにより、入出力インタフェース105を介して、記憶部108にインストールすることができる。また、プログラムは、有線または無線の伝送媒体を介して、通信部109で受信し、記憶部108にインストールすることができる。その他、プログラムは、ROM102や記憶部108に、あらかじめインストールしておくことができる。
<4.第2実施の形態の構成例>
図9は、本開示の第2実施の形態である情報処理システムの構成例を示すブロック図である。
図9は、本開示の第2実施の形態である情報処理システムの構成例を示すブロック図である。
図9に示される情報処理システムは、図1の情報処理装置1で学習した学習モデルを利用するシステムであり、情報処理装置1と撮像装置300とで構成される。
撮像装置300は、デジタルカメラや、CMOSイメージセンサ、CCD等の撮像センサ、または、撮像モジュールなどで構成される。撮像装置300は、撮像部321、信号処理部322、及び、記憶部323を有し、信号処理部322は、視差計算部341と、推論部342を有する。
情報処理装置1は、上述した通り、誤差付与部23から供給される学習データを用いて、疎なデプス情報から密なデプス情報を推定する学習モデルを学習する。情報処理装置1は、学習結果としての学習モデルのパラメータを撮像装置300へ出力する。情報処理装置1から供給された学習モデルのパラメータは、撮像装置300の記憶部323へ記憶される。
撮像部321は、例えば撮像装置300がデジタルカメラの場合、右眼用の画像(右眼画像)を生成する第1の撮像素子と、左眼用の画像(左眼画像)を生成する第2の撮像素子とを有するステレオカメラで構成される。この場合、撮像部321は、右眼画像と左眼画像を生成して視差計算部341へ出力する。また例えば撮像装置300が撮像センサの場合、撮像部321は、2つのフォトダイオードが左右方向に並ぶデュアルピクセル構造の画素が行列状に2次元配置された画素アレイ等で構成される。この場合、撮像部321は、画素内の2つのフォトダイオードそれぞれの信号を位相差信号として視差計算部341へ出力する。
視差計算部341は、例えば撮像装置300がデジタルカメラの場合、撮像部321から供給される右眼画像と左眼画像から、視差またはデプス値と信頼度を画素毎に計算する。視差計算部341は、計算した各画素の視差またはデプス値のうち、信頼度の高い画素、換言すれば、信頼度が所定値以上である画素の視差またはデプス値のみで構成される疎なデプス情報を生成し、推論部342へ出力する。例えば撮像装置300が撮像センサの場合、視差計算部341は、撮像部321から供給される位相差信号に基づいて視差またはデプス値と信頼度を画素毎に計算し、信頼度の高い画素のみで構成される疎なデプス情報を生成し、推論部342へ出力する。
推論部342は、生成した疎なデプス情報から密なデプス情報を推定する学習モデルを用いて密なデプス情報を推定して出力する。学習モデルのパラメータは、記憶部323から取得される。密なデプス情報の出力先は、外部の装置でもよいし、撮像装置300内の記憶部323や不図示のディスプレイでもよい。信号処理部322は、例えば、FPGA(Field Programmable Gate Array)、DSP(Digital Signal Processor)、マイクロプロセッサ等で構成される。
記憶部323は、例えば、SSD(Solid State Drive)、HDD(Hard Disk Drive)、不揮発性のメモリなどで構成され、情報処理装置1から供給された学習モデルのパラメータを記憶する。情報処理装置1と撮像装置300は、HDMI(登録商標)(High-Definition Multimedia Interface)やUSB(Universal Serial Bus)等の規格に準拠した有線通信、Bluetooth(登録商標)、NFC(Near Field Communication)等の近距離無線通信等により直接、データを送受信してもよいし、インターネット、LAN(Local Area Network)等のネットワーク回線を介してデータを送受信してもよい。また、撮像装置300は、情報処理装置1からサーバ装置にアップロードされた学習モデルのパラメータを、サーバ装置から取得してもよい。
以上のように構成される撮像装置300は、情報処理装置1により生成された学習モデル(のパラメータ)を用いて、高解像度(高密度)及び高精度のデプス情報を生成して出力することができる。
撮像装置300と同等の構成を、測距機能を有する電子機器、例えば、測距機能を備えたスマートフォンやタブレット、ゲーム機等の携帯端末や、ヘッドマウントディスプレイなどに組み込むことが可能である。これにより、例えば、スマートフォン等の電子機器においても、高解像度及び高精度のデプス情報を生成して出力することができる。
本開示の実施の形態は、上述した実施の形態に限定されるものではなく、本開示の技術の要旨を逸脱しない範囲において種々の変更が可能である。
例えば、上述した複数の実施の形態の全てまたは一部を適宜組み合わせた形態を採用することができる。
例えば、本開示の技術は、1つの機能をネットワークを介して複数の装置で分担、共同して処理するクラウドコンピューティングの構成をとることができる。
また、上述のフローチャートで説明した各ステップは、1つの装置で実行する他、複数の装置で分担して実行することができる。1つのステップに複数の処理が含まれる場合には、その1つのステップに含まれる複数の処理は、1つの装置で実行する他、複数の装置で分担して実行することができる。
本明細書において、フローチャートに記述されたステップは、記載された順序に沿って時系列的に行われる場合はもちろん、必ずしも時系列的に処理されなくとも、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで実行されてもよい。
本明細書において、システムとは、複数の構成要素(装置、モジュール(部品)等)の集合を意味し、すべての構成要素が同一筐体中にあるか否かは問わない。したがって、別個の筐体に収納され、ネットワークを介して接続されている複数の装置、及び、1つの筐体の中に複数のモジュールが収納されている1つの装置は、いずれも、システムである。
本明細書に記載された効果はあくまで例示であって限定されるものではなく、本明細書に記載されたもの以外の効果があってもよい。
なお、本開示の技術は、以下の構成を採用することができる。
(1)
一部の画素にデプス値または視差が格納されている疎なデプス情報とその正解値である正解デプス情報とから、前記疎なデプス情報に含まれる前記デプス値または視差の誤差分布をモデリングした誤差モデリング関数を生成する誤差モデリング部と、
前記誤差モデリング関数を誤差付与関数として用いてランダムな誤差を発生させ、前記ランダムな誤差を含む新規デプス情報を生成する誤差付与部と
を備える情報処理装置。
(2)
前記誤差モデリング部は、前記疎なデプス情報と前記正解デプス情報とから誤差マップを生成し、前記誤差マップを用いて前記誤差モデリング関数を生成する
前記(1)に記載の情報処理装置。
(3)
前記誤差モデリング部は、前記誤差マップを用いて、所定のパラメータ毎に所定の誤差分布を仮定して標準偏差を計算し、前記誤差モデリング関数を生成する
前記(2)に記載の情報処理装置。
(4)
前記所定のパラメータには、光学系の設定値、または、センサの設定値が用いられる
前記(3)に記載の情報処理装置。
(5)
前記所定のパラメータには、焦点距離が用いられる
前記(3)~(4)のいずれかに記載の情報処理装置。
(6)
前記誤差モデリング関数は、正解距離と誤差の標準偏差との関係を表した関数である
前記(1)~(5)のいずれかに記載の情報処理装置。
(7)
前記誤差付与部は、前記正解デプス情報に前記ランダムな誤差を付与することにより、前記新規デプス情報を生成する
前記(1)~(6)のいずれかに記載の情報処理装置。
(8)
前記誤差付与部は、前記正解デプス情報の画素値を前記誤差付与関数に代入して前記誤差付与関数の値を算出し、前記正解デプス情報の画素値を平均、前記誤差付与関数の値を標準偏差とするランダムな誤差を発生させる
前記(1)~(7)のいずれかに記載の情報処理装置。
(9)
前記誤差モデリング部は、所定のパラメータ毎に、前記誤差モデリング関数を生成し、
前記誤差付与部は、前記正解デプス情報が取り得るパラメータの範囲内でランダムに選択したパラメータの前記誤差モデリング関数を前記誤差付与関数として用いてランダムな誤差を発生させ、前記ランダムな誤差を含む新規デプス情報を生成する
前記(1)~(8)のいずれかに記載の情報処理装置。
(10)
前記疎なデプス情報と、前記新規デプス情報と、前記正解デプス情報とを用いて、前記疎なデプス情報から密なデプス情報を推定する学習モデルを学習する学習部をさらに備える
前記(1)~(9)のいずれかに記載の情報処理装置。
(11)
一部の画素にデプス値または視差が格納されている疎なデプス情報とその正解値である正解デプス情報とから、前記疎なデプス情報に含まれる前記デプス値または視差の誤差分布をモデリングした誤差モデリング関数を生成することと、
前記誤差モデリング関数を誤差付与関数として用いてランダムな誤差を発生させ、前記ランダムな誤差を含む新規デプス情報を生成することと
を含む情報処理方法。
(1)
一部の画素にデプス値または視差が格納されている疎なデプス情報とその正解値である正解デプス情報とから、前記疎なデプス情報に含まれる前記デプス値または視差の誤差分布をモデリングした誤差モデリング関数を生成する誤差モデリング部と、
前記誤差モデリング関数を誤差付与関数として用いてランダムな誤差を発生させ、前記ランダムな誤差を含む新規デプス情報を生成する誤差付与部と
を備える情報処理装置。
(2)
前記誤差モデリング部は、前記疎なデプス情報と前記正解デプス情報とから誤差マップを生成し、前記誤差マップを用いて前記誤差モデリング関数を生成する
前記(1)に記載の情報処理装置。
(3)
前記誤差モデリング部は、前記誤差マップを用いて、所定のパラメータ毎に所定の誤差分布を仮定して標準偏差を計算し、前記誤差モデリング関数を生成する
前記(2)に記載の情報処理装置。
(4)
前記所定のパラメータには、光学系の設定値、または、センサの設定値が用いられる
前記(3)に記載の情報処理装置。
(5)
前記所定のパラメータには、焦点距離が用いられる
前記(3)~(4)のいずれかに記載の情報処理装置。
(6)
前記誤差モデリング関数は、正解距離と誤差の標準偏差との関係を表した関数である
前記(1)~(5)のいずれかに記載の情報処理装置。
(7)
前記誤差付与部は、前記正解デプス情報に前記ランダムな誤差を付与することにより、前記新規デプス情報を生成する
前記(1)~(6)のいずれかに記載の情報処理装置。
(8)
前記誤差付与部は、前記正解デプス情報の画素値を前記誤差付与関数に代入して前記誤差付与関数の値を算出し、前記正解デプス情報の画素値を平均、前記誤差付与関数の値を標準偏差とするランダムな誤差を発生させる
前記(1)~(7)のいずれかに記載の情報処理装置。
(9)
前記誤差モデリング部は、所定のパラメータ毎に、前記誤差モデリング関数を生成し、
前記誤差付与部は、前記正解デプス情報が取り得るパラメータの範囲内でランダムに選択したパラメータの前記誤差モデリング関数を前記誤差付与関数として用いてランダムな誤差を発生させ、前記ランダムな誤差を含む新規デプス情報を生成する
前記(1)~(8)のいずれかに記載の情報処理装置。
(10)
前記疎なデプス情報と、前記新規デプス情報と、前記正解デプス情報とを用いて、前記疎なデプス情報から密なデプス情報を推定する学習モデルを学習する学習部をさらに備える
前記(1)~(9)のいずれかに記載の情報処理装置。
(11)
一部の画素にデプス値または視差が格納されている疎なデプス情報とその正解値である正解デプス情報とから、前記疎なデプス情報に含まれる前記デプス値または視差の誤差分布をモデリングした誤差モデリング関数を生成することと、
前記誤差モデリング関数を誤差付与関数として用いてランダムな誤差を発生させ、前記ランダムな誤差を含む新規デプス情報を生成することと
を含む情報処理方法。
1 情報処理装置, 21 学習画像入力部, 22 誤差モデリング部, 23 誤差付与部, 24 学習部, 100 コンピュータ, 101 CPU, 102 ROM, 103 RAM, 106 入力部, 107 出力部, 108 記憶部, 109 通信部, 110 ドライブ, 111 リムーバブルメディア, 300 撮像装置, 321 撮像部, 322 信号処理部, 323 記憶部, 341 視差計算部, 342 推論部
Claims (11)
- 一部の画素にデプス値または視差が格納されている疎なデプス情報とその正解値である正解デプス情報とから、前記疎なデプス情報に含まれる前記デプス値または視差の誤差分布をモデリングした誤差モデリング関数を生成する誤差モデリング部と、
前記誤差モデリング関数を誤差付与関数として用いてランダムな誤差を発生させ、前記ランダムな誤差を含む新規デプス情報を生成する誤差付与部と
を備える情報処理装置。 - 前記誤差モデリング部は、前記疎なデプス情報と前記正解デプス情報とから誤差マップを生成し、前記誤差マップを用いて前記誤差モデリング関数を生成する
請求項1に記載の情報処理装置。 - 前記誤差モデリング部は、前記誤差マップを用いて、所定のパラメータ毎に所定の誤差分布を仮定して標準偏差を計算し、前記誤差モデリング関数を生成する
請求項2に記載の情報処理装置。 - 前記所定のパラメータには、光学系の設定値、または、センサの設定値が用いられる
請求項3に記載の情報処理装置。 - 前記所定のパラメータには、焦点距離が用いられる
請求項3に記載の情報処理装置。 - 前記誤差モデリング関数は、正解距離と誤差の標準偏差との関係を表した関数である
請求項1に記載の情報処理装置。 - 前記誤差付与部は、前記正解デプス情報に前記ランダムな誤差を付与することにより、前記新規デプス情報を生成する
請求項1に記載の情報処理装置。 - 前記誤差付与部は、前記正解デプス情報の画素値を前記誤差付与関数に代入して前記誤差付与関数の値を算出し、前記正解デプス情報の画素値を平均、前記誤差付与関数の値を標準偏差とするランダムな誤差を発生させる
請求項1に記載の情報処理装置。 - 前記誤差モデリング部は、所定のパラメータ毎に、前記誤差モデリング関数を生成し、
前記誤差付与部は、前記正解デプス情報が取り得るパラメータの範囲内でランダムに選択したパラメータの前記誤差モデリング関数を前記誤差付与関数として用いてランダムな誤差を発生させ、前記ランダムな誤差を含む新規デプス情報を生成する
請求項1に記載の情報処理装置。 - 前記疎なデプス情報と、前記新規デプス情報と、前記正解デプス情報とを用いて、前記疎なデプス情報から密なデプス情報を推定する学習モデルを学習する学習部をさらに備える
請求項1に記載の情報処理装置。 - 一部の画素にデプス値または視差が格納されている疎なデプス情報とその正解値である正解デプス情報とから、前記疎なデプス情報に含まれる前記デプス値または視差の誤差分布をモデリングした誤差モデリング関数を生成することと、
前記誤差モデリング関数を誤差付与関数として用いてランダムな誤差を発生させ、前記ランダムな誤差を含む新規デプス情報を生成することと
を含む情報処理方法。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2024108597 | 2024-07-05 | ||
| JP2024-108597 | 2024-07-05 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2026009705A1 true WO2026009705A1 (ja) | 2026-01-08 |
Family
ID=98318430
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/JP2025/021890 Pending WO2026009705A1 (ja) | 2024-07-05 | 2025-06-18 | 情報処理装置および情報処理方法 |
Country Status (1)
| Country | Link |
|---|---|
| WO (1) | WO2026009705A1 (ja) |
Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN107423698A (zh) * | 2017-07-14 | 2017-12-01 | 华中科技大学 | 一种基于并联卷积神经网络的手势估计方法 |
| JP2018109976A (ja) * | 2016-12-28 | 2018-07-12 | ダッソー システムズDassault Systemes | 深度センサノイズ |
| JP2020123114A (ja) * | 2019-01-30 | 2020-08-13 | 日本電信電話株式会社 | 深度超解像装置、深度超解像方法、及びプログラム |
| JP2022074731A (ja) * | 2020-11-05 | 2022-05-18 | 株式会社東芝 | 情報処理装置、情報処理方法およびプログラム |
-
2025
- 2025-06-18 WO PCT/JP2025/021890 patent/WO2026009705A1/ja active Pending
Patent Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2018109976A (ja) * | 2016-12-28 | 2018-07-12 | ダッソー システムズDassault Systemes | 深度センサノイズ |
| CN107423698A (zh) * | 2017-07-14 | 2017-12-01 | 华中科技大学 | 一种基于并联卷积神经网络的手势估计方法 |
| JP2020123114A (ja) * | 2019-01-30 | 2020-08-13 | 日本電信電話株式会社 | 深度超解像装置、深度超解像方法、及びプログラム |
| JP2022074731A (ja) * | 2020-11-05 | 2022-05-18 | 株式会社東芝 | 情報処理装置、情報処理方法およびプログラム |
Non-Patent Citations (1)
| Title |
|---|
| LEE, SEONG-WHAN ; LI, STAN Z: "SAT 2015 18th International Conference, Austin, TX, USA, September 24-27, 2015", vol. 7585, 7 October 2012, SPRINGER , Berlin, Heidelberg , ISBN: 3540745491, article AMIRA BELHEDI;ADRIEN BARTOLI;STEVE BOURGEOIS;KAMEL HAMROUNI;PATRICK SAYD;VINCENT GAY-BELLILE: "Noise Modelling and Uncertainty Propagation for TOF Sensors", pages: 476 - 485, XP047019181, 032548 * |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN112750085B (zh) | 图像恢复方法和图像恢复设备 | |
| CN113269820B (zh) | 空间几何信息估计模型的生成方法和装置 | |
| US20200184668A1 (en) | Systems and methods for three-dimensional pose determination | |
| US20150193937A1 (en) | Method and apparatus for generating plenoptic depth maps | |
| US10545215B2 (en) | 4D camera tracking and optical stabilization | |
| CN108335322A (zh) | 深度估计方法和装置、电子设备、程序和介质 | |
| CN102547121B (zh) | 拍摄参数取得装置、拍摄参数取得方法 | |
| CN102609989A (zh) | 三维模型作成系统 | |
| US11501123B2 (en) | Method and apparatus for asynchronous data fusion, storage medium and electronic device | |
| US11132586B2 (en) | Rolling shutter rectification in images/videos using convolutional neural networks with applications to SFM/SLAM with rolling shutter images/videos | |
| CN116778091B (zh) | 基于路径聚合的深度学习多视角立体三维重建算法 | |
| WO2023086398A1 (en) | 3d rendering networks based on refractive neural radiance fields | |
| CN115115690B (zh) | 视频残差解码装置和关联方法 | |
| JP7124957B2 (ja) | 画像処理システム、推定装置、処理方法及びプログラム | |
| CN116310408B (zh) | 一种建立事件相机与帧相机数据关联的方法及装置 | |
| JP2018133064A (ja) | 画像処理装置、撮像装置、画像処理方法および画像処理プログラム | |
| CN117099019A (zh) | 信息处理装置 | |
| CN117557887A (zh) | 稀疏深度的深度完成训练方法以及相关设备 | |
| CN115700611A (zh) | 学习方法、存储介质以及图像处理装置 | |
| CN116128712B (zh) | 一种图像背景虚化方法、装置和设备 | |
| US20230128856A1 (en) | Image processing method, storage medium, image processing apparatus, manufacturing method of trained model, and image processing system | |
| CN118429748A (zh) | 一种基于端到端深度学习的图像深度解析方法 | |
| US20240070917A1 (en) | Method for self-calibration of at least one camera | |
| KR102551467B1 (ko) | 깊이 맵 이미지 생성 방법 및 그를 위한 컴퓨팅 장치 | |
| CN117911525A (zh) | 多模态多通路互补视觉数据标定方法和装置 |
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: 25832786 Country of ref document: EP Kind code of ref document: A1 |