WO2021186961A1 - 信号処理装置、信号処理方法 - Google Patents

信号処理装置、信号処理方法 Download PDF

Info

Publication number
WO2021186961A1
WO2021186961A1 PCT/JP2021/005068 JP2021005068W WO2021186961A1 WO 2021186961 A1 WO2021186961 A1 WO 2021186961A1 JP 2021005068 W JP2021005068 W JP 2021005068W WO 2021186961 A1 WO2021186961 A1 WO 2021186961A1
Authority
WO
WIPO (PCT)
Prior art keywords
feature amount
unit
image
control line
correction
Prior art date
Application number
PCT/JP2021/005068
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/910,355 priority Critical patent/US11985424B2/en
Priority to JP2022508136A priority patent/JPWO2021186961A1/ja
Priority to EP21772241.2A priority patent/EP4124017A4/en
Publication of WO2021186961A1 publication Critical patent/WO2021186961A1/ja

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/68Control of cameras or camera modules for stable pick-up of the scene, e.g. compensating for camera body vibrations
    • H04N23/682Vibration or motion blur correction
    • H04N23/683Vibration or motion blur correction performed by a processor, e.g. controlling the readout of an image memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/60Image enhancement or restoration using machine learning, e.g. neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/73Deblurring; Sharpening
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/68Control of cameras or camera modules for stable pick-up of the scene, e.g. compensating for camera body vibrations
    • H04N23/681Motion detection
    • H04N23/6812Motion detection based on additional sensors, e.g. acceleration sensors
    • 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/10016Video; Image sequence
    • 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/20081Training; Learning
    • 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/20084Artificial neural networks [ANN]
    • 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/20172Image enhancement details
    • G06T2207/20201Motion blur correction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30248Vehicle exterior or interior
    • G06T2207/30252Vehicle exterior; Vicinity of vehicle
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N25/00Circuitry of solid-state image sensors [SSIS]; Control thereof
    • H04N25/70SSIS architectures; Circuits associated therewith
    • H04N25/79Arrangements of circuitry being divided between different or multiple substrates, chips or circuit boards, e.g. stacked image sensors

Definitions

  • This technology relates to a signal processing device and its method, and more particularly to a technology for correcting an input signal from a sensor using AI (Artificial Intelligence).
  • AI Artificial Intelligence
  • motion sensors such as acceleration sensors and angular velocity sensors, and various sensors such as image sensors are widely used.
  • the detection signal may contain unnecessary components such as noise, and it may be required to remove them.
  • the motion sensor is used for the blur correction process (stabilization process) of the in-vehicle camera, if centrifugal force is generated due to the running of the vehicle, the centrifugal force component is included in the detection signal of the motion sensor while being mixed with the gravitational acceleration.
  • the centrifugal force component is an unnecessary component in the blur correction process and should be removed.
  • imaging noise various noises associated with imaging (hereinafter referred to as “imaging noise”) such as photon shot noise, dark current noise, and readout noise are superimposed on the image captured by the image sensor, but these imaging noises are used to improve the image quality. Should be removed.
  • imaging noise such as photon shot noise, dark current noise, and readout noise
  • Patent Document 1 can be mentioned as a related prior art.
  • the input signal from the sensor may be subjected to necessary correction processing such as removal processing of unnecessary components as described above.
  • This technology was made in consideration of such circumstances, and aims to improve the performance regarding the correction of the input signal from the sensor.
  • the signal processing device has a neural network, and the feature amount extraction unit learned to extract the feature amount for a specific event for the input signal from the sensor, and the feature amount extraction unit extract the feature amount. It is provided with a correction unit that corrects the input signal based on the feature amount.
  • the "feature amount" for a specific event is, for example, if the sensor is a motion sensor (motion sensor) for detecting the movement of an object such as an acceleration sensor or an angular velocity sensor, it is about centrifugal force and vibration as an effect.
  • the feature amount of the above can be mentioned.
  • the feature amount that represents what is centrifugal force it is a feature amount that represents what is centrifugal force, a feature amount that represents what vibration should be given to produce a sense of presence in the stabilization process of a camera, and the like.
  • the sensor is an image sensor
  • the feature amount of imaging noise feature amount representing what is imaging noise
  • the feature amount of focus feature amount representing what is focus
  • the like can be mentioned.
  • the feature amount as the centrifugal force can be extracted, by canceling the feature amount in the input signal, it is possible to realize a process of removing the adverse effect of the centrifugal force as the stabilization process, and it is possible to improve the stabilization performance.
  • the focus position (focus position) in the depth direction of the image can be adjusted by the image correction process using the feature amount. That is, the focus can be adjusted after shooting.
  • features such as centrifugal force and focus, which are difficult to express by mathematical formulas, are extracted and extracted like objects by learning using AI (Artificial Intelligence) technology.
  • AI Artificial Intelligence
  • the signal processing device may be configured to include an adjuster for adjusting the feature amount extracted by the feature amount extraction unit. This makes it possible to adjust the feature amount so that a better result can be obtained as a correction result of the input signal.
  • the sensor is a motion sensor that detects the motion of the image pickup device, and the image pickup is performed based on the input signal from the motion sensor corrected by the correction unit based on the feature amount. It is possible to have a configuration including a stabilization processing unit that performs stabilization processing on the captured image of the apparatus.
  • the stabilization process can be performed based on the motion detection signal from which the centrifugal force component is removed.
  • the feature amount of vibration as an effect is extracted as the feature amount
  • the signal processing device has a regulator for adjusting the feature amount extracted by the feature amount extraction unit and a neural network, and has the performance of the stabilization process based on the input signal from the motion sensor.
  • the regulator includes a score calculation unit learned to calculate an evaluation score representing the above, and the adjuster uses the correction unit to correct the input signal based on the evaluation score calculated by the score calculation unit. It is possible to have a configuration in which the feature amount is adjusted. By calculating the evaluation score based on the input signal from the motion sensor as described above, the amount of calculation can be reduced as compared with the case of calculating the evaluation score based on the image after the stabilization process.
  • the stabilization processing unit has a plurality of lattice points arranged in the horizontal direction and the vertical direction in the output coordinate system, which is the coordinate system of the output image, for each of the lattice points. It is possible to generate a grid point mesh to which motion information obtained from the input signal is associated with, and perform the stabilization process based on the motion information for each grid point in the grid point mesh. This makes it possible to improve the accuracy of the reference coordinates at each pixel position of the output image.
  • the delay amount generated in the correction processing of the input signal performed by the correction unit based on the feature amount is calculated, and the phase adjustment of the input signal is performed based on the delay amount. It is possible to have a configuration provided with a phase adjuster to perform. This makes it possible to realize an appropriate stabilization process even when the correction process has a certain amount of delay.
  • an integrated circuit chip having an image sensor for obtaining the captured image and having the feature amount extraction unit and the correction unit is mounted in the same semiconductor package as the image sensor. It is possible to have a configured configuration. This makes it possible to reduce the size of the signal processing device as compared with the case where the image sensor and the integrated circuit chip are mounted in separate packages.
  • the image sensor can be laminated on the integrated circuit chip.
  • the image sensor and the integrated circuit chip can be vertically stacked in the same package and accommodated in a small space.
  • the signal processing method according to the present technology is based on the feature amount extracted by the feature amount extraction unit which has a neural network and is learned to extract the feature amount for a specific event for the input signal from the sensor. , A signal processing method for correcting the input signal. Even with such a signal processing method, the same operation as that of the signal processing device according to the present technology can be obtained.
  • FIG. 3 is a functional block diagram showing the functions related to game mining of the information processing apparatus shown in FIG. 33 in blocks. It is a block diagram which showed the internal structure example of the stabilization processing part in embodiment. It is the figure which showed the state which imaged with the tilted camera. It is a figure which showed the relationship between IMU quaternion and image input. It is a figure which illustrated the grid point mesh. It is explanatory drawing about the coordinate transformation of a grid point mesh. It is a figure for demonstrating the relationship between a segment matrix and a grid point mesh.
  • FIG. 1 is a block diagram showing a configuration example of a signal processing device 1 as an embodiment according to the present technology.
  • the signal processing device 1 performs signal processing for electron shake correction (EIS: Electric Image Stabilizer) on an image captured by the image pickup device.
  • EIS Electric Image Stabilizer
  • stabilization process the process of electronic blur correction will be referred to as "stabilization process”.
  • the signal processing device 1 includes an IMU (Inertial Measurement Unit) sensor 2, an image sensor 3, a preprocessing unit 4, a preprocessing unit 5, a quaternion calculation unit 6, a feature quantity extraction unit 7, a feature quantity adjuster 8, and the feature quantity adjuster 8. It includes a signal correction processing unit 9, a score classification scene analyzer 10, a phase adjustment unit 11, a delay amount calculation unit 12, and a stabilization processing unit 13.
  • IMU Inertial Measurement Unit
  • the image sensor 3 is, for example, an image sensor of a CMOS (Complementary Metal Oxide Semiconductor) type or a CCD (Charge Coupled Device) type, and is an image captured by photoelectrically converting the light received by a plurality of two-dimensionally arranged light receiving elements. To get.
  • CMOS Complementary Metal Oxide Semiconductor
  • CCD Charge Coupled Device
  • the captured image obtained by the image sensor 3 is output to the stabilization processing unit 13 after being subjected to predetermined preprocessing such as white balance adjustment and demosaic processing in the preprocessing unit 5.
  • predetermined preprocessing such as white balance adjustment and demosaic processing in the preprocessing unit 5.
  • the IMU sensor 2 has a motion sensor that detects the motion of the imaging device having the signal processing device 1, and outputs a signal indicating the detection result of the motion.
  • the IMU sensor 2 of this example has a three-axis acceleration sensor (acceleration sensor 2a described later) and an angular velocity sensor (angular velocity sensor 2b described later) as motion sensors, respectively.
  • the detection signals of the acceleration sensor and the angular velocity sensor (6 systems of 3 axes ⁇ 2) are output as signals indicating the detection result of the above movement.
  • the signals output by the IMU sensor 2 indicating the motion detection result are collectively referred to as "IMU signals”.
  • the pre-processing unit 4 inputs an IMU signal from the IMU sensor 2, performs a predetermined process as pre-processing, and outputs the quaternion calculation unit 6.
  • the quaternion calculation unit 6 calculates a quaternion representing the posture of the imaging device based on the IMU signal input via the preprocessing unit 4.
  • the quaternion calculated by the quaternion calculation unit 6 (hereinafter referred to as "IMU quaternion") is input to the signal correction processing unit 9 and subjected to predetermined correction processing based on the feature amount described later.
  • the calculated IMU quaternion is blended at a fixed blend ratio for each acceleration and angular velocity, and is input to the signal correction processing unit 9.
  • the IMU quaternion that has been corrected by the signal correction processing unit 9 is input to the stabilization processing unit 13 after undergoing phase adjustment by the phase adjustment unit 11.
  • the stabilization processing unit 13 performs stabilization processing on the captured image input via the preprocessing unit 5 based on the IMU quaternion input in this way. The details of the stabilization process performed by the stabilization processing unit 13 will be described later.
  • the phase adjustment unit 11 adjusts the phase of the IMU quaternion (attitude control quaternion value) after the correction processing by the signal correction processing unit 9 based on the delay amount calculated by the delay amount calculation unit 12.
  • the phase adjusting unit 11 adjusts the phase to compensate for the delay (delay with respect to the captured image side) that occurs on the IMU signal side due to the correction processing by the signal correction processing unit 9. Therefore, the delay amount calculation unit 12 calculates the delay amount based on the time required for the correction processing in the signal correction processing unit 9, and the phase adjustment unit 11 adjusts the phase of the attitude control quaternion value based on the delay amount. ..
  • the feature amount information used by the signal correction processing unit 9 for correction is extracted by the feature amount extraction unit 7 based on the IMU quaternion (attitude control quaternion value) from the quaternion calculation unit 6.
  • the feature amount extracted from the attitude control quaternion value by the feature amount extraction unit 7 is a feature amount for a specific event such as a feature amount for centrifugal force.
  • the feature amount extraction unit 7 is configured to have a neural network learned to extract the feature amount for such a specific event from the attitude control quaternion value. The details of the feature amount extraction unit 7 will be described later.
  • the feature amount adjuster 8 adjusts the feature amount extracted by the feature amount extraction unit 7.
  • the feature amount adjuster 8 in this example adjusts the feature amount extracted by the feature amount extraction unit 7 based on the evaluation score calculated by the score classification scene analyzer 10.
  • the evaluation score calculated by the score classification scene analyzer 10 is a score representing the performance of the stabilization process.
  • the score classification scene analyzer 10 is configured to have a trained neural network trained to calculate an evaluation score representing the performance of the stabilization process based on the IMU quaternion in this way, but the details will be described later. explain.
  • the feature amount extracted by the feature amount extraction unit 7 is input to the signal correction processing unit 9 via the feature amount adjuster 8.
  • this correction amount When calculating this correction amount, it is affected by various disturbances such as centrifugal force, so it cannot be expressed by a general mathematical model, but it is a technical area that requires seasoning by the designer, and such a seasoned learning set. It is considered appropriate to prepare and correct by optimization by AI technology.
  • the IMU signal is refactored into a feature structure using deep learning, and the IMU signal is corrected based on the extracted features to solve this difficult problem. You are solving a difficult problem.
  • the most popular CNN in DNN technology has a SAE (Stacked AutoEncoder) that repeats convolution and pooling, and a fully connected layer in the subsequent stage.
  • SAE Stacked AutoEncoder
  • a net structure such as AlexNet is generally known.
  • Pre-training processing is a type of unsupervised learning (also called semi-supervised learning), and means a process of learning so that the output matches the input. Then, it is possible to generate a recognition algorithm by supervised learning (called Fine Tuning) in the fully connected layer in the latter stage.
  • CNN is not limited to this, and there are various derivative forms of CNN.
  • FIG. 3 is a functional block diagram showing the functional configuration of the feature amount extraction unit 7.
  • the feature amount extraction unit 7 has a SAE 70, a control line association learning unit 71, and a refactoring unit 72.
  • the input signal of the SAE70 is a signal as an IMU quaternion in this example.
  • a pre-trained SAE is used as the SAE70.
  • the feature amount obtained in the predetermined plurality of intermediate layers in the SAE after the pre-training is used as the input of the control line association learning unit 71.
  • SAE is generally intended for dimensional compression, but it has a function of self-teaching and learning the feature expression of an object by performing pre-training to match the input and output. ing.
  • the feature amount extraction unit 7 the feature amount obtained in the middle layer of the SAE 70 in which the feature expression of the target has been learned by performing such pretraining is used as the input of the control line association learning unit 71.
  • the control line association learning unit 71 includes a neural network in which control line association learning is performed.
  • the control line-related learning means learning by associating different event modes related to a specific event with different control line values.
  • the "specific event” means an event for which a feature amount is to be extracted, such as centrifugal force.
  • the "event mode” means a mode related to a specific event, such as a mode of "with centrifugal force” or a mode of "without centrifugal force” in the case of centrifugal force.
  • the details of the control line association learning will be described later, but by performing the control line association learning, the control line association learning unit 71 generates an algorithm for switching the mode of the feature amount to be output according to the value given to the control line. Will be done.
  • the refactoring unit 72 outputs when + ⁇ is given as the value of the control line to the control line association learning unit 71 in which the control line association learning is performed and the feature amount extraction algorithm as described above is generated (“first). "Output") and the output when - ⁇ is given (“second output”) are input, and the difference between them is obtained.
  • + ⁇ and ⁇ are values obtained by adding and subtracting ⁇ to a predetermined reference value (0 in this example), respectively.
  • the first output is a feature amount calculated by the control line association learning unit 71 under the first control line condition where the control line value is + ⁇
  • the second output is the second output where the control line value is ⁇ . It is a feature amount calculated by the control line association learning unit 71 under the control line condition. Therefore, the difference between the first output and the second output obtained by the refactoring unit 72 also takes the form of a feature amount.
  • the feature amount obtained in each of the plurality of intermediate layers in the pretrained SAE 70 is used as the input of the control line association learning unit 71, but this is used as the input of the control line association learning unit 71. It corresponds to inputting features with different resolutions.
  • the control line association learning unit 71 individually performs control line association learning for each of the feature amounts due to such a plurality of resolutions, and the refactoring unit 72 obtains each of these resolutions. Obtain the difference between the first output and the second output. This is equivalent to recognizing an object with multiple resolutions using a low-frequency pyramid of Wavelet transform, which contributes to improving the accuracy of attitude control recognition by recognizing the flow of time.
  • FIG. 4 shows a specific configuration example of the feature amount extraction unit 7 corresponding to the recognition processing at multiple resolutions as described above.
  • the control line association learning unit 71 has a plurality of control line association learning devices 71a, and each control line association learning device 71a has a feature amount obtained in the corresponding intermediate layer in the SAE 70. Entered. Further, the value of the control line is also input to each control line association learner 71a. Each control line association learner 71a is composed of SAE.
  • control line association learner 71a shown at the uppermost side of the paper becomes the learner of the highest layer (that is, the learner for inputting the feature amount having the highest resolution), and as the position on the paper becomes lower.
  • the control line association learner 71a of the lower layer is used, but each control line association learner 71a except the control line association learner 71a of the uppermost layer is obtained by convolving the control line association learner 71a of the upper layer.
  • the specified feature amount is input, and the accuracy can be improved.
  • the refactoring unit 72 is provided with a refactoring device 72a for each control line association learning device 71a included in the control line association learning unit 71. Each refactoring device 72a obtains the difference between the first output and the second output of the corresponding control line association learner 71a. In the refactoring unit 72, the feature amounts corresponding to the respective resolutions can be obtained by these refactoring devices 72a (in the illustrated example, the feature amounts of four systems can be obtained).
  • the feature amount extraction unit 7 has the control line association learning unit 71, the refactoring unit 72, and the SAE 70 as described above, but in the learning environment, the control line association learning unit 71 in the pre-learning state is included.
  • Control line association learning using teacher data is performed using the configuration as shown in FIG. 5A.
  • FIG. 5B the configuration shown in FIG. 5A will be illustrated by a simplified expression as shown in FIG. 5B.
  • the block of the Wavelet transform low frequency pyramid shown in FIG. 5B expresses the handling of the features at the above-mentioned multiple resolutions. Further, the block by the plurality of SAEs shown in the latter stage of the wavelet transform block is a collective representation of the SAE 70 and the SAEs as the plurality of control line association learning devices 71a possessed by the control line association learning unit 71.
  • the feature amount extraction based on the IMU signal the feature amount extraction for the centrifugal force is performed.
  • control line association learning corresponding to the case of performing feature extraction for such centrifugal force and feature extraction using a trained neural network will be described.
  • FIG. 6 is an explanatory diagram of control line association learning corresponding to the case of extracting centrifugal force features.
  • Centrifugal force feature extraction is intended to suppress the tilt of the horizon due to centrifugal force during exercise for an image captured by an imaging device that is expected to be used while being supported by a moving object such as an in-vehicle camera. It becomes the purpose.
  • a 3-axis acceleration sensor hereinafter referred to as “accelerometer 2a” and a 3-axis angular velocity sensor (hereinafter referred to as “angular velocity sensor 2b") are used as the IMU sensor 2.
  • the above-mentioned preprocessing unit 4 and the quaternion calculation unit 6 respectively perform a processing unit that performs preprocessing for acceleration (hereinafter referred to as “accelerometer preprocessing unit 4a”) and a process that performs preprocessing for angular velocity.
  • angular velocity preprocessing unit 4b A unit (hereinafter referred to as “angular velocity preprocessing unit 4b"), a calculation unit that calculates a quaternion for acceleration (hereinafter referred to as “accelerometer quaternion calculation unit 6a”), and a calculation unit that calculates a quaternion for angular velocity (hereinafter "" It is described as “angular velocity quaternion calculation unit 6b").
  • the acceleration preprocessing unit 4a and the acceleration quaternion calculation unit 6a are provided after the acceleration sensor 2a
  • the angular velocity preprocessing unit 4b and the angular velocity quaternion calculation unit 6b are provided after the angular velocity sensor 2b. Is provided.
  • the acceleration quaternion calculated by the acceleration quaternion calculation unit 6a and the angular velocity quaternion calculated by the angular velocity quaternion calculation unit 6b are given as input signals of the learner shown in the simplified representation of FIG. 5B, respectively.
  • the rotation angle in the fanning direction is defined as the pitch angle
  • the rotation angle in the left-right direction is defined as the yaw angle
  • the rotation angle on the central axis of the camera is defined as the roll angle.
  • the angular velocity comparison term center return control 21 generates a learning set in which the centrifugal force is pseudo-removed by sequential processing using the difference between the two. This sequential process can satisfactorily remove the centrifugal force only under certain conditions, but it cannot be removed as expected with complicated movements, and the learning set is prepared by performing the optimization work in each scene.
  • the learner learn each quaternion with centrifugal force removal as a teacher.
  • the values after the decimal point are omitted for the control line values due to space limitations (the same applies to the following figures).
  • an algorithm for switching the mode of the output feature amount is generated according to the value given to the control line.
  • the feature amount output by the control line association learner 71a when the control line value is set to the first value and the control line when the control line value is set to a second value different from the first value. There is a difference from the feature amount output by the association learner 71a.
  • FIG. 7 is a diagram illustrating a configuration for feature amount extraction using the trained control line association learner 71a. As shown in the figure, acceleration quaternion and angular velocity quaternion are given to the input of the feature amount extraction unit 7 by the acceleration quaternion calculation unit 6a and the angular velocity quaternion calculation unit 6b in the quaternion calculation unit 6, respectively.
  • each control line association learner 71a when the value of the control line is set to the first value (first output) and when the value is set to the second value. Output (second output) and is obtained. Then, in the refactoring unit 72, the difference between the first output and the second output is obtained for each control line association learner 71a.
  • FIG. 8 shows an example of the internal configuration of each refactoring device 72a included in the refactoring unit 72.
  • the refactoring device 72a has a difference calculation unit 73 and a frequency filter 74.
  • the difference calculation unit 73 sets the output of the control line association learner 71a when the value of the control line is the first value (+ ⁇ in this example) (first control line condition) and the value of the control line to the second.
  • the value (- ⁇ in this example) is set (the second control line condition)
  • the output of the control line association learner 71a is input, and the difference between them is calculated.
  • the frequency filter 74 has, for example, an LPF or an HPF, and performs a process of extracting a part of a frequency component from a signal (quarterion) as a difference calculated by the difference calculation unit 73.
  • the frequency filter 74 By providing the frequency filter 74, it is possible to perform waveform shaping on the signal obtained as the difference between the first output and the second output.
  • the learning set is the data obtained by optimally matching the actual products in each scene as described above, and is not a learning set that is guaranteed to obtain a desired mathematical expression with 100% accuracy, but a feature amount obtained after machine learning. There is also a certain degree of deterioration, and a frequency filter 74 is adopted to remove them.
  • the learner extracts it. It is not always desirable as the feature amount to be used.
  • the control line association learner 71a by performing the control line association learning, the control line association learner 71a generates an algorithm for switching the mode of the feature amount to be output according to the value given to the control line. Then, the feature amount is extracted by the method of obtaining the difference between the first output and the second output when different control line values (+ ⁇ , ⁇ ) are given to the control line association learner 71a. It is said.
  • the goal of the centrifugal force feature extraction accuracy is that when this feature amount correction algorithm is applied to various scenes, the performance is almost the same as the actual matching optimization result of each scene at the time of creating the learning set described above.
  • the purpose is not to derive a perfect mathematical formula that can express the centrifugal force feature in the physical sense, but to use deep learning to obtain something as close as possible to the mathematical formula, so to speak, the least squared algorithm.
  • the approach is to find an approximate expression with an accuracy that can withstand actual operation.
  • FIG. 9 is a block diagram showing an example of the internal configuration of the signal correction processing unit 9.
  • the signal correction processing unit 9 is a sensor noise correction unit 9a, a centrifugal force correction unit 9b, an effect correction unit 9c, a state machine correction unit 9d, and a camera work correction unit as correction units for the IMU quaternion (attitude control quaternion value).
  • It has a unit 9e, a sudden fluctuation correction unit 9f, a viewpoint movement frame prediction correction unit 9g, and a stabilizer braking correction unit 9h.
  • the illustrated example is merely an example, and an arbitrary order can be adopted.
  • the sensor noise correction unit 9a performs correction processing for removing sensor noise superimposed on the IMU signal, specifically, DC bias noise and saturation noise.
  • DC bias noise is corrected by IMU adjustment, temperature special correction, Kalman filter, and complementary filter at the pretreatment stage, but even if these pretreatments are performed, random walk noise and temperature special correction are performed. Due to the influence of noise from various factors such as changes over time, the stabilizer performance deteriorates. Therefore, a feature amount of the DC bias noise is extracted by learning, and a correction process is performed to remove the component of the DC bias noise superimposed on the IMU quaternion based on the feature amount.
  • the sensor noise feature amount is extracted by analyzing the correlation between the acceleration quaternion and the angular velocity quaternion and extracting it as a noise feature amount, which will be described in detail later (FIGS. 29 and 29). 30).
  • the centrifugal force correction unit 9b performs a correction process for removing a centrifugal force component (centrifugal force noise) from the attitude control quaternion value based on the above-mentioned centrifugal force feature amount.
  • centrifugal force noise can be removed, horizontal correction can be performed satisfactorily even in a violent movement, and the performance of the stabilization process can be improved.
  • the effect correction unit 9c performs correction processing for the IMU quaternion in order to prevent vibration as an effect from being removed in the stabilization processing unit 13 in order to create a realistic picture.
  • the vibration corresponding to the realism is learned and extracted as the effect vibration feature amount, and the vibration component as the effect included in the attitude control quaternion value is removed based on the effect vibration feature amount.
  • the extraction of the effect vibration feature amount will be described later (see FIGS. 19 and 20).
  • the state machine correction unit 9d performs correction processing for state machine control.
  • the camera system of this example has a horizontal correction function (gimbal function), but when the camera faces directly above or below, the concept of the horizon disappears and it is necessary to stop the gimbal function. In addition, it is unrealistic to provide these state machines such as dribbling scenes and collisions in soccer scenes, keeper movements, and gymnast rotation scenes by sequential processing implementation for each competition.
  • state machine control attitude control state machine control
  • the state machine control of the stabilizer system is performed by the threshold judgment of the pitch angle in the sequential processing implementation and the detection processing.
  • the state machine correction unit 9d performs correction processing for state machine control on the IMU quaternion based on the state machine correction feature amount. The extraction of the state machine correction feature amount will be described later (see FIGS. 32 and 33).
  • the camera work correction unit 9e performs correction processing for appropriately reflecting the camera work by the user based on the feature amount (camera work feature amount) of the camera work extracted from the IMU quaternion.
  • the camera system in this example mainly assumes a stabilization function in camera local coordinates, and apart from rotation control based on the IMU signal, it properly understands the movement equivalent to camera work by the user and is the center of the angle of view. Positioning is required.
  • the camera work feature amount is learned, and the correction process for appropriately reflecting the camera work is performed based on the camera work feature amount.
  • the extraction of camerawork features will be described later (see FIGS. 21 and 22).
  • the sudden fluctuation correction unit 9f suppresses a sudden shock and performs correction processing for improving camera work control in the stabilization processing unit 13.
  • a braking damper-like correction process is performed on the IMU quaternion to suppress sudden fluctuations.
  • the control line association learner 71a is made to learn the sudden change feature amount, and the feature amount extraction unit 7 extracts the sudden change feature amount from the IMU quaternion.
  • the sudden fluctuation correction unit 9f performs correction processing for suppressing sudden fluctuations based on the sudden fluctuation feature amount extracted in this way. The extraction of suddenly fluctuating features will be described later (see FIGS. 23 and 24).
  • the viewpoint movement frame prediction correction unit 9g performs viewpoint adjustment based on the frame prediction feature amount and correction processing for buffer out prediction on the IMU quaternion. It is possible to improve the prediction accuracy with respect to the buffering control of the buffer memory 63 in the stabilization processing unit 13 described later. The extraction of the frame prediction feature amount will be described later (see FIGS. 25 and 26).
  • the stabilizer braking correction unit 9h performs correction processing for improving the camera work.
  • the control line association learner 71a is made to learn the stabilizer braking feature amount described later, and the feature amount extraction unit 7 extracts the stabilizer braking feature amount from the IMU quaternion.
  • the stabilizer braking correction unit 9h performs correction processing for suppressing sudden fluctuations based on the stabilizer braking feature amount extracted in this way. The extraction of the stabilizer braking feature amount will be described later (see FIGS. 27 and 28).
  • the correction processing by each of the above correction units in the signal correction processing unit 9 is a filter processing for the IMU quaternion and the like, and a corresponding processing time is required.
  • the delay amount calculation unit 12 shown in FIG. 1 calculates the time required for processing in each of these correction units as a delay amount and outputs it to the phase adjustment unit 11.
  • the phase adjustment unit 11 adjusts the phase of the IMU quaternion after the correction processing by the signal correction processing unit 9 based on the delay amount calculated by the delay amount calculation unit 12. As a result, delay compensation for the captured image side is realized.
  • the feature amount adjuster 8 shown in FIG. 1 will be described. As described above, the feature amount adjuster 8 adjusts the feature amount extracted by the feature amount extraction unit 7.
  • the work of adding the feature amount obtained by the feature amount extraction unit 7 as a correction value to the target sensor signal (IMU signal in this example) actually requires some adjustment according to the actual product. This does not guarantee 100% mathematical derivation by the learning set given to machine learning, it is necessary to adjust considering the error of the algorithm generated by machine learning, and it is FIR-like in the system of feedback structure. This is because in order to introduce a machine-learned filter with a pair of input and expected value as an IIR filter, various adjustments are required so that the data does not diverge unstablely.
  • the feature amount is adjusted by the feature amount adjuster 8 as the blend ratio of the feature amounts of each resolution input from the feature amount extraction unit 7 in a plurality of systems.
  • the feature amount can be adjusted manually as a manual adjustment. That is, the feature amount adjuster 8 may be configured to adjust the feature amount based on the operation input.
  • the camera system of this example employs a method of correcting the sensor signal based on the features extracted by deep learning, it is an algorithm that is difficult to express with a physically accurate mathematical formula in the program. Yes, in reality, there are cases where manual adjustment is difficult. As a measure to smoothly proceed with the adjustment work in such an architecture, this example proposes a mechanism for evaluating the performance of this architecture and automatically adjusting the feature amount based on the evaluation score.
  • FIG. 10 is a diagram illustrating a configuration for searching for a blend ratio of a feature amount to be set in the feature amount adjuster 8.
  • a configuration for performing image stabilization processing based on the IMU signal is prepared (configuration in the broken line in the figure).
  • a phase adjusting unit 11 is provided in the subsequent stage of the signal correction processing unit 9, and a delay amount generated by the signal correction processing unit 9 is given to the phase adjusting unit 11.
  • the delay amount calculation unit 12 is provided, the illustration is omitted here.
  • a score analyzer 23 and an automatic adjuster 24 are prepared.
  • the score analyzer 23 is an AI learned to calculate an evaluation score that is a performance index of the stabilization process from the input image, and outputs the evaluation score calculated based on the stabilized image to the automatic adjuster 24.
  • the score analyzer 23 will be described later.
  • the automatic adjuster 24 adjusts the blend ratio of the feature amount in the feature amount adjuster 8, refers to the evaluation score at each blend ratio, and performs a process of searching for a blend ratio satisfying a predetermined criterion.
  • the blend ratio satisfying the predetermined criteria referred to here means, for example, a blend ratio in which the evaluation score is equal to or higher than a certain threshold value, a blend ratio in which the evaluation score is the best among a plurality of blend ratios used in the search, and the like. ..
  • the automatic regulator 24 searches for the optimum blend ratio by using, for example, a genetic algorithm.
  • the score analyzer 23 will be described with reference to FIGS. 11 to 13.
  • the score analyzer 23 uses an image recognition method almost equivalent to that of a general CNN. As shown in FIG. 11, in the generation of the learning set, first, a continuous frame image that has not been stabilized is input to the SAE. Is given to, and a PreTraining process consisting of a convolution process and a pooling process is performed.
  • the designer carefully selected the stabilizer continuous images for which a good stabilization operation could be visually confirmed, and as shown in FIG. 12, the rotation amount random number generation unit 25 and the image random rotation unit 26 were used for the stabilizer continuous images. Random rotation is added to perform score recognition learning in the fully connected layer. As a result, a score analysis algorithm for image recognition is procured, which can determine that the higher the rotation of the input continuous frame, the lower the score.
  • the SAE surrounded by the broken line in the figure and the fully connected layer serve as a score analyzer 23 that realizes such a score analysis algorithm.
  • the score analyzer 23 can also be generated by learning with a human evaluation score as a teacher, as illustrated in FIG. In the learning in this case, as the teacher score for the fully connected layer, the score as a result of human evaluation of the learning image prepared in advance is input.
  • scoring the performance of the system there may be a plurality of evaluation items to be scored. For example, in addition to simply focusing on the correction performance of the amount of rotation (that is, vibration correction), we also focus on the performance of the horizontal holding function (gimbal function) mentioned above, the performance of camera work, and the performance of lens distortion correction. You can also do it.
  • the performance is evaluated for a plurality of items in this way, the aggregated value of the score calculated for each item is used as the evaluation score.
  • the aggregated score of multiple items is used as the evaluation score of the system performance
  • the weight of each item evaluation score for obtaining the aggregated score is set for each product destination.
  • the camera local coordinates and the world coordinates are almost equivalent, and the tracking performance of the camera work can be ignored. You will not fall into the false mountain problem.
  • the tracking performance of the camera local coordinates is emphasized, so the weighting of the evaluation score for the tracking performance of the camera work is increased.
  • FIG. 14 is a diagram illustrating a configuration for searching the blend ratio of the feature amount based on the aggregated score of a plurality of items.
  • the signal correction processing unit 9 has a plurality of types of features such as correction processing for removing centrifugal force and correction processing for reflecting camera work. Multiple types of correction processing based on the amount are performed.
  • a camera system having a plurality of feature quantity extraction units 7 reference numerals 7-1, 7-2, 7-3 in the figure
  • a broken line in the figure. Is used.
  • a feature amount adjuster 8 is provided for each feature amount extraction unit 7 (reference numerals 8-1, 8-2, 8-3 in the figure), and the output (blend) of these feature amount adjusters 8 is provided.
  • the later feature amount) is input to the signal correction processing unit 9. It should be noted that the number of the feature amount extraction unit 7 and the feature amount adjuster 8 is set to three for convenience of illustration, and in reality, these are provided for each correction unit included in the signal correction processing unit 9.
  • the stabilized image obtained by the stabilization processing unit 13 is input to a plurality of score analyzers 23 (reference numerals 23-1,23-2,23-3 in the figure).
  • These score analyzers 23 calculate evaluation scores for the corresponding items among a plurality of items to be evaluated, such as the above-mentioned vibration correction performance, horizontal holding function, and camera work tracking performance. It should be noted that the number of score analyzers 23 is set to three for convenience of illustration, and the score analyzer 23 in this case may be provided for each item to be evaluated.
  • the totaling unit 27 calculates a totaled score obtained by totaling the evaluation scores for each item calculated by each score analyzer 23, and outputs the totaled score to the automatic adjuster 24.
  • the automatic adjuster 24 searches for a combination of blend ratios satisfying a predetermined criterion based on the aggregated score while sequentially changing the combination of blend ratios set in each feature amount adjuster 8.
  • the totaling unit 27 aggregates each evaluation score by weighting according to the destination.
  • 15 and 16 are explanatory views of specific examples of the weighting method according to the destination.
  • FIG. 15 is a diagram for explaining an example of a quantitative weighting method. In this method, evaluation scores calculated for each item such as camera work, centrifugal force, and vibration correction are shown in FIGS. 15A and 15B. As shown in comparison, the total score for each destination is calculated by weighting and adding with a weighting coefficient determined in advance for each destination.
  • FIG. 16 is a diagram for explaining an example of a qualitative weighting method.
  • each item is weighted by a predetermined weighting coefficient
  • weighting calculation by a neural network is performed in order to reproduce human sensibilities.
  • the input to the neural network is used as the evaluation score for each item
  • the teacher data is used as the score scored by humans
  • learning is performed so as to output an aggregated score close to the score scored by humans for each destination.
  • the appropriate blend ratio may differ depending on the scene to be imaged.
  • the appropriate blend ratio may differ depending on whether the scene to be imaged is from the driver's point of view of a vehicle traveling at several hundred kilometers per hour or from the user's point of view while moving on foot. .. Therefore, in the search for the blend ratio using the automatic adjuster 24 described above, it is desirable to obtain a blend ratio that satisfies a predetermined standard for each scene.
  • the feature amount adjuster 8 holds the blend ratio for each scene obtained by the search, and switches the blend ratio according to the scene analysis result based on the captured image. It is possible that.
  • scene analyzer As an analyzer (hereinafter referred to as "scene analyzer") for performing the above scene analysis, it is conceivable to use a CNN similar to that used in general image recognition, but such an image. It is not desirable to individually implement the AI as the CNN for recognition and the AI as the feature amount extraction unit 7 in the camera system due to the limitation of arithmetic resources.
  • the method of analyzing the scene by recognition from the image is not adopted, and it is determined whether or not the evaluation score from the IMU motion data, which is lighter data, meets a certain standard, and the certain standard is satisfied. If not, the weight of the stabilizer processing in the embedded system will be reduced by adopting the method of switching the blend ratio.
  • the evaluation score calculated by the score analyzer 23 is used as a teacher, and the evaluation score is learned to be calculated from the IMU signal which is lighter than the image signal. Use the AI that has been created.
  • FIG. 17 is a diagram for explaining an example of a generation method of the score classification scene analyzer 10.
  • the score classification scene analyzer 10 has a configuration as a general CNN having a SAE and a fully connected layer in the subsequent stage.
  • the trained score analyzer 23 is made to calculate the evaluation score by inputting the learning image.
  • the score classification scene analyzer 10 is provided with an IMU signal (IMU quaternion in this example) synchronized with the learning image as an input as a learning IMU, and the score analyzer 23 calculates for the fully connected layer.
  • An evaluation score is given as a teacher score, and learning as Fine Tuning generates an algorithm for calculating an evaluation score equivalent to that of the score analyzer 23 from the IMU signal.
  • fineTuning side machine learning is performed using the evaluation score from the score analyzer 23 that has been subjected to differential processing as necessary as a teacher.
  • the input signal is an IMU signal like the feature amount extraction unit 7. Further, the IMU signal as an input signal is given to the SAE in the score classification scene analyzer 10, and the IMU signal as an input signal is also given to the SAE (SAE70) in the feature amount extraction unit 7. Therefore, the SAE 70 in the feature amount extraction unit 7 can be shared as the SAE in the score classification scene analyzer 10.
  • FIG. 18 shows the structural relationship between the feature amount extraction unit 7 and the score classification scene analyzer 10 in the signal processing device 1.
  • the score classification scene analyzer 10 includes a SAE 70 in the feature amount extraction unit 7 and a fully connected layer in the subsequent stage.
  • the score classification scene analyzer 10 can adopt a configuration in which the SAE in the feature amount extraction unit 7 is shared. Therefore, the AI as the feature amount extraction unit 7 and the AI as the score analyzer 23 can be used. Computation resources can be reduced as compared with the case where they are provided individually.
  • the SAE70 in the feature amount extraction unit 7 is pre-trained. Therefore, at the time of learning described with reference to FIG. 17, a pre-trained SAE in the score classification scene analyzer 10 is used.
  • the score classification scene analyzer 10 calculates an evaluation score based on the IMU signal (IMU quaternion in this example), and outputs the calculated evaluation score to the feature amount adjuster 8.
  • the feature amount adjuster 8 stores at least two kinds of blend ratios as the feature amount blend ratio. These blend ratios are the blend ratios obtained for each scene by searching for the blend ratio using the automatic adjuster 24.
  • the feature amount adjuster 8 blends the feature amounts of a plurality of systems input from the feature amount extraction unit 7 by any of the stored blend ratios. Then, on the other hand, it is sequentially determined whether or not the evaluation score input from the score classification scene analyzer 10 is a score satisfying a predetermined criterion (for example, whether or not it is equal to or higher than a predetermined threshold value), and a predetermined value is determined. If the criteria are not met, the blend ratio in use is switched to another blend ratio. As a result, when satisfactory performance cannot be obtained, it is possible to switch to another blend ratio, and it is possible to switch to an appropriate blend ratio according to the scene.
  • a predetermined criterion for example, whether or not it is equal to or higher than a predetermined threshold value
  • FIG. 19 and 20 are explanatory views of an effect vibration feature extraction method.
  • the quaternion without the effect vibration is generated by the correction process 30, and then the average vibration of the 3-axis rotation frame in the figure is generated.
  • the write-back effect 31 a quaternion with effect vibration is generated by writing back the amount of rotation from which the RS (rolling shutter) distortion component such as the rotation frame average is removed.
  • an algorithm for switching the mode of the effect vibration feature amount to be output is generated according to the value given to the control line.
  • the difference between these extracted features is calculated, and LPF processing or HPF processing is performed as necessary to obtain a feature quaternion as an effect vibration feature.
  • This feature amount quaternion is input to the effect correction unit 9c (see FIG. 9) in the signal correction processing unit 9 after being adjusted (blended process) by the feature amount adjuster 8.
  • effect insertion in sequential processing, it is a monotonous effect in which the RS distortion is simply removed and the rotation average value is added, but as a result of learning the effect pattern by various patterns in AI, it is more realistic. Effect processing can be realized.
  • 21 and 22 are explanatory views of a method for extracting camerawork features.
  • the world coordinate quaternion is obtained from the angular velocity quaternion and the acceleration quaternion through the complementary filter 33.
  • PID proportional term control 34 in the figure, a camera local coordinate quaternion is generated by an appropriate center return sequential process (proportional term control in PID control).
  • the extracted feature amount at the time is input to the refactoring unit 72.
  • the difference between these extracted features is calculated, and LPF processing or HPF processing is performed as necessary to obtain a feature quaternion as a camerawork feature.
  • This feature amount quaternion is input to the camera work correction unit 9e in the signal correction processing unit 9 after being adjusted by the feature amount adjuster 8.
  • the learning set is the same as in the case of extracting the camera work feature amount until the proportional term (camera local coordinate quaternion) is generated.
  • a differential term is further provided for teacher generation (see PID differential term control 35 in the figure) to generate a differentially controlled quaternion that limits large fluctuations.
  • an algorithm for switching the mode of the suddenly fluctuating feature amount to be output is generated according to the value given to the control line.
  • the extracted feature amount at the time is input to the refactoring unit 72.
  • the difference between these extracted features is calculated, and LPF processing or HPF processing is performed as necessary to obtain a feature quaternion as a camerawork feature.
  • This feature amount quaternion is adjusted by the feature amount adjuster 8 and then input to the sudden fluctuation correction unit 9f in the signal correction processing unit 9.
  • Sudden fluctuation suppression processing is also a proposition in which it is relatively difficult to formulate a correct mathematical model in the sequential processing used for teacher generation, and incorrect correction is performed in some scenes, but in machine learning, Wavelet conversion low frequency pyramid is used as an input.
  • Wavelet conversion low frequency pyramid is used as an input.
  • FIG. 27 and 28 are explanatory views of a method for extracting stabilizer braking features.
  • an integral-controlled quaternion is generated by further correcting the integral term by the PID integral term control 36 with respect to the above-mentioned differentially controlled quaternion (FIG. 23).
  • the center return becomes stronger due to integration, and as an effect, in a stabilizer system with a telephoto lens such as a surveillance camera, it is stable without being agitated by the minute bias of the rotational angular velocity sensor. Stabilization braking processing becomes possible.
  • an algorithm for switching the mode of the stabilizer braking feature amount to be output is generated according to the value given to the control line.
  • the extracted feature amount at the time is input to the refactoring unit 72.
  • the difference between these extracted feature amounts is calculated, and LPF processing or HPF processing is performed as necessary to obtain a feature amount quaternion as a stabilizer braking feature amount.
  • This feature amount quaternion is adjusted by the feature amount adjuster 8 and then input to the stabilizer braking correction unit 9h in the signal correction processing unit 9.
  • the stabilizer processing moves greatly due to geometric factors with a slight rotation, which causes the stabilizer image to wobble due to the influence of a slight gyro bias noise, and the integral term causes such a minute bias. It is intended to be removed for stabilization.
  • 25 and 26 are explanatory views of the frame prediction feature extraction method.
  • an algorithm for switching the mode of the output frame prediction feature amount depending on the value given to the control line is generated.
  • the extracted feature amount at the time is input to the refactoring unit 72.
  • the difference between these extracted features is calculated, and LPF processing or HPF processing is performed as necessary to obtain a feature quaternion as a frame prediction feature.
  • This feature amount quaternion is adjusted by the feature amount adjuster 8 and then input to the viewpoint movement frame prediction correction unit 9g in the signal correction processing unit 9.
  • the forecast is a statistical forecast and does not guarantee 100% forecast.
  • 29 and 30 are explanatory views of a method for extracting sensor noise features.
  • the sensor noise DC bias noise
  • the correlation between the acceleration sensor 2a and the angular velocity sensor 2b is analyzed by signal waveform analysis and extracted as a sensor noise feature amount.
  • random noise random walk noise
  • Add see Random Noise Addition 41a and Random Noise Addition 41b in the figure).
  • the acceleration quaternion and the angular velocity quaternion calculated by the acceleration quaternion calculation unit 6a and the angular velocity quaternion calculation unit 6b are input to the AI including the SAE.
  • the teacher for this is a blend quaternion obtained by blending the acceleration quaternion and the angular velocity quaternion calculated from the acceleration 3-axis data before noise addition and the angular velocity 3-axis data, respectively, with the complementary filter 33.
  • the output of the learned AI and the angular velocity quaternion obtained by the angular velocity quaternion calculation unit 6b are used as inputs of the refactoring unit 72.
  • these differences are taken in the refactoring unit 72, it becomes the sensor noise feature amount recognized by AI.
  • the sensor noise feature amount obtained by the refactoring unit 72 is input to the sensor noise correction unit 9a in the signal correction processing unit 9 after being adjusted by the feature amount adjuster 8.
  • the state machine feature quantity is a feature quantity related to the state machine control.
  • the state machine control is a control that stops the gimbal function when the camera faces directly above or below, or when horizontal correction cannot be performed, such as when returning from that state.
  • the input / output results of the actual adjustment in the scene where the gimbal is established and the attitude control at the adjustment value when the gimbal function is turned off when the gimbal is not established are prepared.
  • These learning sets can be controlled only in a specific scene by matching the actual products by sequential processing, and the learning sets are prepared by visual confirmation by the designer.
  • the output value after processing by the complementary filter 33 and the roll angle center return control unit 42 obtained by matching the actual product with the acceleration quaternion and the angular velocity quaternion as inputs is used as a teacher.
  • the output of the learned AI and the angular velocity quaternion obtained by the angular velocity quaternion calculation unit 6b are used as inputs of the refactoring unit 72.
  • These differences calculated by the refactoring unit 72 are state machine features.
  • the state machine feature amount obtained by the refactoring unit 72 is input to the state machine correction unit 9d in the signal correction processing unit 9 after being adjusted by the feature amount adjuster 8.
  • the feature amount to be input to the signal correction processing unit 9 the feature amount of a plurality of systems extracted by the feature amount extraction unit 7 is used as the feature amount adjuster.
  • the one blended in 8 according to the required blending ratio is used.
  • the parameters related to the feature amount extraction such as the value of the control line given to the control line association learner 71a and the blend ratio in the feature amount adjuster 8 are set to appropriate values. It is important to set. Appropriate parameters can be derived by performing a search based on the performance evaluation value of signal processing using the extracted features, such as the performance evaluation value of stabilization processing.
  • such a parameter search problem is a problem of searching for the best combination among filter characteristics having an analog correlation, and is a deciphering that factorizes the product of two prime numbers like deciphering. Compared to the problem, it is not so difficult, it is possible to visualize and search for correlated patterns, convert this problem into a game model, and solve the problem like a puzzle game.
  • Adopt a processing approach. The method of searching for an appropriate parameter using a game model in this way is referred to as "game mining" here.
  • a combination of parameters related to feature amount extraction is selected according to the game operation. Then, the evaluation score for the signal processing result when the parameter according to the selected combination is set is acquired, and based on the acquired evaluation score, a combination of parameters satisfying a predetermined evaluation score condition, such as the best combination of parameters, is searched for. do.
  • a predetermined evaluation score condition such as the best combination of parameters
  • the search for the optimum parameters for the parameters related to the feature amount extraction process in the signal processing device such as the value ( ⁇ ) of the control line and the blend ratio in the feature amount adjuster 8, is distributed processing via the game content. This can be achieved by this approach.
  • the work of converting factor-decomposing problems into game events such as puzzle problems and searching for convergence conditions is a special field other than the sense of solving puzzles. It does not require specialized knowledge, has no entry barriers, can be treated as pure gameplay, and can convert the potential energy of game players around the world into production energy for algorithm development. In other words, it is possible to link the potential of human resources, which was previously wasted in the form of gameplay, to the driving force of development that contributes to the development of science and technology. In game mining, the elemental technologies in the algorithm development hierarchy can be hidden, and there is also the advantage that the confidentiality of the technologies can be guaranteed.
  • FIG. 33 is a block diagram showing a system configuration example used for parameter search by game mining.
  • a feature amount extraction unit 7, a feature amount adjuster 8, a signal correction processing unit 9, and a stabilization processing unit 13 are provided as a configuration imitating the signal processing device 1 shown in FIG.
  • the phase adjustment unit 11 and the delay amount calculation unit 12 are actually provided as a configuration imitating the signal processing device 1.
  • a score analyzer 23 for evaluating the performance of the stabilization process is provided.
  • the control line association learning unit 71 in the feature amount extraction unit 7 has already completed the control line association learning.
  • the system is provided with an information processing device 50 that performs processing for parameter search based on the game operation and the evaluation score by the score analyzer 23.
  • the information processing device 50 includes a control unit 51, an operation unit 52, and a display unit 53.
  • the control unit 51 includes, for example, a microcomputer equipped with a CPU (Central Processing Unit), a ROM (Read Only Memory), a RAM (Random Access Memory), and the like, and executes various processes for parameter search. ..
  • the operation unit 52 comprehensively represents operators for performing various operation inputs by the user, for example, various keys, buttons, touch panels, and the like
  • the display unit 53 is an image of, for example, a liquid crystal display. It represents a display device that can display information.
  • the control unit 51 controls the progress of game content such as a puzzle game. Specifically, the operation unit 52 generates a game image according to the user's game operation, and the display unit 53 displays the generated game image. Further, the control unit 51 performs a process for parameter search based on the user's game operation in the operation unit 52 and the evaluation score calculated by the score analyzer 23.
  • FIG. 34 is a functional block diagram showing the functions of the control unit 51 related to game mining in blocks.
  • the control unit 51 includes a control line / blend ratio control processing unit F1, a score acquisition processing unit F2, a display processing unit F3, and a convergence determination processing unit F4.
  • the control line / blend ratio control processing unit F1 selects a combination of the control line value ( ⁇ in this example) in the control line association learning unit 71 and the blend ratio in the feature amount extractor 8 according to the user's game operation. Then, the value of the control line in the selected combination is set in the control line association learning unit 71, and the blend ratio is set in the feature amount extractor 8.
  • the control line / blend ratio control processing unit F1 reselects the combination of the control line value and the blend ratio each time a game operation, specifically, a puls operation in the puzzle game in this example is performed, and learns to associate the control lines with each other. Part 71, the blend ratio is set in the feature amount extractor 8.
  • the score acquisition processing unit F2 determines the value of the control line selected by the control line / blend ratio control processing unit F1 and the evaluation score of the stabilization processing unit 13 performed with the blend ratio set in the score analyzer 23. Get more.
  • the display processing unit F3 performs a process of displaying information that visualizes the evaluation score acquired by the score acquisition processing unit F2 on the game screen.
  • the puzzle is displayed as a shield of the enemy character, and the information that visualizes the evaluation score is displayed as, for example, the remaining HP (hit points) of the enemy character.
  • the display is performed so that the better the evaluation score, the smaller the remaining HP.
  • the visualization information of the evaluation score can be displayed in such a manner that the better the evaluation score, the thinner the display density (or brightness) of the puzzle (the better the evaluation score, the thinner the shield). ).
  • Various methods for displaying the visualization information of the evaluation score can be considered, and the method is not limited to the above method.
  • the evaluation score around the current setting parameter may be calculated and displayed on the game screen. Further, a puzzle model may be generated based on the evaluation scores around the current setting parameters.
  • the convergence test processing unit F4 performs a convergence test on the evaluation score acquired by the score acquisition processing unit F2.
  • the target value for the evaluation score is set as the end condition of the parameter search, and it is determined that the evaluation score has converged when the evaluation score reaches the target value.
  • the control unit 51 ends the process for parameter search according to the game operation in response to the determination by the convergence test processing unit F4 that the evaluation score has converged. Then, a process of storing the control line value and the blend ratio set at that time as the value of the parameter satisfying the convergence condition is performed.
  • the control unit 51 performs a process of displaying the corresponding image on the display unit 53 at the time of the game capture.
  • the method for determining the convergence of the evaluation score is not limited to the determination of whether or not the target value has been reached as described above.
  • the convergence test of the evaluation score may be performed as a judgment as to whether or not at least a predetermined evaluation score condition is satisfied.
  • control line value and the blend ratio are searched for as the search for the parameters related to the feature amount extraction is illustrated, but the search target parameters are not limited to these, for example. Parameters such as the number of layers in multiple resolution can be mentioned.
  • FIG. 35 is a block diagram showing an example of the internal configuration of the stabilization processing unit 13.
  • the coordinate system of the input image for the stabilization processing unit 13 that is, the coordinate system of the image captured by the preprocessing unit 5 in this example, is referred to as an "input coordinate system”, and the stabilization processing is also performed.
  • the coordinate system of the output image by unit 13, that is, the stabilized output image is referred to as "output coordinate system”.
  • EIS electronic blur correction
  • the stabilization processing unit 13 includes a reference coordinate calculation unit 61, a buffer control unit 62, a buffer memory 63, a memory control unit 64, a cache memory 65, and an interpolation filter 66.
  • the corrected and phase-adjusted IMU quarterion is input to the reference coordinate calculation unit 61. That is, the IMU quarterion that has been corrected by the signal correction processing unit 9 and the phase adjustment by the phase adjustment unit 11 is input.
  • the reference coordinate calculation unit 61 calculates the reference coordinate CR for each pixel of the output image based on the IMU quarterion input in this way.
  • the reference coordinate CR is information indicating which position in the input coordinate system should be used as the value of each pixel position in the output coordinate system when the output image is cut out from the input image. That is, it is information indicating which position value in the input coordinate system should be referred to for each pixel position in the output coordinate system.
  • the buffer memory 63 is a memory for sequentially buffering input images for one frame, and the buffer control unit 62 controls writing and reading of image data to the buffer memory 63.
  • the cache memory 65 is a memory used for cutting out an output image from an input image, and the memory control unit 64 controls writing and reading of image data to the cache memory 65.
  • the memory control unit 64 acquires the image data corresponding to the cutout range from the image data buffered in the buffer memory 63 through the buffer control unit 62, and writes the image data in the cache memory 65.
  • the memory control unit 64 uses the image data (image data of the input image) cached in the cache memory 65 as described above to obtain the pixels of the input coordinate system indicated by the reference coordinate CR and the pixels of the input coordinate system for each pixel position of the output coordinate system.
  • the interpolation filter 66 sequentially inputs image data for a plurality of pixels read out for each pixel position of the output coordinate system by the memory control unit 64, and performs interpolation processing for each pixel position of the output coordinate system by a method described later. To obtain the value of each pixel position in the output coordinate system. As a result, a stabilized output image can be obtained.
  • FIG. 36 shows a state of imaging with a tilted camera.
  • the tilted state here is a state in which the camera is tilted in the roll direction and the horizontal and vertical directions are not maintained.
  • the image data obtained by imaging is in a state in which the subject is tilted as shown in FIG. 36B.
  • the image data shown in FIG. 36C can be obtained by rotating the image data in the same direction as the tilt of the camera by the stabilization process.
  • 36C is the same as the image taken by a camera in a straight posture (a posture in which there is no inclination in the roll direction) as shown in FIG. 36D.
  • the rotation with respect to the tilt of the posture is performed in this way, and this is realized by rotating the pixel range to be cut out based on the posture information when cutting out an output image having a size smaller than the input image size from the input image.
  • IMU quaternion The relationship between the IMU quaternion and the image input is shown in FIG. 37.
  • IMU data is acquired every few lines, for example, IMU quaternions (represented by r0, r1, r2, and r3 in the figure) are also acquired every few lines as shown in the figure.
  • IMU quaternions represented by r0, r1, r2, and r3 in the figure
  • Vsync the vertical synchronization signal
  • IMU quaternion r0 for the upper 1/4 image of the frame
  • IMU quaternion r1 for the next 1/4 image
  • IMU quaternion r2 for the next 1/4 image
  • the last The IMU quaternion r3 corresponds to each of the 1/4 images.
  • the "virtual line L1" in the figure indicates a virtual line corresponding to the IMU quaternion having the same value.
  • the output coordinates are according to these virtual lines L1.
  • the reference coordinate CR was fitted to each pixel position of the system, and the input image was cut out based on the fitted reference coordinate CR to obtain a stabilized image.
  • a grid point mesh as illustrated in FIG. 38 is used.
  • the grid point mesh has a plurality of grid points (indicated by ⁇ marks in the figure) arranged in the horizontal direction and the vertical direction, respectively.
  • a plurality of grid point rows consisting of a plurality of grid points arranged in the horizontal direction are arranged in the vertical direction.
  • this can be rephrased as a grid point sequence consisting of a plurality of grid points arranged in the vertical direction, in which a plurality of grid points are arranged in the horizontal direction.
  • each grid point row corresponds to the virtual line L1 shown in FIG.
  • each grid point row is an IMU quaternion based on IMU data acquired at a timing corresponding to each row position. Is associated. In other words, the value of the IMU quaternion associated with each grid point is the same for each grid point row.
  • the number of grid points in each grid point row of the grid point mesh is 6, that is, the number of divisions in the horizontal direction is 5, and the number of grid points in each grid point sequence is 5, that is, division in the vertical direction.
  • the position of each grid point of the grid point mesh is managed as a position in the input coordinate system in order to correspond to the acquisition timing of the IMU data.
  • the reference coordinate calculation unit 61 converts the position of the grid point in such an input coordinate system into a position in the output coordinate system.
  • FIG. 39 is an explanatory diagram of the coordinate transformation of the grid point mesh.
  • a change similar to the change received by the input image may be applied to the grid point mesh.
  • the lens distortion removal processing is applied to the grid point mesh in response to the lens distortion removal processing being applied to the input image, and then the same orientation as that of the camera is applied. Rotate to. This is the conversion to the output coordinate system.
  • the grid point mesh converted into the output coordinate system as described above and the segment matrix as shown in FIG. 40A are used.
  • the segment matrix represents the position of each segment (indicated by the ⁇ mark in the figure) when the output image is divided into predetermined segment units.
  • the size of one segment is assumed to be, for example, 64 pixels ⁇ 64 pixels.
  • FIG. 40B shows the grid point mesh coordinate-transformed into the output coordinate system and the segment matrix superposed in the output coordinate system.
  • the size of the grid point mesh is larger than the size of the segment matrix because the size of the input image is larger than the size of the output image as described above.
  • the reference coordinate calculation unit 61 obtains the reference coordinate CR for each segment based on the positional relationship between each segment and the grid points in the output coordinate system. For this purpose, the reference coordinate calculation unit 61 first performs a segment search as shown in FIG. 41.
  • the segment search is a process for grasping which square in the grid point mesh the segment position indicated by the ⁇ mark is located in each segment constituting the segment matrix.
  • the reference coordinate calculation unit 61 specifies the included segment position for each square in the grid point mesh by internal / external determination. By this inside / outside determination, it is specified in which grid of the grid point mesh each segment position is located.
  • the reference coordinate CR at each segment position can be obtained based on the IMU quaternion at each of the four grid points including the segment position.
  • each grid point in the grid point mesh is associated with the information of the reference information CR calculated from the corresponding IMU quaternion.
  • the reference coordinate CR associated with each grid point in this way is referred to as “grid point reference coordinate”.
  • the reference coordinate calculation unit 61 identifies in which grid of the grid point mesh each segment position is located by internal / external determination (segment search), and then performs trigonometric interpolation as shown in FIG. 42 for each segment position.
  • the reference coordinate CR of is calculated. Specifically, in this trigonometric interpolation, the coordinates of the segment position, the coordinates of three of the four grid points of the grid containing the segment position in the grid point mesh, and the coordinates of those grid points are further associated with each other. The information of the grid point reference coordinates obtained is used. This trigonometric interpolation may be performed as shown in FIG. 43, for example.
  • remesh data as shown in FIG. 44 can be obtained.
  • This remesh data is data indicating the reference coordinate CR of each position at the segment particle size in the output coordinate system.
  • the reference coordinate CR of each position at the segment particle size that is, the reference coordinate CR calculated for each segment position is represented by the ⁇ mark.
  • the reference coordinate calculation unit 61 obtains the reference coordinate CR for each pixel position in the output image based on the remesh data as described above.
  • FIG. 45 is an image diagram of obtaining the reference coordinate CR of the pixel position unit from the remesh data, and the reference coordinate CR of the pixel position unit is represented by the mark in the figure.
  • the reference coordinate CR is obtained by linear interpolation (bilinear interpolation) using remesh data (reference coordinate CR at the segment particle size). Specifically, it is obtained by bilinear interpolation using the reference coordinate CR of each point at each of the four corners of the segment containing the target pixel position.
  • the reason why the above-mentioned trigonometric interpolation is not used is that the bilinear interpolation is lighter than the trigonometric interpolation, and the data once converted into the remesh data can obtain sufficient accuracy even by the bilinear interpolation.
  • trigonometric interpolation is implemented as a circuit as a hardware block in the LSI, it is more advantageous from the viewpoint of circuit scale to divert this block to trigonometric interpolation of all pixels than to separately provide a bilinear interpolation circuit. It is said that.
  • the reference coordinate CR is calculated by the interpolation process based on the remesh data as described above, it may be a value including a decimal number instead of an integer unit (that is, a pixel unit in the input image). Therefore, the interpolation filter 66 shown in FIG. 35 is used for rendering the output image based on the reference coordinate CR.
  • FIG. 46 is an explanatory diagram of the interpolation process by the interpolation filter 66.
  • the pixel values of a plurality of pixels required for rendering for each output pixel are sequentially input to the interpolation filter 66 under the control of the memory control unit 64. Will be done.
  • the pixel values for a plurality of pixels required for rendering for each output pixel include a pixel including the position of the input coordinate system indicated by the reference coordinate CR for the output pixel and peripheral pixels of the pixel. It is the data of the area consisting of a plurality of pixels including the above (see the area Ar surrounded by a thick frame in the figure).
  • the pixel including the position of the input coordinate system indicated by the reference coordinate CR will be referred to as “reference pixel Pr”.
  • the pixel area required for rendering including the reference pixel Pr and its peripheral pixels is referred to as "reference area Ar”.
  • the reference area Ar is an area for m pixels ⁇ m pixels (m is a natural number of 3 or more) centered on the reference pixel Pr.
  • the interpolation filter 66 obtains the value of the position indicated by the reference coordinate CR of the output pixel to be processed by interpolation processing using the value of each pixel of the reference region Ar.
  • a Lanczos filter is used for this interpolation process.
  • a Lanczos2 filter or a hybrid filter blended with a Gaussian filter from the viewpoint of preventing aliasing.
  • This hybrid filter is effective for Lanczos2 interpolation in the RAW format in which the image format is arranged in RGGB, and is particularly used for preventing aliasing in the high frequency band.
  • the interpolation filter 66 sequentially performs such interpolation processing for each output pixel. As a result, a stabilized output image can be obtained.
  • the lattice points are provided with luminance control information and the like in addition to the reference coordinate CR, and the gain is adjusted together with the interpolation processing.
  • the grid points local motion information obtained from the SLAM technology for self-position estimation and depth information from a depth sensor such as a ToF sensor that obtains the depth of the image, the degree of freedom on a grid point basis is high. It can also be used for coordinate correction, depth correction, etc.
  • FIG. 47 is a block diagram showing an example of the internal configuration of the reference coordinate calculation unit 61 shown in FIG. 35.
  • the reference coordinate calculation unit 61 includes a grid point mesh generation / molding unit 81, a segment matrix generation unit 82, a segment search unit 83, a remesh data generation unit 84, and each pixel coordinate interpolation unit 85.
  • the grid point mesh generation / forming unit 81 performs processing for forming the grid point mesh, such as generation of the grid point mesh and rotation for conversion to the output coordinate system described above (see FIG. 39).
  • FIG. 48 is a diagram for explaining an example of the internal configuration of the grid point mesh generation / forming unit 81. Note that FIG. 48 also shows an image diagram schematically showing the process of forming the grid point mesh together with the internal configuration example of the grid point mesh generation / molding unit 81.
  • the grid point mesh generator / forming unit 81 includes a grid point mesh generator 81a, a lens distortion corrector 81b, a projector 81c, a rotor 81d, a free curvature perspective projector 81e, a scanning controller 81f, and a clip device 81g. , And each grid point reference coordinate calculator 81h.
  • the grid point mesh generation / forming unit 81 generates a grid point mesh.
  • the lens distortion corrector 81b performs lens distortion correction processing on the grid point mesh based on the lens parameters.
  • the projector 81c projects (projects) the grid point mesh after the lens distortion correction processing by the lens distortion corrector 81b onto the virtual celestial sphere.
  • the projection method for example, central projection, equidistant projection, or the like can be adopted (the image diagram in the figure shows an example of central projection).
  • the rotor 81d rotates the grid point mesh projected on the virtual celestial sphere by the projector 81c based on the IMU quaternion. By this rotation, the action of rotating in the same direction as the camera as described above can be obtained. For rotation, information indicating the amount of rotation in the IMU quaternion is used.
  • the free curvature perspective projector 81e projects (reprojects) the grid point mesh rotated by the rotor 81d onto a plane by free curvature perspective projection based on the projection parameters.
  • the scanning controller 81f performs an affine transformation process for setting an appropriate scale and changing the offset of the grid point mesh projected on the plane.
  • the scanning controller 81f performs these scale setting and offset change based on, for example, a predetermined parameter as a predetermined scale / offset parameter.
  • the clip device 81g performs a clip process on the grid point mesh processed by the scanning controller 81f to prevent the data from exceeding the fixed minority point accuracy. If the grid points exceed the fixed-point data area, all the segments belonging to the grid points are regarded as invalid segments, and exception processing for black image output is performed in the subsequent stage. The coordinates of each grid point in the output coordinate system are determined by the clip processing by the clip device 81g.
  • Each grid point reference coordinate calculator 81h calculates the reference coordinates of each grid point (the above-mentioned grid point reference coordinates) in the grid point mesh based on the IMU quaternion.
  • each grid point determined by the clip processing of the clip device 81g as described above is supplied as the grid point coordinate information from the grid point mesh generation / forming unit 81 to the segment search unit 83. Further, each grid point reference coordinate obtained by each grid point reference coordinate calculator 81h is supplied from the grid point mesh generation / forming unit 81 to the remesh data generation unit 84.
  • the segment search unit 83 is based on the segment matrix generated by the segment matrix generation unit 82 and the grid point coordinate information supplied from the grid point mesh generation / molding unit 81, and the segment search unit 83 described above (inside / outside determination: FIG. 40 and (See FIG. 41). As a result, for each segment position in the segment matrix, four grid points including the segment position are specified.
  • the remesh data generation unit 84 performs the above-mentioned trigonometric interpolation for each segment position based on the information of each lattice point reference coordinate supplied from the lattice point mesh generation / molding unit 81 and the information of the segment search result by the segment search unit 83. Perform (see FIGS. 42 and 43) to generate remesh data (see FIG. 44). As described above, the remesh data can be rephrased as the reference coordinate CR at the segment particle size. The remesh data generation unit 84 outputs the generated remesh data to each pixel coordinate interpolation unit 85.
  • Each pixel coordinate interpolation unit 85 obtains the reference coordinate CR for each pixel position of the output image based on the remesh data. As described above, the reference coordinate CR of each pixel position is obtained by performing bilinear interpolation based on the remesh data. Each pixel coordinate interpolation unit 85 outputs the reference coordinate CR of each pixel position to the memory control unit 64 shown in FIG. 35.
  • the memory control unit 64 shown in FIG. 35 controls writing data from the buffer memory 63 to the cache memory 65 based on the reference coordinate CR. Further, the memory control unit 64 sequentially reads the data of the reference area Ar (see FIG. 46) corresponding to each pixel position of the output image from the cache memory 65 based on the reference coordinate CR, and the interpolation filter 66. Output to. As a result, in the interpolation filter 66, the interpolation processing using the data of the reference area Ar is sequentially performed for each pixel position of the output image, and the stabilized output image is obtained.
  • the matching with the output coordinate system is performed only by the one-dimensional information as the virtual line L1 as in the conventional case. Instead, it is supposed to be matched with the output coordinate system by using two-dimensional information as a grid point mesh. As a result, the accuracy of the reference coordinate CR can be improved, and the performance of the stabilization process can be improved.
  • the grid point mesh an example of generating a grid point mesh in the fixed mesh mode as shown in FIG. 49A has been given, but the grid point mesh is generated, for example, as illustrated in FIGS. 49B to 49D. It is also possible to adopt modes other than the fixed mesh mode, such as a one-dimensional variable mesh mode, a two-dimensional variable mesh mode, and a finite element mesh mode.
  • the portion excluding the IMU sensor 2 and the image sensor 3, that is, the portion from the preprocessing unit 4 to the stabilization processing unit 13 is a portion that performs signal processing on the sensor signal. If there is, it can be called a signal processing unit 1a.
  • the signal processing unit 1a can be configured by a chip (another integrated circuit chip) different from the image sensor 3.
  • a chip another integrated circuit chip
  • the image sensor 3 and the signal processing unit 1a are contained in one semiconductor package as schematically shown in FIG. It is possible to take the configuration implemented in.
  • the image sensor 3 and the signal processing unit 1a are mounted in one semiconductor package in this way, the image sensor 3 is laminated on the signal processing unit 1a as illustrated in FIG. 52. Can also be taken.
  • 54 and 55 are diagrams for explaining an example of communication recovery when a communication interruption occurs in protocol communication.
  • wearable cameras wireless video transmission is assumed, and the possibility of frequent communication interruptions increases.
  • the communication band is very large, but the directivity is high and there is a strong tendency for the communication to be interrupted outside the scope of communication due to violent movements such as sports. Therefore, for example, when communication is interrupted with respect to a conventional broadcasting system.
  • State control that enables high-speed recovery against communication interruption is required.
  • preprocessing unit 4 is provided as a component.
  • FIG. 56 is an explanatory diagram of a pretreatment for removing the bias on the gyro side.
  • the detector Based on the horizontal reset instruction from the host side, the detector detects that the IMU is in a stationary state. A median filter is installed in front of the detector to absorb sudden noise. After the static determination is made, the moving average for a predetermined time is calculated, and the calculated moving average value is saved in the memory as a bias amount. Based on the amount of bias stored in the memory in this way, offset removal is performed for each sample and gyro 3-axis data.
  • FIG. 57 is an explanatory diagram of a preprocessing for horizontal reset on the acceleration side.
  • accelerometers are always affected by gravitational acceleration and cannot be perfectly level in real-world use cases. Therefore, it is not possible to remove the bias as purely as on the gyro side.
  • the accelerometer considers the amount of deviation at that time to be horizontal even if there is some deviation, for example, in a state where the wearer of the wearable camera is in a horizontal posture.
  • the detector detects that it is in a stationary state, and from the acceleration value and gravitational acceleration at that time.
  • FIG. 58 is an explanatory diagram for correcting the deviation between the optical axis and the rotation axis.
  • a camera equipped with an IMU sensor is required to be manufactured so that the optical axis (three axes composed of a lens and an image sensor) and the rotation axis (three axes of the IMU) do not deviate from each other.
  • a "camera calibration” technique for correcting the misalignment between the center of the lens and the axis of the image sensor has been established, and it can be easily carried out by using opencv or the like.
  • an "IMU calibration” method that matches the acceleration constituting the IMU and the axis deviation of the gyro has also been established, and can be carried out by a widely known technique such as IMU-TK.
  • a board (chess board or the like) capable of extracting features is used to perform "optical axis / rotation axis deviation correction" at the same time as “camera calibration”. It is assumed that the board is installed so that it is horizontal and vertical to gravity. As a premise of this measurement, IMU calibration is performed and applied separately or at the same time as this measurement. The product of the corrected rotation matrix (3 ⁇ 3) and the IMU value (3 ⁇ 1) is the corrected IMU value. The specific procedure is shown below. 1) Install a board that can extract features horizontally and vertically. 2) Use an IMU-equipped camera to shoot the board from N directions. After shooting from one direction, keep the camera still in that position for a few seconds.
  • the feature amount extraction from the IMU signal has been given as an example, but the feature amount extraction method as the embodiment is not limited to the IMU signal but other. It is also applicable to signals.
  • various feature extraction methods for image signals will be described.
  • 59 and 60 are explanatory views of a method for extracting imaging noise features.
  • image data as a learning image is prepared.
  • a frame buffer 91 is provided.
  • Random noise is added to the image data for learning by the random noise generation unit 92 and the random noise addition unit 93, and this is given to the input of the SAE70 in the learner to perform control line association learning.
  • a plurality of control line association learners 71a are provided, and feature quantities obtained in the corresponding intermediate layers in the SAE 70 are input to each control line association learner 71a.
  • the feature amount obtained by convolution of the control line association learner 71a of the upper layer is input to each control line association learner 71a except for the control line association learner 71a of the uppermost layer, and the accuracy is improved.
  • an algorithm for switching the mode of the output noise feature amount is generated according to the value given to the control line. Specifically, an algorithm that outputs images having different noise levels is generated depending on the value given to the control line.
  • the difference between these extracted feature amounts is calculated, and LPF processing or HPF processing is performed as necessary to extract the imaging noise feature amount.
  • the imaging noise feature amount extracted in this way is input to the signal correction processing unit 9 after being adjusted by the feature amount adjuster 8.
  • the signal correction processing unit 9 performs correction processing for removing imaging noise on the captured image input via the preprocessing unit 5 based on the imaging noise feature amount.
  • 61 and 62 are explanatory views of a focus feature extraction method. If the feature amount as the focus can be extracted, the focus position (focus position) in the depth direction of the image can be adjusted by the image correction process using the feature amount. That is, the focus can be adjusted after shooting.
  • a first focus image and a second focus image are prepared as learning images.
  • These first and second focus images are images having different focus positions in the depth direction (distance direction). Specifically, a front focus image is prepared as the first focus image, and a rear focus image is prepared as the second focus image.
  • the switch unit 32 switches and outputs the first and second focus images according to the value of the control line, feeds them to the input of the SAE 70 in the learner via the frame buffer 91, and performs control line association learning.
  • the teacher data is given by switching the first and second focus images according to the value of the control line by the switch unit 32.
  • the control line value 1.0 switches to the second focus image.
  • learning is performed at multiple resolutions using a plurality of control line association learners 71a to improve accuracy.
  • an algorithm for switching the mode of the output focus feature amount is generated according to the value given to the control line. Specifically, an algorithm that outputs an image having a different focus position in the depth direction is generated depending on the value given to the control line.
  • the refactoring unit 72 the difference between these extracted feature amounts is calculated, and LPF processing or HPF processing is performed as necessary to extract the focus feature amount.
  • the focus feature amount extracted in this way is input to the signal correction processing unit 9 after being adjusted by the feature amount adjuster 8.
  • the signal correction processing unit 9 performs correction processing for adjusting the focus position in the depth direction with respect to the captured image input via the preprocessing unit 5 based on the focus feature amount.
  • the warp feature amount is a feature amount indicating the amount of warp between two correlated images. If the warp features can be extracted, it is possible to obtain an integral image between stereo images, an interpolated image between two temporally continuous frame images, and the like.
  • first correlation image and a second correlation image two types of images having a correlation
  • first and second correlated images for example, a temporally correlated image (for example, an image for two consecutive frames) or a stereo image is prepared.
  • the switch unit 32 switches and outputs the first and second correlation images according to the value of the control line, feeds them to the input of the SAE 70 in the learner via the frame buffer 91, and performs control line association learning.
  • the teacher data is given by switching the first and second correlation images according to the value of the control line by the switch unit 32.
  • the control line value 0.0 switches to the first correlation image
  • the control line value 1.0 switches to the second correlation image.
  • learning is performed at multiple resolutions using a plurality of control line association learners 71a to improve accuracy.
  • the refactoring unit 72 analyzes the motion vector by template matching between these two extracted features, and performs LPF processing or HPF processing on the obtained motion vector amount as necessary, and features as a warp feature amount. Output to the amount adjuster 8.
  • the signal correction processing unit 9 uses an interpolated image (an interpolated image) with respect to the captured image input via the preprocessing unit 5 based on the motion vector amount as the warp feature amount input via the feature amount adjuster 8.
  • a correction process is performed to generate a temporally or spatially correlated image) with respect to the input image.
  • the method for generating an interpolated image based on the warp features as described above can obtain extremely accurate results as compared with a method using a matching method such as a conventional ZNCC (Zero-mean Normalized Cross-Correlation).
  • a matching method such as a conventional ZNCC (Zero-mean Normalized Cross-Correlation).
  • an example of performing correction processing based on the extraction feature amount on the captured image input from the image sensor 3 has been given, but for example, a storage device such as an HDD (Hard Disk Drive) or an SSD (Solid State Drive). It is also possible to perform correction processing based on the extraction feature amount on the image read from.
  • a storage device such as an HDD (Hard Disk Drive) or an SSD (Solid State Drive). It is also possible to perform correction processing based on the extraction feature amount on the image read from.
  • the present technology is not limited to the specific examples described so far, and can be configured as various modified examples.
  • the IMU sensor 2 and the image sensor 3 have been illustrated as examples of the sensors targeted by the present technology, but the sensors are not limited to these IMU sensors 2 and the image sensor 3.
  • various sensors such as a temperature sensor, a microphone, a magnetic sensor, a position sensor, and an altitude sensor can be mentioned.
  • the signal processing device 1 includes the score classification scene analyzer 10, but it is not essential to include the score classification scene analyzer 10.
  • the first signal processing device (1) as the embodiment has a neural network, and the feature amount learned to extract the feature amount for a specific event for the input signal from the sensor. It includes an extraction unit (7) and a correction unit (signal correction processing unit 9) that corrects an input signal based on the feature amount extracted by the feature amount extraction unit.
  • the "feature amount" for a specific event is, for example, if the sensor is a motion sensor (motion sensor) for detecting the movement of an object such as an acceleration sensor or an angular velocity sensor, it is about centrifugal force and vibration as an effect.
  • the feature amount of the above can be mentioned.
  • the feature amount that represents what is centrifugal force it is a feature amount that represents what is centrifugal force, a feature amount that represents what vibration should be given to produce a sense of presence in the stabilization process of a camera, and the like.
  • the sensor is an image sensor
  • the feature amount of imaging noise feature amount representing what is imaging noise
  • the feature amount of focus feature amount representing what is focus
  • the like can be mentioned.
  • the feature amount as the centrifugal force can be extracted, by canceling the feature amount in the input signal, it is possible to realize a process of removing the adverse effect of the centrifugal force as the stabilization process, and it is possible to improve the stabilization performance.
  • the focus position (focus position) in the depth direction of the image can be adjusted by the image correction process using the feature amount. That is, the focus can be adjusted after shooting.
  • features for events that are difficult to express in mathematical formulas, such as centrifugal force and focus are extracted like objects by learning using AI technology, and input signals are input based on the extracted features. Is being corrected. This makes it possible to easily realize the correction process, which was difficult with the conventional filter process. Therefore, it is possible to improve the performance of the correction of the input signal from the sensor.
  • the signal processing performance is improved by extracting the features of an object such as "centrifugal force" from the sensor information.
  • image processing for example, imaging noise, optical phenomena such as focus, warp feature amount (motion vector), etc. are all feature-extracted in the form of objects, and image processing with unprecedented performance is realized.
  • this embodiment has technical features not found in the conventional technology in that a sensing system in the form of an "object sensor” having a high degree of abstraction is constructed by combining the conventional sensor with the AI technology. It is a thing.
  • the first signal processing device as the embodiment includes an adjuster (feature amount adjuster 8) for adjusting the feature amount extracted by the feature amount extraction unit. This makes it possible to adjust the feature amount so that a better result can be obtained as a correction result of the input signal. Therefore, the correction performance of the input signal can be improved.
  • an adjuster feature amount adjuster 8 for adjusting the feature amount extracted by the feature amount extraction unit.
  • the sensor is a motion sensor (IMU sensor 2) that detects the motion of the image pickup apparatus, and the correction unit uses the input signal from the motion sensor corrected based on the feature amount.
  • a stabilization processing unit (13) that performs stabilization processing on the captured image of the imaging device.
  • the stabilization process can be performed based on the motion detection signal from which the centrifugal force component is removed.
  • the feature amount of vibration as an effect is extracted as the feature amount
  • the first signal processing device as the embodiment has a regulator for adjusting the feature amount extracted by the feature amount extraction unit and a neural network, and has the performance of stabilization processing based on the input signal from the motion sensor.
  • a score calculation unit (score classification scene analyzer 10) learned to calculate an evaluation score representing the above is provided, and the regulator corrects an input signal based on the evaluation score calculated by the score calculation unit.
  • the feature amount used for is adjusted.
  • the stabilization processing unit has a plurality of lattice points arranged in the horizontal direction and the vertical direction in the output coordinate system which is the coordinate system of the output image, and the lattice points.
  • a grid point mesh to which motion information obtained from an input signal is associated with each is generated, and stabilization processing is performed based on the motion information for each grid point in the grid point mesh. This makes it possible to improve the accuracy of the reference coordinates at each pixel position of the output image. Therefore, the performance of the stabilization process can be improved.
  • the correction unit calculates the delay amount generated in the correction processing of the input signal based on the feature amount, and adjusts the phase of the input signal based on the delay amount.
  • a phase adjuster (phase adjusting unit 11) is provided. This makes it possible to realize an appropriate stabilization process even when the correction process has a certain amount of delay. In particular, effective correction for RS distortion becomes possible. Therefore, the stabilization performance can be improved.
  • the integrated circuit chip (signal processing unit 1a) having an image sensor for obtaining an captured image and having a feature amount extraction unit and a correction unit is the same as the image sensor. It is mounted in a semiconductor package (see FIGS. 51 and 52). This makes it possible to reduce the size of the signal processing device as compared with the case where the image sensor and the integrated circuit chip are mounted in separate packages.
  • an image sensor is laminated on the integrated circuit chip (see FIG. 52).
  • the image sensor and the integrated circuit chip can be vertically stacked in the same package and accommodated in a small space. Therefore, the signal processing device can be miniaturized.
  • the first signal processing method as an embodiment is the above-mentioned feature extracted by a feature amount extraction unit which has a neural network and is learned to extract a feature amount for a specific event for an input signal from a sensor.
  • This is a signal processing method that corrects the input signal based on the amount. Even by such a first signal processing method, the same operation and effect as the above-mentioned first signal processing device can be obtained.
  • the second signal processing device (1) as the embodiment is intermediate between the laminated autoencoder (70) that processes the input signal from the sensor and the laminated autoencoder having a neural network and after pre-training.
  • the first output which is the output of the control line association learner when the first value is given to the line, and the control line association learner when the control line is given a second value different from the first value.
  • the "specific event” referred to here means an event for which a feature amount is to be extracted, such as centrifugal force for motion data and focus for image data.
  • the "event mode” referred to here is, for example, a mode of "with centrifugal force” or “without centrifugal force” in the case of centrifugal force, or a mode of "front pin” and “rear” in the case of focus. It means an aspect related to a specific event such as an aspect of "pin”.
  • the feature amount for a specific event is obtained as the output difference between the case of the first event mode (for example, with centrifugal force) and the case of the second event mode (for example, without centrifugal force). Therefore, the feature amount for a specific event can be appropriately extracted.
  • the control line association learner it is not necessary for the control line association learner to adopt a configuration using a fully connected layer as in a general CNN, and the calculation resources for feature quantity extraction can be reduced. Therefore, according to the present embodiment, it is possible to appropriately extract the feature amount for a specific event while suppressing the increase in the calculation resource.
  • the refactoring device has a frequency filter that extracts a part of the frequency components of the signal obtained as the difference (see FIG. 8). This makes it possible to perform waveform shaping on the signal obtained as the difference between the first output and the second output of the control line association learner. Therefore, even if the learning result of the control line association learner is insufficient, it is possible to approach the expected feature amount, and the accuracy of feature amount extraction can be improved.
  • the second signal processing device as the embodiment includes an adjuster (feature amount adjuster 8) for adjusting the feature amount extracted by the refactoring device.
  • an adjuster feature amount adjuster 8 for adjusting the feature amount extracted by the refactoring device.
  • the sensor is a motion sensor (IMU sensor 2) that detects the motion of the object, and the stacked autoencoder inputs the detection signal by the motion sensor as an input signal. doing.
  • IMU sensor 2 a motion sensor
  • the stacked autoencoder inputs the detection signal by the motion sensor as an input signal.
  • This makes it possible to extract the feature amount related to the movement of the object by the learned AI. Therefore, for example, a feature amount for centrifugal force acting on an in-vehicle camera (feature amount representing what is centrifugal force) and a feature amount for vibration as an effect (to produce a sense of presence in the stabilization process of the camera).
  • the feature amount can be appropriately obtained for the event that is difficult to formulate.
  • the sensor is an image sensor (3)
  • the stacked autoencoder inputs an image image signal captured by the image sensor as an input signal.
  • the sensor is a motion sensor that detects the motion of the imaging device, the stacked auto encoder inputs the detection signal by the motion sensor as an input signal, and the refactoring device extracts the signal.
  • a correction unit (signal correction processing unit 9) that corrects the input signal based on the feature amount, and a stabilization processing unit that performs stabilization processing on the captured image of the imaging device based on the input signal corrected by the correction unit. (13) and.
  • the feature amount of vibration as an effect is extracted as the feature amount
  • the integrated circuit chip having an image sensor for obtaining an captured image, a stacked autoencoder, a control line association learner, and a refactoring device is the same as the image sensor. It is mounted in the semiconductor package of. This makes it possible to reduce the size of the signal processing device as compared with the case where the image sensor and the integrated circuit chip are mounted in separate packages.
  • the image sensor is laminated on the integrated circuit chip.
  • the image sensor and the integrated circuit chip can be vertically stacked in the same package and accommodated in a small space. Therefore, the signal processing device can be miniaturized.
  • the feature amount obtained in the intermediate layer of the laminated auto-encoder that processes the input signal from the sensor and the laminated auto-encoder having a neural network and after pre-training is used as input.
  • a signal processing device including a control line associative learner for learning by associating different event modes related to a specific event with different control line values, and a control line associative learning device.
  • the first output which is the output of the control line association learner when a value is given
  • the second output which is the output of the control line association learner when a second value different from the first value is given to the control line.
  • This is a signal processing method for obtaining a difference from the output.
  • the same operation and effect as the above-mentioned second signal processing apparatus can also be obtained by such a second signal processing method.
  • a specific amount of features obtained in the intermediate layer of the laminated auto-encoder that processes the input signal from the sensor and the laminated auto-encoder having a neural network and after pre-training is used as an input.
  • a parameter search method for a signal processing device wherein the information processing device selects a combination of parameters to be set in the signal processing device according to a game operation, and the signal processing device in which the parameters set by the selected combination are set.
  • This is a parameter search method for acquiring an evaluation score for a signal processing result and searching for a combination of parameters satisfying a predetermined evaluation score condition based on the acquired evaluation score (see FIGS. 33 and 34).
  • the search for the optimum parameters for the parameters related to the feature amount extraction processing in the signal processing device such as the first value and the second value given to the control line, is searched for by the distributed processing approach via the game content. It becomes possible to realize by. Therefore, more complicated refactoring propositions can be solved efficiently, and parameter search can be made more efficient.
  • a feature amount extraction unit that has a neural network and is learned to extract features for a specific event for an input signal from a sensor.
  • a signal processing device including a correction unit that corrects the input signal based on the feature amount extracted by the feature amount extraction unit.
  • the signal processing device according to (1) further comprising an adjuster for adjusting the feature amount extracted by the feature amount extraction unit.
  • the sensor is a motion sensor that detects the motion of the imaging device.
  • An adjuster for adjusting the feature amount extracted by the feature amount extraction unit has a neural network, and includes a score calculation unit learned to calculate an evaluation score representing the performance of the stabilization process based on an input signal from the motion sensor.
  • the regulator The signal processing device according to (3), wherein the correction unit adjusts the feature amount used for correcting the input signal based on the evaluation score calculated by the score calculation unit.
  • the stabilization processing unit In the output coordinate system, which is the coordinate system of the output image, a grid point mesh is generated which has a plurality of grid points arranged in the horizontal direction and the vertical direction, and the motion information obtained from the input signal is associated with each grid point.
  • the correction unit is provided with a phase adjuster for calculating the delay amount generated in the correction processing of the input signal based on the feature amount and adjusting the phase of the input signal based on the delay amount.
  • the signal processing device according to any one of (5). (7) It has an image sensor that obtains the captured image, The signal processing device according to any one of (3) to (6), wherein an integrated circuit chip having the feature amount extraction unit and the correction unit is mounted in the same semiconductor package as the image sensor. (8) The signal processing device according to (7) above, wherein the image sensor is laminated on the integrated circuit chip. (9) A signal processing method that corrects the input signal based on the feature amount extracted by the feature amount extraction unit that has a neural network and is learned to extract the feature amount for a specific event for the input signal from the sensor. ..

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Image Analysis (AREA)

Abstract

本技術に係る信号処理装置は、ニューラルネットワークを有し、センサからの入力信号を対象として特定事象についての特徴量を抽出するように学習された特徴量抽出部と、前記特徴量抽出部が抽出した前記特徴量に基づき、前記入力信号の補正を行う補正部と、を備える。

Description

信号処理装置、信号処理方法
 本技術は、信号処理装置とその方法に関し、特には、センサからの入力信号をAI(Artificial Intelligence:人工知能)を用いて補正する技術に関する。
 例えば、加速度センサや角速度センサ等の動きセンサ(モーションセンサ)や、イメージセンサ等の各種センサが広く普及している。
 この種のセンサでは、検出信号にノイズ等の不要成分が含まれる場合があり、これを除去することが要請される場合がある。例えば、動きセンサを車載カメラのブレ補正処理(スタビライズ処理)に用いる場合には、車両走行に伴い遠心力が生じた場合は動きセンサの検出信号に遠心力の成分が重力加速度に混ざりながら含まれることになるが、遠心力の成分はブレ補正処理においては不要な成分となるため、除去されるべきである。或いは、イメージセンサの撮像画像にはフォトンショットノイズや暗電流ノイズ、読み出しノイズ等といった撮像に伴う各種のノイズ(以下「撮像ノイズ」と表記する)が重畳するが、画質向上のためこれらの撮像ノイズは除去されるべきである。
 なお、関連する従来技術については下記特許文献1を挙げることができる。
特開2014-66995号公報
 例えば、上記のような不要成分の除去処理等、センサからの入力信号には所要の補正処理が施される場合がある。
 本技術はかかる事情に鑑み為されたものであり、センサからの入力信号の補正に関して性能向上を図ることを目的とする。
 本技術に係る信号処理装置は、ニューラルネットワークを有し、センサからの入力信号を対象として特定事象についての特徴量を抽出するように学習された特徴量抽出部と、前記特徴量抽出部が抽出した前記特徴量に基づき、前記入力信号の補正を行う補正部と、を備えるものである。
 特定事象についての「特徴量」とは、例えば、センサが加速度センサや角速度センサ等の対象物の動きを検出するための動きセンサ(モーションセンサ)であれば、遠心力や、エフェクトとしての振動についての特徴量等を挙げることができる。すなわち、遠心力とは何かを表す特徴量や、カメラのスタビライズ処理において臨場感を演出するために与えるべき振動とは何かを表す特徴量等である。或いは、センサがイメージセンサであれば、撮像ノイズの特徴量(撮像ノイズとは何かを表す特徴量)、フォーカスの特徴量(フォーカスとは何かを表す特徴量)等を挙げることができる。例えば、遠心力としての特徴量が抽出できれば、入力信号におけるその特徴量を打ち消すことで、スタビライズ処理として遠心力による悪影響を除去した処理を実現でき、スタビライズ性能の向上を図ることができる。或いは、フォーカスとしての特徴量を抽出できれば、該特徴量を用いた画像補正処理により画像の深度方向におけるフォーカス位置(合焦位置)を調整することが可能となる。つまり、撮影後のピント調整が可能となる。
 本技術では、例えばこれら遠心力やフォーカスといったような、数式で表すことが困難な事象についての特徴量を、AI(Artificial Intelligence:人工知能)技術を用いた学習によりオブジェクトのように抽出し、抽出した特徴量に基づき入力信号を補正している。これにより、従来のフィルタ処理では困難であった補正処理を容易に実現可能となる。
 上記した本技術に係る信号処理装置においては、前記特徴量抽出部が抽出した前記特徴量を調整する調整器を備えた構成とすることが可能である。
 これにより、入力信号の補正結果としてより良好な結果が得られるように特徴量の調整を行うことが可能となる。
 上記した本技術に係る信号処理装置においては、前記センサは撮像装置の動きを検出する動きセンサとされ、前記補正部が前記特徴量に基づき補正した前記動きセンサからの入力信号に基づき、前記撮像装置の撮像画像についてのスタビライズ処理を行うスタビライズ処理部を備えた構成とすることが可能である。
 これにより、例えば特徴量として遠心力の特徴量を抽出する場合には、遠心力の成分を除去した動き検出信号に基づいてスタビライズ処理を行うことが可能となる。或いは、特徴量として例えばエフェクトとしての振動の特徴量を抽出する場合であれば、エフェクトとしての振動成分を除去した動き検出信号に基づくスタビライズ処理を行うことが可能となる。すなわち、スタビライズ処理において該エフェクトとしての振動成分が除去されないようにすることが可能となる。
 上記した本技術に係る信号処理装置においては、前記特徴量抽出部が抽出した前記特徴量を調整する調整器と、ニューラルネットワークを有し、前記動きセンサからの入力信号に基づき前記スタビライズ処理の性能を表す評価スコアを算出するように学習されたスコア算出部と、を備え、前記調整器は、前記スコア算出部が算出した前記評価スコアに基づき、前記補正部が前記入力信号の補正に用いる前記特徴量の調整を行う構成とすることが可能である。
 上記のように動きセンサからの入力信号に基づき評価スコアを算出することで、スタビライズ処理後の画像に基づく評価スコアの算出を行う場合よりも、演算量の低減が図られる。
 上記した本技術に係る信号処理装置においては、前記スタビライズ処理部は、出力画像の座標系である出力座標系において、水平方向及び垂直方向にそれぞれ複数配列された格子点を有し前記格子点ごとに前記入力信号から求まる動き情報が対応づけられる格子点メッシュを生成し、前記格子点メッシュにおける前記格子点ごとの前記動き情報に基づいて前記スタビライズ処理を行う構成とすることが可能である。
 これにより、出力画像の各画素位置における参照座標の正確性を高めることが可能とされる。
 上記した本技術に係る信号処理装置においては、前記補正部が前記特徴量に基づき行う前記入力信号の補正処理で生じる遅延量を計算し、該遅延量に基づいて前記入力信号についての位相調整を行う位相調整器を備えた構成とすることが可能である。
 これにより、補正処理が或る程度遅延量をもつ場合であっても適切なスタビライズ処理を実現することが可能となる。
 上記した本技術に係る信号処理装置においては、前記撮像画像を得るイメージセンサを有し、前記特徴量抽出部と前記補正部とを有する集積回路チップが前記イメージセンサと同一の半導体パッケージ内に実装された構成とすることが可能である。
 これにより、イメージセンサと集積回路チップとを別パッケージで実装する場合よりも信号処理装置の小型化を図ることが可能となる。
 上記した本技術に係る信号処理装置においては、前記集積回路チップに前記イメージセンサが積層された構成とすることが可能である。
 これにより、イメージセンサと集積回路チップとを同一パッケージ内において縦方向に積み上げて省スペースに収容することが可能となる。
 また、本技術に係る信号処理方法は、ニューラルネットワークを有しセンサからの入力信号を対象として特定事象についての特徴量を抽出するように学習された特徴量抽出部が抽出した前記特徴量に基づき、前記入力信号の補正を行う信号処理方法である。
 このような信号処理方法によっても、上記した本技術に係る信号処理装置と同様の作用が得られる。
本技術に係る実施形態としての信号処理装置の構成例を示したブロック図である。 CNNの説明図である。 実施形態における特徴量抽出部の機能構成を示した機能ブロック図である。 実施形態における特徴量抽出部の具体的な構成例を図である。 実施形態における特徴量抽出部の簡略表現についての説明図である。 遠心力特徴量抽出を行う場合に対応した制御線関連付け学習についての説明図である。 学習済みの制御線関連付け学習器を用いた特徴量抽出のための構成を例示した図である。 実施形態におけるリファクタリング器の内部構成例を示した図である。 実施形態における信号補正処理部の内部構成例を示したブロック図である。 特徴量抽出器に設定されるべき特徴量のブレンド比を探索するための構成を例示した図である。 実施形態におけるスコア解析器のPreTraining処理についての説明図である。 スコア解析アルゴリズムを得るための学習手法についての説明図である。 スコア解析アルゴリズムを得るための別の学習手法についての説明図である。 複数項目の集計スコアに基づいて特徴量のブレンド比を探索するための構成を例示した図である。 仕向に応じた重み付け手法の具体例として、定量的な重み付け手法の例を説明するための図である。 仕向に応じた重み付け手法の具体例として、定性的な重み付け手法の例を説明するためのである。 実施形態におけるスコア分類シーン解析器の生成手法の例を説明するための図である。 実施形態の信号処理装置における特徴量抽出部とスコア分類シーン解析器との構成上の関係を示した図である。 エフェクト振動特徴量の抽出手法(学習環境)についての説明図である。 エフェクト振動特徴量の抽出手法(実装後環境)についての説明図である。 カメラワーク特徴量の抽出手法(学習環境)についての説明図である。 カメラワーク特徴量の抽出手法(実装後環境)についての説明図である。 急変動特徴量の抽出手法(学習環境)についての説明図である。 急変動特徴量の抽出手法(実装後環境)についての説明図である。 フレーム予測特徴量の抽出手法(学習環境)についての説明図である。 フレーム予測特徴量の抽出手法(実装後環境)についての説明図である。 スタビ制動特徴量の抽出手法(学習環境)についての説明図である。 スタビ制動特徴量の抽出手法(実装後環境)についての説明図である。 センサノイズ特徴量の抽出手法(学習環境)についての説明図である。 センサノイズ特徴量の抽出手法(実装後環境)についての説明図である。 ステートマシン特徴量の抽出手法(学習環境)についての説明図である。 ステートマシン特徴量の抽出手法(実装後環境)についての説明図である。 ゲームマイニングによるパラメータ探索に用いるシステム構成例を示したブロック図である。 図33に示す情報処理装置が有するゲームマイニングに係る機能をブロック化して示した機能ブロック図である。 実施形態におけるスタビライズ処理部の内部構成例を示したブロック図である。 傾いたカメラで撮像した様子を示した図である。 IMUクォータニオンと画像入力との関係を示した図である。 格子点メッシュを例示した図である。 格子点メッシュの座標変換についての説明図である。 セグメントマトリクスと格子点メッシュとの関係を説明するための図である。 実施形態におけるセグメント探索についての説明図である。 セグメント位置ごとの参照座標を求めるための三角補間についての説明図である。 三角補間の例を示した図である。 リメッシュデータの説明図である。 リメッシュデータから画素位置単位の参照座標を求めることのイメージ図である。 補間フィルタによる補間処理についての説明図である。 参照座標計算部の内部構成例を示したブロック図である。 格子点メッシュ生成・成形部の内部構成例を説明するための図である。 格子点メッシュの変形例についての説明図である。 信号処理装置における「信号処理部」の区分を説明するための図である。 信号処理装置の構造例を示した図である。 信号処理装置の他の構造例を示した図である。 実施形態の信号処理装置を適用したカメラシステムのプロトコル通信の例を説明するための図である。 プロトコル通信において通信断が起きた場合の通信回復の例を説明するための図である。 同じく、プロトコル通信において通信断が起きた場合の通信回復の例を説明するための図である。 ジャイロ側のバイアス除去のための前処理についての説明図である。 加速度側の水平リセットのための前処理についての説明図である。 光軸と回転軸とのずれ補正についての説明図である。 撮像ノイズ特徴量の抽出手法(学習環境)についての説明図である。 撮像ノイズ特徴量の抽出手法(実装後環境)についての説明図である。 フォーカス特徴量の抽出手法(学習環境)についての説明図である。 フォーカス特徴量の抽出手法(実装後環境)についての説明図である。 ワープ特徴量の抽出手法(学習環境)についての説明図である。 ワープ特徴量の抽出手法(実装後環境)についての説明図である。
 以下、添付図面を参照し、本技術に係る実施形態を次の順序で説明する。

<1.撮像装置の全体構成>
<2.特徴量抽出部について>
<3.特徴量調整器について>
<4.各種特徴量の抽出例>
<5.ゲームマイニング>
<6.スタビライズ処理について>
[6-1.スタビライズ処理部の内部構成]
[6-2.実施形態としてのスタビライズ処理]
<7.構造例>
<8.その他周辺技術>
<9.画像に係る特徴量抽出について>
<10.変形例>
<11.実施形態のまとめ>
<12.本技術>
<1.撮像装置の全体構成>

 図1は、本技術に係る実施形態としての信号処理装置1の構成例を示したブロック図である。ここでは、信号処理装置1がデジタルカメラ装置としての撮像装置に適用された場合を例示する。具体的に、信号処理装置1は、撮像装置による撮像画像について電子ブレ補正(EIS:Electric Image Stabilizer)のための信号処理を行う。以下、電子ブレ補正の処理については「スタビライズ処理」と表記する。
 図示のように信号処理装置1は、IMU(Inertial Measurement Unit)センサ2、イメージセンサ3、前処理部4、前処理部5、クォータニオン計算部6、特徴量抽出部7、特徴量調整器8、信号補正処理部9、スコア分類シーン解析器10、位相調整部11、遅延量計算部12、及びスタビライズ処理部13を備えている。
 イメージセンサ3は、例えば、CMOS(Complementary Metal Oxide Semiconductor)型やCCD(Charge Coupled Device)型などのイメージセンサとされ、二次元に複数配列された受光素子が受光した光を光電変換して撮像画像を得る。
 イメージセンサ3で得られた撮像画像は、前処理部5において例えばホワイトバランス調整やデモザイク処理などの所定の前処理が施された上で、スタビライズ処理部13に出力される。
 IMUセンサ2は、信号処理装置1を有する撮像装置の動きを検出する動きセンサを有し、該動きの検出結果を示す信号を出力する。後述するように、本例のIMUセンサ2は、動きセンサとしてそれぞれ3軸の加速度センサ(後述する加速度センサ2a)と角速度センサ(後述する角速度センサ2b)とを有する。本例では、これら加速度センサと角速度センサの検出信号(3軸×2の6系統)が、上記動きの検出結果を示す信号として出力される。
 以下、IMUセンサ2が出力する、該動きの検出結果を示す信号のことを総称して「IMU信号」と表記する。
 前処理部4は、IMUセンサ2からのIMU信号を入力して前処理としての所定の処理を施してクォータニオン計算部6に出力する。
 クォータニオン計算部6は、前処理部4を介して入力されたIMU信号に基づき、撮像装置の姿勢を表すクォータニオン(Quaternion)を計算する。
 クォータニオン計算部6で計算されたクォータニオン(以下「IMUクォータニオン」と表記する)は、信号補正処理部9に入力され、後述する特徴量に基づいた所定の補正処理が施される。
 計算されたIMUクォータニオンは、加速度、角速度ごとに固定のブレンド比でブレンドされ、信号補正処理部9に入力される。
 一方、特徴量抽出部7には、加速度=4系統、角速度=4系統の計8系統のクォータニオンが入力される。
 信号補正処理部9による補正処理が施されたIMUクォータニオンは、位相調整部11による位相調整を経て、スタビライズ処理部13に入力される。
 スタビライズ処理部13は、このように入力されるIMUクォータニオンに基づき、前処理部5を介して入力される撮像画像についてのスタビライズ処理を行う。なお、スタビライズ処理部13が行うスタビライズ処理の詳細については後に改めて説明する。
 位相調整部11は、遅延量計算部12が計算した遅延量に基づき、信号補正処理部9による補正処理後のIMUクォータニオン(姿勢制御クォータニオン値)についての位相調整を行う。
 位相調整部11は、信号補正処理部9による補正処理に伴いIMU信号側に生じる遅延(撮像画像側に対する遅延)を補償するための位相調整を行うものである。このため、遅延量計算部12は、信号補正処理部9における補正処理の所要時間に基づき遅延量を計算し、位相調整部11は、該遅延量に基づいて姿勢制御クォータニオン値の位相調整を行う。
 ここで、信号補正処理部9が補正に用いる特徴量の情報は、特徴量抽出部7が、クォータニオン計算部6からのIMUクォータニオン(姿勢制御クォータニオン値)に基づき抽出する。
 特徴量抽出部7が姿勢制御クォータニオン値から抽出する特徴量は、例えば、遠心力についての特徴量など、特定の事象についての特徴量である。特徴量抽出部7は、このような特定事象についての特徴量を姿勢制御クォータニオン値から抽出するように学習されたニューラルネットワークを有して構成される。なお、特徴量抽出部7の詳細については後に改めて説明する。
 特徴量調整器8は、特徴量抽出部7により抽出された特徴量を調整する。本例における特徴量調整器8は、スコア分類シーン解析器10が算出する評価スコアに基づき特徴量抽出部7により抽出された特徴量を調整する。
 スコア分類シーン解析器10が算出する評価スコアは、スタビライズ処理の性能を表すスコアとなる。スコア分類シーン解析器10は、このようにスタビライズ処理の性能を表す評価スコアをIMUクォータニオンに基づき算出するように学習された学習済みのニューラルネットワークを有して構成されるが、詳細については後に改めて説明する。
 図示のように信号補正処理部9には、特徴量抽出部7で抽出された特徴量が、特徴量調整器8を介して入力される。
<2.特徴量抽出部について>

 ここで、従来のセンサ信号処理では、LPF(Low Pass Filter)やHPF(High Pass Filter)、カルマンフィルタや相補フィルタなど、センサ信号を適切に補正するためのフィルタ処理が採用されてきた。一方、昨今、ディープラーニングの普及に伴い、AI(Artificial Intelligence:人工知能)技術を用いて信号処理を行う試みが行われているが、それらは主にCNN(Convolutional Neural Network)やオートエンコーダで代表されるような教師なし学習(半教師あり学習)の畳み込み及びプーリング処理からなるPreTraining処理と、後段に繋がる全結合層での教師あり学習のFineTuningにより期待値を得る方法が採用されている。このようなアプローチは、画像等の認識技術においては例えば98%程度の認識精度でも実用レベルであるが、センサ信号についてのアナログ的な信号処理においては、2%程度の誤差であってもスタビ性能や画像解像度に影響が生じ、例えばマックスプーリグ(Max Pooling)等のダウンサンプリングの影響で満足な解像度が得られず、またその演算量は組み込みシステムのアナログ信号処理においては非常に負荷の重いものであった。また、MaxPooling等の処理を控えて、大きな演算リソースを割いて機械学習しても、そのままでは良好な結果は得られない傾向にあることが確認された。
 本技術では、PreTraing処理でネット内部の特徴量に対してのリファクタリングに着目し、特定事象についての特徴量を抽出する制御線関連付け学習と、制御線複数条件での出力結果の差分から、所望の特徴量をオブジェクトデータと解釈して抽出し、これを補正値として扱うことで、従来のようにセンサ信号をフィルタ処理するアプローチではなく、データ構造体のように特徴分解して、よりオブジェクト指向的なセンシング技術でインテリジェンスなAI技術を搭載した、より先進的なセンシング・デバイスを提供するものである。このアプローチは、従来のディープラーニング技術のCNNに比べて演算量は少なく、またセンサ信号の処理において良好な結果を得ることができる。
 具体的な問題について考察する。
 IMUセンサ2による姿勢推定を用いた画像スタビライズシステムにおいては、既に多くの手法が提案されているが、このシステムではワールド座標系をターゲットとしたものと、カメラローカル座標系をターゲットとしたものの二つのシステムに分類される。前者は、主として全天球カメラの商品化事例があり、全周囲を撮像し、視点はユーザの好みで視点移動操作により行われる。このシステムでのスタビライズ処理は、基本的にIMU信号からの姿勢推定結果に基づく画像回転を行うことで実現可能である。ジャイロバイアスの影響等を除去するため、加速度センサの情報を用いてカルマンフィルタや相補フィルタによるバイアス除去が行われているのが一般的である。
 一方、後者のカメラローカル座標系のシステムでは、全天球カメラでもない限り、カメラの視点移動に伴い画像のフレームアウト問題が生じる。カメラローカル座標系のスタビライズ処理では、振動を除去しつつ、カメラワークに追従してカメラ中心座標に視点をうまく戻すことが要請されるものであり、ここに、カメラワークなどシーンを考慮した適切な視点移動の補正が求められる。カメラローカル座標系のスタビシステムは過去の実施例が少なく、それを難しくしている理由は、戻すべき補正量の算出方法にある。ワールド座標系がマニュアル操作でユーザの好みに応じた任意の視点移動をすればよいのに対して、カメラローカル座標系ではユーザの意図をある程度くみ取ってできる限り自然な視点移動を実現することが要請される。この補正量の算出時には、遠心力など様々な外乱の影響を受けるため、一般的な数式モデルで表せるものではなく、設計者による味付けを要請される技術領域であり、このような味付けした学習セットを準備し、AI技術による最適化により補正することが適切と考えられる。本技術では、この難問題に対して、IMU信号をディープラーニングを用いて特徴構造体にリファクタリングし、抽出した特徴量に基づいてIMU信号に補正を加えていくことでカメラローカル座標系のスタビシステムの難題を解決している。
 一般的なCNNと本技術のアプローチとの違いについて述べる。
 なお、以下の説明においては種々のDNN(Deep Neural Network)ブロックが登場するが、入力/出力のタップ数や階層数、発火関数やDropOut手法など、DNNの一般的なテクニックは本技術の本質ではないため詳細な記述は割愛する。なお、以下で例示するDNNの具体的な階層数やタップ数はあくまで説明上での例示に過ぎず、これに限定されるものではない。
 DNN技術で最も普及しているCNNは、図2に示すように、畳み込み処理(Convolution)とプーリング(Pooling)を繰り返すSAE(Stacked AutoEncoder:積層オートエンコーダ)とその後段の全結合層とを有し、例えばAlexNetなどのネット構造が一般的に知られている。
 CNNでは、SAEについてのプレトレーニング(PreTraining)処理が行われる。プレトレーニング処理は、教師なし学習の一種であり(半教師あり学習とも称される)、出力が入力と一致するように学習させる処理を意味する。そして、後段の全結合層での教師あり学習(FineTuningと称される)により、認識アルゴリズムを生成することが可能とされる。
 なお、昨今ではこれに限定されず、様々な派生形としてのCNNが存在する。
 一方、本技術では、CNNが着目する認識技術よりも、姿勢制御や画像処理などアナログ的な信号処理に重きを置き、図3に示すような構成を採用する。
 図3は、特徴量抽出部7の機能構成を示した機能ブロック図である。
 図3に示すように特徴量抽出部7は、SAE70と、制御線関連付け学習部71と、リファクタリング部72とを有する。SAE70の入力信号は、本例ではIMUクォータニオンとしての信号となる。SAE70としては、プレトレーニング済みのSAEを用いる。そして、プレトレーニング後のSAEにおける所定複数の中間層に得られる特徴量を、制御線関連付け学習部71の入力とする。
 ここで、SAEは、一般的には次元圧縮することを目的としたものとなるが、入力と出力を一致させるプレトレーニングが行われることで、対象の特徴表現を自己教示学習する機能を有している。特徴量抽出部7では、このようなプレトレーニングが実施されて対象の特徴表現を学習済みとされたSAE70の中間層に得られる特徴量を、制御線関連付け学習部71の入力としている。
 制御線関連付け学習部71は、制御線関連付け学習が行われたニューラルネットワークを有して構成される。制御線関連学習とは、特定の事象に係る異なる事象態様をそれぞれ異なる制御線の値に関連付けて学習することを意味する。「特定の事象」とは、例えば遠心力等、特徴量の抽出対象とする事象を意味する。また、「事象態様」とは、例えば遠心力であれば「遠心力あり」という態様や「遠心力なし」という態様等、特定の事象に関する態様のことを意味する。
 制御線関連付け学習の詳細は後述するが、該制御線関連付け学習が行われることで、制御線関連付け学習部71では、制御線に与える値によって出力する特徴量の態様を切り替えようとするアルゴリズムが生成される。
 リファクタリング部72は、制御線関連付け学習が行われ、上記のような特徴量抽出アルゴリズムが生成された制御線関連付け学習部71に対し、制御線の値として+Δを与えたときの出力(「第一出力」)と、-Δを与えたときの出力(「第二出力」)とを入力し、それらの差分を得る。ここで、+Δ、-Δは、所定の基準値(本例では0)にそれぞれΔを加算、減算した値である。
 第一出力は、制御線の値を+Δとした第一制御線条件下で制御線関連付け学習部71が算出した特徴量であり、第二出力は、制御線の値を-Δとした第二制御線条件下で制御線関連付け学習部71が算出した特徴量である。従って、リファクタリング部72で得られる第一出力と第二出力との差分としても、特徴量の形態を取る。
 ここで、本実施形態では、プレトレーニング済みのSAE70における複数の中間層でそれぞれ得られる特徴量を制御線関連付け学習部71の入力としているが、これは、制御線関連付け学習部71の入力として、それぞれ解像度の異なる特徴量を入力していることに相当する。
 本実施形態の特徴量抽出部7では、このような複数解像度による特徴量の各々について制御線関連付け学習部71において個別に制御線関連付け学習を行い、またリファクタリング部72では、それら解像度ごとに得られる第一出力と第二出力との差分を得る。これは、Wavelet変換の低周波ピラミッドによる多重解像度で対象の認識を行うことに相当し、これにより時間的な流れを認識することで、姿勢制御の認識の精度向上に寄与する。
 上記のような多重解像度での認識処理に対応した特徴量抽出部7の具体的な構成例を図4に示す。
 図4に示すように、制御線関連付け学習部71は、複数の制御線関連付け学習器71aを有し、各制御線関連付け学習器71aには、SAE70におけるそれぞれ対応する中間層で得られる特徴量が入力される。また、各制御線関連付け学習器71aには、制御線の値も入力される。各制御線関連付け学習器71aは、SAEで構成されている。
 図中では、紙面の最も上側に示した制御線関連付け学習器71aが最上位レイヤの学習器(つまり、解像度の最も高い特徴量を入力する学習器)となり、紙面上の位置が下方となるに従ってより下位レイヤの制御線関連付け学習器71aとなるが、最上位レイヤの制御線関連付け学習器71aを除く各制御線関連付け学習器71aには、それぞれ上位レイヤの制御線関連付け学習器71aの畳み込みで得られた特徴量が入力され、精度の追い込みが図られる。
 リファクタリング部72には、制御線関連付け学習部71が有する制御線関連付け学習器71aごとにリファクタリング器72aが設けられる。各リファクタリング器72aは、それぞれ対応する制御線関連付け学習器71aの第一出力と第二出力との差分を得る。リファクタリング部72では、これらのリファクタリング器72aによって、それぞれの解像度に対応した特徴量が得られる(図示の例では4系統の特徴量が得られる)。
 ここで、特徴量抽出部7は、上記のような制御線関連付け学習部71とリファクタリング部72、及びSAE70を有するが、学習環境においては、学習前状態の制御線関連付け学習部71を含んだ、図5Aに示すような構成を用いて、教師データを用いた制御線関連付け学習が行われることになる。
 以下、制御線関連付け学習に係る説明においては、図5Aに示す構成について、図5Bに示すような簡略表現により図示を行うこととする。
 確認のため述べておくと、図5Bに示すWavelet変換低周波ピラミッドのブロックは、前述した多重解像度での特徴量を扱うことを表現したものである。
 また、Wavelet変換のブロック後段に示す複数のSAEによるブロックは、SAE70と、制御線関連付け学習部71が有する複数の制御線関連付け学習器71aとしてのSAEを纏めて表現したものである。
 本実施形態では、IMU信号に基づく特徴量の抽出として、遠心力についての特徴量抽出を行う。以下では先ず、このような遠心力についての特徴量抽出を行う場合に対応した制御線関連付け学習、及び学習済みニューラルネットワークを用いた特徴量抽出の具体例について説明する。
 図6は、遠心力特徴量抽出を行う場合に対応した制御線関連付け学習についての説明図である。
 遠心力特徴量抽出は、例えば車載カメラ等の動きのある物体に支持された状態での使用が想定される撮像装置の撮像画像について、運動時の遠心力煽りによる水平線傾きの抑制を図ることを目的としたものとなる。
 先ず前提として、本例では、前述のようにIMUセンサ2として3軸の加速度センサ(以下「加速度センサ2aと表記する」と3軸の角速度センサ(以下「角速度センサ2b」と表記する)が用いられる。また、前述した前処理部4、クォータニオン計算部6は、それぞれ、加速度についての前処理を行う処理部(以下「加速度前処理部4a」と表記する)と角速度についての前処理を行う処理部(以下「角速度前処理部4b」と表記する)、加速度についてのクォータニオンを計算する計算部(以下「加速度クォータニオン計算部6a」と表記する)と角速度についてのクォータニオンを計算する計算部(以下「角速度クォータニオン計算部6b」と表記する)を備える。
 これに対応して、学習環境においては、加速度センサ2aの後段に加速度前処理部4aと加速度クォータニオン計算部6aが設けられ、また角速度センサ2bの後段に角速度前処理部4bと角速度クォータニオン計算部6bが設けられている。
 加速度クォータニオン計算部6aが計算した加速度クォータニオン、及び角速度クォータニオン計算部6bが計算した角速度クォータニオンは、それぞれ図5Bの簡略表現で示した学習器の入力信号として与えられる。
 ここで、回転角の定義として、煽り方向の回転角をピッチ角、左右方向の回転角をヨー角、カメラ中心軸での回転角をロール角として以下説明を行う。
 角速度センサによっては遠心力の影響を受けない姿勢推定値(クォータニオン)が得られ、一方の加速度姿勢推定値は遠心力の影響を強く受ける性質があり、図中の疑似遠心力分離器20、ロール角比較項中央戻し制御21により、それぞれ両者の差分を用いて逐次処理にて遠心力を疑似的に取り除いた学習セットを生成する。この逐次処理は、一定の条件でのみ良好に遠心力を除去できるが、複雑な動きでは期待通りに除去できず、各個のシーンでの最適化作業を行うことで、学習セットを準備する。
 制御線関連付け学習としては、図中のスイッチ部22を用いて、制御線に関連付けして、制御線の値=0.0では遠心力除去なしのクォータニオンを、制御線の値=1.0では遠心力除去ありのクォータニオンをそれぞれ教師として学習器に学習させる。なお、図中ではスペースの関係から、制御線の値について小数点以下の値を省略している(以降の図においても同様)。
 このような学習の結果、制御線関連付け学習器71aでは、制御線に与える値によって、出力する特徴量の態様を切り替えようとするアルゴリズムが生成されることになる。すなわち、制御線の値を第一の値としたときに制御線関連付け学習器71aが出力する特徴量と、制御線の値を第一の値とは異なる第二の値としたときに制御線関連付け学習器71aが出力する特徴量との間には、差が生じるものである。
 図7は、学習済みの制御線関連付け学習器71aを用いた特徴量抽出のための構成を例示した図である。
 図示のように特徴量抽出部7の入力には、クォータニオン計算部6における加速度クォータニオン計算部6a、角速度クォータニオン計算部6bのそれぞれより加速度クォータニオン、角速度クォータニオンが与えられる。
 この場合の特徴量抽出にあたっては、先ず、各制御線関連付け学習器71aの出力として、制御線の値を第一の値としたときの出力(第一出力)と、第二の値としたときの出力(第二出力)とを得る。そして、リファクタリング部72において、各制御線関連付け学習器71aごとに、これら第一出力と第二出力との差分を求める。
 ここで、制御線の値を第一の値としたときの第一出力と、第二の値としたときの第二出力との差は、第一の値と第二の値とを同極性の値とするのではなく、異極性の値とした方が明確となり易い。このため本例では、第一の値、第二の値として、それぞれ制御線の値=0を基準とした+Δ、-Δの値を用いるものとしている。
 図8は、リファクタリング部72が有する各リファクタリング器72aの内部構成例を示している。
 リファクタリング器72aは、差分計算部73と周波数フィルタ74とを有する。差分計算部73は、制御線の値を第一の値(本例では+Δ)としたとき(第一制御線条件)の制御線関連付け学習器71aの出力と、制御線の値を第二の値(本例では-Δ)としたとき(第二制御線条件)の制御線関連付け学習器71aの出力とを入力し、それらの差分を計算する。周波数フィルタ74は、例えばLPF又はHPFを有し、差分計算部73が計算した差分としての信号(クォータニオン)について、一部の周波数成分を抽出する処理を施す。
 周波数フィルタ74を設けることで、第一出力と第二出力との差分として得られる信号について、波形成形を行うことが可能とされる。これにより、制御線関連付け学習器71aの学習結果が不十分であったとしても、期待する特徴量に近づけることが可能となり、特徴量抽出の正確性向上を図ることができる。
 ここで、学習セットは前述のとおり各シーンで最適な現物合わせを行ったデータであり、所望の数式を100%の精度で得ることが保証された学習セットではなく、機械学習後に得られる特徴量にも一定の劣化が存在し、それらの除去のために周波数フィルタ74を採用する。
 ここで、仮に、上記で説明したような制御線関連付け学習を行わず、遠心力ありのIMUクォータニオン(姿勢制御クォータニオン値)のみを教師として特徴量の学習を行った場合には、学習器が抽出する特徴量としては必ずしも望ましいものとはならない。これに対し、本実施形態では、制御線関連付け学習を行うことで、制御線関連付け学習器71aにおいて、制御線に与える値によって出力する特徴量の態様を切り替えようとするアルゴリズムを生成させている。その上で、制御線関連付け学習器71aにそれぞれ異なる制御線の値(+Δ、-Δ)を与えたときの第一出力と第二出力との差分を得る、という手法で特徴量を抽出するものとしている。このように第一、第二出力の差分を得る手法を採ることにより、遠心力ありの姿勢制御クォータニオン値のみを教師として特徴量の学習を行う場合よりも、適切な特徴量抽出を行うことが可能となる。換言すれば、特定事象の特定態様のみを教師とした学習を行う場合よりも正確な特徴量抽出の実現を図ることができる。
 遠心力特徴抽出精度のゴールとするところは、様々なシーンに対して本特徴量補正アルゴリズムを適用したときに、前述の学習セット作成時の各シーンの現物合わせ最適化結果とほぼ同等程度の性能を得るところであり、物理学的な意味での遠心力特徴量を表現しうる完璧な数式を導出することは目的としてなく、その数式にできるだけ近いものをディープラーニングを用いて、いわば最小二乗法的なアプローチで、実運用に耐える精度で近似式を求めるところにある。
 上記では、特徴量抽出の例として、遠心力特徴量の抽出について説明したが、本例の信号処理装置1においては、IMU信号(IMUクォータニオン)についての信号補正として、遠心力以外の他の事象についての特徴量に基づく信号補正も行われる。
 図9は、信号補正処理部9の内部構成例を示したブロック図である。
 図示のように信号補正処理部9は、IMUクォータニオン(姿勢制御クォータニオン値)に対する補正部として、センサノイズ補正部9a、遠心力補正部9b、エフェクト補正部9c、ステートマシン補正部9d、カメラワーク補正部9e、急変動補正部9f、視点移動フレーム予測補正部9g、及びスタビ制動補正部9hを有している。
 なお、補正処理の順番に関して、図示の例はあくまでも一例を示したものに過ぎず、任意の順番を採用可能なものである。
 センサノイズ補正部9aは、IMU信号に重畳するセンサノイズ、具体的にはDCバイアスノイズや飽和ノイズを除去するための補正処理を行う。DCバイアスノイズについては、一般的には前処理の段階でのIMU調整や温特補正、カルマンフィルタ、相補フィルタによる補正処理が施されるが、これらの前処理を行ってもランダムウォークノイズ、温特の経時変化など様々な要因のノイズの影響でスタビ性能の劣化要因なる。そこで、学習によりDCバイアスノイズについての特徴量を抽出し、該特徴量に基づいてIMUクォータニオンに重畳するDCバイアスノイズの成分を除去する補正処理を行う。
 このようなDCバイアスノイズとしてのセンサノイズの補正処理を行うことで、カルマンフィルタや温特補正でも取り除くことが困難であったノイズをインテリジェンスに除去し、スタビライズ処理の性能向上を図ることができる。
 なお、センサノイズの特徴量抽出は、加速度クォータニオンと角速度クォータニオンとの間の相関を信号波形解析して、ノイズ特徴量として抽出することで行うが、詳細については後に改めて説明する(図29、図30参照)。
 遠心力補正部9bは、前述した遠心力特徴量に基づき、姿勢制御クォータニオン値から遠心力の成分(遠心力ノイズ)を除去するための補正処理を行う。
 これにより、遠心力ノイズを除去して、激しい動きにおいても良好に水平補正を行うことが可能となり、スタビライズ処理の性能向上を図ることができる。
 エフェクト補正部9cは、臨場感のある絵作りを行うために、スタビライズ処理部13においてエフェクトとしての振動が除去されないようにするためのIMUクォータニオンに対する補正処理を行う。
 カメラユーザによっては、過剰な振動除去は映像の臨場感を損なうものとなるため除去を望まないケースもある。このため、臨場感に相当する振動を学習してエフェクト振動特徴量として抽出し、該エフェクト振動特徴量に基づき、姿勢制御クォータニオン値に含まれるエフェクトとしての振動成分が除去されるようにする。これにより、スタビライズ処理において該振動成分が除去されないように図ることができ、臨場感の向上を図ることができる。
 なお、エフェクト振動特徴量の抽出については後に改めて説明する(図19、図20参照)。
 ステートマシン補正部9dは、ステートマシン制御のための補正処理を行う。
 本例のカメラシステムでは水平補正機能(ジンバル機能)を有するが、カメラが真上や真下を向いたときに水平線の概念がなくなり、ジンバル機能を停止させる必要がある。またサッカーのシーンでのドリブルシーンや衝突、キーパーの動き、体操選手の回転シーンなど、これらのステートマシンを各競技ごとに逐次処理実装にて提供していくのは非現実的である。このようにジンバル機能を停止させるか否かの制御を、ここではステートマシン制御(姿勢制御ステートマシン制御)と呼んでいる。
 実際のフィールドテストにおいては、スポーツ選手の動きは非常に複雑であり、また遠心力などの影響を受けるため、逐次処理実装でのピッチ角の閾値判定や検波処理でスタビシステムのステートマシン制御を行うことが困難であり、加えて、陸上競技やモータススポーツ、球技など様々なシーンにおいて個別対応していくことは非常に困難であるとの知見を得ることができた。このため本例では、AIによりジンバル機能を停止すべきケースを自動推定する手法を採る。このためにステートマシン補正部9dは、ステートマシン補正特徴量に基づきIMUクォータニオンに対しステートマシン制御のための補正処理を行う。
 なお、ステートマシン補正特徴量の抽出については後述する(図32、図33参照)。
 カメラワーク補正部9eは、IMUクォータニオンから抽出されるカメラワークについての特徴量(カメラワーク特徴量)に基づき、ユーザによるカメラワークを適切に反映するための補正処理を行う。
 本例のカメラシステムは主にカメラローカル座標でのスタビライズ機能を想定しており、IMU信号に基づく回転制御とは別に、ユーザによるカメラワークに相当する動きを適切に理解して、画角の中心位置を定めることが要請される。このために、カメラワーク特徴量を学習し、該カメラワーク特徴量に基づいてカメラワークを適切に反映するための補正処理を行う。
 なお、カメラワーク特徴量の抽出については後述する(図21、図22参照)。
 急変動補正部9fは、急激なショックを抑え、スタビライズ処理部13におけるカメラワーク制御向上ための補正処理を行う。IMUクォータニオンに対し、急激な変動を抑えるための制動ダンパ的な補正処理を行う。
 このような補正処理を実現するために、制御線関連付け学習器71aに急変動特徴量を学習させ、特徴量抽出部7において、IMUクォータニオンからの急変動特徴量の抽出を行う。急変動補正部9fは、このように抽出された急変動特徴量に基づき、急激な変動を抑制するための補正処理を行う。
 なお、急変動特徴量の抽出については後述する(図23、図24参照)。
 視点移動フレーム予測補正部9gは、IMUクォータニオンに対し、フレーム予測特徴量に基づく視点調整、及びバッファアウト予測のための補正処理を施す。
 後述するスタビライズ処理部13におけるバッファメモリ63についてのバッファリング制御に関して、予測精度の向上を図ることができる。
 フレーム予測特徴量の抽出については後述する(図25、図26参照)。
 スタビ制動補正部9hは、カメラワークの改善のための補正処理を行う。
 ワールド座標からカメラローカル座標に変換する際に、単純な比例成分により制御すると、ユーザの頭部にカメラを取り付ける等のユースケースにおいては、能動的な視点移動では追従速度が遅くなってしまう。そこで、よりアクティブにユーザの視点移動に類する姿勢制御を行うための補正処理を行う。
 このような補正処理を実現するために、制御線関連付け学習器71aに後述するスタビ制動特徴量を学習させ、特徴量抽出部7において、IMUクォータニオンからのスタビ制動特徴量の抽出を行う。スタビ制動補正部9hは、このように抽出されたスタビ制動特徴量に基づき、急激な変動を抑制するための補正処理を行う。
 スタビ制動特徴量の抽出については後述する(図27、図28参照)。
 ここで、信号補正処理部9における上記の各補正部による補正処理は、IMUクォータニオンに対するフィルタ処理等となり、相応の処理時間を要する。
 図1に示した遅延量計算部12は、これら各補正部での処理に要した時間を遅延量として計算し、位相調整部11に出力する。前述のように位相調整部11では、遅延量計算部12が計算した遅延量に基づき、信号補正処理部9による補正処理後のIMUクォータニオンについての位相調整を行う。
 これにより、撮像画像側に対する遅延補償が実現される。
<3.特徴量調整器について>

 続いて、図1に示した特徴量調整器8について説明する。
 前述のように特徴量調整器8は、特徴量抽出部7により抽出された特徴量の調整を行う。
 特徴量抽出部7で得られた特徴量を、対象とするセンサ信号(本例ではIMU信号)に対し補正値として加える作業は、実際には多少の現物合わせの調整を要する。これは、機械学習に与えた学習セットが100%の数式導出を保証したものではなく、機械学習で生成されたアルゴリズムの誤差を考慮した調整が必要となると共に、フィードバック構造のシステムにおいてFIR的な入力と期待値のペアで機械学習されたフィルタをIIRフィルタとして導入するには、データが不安定に発散しないよう各種調整が必要となるためである。
 ここで、特徴量調整器8による特徴量の調整は、特徴量抽出部7から複数系統入力される各解像度の特徴量について、それらのブレンド比の調整として行われる。
 特徴量の調整は、人手によるマニュアル調整として行うことが考えられる。つまり、特徴量調整器8としては、操作入力に基づいて特徴量の調整を行う構成であってもよい。
 しかしながら、本例のカメラシステムでは、ディープラーニングにより抽出された特徴量に基づきセンサ信号を補正する方式を採用していることから、プログラム上は物理的に正確な数式で表すことが困難なアルゴリズムであり、現実的には、マニュアル調整には困難性が伴うケースがある。このようなアーキテクチャでの調整作業を円滑に進める対策として、本例では、当アーキテクチャの性能を評価し、評価スコアに基づいて特徴量を自動調整する仕組みを提案する。
 図10は、特徴量調整器8に設定されるべき特徴量のブレンド比を探索するための構成を例示した図である。
 先ず、対象のカメラシステムと同様に、IMU信号に基づいて画像のスタビライズ処理を行うための構成を用意する(図中の破線内の構成)。なお、実際には、図1に示した構成と同様に、信号補正処理部9の後段には位相調整部11が設けられ、また信号補正処理部9で生じる遅延量を位相調整部11に与える遅延量計算部12が設けられるが、ここでは図示を省略している。
 また、探索にあたっては、スコア解析器23と自動調整器24を用意する。
 スコア解析器23には、スタビライズ処理部13によるスタビライズ処理が施された画像(以下「スタビ済み画像」とも表記することがある)が入力される。スコア解析器23は、入力画像からスタビライズ処理の性能指標となる評価スコアを算出するように学習されたAIであり、スタビ済み画像に基づき算出した評価スコアを自動調整器24に出力する。なお、スコア解析器23については以降で改めて説明する。
 自動調整器24は、特徴量調整器8における特徴量のブレンド比を調整しながら、各ブレンド比での評価スコアを参照し、所定の基準を満たすブレンド比を探索する処理を行う。ここで言う所定の基準を満たすブレンド比とは、例えば評価スコアを一定の閾値以上とするブレンド比や、探索に用いた複数のブレンド比のうち評価スコアが最良であったブレンド比などを意味する。
 このとき、自動調整器24としては、最適なブレンド比の探索を例えば遺伝的アルゴリズム等を用いて行う。
 図11から図13を参照し、スコア解析器23について説明する。
 スコア解析器23としては、一般的なCNNとほぼ同等の画像認識手法を用いるものとし、図11に示すように、学習セットの生成では、先ず、スタビライズ処理されていない連続フレーム画像をSAEの入力に与え、畳み込み処理とプーリング処理からなるPreTraining処理を行う。
 次いで、設計者が目視で良好なスタビライズ動作を確認できたスタビ連続画像を厳選し、図12に示すように、該スタビ連続画像に対し、回転量乱数生成部25と画像ランダム回転部26とによりランダム回転を加えて、全結合層でのスコア認識学習を行う。これにより、入力した連続フレームの回転が大きいほどスコアが低い判断を行うことができる画像認識のスコア解析アルゴリズムを調達する。図中の破線で囲ったSAEと全結合層とが、このようなスコア解析アルゴリズムを実現するスコア解析器23となる。
 なお、スコア解析器23としては、図13に例示するように人間による評価スコアを教師とした学習によって生成することもできる。この場合の学習では、全結合層に対する教師スコアとして、予め用意した学習用画像について人間が評価した結果のスコアを入力する。
 ここで、システムの性能をスコア化するにあたり、スコア化すべき評価項目は複数存在することもある。例えば、単純に回転量の補正性能(つまり振動補正)に着目する以外にも、前述した水平保持機能(ジンバル機能)についての性能や、カメラワークについての性能、レンズ歪み補正についての性能などに着目することもできる。
 このように性能の評価を複数項目について行う場合には、評価スコアとしては、項目ごとに算出したスコアの集計値を用いる。
 しかしながら、システム性能の評価スコアとしてこのように複数項目の集計スコアを用いる場合には、評価対象とする項目の組み合わせによってはトレードオフの関係となる場合がある。例えば、カメラワークについての性能(カメラローカル座標の追従性能)と振動補正性能とはトレードオフの関係となり、振動補正を行わないほどカメラローカル座標の追従性能は良好となる。例えばこれら二つの性能についての評価スコアの重みづけを適正に行わなければ、前述した自動調整器24におけるブレンド比の探索において、スコアの偽山にはまり、良好な性能の追い込みの支障となる。
 このような問題を回避するため、本例では、商品の仕向ごとに、集計スコアを得るにあたっての各項目評価スコアの重み付けを設定する。
 例えば、監視カメラのような固定式カメラのユースケースでは、カメラローカル座標とワールド座標はほぼ等価となり、カメラワークの追従性能は無視できるので、振動補正性能を重視した重み付けとすることで、上述の偽山問題に陥ることはなくなる。一方、サッカーやバスケットボールなど視点が激しく動くシーンでは、カメラローカル座標の追従性能が重視されるため、カメラワークの追従性能についての評価スコアの重み付けを大きくする。
 図14は、複数項目の集計スコアに基づいて特徴量のブレンド比を探索するための構成を例示した図である。
 先の図9を参照して分かるように、本例のカメラシステムでは、信号補正処理部9において、遠心力除去のための補正処理やカメラワークを反映するための補正処理等、複数種の特徴量に基づく複数種の補正処理が行われる。これに対応し、この場合のブレンド比探索では、図中の破線で囲うように、複数の特徴量抽出部7(図中の符号7-1,7-2,7-3)を有するカメラシステムが用いられる。この場合のカメラシステムでは、特徴量抽出部7ごとに特徴量調整器8が設けられ(図中の符号8-1,8-2,8-3)、これら特徴量調整器8の出力(ブレンド後の特徴量)が信号補正処理部9に入力される。なお、特徴量抽出部7および特徴量調整器8の数をそれぞれ三つとしているのはあくまで図示の都合であり、実際には、これらは信号補正処理部9が備える補正部ごとに設けられる。
 この場合、スタビライズ処理部13で得られたスタビ済み画像は、複数のスコア解析器23(図中、符号23-1,23-2,23-3)に入力される。これらスコア解析器23は、例えば上述した振動補正性能や水平保持機能、カメラワークへの追従性能等の評価対象とする複数の項目のうち対応する項目についての評価スコアを算出する。なお、スコア解析器23の数を三つとしているのもあくまで図示の都合であり、この場合のスコア解析器23としては、評価対象とする項目ごとに設ければよい。
 集計部27は、各スコア解析器23が算出した項目ごとの評価スコアを集計した集計スコアを算出し、自動調整器24に出力する。
 この場合の自動調整器24は、各特徴量調整器8に設定するブレンド比の組み合わせを逐次変更しながら、集計スコアに基づいて、所定の基準を満たすブレンド比の組み合わせを探索する。
 上述した仕向ごとの重み付けを行う場合には、集計部27において、仕向に応じた重み付けによる各評価スコアの集計を行う。
 図15、図16は、仕向に応じた重み付け手法の具体例についての説明図である。
 図15は、定量的な重み付け手法の例を説明するための図であり、この手法では、カメラワークや遠心力、振動補正等の項目ごとに算出された評価スコアを、図15A、図15Bに対比して示すように、予め仕向ごとに定められた重み係数により重み付け加算することで、仕向ごとの集計スコアを算出する。
 図16は、定性的な重み付け手法の例を説明するための図である。
 図15に示した定量的な重み付け手法では、各項目に所定の重み係数による重み付けを与えるのに対し、定性的な重み付け手法では、人間の感性を再現するためにニューラルネットワークによる重み付け計算を行う。図示のようにニューラルネットに対する入力を各項目の評価スコアとし、教師データを人間が採点したスコアとして、仕向ごとに人間による採点スコアに近い集計スコアを出力するように学習を行う。
 これにより、人間の感性に近い性能評価スコアに基づいて特徴量調整器8に設定すべきブレンド比の探索を行うことができる。
 ここで、特徴量調整器8における特徴量のブレンド比については、撮像対象とするシーンによって、適切とされるブレンド比が異なり得る。例えば、撮像対象とするシーンが時速数百キロで走行する車両のドライバ視点によるシーンとされる場合と、徒歩で移動中のユーザ視点によるシーンとされる場合とで、適切なブレンド比は異なり得る。
 このため、上記した自動調整器24を用いたブレンド比の探索においては、シーンごとに、所定基準を満たすブレンド比を求めることが望ましい。
 シーンごとに適切なブレンド比を設定するにあたっては、特徴量調整器8において、探索で求めたシーンごとのブレンド比を保持させておき、撮像画像に基づくシーン解析結果に応じて、ブレンド比を切り替えるということが考えられる。
 このとき、上記のシーン解析を行う解析器(以下「シーン解析器」と表記する)としては、一般的な画像認識で用いられるものと同様のCNNを用いることが考えられるが、このような画像認識用のCNNとしてのAIと、特徴量抽出部7としてのAIとを個別にカメラシステムに実装することは演算リソースの制約上、望ましくない。
 そこで、本例では、画像からの認識によりシーンを解析するという手法は採らず、より軽量なデータであるIMUモーションデータからの評価スコアが一定基準を満たすか否かを判定し、一定基準を満たさなければ、ブレンド比を切り替えるという手法を採ることで組み込みシステムにおけるスタビ処理の軽量化を図る。
 この際、評価スコアの算出には、前述したスコア解析器23を用いることが考えられるが、スコア解析器23はスタビ済み画像に基づき評価スコアを算出するものであるため、演算リソースの増大化に繋がる。
 このため、本例では、図1に示したスコア分類シーン解析器10として、スコア解析器23が算出する評価スコアを教師とし、画像信号よりも軽量なIMU信号から評価スコアを算出するように学習されたAIを用いる。
 図17は、スコア分類シーン解析器10の生成手法の例を説明するための図である。
 図中の破線で囲って示すように、スコア分類シーン解析器10としては、SAEとその後段に全結合層とを有する、一般的なCNNとしての構成を有する。
 学習済みのスコア解析器23により、学習用画像を入力として評価スコアを算出させる。一方で、スコア分類シーン解析器10には、入力として学習用画像と同期したIMU信号(本例ではIMUクォータニオン)を学習用IMUとして与えると共に、全結合層に対し、スコア解析器23が算出する評価スコアを教師スコアとして与えて、FineTuningとしての学習により、IMU信号からスコア解析器23と同等の評価スコアを算出するアルゴリズムを生成する。なお、FineTuning側では、スコア解析器23からの評価スコアに対して必要に応じて微分処理を行ったものを教師として機械学習を行う。
 ここで、上記のような学習により生成されるスコア分類シーン解析器10について、入力信号は、特徴量抽出部7と同様にIMU信号である。また、スコア分類シーン解析器10において入力信号としてのIMU信号はSAEに与えられ、特徴量抽出部7においても入力信号としてのIMU信号はSAE(SAE70)に与えられる。
 このことから、特徴量抽出部7におけるSAE70を、スコア分類シーン解析器10におけるSAEとして共用することができる。
 図18は、信号処理装置1における特徴量抽出部7とスコア分類シーン解析器10との構成上の関係を示す。
 図示のようにスコア分類シーン解析器10は、特徴量抽出部7におけるSAE70と、その後段の全結合層とを有して構成される。
 このようにスコア分類シーン解析器10としては、特徴量抽出部7におけるSAEを共用とした構成を採ることができ、従って、特徴量抽出部7としてのAIとスコア解析器23としてのAIとを個別に設ける場合と比較して演算リソースの低減を図ることができる。
 なお、前述のように特徴量抽出部7におけるSAE70としてはプレトレーニング済みのものを用いる。このため、図17で説明した学習時において、スコア分類シーン解析器10におけるSAEとしてもプレトレーニング済みのものを用いる。
 図18において、スコア分類シーン解析器10は、IMU信号(本例ではIMUクォータニオン)に基づいて評価スコアを算出し、算出した評価スコアを特徴量調整器8に出力する。
 この場合の特徴量調整器8には、特徴量のブレンド比として、少なくとも2種のブレンド比が記憶されている。これらのブレンド比は、自動調整器24を用いたブレンド比の探索によりシーンごとに求められたブレンド比となる。
 特徴量調整器8は、記憶された何れかのブレンド比により特徴量抽出部7から入力される複数系統の特徴量をブレンドする。そして、その一方で、スコア分類シーン解析器10から入力される評価スコアが所定の基準を満たすスコアであるか否か(例えば、所定の閾値以上であるか否か)を逐次判定し、所定の基準を満たさない場合は、使用中のブレンド比を、別のブレンド比に切り替える。
 これにより、満足な性能が得られない場合には別のブレンド比に切り替えることが可能とされ、シーンに応じた適切なブレンド比への切り替えを行うことが可能とされる。
<4.各種特徴量の抽出例>

 続いて、IMU信号に基づく各種特徴量の抽出手法の例について、図19から図32を参照して説明する。なお、遠心力特徴量の抽出手法については既に説明済みであるため、ここでの説明は省略する。
 図19、図20は、エフェクト振動特徴量の抽出手法についての説明図である。
 図19に示す学習環境において、学習セットの生成に関しては、図中の破線枠内に示すように、補正処理30によりエフェクト振動なしのクォータニオンを生成し、その後、図中の3軸回転フレーム平均振動書き戻しエフェクト31と示すように、回転フレーム平均などRS(ローリングシャッタ)歪み成分を除去した回転量を書き戻ししたエフェクト振動ありのクォータニオンを生成する。機械学習としては、スイッチ部32により、制御線の値=0.0でエフェクトなしクォータニオン、制御線の値=1.0ではエフェクトありクォータニオンを教師として与えて、制御線関連付け学習を行う。これにより、制御線に与える値によって出力するエフェクト振動特徴量の態様を切り替えようとするアルゴリズムが生成される。
 信号処理装置1への実装後環境では、図20に示すように、特徴量抽出部7(制御線関連付け学習部71)に対し制御線の値=+Δを与えたときの抽出特徴量と、制御線の値=-Δを与えたときの抽出特徴量とをリファクタリング部72に入力する。リファクタリング部72では、これら抽出特徴量の差分が計算され、必要に応じてLPF処理又はHPF処理が施されて、エフェクト振動特徴量としての特徴量クォータニオンが得られる。この特徴量クォータニオンは、特徴量調整器8による調整(ブレンド処理)を経て、信号補正処理部9におけるエフェクト補正部9c(図9参照)に入力される。
 逐次処理でのエフェクト挿入では、単純にRS歪を除去して回転平均値を加算したエフェクトがかかる単調エフェクトであるが、AIに多様なパターンによるエフェクトパターンを学習させた結果、より臨場感のあるエフェクト処理を実現することができる。
 図21、図22は、カメラワーク特徴量の抽出手法についての説明図である。
 図21に示す学習環境においては、角速度クォータニオン、加速度クォータニオンより相補フィルタ33を通してワールド座標クォータニオンを得る。また、このワールド座標クォータニオンに基づき、図中のPID比例項制御34として示すように、適切な中央戻し逐次処理(PID制御における比例項制御)によりカメラローカル座標クォータニオンを生成する。機械学習としては、スイッチ部32によって制御線の値=0.0のときにワールド座標クォータニオンを、制御線の値=1.0のときにカメラローカル座標クォータニオンを教師として与えて、制御線関連付け学習を行う。これにより、制御線に与える値によって出力するカメラワーク特徴量の態様を切り替えようとするアルゴリズムが生成される。
 信号処理装置1への実装後環境では、図22に示すように、特徴量抽出部7に対し制御線の値=+Δを与えたときの抽出特徴量と、制御線の値=-Δを与えたときの抽出特徴量とをリファクタリング部72に入力する。リファクタリング部72では、これら抽出特徴量の差分が計算され、必要に応じてLPF処理又はHPF処理が施されて、カメラワーク特徴量としての特徴量クォータニオンが得られる。この特徴量クォータニオンは、特徴量調整器8による調整を経て、信号補正処理部9におけるカメラワーク補正部9eに入力される。
 教師生成に用いた逐次処理での中央戻しは数式モデルを立てることが困難で、シーンによっては誤った補正を行うが、機械学習では膨大なパターンを学習することで、複雑な動きに置いてもカメラワーク特徴量を理解し、ワールド座標からカメラローカル座標への適切な補正が可能である。
 図23、図24は、急変動特徴量の抽出手法についての説明図である。
 図23に示す学習環境において、学習セットは、比例項(カメラローカル座標クォータニオン)の生成まではカメラワーク特徴量の抽出の場合と同様である。この場合は教師生成のために、さらに微分項を設けて(図中、PID微分項制御35参照)、大きな変動を制限する微分制御済みクォータニオンを生成する。学習では、スイッチ部32によって、制御線の値=0.0ならばカメラローカル座標クォータニオン、制御線の値=1.0ならば微分制御済みクォータニオンを教師として与えて、制御線関連付け学習を行う。これにより、制御線に与える値によって出力する急変動特徴量の態様を切り替えようとするアルゴリズムが生成される。
 信号処理装置1への実装後環境では、図24に示すように、特徴量抽出部7に対し制御線の値=+Δを与えたときの抽出特徴量と、制御線の値=-Δを与えたときの抽出特徴量とをリファクタリング部72に入力する。リファクタリング部72では、これら抽出特徴量の差分が計算され、必要に応じてLPF処理又はHPF処理が施されて、カメラワーク特徴量としての特徴量クォータニオンが得られる。この特徴量クォータニオンは、特徴量調整器8による調整を経て、信号補正処理部9における急変動補正部9fに入力される。
 急変動抑制処理もまた、教師生成に用いた逐次処理では正しい数式モデルを立てることが比較的困難な命題で、シーンによっては誤った補正を行うが、機械学習ではWavelet変換低周波ピラミッドを入力として、一定時間の時系列の流れで多様なパターンを学習することで、複雑な動きにおいても急変動特徴量を理解し、AI処理に基づく特徴量補正にて、設計者の逐次処理実装のアルゴリズムを採用する場合よりも高品位な急変動抑制処理が可能となる。
 図27、図28は、スタビ制動特徴量の抽出手法についての説明図である。
 図27に示す学習環境では、前述の微分制御済みクォータニオン(図23)に対して、さらにPID積分項制御36による積分項の補正を施した積分制御済みクォータニオンを生成する。この積分制御済みクォータニオンによっては中央ズレが微小であっても積分により中央戻しが強くなり、効果として監視カメラのような望遠レンズを有するスタビシステムにおいて、回転角速度センサの微小バイアスに煽られない安定したスタビ制動処理が可能になる。機械学習としては、制御線の値=0.0で微分制御済みクォータニオンを、制御線の値=1.0で積分制御済みクォータニオンをそれぞれ教師として与えて、制御線関連付け学習を行う。これにより、制御線に与える値によって出力するスタビ制動特徴量の態様を切り替えようとするアルゴリズムが生成される。
 信号処理装置1への実装後環境では、図28に示すように、特徴量抽出部7に対し制御線の値=+Δを与えたときの抽出特徴量と、制御線の値=-Δを与えたときの抽出特徴量とをリファクタリング部72に入力する。リファクタリング部72では、これら抽出特徴量の差分が計算され、必要に応じてLPF処理又はHPF処理が施されて、スタビ制動特徴量としての特徴量クォータニオンが得られる。この特徴量クォータニオンは、特徴量調整器8による調整を経て、信号補正処理部9におけるスタビ制動補正部9hに入力される。
 このようなスタビ制動特徴量に基づく補正処理が行われることで、カメラローカル座標への追従性能向上を図ることができ、ユーザの視点移動が適切に反映されるように図ることができる。特に望遠レンズではわずかな回転でスタビ処理は幾何学的な要因で大きく動き、これはわずかなジャイロバイアスノイズの影響でスタビ画がふらつき動作を起こすことになり、積分項はこのような微小バイアスを除去して安定化を図るものである。
 図25、図26は、フレーム予測特徴量の抽出手法についての説明図である。
 図25に示す学習環境では、学習セットの生成において、各フレームで加速度、角速度のクォータニオンをダンプし、制御線に関連付けして、制御線の値=0.0では1フレーム前の出力を、制御線の値=1.0では現フレーム出力を、制御線の値=2.0では1フレーム後推定値をそれぞれ教師として与えて学習を行う。これにより、制御線に与える値によって出力するフレーム予測特徴量の態様を切り替えようとするアルゴリズムが生成される。
 信号処理装置1への実装後環境では、図26に示すように、特徴量抽出部7に対し制御線の値=+Δを与えたときの抽出特徴量と、制御線の値=-Δを与えたときの抽出特徴量とをリファクタリング部72に入力する。リファクタリング部72では、これら抽出特徴量の差分が計算され、必要に応じてLPF処理又はHPF処理が施されて、フレーム予測特徴量としての特徴量クォータニオンが得られる。この特徴量クォータニオンは、特徴量調整器8による調整を経て、信号補正処理部9における視点移動フレーム予測補正部9gに入力される。
 上記のようなフレーム予測特徴量に基づく補正処理が行われることで、後段のスタビライズ処理部13のバッファリング制御における予測精度向上を図ることができる。なお、予測は統計学的な予測であり、100%の予測を保証するものではない。
 図29、図30は、センサノイズ特徴量の抽出手法についての説明図である。
 前述のようにセンサノイズ(DCバイアスノイズ)については、加速度センサ2aと角速度センサ2bの相関を信号波形解析し、センサノイズ特徴量として抽出する。
 図29に示す学習環境においては、加速度前処理部4a、角速度前処理部4bでそれぞれ前処理された加速度3軸データ、角速度(ジャイロ)3軸データに対し、それぞれランダムノイズ(ランダムウォークノイズ)を付加する(図中、ランダムノイズ付加41a、ランダムノイズ付加41b参照)。そして、これらランダムノイズ付加後の3軸データについて、加速度クォータニオン計算部6a、角速度クォータニオン計算部6bが計算した加速度クォータニオン、角速度クォータニオンをSAEを含むAIへの入力とする。また、これに対する教師は、ノイズ付加前の加速度3軸データ、角速度3軸データからそれぞれ計算した加速度クォータニオン、角速度クォータニオンを相補フィルタ33でブレンドして得られるブレンドクォータニオンとする。
 図30に示す信号処理装置1への実装後環境では、学習済みのAIの出力と、角速度クォータニオン計算部6bで得られる角速度クォータニオンとをリファクタリング部72の入力とする。リファクタリング部72において、これらの差分を取るとAIが認識しているセンサノイズ特徴量となる。
 リファクタリング部72で得られたセンサノイズ特徴量は、特徴量調整器8による調整を経て、信号補正処理部9におけるセンサノイズ補正部9aに入力される。
 センサノイズ補正部9aの補正処理により、従来のカルマンフィルタや温特補正でも取り除くことが困難であったノイズをインテリジェンスに除去し、スタビライズ処理の性能向上を図ることができる。
 図31、図32は、ステートマシン特徴量の抽出手法についての説明図である。
 前述のようにステートマシン特徴量はステートマシン制御に係る特徴量である。ステートマシン制御は、カメラが真上や真下を向いた場合、またその状態からの復帰の際など水平補正を行うことができない場合にジンバル機能を停止させる制御である。
 図31に示す学習環境では、ジンバルが成立するシーンでの現物合わせ調整、ジンバルが成立しない場合のジンバル機能をOFFにした調整値での姿勢制御の入出力結果を準備する。これらの学習セットは逐次処理による現物合わせで特定のシーンでのみ制御が上手くいくもので、設計者による目視確認で学習セットが準備されるものである。学習セットでは、加速度クォータニオンと、角速度クォータニオンとを入力として現物合わせで得られた相補フィルタ33及びロール角中央戻し制御部42による処理後の出力値を教師とする。
 図32に示す信号処理装置1への実装後環境では、学習済みのAIの出力と、角速度クォータニオン計算部6bで得られた角速度クォータニオンをリファクタリング部72の入力とする。リファクタリング部72で計算されるこれらの差分がステートマシン特徴量となる。
 リファクタリング部72で得られたステートマシン特徴量は、特徴量調整器8による調整を経て、信号補正処理部9におけるステートマシン補正部9dに入力される。

 機械学習により膨大なステートのシーンを学習した結果、設計者が細かな逐次処理でステートマシンを実装しなくても、AIが自らシーンを理解し状態遷移できるようになり、激しいスポーツシーンにおいて、スポーツ競技ごとに設計者の細かなステートマシン制御がなくても良好なスタビ結果を得ることができる。
<5.ゲームマイニング>

 これまでの説明から理解されるように、本実施形態では、信号補正処理部9に対して入力する特徴量としては、特徴量抽出部7で抽出された複数系統の特徴量を特徴量調整器8で所要のブレンド比によりブレンドしたものを用いている。この場合において、特徴量の抽出を適切に行う上では、制御線関連付け学習器71aに与える制御線の値や、特徴量調整器8におけるブレンド比等、特徴量抽出に係るパラメータを適切な値に設定することが重要となる。適切なパラメータは、例えばスタビライズ処理の性能評価値等、抽出した特徴量を用いた信号処理の性能評価値を基準とした探索を行うことで導出することができるが、このようなパラメータの探索作業は、機械学習では容易に自動化できない組み合わせ最適化のある種の因数分解問題である。これは、非常にインテリジェンスなディープラーニングネットワークを用いたところで、最終的には学習セット内のパターンの平均値となってしまい、特にトレードオフ的な答えしか存在しない命題に対しては、ニューラルネットワークでの解決は困難となる。また、遺伝的アルゴリズムの手法等を用いても総当たり的な探索になり膨大な計算量を要する。このような命題に対しては、究極的には、量子コンピュータを用いて解析することが理想的であるが、昨今の量子ビットの精度では、この種のアナログ問題を解くのは困難である。
 一方で、このようなパラメータ探索問題は、アナログ的な相関を持ったフィルタ特性の中で、最良の組み合わせを探索する問題であり、暗号解読のように二つの素数の積を因数分解する暗号解読問題に比べると、それほど難易度の高いものではなく、相関を持ったパターンを可視化して探索していくことが可能で、この問題をゲームモデルに事象変換し、パズルゲーム感覚で問題を解く分散処理のアプローチを採用する。このようにゲームモデルを使用して適切なパラメータを探索する手法のことを、ここでは「ゲームマイニング」と称する。
 例えば、ゲームとしては、パズルゲームなどを採用することが考えられる。ここでのゲームマイニングでは、ゲーム操作に応じて、特徴量抽出に係るパラメータの組み合わせを選択する。そして、選択した組み合わせによるパラメータを設定した場合の信号処理結果に対する評価スコアを取得し、取得した評価スコアに基づいて、例えば最良なパラメータの組み合わせ等、所定の評価スコア条件を満たすパラメータの組み合わせを探索する。
 このようなゲームマイニングにより、世界中のゲームプレイヤの抽象的なポテンシャルエネルギーをパラメータ探索のための生産エネルギーに変換して用いることが可能となる。すなわち、例えば制御線の値(Δ)や特徴量調整器8におけるブレンド比等、信号処理装置における特徴量抽出処理に係るパラメータについて、最適とされるパラメータの探索を、ゲームコンテンツを介した分散処理のアプローチにより実現することが可能となる。
 昨今は、ディープラーニングの進歩によりアルゴリズム開発が非常に高度化しているものの、ある種の課題は因数分解や多項式を生成する命題であり、このような命題に対してディープラーニングは必ずしも万能ではなく、また、これらの命題は一般にその分野の専門家でなければ開発に取り組む機会も得られない。一例として、センサ分野においてアナログ的なデータから特徴量を抽出してデータ構造体にくみ上げていくようなアルゴリズム開発命題においては、前述のような特徴量の分離条件の発掘作業等に膨大な工数を要してしまうが、このような命題は非常に大きな技術領域であるのに対して、残念ながら開発現場の開発リソースは圧倒的に不足している。これに対し、本例のゲームマイニングのように因数分解的な問題をパズル問題等のゲーム事象に事象変換して、収束条件を探る作業は、パズルを解くセンス以外には、特別にその分野の専門知識を必要とせず参入障壁がなく、純粋なゲームプレイとしての扱いが可能であり、世界中のゲームプレイヤのポテンシャルエネルギーをアルゴリズム開発のための生産エネルギーに変換することができる。すなわち、これまでゲームプレイという形で浪費されていた人的リソースのポテンシャルを、科学技術の発展への貢献する開発の原動力に結び付けることが可能となる。
 なお、ゲームマイニングでは、アルゴリズム開発階層の要素技術は隠ぺい可能であり、技術の秘匿性を担保できるというメリットもある。
 図33は、ゲームマイニングによるパラメータ探索に用いるシステム構成例を示したブロック図である。
 先ず、本システムでは、図1に示した信号処理装置1を模した構成として、特徴量抽出部7、特徴量調整器8、信号補正処理部9、スタビライズ処理部13が設けられる。なお、図示は省略したが、信号処理装置1を模した構成としては、実際には位相調整部11及び遅延量計算部12も設ける。
 また、本システムでは、スタビライズ処理の性能を評価するためのスコア解析器23が設けられる。
 本システムにおいて、特徴量抽出部7における制御線関連付け学習部71は、制御線関連付け学習済みであることを前提とする。
 さらに、本システムでは、ゲーム操作やスコア解析器23による評価スコアに基づいてパラメータ探索のための処理を行う情報処理装置50が設けられる。
 図示のように情報処理装置50は、制御部51、操作部52、及び表示部53を備える。制御部51は、例えばCPU(Central Processing Unit)、ROM(Read Only Memory)、RAM(Random Access Memory)等を備えたマイクロコンピュータを有して構成され、パラメータ探索のための各種の処理を実行する。
 操作部52は、ユーザが各種操作入力を行うための操作子、例えば各種のキー、ボタン、タッチパネル等の操作子を包括的に表したものであり、表示部53は、例えば液晶ディスプレイ等の画像情報を表示可能な表示デバイスを表したものである。
 制御部51は、パズルゲーム等、ゲームコンテンツの進行制御を行う。具体的には、操作部52において行われるユーザのゲーム操作に応じたゲーム画像の生成や、生成したゲーム画像を表示部53に表示させる処理等を行う。
 また、制御部51は、操作部52におけるユーザのゲーム操作と、スコア解析器23で算出される評価スコアとに基づいて、パラメータ探索のための処理を行う。
 図34は、制御部51が有するゲームマイニングに係る機能をブロック化して示した機能ブロック図である。
 図示のように制御部51は、制御線・ブレンド比制御処理部F1、スコア取得処理部F2、表示処理部F3、及び収束判定処理部F4を有する。
 制御線・ブレンド比制御処理部F1は、ユーザのゲーム操作に応じて、制御線関連付け学習部71における制御線の値(本例ではΔ)と、特徴量抽出器8におけるブレンド比の組み合わせを選択し、選択した組み合わせにおける制御線の値を制御線関連付け学習部71に、ブレンド比を特徴量抽出器8にそれぞれ設定する。
 制御線・ブレンド比制御処理部F1は、ゲーム操作、具体的に本例ではパズルゲームにおけるパルズ操作が行われるごとに、制御線の値とブレンド比の組み合わせを選択し直し、それぞれ制御線関連付け学習部71、ブレンド比を特徴量抽出器8に設定する。
 スコア取得処理部F2は、制御線・ブレンド比制御処理部F1により選択された制御線の値、及びブレンド比が設定された状態で行われたスタビライズ処理部13についての評価スコアをスコア解析器23より取得する。
 表示処理部F3は、ゲーム画面において、スコア取得処理部F2が取得した評価スコアを可視化した情報を表示する処理を行う。本例のパズルゲームでは、パズルが敵キャラクターのシールドとして表示され、評価スコアを可視化した情報としては、例えば該敵キャラクターの残存HP(ヒットポイント)として表示する。評価スコアが良好であるほど残存HPが小さくなるように表示を行う。
 或いは、評価スコアの可視化情報としては、評価スコアが良好であるほどパズルの表示濃度(或いは輝度)が薄くなるような態様により表示することもできる(評価スコアが良好であるほどシールドが薄くなるイメージ)。
 なお、評価スコアの可視化情報の表示手法については種々考えられるものであり、上記の手法に限定されるものではない。
 ここで、ゲーム攻略を助けるため、現在の設定パラメータ周辺の評価スコアを計算し、ゲーム画面に表示してもよい。また、このような現在の設定パラメータ周辺の評価スコアに基づき、パズルモデルの生成を行ってもよい。
 収束判定処理部F4は、スコア取得処理部F2が取得した評価スコアについての収束判定を行う。本例では、パラメータ探索の終了条件として、評価スコアについての目標値が設定されており、評価スコアが該目標値に達したことに応じて、評価スコアが収束したものと判定する。
 制御部51は、収束判定処理部F4により評価スコアが収束したと判定されたことに応じて、ゲーム操作に応じたパラメータ探索のための処理を終了する。そして、その際に設定されていた制御線の値、ブレンド比を、収束条件を満たしたパラメータの値として記憶する処理を行う。
 評価スコアが収束した場合はゲーム攻略となり、制御部51は、ゲーム攻略時に対応した画像を表示部53に表示する処理を行う。
 なお、評価スコアの収束判定の手法は、上記のような目標値に達したか否かの判定に限定されるものではない。評価スコアの収束判定としては、少なくとも所定の評価スコア条件を満たすか否かの判定として行えばよい。
 また、上記では、特徴量抽出に係るパラメータの探索として、制御線の値、及びブレンド比の探索を行う場合を例示したが、探索対象のパラメータとしてはこれらに限定されるものではなく、例えば、多重解像度化における階層数等のパラメータを挙げることができる。
<6.スタビライズ処理について>
[6-1.スタビライズ処理部の内部構成]

 続いて、実施形態としてのスタビライズ処理について説明する。
 図35は、スタビライズ処理部13の内部構成例を示したブロック図である。
 ここで、以下の説明では、スタビライズ処理部13に対する入力画像、つまり本例では前処理部5による前処理済みの撮像画像の座標系のことを「入力座標系」と表記し、また、スタビライズ処理部13による出力画像、すなわちスタビ済み出力画像の座標系のことを「出力座標系」と表記する。
 スタビライズ処理部13では、電子ブレ補正(EIS)として、入力画像の一部を切り出すことによりスタビ済み出力画像を得る処理を行うため、入力画像の画素数>出力画像の画素数であることが前提とされる。具体的に、本例では、入力画像は4k画像(水平方向画素数=約4000、垂直方向画素数=約2000)、出力画像は2k画像(水平方向画素数=約2000、垂直方向画素数=約1000)であるとする。
 図35において、スタビライズ処理部13は、参照座標計算部61、バッファ制御部62、バッファメモリ63、メモリ制御部64、キャッシュメモリ65、及び補間フィルタ66を備える。
 参照座標計算部61には、補正及び位相調整済みのIMUクォータ二オンが入力される。すなわち、信号補正処理部9による補正と位相調整部11による位相調整とが施されたIMUクォータ二オンが入力される。
 参照座標計算部61は、このように入力されるIMUクォータ二オンに基づき、出力画像の各画素についての参照座標CRを算出する。
 参照座標CRは、入力画像から出力画像を切り出すにあたり、出力座標系の各画素位置の値として入力座標系の何れの位置の値を用いるべきかを示す情報である。すなわち、出力座標系の画素位置ごとに、入力座標系における何れの位置の値を参照すべきかを示す情報となる。
 バッファメモリ63は、1フレーム分の入力画像を逐次バッファリングするメモリであり、バッファ制御部62は、バッファメモリ63に対する画像データの書き込み及び読み出しを制御する。
 キャッシュメモリ65は、入力画像からの出力画像の切り出しに用いられるメモリであり、メモリ制御部64は、キャッシュメモリ65に対する画像データの書き込み及び読み出しを制御する。
 メモリ制御部64は、バッファ制御部62を通じて、バッファメモリ63にバッファリングされた画像データのうち切り出し範囲に対応した画像データを取得し、キャッシュメモリ65に書き込む。
 また、メモリ制御部64は、上記のようにキャッシュメモリ65にキャッシュされた画像データ(入力画像の画像データ)から、出力座標系の画素位置ごとに、参照座標CRが示す入力座標系の画素及びその周囲画素含む複数画素分の画像データ(例えば、補間フィルタ66がLanczos2補間であれば4×4=16画素分の画像データ)を読み出し、補間フィルタ66に出力する。
 補間フィルタ66は、上記のようにメモリ制御部64によって出力座標系の画素位置ごとに読み出される複数画素分の画像データを逐次入力し、出力座標系の画素位置ごとに、後述する手法による補間処理を行って、出力座標系の各画素位置の値を求める。これにより、スタビ済み出力画像が得られる。
[6-2.実施形態としてのスタビライズ処理]

 図36から図51を参照して、実施形態におけるスタビライズ処理の詳細を説明する。
 スタビライズ処理では、撮像された画像からカメラの傾きや動きの影響を取り除く処理を行う。
 図36は、傾いたカメラで撮像した様子を示している。
 ここでの傾いた状態とは、カメラがロール方向に傾いて水平・垂直方向が保たれていない状態である。この場合、撮像により得られる画像データは、図36Bのように被写体が傾いた状態となる。
 このような画像データに対して、スタビライズ処理によりカメラの傾きと同じ方向に画像を回転させることで、図36Cの画像データを得ることができる。この図36Cの画像データは、図36Dのようにまっすぐの姿勢(ロール方向に傾きがない姿勢)のカメラで撮像した場合の画像と同様になる。
 このように姿勢の傾きに対する回転を行うが、これは、入力画から、入力画サイズより小さいサイズの出力画を切り出す際に、切り出す画素範囲を姿勢情報に基づいて回転させることで実現する。
 IMUクォータニオンと画像入力との関係を図37に示す。
 カメラを動かしながら撮像するときは、1フレームの間でもIMUクォータニオンは変化していくことになる。
 IMUデータが、例えば複数ラインおきに取得されるとすると、IMUクォータニオン(図中、r0、r1、r2、r3で表す)も図示のように数ラインおきに取得される。ここでは、垂直同期信号Vsyncで示される1フレームの期間に四つのIMUクォータニオンが取得されることを示しているが、これはあくまでも説明上の一例である。この場合は、フレームの上方1/4の画像に対応してIMUクォータニオンr0、次の1/4の画像に対してIMUクォータニオンr1、次の1/4の画像に対してIMUクォータニオンr2、最後の1/4の画像に対してIMUクォータニオンr3が、それぞれ対応することになる。
 ここで、図中の「仮想線L1」は、同じ値のIMUクォータニオンが対応する仮想的なラインを示している。
 従来では、上記のように1フレーム期間内にIMUデータが複数回取得される前提において、それぞれ同じIMUクォータニオンの値が対応する複数の仮想線L1を想定した上で、これら仮想線L1に従って出力座標系の各画素位置に対する参照座標CRの当て嵌めを行い、当て嵌めた参照座標CRに基づく入力画像の切り出しを行ってスタビ済み画像を得るようにしていた。
 しかしながら、このような仮想線L1を用いたスタビライズ処理では、十分なスタビ性能が得られないことが判明した。
 そこで、本実施形態では、図38に例示するような格子点メッシュを用いる。
 格子点メッシュは、水平方向及び垂直方向にそれぞれ複数配列された格子点(図中、▲マークにより表す)を有する。
 格子点メッシュにおいては、水平方向に配列された複数の格子点で成る格子点行が、垂直方向に複数配列されている。或いは、このことは、垂直方向に配列された複数の格子点で成る格子点列が、水平方向に複数配列されていると換言することができる。
 格子点メッシュにおいて、各格子点行は、図37に示した仮想線L1に相当するものであり、各格子点行にはそれぞれの行位置に対応したタイミングで取得されるIMUデータに基づくIMUクォータニオンが対応づけられる。換言すれば、格子点行ごとに、各格子点に対応づけられるIMUクォータニオンの値は同じである。
 なお、図中では、格子点メッシュの各格子点行における格子点の数が6、すなわち水平方向の分割数が5とされ、各格子点列における格子点の数が5、すなわち垂直方向の分割数が4とされた例を示しているが、格子点メッシュの水平方向、垂直方向それぞれの分割数がこれらの数値に限定されるものではない。
 格子点メッシュの各格子点の位置は、IMUデータの取得タイミングとの対応をとるため、入力座標系における位置として管理される。
 参照座標計算部61では、このような入力座標系における格子点の位置を、出力座標系における位置に変換する。
 図39は、格子点メッシュの座標変換についての説明図である。
 格子点の位置を出力座標系の位置に変換するには、入力画像が受ける変化と同様の変化を格子点メッシュに加えればよい。具体的には、図39に示すように、先ず、入力画像にレンズ歪み除去処理が施されることに対応して、格子点メッシュにレンズ歪み除去処理を施し、その上で、カメラと同じ向きに回転させる。これが、出力座標系に変換したものとなる。
 本例のスタビライズ処理では、上記のように出力座標系に変換した格子点メッシュと、図40Aに示すようなセグメントマトリクスとを用いる。
 セグメントマトリクスは、出力画像を所定のセグメント単位で分割したときの各セグメントの位置(図中、●マークにより表す)を表したものである。本例では、1セグメントのサイズは例えば64画素×64画素であるとする。
 図40Bは、出力座標系に座標変換された格子点メッシュとセグメントマトリクスとを出力座標系において重ね合わせて示している。
 格子点メッシュのサイズがセグメントマトリクスのサイズよりも大きいのは、前述のように出力画像のサイズよりも入力画像のサイズの方が大きいことによる。
 格子点メッシュを出力座標系に変換することで、図示のようにセグメントマトリクスにおける各セグメントの位置(●マーク)と、格子点メッシュにおける各格子点との位置関係を特定可能となる。
 参照座標計算部61は、出力座標系における各セグメントと格子点との位置関係に基づき、セグメントごとの参照座標CRを求める。
 このために、先ず参照座標計算部61は、図41に示すようなセグメント探索を行う。
 セグメント探索は、セグメントマトリクスを構成する各セグメントについて、●マークで示すセグメント位置が格子点メッシュにおける何れのマス目内に位置するかを把握するための処理となる。
 具体的に、参照座標計算部61は、格子点メッシュにおけるマス目ごとに、内包されるセグメント位置を内外判定によって特定する。この内外判定により、各セグメント位置が、格子点メッシュの何れのマス目内に位置するのかが特定される。
 各セグメント位置における参照座標CRは、そのセグメント位置を内包する四つの格子点それぞれにおけるIMUクォータニオンに基づき求めることができる。以下の説明では、格子点メッシュにおける各格子点には、対応するIMUクォータニオンから算出された参照情報CRの情報が対応づけられている前提とする。以下、このように各格子点に対応づけられた参照座標CRのことを「格子点参照座標」と表記する。
 参照座標計算部61は、内外判定(セグメント探索)によって各セグメント位置が格子点メッシュの何れのマス目内に位置するかを特定した上で、図42に示すような三角補間により、セグメント位置ごとの参照座標CRを算出する。
 具体的に、この三角補間では、セグメント位置の座標と、格子点メッシュにおける該セグメント位置を内包するマス目の四つの格子点のうちの三つの格子点の座標と、さらにそれら格子点に対応づけられた格子点参照座標の情報とを用いる。
 この三角補間としては、例えば、図43に示すような要領で行えばよい。
 三角補間により各セグメント位置の参照座標CRを求めることで、図44に示すようなリメッシュデータを得ることができる。このリメッシュデータは、出力座標系におけるセグメント粒度での各位置の参照座標CRを示すデータとなる。図中では、セグメント粒度での各位置の参照座標CR、すなわち各セグメント位置ごとに算出された参照座標CRを◆マークにより表している。
 参照座標計算部61は、上記のようなリメッシュデータに基づき、出力画像における画素位置ごとの参照座標CRを求める。
 図45は、リメッシュデータから画素位置単位の参照座標CRを求めることのイメージ図であり、図中では、画素位置単位の参照座標CRを■マークにより表している。
 本例では、参照座標CRは、リメッシュデータ(セグメント粒度での参照座標CR)を用いた線形補間(バイリニア補間)によって求める。具体的には、対象とする画素位置を内包するセグメントの4隅の各点の参照座標CRを用いたバイリニア補間によって求める。
 この際に、前述の三角補間を利用しないのは、バイリニア補間は三角補間よりも軽量で、一度、リメッシュデータに変換されたデータはバイリニア補間でも十分な精度が得られるためである。ただし、LSI内のハードウェアブロックとして三角補間が回路として実装された場合は、このブロックを流用してすべての画素を三角補間する方が、バイリニア補間回路を別途設けるよりも回路規模の観点から有利とされている。
 出力画像の画素位置ごとの参照座標CRが求まることで、画素位置ごとに入力座標系のどの位置の値を参照すべきかが特定される。ただし、上記のように参照座標CRはリメッシュデータに基づく補間処理で算出されるため、整数単位(つまり入力画像における画素単位)の値ではなく小数を含む値となり得る。このため、参照座標CRに基づく出力画像のレンダリングには、図35に示した補間フィルタ66を用いる。
 図46は、補間フィルタ66による補間処理についての説明図である。
 補間フィルタ66には、メモリ制御部64の制御により、キャッシュメモリ65にキャッシュされた入力画像(画素値)のうちから、出力画素ごとのレンダリングに必要とされる複数画素分の画素値が逐次入力される。具体的に、出力画素ごとのレンダリングに必要とされる複数画素分の画素値とは、該出力画素についての参照座標CRが示す入力座標系の位置が含まれる画素と、該画素の周辺画素とを含んだ複数画素で成る領域のデータである(図中、太枠で囲った領域Arを参照)。
 以下では説明上、参照座標CRが示す入力座標系の位置が含まれる画素のことを「参照画素Pr」と表記する。また、この参照画素Prとその周辺画素とを含む、レンダリングに必要とされる画素領域のことを「参照領域Ar」と表記する。参照領域Arは、参照画素Prを中心としたm画素×m画素(mは3以上の自然数)分の領域である。なお、図中では、参照領域Arが参照画素Prを中心とした3画素×3画素=9画素分の領域であるものとしているが、これは説明上の一例であり、参照領域Arのサイズを限定するものではない。
 補間フィルタ66は、処理対象とする出力画素について、その参照座標CRが示す位置の値を、参照領域Arの各画素の値を用いた補間処理により求める。この補間処理には、例えば、Lanczosフィルタを用いる。具体的には、Lanczos2フィルタや、エリアシング防止の観点でガウシアンフィルタをブレンドしたハイブリッドフィルタを用いることが考えられる。このハイブリッドフィルタは、画像フォーマットがRGGBで配列しているRAWフォーマットでのLanczos2補間などで有効で、特に高周波帯域でのエリアシング防止のために用いられる。
 補間フィルタ66は、このような補間処理を出力画素ごとに順次行う。これにより、スタビ済み出力画像が得られる。
 なお、スタビ済み出力画像のレンダリングにおいては、上記のような補間フィルタ66の補間処理による画素値の算出と共に、レンズシェーディングに対する輝度調整を行うこともできる。その場合には、格子点に対しては参照座標CR以外にも輝度制御情報などを持たせて、補間処理と共にゲイン調整を行う。
 同様に、自己位置推定のSLAM技術より得られたローカルモーション情報や、画像の深度を得るToFセンサ等のデプスセンサによるデプス情報などを格子点に持たせることで、格子点ベースでの自由度の高い座標補正、デプス補正などにも利用することができる。
 図47は、図35に示した参照座標計算部61の内部構成例を示したブロック図である。
 図示のように参照座標計算部61は、格子点メッシュ生成・成形部81、セグメントマトリクス生成部82、セグメント探索部83、リメッシュデータ生成部84、及び各画素座標補間部85を有する。
 格子点メッシュ生成・成形部81は、格子点メッシュの生成、及び前述した出力座標系への変換のための回転等(図39参照)、格子点メッシュの成形のための処理を行う。
 図48は、格子点メッシュ生成・成形部81の内部構成例を説明するための図である。なお、図48では格子点メッシュ生成・成形部81の内部構成例と共に、格子点メッシュが成形される課程を模式的に表したイメージ図を併せて示している。
 図示のように格子点メッシュ生成・成形部81は、格子点メッシュ生成器81a、レンズ歪補正器81b、射影器81c、回転器81d、自由曲率透視投影器81e、走査制御器81f、クリップ器81g、及び各格子点参照座標計算器81hを有する。
 格子点メッシュ生成・成形部81は、格子点メッシュを生成する。
 レンズ歪補正器81bは、レンズパラメータに基づいて格子点メッシュに対するレンズ歪み補正処理を行う。
 射影器81cは、レンズ歪補正器81bによるレンズ歪み補正処理後の格子点メッシュを仮想天球に対し射影(投影)する。射影手法としては、例えば中心射影や等距離射影等を採用することができる(図中のイメージ図では中心射影の例を示している)。
 回転器81dは、IMUクォータニオンに基づき、射影器81cにより仮想天球に投影された格子点メッシュを回転させる。この回転により、前述したようなカメラと同じ向きに回転させる作用が得られる。回転には、IMUクォータニオンにおける回転量を示す情報を用いる。
 自由曲率透視投影器81eは、投影パラメータに基づき、回転器81dで回転された格子点メッシュを自由曲率透視投影により平面に対して投影(再投影)する。自由曲率透視投影を採用することで、再投影される格子点メッシュに所望のレンズ効果を与えることができ、出力画像の絵作りを行うことができる。
 走査制御器81fは、平面に投影された格子点メッシュについて、適切な縮尺設定やオフセット変更のためのアフィン変換処理を行う。走査制御器81fは、これら縮尺設定やオフセット変更を例えば予め定められた縮尺/オフセットパラメータとしての所定パラメータに基づいて行う。
 クリップ器81gは、走査制御器81fによる処理後の格子点メッシュについて、データの固定少数点精度超え防止のためのクリップ処理を施す。なお、格子点が固定小数点のデータ域を超えた場合には、その格子点で所属するセグメントはすべて無効セグメントとして、後段で黒画出力の例外処理を行う。
 このクリップ器81gによるクリップ処理により、出力座標系における各格子点の座標が定まる。
 各格子点参照座標計算器81hは、IMUクォータニオンに基づき、格子点メッシュにおける各格子点の参照座標(前述した格子点参照座標)を計算する。
 説明を図47に戻す。
 上記のようにクリップ器81gのクリップ処理で定まった各格子点の出力座標系における座標情報は、格子点座標情報として、格子点メッシュ生成・成形部81からセグメント探索部83に供給される。
 また、各格子点参照座標計算器81hで得られた各格子点参照座標は、格子点メッシュ生成・成形部81からリメッシュデータ生成部84に供給される。
 セグメント探索部83は、セグメントマトリクス生成部82で生成されたセグメントマトリクスと、格子点メッシュ生成・成形部81から供給される格子点座標情報とに基づき、前述したセグメント探索(内外判定:図40及び図41を参照)行う。これにより、セグメントマトリクスにおける各セグメント位置について、そのセグメント位置を内包する四つの格子点が特定される。
 リメッシュデータ生成部84は、格子点メッシュ生成・成形部81から供給される各格子点参座標の情報とセグメント探索部83によるセグメント探索結果の情報とに基づき、セグメント位置ごとに前述した三角補間(図42及び図43を参照)を行って、リメッシュデータ(図44を参照)を生成する。前述のように、リメッシュデータは、セグメント粒度での参照座標CRと換言できるものである。
 リメッシュデータ生成部84は、生成したリメッシュデータを各画素座標補間部85に出力する。
 各画素座標補間部85は、リメッシュデータに基づき出力画像の画素位置ごとの参照座標CRを求める。前述のように、各画素位置の参照座標CRは、リメッシュデータに基づくバイリニア補間を行って求める。
 各画素座標補間部85は、各画素位置の参照座標CRを図35に示したメモリ制御部64に出力する。
 図35に示したメモリ制御部64は、参照座標CRに基づき、バッファメモリ63からキャッシュメモリ65へのデータの書き込み制御を行う。
 また、メモリ制御部64は、参照座標CRに基づき、出力画像の各画素位置について、その画素位置に対応した参照領域Ar(図46を参照)のデータをキャッシュメモリ65から逐次読み出して補間フィルタ66に出力する。
 これにより、補間フィルタ66では、出力画像の画素位置ごとに参照領域Arのデータを用いた補間処理が逐次行われ、スタビ済み出力画像が得られる。
 上記のように本実施形態のスタビライズ処理では、出力画像の画素位置ごとの参照座標CRを求めるにあたって、従来のように仮想線L1としての一次元的な情報のみで出力座標系との整合をとるのではなく、格子点メッシュとしての二次元的な情報を用いて出力座標系との整合をとるものとしている。
 これにより、参照座標CRの正確性を高めることができ、スタビライズ処理の性能向上を図ることができる。
 なお、上記では、格子点メッシュとして、図49Aに示すような固定メッシュモードによる格子点メッシュを生成する例を挙げたが、格子点メッシュの生成には、例えば図49Bから図49Dに例示するような1次元可変メッシュモード、2次元可変メッシュモード、有限要素メッシュモード等、固定メッシュモード以外の他のモードを採用することもできる。
<7.構造例>

 信号処理装置1の具体的な構造例について、図50から図52を参照して説明する。
 図50に示すように、信号処理装置1において、IMUセンサ2とイメージセンサ3を除いた部分、すなわち、前処理部4からスタビライズ処理部13までの部分は、センサ信号に対する信号処理を行う部分であるとして、信号処理部1aと呼ぶことができる。
 この信号処理部1aは、イメージセンサ3とは別チップ(別の集積回路チップ)で構成することができる。そして、このようにイメージセンサ3と信号処理部1aとを別チップで構成した場合には、図51に模式的に表すように、これらイメージセンサ3と信号処理部1aとを一つの半導体パッケージ内に実装した構成を採ることができる。
 また、このようにイメージセンサ3と信号処理部1aとを一つの半導体パッケージ内に実装した構成を採る場合には、図52に例示するように、信号処理部1aにイメージセンサ3を積層した構成を採ることもできる。
<8.その他周辺技術>

 図53を参照し、信号処理装置1を適用したカメラシステムのプロトコル通信の例を説明する。
 従来のセンサ制御用LSI(Large Scale Integrated circuit)はレジスタに設定値を流し込むのみであり、プロトコル仕様としてはスレーブシステムであって、ホストCPU(HOST CPU)90からレジスタ設定値を流し込む方式が採用されているが、スタビ機能を有するウェアラブルカメラシステムでは、内部にステートマシンやシーケンス制御など複雑なホスト処理を内蔵する必要がある点と、省スペース化、低消費電力の観点で、ホストCPU90を外付けするセット構成は支障がある(図中の上段を参照)。このため、図中の下段に示すように、マスタ処理が可能なホストCPU90を信号処理部1aに内蔵し、外部の制御端末100とのプロトコル通信を行う構成を採る。
 図54及び図55は、プロトコル通信において通信断が起きた場合の通信回復の例を説明するための図である。
 ウェアラブルカメラにおいては無線での動画伝送が想定され、通信途絶が頻繁に起こる可能性が高まる。特に、昨今の5G伝送では通信帯域が非常に大きい反面、指向性が高くスポーツ等の激しい動きにより通信のスコープ外で途切れる傾向が強いため、例えば従来の放送システムに対して、通信が途切れた場合に通信断に対して高速リカバリできるステート制御が必要である。
 先ず、初期状態からの正常な通信開通時には、制御端末100からカメラ側(信号処理装置1側)への設定状態の全項目問い合わせを行い、ステータスの通知の完了をもって通常通信開通状態に移行する。従来のプロトコル通信ではコマンドの瞬断が起きれば、再開通までの間のパラメータ更新内容が不定となるため、正常復帰には初期状態からの接続シーケンスを再度繰り返し、コマンド開通を行うことになる。ウェアラブルカメラにおいては、頻繁な瞬断を伴うことから、瞬断のたびに接続シーケンスを繰り返すのは大きな負荷がかかる。このため、信号処理装置1側、制御端末100側とも通信断が起きた直後からの更新履歴を保存し、通信再開通時には更新された項目のみ通信し高速に通信状態を回復させることで高速な接続回復を図る。
 図56、図57は、加速度、ジャイロ(角速度)の前処理についての説明図である。
 本実施形態ではAIを用いて特徴量を抽出するシステムであるが、実際のIMUスタビシステムにおいてはジャイロセンサ、加速度センサともにバイアス問題があり、これらのバイアスが大き過ぎると想定通りの特徴量補正が困難となる虞がある。このため、構成要素として前処理ブロック(前処理部4)を備えている。
 図56は、ジャイロ側のバイアス除去のための前処理についての説明図である。
 ホスト側からの水平リセット指示に基づき、IMUが静止状態であることを検波器が検知する。突発的なノイズを吸収するため、検波器の前段にメディアンフィルタを備える。静止判定したら、所定の時間の移動平均を計算し、計算した移動平均値をバイアス量としてメモリに保存する。このようにメモリに保存したバイアス量に基づき、毎サンプル、ジャイロ3軸データについてのオフセット除去を行う。
 図57は、加速度側の水平リセットのための前処理についての説明図である。
 ジャイロバイアスの場合とは異なり、加速度センサは常に重力加速度の影響を受けているため、実際のユースケースでは完全な水平を保つことはできない。そのため、ジャイロ側のように純粋なバイアス除去はできない。加速度センサは、例えばウェアラブルカメラの装着者に水平姿勢をとらせた状態で、そのときのずれ量を、多少のずれがあっても水平とみなす。
 この場合の前処理としては、ジャイロの場合と同様に加速度3軸データに対してメディアンフィルタ処理を施したのち、検波器で静止状態であることを検知し、そのときの加速度値と重力加速度から水平姿勢を規定するクォータニオン姿勢を生成して、メモリに保存する。この場合の姿勢制御では、このようにメモリに保存した加速度水平クォータニオン値を新たなカメラ中心基準のクォータニオン姿勢として用いる。
 図58は、光軸と回転軸とのずれ補正についての説明図である。
 IMUセンサを搭載したカメラでは、光軸(レンズおよびイメージセンサで構成される三軸)と回転軸(IMUの三軸)にずれが生じないように製造することが要請される。レンズ中心とイメージセンサの軸ズレを補正する「カメラキャリブレーション」技術は確立しており、open cv等を使用して、簡易に実施することができる。また、IMUを構成する加速度とジャイロの軸ズレを合わせ込む「IMUキャリブレーション」手法も確立しており、IMU-TK等の広く知られている技術で実施できる。
 しかしながら、光軸と回転軸とのずれを補正する技術は確立されておらず、実施形態に係る特徴量補正の正常な動作のためには、これらの軸ずれが生じないよう、精度よく製造することが要請される。
 本実施例では、特徴抽出可能なボード(チェスボード等)を用いて、「カメラキャリブレーション」と同時に、「光軸・回転軸ずれ補正」を行う。ボードは、重力に対して、水平・垂直になるように設置されている前提とする。本測定の前提として、別途又は本測定と同時にIMUキャリブレーションを実施・適用する。補正回転行列(3×3)とIMU値(3×1)の積が、補正後のIMU値となる。具体的な手順を以下に示す。
 1)特徴抽出可能なボードを水平・垂直に設置する
 2)IMU搭載カメラを使用して、N個の方向からボードを撮影する。一方向から撮影したら、そのカメラ姿勢のまま数秒間静止させる。
 3)レンズキャリブレーション処理を実行して、N枚の撮像画像の回転行列Ri(i=1..N)を求める。加速度ベクトルaをRi-1で回転したベクトルaiを求める
 4)各姿勢の加速度ベクトルgi(i=1..N)を求める
 5)R * gi = ai となるような補正回転行列Rを最小二乗法等で求める
<9.画像に係る特徴量抽出について>

 これまでの説明では、実施形態としての特徴量抽出手法の適用例として、IMU信号からの特徴量抽出を例に挙げたが、実施形態としての特徴量抽出手法は、IMU信号のみでなく他の信号についても適用可能なものである。
 以下では具体例として、画像信号を対象とした各種特徴量抽出の手法を説明する。
 図59、図60は、撮像ノイズ特徴量の抽出手法についての説明図である。
 図59に示す学習環境において、学習用画像としての画像データを用意しておく。また、撮像ノイズの推定精度を高めるべく複数のフレーム画像を用いるため、フレームバッファ91を備える。
 ランダムノイズ生成部92及びランダムノイズ付加部93により学習用の画像データにランダムノイズを付加し、これを学習器におけるSAE70の入力に与えて、制御線関連付け学習を行う。この際、教師データとしては、ランダムノイズ付加レベル調整部94により制御線の値に応じてノイズレベルを変えた教師データを与える。例えば、制御線の値=1.0でノイズなし画像、制御線の値=0.0でノイズあり画像、制御線の値=-1.0でノイズ強調画像をそれぞれ教師として与える。
 図示のように制御線関連付け学習器71aは複数設けられ、各制御線関連付け学習器71aには、SAE70におけるそれぞれ対応する中間層で得られる特徴量を入力する。最上位レイヤの制御線関連付け学習器71aを除く各制御線関連付け学習器71aには、それぞれ上位レイヤの制御線関連付け学習器71aの畳み込みで得られた特徴量を入力し、精度の追い込みを図る。
 上記のような制御線関連付け学習の結果、制御線に与える値によって、出力するノイズ特徴量の態様を切り替えようとするアルゴリズムが生成される。具体的には、制御線に与える値により、ノイズレベルの異なる画像を出力するアルゴリズムが生成される。
 信号処理装置1への実装後環境では、図60に示すように、各制御線関連付け学習器71aに対し制御線の値=+Δを与えたときの抽出特徴量と、制御線の値=-Δを与えたときの抽出特徴量とをリファクタリング部72に入力する。リファクタリング部72では、これら抽出特徴量の差分が計算され、必要に応じてLPF処理又はHPF処理が施されて、撮像ノイズ特徴量が抽出される。
 このように抽出された撮像ノイズ特徴量は、特徴量調整器8による調整を経て、信号補正処理部9に入力される。
 この場合の信号補正処理部9では、撮像ノイズ特徴量に基づき、前処理部5を介して入力される撮像画像に対して撮像ノイズ除去のための補正処理を施す。
 これにより、撮像画像について高品位な撮像ノイズ除去が可能となる。また、撮像ノイズを強調するように補正した場合には、3D-NR(三次元ノイズリダクション)の逆特性としてブラーを補正するデブラー効果を得ることができる。
 図61、図62は、フォーカス特徴量の抽出手法についての説明図である。
 フォーカスとしての特徴量を抽出できれば、該特徴量を用いた画像補正処理により画像の深度方向におけるフォーカス位置(合焦位置)を調整することが可能となる。つまり、撮影後のピント調整が可能となる。
 図61に示す学習環境においては、学習用画像として、第一フォーカス画像、第二フォーカス画像を用意する。これら第一、第二フォーカス画像は、深度方向(距離方向)におけるフォーカス位置の異なる画像である。具体的に、第一フォーカス画像としては前ピン画像を、第二フォーカス画像としては後ピン画像をそれぞれ用意する。
 スイッチ部32により、第一、第二フォーカス画像を制御線の値に応じて切り替えて出力し、フレームバッファ91を介して学習器におけるSAE70の入力に与え、制御線関連付け学習を行う。この際、教師データは、スイッチ部32により制御線の値に応じて第一、第二フォーカス画像を切り替えて与える。例えば、制御線の値=0.0で第一フォーカス画像、制御線の値=1.0で第二フォーカス画像に切り替える。
 この場合も複数の制御線関連付け学習器71aを用いた多重解像度での学習を行い、精度の追い込みを図る。
 上記のような制御線関連付け学習が行われることで、制御線に与える値により、出力するフォーカス特徴量の態様を切り替えようとするアルゴリズムが生成される。具体的には、制御線に与える値により、深度方向におけるフォーカス位置が異なる画像を出力するアルゴリズムが生成される。
 信号処理装置1への実装後環境では、図62に示すように、各制御線関連付け学習器71aに対し制御線の値=+Δを与えたときの抽出特徴量と、制御線の値=-Δを与えたときの抽出特徴量とをリファクタリング部72に入力する。リファクタリング部72では、これら抽出特徴量の差分が計算され、必要に応じてLPF処理又はHPF処理が施されてフォーカス特徴量が抽出される。
 このように抽出されたフォーカス特徴量は、特徴量調整器8による調整を経て、信号補正処理部9に入力される。
 この場合の信号補正処理部9では、フォーカス特徴量に基づき、前処理部5を介して入力される撮像画像に対して深度方向におけるフォーカス位置を調整するための補正処理を施す。
 図63、図64は、ワープ特徴量の抽出手法についての説明図である。
 ワープ特徴量は、相関のある二つの画像間のワープ量を示す特徴量である。ワープ特徴量を抽出できると、ステレオ画像間でのインテグラルイメージ画像や時間的に連続した二つのフレーム画像間の補間画像等を得ることができる。
 この場合、図63に示す学習環境では、相関を持つ2種の画像(第一相関画像、第二相関画像とする)を用意する。第一、第二相関画像としては、例えば時間的に相関を持った画像(例えば、連続する2フレーム分の画像)や、ステレオ画像を用意する。
 スイッチ部32により、第一、第二相関画像を制御線の値に応じて切り替えて出力し、フレームバッファ91を介して学習器におけるSAE70の入力に与え、制御線関連付け学習を行う。この際、教師データは、スイッチ部32により制御線の値に応じて第一、第二相関画像を切り替えて与える。例えば、制御線の値=0.0で第一相関画像、制御線の値=1.0で第二相関画像に切り替える。
 この場合も複数の制御線関連付け学習器71aを用いた多重解像度での学習を行い、精度の追い込みを図る。
 上記のような制御線関連付け学習が行われることで、制御線に与える値により、出力するワープ特徴量の態様を切り替えようとするアルゴリズムが生成される。
 信号処理装置1への実装後環境では、図64に示すように、各制御線関連付け学習器71aに対し制御線の値=+Δを与えたときの抽出特徴量と、制御線の値=-Δを与えたときの抽出特徴量とをリファクタリング部72に入力する。
 この場合のリファクタリング部72では、これら二つの抽出特徴量間のテンプレートマッチングにより動きベクトルを解析し、得られた動きベクトル量に対し必要に応じてLPF処理又はHPF処理を施し、ワープ特徴量として特徴量調整器8に出力する。
 この場合の信号補正処理部9では、特徴量調整器8を介して入力されるワープ特徴量としての動きベクトル量に基づき、前処理部5を介して入力される撮像画像に対して補間画像(入力画像に対し時間的又は空間的に相関のある画像)を生成するための補正処理を施す。
 上記のようなワープ特徴量に基づく補間画像の生成手法は、従来のZNCC(Zero-mean Normalized Cross-Correlation)などのマッチング手法を用いた手法と比較して非常に精度の高い結果が得られる。
 なお、上記では、イメージセンサ3から入力される撮像画像を対象として抽出特徴量に基づく補正処理を施す例を挙げたが、例えばHDD(Hard Disk Drive)やSSD(Solid State Drive)等の記憶装置から読み出した画像を対象として抽出特徴量に基づく補正処理を施す構成とすることもできる。
<10.変形例>

 なお、本技術はこれまで説明した具体例に限定されるものではなく、多様な変形例としての構成を採り得る。
 例えば、上記では、本技術が対象とするセンサの例としてIMUセンサ2やイメージセンサ3を例示したが、該センサについては、これらIMUセンサ2やイメージセンサ3に限定されない。例えば、温度センサやマイクロフォン、磁気センサ、位置センサ、高度センサなどの各種のセンサを挙げることができる。
 また、上記では、信号処理装置1がスコア分類シーン解析器10を備える例を挙げたが、スコア分類シーン解析器10を備えることは必須ではない。
<11.実施形態のまとめ>

 上記のように実施形態としての第一の信号処理装置(同1)は、ニューラルネットワークを有し、センサからの入力信号を対象として特定事象についての特徴量を抽出するように学習された特徴量抽出部(同7)と、特徴量抽出部が抽出した特徴量に基づき、入力信号の補正を行う補正部(信号補正処理部9)と、を備えるものである。
 特定事象についての「特徴量」とは、例えば、センサが加速度センサや角速度センサ等の対象物の動きを検出するための動きセンサ(モーションセンサ)であれば、遠心力や、エフェクトとしての振動についての特徴量等を挙げることができる。すなわち、遠心力とは何かを表す特徴量や、カメラのスタビライズ処理において臨場感を演出するために与えるべき振動とは何かを表す特徴量等である。或いは、センサがイメージセンサであれば、撮像ノイズの特徴量(撮像ノイズとは何かを表す特徴量)、フォーカスの特徴量(フォーカスとは何かを表す特徴量)等を挙げることができる。例えば、遠心力としての特徴量が抽出できれば、入力信号におけるその特徴量を打ち消すことで、スタビライズ処理として遠心力による悪影響を除去した処理を実現でき、スタビライズ性能の向上を図ることができる。或いは、フォーカスとしての特徴量を抽出できれば、該特徴量を用いた画像補正処理により画像の深度方向におけるフォーカス位置(合焦位置)を調整することが可能となる。つまり、撮影後のピント調整が可能となる。
 本技術では、例えばこれら遠心力やフォーカスといったような、数式で表すことが困難な事象についての特徴量を、AI技術を用いた学習によりオブジェクトのように抽出し、抽出した特徴量に基づき入力信号を補正している。これにより、従来のフィルタ処理では困難であった補正処理を容易に実現可能となる。
 従って、センサからの入力信号の補正に関して性能向上を図ることができる。
 ここで、本実施形態では、センサ情報の中から例えば「遠心力」といったオブジェクトを特徴抽出することで信号処理性能の向上を図っている。また、画像処理においても、例えば撮像ノイズ、フォーカスなどの光学現象、ワープ特徴量(動きベクトル)などをすべてオブジェクトの形で特徴抽出し、これまでにない性能の画像処理を実現している。このように本実施形態は、従来センサにAI技術を組み合わせることで、一段階抽象度の高い「オブジェクトセンサ」という形のセンシングシステムを構築しているところに従来技術にはない技術的特徴を有するものである。
 また、実施形態としての第一の信号処理装置においては、特徴量抽出部が抽出した特徴量を調整する調整器(特徴量調整器8)を備えている。
 これにより、入力信号の補正結果としてより良好な結果が得られるように特徴量の調整を行うことが可能となる。
 従って、入力信号の補正性能の向上を図ることができる。
 さらに、実施形態としての第一の信号処理装置においては、センサは撮像装置の動きを検出する動きセンサ(IMUセンサ2)とされ、補正部が特徴量に基づき補正した動きセンサからの入力信号に基づき、撮像装置の撮像画像についてのスタビライズ処理を行うスタビライズ処理部(同13)を備えている。
 これにより、例えば特徴量として遠心力の特徴量を抽出する場合には、遠心力の成分を除去した動き検出信号に基づいてスタビライズ処理を行うことが可能となる。或いは、特徴量として例えばエフェクトとしての振動の特徴量を抽出する場合であれば、エフェクトとしての振動成分を除去した動き検出信号に基づくスタビライズ処理を行うことが可能となる。すなわち、スタビライズ処理において該エフェクトとしての振動成分が除去されないようにすることが可能となる。
 従って、撮像画像のスタビライズ処理として、目的に合った適切なスタビライズ処理の実現を図ることができる。
 さらにまた、実施形態としての第一の信号処理装置においては、特徴量抽出部が抽出した特徴量を調整する調整器と、ニューラルネットワークを有し、動きセンサからの入力信号に基づきスタビライズ処理の性能を表す評価スコアを算出するように学習されたスコア算出部(スコア分類シーン解析器10)と、を備え、調整器は、スコア算出部が算出した評価スコアに基づき、補正部が入力信号の補正に用いる特徴量の調整を行っている。
 上記のように動きセンサからの入力信号に基づき評価スコアを算出することで、スタビライズ処理後の画像に基づく評価スコアの算出を行う場合よりも、演算量の低減が図られる。
 従って、評価スコアに応じて特徴量を適切に調整する上での演算リソースの低減を図ることができる。
 また、実施形態としての第一の信号処理装置においては、スタビライズ処理部は、出力画像の座標系である出力座標系において、水平方向及び垂直方向にそれぞれ複数配列された格子点を有し格子点ごとに入力信号から求まる動き情報が対応づけられる格子点メッシュを生成し、格子点メッシュにおける格子点ごとの動き情報に基づいてスタビライズ処理を行っている。
 これにより、出力画像の各画素位置における参照座標の正確性を高めることが可能とされる。
 従って、スタビライズ処理の性能向上を図ることができる。
 さらに、実施形態としての第一の信号処理装置においては、補正部が特徴量に基づき行う入力信号の補正処理で生じる遅延量を計算し、該遅延量に基づいて入力信号についての位相調整を行う位相調整器(位相調整部11)を備えている。
 これにより、補正処理が或る程度遅延量をもつ場合であっても適切なスタビライズ処理を実現することが可能となる。特に、RS歪みに対して有効な補正が可能となる。
 従って、スタビライズ性能の向上を図ることができる。
 また、実施形態としての第一の信号処理装置においては、撮像画像を得るイメージセンサを有し、特徴量抽出部と補正部とを有する集積回路チップ(信号処理部1a)がイメージセンサと同一の半導体パッケージ内に実装されている(図51、図52を参照)。
 これにより、イメージセンサと集積回路チップとを別パッケージで実装する場合よりも信号処理装置の小型化を図ることができる。
 さらに、実施形態としての第一の信号処理装置においては、集積回路チップにイメージセンサが積層されている(図52を参照)。
 これにより、イメージセンサと集積回路チップとを同一パッケージ内において縦方向に積み上げて省スペースに収容することが可能となる。
 従って、信号処理装置の小型化を図ることができる。
 また、実施形態としての第一の信号処理方法は、ニューラルネットワークを有しセンサからの入力信号を対象として特定事象についての特徴量を抽出するように学習された特徴量抽出部が抽出した前記特徴量に基づき、前記入力信号の補正を行う信号処理方法である。
 このような第一の信号処理方法によっても、上記した第一の信号処理装置と同様の作用及び効果を得ることができる。
 また、実施形態としての第二の信号処理装置(同1)は、センサからの入力信号を処理する積層オートエンコーダ(同70)と、ニューラルネットワークを有しプレトレーニング後の前記積層オートエンコーダの中間層に得られる特徴量を入力とし、特定の事象に係る異なる事象態様をそれぞれ異なる制御線の値に関連付けて学習する制御線関連付け学習が行われた制御線関連付け学習器(同71a)と、制御線に第一の値を与えたときの制御線関連付け学習器の出力である第一出力と、制御線に第一の値とは異なる第二の値を与えたときの制御線関連付け学習器の出力である第二出力との差分を得るリファクタリング器(同72a)と、を備えるものである。
 ここで言う「特定の事象」とは、例えばモーションデータであれば遠心力、画像データであればフォーカス等、特徴量の抽出対象とする事象を意味する。また、ここで言う「事象態様」とは、例えば、遠心力であれば「遠心力あり」という態様や「遠心力なし」という態様、或いは、フォーカスであれば「前ピン」という態様と「後ピン」という態様等、特定の事象に関する態様のことを意味する。上記構成によれば、特定の事象についての特徴量が、第一事象態様(例えば遠心力あり)の場合と第二事象態様(例えば遠心力なし)の場合との出力差として求められる。
 従って、特定の事象についての特徴量を適切に抽出することができる。
 このとき、制御線関連付け学習器については、一般的なCNNのような全結合層を用いる構成を採る必要はなく、特徴量抽出にあたっての演算リソース低減が図られる。このため、本実施形態によれば、演算リソースの増大化の抑制を図りつつ、特定の事象についての特徴量を適切に抽出することができる。
 また、実施形態としての第二の信号処理装置においては、リファクタリング器は、差分として得られる信号の一部の周波数成分を抽出する周波数フィルタを有している(図8を参照)。
 これにより、制御線関連付け学習器の第一出力と第二出力との差分として得られる信号について、波形成形を行うことが可能とされる。
 従って、制御線関連付け学習器の学習結果が不十分であったとしても期待する特徴量に近づけることが可能となり、特徴量抽出の正確性向上を図ることができる。
 さらに、実施形態としての第二の信号処理装置においては、リファクタリング器が抽出した特徴量を調整する調整器(特徴量調整器8)を備えている。
 これにより、リファクタリング器において特徴量が期待通りのレベルで抽出されない場合であっても、適切な特徴量が得られるように加減を行うことが可能とされる。
 従って、特徴量の正確性向上を図ることができる。
 さらにまた、実施形態としての第二の信号処理装置においては、センサは対象物の動きを検出する動きセンサ(IMUセンサ2)とされ、積層オートエンコーダは、動きセンサによる検出信号を入力信号として入力している。
 これにより、対象物の動きに係る特徴量を学習済みのAIにより抽出することが可能とされる。
 従って、例えば、車載カメラ等に作用する遠心力についての特徴量(遠心力とは何かを表す特徴量)や、エフェクトとしての振動についての特徴量(カメラのスタビライズ処理において臨場感を演出するために与えるべき振動とは何かを表す特徴量)等、対象物の動きに係る事象のうち、数式化が困難な事象について特徴量を適切に求めることができる。
 また、実施形態としての第二の信号処理装置においては、センサはイメージセンサ(同3)とされ、積層オートエンコーダは、イメージセンサによる撮像画像信号を入力信号として入力している。
 これにより、撮像画像に係る特徴量を学習済みのAIにより抽出することが可能とされる。
 従って、例えば、撮像ノイズの特徴量(撮像ノイズとは何かを表す特徴量)、フォーカスの特徴量(フォーカスとは何かを表す特徴量)等、撮像画像に係る事象のうち、数式化が困難な事象について特徴量を適切に求めることができる。
 さらに、実施形態としての第二の信号処理装置においては、センサは撮像装置の動きを検出する動きセンサとされ、積層オートエンコーダは、動きセンサによる検出信号を入力信号として入力し、リファクタリング器が抽出した特徴量に基づき、入力信号の補正を行う補正部(信号補正処理部9)と、補正部による補正が施された入力信号に基づき、撮像装置の撮像画像についてのスタビライズ処理を行うスタビライズ処理部(同13)と、を備えている。
 これにより、例えば特徴量として遠心力の特徴量を抽出する場合には、遠心力の成分を除去した動き検出信号に基づいてスタビライズ処理を行うことが可能となる。或いは、特徴量として例えばエフェクトとしての振動の特徴量を抽出する場合であれば、エフェクトとしての振動成分を除去した動き検出信号に基づくスタビライズ処理を行うことが可能となる。すなわち、スタビライズ処理において該エフェクトとしての振動成分が除去されないようにすることが可能となる。
 従って、撮像画像のスタビライズ処理として、目的に合った適切なスタビライズ処理の実現を図ることができる。
 さらにまた、実施形態としての第二の信号処理装置においては、撮像画像を得るイメージセンサを有し、積層オートエンコーダと制御線関連付け学習器とリファクタリング器とを有する集積回路チップが、イメージセンサと同一の半導体パッケージ内に実装されている。
 これにより、イメージセンサと集積回路チップとを別パッケージで実装する場合よりも信号処理装置の小型化を図ることができる。
 また、実施形態としての第二の信号処理装置においては、集積回路チップにイメージセンサが積層されている。
 これにより、イメージセンサと集積回路チップとを同一パッケージ内において縦方向に積み上げて省スペースに収容することが可能となる。
 従って、信号処理装置の小型化を図ることができる。
 また、実施形態としての第二の信号処理方法は、センサからの入力信号を処理する積層オートエンコーダと、ニューラルネットワークを有しプレトレーニング後の積層オートエンコーダの中間層に得られる特徴量を入力とし、特定の事象に係る異なる事象態様をそれぞれ異なる制御線の値に関連付けて学習する制御線関連付け学習が行われた制御線関連付け学習器と、を備えた信号処理装置について、制御線に第一の値を与えたときの制御線関連付け学習器の出力である第一出力と、制御線に第一の値とは異なる第二の値を与えたときの制御線関連付け学習器の出力である第二出力との差分を得る信号処理方法である。
 このような第二の信号処理方法によっても、上記した第二の信号処理装置と同様の作用及び効果を得ることができる。
 また、実施形態としてのパラメータ探索方法は、センサからの入力信号を処理する積層オートエンコーダと、ニューラルネットワークを有しプレトレーニング後の積層オートエンコーダの中間層に得られる特徴量を入力とし、特定の事象に係る異なる事象態様をそれぞれ異なる制御線の値に関連付けて学習する制御線関連付け学習が行われた制御線関連付け学習器と、制御線に第一の値を与えたときの制御線関連付け学習器の出力である第一出力と、制御線に第一の値とは異なる第二の値を与えたときの制御線関連付け学習器の出力である第二出力との差分を得るリファクタリング器と、を備えた信号処理装置に関するパラメータ探索方法であって、情報処理装置が、ゲーム操作に応じて信号処理装置に設定するパラメータの組み合わせを選択し、選択した組み合わせによるパラメータが設定された信号処理装置について、信号処理結果に対する評価スコアを取得し、取得した評価スコアに基づき所定の評価スコア条件を満たすパラメータの組み合わせを探索するパラメータ探索方法である(図33、図34を参照)。
 これにより、例えば制御線に与える第一の値や第二の値等、信号処理装置における特徴量抽出処理に係るパラメータについて、最適とされるパラメータの探索を、ゲームコンテンツを介した分散処理のアプローチにより実現することが可能となる。
 従って、より複雑なリファクタリング命題を効率良く解いていくことができ、パラメータ探索の効率化を図ることができる。
 なお、本明細書に記載された効果はあくまでも例示であって限定されるものではなく、また他の効果があってもよい。
<12.本技術>

 なお本技術は以下のような構成も採ることができる。
(1)
 ニューラルネットワークを有し、センサからの入力信号を対象として特定事象についての特徴量を抽出するように学習された特徴量抽出部と、
 前記特徴量抽出部が抽出した前記特徴量に基づき、前記入力信号の補正を行う補正部と、を備える
 信号処理装置。
(2)
 前記特徴量抽出部が抽出した前記特徴量を調整する調整器を備えた
 前記(1)に記載の信号処理装置。
(3)
 前記センサは撮像装置の動きを検出する動きセンサとされ、
 前記補正部が前記特徴量に基づき補正した前記動きセンサからの入力信号に基づき、前記撮像装置の撮像画像についてのスタビライズ処理を行うスタビライズ処理部を備えた
 前記(1)又は(2)に記載の信号処理装置。
(4)
 前記特徴量抽出部が抽出した前記特徴量を調整する調整器と、
 ニューラルネットワークを有し、前記動きセンサからの入力信号に基づき前記スタビライズ処理の性能を表す評価スコアを算出するように学習されたスコア算出部と、を備え、
 前記調整器は、
 前記スコア算出部が算出した前記評価スコアに基づき、前記補正部が前記入力信号の補正に用いる前記特徴量の調整を行う
 前記(3)に記載の信号処理装置。
(5)
 前記スタビライズ処理部は、
 出力画像の座標系である出力座標系において、水平方向及び垂直方向にそれぞれ複数配列された格子点を有し前記格子点ごとに前記入力信号から求まる動き情報が対応づけられる格子点メッシュを生成し、前記格子点メッシュにおける前記格子点ごとの前記動き情報に基づいて前記スタビライズ処理を行う
 前記(3)又は(4)に記載の信号処理装置。
(6)
 前記補正部が前記特徴量に基づき行う前記入力信号の補正処理で生じる遅延量を計算し、該遅延量に基づいて前記入力信号についての位相調整を行う位相調整器を備えた
 前記(1)から(5)の何れかに記載の信号処理装置。
(7)
 前記撮像画像を得るイメージセンサを有し、
 前記特徴量抽出部と前記補正部とを有する集積回路チップが前記イメージセンサと同一の半導体パッケージ内に実装された
 前記(3)から(6)の何れかに記載の信号処理装置。
(8)
 前記集積回路チップに前記イメージセンサが積層された
 前記(7)に記載の信号処理装置。
(9)
 ニューラルネットワークを有しセンサからの入力信号を対象として特定事象についての特徴量を抽出するように学習された特徴量抽出部が抽出した前記特徴量に基づき、前記入力信号の補正を行う
 信号処理方法。
1 信号処理装置
2 IMUセンサ
3 イメージセンサ
6 クォータニオン計算部
7 特徴量抽出部
70 SAE(積層オートエンコーダ)
71 制御線関連付け学習部
71a 制御線関連付け学習器
72 リファクタリング部
72a リファクタリング器
8 特徴量調整器
9 信号補正処理部
10 スコア分類シーン解析器
11 位相調整部
12 遅延量計算部
13 スタビライズ処理部
9a センサノイズ補正部
9b 遠心力補正部
9c エフェクト補正部
9d ステートマシン補正部
9e カメラワーク補正部
22 スイッチ部
23 スコア解析器
24 自動調整器
50 情報処理装置
51 制御部
F1 制御線・ブレンド比制御処理部
F2 スコア取得処理部
F3 表示処理部
F4 収束判定処理部
61 参照座標計算部
62 バッファ制御部
63 バッファメモリ
64 メモリ制御部
65 キャッシュメモリ
66 補間フィルタ
CR 参照座標
L1 仮想線
Pr 参照画素
Ar 参照領域
81 格子点メッシュ生成・成形部
82 セグメントマトリクス生成部
83 セグメント探索部
84 リメッシュデータ生成部
85 各画素座標補間部
81a 格子点メッシュ生成器
81b レンズ歪補正器
81c 射影器
81d 回転器
81e 自由曲率透視投影器
81f 走査制御器
81g クリップ器
81h 各格子点参照座標計算器
91 フレームバッファ
92 ランダムノイズ生成部
93 ランダムノイズ付加部
94 ランダムノイズ付加レベル調整部

Claims (9)

  1.  ニューラルネットワークを有し、センサからの入力信号を対象として特定事象についての特徴量を抽出するように学習された特徴量抽出部と、
     前記特徴量抽出部が抽出した前記特徴量に基づき、前記入力信号の補正を行う補正部と、を備える
     信号処理装置。
  2.  前記特徴量抽出部が抽出した前記特徴量を調整する調整器を備えた
     請求項1に記載の信号処理装置。
  3.  前記センサは撮像装置の動きを検出する動きセンサとされ、
     前記補正部が前記特徴量に基づき補正した前記動きセンサからの入力信号に基づき、前記撮像装置の撮像画像についてのスタビライズ処理を行うスタビライズ処理部を備えた
     請求項1に記載の信号処理装置。
  4.  前記特徴量抽出部が抽出した前記特徴量を調整する調整器と、
     ニューラルネットワークを有し、前記動きセンサからの入力信号に基づき前記スタビライズ処理の性能を表す評価スコアを算出するように学習されたスコア算出部と、を備え、
     前記調整器は、
     前記スコア算出部が算出した前記評価スコアに基づき、前記補正部が前記入力信号の補正に用いる前記特徴量の調整を行う
     請求項3に記載の信号処理装置。
  5.  前記スタビライズ処理部は、
     出力画像の座標系である出力座標系において、水平方向及び垂直方向にそれぞれ複数配列された格子点を有し前記格子点ごとに前記入力信号から求まる動き情報が対応づけられる格子点メッシュを生成し、前記格子点メッシュにおける前記格子点ごとの前記動き情報に基づいて前記スタビライズ処理を行う
     請求項3に記載の信号処理装置。
  6.  前記補正部が前記特徴量に基づき行う前記入力信号の補正処理で生じる遅延量を計算し、該遅延量に基づいて前記入力信号についての位相調整を行う位相調整器を備えた
     請求項1に記載の信号処理装置。
  7.  前記撮像画像を得るイメージセンサを有し、
     前記特徴量抽出部と前記補正部とを有する集積回路チップが前記イメージセンサと同一の半導体パッケージ内に実装された
     請求項3に記載の信号処理装置。
  8.  前記集積回路チップに前記イメージセンサが積層された
     請求項7に記載の信号処理装置。
  9.  ニューラルネットワークを有しセンサからの入力信号を対象として特定事象についての特徴量を抽出するように学習された特徴量抽出部が抽出した前記特徴量に基づき、前記入力信号の補正を行う
     信号処理方法。
PCT/JP2021/005068 2020-03-16 2021-02-10 信号処理装置、信号処理方法 WO2021186961A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
US17/910,355 US11985424B2 (en) 2020-03-16 2021-02-10 Signal processing device and signal processing method for correcting input signal from sensor
JP2022508136A JPWO2021186961A1 (ja) 2020-03-16 2021-02-10
EP21772241.2A EP4124017A4 (en) 2020-03-16 2021-02-10 SIGNAL PROCESSING APPARATUS AND SIGNAL PROCESSING METHOD

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2020045254 2020-03-16
JP2020-045254 2020-03-16

Publications (1)

Publication Number Publication Date
WO2021186961A1 true WO2021186961A1 (ja) 2021-09-23

Family

ID=77768074

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2021/005068 WO2021186961A1 (ja) 2020-03-16 2021-02-10 信号処理装置、信号処理方法

Country Status (4)

Country Link
US (1) US11985424B2 (ja)
EP (1) EP4124017A4 (ja)
JP (1) JPWO2021186961A1 (ja)
WO (1) WO2021186961A1 (ja)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09237345A (ja) * 1996-02-29 1997-09-09 Sony Corp クラス分類適応処理における学習方法
JP2017183952A (ja) * 2016-03-30 2017-10-05 キヤノン株式会社 撮像装置およびその制御方法、撮像素子
WO2018150685A1 (ja) * 2017-02-20 2018-08-23 ソニー株式会社 画像処理装置、および画像処理方法、並びにプログラム
JP2019110525A (ja) * 2017-12-18 2019-07-04 キヤノン株式会社 撮像装置及びその制御方法、プログラム、記憶媒体
JP2019121941A (ja) * 2018-01-09 2019-07-22 ソニーセミコンダクタソリューションズ株式会社 画像処理装置および方法、並びに画像処理システム

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6135848B2 (ja) 2012-09-04 2017-05-31 パナソニックIpマネジメント株式会社 撮像装置、画像処理装置および画像処理方法
EP2918076A4 (en) 2012-11-12 2016-10-05 Behavioral Recognition Sys Inc IMAGE STABILIZATION PROCEDURE FOR VIDEO MONITORING SYSTEMS
US9361575B2 (en) 2013-12-11 2016-06-07 Volvo Car Corporation Method of programming a neural network computer
US10708571B2 (en) 2015-06-29 2020-07-07 Microsoft Technology Licensing, Llc Video frame processing
US10602126B2 (en) * 2016-06-10 2020-03-24 Lucid VR, Inc. Digital camera device for 3D imaging
US10771698B2 (en) * 2018-08-31 2020-09-08 Qualcomm Incorporated Image stabilization using machine learning

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09237345A (ja) * 1996-02-29 1997-09-09 Sony Corp クラス分類適応処理における学習方法
JP2017183952A (ja) * 2016-03-30 2017-10-05 キヤノン株式会社 撮像装置およびその制御方法、撮像素子
WO2018150685A1 (ja) * 2017-02-20 2018-08-23 ソニー株式会社 画像処理装置、および画像処理方法、並びにプログラム
JP2019110525A (ja) * 2017-12-18 2019-07-04 キヤノン株式会社 撮像装置及びその制御方法、プログラム、記憶媒体
JP2019121941A (ja) * 2018-01-09 2019-07-22 ソニーセミコンダクタソリューションズ株式会社 画像処理装置および方法、並びに画像処理システム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP4124017A4 *

Also Published As

Publication number Publication date
US11985424B2 (en) 2024-05-14
JPWO2021186961A1 (ja) 2021-09-23
US20230156331A1 (en) 2023-05-18
EP4124017A4 (en) 2023-09-06
EP4124017A1 (en) 2023-01-25

Similar Documents

Publication Publication Date Title
WO2021186962A1 (ja) 信号処理装置、信号処理方法、パラメータ探索方法
CN103514432B (zh) 人脸特征提取方法、设备和计算机程序产品
CN105031935B (zh) 提供具有传递稳定的图像序列的视频相机的旋翼无人机
KR100678373B1 (ko) 그래픽 영상들과의 상호 작용을 위한 사용자 입력 장치 및 방법
CN106027852B (zh) 一种用于微纳卫星的视频稳像方法
JP5148660B2 (ja) プログラム、情報記憶媒体及び画像生成システム
JP2021111380A (ja) 入力映像に含まれた客体の3次元ポーズの推定のためのデータを生成する方法、コンピュータシステムおよび推論モデルを構築する方法
CN106534627A (zh) 包括使用姿态无关控制参数的前视相机的无人机
JP2011258160A (ja) プログラム、情報記憶媒体及び画像生成システム
CN102648032B (zh) 虚拟目标跟踪
US11367254B2 (en) Systems and methods for generating a model of a character from one or more images
CN108702450A (zh) 稳定图像序列的方法
JP2011258159A (ja) プログラム、情報記憶媒体及び画像生成システム
CN113272821A (zh) 深度神经网络姿态估计***
US20070296825A1 (en) Image Processing Device, Image Processing System, Computer Control Method, and Information Storage Medium
JP2011186834A (ja) ゲームプログラム、記録媒体、及びコンピュータ装置
CN106485788A (zh) 一种游戏引擎混合现实拍摄方法
WO2020049847A1 (ja) 推定装置、学習装置、推定方法、学習方法及びプログラム
CN114463230A (zh) 一种图像处理方法及相关设备
CN110622210A (zh) 用于处理360度图像的方法和装置
WO2021186961A1 (ja) 信号処理装置、信号処理方法
KR20240050257A (ko) UDC(under display camera) 이미지 복원을 수행하는 방법 및 전자 장치
JP7416170B2 (ja) 学習方法、学習装置、プログラムおよび記録媒体
WO2021251005A1 (ja) 信号処理装置、信号処理方法
WO2023248732A1 (ja) 信号処理装置、信号処理方法

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: 21772241

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2022508136

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2021772241

Country of ref document: EP

Effective date: 20221017