WO2021152849A1 - データ処理装置及びデータ処理プログラム - Google Patents

データ処理装置及びデータ処理プログラム Download PDF

Info

Publication number
WO2021152849A1
WO2021152849A1 PCT/JP2020/003785 JP2020003785W WO2021152849A1 WO 2021152849 A1 WO2021152849 A1 WO 2021152849A1 JP 2020003785 W JP2020003785 W JP 2020003785W WO 2021152849 A1 WO2021152849 A1 WO 2021152849A1
Authority
WO
WIPO (PCT)
Prior art keywords
image data
data
unit
recognition
compression
Prior art date
Application number
PCT/JP2020/003785
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 PCT/JP2020/003785 priority Critical patent/WO2021152849A1/ja
Priority to JP2021574421A priority patent/JP7409400B2/ja
Publication of WO2021152849A1 publication Critical patent/WO2021152849A1/ja
Priority to US17/838,321 priority patent/US20220312019A1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/154Measured or subjectively estimated visual quality after decoding, e.g. measurement of distortion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/776Validation; Performance evaluation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/98Detection or correction of errors, e.g. by rescanning the pattern or by human intervention; Evaluation of the quality of the acquired patterns
    • G06V10/993Evaluation of the quality of the acquired pattern
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/124Quantisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/192Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding the adaptation method, adaptation tool or adaptation type being iterative or recursive
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression

Definitions

  • the present invention relates to a data processing apparatus and a data processing program.
  • the image data when recording or transmitting image data, the image data is compressed and the data size is reduced to reduce the recording cost and the transmission cost.
  • AI Artificial Intelligence
  • the conventional compression process is performed based on human visual characteristics, not based on AI motion analysis. For this reason, there are cases where the compression process is not performed at a sufficient compression level for the region that is not necessary for the recognition process by AI. Alternatively, the image quality of an important region in the recognition process by AI may be deteriorated, and sufficient recognition accuracy may not be obtained when decoding is performed.
  • the purpose is to realize compression processing suitable for recognition processing by AI.
  • the data processing device When the compression level is determined based on the degree of influence on the recognition result of each block when the recognition process is performed on the image data, the compression process is performed on the image data using the compression level. By doing so, when the encoding unit that generates the compressed data and the recognition result when the recognition processing is performed on the decoded data obtained by decoding the compressed data satisfy a predetermined condition, the block corresponding to the recognition target. Has a correction unit that corrects the compression level in the direction of increasing the compression level.
  • FIG. 1 is a first diagram showing an example of a system configuration of a compression processing system.
  • FIG. 2 is a diagram showing an example of a hardware configuration of an analysis device, an image compression device, or a data processing device.
  • FIG. 3 is a diagram showing an example of the functional configuration of the analyzer.
  • FIG. 4 is a diagram showing a specific example of the aggregation result.
  • FIG. 5 is a diagram showing a specific example of processing by the quantization value determination unit.
  • FIG. 6 is a diagram showing a specific example of processing by the foreground determination unit.
  • FIG. 7 is a diagram showing an example of the functional configuration of the image compression device.
  • FIG. 8 is a first diagram showing an example of the functional configuration of the data processing device.
  • FIG. 8 is a first diagram showing an example of the functional configuration of the data processing device.
  • FIG. 9 is a diagram showing a specific example of the processing of the quantization value correction unit.
  • FIG. 10 is a first flowchart showing an example of the flow of image compression processing by the compression processing system.
  • FIG. 11 is a second diagram showing an example of the system configuration of the compression processing system.
  • FIG. 12 is a second diagram showing an example of the functional configuration of the data processing device.
  • FIG. 13 is a first diagram showing a specific example of the processing of the analysis unit.
  • FIG. 14 is a second diagram showing a specific example of the processing of the analysis unit.
  • FIG. 15 is a second flowchart showing an example of the flow of image compression processing by the compression processing system.
  • FIG. 16 is a third diagram showing an example of the system configuration of the compression processing system.
  • FIG. 10 is a first flowchart showing an example of the flow of image compression processing by the compression processing system.
  • FIG. 11 is a second diagram showing an example of the system configuration of the compression processing system.
  • FIG. 12 is a second
  • FIG. 17 is a fourth diagram showing an example of the system configuration of the compression processing system.
  • FIG. 18 is a third diagram showing an example of the functional configuration of the data processing device.
  • FIG. 19 is a third flowchart showing an example of the flow of image compression processing by the compression processing system.
  • FIG. 20 is a fifth diagram showing an example of the system configuration of the compression processing system.
  • FIG. 21 is a sixth diagram showing an example of the system configuration of the compression processing system.
  • FIG. 22 is a fourth diagram showing an example of the functional configuration of the data processing device.
  • FIG. 23 is a fourth flowchart showing an example of the flow of image compression processing by the compression processing system.
  • FIG. 1 is a first diagram showing an example of a system configuration of a compression processing system.
  • the processing executed by the compression processing system is -The first phase of generating the determined quantization value map and -It can be roughly divided into a second phase in which the determined quantization value map is corrected, compression processing is performed using the corrected determined quantization value map, and the compressed data is stored.
  • 1a shows the system configuration of the compression processing system in the first phase
  • 1b shows the system configuration of the compression processing system in the second phase.
  • the compression processing system 100 in the first phase includes an image pickup device 110, an analysis device 120, and an image compression device 130.
  • the image pickup device 110 takes a picture at a predetermined frame cycle and transmits the image data to the analysis device 120.
  • the image data includes an object to be recognized.
  • the analysis device 120 has a trained model that performs recognition processing.
  • the analysis device 120 performs recognition processing by inputting image data into the trained model, and outputs the recognition result.
  • the analysis device 120 acquires each compressed data output by the image compression device 130 performing compression processing on the image data at different compression levels (quantization values), and decodes each compressed data. Generate each decrypted data. Further, the analysis device 120 performs recognition processing by inputting each decoded data into the trained model, and outputs the recognition result.
  • the analysis device 120 generates a map (referred to as an important feature map) showing the degree of influence on the recognition result by, for example, performing motion analysis of the trained model at the time of recognition processing by using the error back propagation method. .. Further, the analysis device 120 aggregates the degree of influence for each predetermined region (for each block used when the compression process is performed) based on the important feature map.
  • an important feature map a map showing the degree of influence on the recognition result by, for example, performing motion analysis of the trained model at the time of recognition processing by using the error back propagation method. ..
  • the analysis device 120 aggregates the degree of influence for each predetermined region (for each block used when the compression process is performed) based on the important feature map.
  • the quantization value map (variable) in which the quantization value is set in each block is sequentially transmitted to the image compression device 130 to perform compression processing at different compression levels (quantization value). , Instruct the image compression device 130.
  • the analysis device 120 generates an aggregated value graph for each block based on the aggregated value of the influence degree of each block aggregated each time the recognition process is performed on each decoded data.
  • the aggregated value graph is a graph showing the change of the aggregated value for each compression level (each quantized value). Further, the analysis device 120 determines the optimum compression level (quantization value) of each block based on each of the aggregated value graphs for each block.
  • the optimum quantization value of each block determined by the analyzer 120 will be referred to as a "determined quantization value”.
  • a map in which a determined quantization value is set in each block is referred to as a "determined quantization value map”.
  • the analysis device 120 transmits the determined quantization value map to the data processing device 140.
  • the analysis device 120 is suitable for the recognition process when performing the compression process on the image data.
  • the compression level can be determined.
  • the compression processing system 100 in the second phase includes an analysis device 120, an image compression device 130, a data processing device 140, and a storage device 150.
  • the analysis device 120 transmits the image data to the image compression device 130 and the data processing device 140.
  • the data processing device 140 performs compression processing on the image data transmitted from the analysis device 120 by using the determined quantization value map transmitted from the analysis device 120 in the first phase. Further, the data processing device 140 decodes the compressed data, performs recognition processing on the decoded data, and outputs the recognition result.
  • the data processing device 140 increases or decreases the quantization value of the block corresponding to the object to be recognized among the quantization values set in each block of the determined quantization value map in a predetermined step size. Recognize the decrypted data. Further, the data processing device 140 can compare the recognition result of the recognition result defined in advance based on the recognition result of the image data with the recognition result of each decoded data, and output the recognition result within the specified tolerance. Search for the maximum quantization value.
  • the data processing device 140 corrects the quantization value of the block corresponding to the object of the determination quantization value map using the searched maximum quantization value, and generates the corrected determination quantization value map. Further, the data processing device 140 transmits the generated corrected determined quantization value map to the image compression device 130.
  • the image compression device 130 performs compression processing on the image data using the transmitted corrected determined quantization value map, and stores the compressed data in the storage device 150.
  • the analysis device 120 when the analysis device 120 generates the determined quantization value map based on the degree of influence on the recognition result of each block, the recognition is performed based on the recognition result. Correct the quantization value of the block corresponding to the target object.
  • the compression level can be improved while maintaining the recognition result. That is, according to the data processing device 140 according to the first embodiment, it is possible to realize a compression process suitable for the recognition process by AI.
  • FIG. 2 is a diagram showing an example of the hardware configuration of the analysis device, the image compression device, or the data processing device.
  • the analysis device 120, the image compression device 130, or the data processing device 140 includes a processor 201, a memory 202, an auxiliary storage device 203, an I / F (Interface) device 204, a communication device 205, and a drive device 206.
  • the hardware of the analysis device 120, the image compression device 130, or the data processing device 140 is connected to each other via the bus 207.
  • the processor 201 has various arithmetic devices such as a CPU (Central Processing Unit) and a GPU (Graphics Processing Unit).
  • the processor 201 reads and executes various programs (for example, an analysis program, an image compression program, a data processing program, etc., which will be described later) on the memory 202.
  • the memory 202 has a main storage device such as a ROM (Read Only Memory) and a RAM (Random Access Memory).
  • the processor 201 and the memory 202 form a so-called computer, and the processor 201 realizes various functions by executing various programs read on the memory 202 (details of the various functions will be described later).
  • the auxiliary storage device 203 stores various programs and various data used when various programs are executed by the processor 201.
  • the I / F device 204 is a connection device that connects the operation device 210 and the display device 220, which are examples of external devices, to the analysis device 120, the image compression device 130, or the data processing device 140.
  • the I / F device 204 receives an operation on the analysis device 120, the image compression device 130, or the data processing device 140 via the operation device 210. Further, the I / F device 204 outputs the result of processing by the analysis device 120, the image compression device 130, or the data processing device 140, and displays the result via the display device 220.
  • the communication device 205 is a communication device for communicating with another device.
  • the analysis device 120 communicates with other devices such as the image pickup device 110, the image compression device 130, and the data processing device 140 via the communication device 205.
  • the image compression device 130 communicates with other devices such as the analysis device 120, the data processing device 140, and the storage device 150 via the communication device 205.
  • the data processing device 140 communicates with the analysis device 120 and the image compression device 130, which are other devices, via the communication device 205.
  • the drive device 206 is a device for setting the recording medium 230.
  • the recording medium 230 referred to here includes a medium such as a CD-ROM, a flexible disk, a magneto-optical disk, or the like that optically, electrically, or magnetically records information. Further, the recording medium 230 may include a semiconductor memory or the like for electrically recording information such as a ROM or a flash memory.
  • the various programs installed in the auxiliary storage device 203 are installed, for example, by setting the distributed recording medium 230 in the drive device 206 and reading the various programs recorded in the recording medium 230 by the drive device 206. Will be done.
  • the various programs installed in the auxiliary storage device 203 may be installed by being downloaded from the network via the communication device 205.
  • FIG. 3 is a diagram showing an example of the functional configuration of the analyzer.
  • the analysis device 120 has an analysis program installed, and when the program is executed, the analysis device 120 has an input unit 310, a CNN unit 320, a quantization value setting unit 330, and an output unit. Functions as 340. Further, the analysis device 120 functions as an important feature map generation unit 350, an aggregation unit 360, a quantization value determination unit 370, and a foreground determination unit 380.
  • the input unit 310 acquires the image data transmitted from the image pickup device 110 or the compressed data transmitted from the image compression device 130.
  • the input unit 310 notifies the CNN unit 320 and the output unit 340 of the acquired image data, decodes the acquired compressed data using a decoding unit (not shown), and notifies the CNN unit 320 of the decoded data.
  • the CNN unit 320 has a trained model, and by inputting image data or decoded data, performs recognition processing on the object to be recognized included in the image data or decoded data, and outputs the recognition result.
  • the recognition result includes a bounding box indicating the area of the recognized object, and the CNN unit 320 notifies the foreground determination unit 380 of the bounding box.
  • the quantization value setting unit 330 sets each compression level (each quantization value from the minimum quantization value (initial value) to the maximum quantization value) used when the image compression device 130 performs the compression process.
  • the quantization value map (variable) is sequentially notified to the output unit 340. Further, the quantization value setting unit 330 stores each set compression level (each quantization value) in the aggregation result storage unit 390.
  • the output unit 340 transmits the image data acquired by the input unit 310 to the image compression device 130. Further, the output unit 340 sequentially transmits each quantization value map (variable) notified from the quantization value setting unit 330 to the image compression device 130. Further, the output unit 340 transmits the determined quantization value map notified by the foreground determination unit 380 to the image compression device 130.
  • the important feature map generation unit 350 acquires the CNN part structure information when the trained model performs recognition processing on the image data or the decoded data, and uses the error backpropagation method based on the acquired CNN part structure information. By doing so, an important feature map is generated.
  • the important feature map generation unit 350 generates an important feature map by using, for example, a BP (Back Propagation) method, a GBP (Guided Back Propagation) method, or a selective BP method.
  • BP Back Propagation
  • GBP Guided Back Propagation
  • the error of each label is calculated from the classification probability obtained by performing the recognition process on the image data (or decoded data) whose recognition result is the correct label, and the error is back-propagated to the input layer.
  • This is a method of visualizing the featured part by imaging the magnitude of the gradient to be obtained.
  • the GBP method is a method of visualizing the feature portion by imaging only the positive value of the gradient information as the feature portion.
  • the selective BP method is a method in which only the error of the correct label is present, or only the error of the correct label is maximized, and then backpropagation is performed using the BP method or the GBP method. ..
  • the visualized feature part is a feature part that affects only the score information of the correct answer label.
  • the important feature map generation unit 350 uses the BP method, the GBP method, or the selective BP method in the CNN unit 320 from the input of the image data or the decoded data to the output of the recognition result. Analyze the signal flow and strength of each path. Thereby, according to the important feature map generation unit 350, it is possible to visualize which part of the input image data or the decoded data affects the recognition result to what extent (degree of influence).
  • the important feature map generation unit 350 analyzes the same information by analyzing the same information. Generate an important feature map.
  • the method of generating the important feature map by the backpropagation method is, for example, "Selvaraju, Ramprasaath R., et al.”
  • Grad-cam Visual explanations from deep networks via gradient-based localization.
  • ICCV Computer Vision
  • the aggregation unit 360 aggregates the degree of influence on the recognition result in block units based on the important feature map, and calculates the aggregated value of the degree of influence for each block. Further, the aggregation unit 360 associates the calculated aggregation value of each block with the quantized value and stores the aggregation result as the aggregation result in the aggregation result storage unit 390.
  • the quantization value determination unit 370 determines the optimum quantization value in each block based on the aggregation value graph of each block stored in the aggregation result storage unit 390. Further, the quantization value determination unit 370 notifies the foreground determination unit 380 of the quantization value map in which the determined optimum quantization value is set in each block.
  • the foreground determination unit 380 determines, among the blocks included in the bounding box notified by the CNN unit 320 and the blocks located on the outer periphery thereof, the blocks satisfying a predetermined condition are the foreground blocks. Further, the foreground determination unit 380 determines that a block other than the block determined to be the foreground block is a background block. Further, the foreground determination unit 380 maximizes the quantization value set in the block determined to be the background block among the quantization values set in each block.
  • the foreground determination unit 380 notifies the output unit 340 of a determined quantization value map including the quantization value set in the foreground block and the quantization value (maximized quantization value) set in the background block. do.
  • the method of determining the foreground block by the foreground determination unit 380 is not limited to this.
  • the foreground determination unit 380 may determine the foreground block based only on the aggregated value graph of each block, regardless of the bounding box notified by the CNN unit 320.
  • the foreground determination unit 380 may determine a block that satisfies a predetermined condition in the aggregated value graph as a foreground block, and may determine a block that does not satisfy the predetermined condition as a background block.
  • the foreground block may be determined using other information (eg, classification probability, etc.) independent of the bounding box.
  • the notification of the bounding box from the CNN unit 320 to the foreground determination unit 380 may be omitted.
  • FIG. 4 is a diagram showing a specific example of the aggregation result.
  • 4a shows an arrangement example of each block in the image data 410.
  • each block in the image data 410 has the same size and the same shape.
  • the block number of the upper left block of the image data is set to "block 1”
  • the block number of the lower right block is set to "block m”.
  • the aggregation result 420 includes "block number” and "quantized value” as information items.
  • the block number of each block in the image data 410 is stored in the "block number”.
  • the "quantization value” includes “no compression” indicating that the image compression device 130 does not perform compression processing, and the minimum quantization value ("Q") that the quantization value setting unit 330 sequentially sets in each block. Each quantization value from 1 ") to the maximum quantization value (“Q n ”) is stored.
  • the trained model performs the recognition process and performs the recognition process.
  • aggregated in the corresponding block The aggregated value is stored.
  • FIG. 5 is a diagram showing a specific example of processing by the quantization value determination unit.
  • the aggregated value graphs 510_1 to 510_m are generated by plotting the quantized value on the horizontal axis and the quantized value on the vertical axis and plotting the quantized value of each block included in the aggregated result 420. Will be done.
  • the aggregated value of each quantized value of each block used to generate the aggregated value graphs 510_1 to 510_m is, for example, -It may be adjusted using an offset value common to all blocks. ⁇ Absolute values may be taken and aggregated. -The aggregated values of other blocks may be processed based on the aggregated values of the blocks that are not attracting attention.
  • the change in the aggregated value when the minimum quantized value (Q 1 ) is changed to the maximum quantized value (Q n) is different for each block.
  • the quantization value determination unit 370 for example, ⁇ When the size of the aggregated value exceeds a predetermined threshold, or ⁇ When the amount of change in the aggregated value exceeds a predetermined threshold, or ⁇ When the slope of the aggregated value exceeds a predetermined threshold, or ⁇ When the change in the slope of the aggregated value exceeds a predetermined threshold When any of the above conditions is satisfied, the optimum quantization value of each block is determined, and a quantization value map is generated.
  • the quantization value map 530 shows how B 1 Q to B m Q are determined as the optimum quantization values of blocks 1 to m and are set in the corresponding blocks, respectively.
  • the quantization value determination unit 370 determines the quantization value as follows, for example. -When the size of the block used for compression processing is larger than the size of the block used for aggregation processing The average value of the quantization values (or the average value of the quantization values based on the aggregated value of each block during aggregation processing) included in the blocks used for compression processing. , Minimum value, maximum value, and values processed by other indexes) are used as the quantization value of each block used in the compression process.
  • the aggregation of blocks at the time of aggregation Use value-based quantization values.
  • the process of actually calculating the aggregated value may be performed based on only one quantization value (one compression level). In that case, by assuming different quantization values (different compression levels) and measuring the difference or change between the aggregated value corresponding to the assumed quantization value and the aggregated value corresponding to the actual quantization value, the aggregation is performed. The value shall be calculated.
  • the image quality of the decoded data for the assumed quantization value may be better or worse than the image quality of the decoded data for the actual quantization value (compression level).
  • the assumed quantization value is a quantization value that makes it easy to estimate the state of the aggregated value. For example, when comparing the aggregated value corresponding to the actual quantization value with the image data that has not been compressed, the aggregated value of the image data that has not been compressed is generally the actual quantum. It is smaller than the aggregated value corresponding to the quantized value.
  • the aggregated value corresponding to the actual quantization value may be calculated using the decrypted data obtained by decoding the compressed data that has been compressed using the actual quantization value.
  • it may be calculated using image data that has been subjected to image processing (for example, low-pass filter processing) that produces the same effect.
  • the aggregated value corresponding to the actual quantization value can be calculated using image data that has been operated beyond the range of image quality change that can be controlled within the range of the maximum and minimum values of the quantization value. good. For example, it may be calculated using image data that has undergone image processing that exceeds the maximum value of the quantization value that can be specified in the moving image coding process.
  • the threshold value applied when evaluating the aggregated value graph may be different or the same for each block. Further, the threshold value applied when evaluating the aggregated value graph may or may not be adjusted based on the score information of the recognition result, for example.
  • the threshold value applied when evaluating the aggregated value graph may be automatically determined. Specifically, based on the information that can be acquired during the recognition process, the information that can be acquired from the image data, the value obtained by statistically processing them, the amount of compressed data and its transition, or other processing. It may be determined automatically based on the information that can be acquired.
  • FIG. 6 is a diagram showing a specific example of processing by the foreground determination unit.
  • the foreground determination unit 380 is notified by the quantization value determination unit 370 of the quantization value map 530 in which the quantization value is set in each block. Further, the foreground determination unit 380 is notified by the CNN unit 320 of the bounding boxes (bounding boxes 611 and 612 in the example of FIG. 6) indicating the area of the object.
  • the foreground determination unit 380 determines, for example, that the block included in the bounding box 611 is a foreground block. Further, the foreground determination unit 380 determines whether or not the outer peripheral block of the bounding box 611 is a foreground block based on the aggregated value graph.
  • the foreground determination unit 380 determines, for example, that the block included in the bounding box 612 is a foreground block. Further, the foreground determination unit 380 determines whether or not the outer peripheral block of the bounding box 612 is a foreground block based on the aggregated value graph.
  • the method of determining whether or not it is a foreground block by the foreground determination unit 380 is not limited to this, and for example, it may be determined whether or not it is a foreground block based only on the aggregated value graph. Alternatively, it may be determined whether or not the block is a foreground block based on the classification probability of each block included in the recognition result notified by the CNN unit 320.
  • the foreground determination unit 380 does not modify the quantization value set in the block determined to be the foreground block.
  • the foreground determination unit 380 determines that a block other than the foreground block is a background block.
  • the foreground determination unit 380 generates a determined quantization value map by maximizing the quantization value set in the block determined to be the background block.
  • the determined quantized value map 620 shows an example of the determined quantized value map generated by the foreground determination unit 380.
  • the white block included in the determined quantization value map 620 is a block determined to be a foreground block by the foreground determination unit 380, and the quantization value determined by the quantization value determination unit 370 is set.
  • the shaded block included in the determined quantization value map 620 is a block determined to be a background block by the foreground determination unit 380, and the maximized quantization value is set.
  • FIG. 7 is a first diagram showing an example of the functional configuration of the image compression device.
  • the image compression device 130 has an image compression program installed, and when the program is executed, the image compression device 130 functions as the coding unit 720.
  • the coding unit 720 includes a difference unit 721, an orthogonal conversion unit 722, a quantization unit 723, an entropy coding unit 724, an inverse quantization unit 725, and an inverse orthogonal conversion unit 726. Further, the coding unit 720 includes an addition unit 727, a buffer unit 728, an in-loop filter unit 729, a frame buffer unit 730, an in-screen prediction unit 731, and an inter-screen prediction unit 732.
  • the difference unit 721 calculates the difference between the image data (for example, image data 410) and the predicted image data, and outputs the predicted residual signal.
  • the orthogonal transform unit 722 executes the orthogonal transform process on the predicted residual signal output by the difference unit 721.
  • the quantization unit 723 quantizes the predicted residual signal that has undergone orthogonal transformation processing, and generates a quantization signal.
  • the quantization unit 723 generates a quantization signal using a quantization value map (variable) sequentially transmitted from the analyzer 120 in the first phase, and a data processing device in the second phase.
  • a quantization signal is generated using the corrected determined quantization value map transmitted from 140.
  • the entropy coding unit 724 generates compressed data by performing entropy coding processing on the quantized signal.
  • the dequantization unit 725 dequantizes the quantization signal.
  • the inverse orthogonal transform unit 726 executes an inverse orthogonal transform process on the inverse quantized quantized signal.
  • the addition unit 727 generates reference image data by adding the signal output from the inverse orthogonal transform unit 726 and the predicted image data.
  • the buffer unit 728 stores the reference image data generated by the addition unit 727.
  • the in-loop filter unit 729 filters the reference image data stored in the buffer unit 728.
  • DB Deblocking filter
  • SAO sample Adaptive Offset filter
  • ALF Adaptive loop filter
  • the frame buffer unit 730 stores the reference image data filtered by the in-loop filter unit 729 in frame units.
  • the in-screen prediction unit 731 makes an in-screen prediction based on the reference image data and generates the predicted image data.
  • the inter-screen prediction unit 732 performs motion compensation between frames using the input image data (for example, image data 410) and reference image data, and generates predicted image data.
  • the predicted image data generated by the in-screen prediction unit 731 or the inter-screen prediction unit 732 is output to the difference unit 721 and the addition unit 727.
  • the coding unit 720 refers to MPEG-2, MPEG-4, H.M.
  • the compression process is performed using an existing moving image coding method such as 264 or HEVC.
  • the compression process by the coding unit 720 is not limited to these moving image coding methods, and may be performed by using an arbitrary coding method in which the compression rate is controlled by parameters such as a quantization value.
  • FIG. 8 is a first diagram showing an example of the functional configuration of the data processing device.
  • a data processing program is installed in the data processing device 140, and when the program is executed, the data processing device 140 has a coding unit 810, a decoding unit 820, a CNN unit 830, and a quantum. It functions as a conversion value correction unit 840.
  • the coding unit 810 performs compression processing on the image data transmitted from the analysis device 120 using the determined quantization value map transmitted from the analysis device 120, and generates compressed data. Further, when the coding unit 810 is notified by the quantization value correction unit 840 of an instruction for increasing or decreasing the quantization value of the foreground block of the determined quantization value map, the coding unit 810 notifies the image data of the quantization value. Compressed data is generated by performing compression processing using the determined quantization value map in which is increased or decreased.
  • the coding unit 810 notifies the decoding unit 820 of the generated compressed data each time the compressed data is generated, based on the instruction from the quantization value correction unit 840.
  • the function of the coding unit 810 is basically the same as the function of the coding unit 720 of the image compression device 130, detailed description thereof will be omitted here.
  • the decoding unit 820 decodes each compressed data and generates the decrypted data. Further, the decoding unit 820 notifies the CNN unit 830 of the decoded data.
  • the CNN unit 830 has a trained model, and by inputting the decoded data, the object to be recognized included in the decoded data is recognized and the recognition result is output. Further, the CNN unit 830 notifies the quantization value correction unit 840 of the score information included in the output recognition result.
  • the CNN unit 830 performs recognition processing each time the decoding unit 820 notifies the decoding data, and notifies the quantized value correction unit 840 of the score information.
  • the CNN section 830 -When the coding unit 810 generates compressed data by performing compression processing using the determined quantized value map, and When the decoding unit 820 inputs the decrypted data generated by decoding the compressed data to the CNN unit 830, The score information included in the recognition result output by performing the recognition process is notified to the quantization value correction unit 840 as "reference score information".
  • the coding unit 810 When the coding unit 810 generates compressed data by performing compression processing using the determined quantization value map in which the quantization value of the foreground block is increased or decreased, and When the decoding unit 820 inputs the decrypted data generated by decoding the compressed data to the CNN unit 830, The score information included in the recognition result output by performing the recognition process is notified to the quantization value correction unit 840 as "score information".
  • the quantization value correction unit 840 is an example of the correction unit, and among the quantization values set in each block of the determined quantization value map notified by the analyzer 120, the quantization value set in the foreground block is set. Increase or decrease in a predetermined step size.
  • the quantization value correction unit 840 is set in the foreground block when the reference score information notified from the CNN unit 830 is equal to or higher than a predetermined threshold value (when the predetermined first condition is satisfied). The process of increasing the quantization value by a predetermined step size is started.
  • the quantization value correction unit 840 determines that the score information notified from the CNN unit 830 is within the permissible range specified for the reference score information (predetermined). (As long as the second condition of) is satisfied, the process of increasing the quantization value is continued.
  • the quantization value correction unit 840 performs a process of increasing the quantization value while the score information notified from the CNN unit 830 is equal to or higher than a predetermined threshold value (as long as the predetermined first condition is satisfied). continue.
  • the quantization value correction unit 840 is set in the foreground block. The process of reducing the quantized value by a predetermined step size is started.
  • the quantization value correction unit 840 does not satisfy the predetermined first condition (the predetermined first condition is not satisfied) while the score information notified from the CNN unit 830 is less than a predetermined threshold value. In the meantime), the process of reducing the quantization value is continued.
  • the quantization value correction unit 840 corrects the quantization value of the foreground block to the quantization value at the time of completion, and corrects it.
  • the post-determined quantization value map is transmitted to the image compression device 130.
  • the step size when the quantization value correction unit 840 increases or decreases the quantization value is “1" (or “-1”).
  • the step size when increasing or decreasing the quantization value by the quantization value correction unit 840 is "1" or more (or “-1” or less) even if it is “1” (or “-1”). You may.
  • the permissible range defined based on the reference score information is compared with the score information. It was explained as.
  • the method for determining whether or not to continue the process of increasing the quantization value is not limited to this.
  • the IoU Intersection over Union
  • the IoU calculated based on the bounding box included in the recognition result output from the CNN unit 830 may be compared with the predetermined allowable range of the IoU.
  • the quantization value correction unit 840 may be able to control how strictly the process of increasing the quantization value is performed according to the application application, the required recognition accuracy, and the like.
  • FIG. 9 is a diagram showing a specific example of processing by the data processing device.
  • the horizontal axis 900 indicates the quantized value.
  • reference numeral 901 indicates a quantization value set in block a_1 in the determined quantization value map among the 24 blocks (blocks a_1 to block a_24) included in the foreground block.
  • reference numeral 902 indicates a quantization value set in block a_24 in the determined quantization value map among the 24 blocks (blocks a_1 to block a_24) included in the foreground block.
  • the quantization value set in the block a_1 is "33", and the quantization value set in the block a_24 is "32".
  • the reference score information when the compression process is performed using these quantized values and the decrypted data obtained by decoding the compressed data is subjected to the recognition process is predetermined. It indicates that it is determined that the value is equal to or higher than the threshold value (the predetermined first condition is satisfied).
  • the score information is the predetermined first. Alternatively, it indicates that it is determined that the second condition is not satisfied (see the right end of reference numeral 903).
  • the quantization value correction unit 840 changes the quantization value of the block a_1 from “33” to "41” and the quantum of the block a_24 as shown in the corrected determined quantization value map 920.
  • the quantization value is corrected from "32" to "41".
  • reference numeral 911 indicates a quantization value set in block b_1 in the determined quantization value map among the 24 blocks (blocks b_1 to block b_24) included in the foreground block.
  • reference numeral 912 indicates a quantization value set in block b_24 in the determined quantization value map among the 24 blocks (blocks b_1 to block b_24) included in the foreground block.
  • the quantization value set in the block b_1 is "28", and the quantization value set in the block b_24 is "29".
  • the reference score information when the compression process is performed using these quantized values and the decrypted data obtained by decoding the compressed data is subjected to the recognition process is predetermined. It is less than the threshold value (indicating that it is determined that the predetermined first condition is not satisfied.
  • the score information is the predetermined first. It is shown that it is determined that the condition of the above condition is satisfied (see the left end of reference numeral 913).
  • the quantization value correction unit 840 changes the quantization value of the block b_1 from “28” to “20” and the quantum of the block b_24 as shown in the corrected determined quantization value map 920.
  • the quantized value is corrected from "29" to "20".
  • the method of increasing the quantization value of each block is not limited to this.
  • a process of specifying the minimum quantization value among the quantization values of each block and increasing only the block of the specified minimum quantization value may be sequentially performed.
  • the quantization value of block a_10 is "30"
  • the quantization value of block a_11 is "32”
  • the quantization value of block a_12 is "36".
  • it is increased as (31, 33, 37), (32, 34, 38), ..., But according to the above increasing method, (31, 32, 36). ), (32, 32, 36), (33, 33, 36), ...
  • the reference score information may be specified for each object, and the quantization value may be corrected based on the recognition result of each object.
  • the quantization value of each block is uniformly increased and the recognition processing is performed on the object A and the object B
  • the quantization value of the block included in the object A is "40”
  • the object A can be recognized, but when the quantization value is "41” or more, the object A cannot be recognized.
  • the quantization value of the block included in the object B is "30”
  • the object B can be recognized, but when the quantization value is "31” or more, the object B cannot be recognized.
  • the quantization value of the block included in the object A is corrected to "40"
  • the quantization value of the block included in the object B is corrected to "30”.
  • the quantization value is corrected individually for each object, the consistency of the entire image data will not match, and there is a possibility that unrecognizable objects will occur. In such a case, it may be corrected by using the maximum value of the logical product condition of the quantization value that can recognize all the objects.
  • the quantization value of the block included in the object B is fixed at the quantization value at the time when the search end condition is satisfied, and the quantization value of the block included in the object A is fixed until the search end condition is satisfied.
  • the quantization value may be continuously increased.
  • FIG. 10 is a first flowchart showing an example of the flow of image compression processing by the compression processing system.
  • step S1001 the input unit 310 of the analysis device 120 acquires image data, and in step S1002, the CNN unit 320 of the analysis device 120 performs recognition processing on the acquired image data and outputs the recognition result.
  • step S1003 the quantization value setting unit 330 of the analyzer 120 sequentially sets each quantization value from the minimum quantization value (Q 1 ) to the maximum quantization value (Q n ), and the output unit 340 sets each quantization value in sequence.
  • Each quantization value map (variable) is transmitted to the image compression device 130. Further, the image compression device 130 performs compression processing on the image data using each transmitted quantization value map (variable), and generates each compression data.
  • step S1004 the input unit 310 of the analysis device 120 decodes each compressed data generated by the image compression device 130.
  • the CNN unit 320 of the analysis device 120 performs recognition processing on each decoded data.
  • the important feature map generation unit 350 of the analysis device 120 generates each important feature map showing the degree of influence on the recognition result of each region of the decoded data based on the CNN part structure information.
  • step S1005 the aggregation unit 360 of the analysis device 120 aggregates the influence degree of each region for each important feature map in block units. Further, the aggregation unit 360 of the analysis device 120 stores the aggregation result in the aggregation result storage unit 390 in association with each compression level (quantized value).
  • step S1006 the quantization value determination unit 370 of the analyzer 120 determines the quantization value in block units based on the aggregated value graph of each block, and generates a quantization value map.
  • step S1007 the foreground determination unit 380 of the analyzer 120 maximizes the quantization value set in the background block among the generated quantization value maps, and generates a determined quantization value map.
  • step S1008 the data processing device 140 performs recognition processing while increasing or decreasing the quantization value set in the foreground block among the quantization values set in each block of the determined quantization value map.
  • step S1009 the data processing device 140 corrects the quantization value set in the foreground block of the determination quantization value map based on the recognition result, and generates the corrected determination quantization value map.
  • step S1010 the image compression device 130 performs compression processing on the image data using the corrected determined quantization value map, and stores the compressed data in the storage device 150.
  • the data processing apparatus is determined and quantized based on the degree of influence on the recognition result of each block when the recognition processing is performed on the image data.
  • compression processing is performed using the determined quantization value map.
  • the data processing apparatus is a foreground block corresponding to the recognition target when the recognition result when the recognition processing is performed on the decrypted data obtained by decoding the compressed data satisfies a predetermined condition. Is corrected in the direction of increasing the compression level (quantization value).
  • the data processing apparatus corrects the quantization value determined based on the degree of influence on the recognition result in the direction of increasing based on the recognition result.
  • the compression level can be improved while maintaining the recognition accuracy. That is, according to the first embodiment, it is possible to realize a compression process suitable for the recognition process by AI.
  • the recognition accuracy of such image data is improved by first changing the image data itself. Subsequently, the quantized value of the changed image data is determined based on the degree of influence on the recognition result, and compression processing is performed using the determined quantized value.
  • the second embodiment it is possible to improve the compression level of the image data while improving the recognition accuracy.
  • the second embodiment will be described focusing on the differences from the first embodiment.
  • FIG. 11 is a second diagram showing an example of the system configuration of the compression processing system.
  • the processing executed by the compression processing system 1100 is ⁇
  • the first phase of changing image data and -A determined quantization value map is generated based on the changed image data, and compression processing is performed using the generated determined quantization value map, which is roughly divided into the second phase in which the compressed data is stored. Can be done.
  • 11a shows the system configuration of the compression processing system 1100 in the first phase
  • 11b shows the system configuration of the compression processing system 1100 in the second phase.
  • the compression processing system 1100 in the first phase includes an imaging device 110 and a data processing device 1110.
  • the processing by the imaging device 110 is the same as the processing by the imaging device 110 described with reference to 1a of FIG. 1 in the first embodiment, and thus the description thereof will be omitted here.
  • the data processing device 1110 performs recognition processing on the image data transmitted from the image pickup device 110. Further, the data processing device 1110 determines whether or not the score information included in the recognition result satisfies a predetermined condition, and if it is determined that the score information does not satisfy the condition, the image data is changed so as to maximize the score information. Then, the changed image data is transmitted to the analysis device 120.
  • the data processing device 1110 determines that the score information included in the recognition result satisfies a predetermined condition, the data processing device 1110 transmits the image data to the analysis device 120 without changing the image data.
  • the compression processing system 1100 in the second phase includes an analysis device 120, an image compression device 130, and a storage device 150.
  • the analysis device 120 has a trained model that performs recognition processing.
  • the analysis device 120 performs the recognition process by inputting the image data or the changed image data into the trained model, and outputs the recognition result. Further, the analysis device 120 acquires each compressed data output by the image compression device 130 by performing compression processing on the image data or the changed image data at different compression levels (quantization values), and each compressed data. Each decrypted data is generated by decoding. Further, the analysis device 120 performs recognition processing by inputting each decoded data into the trained model, and outputs the recognition result.
  • the analysis device 120 generates an important feature map by performing motion analysis of the trained model at the time of recognition processing by using, for example, the error back propagation method. Further, the analysis device 120 aggregates the degree of influence for each block based on the important feature map.
  • the quantization value map (variable) in which the quantization value is set in each block is sequentially transmitted to the image compression device 130 to perform compression processing at different compression levels (quantization value). , Instruct the image compression device 130.
  • the analysis device 120 generates an aggregated value graph for each block based on the aggregated value of the influence degree of each block calculated every time the recognition process is performed on each decoded data. Further, the analysis device 120 determines the optimum compression level (quantization value) of each block based on each of the aggregated value graphs for each block, and generates a determined quantization value map.
  • the image compression device 130 performs compression processing on the image data or the changed image data using the generated determined quantization value map, and stores the compressed data in the storage device 150.
  • FIG. 12 is a second diagram showing an example of the functional configuration of the data processing device. Similar to the first embodiment, a data processing program is installed in the data processing device 1110, and when the program is executed, the data processing device 1110 functions as a CNN unit 1210 and a determination unit 1220. Further, the data processing device 1110 functions as an analysis unit 1230 and an image data change unit 1240.
  • the CNN unit 1210 has a trained model, and by inputting image data, it performs recognition processing on the object to be recognized included in the image data and outputs the recognition result.
  • the determination unit 1220 determines whether or not the score information (an example of information related to the recognition accuracy of image data) included in the recognition result output from the CNN unit 1210 satisfies a predetermined condition (for example, a predetermined threshold value or more). (Determine whether or not it is). When it is determined that the score information included in the recognition result satisfies a predetermined condition, the determination unit 1220 notifies the image data change unit 1240 of the determination result. On the other hand, when it is determined that the score information included in the recognition result does not satisfy the predetermined condition, the determination unit 1220 notifies the analysis unit 1230 of the determination result.
  • a predetermined condition for example, a predetermined threshold value or more
  • the analysis unit 1230 acquires the image data and analyzes the acquired image data. Further, the analysis unit 1230 notifies the image data change unit 1240 of the change information for maximizing the score information generated by analyzing the image data. Alternatively, the analysis unit 1230 notifies the image data change unit 1240 of the image data (changed image data) for maximizing the score information generated by analyzing the image data.
  • the image data changing unit 1240 is an example of the changing unit.
  • the image data change unit 1240 transmits the image data to the analysis device 120 without changing the image data.
  • the image data change unit 1240 changes the image data based on the notified change information and transmits the changed image data to the analysis device 120.
  • the image data changing unit 1240 transmits the changed image data to the analysis device 120.
  • FIG. 13 is a first diagram showing a specific example of processing by the analysis unit.
  • the analysis unit 1230 includes, for example, a refined image generation unit 1310, an important feature index map generation unit 1320, a specific unit 1340, and a detailed analysis unit 1350.
  • the refined image generation unit 1310 has an image refiner unit 1311, an image error calculation unit 1312, an inference unit 1313, and a score error calculation unit 1314.
  • the image refiner unit 1311 generates refined image data from the image data by learning using CNN as an image data generation model, for example.
  • the image refiner unit 1311 changes the image data so that the score information of the correct label is maximized when the inference unit 1313 performs the recognition process using the generated refined image data. Further, the image refiner unit 1311 generates refined image data so that the amount of change from the image data (difference between the refined image data and the image data) is small, for example. As a result, according to the image refiner unit 1311, it is possible to obtain refined image data that is visually close to the image data before the change.
  • -The error (score error) between the score information when recognition processing is performed using the generated refined image data and the score information that maximizes the score information of the correct label.
  • image difference value which is the difference between the generated refined image data and the image data, CNN learning is performed so as to minimize.
  • the image error calculation unit 1312 calculates the difference between the image data and the refined image data output from the image refiner unit 1311 during CNN learning, and inputs the image difference value to the image refiner unit 1311.
  • the image error calculation unit 1312 calculates an image difference value by, for example, performing a pixel-by-pixel difference (L1 difference) or a SSIM (Structural Similarity) calculation, and inputs the image difference value to the image refiner unit 1311.
  • the reasoning unit 1313 has a learned CNN that performs recognition processing by inputting refined image data generated by the image refiner unit 1311 and outputs score information.
  • the score information output by the inference unit 1313 is notified to the score error calculation unit 1314.
  • the score error calculation unit 1314 calculates the error between the score information notified by the inference unit 1313 and the score information that maximizes the score information of the correct answer label, and notifies the image refiner unit 1311 of the score error.
  • the score error notified by the score error calculation unit 1314 is used for learning CNN in the image refiner unit 1311.
  • the refined image output from the image refiner unit 1311 during learning of the CNN of the image refiner unit 1311 is stored in the refined image storage unit 1315.
  • the refined image data performed and when the score information of the correct answer label output from the inference unit 1313 is maximized is hereinafter referred to as "score maximized refined image data".
  • the important feature index map generation unit 1320 has an important feature map generation unit 1321, a deterioration scale map generation unit 1322, and a superimposition unit 1323.
  • the important feature map generation unit 1321 acquires the inference unit structure information when the inference unit 1313 performs the recognition process by inputting the score maximization refined image data from the inference unit 1313. In addition, the important feature map generation unit 1321 generates an important feature map based on the inference unit structural information by using the BP method, the GBP method, or the selective BP method.
  • the deterioration scale map generation unit 1322 generates a "deterioration scale map" based on the image data and the score maximization refined image data.
  • the deterioration scale map is a map showing the changed portion and the degree of change of each changed portion when the image data is changed to the score maximizing refined image data.
  • the superimposition unit 1323 generates the important feature index map 1330 by superimposing the important feature map generated by the important feature map generation unit 1321 and the deterioration scale map generated by the deterioration scale map generation unit 1322.
  • the important feature index map 1330 is a map that visualizes the degree of influence of the image data on the recognition result of each region.
  • the specific unit 1340 divides the image data in units of super pixels, for example, and aggregates the important feature index map 1330 in units of super pixels.
  • the identification unit 1340 identifies the super pixel whose image data is to be changed based on the aggregation result. Further, the specific unit 1340 notifies the detailed analysis unit 1350 of the important feature index map 1330 included in the specified super pixel among the important feature index maps 1330 as a cause region of erroneous recognition.
  • the detailed analysis unit 1350 generates change information for changing the image data on a pixel-by-pixel basis based on the cause region generated by the specific unit 1340, and notifies the image data change unit 1240.
  • the image data changing unit 1240 changes the image data on a pixel-by-pixel basis based on the changed information, and transmits the changed image data to the analysis device 120.
  • FIG. 14 is a second diagram showing a specific example of processing by the analysis unit.
  • the analysis unit 1230 has, for example, a refined image generation unit 1310.
  • the refined image generation unit 1310 has an image refiner unit 1311, an image error calculation unit 1312, an inference unit 1313, and a score error calculation unit 1314.
  • the function of each part of the refined image generation unit 1310 is the same as the function of each part of the refined image generation unit 1310 shown in FIG. However, in the case of FIG. 14, the score maximizing refined image stored in the refined image storage unit 1315 is read out by the image data changing unit 1240 as the changed image data.
  • the image data changing unit 1240 transmits the score maximizing refined image read from the refined image storage unit 1315 to the analysis device 120 as the changed image data.
  • FIG. 15 is a second flowchart showing an example of the flow of image compression processing by the compression processing system.
  • step S1501 the CNN unit 1210 of the data processing device 1110 acquires image data from the image pickup device 110.
  • step S1502 the CNN unit 1210 of the data processing device 1110 performs recognition processing on the acquired image data and outputs the recognition result.
  • step S1503 the determination unit 1220 of the data processing device 1110 determines whether or not the image data needs to be changed by determining whether or not the score information included in the recognition result satisfies a predetermined condition. If it is determined in step S1503 that the predetermined condition is not satisfied (yes in step S1503), it is determined that the image data needs to be changed, and the process proceeds to step S1504.
  • step S1504 the analysis unit 1230 of the data processing device 1110 generates change information for changing the image data so that the score information is maximized. Further, the image data changing unit 1240 of the data processing device 1110 changes the image data based on the generated change information, and transmits the changed image data to the analysis device 120.
  • the analysis unit 1230 of the data processing device 1110 generates a score maximizing refined image by changing the image data so as to maximize the score information, and notifies the image data changing unit 1240. Further, the image data changing unit 1240 of the data processing device 1110 transmits the score maximizing refined image to the analysis device 120 as the changed image data.
  • step S1503 when it is determined in step S1503 that the predetermined condition is satisfied (No in step S1503), it is determined that the image data does not need to be changed, and the analysis device 120 is used without changing the image data. Send.
  • step S1505 the CNN unit 320 of the analysis device 120 performs recognition processing on the changed image data (or image data) transmitted from the image data changing unit 1240, and outputs the recognition result.
  • step S1506 the quantization value setting unit 330 of the analyzer 120 sequentially sets each quantization value from the minimum quantization value (Q 1 ) to the maximum quantization value (Q n ), and the output unit 340 sets each quantization value in sequence.
  • Each quantization value map (variable) is transmitted to the image compression device 130. Further, the image compression device 130 performs compression processing on the image data using each transmitted quantization value map (variable), and generates each compression data.
  • step S1507 the input unit 310 of the analysis device 120 decodes each compressed data generated by the image compression device 130.
  • the CNN unit 320 of the analysis device 120 performs recognition processing on each decoded data.
  • the important feature map generation unit 350 of the analysis device 120 generates each important feature map showing the degree of influence on the recognition result of each region of the decoded data based on the CNN part structure information.
  • step S1508 the aggregation unit 360 of the analysis device 120 aggregates the influence degree of each region for each important feature map in block units. Further, the aggregation unit 360 of the analysis device 120 stores the aggregation result in the aggregation result storage unit 390 in association with each compression level (each quantization value).
  • step S1509 the quantization value determination unit 370 of the analyzer 120 determines the quantization value in block units based on the aggregated value graph of each block, and generates a quantization value map.
  • step S1510 the foreground determination unit 380 of the analyzer 120 maximizes the quantization value set in the background block among the generated quantization value maps, and generates a determined quantization value map.
  • step S1511 the image compression device 130 performs compression processing on the changed image data (or image data) using the determined quantization value map, and stores the compressed data in the storage device 150.
  • the data processing device performs recognition processing on the image data acquired from the image pickup device 110, and determines whether or not the score information satisfies a predetermined condition. do. Further, the data processing apparatus according to the second embodiment changes the image data so that the score information is maximized when it is determined that the predetermined condition is not satisfied.
  • the recognition accuracy can be improved even when the image data having low recognition accuracy is acquired.
  • the determined quantization value map is generated based on the changed image data, according to the second embodiment, the determined quantization value map in which a high quantization value is set can be generated.
  • the compression level can be improved while improving the recognition accuracy. That is, according to the data processing apparatus according to the second embodiment, it is possible to realize a compression process suitable for the recognition process by AI.
  • the third embodiment it is determined whether or not the image data needs to be changed in the process of increasing the quantization value when generating the determined quantization value map, and the image data When it is determined that the change is necessary, the image data is changed.
  • the third embodiment it is possible to improve the compression level while improving the recognition accuracy as in the second embodiment.
  • the third embodiment will be described focusing on the differences from the second embodiment.
  • the processing executed by the compression processing system is -In order to generate a determined quantization value map, the first phase of performing compression processing at different compression levels (quantization values) and monitoring the aggregated value graph, and -A second phase in which the image data is changed and the same processing is performed on the changed image data when it is determined that the image data needs to be changed based on the aggregated value graph.
  • 16a shows the system configuration of the compression processing system 1600 in the first phase
  • 16b shows the system configuration of the compression processing system 1600 in the second phase
  • FIG. 17 shows the system configuration of the compression processing system 1600 in the third phase.
  • the compression processing system 1600 in the first phase includes an image pickup device 110, an analysis device 120, a data processing device 1610, and an image compression device 130.
  • the processing by the imaging device 110 and the image compression device 130 is the same as the processing by the imaging device 110 and the image compression device 130 described with reference to 11a or 11b of FIG. 11 in the second embodiment. The explanation will be omitted.
  • the analysis device 120 has a trained model that performs recognition processing.
  • the analysis device 120 performs recognition processing by inputting image data into the trained model, and outputs the recognition result. Further, the analysis device 120 acquires each compressed data output by the image compression device 130 performing compression processing on the image data at different compression levels (quantization values), and decodes each compressed data. Generate each decrypted data. Further, the analysis device 120 performs recognition processing by inputting each decoded data into the trained model, and outputs the recognition result.
  • the analysis device 120 generates an important feature map by analyzing the operation of the trained model at the time of recognition processing by using, for example, the error backpropagation method, and totals the degree of influence for each block.
  • the quantization value map (variable) in which the quantization value is set in each block is sequentially transmitted to the image compression device 130 to perform compression processing at different compression levels (quantization value). , Instruct the image compression device 130.
  • the analysis device 120 generates an aggregated value graph for each block based on the aggregated value of the influence degree of each block aggregated each time the recognition process is performed on each decoded data. Further, the analysis device 120 transmits each of the aggregated value graphs for each block to the data processing apparatus 1610 every time the aggregated value is updated.
  • the data processing device 1610 monitors the aggregated value graph transmitted from the analysis device 120 for each block, and determines whether or not the image data needs to be changed (for example, the size of the aggregated value of the aggregated value graph is predetermined). If the threshold is exceeded, it is determined that the image data needs to be changed). When the data processing device 1610 determines that it is not necessary to change the image data, the data processing device 1610 transmits the image data to the image compression device 130 without changing the image data.
  • the compression processing system 1600 in the second phase includes an image pickup device 110, an analysis device 120, a data processing device 1610, and an image compression device 130.
  • the processing by the imaging device 110 and the image compression device 130 is the same as the processing by the imaging device 110 and the image compression device 130 described with reference to 11a or 11b of FIG. 11 in the second embodiment. The explanation will be omitted. Further, since the processing by the analysis device 120 is the same as the processing by the analysis device 120 in the first phase, the description thereof will be omitted here.
  • the data processing device 1610 monitors the aggregated value graph transmitted from the analysis device 120 for each block, and determines whether or not the image data needs to be changed.
  • the data processing device 1610 determines that the image data needs to be changed, the data processing device 1610 changes the image data and transmits the changed image data to the image compression device 130.
  • the compression processing system 1600 in the third phase includes an analysis device 120, a data processing device 1610, and an image compression device 130.
  • the analysis device 120 determines the optimum compression level (quantization value) of each block based on the generated aggregated value graph, and generates a determined quantization value map. Further, the analysis device 120 transmits the generated determined quantization value map to the image compression device 130.
  • the data processing device 1610 transmits the changed image data to the image compression device 130.
  • the image compression device 130 performs compression processing on the changed image data using the determined quantization value map, and stores the compressed data in the storage device 150.
  • FIG. 18 is a third diagram showing an example of the functional configuration of the data processing device. Similar to the second embodiment, the data processing device 1610 has a data processing program installed, and when the program is executed, the data processing device 1610 functions as an input unit 1810 and a determination unit 1820. Further, the data processing device 1610 functions as an analysis unit 1230 and an image data change unit 1240.
  • the processing of the analysis unit 1230 and the image data change unit 1240 is the same as the processing of the analysis unit 1230 and the image data change unit 1240 of the data processing device 1110 in FIG. 12, so the description thereof is omitted here.
  • the input unit 1810 acquires image data from the analysis device 120. Further, when the determination unit 1820 notifies the determination unit 1810 of the determination result that the image data needs to be changed, the input unit 1810 notifies the analysis unit 1230 and the image data change unit 1240 of the acquired image data. In this case, the image data changing unit 1240 changes the image data based on the change information, and transmits the changed image data to the image compression device 130.
  • the input unit 1810 notifies the image data change unit 1240 of the acquired image data.
  • the image data changing unit 1240 transmits the image data to the image compression device 130 without changing the image data.
  • the determination unit 1820 monitors the aggregated value graph (an example of information related to the recognition accuracy of the image data) of each block transmitted from the analysis device 120, and determines whether or not the image data needs to be changed. When it is determined that the image data needs to be changed, the determination unit 1820 notifies the input unit 1810 of the determination result. On the other hand, when it is determined that the image data does not need to be changed, the determination unit 1820 notifies the input unit 1810 of the determination result.
  • the aggregated value graph an example of information related to the recognition accuracy of the image data
  • FIG. 19 is a third flowchart showing an example of the flow of image compression processing by the compression processing system.
  • step S1901 the input unit 310 of the analysis device 120 acquires image data.
  • step S1902 the quantization value setting unit 330 of the analysis device 120 transmits a quantization value map (variable) in which the minimum quantization value (Q 1) is set to the image compression device 130.
  • step S1903 the image compression device 130 performs compression processing on the image data using the transmitted quantization value map (variable) to generate compressed data.
  • step S1904 the input unit 310 of the analysis device 120 decodes the generated compressed data.
  • the CNN unit 320 of the analysis device 120 performs recognition processing on the decoded data.
  • step S1905 the important feature map generation unit 350 of the analysis device 120 generates an important feature map showing the degree of influence on the recognition result of each region based on the CNN part structure information.
  • step S1906 the aggregation unit 360 of the analysis device 120 aggregates the degree of influence of each region in block units based on the important feature map. Further, the aggregation unit 360 of the analysis device 120 stores the aggregation result in the aggregation result storage unit 390 in association with the current compression level (quantized value), and transmits the aggregation value graph to the data processing device 1610. ..
  • step S1907 the determination unit 1820 of the data processing device 1610 monitors the aggregated value graph of each block transmitted from the analysis device 120, and determines whether or not the image data needs to be changed.
  • step S1907 When it is determined in step S1907 that the image data needs to be changed (Yes in step S1907), the determination result is notified to the input unit 1810, and the process proceeds to step S1908.
  • step S1908 the input unit 1810 of the data processing device 1610 notifies the analysis unit 1230 and the image data change unit 1240 of the image data, and the analysis unit 1230 notifies the image data change unit 1240 of the change information. Further, the image data changing unit 1240 changes the image data based on the changed information, and transmits the changed image data to the image compression device 130.
  • the input unit 1810 of the data processing device 1610 notifies the analysis unit 1230 of the image data, and the analysis unit 1230 notifies the image data change unit 1240 of the score maximizing refined image. Further, the image data changing unit 1240 transmits the score maximizing refined image as the changed image data to the image compression device 130.
  • step S1907 when it is determined in step S1907 that the image data does not need to be changed (No in step S1907), the determination result is notified to the input unit 1810.
  • the input unit 1810 of the data processing device 1610 notifies the image data changing unit 1240 of the image data, and the image data changing unit 1240 transmits the image data to the image compression device 130 without changing the image data.
  • step S1909 the quantization value setting unit 330 of the analyzer 120 determines whether or not to set the next quantization value, and if it is determined that the next quantization value is to be set (Yes in step S1909). , Step S1910.
  • step S1910 the quantization value setting unit 330 of the analysis device 120 transmits the quantization value map (variable) in which the next quantization value is set to the image compression device 130, and then returns to step S1903.
  • step S1909 determines whether the next quantization value is set (if No in step S1909). If it is determined in step S1909 that the next quantization value is not set (if No in step S1909), the process proceeds to step S1911.
  • step S1911 the quantization value determination unit 370 of the analyzer 120 determines the quantization value in block units based on the aggregation value graph read from the aggregation result storage unit 390, and generates a quantization value map.
  • step S1912 the foreground determination unit 380 of the analyzer 120 maximizes the quantization value set in the background block among the generated quantization value maps, and generates a determined quantization value map.
  • step S1913 the image compression device 130 performs compression processing on the changed image data using the determined quantization value map, and stores the compressed data in the storage device 150.
  • the data processing apparatus displays the aggregated value graph of each block in the process of increasing the quantization value when generating the determined quantization value map. By monitoring, it is determined whether or not the image data needs to be changed. Further, the data processing apparatus according to the third embodiment changes the image data so as to maximize the score information when it is determined that the image data needs to be changed.
  • the recognition accuracy is improved even when the image data having low recognition accuracy is acquired. be able to.
  • the determined quantization value map is generated based on the changed image data, according to the third embodiment, the determined quantization value map in which a high quantization value is set can be generated.
  • the third embodiment it is possible to improve the compression level while improving the recognition accuracy as in the second embodiment. That is, according to the data processing apparatus according to the third embodiment, it is possible to realize a compression process suitable for the image recognition process by AI.
  • the fourth embodiment it is necessary to change the image data by confirming the recognition accuracy of the compressed data after the compression process is performed using the generated determined quantization value map. Is determined.
  • the fourth embodiment it is possible to improve the compression level while improving the recognition accuracy as in the third embodiment.
  • the fourth embodiment will be described focusing on the differences from each of the above embodiments.
  • the processing executed by the compression processing system is -The first phase in which a decision quantization value map is generated and compression processing is performed using the generated decision quantization value map, and -The second phase of checking the recognition accuracy of compressed data and changing the image data, -The changed image data can be compressed and roughly divided into a third phase in which the compressed data is stored.
  • 20a shows the system configuration of the compression processing system 2000 in the first phase
  • 20b shows the system configuration of the compression processing system in the second phase
  • FIG. 21 shows the system configuration of the compression processing system in the third phase.
  • the compression processing system 2000 in the first phase includes an image pickup device 110, an analysis device 120, and an image compression device 130. Since the processing by the imaging device 110 in the first phase is the same as the processing by the imaging device 110 described with reference to 1a of FIG. 1 in the first embodiment, the description thereof is omitted here.
  • processing by the analysis device 120 and the image compression device 130 in the first phase is the same as the processing by the analysis device 120 and the image compression device 130 described with reference to 11b of FIG. 11 in the second embodiment. , The description is omitted here.
  • the compression processing system 2000 in the second phase includes an analysis device 120, an image compression device 130, and a data processing device 2010.
  • the processing by the analysis device 120 and the image compression device 130 is the same as the processing by the analysis device 120 and the image compression device 130 described with reference to 11b of FIG. 11 in the second embodiment, and thus will be described here. Is omitted.
  • the data processing device 2010 decodes the compressed data transmitted from the image compression device 130, and performs recognition processing on the decoded data. Further, the data processing device 2010 determines whether or not the score information included in the recognition result satisfies a predetermined condition, and if it is determined that the score information does not satisfy the predetermined condition, the image data is maximized so that the score information is maximized. The changed image data is transmitted to the image compression device 130.
  • the compression processing system 2000 in the third phase includes an image compression device 130, a data processing device 2010, and a storage device 150.
  • the image compression device 130 in the third phase performs compression processing on the changed image data transmitted from the data processing device 2010 using the determined quantization value map, and compresses the compressed data. It is transmitted to the data processing device 2010.
  • the data processing device 2010 in the third phase decodes the compressed data transmitted from the image compression device 130 and performs recognition processing on the decoded data. Further, the data processing device 2010 determines whether or not the score information included in the recognition result satisfies a predetermined condition, and if it is determined that the predetermined condition is satisfied, the compressed data is stored in the storage device 150.
  • FIG. 22 is a fourth diagram showing an example of the functional configuration of the data processing device. Similar to the second embodiment, a data processing program is installed in the data processing device 2010, and when the program is executed, the data processing device 2010 has a decoding unit 2210, a CNN unit 1210, and a determination unit 1220. Functions as. Further, the data processing device 2010 functions as an analysis unit 1230 and an image data change unit 2240.
  • the CNN unit 1210, the determination unit 1220, and the analysis unit 1230 have the same functions as the CNN unit 1210, the determination unit 1220, and the analysis unit 1230 described with reference to FIG. 12 in the second embodiment. The explanation will be omitted.
  • the decoding unit 2210 decodes the compressed data transmitted from the image compression device 130 and generates the decrypted data. Further, the decoding unit 2210 notifies the CNN unit 1210 of the decoded data. Further, the decoding unit 2210 notifies the analysis unit 1230 of the decoded data in response to an instruction from the analysis unit 1230.
  • the image data changing unit 2240 is an example of the changing unit.
  • the image data change unit 2240 transmits the compressed data to the storage device 150.
  • the image data change unit 2240 changes the image data based on the notified change information and transmits the changed image data to the image compression device 130.
  • the image data changing unit 2240 transmits the changed image data to the image compression device 130.
  • FIG. 23 is a fourth flowchart showing an example of the flow of image compression processing by the compression processing system.
  • steps S1001 to S1007 are the same processes as steps S1001 to S1007 in FIG. 10, description thereof will be omitted, and here, the processes of steps S2301 to S2306 will be described.
  • step S2301 the image compression device 130 performs compression processing on the image data using the determined quantization value map to generate the compressed data.
  • step S2302 the decoding unit 2210 of the data processing device 2010 decodes the compressed data, and the CNN unit 1210 of the data processing device 2010 performs recognition processing on the decoded data to output the recognition result.
  • step S2303 the determination unit 1220 of the data processing device 2010 determines whether or not the image data needs to be changed by determining whether or not the score information included in the recognition result satisfies a predetermined condition.
  • step S2303 If it is determined in step S2303 that the predetermined condition is not satisfied (in the case of Yes in step S2303), it is determined that the image data needs to be changed, and the process proceeds to step S2304.
  • step S2304 the analysis unit 1230 of the data processing device 2010 generates change information for changing the image data so that the score information is maximized. Further, the image data changing unit 1240 of the data processing device 1110 changes the image data based on the generated change information, and transmits the changed image data to the image compression device 130.
  • the analysis unit 1230 of the data processing device 1110 generates a score maximizing refined image by changing the image data so as to maximize the score information, and notifies the image data changing unit 1240. Further, the image data changing unit 1240 of the data processing device 1110 transmits the score maximizing refined image as the changed image data to the image compression device 130.
  • step S2305 the image compression device 130 performs compression processing on the changed image data using the determined quantization value map to generate compressed data.
  • step S2303 determines whether the predetermined condition is satisfied (No in step S2303), it is determined that the image data does not need to be changed, and the process proceeds to step S2306 without changing the image data. ..
  • step S2306 the data processing device 2010 stores the compressed data in the storage device 150.
  • the data processing apparatus acquires the compressed data when the compression process is performed using the generated determined quantization value map, and the acquired compressed data.
  • the decrypted data obtained by decoding the data is recognized.
  • the data processing device determines whether or not the score information included in the recognition result satisfies a predetermined condition, and when it is determined that the predetermined condition is not satisfied, the score information is maximum. Change the image data so that it becomes.
  • the data processing apparatus stores the compressed data when the modified image data is compressed by using the determined quantization value map.
  • the recognition accuracy of the compressed data is confirmed, and when it is necessary to change the image data, the image data is changed. Therefore, according to the fourth embodiment, the compressed data having low recognition accuracy is output. Can be avoided. Thereby, according to the fourth embodiment, the recognition accuracy can be improved while improving the compression level. That is, according to the data processing apparatus according to the fourth embodiment, it is possible to realize a compression process suitable for the recognition process by AI.
  • the block is quantized. Described as maximizing the value.
  • the processing order between the process of generating the determined quantization value map and the process of maximizing the quantization value of the background block is not limited to this, and the process of maximizing the quantization value of the background block is performed. After that, a process for generating a determined quantization value map may be performed.
  • the process of maximizing the quantization value of the block is described, but the process of invalidating the image data of the background block (for example, a process of setting the pixel value to zero) may be performed.
  • low-pass filter processing such as blurring may be performed on the image data of the background block.
  • the image data referred to when the image compression device 130 performs the compression process on the image data is not particularly mentioned, but the image data to be referred to is a corrected quantization value.
  • the image data may be compressed using a map.
  • the image data to be referred to is image data that has been compressed using another quantization value map that produces the same degree of deterioration as when compression processing was performed using the corrected determined quantization value map. It may be.
  • a permissible range defined based on the recognition result for the image data is used as a predetermined second condition for determining whether or not to continue the process of increasing the quantization value.
  • the predetermined second condition is not limited to this.
  • an allowable range may be defined based on the recognition result for the compressed data when the compression process is performed at a predetermined compression level (quantization value).
  • the recognition result for the image data is used when defining the allowable range.
  • the information used when defining the permissible range is not limited to the recognition result for the image data, and for example, the annotation information given to the image data may be used.
  • the quantization value used when the image compression device 130 performs the compression processing has been described as being provided by the data processing device 140.
  • the data processing device 140 provides a weighting index for adjusting the quantization value used when the image compression device 130 performs compression processing, and the quantization value is based on the weighting index provided by the image compression device 130. May be adjusted.
  • the quantization value of each block of the map may be regarded as a weighting index of each block.
  • the quantization value of each block determined based on the algorithm for controlling the bit rate may be adjusted by using the weighting index.
  • the quantization value of each block fixedly set within a frame or over a plurality of frames may be adjusted by using a weighting index.
  • the image compression device 130 uses the image compression device 130 for a block having a large quantization value in the determination quantization value map.
  • Each quantized value determined based on the algorithm that controls the bit rate, or -Quantization value of each block set fixedly within a frame or across multiple frames, When adjusting in the direction of increasing, the strength of adjustment may be increased, and when adjusting in the direction of decreasing, the strength of adjustment may be decreased.
  • the image compression device 130 uses the image compression device 130 for a block having a large aggregated value. -Each quantized value determined based on the algorithm that controls the bit rate, or -Quantization value of each block set fixedly within a frame or across multiple frames, When adjusting in the direction of increasing, the strength of adjustment may be increased, and when adjusting in the direction of decreasing, the strength of adjustment may be decreased.
  • the quantization value adjusted by using the weighting index may be further changed according to other information.
  • Other information referred to here includes changes and transitions of values that affect recognition accuracy, such as score information, classification probability, error information, or object position information when compressed data is decoded and recognized. Is included.
  • the quantization value is changed so that the value that affects the recognition accuracy is maintained or improved, or is within a predetermined allowable range. And.
  • the corresponding image data or the image data acquired after the corresponding image data is compressed by using the changed quantization value. ..
  • the image compression device 130 performs compression processing using the changed quantization value on a plurality of image data including the corresponding image data and the image data acquired after the corresponding image data. And.
  • the number of objects included in the image data to be changed is not mentioned, but the number of objects included in the image data to be changed may be plural.
  • the data processing device may change the image data for each object so as to maximize the score information of each object, or for a plurality of objects so as to maximize the score information of the plurality of objects.
  • the image data may be changed collectively.
  • the score maximizing refined image data is generated when the image data is changed.
  • the decoded data or image data having high recognition accuracy may be used instead of generating the score maximizing refined image.
  • the process of generating the score maximizing refined image can be omitted.
  • the score maximizing refined image data is generated based on the image data or the decoded data.
  • the background block is determined and the image data or decoded data of the determined background block is invalidated before the score maximization refined image is generated, or image processing such as low-pass filter processing is performed. good.
  • the image data transmitted from the image pickup apparatus 110 is subjected to the compression process.
  • the target to be compressed is not limited to this, and for example, the image data transmitted from the image pickup apparatus 110 may be compressed to the image data resized to a predetermined size.
  • the size of each block is not particularly mentioned, but the size of each block may be a fixed size or a variable size. Further, in the case of a variable size, the size may be, for example, according to the magnitude of the quantization value.
  • Compression processing system 120 Analysis device 130: Image compression device 140: Data processing device 310: Input unit 320: CNN unit 330: Quantized value setting unit 340: Output unit 350: Important feature map generation unit 360: Aggregation unit 370 : Quantized value determination unit 380: Foreground determination unit 420: Aggregation result 810: Coding unit 820: Decoding unit 830: CNN unit 840: Quantization value correction unit 1100: Compression processing system 1110: Data processing device 1210: CNN unit 1220 : Judgment unit 1230: Analysis unit 1240: Image data change unit 1310: Refined image generation unit 1320: Important feature index map generation unit 1340: Specific unit 1350: Detailed analysis unit 1600: Compression processing system 1610: Data processing device 2000: Compression processing System 2010: Data processing device 2210: Decoding unit 2240: Image data changing unit

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Computing Systems (AREA)
  • Medical Informatics (AREA)
  • Software Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Artificial Intelligence (AREA)
  • Quality & Reliability (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

AIによる認識処理に適した圧縮処理を実現する。データ処理装置は、画像データに対して認識処理が行われた際の、各ブロックの認識結果への影響度に基づいて圧縮レベルが決定された場合において、該圧縮レベルを用いて該画像データに対して圧縮処理を行うことで、圧縮データを生成する符号化部と、前記圧縮データを復号した復号データに対して認識処理を行った場合の認識結果が、所定の条件を満たす場合に、認識対象に対応するブロックについて、前記圧縮レベルを上げる方向に補正する補正部とを有する。

Description

データ処理装置及びデータ処理プログラム
 本発明は、データ処理装置及びデータ処理プログラムに関する。
 一般に、画像データを記録または伝送する際には、画像データに対して圧縮処理を行い、データサイズを小さくすることで、記録コストの削減や伝送コストの削減を実現している。
 一方で、近年、AI(Artificial Intelligence)による認識処理に利用される目的で、画像データを記録または伝送するケースが増えてきている。AIの代表的なモデルとして、例えば、深層学習や機械学習を用いたモデルが挙げられる。
特開2018-101406号公報 特開2019-079445号公報 特開2011-234033号公報
 しかしながら、従来の圧縮処理は、人間の視覚特性に基づいて行われており、AIの動作解析に基づいて行われていない。このため、AIによる認識処理に必要でない領域について、十分な圧縮レベルで圧縮処理が行われていない場合があった。あるいは、AIによる認識処理において重要な領域の画質を劣化させ、復号した際に、十分な認識精度が得られない場合があった。
 一つの側面では、AIによる認識処理に適した圧縮処理を実現することを目的とする。
 一態様によれば、データ処理装置は、
 画像データに対して認識処理が行われた際の、各ブロックの認識結果への影響度に基づいて圧縮レベルが決定された場合において、該圧縮レベルを用いて該画像データに対して圧縮処理を行うことで、圧縮データを生成する符号化部と、前記圧縮データを復号した復号データに対して認識処理を行った場合の認識結果が、所定の条件を満たす場合に、認識対象に対応するブロックについて、前記圧縮レベルを上げる方向に補正する補正部とを有する。
 AIによる認識処理に適した圧縮処理を実現することができる。
図1は、圧縮処理システムのシステム構成の一例を示す第1の図である。 図2は、解析装置または画像圧縮装置またはデータ処理装置のハードウェア構成の一例を示す図である。 図3は、解析装置の機能構成の一例を示す図である。 図4は、集計結果の具体例を示す図である。 図5は、量子化値決定部による処理の具体例を示す図である。 図6は、前景判定部による処理の具体例を示す図である。 図7は、画像圧縮装置の機能構成の一例を示す図である。 図8は、データ処理装置の機能構成の一例を示す第1の図である。 図9は、量子化値補正部の処理の具体例を示す図である。 図10は、圧縮処理システムによる画像圧縮処理の流れの一例を示す第1のフローチャートである。 図11は、圧縮処理システムのシステム構成の一例を示す第2の図である。 図12は、データ処理装置の機能構成の一例を示す第2の図である。 図13は、解析部の処理の具体例を示す第1の図である。 図14は、解析部の処理の具体例を示す第2の図である。 図15は、圧縮処理システムによる画像圧縮処理の流れの一例を示す第2のフローチャートである。 図16は、圧縮処理システムのシステム構成の一例を示す第3の図である。 図17は、圧縮処理システムのシステム構成の一例を示す第4の図である。 図18は、データ処理装置の機能構成の一例を示す第3の図である。 図19は、圧縮処理システムによる画像圧縮処理の流れの一例を示す第3のフローチャートである。 図20は、圧縮処理システムのシステム構成の一例を示す第5の図である。 図21は、圧縮処理システムのシステム構成の一例を示す第6の図である。 図22は、データ処理装置の機能構成の一例を示す第4の図である。 図23は、圧縮処理システムによる画像圧縮処理の流れの一例を示す第4のフローチャートである。
 以下、各実施形態について添付の図面を参照しながら説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複した説明を省略する。
 [第1の実施形態]
 <圧縮処理システムのシステム構成>
 はじめに、第1の実施形態に係るデータ処理装置を含む、圧縮処理システム全体のシステム構成について説明する。図1は、圧縮処理システムのシステム構成の一例を示す第1の図である。第1の実施形態において、圧縮処理システムが実行する処理は、
・決定量子化値マップを生成する第1のフェーズと、
・決定量子化値マップを補正し、補正後決定量子化値マップを用いて圧縮処理を行い、圧縮データを格納する第2のフェーズと
に大別することができる。
 図1において、1aは、第1のフェーズにおける圧縮処理システムのシステム構成を示しており、1bは、第2のフェーズにおける圧縮処理システムのシステム構成を示している。
 図1の1aに示すように、第1のフェーズにおける圧縮処理システム100には、撮像装置110、解析装置120、画像圧縮装置130が含まれる。
 撮像装置110は、所定のフレーム周期で撮影を行い、画像データを解析装置120に送信する。なお、画像データには、認識対象となるオブジェクトが含まれる。
 解析装置120は、認識処理を行う学習済みモデルを有する。解析装置120は、画像データを学習済みモデルに入力することで認識処理を行い、認識結果を出力する。
 また、解析装置120は、画像圧縮装置130が画像データに対して異なる圧縮レベル(量子化値)で圧縮処理を行うことで出力した各圧縮データを取得し、各圧縮データを復号することで、各復号データを生成する。更に、解析装置120は、各復号データを学習済みモデルに入力することで認識処理を行い、認識結果を出力する。
 また、解析装置120は、例えば、誤差逆伝播法を用いて認識処理時の学習済みモデルの動作解析を行うことで、認識結果への影響度を示すマップ(重要特徴マップと称す)を生成する。更に、解析装置120は、重要特徴マップに基づいて、所定領域ごと(圧縮処理が行われる際に用いられるブロックごと)に影響度を集計する。
 なお、解析装置120では、各ブロックに量子化値を設定した量子化値マップ(可変)を、順次、画像圧縮装置130に送信することで、異なる圧縮レベル(量子化値)での圧縮処理を、画像圧縮装置130に指示する。
 また、解析装置120は、各復号データに対して認識処理を行うごとに集計した各ブロックの影響度の集計値に基づき、ブロックごとに集計値グラフを生成する。集計値グラフは、各圧縮レベル(各量子化値)に対する、集計値の変化を示すグラフである。また、解析装置120は、ブロックごとの集計値グラフそれぞれに基づいて、各ブロックの最適な圧縮レベル(量子化値)を決定する。
 以下、解析装置120において決定された各ブロックの最適な量子化値を"決定量子化値"と称する。また、各ブロックに決定量子化値が設定されたマップを"決定量子化値マップ"と称する。なお、解析装置120は、決定量子化値マップをデータ処理装置140に送信する。
 このように、学習済みモデルの動作解析を行い、認識結果への影響度をブロックごとに集計することで、解析装置120によれば、画像データに対して圧縮処理を行うにあたり、認識処理に適した圧縮レベルを決定することができる。
 一方、図1の1bに示すように、第2のフェーズにおける圧縮処理システム100には、解析装置120、画像圧縮装置130、データ処理装置140、ストレージ装置150が含まれる。
 第2のフェーズにおいて、解析装置120は、画像データを画像圧縮装置130とデータ処理装置140とに送信する。
 データ処理装置140は、解析装置120より送信された画像データに対して、第1のフェーズにおいて解析装置120より送信された決定量子化値マップを用いて圧縮処理を行う。また、データ処理装置140は、圧縮データを復号し、復号データに対して認識処理を行うことで、認識結果を出力する。
 また、データ処理装置140は、決定量子化値マップの各ブロックに設定された量子化値のうち、認識対象となるオブジェクトに対応するブロックの量子化値を、所定のきざみ幅で増減させながら各復号データに対して認識処理を行う。更に、データ処理装置140は、画像データの認識結果に基づいて予め規定した認識結果の許容範囲と、各復号データの認識結果とを比較し、規定した許容範囲内に収まる認識結果が出力されうる最大の量子化値を探索する。
 また、データ処理装置140は、探索した最大の量子化値を用いて、決定量子化値マップのオブジェクトに対応するブロックの量子化値を補正し、補正後決定量子化値マップを生成する。更に、データ処理装置140は、生成した補正後決定量子化値マップを画像圧縮装置130に送信する。
 画像圧縮装置130は、送信された補正後決定量子化値マップを用いて画像データに対して圧縮処理を行い、圧縮データをストレージ装置150に格納する。
 このように、第1の実施形態に係るデータ処理装置140では、解析装置120が各ブロックの認識結果への影響度に基づき決定量子化値マップを生成した場合において、認識結果に基づいて、認識対象となるオブジェクトに対応するブロックの量子化値を補正する。
 これにより、第1の実施形態に係るデータ処理装置140によれば、認識結果を維持しつつ、圧縮レベルを向上させることができる。つまり、第1の実施形態に係るデータ処理装置140によれば、AIによる認識処理に適した圧縮処理を実現することができる。
 <解析装置または画像圧縮装置またはデータ処理装置のハードウェア構成>
 次に、解析装置120及び画像圧縮装置130及びデータ処理装置140のハードウェア構成について説明する。なお、解析装置120と画像圧縮装置130とデータ処理装置140とは、同様のハードウェア構成を有するため、ここでは、図2を用いて、これらの装置の説明をまとめて行う。
 図2は、解析装置または画像圧縮装置またはデータ処理装置のハードウェア構成の一例を示す図である。解析装置120または画像圧縮装置130またはデータ処理装置140は、プロセッサ201、メモリ202、補助記憶装置203、I/F(Interface)装置204、通信装置205、ドライブ装置206を有する。なお、解析装置120または画像圧縮装置130またはデータ処理装置140の各ハードウェアは、バス207を介して相互に接続されている。
 プロセッサ201は、CPU(Central Processing Unit)、GPU(Graphics Processing Unit)等の各種演算デバイスを有する。プロセッサ201は、各種プログラム(例えば、後述する解析プログラムまたは画像圧縮プログラムまたはデータ処理プログラム等)をメモリ202上に読み出して実行する。
 メモリ202は、ROM(Read Only Memory)、RAM(Random Access Memory)等の主記憶デバイスを有する。プロセッサ201とメモリ202とは、いわゆるコンピュータを形成し、プロセッサ201が、メモリ202上に読み出した各種プログラムを実行することで、当該コンピュータは各種機能を実現する(各種機能の詳細は後述する)。
 補助記憶装置203は、各種プログラムや、各種プログラムがプロセッサ201によって実行される際に用いられる各種データを格納する。
 I/F装置204は、外部装置の一例である操作装置210、表示装置220と、解析装置120または画像圧縮装置130またはデータ処理装置140とを接続する接続デバイスである。I/F装置204は、解析装置120または画像圧縮装置130またはデータ処理装置140に対する操作を、操作装置210を介して受け付ける。また、I/F装置204は、解析装置120または画像圧縮装置130またはデータ処理装置140による処理の結果を出力し、表示装置220を介して表示する。
 通信装置205は、他の装置と通信するための通信デバイスである。解析装置120の場合、通信装置205を介して他の装置である撮像装置110、画像圧縮装置130、データ処理装置140と通信する。また、画像圧縮装置130の場合、通信装置205を介して他の装置である解析装置120、データ処理装置140、ストレージ装置150と通信する。更に、データ処理装置140の場合、通信装置205を介して他の装置である解析装置120、画像圧縮装置130と通信する。
 ドライブ装置206は記録媒体230をセットするためのデバイスである。ここでいう記録媒体230には、CD-ROM、フレキシブルディスク、光磁気ディスク等のように情報を光学的、電気的あるいは磁気的に記録する媒体が含まれる。また、記録媒体230には、ROM、フラッシュメモリ等のように情報を電気的に記録する半導体メモリ等が含まれていてもよい。
 なお、補助記憶装置203にインストールされる各種プログラムは、例えば、配布された記録媒体230がドライブ装置206にセットされ、該記録媒体230に記録された各種プログラムがドライブ装置206により読み出されることでインストールされる。あるいは、補助記憶装置203にインストールされる各種プログラムは、通信装置205を介してネットワークからダウンロードされることで、インストールされてもよい。
 <解析装置の機能構成>
 次に、解析装置120の機能構成について説明する。図3は、解析装置の機能構成の一例を示す図である。上述したように、解析装置120には、解析プログラムがインストールされており、当該プログラムが実行されることで、解析装置120は、入力部310、CNN部320、量子化値設定部330、出力部340として機能する。また、解析装置120は、重要特徴マップ生成部350、集計部360、量子化値決定部370、前景判定部380として機能する。
 入力部310は、撮像装置110より送信される画像データ、または、画像圧縮装置130より送信される圧縮データを取得する。入力部310は、取得した画像データをCNN部320及び出力部340に通知するとともに、不図示の復号部を用いて、取得した圧縮データを復号し、復号データをCNN部320に通知する。
 CNN部320は、学習済みモデルを有し、画像データまたは復号データを入力することで、画像データまたは復号データに含まれる認識対象であるオブジェクトに対して認識処理を行い、認識結果を出力する。なお、認識結果には、認識したオブジェクトの領域を示すバウンディングボックスが含まれ、CNN部320では、当該バウンディングボックスを前景判定部380に通知する。
 量子化値設定部330は、画像圧縮装置130が圧縮処理を行う際に用いる各圧縮レベル(最小の量子化値(初期値)から最大の量子化値までの各量子化値)を設定した各量子化値マップ(可変)を、順次、出力部340に通知する。また、量子化値設定部330は、設定した各圧縮レベル(各量子化値)を、集計結果格納部390に格納する。
 出力部340は、入力部310が取得した画像データを、画像圧縮装置130に送信する。また、出力部340は、量子化値設定部330より通知された各量子化値マップ(可変)を、順次、画像圧縮装置130に送信する。更に、出力部340は、前景判定部380により通知された決定量子化値マップを、画像圧縮装置130に送信する。
 重要特徴マップ生成部350は、学習済みモデルが画像データまたは復号データに対して認識処理を行った際のCNN部構造情報を取得し、取得したCNN部構造情報に基づき誤差逆伝播法を利用することで、重要特徴マップを生成する。
 重要特徴マップ生成部350は、例えば、BP(Back Propagation)法、GBP(Guided Back Propagation)法または選択的BP法を用いることで、重要特徴マップを生成する。
 なお、BP法は、認識結果が正解ラベルとなる画像データ(または復号データ)に対して認識処理を行うことで得た分類確率から各ラベルの誤差を計算し、入力層まで逆伝播して得られる勾配の大小を画像化することで、特徴部分を可視化する方法である。また、GBP法は、勾配情報の正値のみを特徴部分として画像化することで、特徴部分を可視化する方法である。
 更に、選択的BP法は、正解ラベルの誤差のみを存在するようにしたうえで、あるいは、正解ラベルの誤差のみを最大にしたうえで、BP法またはGBP法を用いて逆伝播する方法である。選択的BP法の場合、可視化される特徴部分は、正解ラベルのスコア情報のみに影響を与える特徴部分となる。
 このように、重要特徴マップ生成部350では、BP法、GBP法または選択的BP法を用いることで、画像データまたは復号データが入力されてから認識結果が出力されるまでのCNN部320内の各経路の信号の流れと強度とを解析する。これにより、重要特徴マップ生成部350によれば、入力された画像データまたは復号データのどの部分が、認識結果にどの程度影響を及ぼしているか(影響度)を可視化することができる。
 なお、CNN部320として、例えば、BP法、GBP法または選択的BP法を適用しない(または適用できない)AIが用いられる場合、重要特徴マップ生成部350では、同様の情報を解析することにより、重要特徴マップを生成する。
 なお、誤差逆伝播法による重要特徴マップの生成方法は、例えば、
「Selvaraju, Ramprasaath R., et al. "Grad-cam: Visual explanations from deep networks via gradient-based localization." The IEEE International Conference on Computer Vision (ICCV), 2017, pp. 618-626」、
等の文献に開示されている。
 集計部360は、重要特徴マップに基づいて、認識結果への影響度をブロック単位で集計し、ブロックごとの影響度の集計値を算出する。また、集計部360は、算出した各ブロックの集計値を量子化値と対応付けて、集計結果として集計結果格納部390に格納する。
 量子化値決定部370は、集計結果格納部390に格納された、各ブロックの集計値グラフに基づいて、各ブロックにおける最適な量子化値を決定する。また、量子化値決定部370は、決定した最適な量子化値を各ブロックに設定した量子化値マップを前景判定部380に通知する。
 前景判定部380は、CNN部320より通知されたバウンディングボックスに含まれるブロック及びその外周に位置するブロックのうち、所定の条件を満たすブロックを、前景ブロックと判定する。また、前景判定部380は、前景ブロックと判定したブロック以外のブロックを背景ブロックと判定する。また、前景判定部380は、各ブロックに設定した量子化値のうち、背景ブロックと判定したブロックに設定した量子化値を、最大化する。
 更に、前景判定部380は、前景ブロックに設定した量子化値と、背景ブロックに設定した量子化値(最大化された量子化値)とを含む決定量子化値マップを、出力部340に通知する。
 なお、前景判定部380による前景ブロックの判定方法はこれに限定されない。例えば、前景判定部380は、CNN部320より通知されたバウンディングボックスとは無関係に、各ブロックの集計値グラフのみに基づいて、前景ブロックを判定してもよい。具体的には、前景判定部380は、集計値グラフが所定の条件を満たすブロックを前景ブロックと判定し、所定の条件を満たさないブロックを背景ブロックと判定してもよい。あるいは、バウンディングボックスとは無関係に他の情報(例えば、クラス分類確率等)を用いて、前景ブロックを判定してもよい。
 前景判定部380が、いずれの判定方法を用いるかは任意であり、いずれの判定方法を用いた場合であっても、バウンディングボックス内に位置するブロックが背景ブロックと判定されることがありうる。
 なお、バウンディングボックスとは無関係に前景ブロックを判定する判定方法を用いる場合、CNN部320から前景判定部380へのバウンディングボックスの通知は省略してもよい。
 <集計結果の具体例>
 次に、集計結果格納部390に格納される集計結果の具体例について説明する。図4は、集計結果の具体例を示す図である。このうち、4aは、画像データ410内の各ブロックの配置例を示している。4aに示すように、本実施形態では説明の簡略化のため、画像データ410内の各ブロックは全て同じ大きさ、同じ形状であるとする。また、画像データの左上のブロックのブロック番号を"ブロック1"とし、右下のブロックのブロック番号を"ブロックm"とする。
 4bに示すように、集計結果420には、情報の項目として、"ブロック番号"、"量子化値"とが含まれる。
 "ブロック番号"には、画像データ410内の各ブロックのブロック番号が格納される。"量子化値"には、画像圧縮装置130が圧縮処理を行わない場合を示す"圧縮なし"、及び、量子化値設定部330が各ブロックに順次設定する、最小の量子化値("Q")から最大の量子化値("Q")までの各量子化値が格納される。
 また、"ブロック番号"と"量子化値"とにより特定される領域には、
・対応する量子化値を用いて画像データ410に対して圧縮処理を行い、
・取得した圧縮データを復号した復号データを入力することで、学習済みモデルが認識処理を行い、
・認識処理時に算出された重要特徴マップに基づいて、対応するブロックにおいて集計された、
集計値が格納される。
 <量子化値決定部による処理の具体例>
 次に、量子化値決定部370による処理の具体例について説明する。図5は、量子化値決定部による処理の具体例を示す図である。図5において、集計値グラフ510_1~510_mは、横軸に量子化値、縦軸に集計値をとり、集計結果420に含まれる各ブロックの各量子化値の集計値をそれぞれプロットすることで生成される。
 なお、集計値グラフ510_1~510_mの生成に用いられる各ブロックの各量子化値の集計値は、例えば、
・全ブロック共通のオフセット値を用いて調整されていてもよい。
・絶対値をとって集計されていてもよい。
・注目されていないブロックの集計値に基づいて、他のブロックの集計値が加工されていてもよい。
 集計値グラフ510_1~510_mに示すように、最小の量子化値(Q)から最大の量子化値(Q)まで変化させた場合の集計値の変化は、ブロックごとに異なる。量子化値決定部370では、例えば、
・集計値の大きさが所定の閾値を超えた場合、あるいは、
・集計値の変化量が所定の閾値を超えた場合、あるいは、
・集計値の傾きが所定の閾値を超えた場合、あるいは、
・集計値の傾きの変化が所定の閾値を超えた場合、
のいずれかの条件を満たす場合に、各ブロックの最適な量子化値を決定し、量子化値マップを生成する。
 図5において量子化値マップ530は、ブロック1~ブロックmの最適な量子化値として、BQ~BQが決定され、対応するブロックにそれぞれ設定される様子を示している。
 なお、集計の際に用いるブロックのサイズと圧縮処理に用いるブロックのサイズとは、一致していなくてもよい。その場合、量子化値決定部370では、例えば、以下のように量子化値を決定する。
・集計の際のブロックのサイズより、圧縮処理に用いるブロックのサイズの方が大きい場合
 圧縮処理に用いるブロックに含まれる、集計の際の各ブロックの集計値に基づく量子化値の平均値(あるいは、最小値、最大値、その他の指標で加工した値)を、圧縮処理に用いる各ブロックの量子化値とする。
・集計の際のブロックのサイズより、圧縮処理に用いるブロックのサイズの方が小さい場合
 集計の際のブロックに含まれる、圧縮処理に用いる各ブロックの量子化値として、集計の際のブロックの集計値に基づく量子化値を用いる。
 なお、集計値を実際に算出する処理は、1つの量子化値(1つの圧縮レベル)のみに基づいて行ってもよい。その場合、異なる量子化値(異なる圧縮レベル)を仮定して、仮定した量子化値に対応する集計値と実際の量子化値に対応する集計値との差分や変化を測定することで、集計値を算出するものとする。
 このとき、仮定した量子化値(異なる圧縮レベル)についての復号データの画質は、実際の量子化値(圧縮レベル)についての復号データの画質より、良くても悪くてもよい。ただし、仮定した量子化値(異なる圧縮レベル)は、集計値の状態を推測しやすい量子化値であることが望ましい。例えば、実際の量子化値に対応する集計値と、圧縮処理を行っていない画像データとを比較する場合、一般的に、圧縮処理を行っていない画像データの集計値の方が、実際の量子化値に対応する集計値よりも小さくなる。
 なお、実際の量子化値に対応する集計値は、実際の量子化値を用いて圧縮処理が行われた圧縮データを復号した復号データを用いて算出してもよい。あるいは、同等の効果をもたらす画像処理(例えば、ローパスフィルタ処理など)が施された画像データを用いて算出してもよい。
 また、実際の量子化値に対応する集計値は、量子化値の最大値、最小値の範囲で制御可能な画質変化の範囲を超えた操作が行われた画像データを用いて算出してもよい。例えば、動画像符号化処理において指定可能な量子化値の最大値を超えた画像処理が施された画像データを用いて算出してもよい。
 また、集計値グラフを評価する際に適用される閾値は、ブロックごとに異なっていても、同じであってもよい。また、集計値グラフを評価する際に適用される閾値は、例えば、認識結果のスコア情報に基づいて調整されていても、調整されていなくてもよい。
 また、集計値グラフを評価する際に適用される閾値は、自動的に決定されてもよい。具体的には、認識処理時に取得可能な情報や、画像データから取得可能な情報、あるいは、それらを統計処理した値、あるいは、圧縮データのデータ量やその推移、あるいは、その他の処理に基づいて取得可能な情報により、自動的に決定されてもよい。
 <前景判定部による処理の具体例>
 次に、前景判定部380による処理の具体例について説明する。図6は、前景判定部による処理の具体例を示す図である。上述したように、前景判定部380には、量子化値決定部370より、各ブロックに量子化値が設定された量子化値マップ530が通知される。また、前景判定部380には、CNN部320より、オブジェクトの領域を示すバウンディングボックス(図6の例では、バウンディングボックス611、612)が通知される。
 前景判定部380では、例えば、バウンディングボックス611に含まれるブロックについては前景ブロックと判定する。また、前景判定部380では、バウンディングボックス611の外周のブロックについては、集計値グラフに基づいて前景ブロックか否かを判定する。
 同様に、前景判定部380では、例えば、バウンディングボックス612に含まれるブロックについては前景ブロックと判定する。また、前景判定部380では、バウンディングボックス612の外周のブロックについては、集計値グラフに基づいて前景ブロックか否かを判定する。
 なお、上述したように前景判定部380による前景ブロックか否かの判定方法はこれに限定されず、例えば、集計値グラフのみに基づいて、前景ブロックか否かを判定してもよい。あるいは、CNN部320より通知される認識結果に含まれる、各ブロックのクラス分類確率に基づいて、前景ブロックか否かを判定してもよい。
 前景判定部380では、前景ブロックと判定したブロックに設定されている量子化値については、修正を行わない。
 一方、前景判定部380では、前景ブロック以外のブロックを背景ブロックと判定する。前景判定部380では、背景ブロックと判定したブロックに設定されている量子化値を最大化することで、決定量子化値マップを生成する。
 図6において、決定量子化値マップ620は、前景判定部380により生成された決定量子化値マップの一例を示している。決定量子化値マップ620に含まれる白色のブロックは、前景判定部380により前景ブロックと判定されたブロックであり、量子化値決定部370により決定された量子化値が設定されている。
 一方、決定量子化値マップ620に含まれる網掛けのブロックは、前景判定部380により背景ブロックと判定されたブロックであり、最大化された量子化値が設定されている。
 <画像圧縮装置の機能構成>
 次に、画像圧縮装置130の機能構成について説明する。図7は、画像圧縮装置の機能構成の一例を示す第1の図である。上述したように、画像圧縮装置130には、画像圧縮プログラムがインストールされており、当該プログラムが実行されることで、画像圧縮装置130は、符号化部720として機能する。
 符号化部720は、差分部721、直交変換部722、量子化部723、エントロピ符号化部724、逆量子化部725、逆直交変換部726を有する。また、符号化部720は、加算部727、バッファ部728、ループ内フィルタ部729、フレームバッファ部730、画面内予測部731、画面間予測部732を有する。
 差分部721は、画像データ(例えば、画像データ410)と予測画像データとの差分を算出し、予測残差信号を出力する。
 直交変換部722は、差分部721により出力された予測残差信号に対して、直交変換処理を実行する。
 量子化部723は、直交変換処理された予測残差信号を量子化し、量子化信号を生成する。量子化部723では、第1のフェーズにあっては解析装置120から順次送信される量子化値マップ(可変)を用いて量子化信号を生成し、第2のフェーズにあってはデータ処理装置140から送信される補正後決定量子化値マップを用いて量子化信号を生成する。
 エントロピ符号化部724は、量子化信号に対してエントロピ符号化処理を行うことで、圧縮データを生成する。
 逆量子化部725は、量子化信号を逆量子化する。逆直交変換部726は、逆量子化された量子化信号に対して、逆直交変換処理を実行する。
 加算部727は、逆直交変換部726より出力された信号と、予測画像データとを加算することで、参照画像データを生成する。バッファ部728は、加算部727により生成された参照画像データを格納する。
 ループ内フィルタ部729は、バッファ部728に格納された参照画像データに対してフィルタ処理を行う。ループ内フィルタ部729には、
・デブロッキングフィルタ(Deblocking filter:DB)、
・サンプルアダプティブオフセットフィルタ(Sample Adaptive Offset filter:SAO)、
・適応ループフィルタ(Adaptive loop filter:ALF)、
が含まれる。
 フレームバッファ部730は、ループ内フィルタ部729によりフィルタ処理が行われた参照画像データをフレーム単位で格納する。
 画面内予測部731は、参照画像データに基づいて画面内予測を行い、予測画像データを生成する。画面間予測部732は、入力された画像データ(例えば、画像データ410)と参照画像データとを用いてフレーム間で動き補償を行い、予測画像データを生成する。
 画面内予測部731または画面間予測部732により生成された予測画像データは、差分部721及び加算部727に出力される。
 なお、上記説明では、符号化部720が、MPEG-2、MPEG-4、H.264、HEVCなどの既存の動画符号化方式を用いて圧縮処理を行うものとした。しかしながら、符号化部720による圧縮処理は、これらの動画符号化方式に限定されず、量子化値等のパラメータにより圧縮率を制御する任意の符号化方式を用いて行われてもよい。
 <データ処理装置の機能構成>
 次に、データ処理装置140の機能構成について説明する。図8は、データ処理装置の機能構成の一例を示す第1の図である。上述したように、データ処理装置140には、データ処理プログラムがインストールされており、当該プログラムが実行されることで、データ処理装置140は、符号化部810、復号部820、CNN部830、量子化値補正部840として機能する。
 符号化部810は、解析装置120より送信される画像データに対して、解析装置120より送信される決定量子化値マップを用いて圧縮処理を行い、圧縮データを生成する。また、符号化部810は、量子化値補正部840より、決定量子化値マップの前景ブロックの量子化値を増減させるための指示が通知されると、画像データに対して、当該量子化値を増減させた決定量子化値マップを用いて圧縮処理を行い、圧縮データを生成する。
 また、符号化部810は、量子化値補正部840からの指示に基づき、圧縮データを生成するごとに、生成した圧縮データを復号部820に通知する。
 なお、符号化部810の機能は、画像圧縮装置130の符号化部720の機能と基本的に同じであるため、ここでは、詳細な説明は省略する。
 復号部820は、符号化部810より圧縮データが通知されると、それぞれの圧縮データを復号し、復号データを生成する。また、復号部820は、復号データをCNN部830に通知する。
 CNN部830は、学習済みモデルを有し、復号データを入力することで、復号データに含まれる認識対象であるオブジェクトに対して認識処理を行い、認識結果を出力する。また、CNN部830は、出力した認識結果に含まれるスコア情報を量子化値補正部840に通知する。
 なお、CNN部830は、復号部820より復号データが通知されるごとに認識処理を行い、スコア情報を量子化値補正部840に通知する。
 このとき、CNN部830では、
・符号化部810が、決定量子化値マップを用いて圧縮処理を行うことで圧縮データを生成した場合、かつ、
・復号部820が、当該圧縮データを復号することで生成した復号データを、CNN部830に入力した場合、
に認識処理を行うことで出力した認識結果に含まれるスコア情報を、"基準スコア情報"として、量子化値補正部840に通知する。
 一方、CNN部830では、
・符号化部810が、前景ブロックの量子化値を増減させた決定量子化値マップを用いて圧縮処理を行うことで圧縮データを生成した場合、かつ、
・復号部820が、当該圧縮データを復号することで生成した復号データを、CNN部830に入力した場合、
に認識処理を行うことで出力した認識結果に含まれるスコア情報を、"スコア情報"として、量子化値補正部840に通知する。
 量子化値補正部840は補正部の一例であり、解析装置120より通知された決定量子化値マップの各ブロックに設定された量子化値のうち、前景ブロックに設定された量子化値を、所定のきざみ幅で増減させる。
 なお、量子化値補正部840は、CNN部830より通知された基準スコア情報が所定の閾値以上である場合には(所定の第1の条件を満たす場合には)、前景ブロックに設定された量子化値を、所定のきざみ幅で増加させる処理を開始する。
 量子化値を増加させる処理を開始した場合、量子化値補正部840は、CNN部830より通知されたスコア情報が、基準スコア情報に対して規定した許容範囲内に収まっている間は(所定の第2の条件を満たす間は)、量子化値を増加させる処理を継続する。
 あるいは、量子化値補正部840は、CNN部830より通知されたスコア情報が、所定の閾値以上である間は(所定の第1の条件を満たす間は)、量子化値を増加させる処理を継続する。
 一方、CNN部830より通知された基準スコア情報が所定の閾値未満である場合には(所定の第1の条件を満たさない場合には)、量子化値補正部840は、前景ブロックに設定された量子化値を、所定のきざみ幅で減少させる処理を開始する。
 量子化値を減少させる処理を開始した場合、量子化値補正部840は、CNN部830より通知されたスコア情報が、所定の閾値未満である間は(所定の第1の条件を満たしていない間は)、量子化値を減少させる処理を継続する。
 また、量子化値補正部840は、量子化値を増加させる処理または量子化値を減少させる処理が完了すると、前景ブロックの量子化値を、完了した時点での量子化値に補正し、補正後決定量子化値マップを、画像圧縮装置130に送信する。
 なお、上記説明では、量子化値補正部840が量子化値を増減させる際のきざみ幅が"1"(または"-1")であるとした。しかしながら、量子化値補正部840により量子化値を増減させる際のきざみ幅は、"1"(または"-1")であっても、"1"以上(または"-1"以下)であってもよい。
 また、上記説明では、量子化値補正部840が量子化値を増加させる処理を継続するか否かを判定するにあたり、基準スコア情報に基づいて規定した許容範囲と、スコア情報とを比較するものとして説明した。
 しかしながら、量子化値を増加させる処理を継続するか否かの判定方法はこれに限定されない。例えば、CNN部830より出力される認識結果に含まれるバウンディングボックスに基づいて算出されるIoU(Intersection over Union)と、予め規定したIoUの許容範囲とを比較してもよい。
 なお、量子化値補正部840が、量子化値を増加させる処理は、適用する用途や求められる認識精度等に応じて、どの程度厳密に行うかをコントロールできるようにしてもよい。
 <データ処理装置による処理の具体例>
 次に、データ処理装置140による処理の具体例について説明する。図9は、データ処理装置による処理の具体例を示す図である。図9において、横軸900は量子化値を示している。
 また、図9において、符号901は、前景ブロックに含まれる24個のブロック(ブロックa_1~ブロックa_24)のうち、決定量子化値マップにおいてブロックa_1に設定された量子化値を示している。
 同様に、図9において、符号902は、前景ブロックに含まれる24個のブロック(ブロックa_1~ブロックa_24)のうち、決定量子化値マップにおいてブロックa_24に設定された量子化値を示している。
 図9の例によれば、ブロックa_1に設定された量子化値は"33"であり、ブロックa_24に設定された量子化値は"32"である。また、図9の符号903の例によれば、これらの量子化値を用いて圧縮処理を行い、圧縮データを復号した復号データに対して認識処理を行った場合の基準スコア情報が、所定の閾値以上である(所定の第1の条件を満たす)と判定されたことを示している。
 更に、図9の例は、量子化値補正部840が、きざみ幅="1"ずつ量子化値を増加させた結果、量子化値が"42"のときに、スコア情報が所定の第1または第2の条件を満たさないと判定されたことを示している(符号903の右端参照)。
 このため、図9の例において、量子化値補正部840は、補正後決定量子化値マップ920に示すように、ブロックa_1の量子化値を"33"から"41"に、ブロックa_24の量子化値を"32"から"41"に補正している。
 同様に、図9において、符号911は、前景ブロックに含まれる24個のブロック(ブロックb_1~ブロックb_24)のうち、決定量子化値マップにおいてブロックb_1に設定された量子化値を示している。
 同様に、図9において、符号912は、前景ブロックに含まれる24個のブロック(ブロックb_1~ブロックb_24)のうち、決定量子化値マップにおいてブロックb_24に設定された量子化値を示している。
 図9の例によれば、ブロックb_1に設定された量子化値は"28"であり、ブロックb_24に設定された量子化値は"29"である。また、図9の符号913の例によれば、これらの量子化値を用いて圧縮処理を行い、圧縮データを復号した復号データに対して認識処理を行った場合の基準スコア情報が、所定の閾値未満である(所定の第1の条件を満たさないと判定されたことを示している。
 更に、図9の例は、量子化値補正部840が、きざみ幅="1"ずつ量子化値を減少させた結果、量子化値が"20"のときに、スコア情報が所定の第1の条件を満たすと判定されたことを示している(符号913左端参照)。
 このため、図9の例において、量子化値補正部840は、補正後決定量子化値マップ920に示すように、ブロックb_1の量子化値を"28"から"20"に、ブロックb_24の量子化値を"29"から"20"を補正している。
 なお、図9の例では、各ブロックの量子化値を一様に増加させる場合について説明したが、各ブロックの量子化値を増加させる方法はこれに限定されない。例えば、各ブロックの量子化値のうち、最小の量子化値を特定し、特定した最小の量子化値のブロックのみを増加させる処理を、順次実施してもよい。
 例えば、ブロックa_10の量子化値が"30"、ブロックa_11の量子化値が"32"、ブロックa_12の量子化値が"36"であったとする。この場合、図9の例では、(31、33、37)、(32、34、38)、・・・と増加させることになるが、上記の増加方法によれば、(31、32、36)、(32、32、36)、(33、33、36)、・・・と増加させることになる。
 また、基準スコア情報をオブジェクトごとに規定しておき、各オブジェクトの認識結果に基づいて、量子化値を補正してもよい。
 例えば、各ブロックの量子化値を一様に増加させ、オブジェクトA及びオブジェクトBについて認識処理を行った場合において、
・オブジェクトAに含まれるブロックの量子化値が"40"の場合、オブジェクトAを認識できたが、量子化値が"41"以上の場合には、オブジェクトAを認識できなかった、
・オブジェクトBに含まれるブロックの量子化値が"30"の場合、オブジェクトBを認識できたが、量子化値が"31"以上の場合にはオブジェクトBを認識できなかった、
とする。
 このような場合、オブジェクトAに含まれるブロックの量子化値は"40"に、オブジェクトBに含まれるブロックの量子化値は"30"に、それぞれ補正する。
 ただし、オブジェクトごとに個別に量子化値を補正した場合、画像データ全体の整合性が合わなくなり、認識できないオブジェクトが発生する可能性がある。このような場合には、全てのオブジェクトを認識できる量子化値の論理積条件の最大値を用いて補正してもよい。
 あるいは、オブジェクトBに含まれるブロックの量子化値については、探索終了条件を満たした時点の量子化値で固定し、オブジェクトAに含まれるブロックの量子化値については、探索終了条件を満たすまで、量子化値を継続して増加させてもよい。
 <圧縮処理システムによる画像圧縮処理の流れ>
 次に、圧縮処理システム100による画像圧縮処理の流れについて説明する。図10は、圧縮処理システムによる画像圧縮処理の流れの一例を示す第1のフローチャートである。
 ステップS1001において、解析装置120の入力部310は画像データを取得し、ステップS1002において、解析装置120のCNN部320は、取得された画像データに対して認識処理を行い、認識結果を出力する。
 ステップS1003において、解析装置120の量子化値設定部330は、最小の量子化値(Q)から最大の量子化値(Q)までの各量子化値を順次設定し、出力部340は各量子化値マップ(可変)を、画像圧縮装置130に送信する。また、画像圧縮装置130は、送信された各量子化値マップ(可変)を用いて画像データに対して圧縮処理を行い、各圧縮データを生成する。
 ステップS1004において、解析装置120の入力部310は、画像圧縮装置130により生成された各圧縮データを復号する。また、解析装置120のCNN部320は、各復号データに対して認識処理を行う。更に、解析装置120の重要特徴マップ生成部350は、CNN部構造情報に基づいて、復号データの各領域の認識結果への影響度を示す各重要特徴マップを生成する。
 ステップS1005において、解析装置120の集計部360は、各重要特徴マップについて、各領域の影響度をブロック単位で集計する。また、解析装置120の集計部360は、集計結果を、各圧縮レベル(量子化値)と対応付けて、集計結果格納部390に格納する。
 ステップS1006において、解析装置120の量子化値決定部370は、各ブロックの集計値グラフに基づいて、ブロック単位で量子化値を決定し、量子化値マップを生成する。
 ステップS1007において、解析装置120の前景判定部380は、生成された量子化値マップのうち、背景ブロックに設定された量子化値を最大化し、決定量子化値マップを生成する。
 ステップS1008において、データ処理装置140は、決定量子化値マップの各ブロックに設定された量子化値のうち、前景ブロックに設定された量子化値を増減させながら、認識処理を行う。
 ステップS1009において、データ処理装置140は、認識結果に基づいて決定量子化値マップの前景ブロックに設定された量子化値を補正し、補正後決定量子化値マップを生成する。
 ステップS1010において、画像圧縮装置130は、補正後決定量子化値マップを用いて、画像データに対して圧縮処理を行い、圧縮データをストレージ装置150に格納する。
 以上の説明から明らかなように、第1の実施形態に係るデータ処理装置は、画像データに対して認識処理が行われた際の、各ブロックの認識結果への影響度に基づいて決定量子化値マップが生成された場合において、該決定量子化値マップを用いて圧縮処理を行う。
 また、第1の実施形態に係るデータ処理装置は、圧縮データを復号した復号データに対して認識処理を行った場合の認識結果が、所定の条件を満たす場合に、認識対象に対応する前景ブロックについて、圧縮レベル(量子化値)を上げる方向に補正する。
 このように、第1の実施形態に係るデータ処理装置は、認識結果への影響度に基づいて決定された量子化値を、認識結果に基づいて上げる方向に補正する。これにより、第1の実施形態によれば、認識精度を維持しつつ圧縮レベルを向上させることができる。つまり、第1の実施形態によれば、AIによる認識処理に適した圧縮処理を実現することができる。
 [第2の実施形態]
 上記第1の実施形態では、認識結果への影響度に基づいて決定された量子化値を、認識結果に基づいて補正することで、認識精度を維持しつつ圧縮レベルを向上させるケースについて説明した。しかしながら、画像データによっては、圧縮処理を行わない状態で、既に認識精度が低い画像データも存在しうる。
 そこで、第2の実施形態では、このような画像データについて、まず、画像データ自体を変更することで、認識精度を向上させる。続いて、変更後の画像データについて、認識結果への影響度に基づいて量子化値を決定し、決定した量子化値を用いて圧縮処理を行う。
 これにより、第2の実施形態によれば、当該画像データについて、認識精度を向上させつつ、圧縮レベルを向上させることができる。以下、第2の実施形態について、上記第1の実施形態との相違点を中心に説明する。
 <圧縮処理システムのシステム構成>
 はじめに、第2の実施形態に係るデータ処理装置を含む、圧縮処理システム全体のシステム構成について説明する。図11は、圧縮処理システムのシステム構成の一例を示す第2の図である。第2の実施形態において、圧縮処理システム1100が実行する処理は、
・画像データを変更する第1のフェーズと、
・変更後の画像データに基づいて決定量子化値マップを生成し、生成した決定量子化値マップを用いて圧縮処理を行うことで、圧縮データを格納する第2のフェーズと
に大別することができる。
 図11において、11aは、第1のフェーズにおける圧縮処理システム1100のシステム構成を示しており、11bは、第2のフェーズにおける圧縮処理システム1100のシステム構成を示している。
 図11の11aに示すように、第1のフェーズにおける圧縮処理システム1100には、撮像装置110、データ処理装置1110が含まれる。このうち、撮像装置110による処理は、上記第1の実施形態において図1の1aを用いて説明した撮像装置110による処理と同様であるため、ここでは説明を省略する。
 データ処理装置1110は、撮像装置110より送信される画像データに対して認識処理を行う。また、データ処理装置1110は、認識結果に含まれるスコア情報が、所定の条件を満たすか否かを判定し、満たさないと判定した場合に、スコア情報を最大化するように、画像データを変更し、変更後の画像データを解析装置120に送信する。
 なお、データ処理装置1110は、認識結果に含まれるスコア情報が、所定の条件を満たすと判定した場合には、画像データを変更せず、解析装置120に送信する。
 一方、図11の11bに示すように、第2のフェーズにおける圧縮処理システム1100には、解析装置120、画像圧縮装置130、ストレージ装置150が含まれる。
 解析装置120は、認識処理を行う学習済みモデルを有する。解析装置120は、画像データまたは変更後の画像データを学習済みモデルに入力することで認識処理を行い、認識結果を出力する。また、解析装置120は、画像圧縮装置130が画像データまたは変更後の画像データに対して異なる圧縮レベル(量子化値)で圧縮処理を行うことで出力した各圧縮データを取得し、各圧縮データを復号することで、各復号データを生成する。更に、解析装置120は、各復号データを学習済みモデルに入力することで認識処理を行い、認識結果を出力する。
 また、解析装置120は、例えば、誤差逆伝播法を用いて認識処理時の学習済みモデルの動作解析を行うことで、重要特徴マップを生成する。更に、解析装置120は、重要特徴マップに基づいて、ブロックごとに影響度を集計する。
 なお、解析装置120では、各ブロックに量子化値を設定した量子化値マップ(可変)を、順次、画像圧縮装置130に送信することで、異なる圧縮レベル(量子化値)での圧縮処理を、画像圧縮装置130に指示する。
 また、解析装置120は、各復号データに対して認識処理を行うごとに算出した各ブロックの影響度の集計値に基づき、ブロックごとに集計値グラフを生成する。また、解析装置120は、ブロックごとの集計値グラフそれぞれに基づいて、各ブロックの最適な圧縮レベル(量子化値)を決定し、決定量子化値マップを生成する。
 画像圧縮装置130は、生成された決定量子化値マップを用いて画像データまたは変更後の画像データに対して圧縮処理を行い、圧縮データをストレージ装置150に格納する。
 <データ処理装置の機能構成>
 次に、データ処理装置1110の機能構成について説明する。図12は、データ処理装置の機能構成の一例を示す第2の図である。上記第1の実施形態同様、データ処理装置1110には、データ処理プログラムがインストールされており、当該プログラムが実行されることで、データ処理装置1110は、CNN部1210、判定部1220として機能する。また、データ処理装置1110は、解析部1230、画像データ変更部1240として機能する。
 CNN部1210は、学習済みモデルを有し、画像データを入力することで、画像データに含まれる認識対象であるオブジェクトに対して認識処理を行い、認識結果を出力する。
 判定部1220は、CNN部1210より出力された認識結果に含まれるスコア情報(画像データの認識精度に関わる情報の一例)が所定の条件を満たすか否かを判定する(例えば、所定の閾値以上であるか否かを判定する)。認識結果に含まれるスコア情報が所定の条件を満たすと判定した場合、判定部1220は、判定結果を画像データ変更部1240に通知する。一方、認識結果に含まれるスコア情報が所定の条件を満たさないと判定した場合、判定部1220は、判定結果を解析部1230に通知する。
 解析部1230は、判定部1220より判定結果が通知されると、画像データを取得し、取得した画像データを解析する。また、解析部1230は、画像データを解析することで生成した、スコア情報を最大化するための変更情報を、画像データ変更部1240に通知する。あるいは、解析部1230は、画像データを解析することで生成した、スコア情報を最大化するための画像データ(変更後の画像データ)を、画像データ変更部1240に通知する。
 画像データ変更部1240は変更部の一例である。画像データ変更部1240は、判定部1220より判定結果が通知された場合、画像データを変更することなく、解析装置120に送信する。
 また、画像データ変更部1240は、解析部1230より変更情報が通知された場合、通知された変更情報に基づいて画像データを変更し、変更後の画像データを、解析装置120に送信する。あるいは、画像データ変更部1240は、解析部1230より変更後の画像データが通知された場合、当該変更後の画像データを、解析装置120に送信する。
 <解析部の処理の具体例(1)>
 次に、データ処理装置1110の解析部1230による処理の具体例について説明する。図13は、解析部による処理の具体例を示す第1の図である。図13に示すように、解析部1230は、例えば、リファイン画像生成部1310と、重要特徴指標マップ生成部1320と、特定部1340と、詳細解析部1350とを有する。
 また、リファイン画像生成部1310は、画像リファイナ部1311、画像誤差演算部1312、推論部1313、スコア誤差演算部1314を有する。
 画像リファイナ部1311は、例えば、画像データの生成モデルとしてCNNを用いて学習を行うことで、画像データからリファイン画像データを生成する。
 なお、画像リファイナ部1311は、生成したリファイン画像データを用いて推論部1313が認識処理を行った際に、正解ラベルのスコア情報が最大化するように、画像データを変更する。また、画像リファイナ部1311は、例えば、画像データからの変更量(リファイン画像データと画像データとの差分)が小さくなるように、リファイン画像データを生成する。これにより、画像リファイナ部1311によれば、視覚的に変更前の画像データに近いリファイン画像データを得ることができる。
 具体的には、画像リファイナ部1311では、
・生成したリファイン画像データを用いて認識処理を行った際のスコア情報と、正解ラベルのスコア情報を最大化したスコア情報との誤差(スコア誤差)と、
・生成したリファイン画像データと画像データとの差分である画像差分値と、
を最小化するようにCNNの学習を行う。
 画像誤差演算部1312は、画像データと、CNNの学習中に画像リファイナ部1311より出力されるリファイン画像データとの差分を算出し、画像差分値を、画像リファイナ部1311に入力する。画像誤差演算部1312では、例えば、画素ごとの差分(L1差分)やSSIM(Structural Similarity)演算を行うことにより、画像差分値を算出し、画像リファイナ部1311に入力する。
 推論部1313は、画像リファイナ部1311により生成されたリファイン画像データを入力として認識処理を行い、スコア情報を出力する、学習済みのCNNを有する。なお、推論部1313により出力されたスコア情報は、スコア誤差演算部1314に通知される。
 スコア誤差演算部1314は、推論部1313により通知されたスコア情報と、正解ラベルのスコア情報を最大化したスコア情報との誤差を算出し、画像リファイナ部1311にスコア誤差を通知する。スコア誤差演算部1314により通知されたスコア誤差は、画像リファイナ部1311においてCNNの学習に用いられる。
 なお、画像リファイナ部1311が有するCNNの学習中に画像リファイナ部1311から出力されるリファイン画像は、リファイン画像格納部1315に格納される。画像リファイナ部1311が有するCNNの学習は、
・予め定められた学習回数分(例えば、最大学習回数=N回分)、あるいは、
・正解ラベルのスコア情報が所定の閾値を超えるまで、あるいは、
・正解ラベルのスコア情報が所定の閾値を超え、かつ、画像差分値が所定の閾値より小さくなるまで、
行われ、推論部1313より出力される正解ラベルのスコア情報が最大化した際のリファイン画像データを、以下では、"スコア最大化リファイン画像データ"と称す。
 続いて、重要特徴指標マップ生成部1320の詳細について説明する。図13に示すように、重要特徴指標マップ生成部1320は、重要特徴マップ生成部1321、劣化尺度マップ生成部1322、重畳部1323を有する。
 重要特徴マップ生成部1321は、推論部1313がスコア最大化リファイン画像データを入力として認識処理を行った際の推論部構造情報を、推論部1313より取得する。また、重要特徴マップ生成部1321は、BP法、GBP法または選択的BP法を用いることで、推論部構造情報に基づいて重要特徴マップを生成する。
 劣化尺度マップ生成部1322は、画像データとスコア最大化リファイン画像データとに基づいて、"劣化尺度マップ"を生成する。劣化尺度マップとは、画像データからスコア最大化リファイン画像データに変更した際の変更部分と各変更部分の変更度合いとを示したマップである。
 重畳部1323は、重要特徴マップ生成部1321において生成された重要特徴マップと、劣化尺度マップ生成部1322において生成された劣化尺度マップとを重畳することで、重要特徴指標マップ1330を生成する。重要特徴指標マップ1330は、画像データの各領域の認識結果への影響度を可視化したマップである。
 特定部1340は、画像データを、例えばスーパーピクセル単位で分割し、重要特徴指標マップ1330を、スーパーピクセル単位で集計する。また、特定部1340は、集計結果に基づいて、画像データを変更するスーパーピクセルを特定する。更に、特定部1340は、重要特徴指標マップ1330のうち、特定したスーパーピクセルに含まれる重要特徴指標マップ1330を、誤認識の原因領域として、詳細解析部1350に通知する。
 詳細解析部1350は、特定部1340により生成された原因領域に基づいて、画像データを変更するための変更情報を画素単位で生成し、画像データ変更部1240に通知する。
 これにより、画像データ変更部1240では、変更情報に基づいて画像データを画素単位で変更し、変更後の画像データを解析装置120に送信する。
 <解析部の処理の具体例(2)>
 次に、データ処理装置1110の解析部1230による処理の他の具体例について説明する。図14は、解析部による処理の具体例を示す第2の図である。図14に示すように、解析部1230は、例えば、リファイン画像生成部1310を有する。
 リファイン画像生成部1310は、画像リファイナ部1311、画像誤差演算部1312、推論部1313、スコア誤差演算部1314を有する。なお、リファイン画像生成部1310が有する各部の機能は、図13で示したリファイン画像生成部1310が有する各部の機能と同じである。ただし、図14の場合、リファイン画像格納部1315に格納されたスコア最大化リファイン画像が、変更後画像データとして画像データ変更部1240によって読み出される。
 これにより、画像データ変更部1240では、リファイン画像格納部1315より読み出したスコア最大化リファイン画像を、変更後画像データとして、解析装置120に送信する。
 <圧縮処理システムによる画像圧縮処理の流れ>
 次に、圧縮処理システム1100による画像圧縮処理の流れについて説明する。図15は、圧縮処理システムによる画像圧縮処理の流れの一例を示す第2のフローチャートである。
 ステップS1501において、データ処理装置1110のCNN部1210は、撮像装置110より画像データを取得する。
 ステップS1502において、データ処理装置1110のCNN部1210は、取得した画像データに対して認識処理を行い、認識結果を出力する。
 ステップS1503において、データ処理装置1110の判定部1220は、認識結果に含まれるスコア情報が、所定の条件を満たすか否かを判定することで、画像データの変更が必要か否かを判定する。ステップS1503において所定の条件を満たさないと判定した場合には(ステップS1503においてYesの場合には)、画像データの変更が必要であると判定し、ステップS1504に進む。
 ステップS1504において、データ処理装置1110の解析部1230は、スコア情報が最大化するように画像データを変更するための変更情報を生成する。また、データ処理装置1110の画像データ変更部1240は、生成された変更情報に基づいて画像データを変更し、変更後画像データを解析装置120に送信する。
 あるいは、データ処理装置1110の解析部1230は、スコア情報が最大化するように画像データを変更することでスコア最大化リファイン画像を生成し、画像データ変更部1240に通知する。また、データ処理装置1110の画像データ変更部1240は、スコア最大化リファイン画像を、変更後画像データとして解析装置120に送信する。
 一方、ステップS1503において所定の条件を満たすと判定した場合には(ステップS1503においてNoの場合には)、画像データの変更が必要でないと判定し、画像データを変更することなく、解析装置120に送信する。
 ステップS1505において、解析装置120のCNN部320は、画像データ変更部1240より送信された変更後画像データ(または画像データ)に対して認識処理を行い、認識結果を出力する。
 ステップS1506において、解析装置120の量子化値設定部330は、最小の量子化値(Q)から最大の量子化値(Q)までの各量子化値を順次設定し、出力部340は各量子化値マップ(可変)を、画像圧縮装置130に送信する。また、画像圧縮装置130は、送信された各量子化値マップ(可変)を用いて画像データに対して圧縮処理を行い、各圧縮データを生成する。
 ステップS1507において、解析装置120の入力部310は、画像圧縮装置130により生成された各圧縮データを復号する。また、解析装置120のCNN部320は、各復号データに対して認識処理を行う。更に、解析装置120の重要特徴マップ生成部350は、CNN部構造情報に基づいて、復号データの各領域の認識結果への影響度を示す各重要特徴マップを生成する。
 ステップS1508において、解析装置120の集計部360は、各重要特徴マップについて、各領域の影響度をブロック単位で集計する。また、解析装置120の集計部360は、集計結果を、各圧縮レベル(各量子化値)と対応付けて、集計結果格納部390に格納する。
 ステップS1509において、解析装置120の量子化値決定部370は、各ブロックの集計値グラフに基づいて、ブロック単位で量子化値を決定し、量子化値マップを生成する。
 ステップS1510において、解析装置120の前景判定部380は、生成された量子化値マップのうち、背景ブロックに設定された量子化値を最大化し、決定量子化値マップを生成する。
 ステップS1511において、画像圧縮装置130は、決定量子化値マップを用いて、変更後画像データ(または画像データ)に対して圧縮処理を行い、圧縮データをストレージ装置150に格納する。
 以上の説明から明らかなように、第2の実施形態に係るデータ処理装置は、撮像装置110より取得した画像データに対して認識処理を行い、スコア情報が所定の条件を満たすか否かを判定する。また、第2の実施形態に係るデータ処理装置は、所定の条件を満たさないと判定した場合に、スコア情報が最大化するように画像データを変更する。
 このように、画像データ自体を変更することで、第2の実施形態によれば、認識精度が低い画像データが取得された場合であっても、認識精度を向上させることができる。
 また、変更後の画像データに基づいて決定量子化値マップを生成するため、第2の実施形態によれば、高い量子化値が設定された決定量子化値マップを生成することができる。
 これにより、第2の実施形態によれば、認識精度を向上させつつ、圧縮レベルを向上させることができる。つまり、第2の実施形態に係るデータ処理装置によれば、AIによる認識処理に適した圧縮処理を実現することができる。
 [第3の実施形態]
 上記第2の実施形態では、認識精度が低い画像データが入力された場合に、はじめに画像データを変更することで、認識精度を向上させつつ、圧縮レベルを向上させるケースについて説明した。
 これに対して、第3の実施形態では、決定量子化値マップを生成する際の、量子化値を増加させていく過程で、画像データの変更が必要か否かを判定し、画像データの変更が必要であると判定した場合に、画像データを変更する。
 これにより、第3の実施形態によれば、第2の実施形態同様、認識精度を向上させつつ、圧縮レベルを向上させることができる。以下、第3の実施形態について、上記第2の実施形態との相違点を中心に説明する。
 <圧縮処理システムのシステム構成>
 はじめに、第3の実施形態に係るデータ処理装置を含む、圧縮処理システム全体のシステム構成について説明する。図16及び図17は、圧縮処理システムのシステム構成の一例を示す第3及び第4の図である。第3の実施形態において、圧縮処理システムが実行する処理は、
・決定量子化値マップを生成するために、異なる圧縮レベル(量子化値)で圧縮処理を行うとともに、集計値グラフを監視する第1のフェーズと、
・集計値グラフに基づき、画像データの変更が必要であると判定した場合に、画像データを変更し、変更後の画像データに対して、同様の処理を行う第2のフェーズと、
・決定量子化値マップを生成し、生成した決定量子化値マップを用いて、変更後の画像データに対して圧縮処理を行うことで、圧縮データを格納する第3のフェーズと、
に大別することができる。
 図16において、16aは、第1のフェーズにおける圧縮処理システム1600のシステム構成を示しており、16bは、第2のフェーズにおける圧縮処理システム1600のシステム構成を示している。また、図17は、第3のフェーズにおける圧縮処理システム1600のシステム構成を示している。
 図16の16aに示すように、第1のフェーズにおける圧縮処理システム1600には、撮像装置110、解析装置120、データ処理装置1610、画像圧縮装置130が含まれる。このうち、撮像装置110、画像圧縮装置130による処理は、上記第2の実施形態において図11の11aまたは11bを用いて説明した撮像装置110、画像圧縮装置130による処理と同様であるため、ここでは説明を省略する。
 解析装置120は、認識処理を行う学習済みモデルを有する。解析装置120は、画像データを学習済みモデルに入力することで認識処理を行い、認識結果を出力する。また、解析装置120は、画像圧縮装置130が画像データに対して異なる圧縮レベル(量子化値)で圧縮処理を行うことで出力した各圧縮データを取得し、各圧縮データを復号することで、各復号データを生成する。更に、解析装置120は、各復号データを学習済みモデルに入力することで認識処理を行い、認識結果を出力する。
 また、解析装置120は、例えば、誤差逆伝播法を用いて認識処理時の学習済みモデルの動作解析を行うことで、重要特徴マップを生成し、ブロックごとに影響度を集計する。
 なお、解析装置120では、各ブロックに量子化値を設定した量子化値マップ(可変)を、順次、画像圧縮装置130に送信することで、異なる圧縮レベル(量子化値)での圧縮処理を、画像圧縮装置130に指示する。
 また、解析装置120は、各復号データに対して認識処理を行うごとに集計した各ブロックの影響度の集計値に基づき、ブロックごとに集計値グラフを生成する。また、解析装置120は、ブロックごとの集計値グラフそれぞれを、集計値を更新するごとにデータ処理装置1610に送信する。
 データ処理装置1610は、解析装置120よりブロックごとに送信される集計値グラフを監視し、画像データの変更が必要か否かを判定する(例えば、集計値グラフの集計値の大きさが所定の閾値を超えた場合、画像データの変更が必要であると判定する)。データ処理装置1610は、画像データの変更が必要でないと判定した場合、画像データを変更することなく、画像圧縮装置130に送信する。
 一方、図16の16bに示すように、第2のフェーズにおける圧縮処理システム1600には、撮像装置110、解析装置120、データ処理装置1610、画像圧縮装置130が含まれる。このうち、撮像装置110、画像圧縮装置130による処理は、上記第2の実施形態において図11の11aまたは11bを用いて説明した撮像装置110、画像圧縮装置130による処理と同様であるため、ここでは説明を省略する。また、解析装置120による処理は、上記第1のフェーズにおける解析装置120による処理と同じであるため、ここでは説明を省略する。
 第2のフェーズにおいてデータ処理装置1610は、解析装置120よりブロックごとに送信される集計値グラフを監視し、画像データの変更が必要か否かを判定する。
 また、データ処理装置1610は、画像データの変更が必要であると判定した場合、画像データを変更し、変更後の画像データを画像圧縮装置130に送信する。
 更に、図17に示すように、第3のフェーズにおける圧縮処理システム1600には、解析装置120、データ処理装置1610、画像圧縮装置130が含まれる。
 解析装置120は、生成した集計値グラフに基づいて、各ブロックの最適な圧縮レベル(量子化値)を決定し、決定量子化値マップを生成する。また、解析装置120は、生成した決定量子化値マップを画像圧縮装置130に送信する。
 データ処理装置1610は、変更後画像データを画像圧縮装置130に送信する。
 画像圧縮装置130は、決定量子化値マップを用いて変更後の画像データに対して圧縮処理を行い、圧縮データをストレージ装置150に格納する。
 <データ処理装置の機能構成>
 次に、データ処理装置1610の機能構成について説明する。図18は、データ処理装置の機能構成の一例を示す第3の図である。上記第2の実施形態同様、データ処理装置1610には、データ処理プログラムがインストールされており、当該プログラムが実行されることで、データ処理装置1610は、入力部1810、判定部1820として機能する。また、データ処理装置1610は、解析部1230、画像データ変更部1240として機能する。
 このうち、解析部1230、画像データ変更部1240の処理は、図12のデータ処理装置1110の解析部1230、画像データ変更部1240の処理と同様であるため、ここでは説明を省略する。
 入力部1810は、解析装置120より画像データを取得する。また、入力部1810は、判定部1820から、画像データの変更が必要であるとの判定結果が通知された場合、取得した画像データを、解析部1230と画像データ変更部1240とに通知する。この場合、画像データ変更部1240は、変更情報に基づいて画像データを変更し、変更後画像データを画像圧縮装置130に送信する。
 また、入力部1810は、判定部1820から、画像データの変更が必要でないとの判定結果が通知された場合、取得した画像データを、画像データ変更部1240に通知する。この場合、画像データ変更部1240は、画像データを変更することなく画像圧縮装置130に送信する。
 判定部1820は、解析装置120より送信される各ブロックの集計値グラフ(画像データの認識精度に関わる情報の一例)を監視し、画像データの変更が必要か否かを判定する。画像データの変更が必要であると判定した場合、判定部1820は、判定結果を入力部1810に通知する。一方、画像データの変更が必要でないと判定した場合、判定部1820は、判定結果を入力部1810に通知する。
 <圧縮処理システムによる画像圧縮処理の流れ>
 次に、圧縮処理システム1600による画像圧縮処理の流れについて説明する。図19は、圧縮処理システムによる画像圧縮処理の流れの一例を示す第3のフローチャートである。
 ステップS1901において、解析装置120の入力部310は、画像データを取得する。
 ステップS1902において、解析装置120の量子化値設定部330は、最小の量子化値(Q)を設定した量子化値マップ(可変)を、画像圧縮装置130に送信する。
 ステップS1903において、画像圧縮装置130は、送信された量子化値マップ(可変)を用いて画像データに対して圧縮処理を行い、圧縮データを生成する。
 ステップS1904において、解析装置120の入力部310は、生成された圧縮データを復号する。また、解析装置120のCNN部320は、復号データに対して認識処理を行う。
 ステップS1905において、解析装置120の重要特徴マップ生成部350は、CNN部構造情報に基づいて、各領域の認識結果への影響度を示す重要特徴マップを生成する。
 ステップS1906において、解析装置120の集計部360は、重要特徴マップに基づいて、各領域の影響度をブロック単位で集計する。また、解析装置120の集計部360は、集計結果を、現在の圧縮レベル(量子化値)と対応付けて、集計結果格納部390に格納するとともに、集計値グラフをデータ処理装置1610に送信する。
 ステップS1907において、データ処理装置1610の判定部1820は、解析装置120より送信される各ブロックの集計値グラフを監視し、画像データの変更が必要か否かを判定する。
 ステップS1907において画像データの変更が必要であると判定した場合(ステップS1907においてYes)、判定結果を入力部1810に通知し、ステップS1908に進む。
 ステップS1908において、データ処理装置1610の入力部1810は、画像データを解析部1230及び画像データ変更部1240に通知し、解析部1230は、変更情報を画像データ変更部1240に通知する。また、画像データ変更部1240は、変更情報に基づいて画像データを変更し、変更後の画像データを画像圧縮装置130に送信する。
 あるいは、データ処理装置1610の入力部1810は、画像データを解析部1230に通知し、解析部1230は、スコア最大化リファイン画像を画像データ変更部1240に通知する。また、画像データ変更部1240は、スコア最大化リファイン画像を変更後の画像データとして、画像圧縮装置130に送信する。
 一方、ステップS1907において画像データの変更が必要でないと判定した場合(ステップS1907においてNoの場合)、判定結果を入力部1810に通知する。この場合、データ処理装置1610の入力部1810は、画像データを画像データ変更部1240に通知し、画像データ変更部1240は、画像データを変更することなく、画像圧縮装置130に送信する。
 ステップS1909において、解析装置120の量子化値設定部330は、次の量子化値を設定するか否かを判定し、次の量子化値を設定すると判定した場合には(ステップS1909においてYes)、ステップS1910に進む。
 ステップS1910において、解析装置120の量子化値設定部330は、次の量子化値を設定した量子化値マップ(可変)を、画像圧縮装置130に送信した後、ステップS1903に戻る。
 一方、ステップS1909において、次の量子化値を設定しないと判定した場合には(ステップS1909においてNoの場合には)、ステップS1911に進む。
 ステップS1911において、解析装置120の量子化値決定部370は、集計結果格納部390より読み出した集計値グラフに基づいて、ブロック単位で量子化値を決定し、量子化値マップを生成する。
 ステップS1912において、解析装置120の前景判定部380は、生成された量子化値マップのうち、背景ブロックに設定された量子化値を最大化し、決定量子化値マップを生成する。
 ステップS1913において、画像圧縮装置130は、決定量子化値マップを用いて、変更後画像データに対して圧縮処理を行い、圧縮データをストレージ装置150に格納する。
 以上の説明から明らかなように、第3の実施形態に係るデータ処理装置は、決定量子化値マップを生成する際の、量子化値を増加させていく過程で、各ブロックの集計値グラフを監視することで、画像データの変更が必要か否かを判定する。また、第3の実施形態に係るデータ処理装置は、画像データの変更が必要であると判定した場合に、スコア情報が最大化するように画像データを変更する。
 このように、第2の実施形態同様、画像データ自体を変更することで、第3の実施形態によれば、認識精度が低い画像データが取得された場合であっても、認識精度を向上させることができる。
 また、変更後の画像データに基づいて決定量子化値マップを生成するため、第3の実施形態によれば、高い量子化値が設定された決定量子化値マップを生成することができる。
 これにより、第3の実施形態によれば、第2の実施形態同様、認識精度を向上させつつ、圧縮レベルを向上させることができる。つまり、第3の実施形態に係るデータ処理装置によれば、AIによる画像認識処理に適した圧縮処理を実現することができる。
 [第4の実施形態]
 上記第3の実施形態では、決定量子化値マップを生成するにあたり、各ブロックの集計値グラフを監視することで、画像データの変更が必要であるか否かを判定するケースについて説明した。
 これに対して、第4の実施形態では、生成した決定量子化値マップを用いて圧縮処理を行った後の圧縮データについて認識精度を確認することで、画像データの変更が必要であるか否かを判定する。
 これにより、第4の実施形態によれば、第3の実施形態同様、認識精度を向上させつつ、圧縮レベルを向上させることができる。以下、第4の実施形態について、上記各実施形態との相違点を中心に説明する。
 <圧縮処理システムのシステム構成>
 はじめに、第4の実施形態に係るデータ処理装置を含む、圧縮処理システム全体のシステム構成について説明する。図20及び図21は、圧縮処理システムのシステム構成の一例を示す第4及び第5の図である。第4の実施形態において、圧縮処理システムが実行する処理は、
・決定量子化値マップを生成し、生成した決定量子化値マップを用いて圧縮処理を行う第1のフェーズと、
・圧縮データについて認識精度を確認し、画像データを変更する第2のフェーズと、
・変更後の画像データに対して圧縮処理を行い、圧縮データを格納する第3のフェーズと
に大別することができる。
 図20において、20aは、第1のフェーズにおける圧縮処理システム2000のシステム構成を示しており、20bは、第2のフェーズにおける圧縮処理システムのシステム構成を示している。また、図21は、第3のフェーズにおける圧縮処理システムのシステム構成を示している。
 図20の20aに示すように、第1のフェーズにおける圧縮処理システム2000には、撮像装置110、解析装置120、画像圧縮装置130が含まれる。なお、第1のフェーズにおける撮像装置110による処理は、上記第1の実施形態において図1の1aを用いて説明した撮像装置110による処理と同じであるため、ここでは説明を省略する。
 また、第1のフェーズにおける解析装置120、画像圧縮装置130による処理は、上記第2の実施形態において図11の11bを用いて説明した解析装置120、画像圧縮装置130による処理と同様であるため、ここでは説明を省略する。
 一方、図20の20bに示すように、第2のフェーズにおける圧縮処理システム2000には、解析装置120、画像圧縮装置130、データ処理装置2010が含まれる。このうち、解析装置120、画像圧縮装置130による処理は、上記第2の実施形態において図11の11bを用いて説明した解析装置120、画像圧縮装置130による処理と同様であるため、ここでは説明を省略する。
 図20の20bにおいてデータ処理装置2010は、画像圧縮装置130より送信される圧縮データを復号し、復号データに対して認識処理を行う。また、データ処理装置2010は、認識結果に含まれるスコア情報が所定の条件を満たすか否かを判定し、所定の条件を満たさないと判定した場合、スコア情報が最大化するように画像データを変更し、変更後の画像データを画像圧縮装置130に送信する。
 また、図21に示すように、第3のフェーズにおける圧縮処理システム2000には、画像圧縮装置130、データ処理装置2010、ストレージ装置150が含まれる。
 図21に示すように第3のフェーズにおける画像圧縮装置130は、データ処理装置2010より送信された変更後の画像データに対して、決定量子化値マップを用いて圧縮処理を行い、圧縮データをデータ処理装置2010に送信する。
 また、図21に示すように第3のフェーズにおけるデータ処理装置2010は、画像圧縮装置130より送信される圧縮データを復号し、復号データに対して認識処理を行う。また、データ処理装置2010は、認識結果に含まれるスコア情報が所定の条件を満たすか否かを判定し、所定の条件を満たすと判定した場合、圧縮データをストレージ装置150に格納する。
 <データ処理装置の機能構成>
 次に、データ処理装置2010の機能構成について説明する。図22は、データ処理装置の機能構成の一例を示す第4の図である。上記第2の実施形態同様、データ処理装置2010には、データ処理プログラムがインストールされており、当該プログラムが実行されることで、データ処理装置2010は、復号部2210、CNN部1210、判定部1220として機能する。また、データ処理装置2010は、解析部1230、画像データ変更部2240として機能する。
 このうち、CNN部1210、判定部1220、解析部1230は、上記第2の実施形態において図12を用いて説明したCNN部1210、判定部1220、解析部1230と同様の機能を有するため、ここでは説明を省略する。
 復号部2210は、画像圧縮装置130より送信された圧縮データを復号し、復号データを生成する。また、復号部2210は、復号データをCNN部1210に通知する。更に、復号部2210は、解析部1230からの指示に応じて、復号データを解析部1230に通知する。
 画像データ変更部2240は変更部の一例である。画像データ変更部2240は、判定部1220より判定結果が通知された場合、圧縮データをストレージ装置150に送信する。
 また、画像データ変更部2240は、解析部1230より変更情報が通知された場合、通知された変更情報に基づいて画像データを変更し、変更後の画像データを、画像圧縮装置130に送信する。あるいは、画像データ変更部2240は、解析部1230より変更後の画像データが通知された場合、当該変更後の画像データを、画像圧縮装置130に送信する。
 <圧縮処理システムによる画像圧縮処理の流れ>
 次に、圧縮処理システム2000による画像圧縮処理の流れについて説明する。図23は、圧縮処理システムによる画像圧縮処理の流れの一例を示す第4のフローチャートである。
 図23において、ステップS1001~S1007は、図10のステップS1001~S1007と同様の処理であるため説明を省略し、ここでは、ステップS2301~S2306の処理について説明する。
 ステップS2301において、画像圧縮装置130は、決定量子化値マップを用いて、画像データに対して圧縮処理を行い、圧縮データを生成する。
 ステップS2302において、データ処理装置2010の復号部2210は圧縮データを復号し、データ処理装置2010のCNN部1210は、復号データに対して認識処理を行うことで、認識結果を出力する。
 ステップS2303において、データ処理装置2010の判定部1220は、認識結果に含まれるスコア情報が所定の条件を満たすか否かを判定することで、画像データの変更が必要か否かを判定する。
 ステップS2303において、所定の条件を満たさないと判定した場合(ステップS2303においてYesの場合には)、画像データの変更が必要であると判定し、ステップS2304に進む。
 ステップS2304において、データ処理装置2010の解析部1230は、スコア情報が最大化するように、画像データを変更するための変更情報を生成する。また、データ処理装置1110の画像データ変更部1240は、生成された変更情報に基づいて画像データを変更し、変更後画像データを画像圧縮装置130に送信する。
 あるいは、データ処理装置1110の解析部1230は、スコア情報が最大化するように画像データを変更することでスコア最大化リファイン画像を生成し、画像データ変更部1240に通知する。また、データ処理装置1110の画像データ変更部1240は、スコア最大化リファイン画像を、変更後画像データとして、画像圧縮装置130に送信する。
 ステップS2305において、画像圧縮装置130は、決定量子化値マップを用いて変更後の画像データに対して圧縮処理を行い、圧縮データを生成する。
 一方、ステップS2303において、所定の条件を満たすと判定した場合には(ステップS2303においてNoの場合には)、画像データの変更が必要でないと判定し、画像データを変更することなくステップS2306に進む。
 ステップS2306において、データ処理装置2010は、圧縮データをストレージ装置150に格納する。
 以上の説明から明らかなように、第4の実施形態に係るデータ処理装置は、生成された決定量子化値マップを用いて圧縮処理が行われた場合の圧縮データを取得し、取得した圧縮データを復号した復号データに対して認識処理を行う。また、第4の実施形態に係るデータ処理装置は、認識結果に含まれるスコア情報が所定の条件を満たすか否かを判定し、所定の条件を満たさないと判定した場合に、スコア情報が最大化するように画像データを変更する。更に、第4の実施形態に係るデータ処理装置は、変更後の画像データに対して、決定量子化値マップを用いて圧縮処理が行われた場合に、圧縮データを格納する。
 このように、圧縮データについて認識精度を確認し、画像データの変更が必要な場合には、画像データを変更するため、第4の実施形態によれば、認識精度の低い圧縮データが出力されることを回避することができる。これにより、第4の実施形態によれば、圧縮レベルを向上させつつ、認識精度を向上させることができる。つまり、第4の実施形態に係るデータ処理装置によれば、AIによる認識処理に適した圧縮処理を実現することができる。
 [その他の実施形態]
 上記第1の実施形態では、決定量子化値マップを生成した後に、各ブロックが前景ブロックであるか背景ブロックであるかを判定し、背景ブロックであると判定した場合に、当該ブロックの量子化値を最大化するものとして説明した。しかしながら、決定量子化値マップを生成する処理と、背景ブロックの量子化値を最大化する処理との間の処理順序はこれに限定されず、背景ブロックの量子化値を最大化する処理を行った後に、決定量子化値マップを生成する処理を行ってもよい。
 また、上記第1の実施形態では、背景ブロックであると判定した場合に、当該ブロックの量子化値を最大化する処理を行うものとして説明したが、背景ブロックの画像データを無効化する処理(例えば、画素値をゼロにする処理)を行ってもよい。あるいは、背景ブロックの画像データに対して、ブラーなどのローパスフィルタ処理を行ってもよい。
 また、上記第1の実施形態では、画像圧縮装置130が画像データに対して圧縮処理を行う際に参照する画像データについて特に言及しなかったが、参照する画像データは、補正後決定量子化値マップを用いて圧縮処理が行われた画像データであってもよい。あるいは、参照する画像データは、補正後決定量子化値マップを用いて圧縮処理が行われた場合と同程度の劣化度をもたらす他の量子化値マップを用いて圧縮処理が行われた画像データであってもよい。
 また、上記第1の実施形態では、量子化値を増加させる処理を継続するか否かを判定する際の所定の第2の条件として、画像データに対する認識結果に基づいて規定した許容範囲を用いるものとして説明したが、所定の第2の条件はこれに限定されない。
 例えば、画像データの中には、圧縮処理を行う際の圧縮レベルとして所定の圧縮レベル以上の圧縮レベルが期待できないような画像データも存在しうる。このような画像データについては、所定の圧縮レベル(量子化値)で圧縮処理を行った場合の圧縮データに対する認識結果に基づいて許容範囲を規定してもよい。
 また、上記第1の実施形態では、許容範囲を規定する際に画像データに対する認識結果を用いるものとして説明した。しかしながら、許容範囲を規定する際に用いる情報は、画像データに対する認識結果に限定されず、例えば、画像データに付与されたアノテーション情報を用いてもよい。
 また、上記第1の実施形態では、画像圧縮装置130が圧縮処理する際に用いる量子化値を、データ処理装置140が提供するものとして説明した。しかしながら、データ処理装置140は、画像圧縮装置130が圧縮処理する際に用いる量子化値を調整するための重み付け指標を提供し、画像圧縮装置130が提供された重み付け指標に基づいて、量子化値を調整してもよい。
 具体的には、各ブロックの集計値等のように、認識結果への影響度をブロックごとに統計処理したブロックごとの統計値や、ブロックごとの統計値の変化量、あるいは、決定量子化値マップの各ブロックの量子化値を、各ブロックの重み付け指標と捉えてもよい。
 そして、画像圧縮装置130では、例えば、ビットレートを制御するアルゴリズムに基づいて決定された各ブロックの量子化値を、重み付け指標を用いて調整してもよい。あるいは、画像圧縮装置130では、例えば、フレーム内または複数のフレームにわたって固定的に設定された各ブロックの量子化値を、重み付け指標を用いて調整してもよい。
 一例として、決定量子化値マップの各ブロックの量子化値を、各ブロックの重み付け指標と捉える場合、画像圧縮装置130では、決定量子化値マップにおいて量子化値が大きいブロックについては、
・ビットレートを制御するアルゴリズムに基づいて決定された各量子化値、あるいは、
・フレーム内または複数のフレームにわたって固定的に設定された各ブロックの量子化値、
を大きくする方向に調整する際、調整の強さをより大きくし、小さくする方向に調整する際、調整の強さをより小さくしてもよい。
 また、他の一例として、各ブロックの集計値を、各ブロックの重み付け指標と捉える場合、画像圧縮装置130では、集計値が大きいブロックについては、
・ビットレートを制御するアルゴリズムに基づいて決定された各量子化値、あるいは、
・フレーム内または複数のフレームにわたって固定的に設定された各ブロックの量子化値、
を大きくする方向に調整する際、調整の強さをより大きくし、小さくする方向に調整する際、調整の強さをより小さくしてもよい。
 更に、画像圧縮装置130では、
・ビットレートを制御するアルゴリズムに基づいて決定された各ブロックの量子化値、あるいは、
・フレーム内または複数のフレームにわたって固定的に設定された各ブロックの量子化値、
であって、重み付け指標を用いて調整した量子化値を、他の情報に応じて更に変更してもよい。ここでいう他の情報には、圧縮データを復号して認識処理を行った際のスコア情報、分類確率、誤差情報、あるいは、オブジェクトの位置情報など、認識精度に影響する値の変化や推移状況が含まれる。なお、画像圧縮装置130では、認識精度に影響する値が維持されるように、あるいは、改善されるように、あるいは、所定の許容範囲内の低下で収まるように、量子化値を変更するものとする。また、画像圧縮装置130では、対応する画像データに対して、あるいは、対応する画像データよりも後に取得される画像データに対して、変更後の量子化値を用いて圧縮処理を行うものとする。あるいは、画像圧縮装置130では、対応する画像データと対応する画像データよりも後に取得される画像データとを含む複数の画像データに対して、変更後の量子化値を用いて圧縮処理を行うものとする。
 また、上記第2乃至第4の実施形態では、変更する画像データに含まれるオブジェクトの数について言及しなかったが、変更する画像データに含まれるオブジェクトの数は複数であってもよい。この場合、データ処理装置では、個々のオブジェクトのスコア情報を最大化するようにオブジェクトごとに画像データを変更してもよいし、複数のオブジェクトのスコア情報を最大化するように、複数のオブジェクトについてまとめて画像データを変更してもよい。
 また、上記第2乃至第4の実施形態では、画像データを変更するにあたり、スコア最大化リファイン画像データを生成するものとして説明した。しかしながら、例えば、上記第4の実施形態のように、復号データの認識精度を確認し、認識精度が低い場合に復号データを変更する場合にあっては、
・認識精度が低いと判定された復号データとは別の復号データまたは画像データであって、かつ、
・認識精度が低いと判定された復号データよりも、認識精度が高い復号データまたは画像データ、
が存在する場合には、スコア最大化リファイン画像を生成する代わりに、当該認識精度が高い復号データまたは画像データを用いてもよい。これにより、スコア最大化リファイン画像を生成する処理を省略することができる。
 また、上記第2乃至第4の実施形態では、画像データまたは復号データに基づいてスコア最大化リファイン画像データを生成するものとして説明した。しかしながら、スコア最大化リファイン画像を生成する前に、背景ブロックを判定し、判定した背景ブロックの画像データまたは復号データに対して無効化する処理、あるいは、ローパスフィルタ処理などの画像処理を行ってもよい。
 また、上記各実施形態では、撮像装置110から送信された画像データを対象として、圧縮処理を行うものとして説明した。しかしながら、圧縮処理を行う対象は、これに限定されず、例えば、撮像装置110から送信された画像データを、所定のサイズにリサイズした画像データを対象として、圧縮処理を行ってもよい。
 また、上記各実施形態では、各ブロックのサイズについて特に言及しなかったが、各ブロックのサイズは、固定サイズであっても可変サイズであってもよい。また、可変サイズの場合にあっては、例えば、量子化値の大きさに応じたサイズであってもよい。
 なお、上記実施形態に挙げた構成等に、その他の要素との組み合わせ等、ここで示した構成に本発明が限定されるものではない。これらの点に関しては、本発明の趣旨を逸脱しない範囲で変更することが可能であり、その応用形態に応じて適切に定めることができる。
100   :圧縮処理システム
120   :解析装置
130   :画像圧縮装置
140   :データ処理装置
310   :入力部
320   :CNN部
330   :量子化値設定部
340   :出力部
350   :重要特徴マップ生成部
360   :集計部
370   :量子化値決定部
380   :前景判定部
420   :集計結果
810   :符号化部
820   :復号部
830   :CNN部
840   :量子化値補正部
1100  :圧縮処理システム
1110  :データ処理装置
1210  :CNN部
1220  :判定部
1230  :解析部
1240  :画像データ変更部
1310  :リファイン画像生成部
1320  :重要特徴指標マップ生成部
1340  :特定部
1350  :詳細解析部
1600  :圧縮処理システム
1610  :データ処理装置
2000  :圧縮処理システム
2010  :データ処理装置
2210  :復号部
2240  :画像データ変更部

Claims (17)

  1.  画像データに対して認識処理が行われた際の、各ブロックの認識結果への影響度に基づいて圧縮レベルが決定された場合において、該圧縮レベルを用いて該画像データに対して圧縮処理を行うことで、圧縮データを生成する符号化部と、
     前記圧縮データを復号した復号データに対して認識処理を行った場合の認識結果が、所定の条件を満たす場合に、認識対象に対応するブロックについて、前記圧縮レベルを上げる方向に補正する補正部と
     を有するデータ処理装置。
  2.  前記補正部は、
     前記圧縮データを復号した復号データに対して認識処理を行った場合の認識結果が所定の条件を満たさない場合、前記認識対象に対応するブロックについて、前記圧縮レベルを下げる方向に補正する請求項1に記載のデータ処理装置。
  3.  前記補正部は、
     前記圧縮データを復号した復号データに対して認識処理を行った場合の認識結果に含まれるスコア情報と所定の閾値とを比較することで、前記認識結果が所定の条件を満たすか否かを判定する、請求項1または2に記載のデータ処理装置。
  4.  前記補正部は、
     前記画像データに対して認識処理を行った場合の認識結果に含まれるスコア情報と、前記圧縮データを復号した復号データに対して認識処理を行った場合の認識結果に含まれるスコア情報とを比較することで、前記認識結果が所定の条件を満たすか否かを判定する、請求項1または2に記載のデータ処理装置。
  5.  前記補正部は、
     前記所定の条件を満たす範囲で、前記認識対象に対応するブロックの圧縮レベルを上げる方向に補正した場合の補正後の圧縮レベルを出力する、請求項1に記載のデータ処理装置。
  6.  前記補正部は、
     前記所定の条件を満たすまで、前記認識対象に対応するブロックの圧縮レベルを下げる方向に補正した場合の補正後の圧縮レベルを出力する、請求項2に記載のデータ処理装置。
  7.  前記補正部は、
     前記認識対象に対応するブロック以外のブロックの圧縮レベルが最大化された圧縮レベルを出力する、請求項5または6に記載のデータ処理装置。
  8.  圧縮処理される画像データが入力された場合に、該画像データの認識精度に関わる情報を取得し、該画像データの認識精度に関わる情報に基づいて、該画像データの変更が必要か否かを判定する判定部と、
     前記判定部により、前記画像データの変更が必要でないと判定された場合、入力された前記画像データを出力し、前記判定部により、前記画像データの変更が必要であると判定された場合、前記画像データを変更し、変更後の前記画像データを出力する変更部と
     を有するデータ処理装置。
  9.  前記判定部は、
     前記画像データに対して認識処理が行われた場合の認識結果を、前記画像データの認識精度に関わる情報として取得する、請求項8に記載のデータ処理装置。
  10.  圧縮データを復号する復号部を更に有し、
     前記判定部は、前記復号部により圧縮データが復号されることで生成された画像データに対して認識処理が行われた場合の認識結果を、前記画像データの認識結果に関わる情報として取得する、請求項8に記載のデータ処理装置。
  11.  前記判定部は、
     前記認識結果に含まれるスコア情報と所定の閾値とを比較することで、前記画像データの変更が必要か否かを判定する、請求項9または10に記載のデータ処理装置。
  12.  前記画像データに対して異なる圧縮レベルで圧縮処理が行われ、かつ、
     各圧縮データが復号され、各復号データに対して認識処理が行われ、かつ、
     各認識処理時の認識結果への影響度がブロックごとに集計された場合において、
     前記判定部は、
     前記ブロックごとの集計値を、前記画像データの認識結果に関わる情報として取得する、請求項8に記載のデータ処理装置。
  13.  前記変更部は、
     前記画像データに対して認識処理が行われた場合の認識結果に含まれるスコア情報が最大化するように、前記画像データを変更する、請求項8乃至12のいずれか1項に記載のデータ処理装置。
  14.  前記画像データに対して認識処理を行った場合の認識結果に含まれるスコア情報が最大化するように、前記画像データを変更した場合の変更部分を示すマップと、
     前記画像データに対して認識処理を行った場合の認識結果に含まれるスコア情報が最大化するように変更された変更後の前記画像データに対して、更に、認識処理を行った場合の、変更後の前記画像データの各領域の認識結果への影響度を示すマップと、
     に基づいて、前記画像データの誤認識の原因領域を画素単位で解析する解析部を更に有する、請求項13に記載のデータ処理装置。
  15.  前記解析部は、
     前記原因領域を画素単位で変更するための変更情報を生成し、
     前記変更部は、
     前記変更情報に基づいて、前記原因領域を画素単位で変更する、請求項14に記載のデータ処理装置。
  16.  画像データに対して認識処理が行われた際の、各ブロックの認識結果への影響度に基づいて圧縮レベルが決定された場合において、該圧縮レベルを用いて該画像データに対して圧縮処理を行うことで、圧縮データを生成し、
     前記圧縮データを復号した復号データに対して認識処理を行った場合の認識結果が、所定の条件を満たす場合に、認識対象に対応するブロックについて、前記圧縮レベルを上げる方向に補正する、
     処理を実行させるためのデータ処理プログラム。
  17.  コンピュータに、
     圧縮処理される画像データが入力された場合に、該画像データの認識精度に関わる情報を取得し、該画像データの認識精度に関わる情報に基づいて、該画像データの変更が必要か否かを判定し、
     前記画像データの変更が必要でないと判定された場合、入力された前記画像データを出力し、前記画像データの変更が必要であると判定された場合、前記画像データを変更し、変更後の前記画像データを出力する、
     処理を実行させるためのデータ処理プログラム。
PCT/JP2020/003785 2020-01-31 2020-01-31 データ処理装置及びデータ処理プログラム WO2021152849A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
PCT/JP2020/003785 WO2021152849A1 (ja) 2020-01-31 2020-01-31 データ処理装置及びデータ処理プログラム
JP2021574421A JP7409400B2 (ja) 2020-01-31 2020-01-31 データ処理装置及びデータ処理プログラム
US17/838,321 US20220312019A1 (en) 2020-01-31 2022-06-13 Data processing device and computer-readable recording medium storing data processing program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2020/003785 WO2021152849A1 (ja) 2020-01-31 2020-01-31 データ処理装置及びデータ処理プログラム

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US17/838,321 Continuation US20220312019A1 (en) 2020-01-31 2022-06-13 Data processing device and computer-readable recording medium storing data processing program

Publications (1)

Publication Number Publication Date
WO2021152849A1 true WO2021152849A1 (ja) 2021-08-05

Family

ID=77079801

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2020/003785 WO2021152849A1 (ja) 2020-01-31 2020-01-31 データ処理装置及びデータ処理プログラム

Country Status (3)

Country Link
US (1) US20220312019A1 (ja)
JP (1) JP7409400B2 (ja)
WO (1) WO2021152849A1 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023032518A1 (en) * 2021-09-06 2023-03-09 Nec Corporation Data compression system and method of using
WO2023047516A1 (ja) * 2021-09-24 2023-03-30 富士通株式会社 画像処理システム、符号化装置、符号化方法及び符号化プログラム
WO2023181323A1 (ja) * 2022-03-25 2023-09-28 富士通株式会社 画像処理システム、画像処理装置、画像処理方法及び画像処理プログラム

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003124815A (ja) * 2001-10-15 2003-04-25 Japan Science & Technology Corp 部分選択変換装置、部分選択変換方法及び部分選択変換プログラム
JP2016025494A (ja) * 2014-07-22 2016-02-08 ルネサスエレクトロニクス株式会社 画像受信装置、画像伝送システムおよび画像受信方法
JP2016046707A (ja) * 2014-08-25 2016-04-04 ルネサスエレクトロニクス株式会社 画像通信装置、画像送信装置および画像受信装置
JP2017073755A (ja) * 2015-10-09 2017-04-13 キヤノン株式会社 符号化装置及びその制御方法、プログラム並びに記憶媒体

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003124815A (ja) * 2001-10-15 2003-04-25 Japan Science & Technology Corp 部分選択変換装置、部分選択変換方法及び部分選択変換プログラム
JP2016025494A (ja) * 2014-07-22 2016-02-08 ルネサスエレクトロニクス株式会社 画像受信装置、画像伝送システムおよび画像受信方法
JP2016046707A (ja) * 2014-08-25 2016-04-04 ルネサスエレクトロニクス株式会社 画像通信装置、画像送信装置および画像受信装置
JP2017073755A (ja) * 2015-10-09 2017-04-13 キヤノン株式会社 符号化装置及びその制御方法、プログラム並びに記憶媒体

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023032518A1 (en) * 2021-09-06 2023-03-09 Nec Corporation Data compression system and method of using
US11764806B2 (en) 2021-09-06 2023-09-19 Nec Corporation Data compression system and method of using
WO2023047516A1 (ja) * 2021-09-24 2023-03-30 富士通株式会社 画像処理システム、符号化装置、符号化方法及び符号化プログラム
WO2023181323A1 (ja) * 2022-03-25 2023-09-28 富士通株式会社 画像処理システム、画像処理装置、画像処理方法及び画像処理プログラム

Also Published As

Publication number Publication date
JPWO2021152849A1 (ja) 2021-08-05
JP7409400B2 (ja) 2024-01-09
US20220312019A1 (en) 2022-09-29

Similar Documents

Publication Publication Date Title
WO2021152849A1 (ja) データ処理装置及びデータ処理プログラム
US20200213587A1 (en) Method and apparatus for filtering with mode-aware deep learning
US7843995B2 (en) Temporal and spatial analysis of a video macroblock
US20180124431A1 (en) In-loop post filtering for video encoding and decoding
CN108495135B (zh) 一种屏幕内容视频编码的快速编码方法
US20220284632A1 (en) Analysis device and computer-readable recording medium storing analysis program
US10536696B2 (en) Image encoding device and image encoding method
CN110971901A (zh) 卷积神经网络的处理方法及装置
EP4305839A1 (en) Learned b-frame coding using p-frame coding system
US11399198B1 (en) Learned B-frame compression
CN112399177B (zh) 一种视频编码方法、装置、计算机设备及存储介质
US20210266570A1 (en) Region of interest quality controllable video coding techniques
US20220277548A1 (en) Image processing system, image processing method, and storage medium
WO2022130497A1 (ja) 解析装置、解析方法及び解析プログラム
US20210306641A1 (en) Transcoder target bitrate prediction techniques
JP2022078735A (ja) 画像処理装置、画像処理プログラム、画像認識装置、画像認識プログラム及び画像認識システム
US20230014220A1 (en) Image processing system, image processing device, and computer-readable recording medium storing image processing program
US9471992B2 (en) Moving image processing apparatus, moving image processing method, and computer product
Dai et al. Cinet: Redesigning deep neural networks for efficient mobile-cloud collaborative inference
Moniruzzaman et al. Structure‐Aware Image Translation‐Based Long Future Prediction for Enhancement of Ground Robotic Vehicle Teleoperation
KR102678872B1 (ko) 영상 특성에 기초한 동영상 초해상화 방법 및 그 시스템
US20240046527A1 (en) End-to-end optimization of adaptive spatial resampling towards machine vision
WO2022036678A1 (en) Multi-level region-of-interest quality controllable video coding techniques
CN116760983B (zh) 用于视频编码的环路滤波方法及装置
US20230206611A1 (en) Image processing device, and image processing method

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

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2021574421

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20916667

Country of ref document: EP

Kind code of ref document: A1