WO2023190053A1 - 画像符号化装置、画像復号装置、画像符号化方法、及び画像復号方法 - Google Patents

画像符号化装置、画像復号装置、画像符号化方法、及び画像復号方法 Download PDF

Info

Publication number
WO2023190053A1
WO2023190053A1 PCT/JP2023/011563 JP2023011563W WO2023190053A1 WO 2023190053 A1 WO2023190053 A1 WO 2023190053A1 JP 2023011563 W JP2023011563 W JP 2023011563W WO 2023190053 A1 WO2023190053 A1 WO 2023190053A1
Authority
WO
WIPO (PCT)
Prior art keywords
image
filter
processing unit
bitstream
encoding device
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
PCT/JP2023/011563
Other languages
English (en)
French (fr)
Inventor
ジンイン ガオ
ハン ブン テオ
チョン スン リム
プラビーン クマール ヤーダブ
清史 安倍
孝啓 西
正真 遠間
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Intellectual Property Corp of America
Original Assignee
Panasonic Intellectual Property Corp of America
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 Panasonic Intellectual Property Corp of America filed Critical Panasonic Intellectual Property Corp of America
Priority to EP23780064.4A priority Critical patent/EP4485923A4/en
Priority to CN202380031418.6A priority patent/CN118947114A/zh
Publication of WO2023190053A1 publication Critical patent/WO2023190053A1/ja
Priority to US18/899,188 priority patent/US20250024033A1/en
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

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/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/117Filters, e.g. for pre-processing or post-processing
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/20Image enhancement or restoration using local operators
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/70Denoising; Smoothing
    • 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/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • 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
    • 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/172Methods 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 picture, frame or field
    • 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/184Methods 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 bits, e.g. of the compressed video stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • H04N19/82Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop
    • 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
    • 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
    • H04N19/86Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving reduction of coding artifacts, e.g. of blockiness
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20024Filtering details
    • G06T2207/20028Bilateral filtering
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20024Filtering details
    • G06T2207/20032Median filtering
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]

Definitions

  • the present disclosure relates to an image encoding device, an image decoding device, an image encoding method, and an image decoding method.
  • Patent Document 1 discloses a video encoding and decoding method using an adaptive combined pre-filter and post-filter.
  • Patent Document 2 discloses a method of encoding image data for loading into an artificial intelligence (AI) integrated circuit.
  • AI artificial intelligence
  • the present disclosure aims to improve the bit efficiency of a bitstream transmitted from an image encoding device to an image decoding device.
  • An image encoding device includes a filter processing unit that generates a first image by performing filter processing on an input image, and a bit processing unit that generates a first image by performing encoding processing on the first image.
  • an encoding processing unit that generates a stream and transmits the bit stream to an image decoding device, and the filter processing unit has a plurality of filters of different types, and the filter processing unit has a plurality of filters of different types, and the encoding processing unit generates a stream and transmits the bit stream to an image decoding device. Based on the indicated usage information, one filter is selected from the plurality of filters and applied to the input image.
  • FIG. 1 is a diagram showing a simplified configuration of an image processing system according to an embodiment of the present disclosure.
  • FIG. 3 is a diagram showing a simplified configuration of a task processing unit.
  • FIG. 2 is a diagram illustrating object detection and object segmentation as examples of machine tasks.
  • FIG. 3 is a diagram showing object tracking, action recognition, and pose estimation as examples of machine tasks.
  • FIG. 3 is a diagram showing a simplified configuration of a filter processing section.
  • FIG. 3 is a diagram showing an example of a plurality of filters of different types.
  • FIG. 3 is a diagram showing an example of a plurality of filters of different types.
  • FIG. 3 is a diagram showing an example of a plurality of filters of different types.
  • FIG. 3 is a diagram showing an example of a plurality of filters of different types.
  • FIG. 3 is a diagram showing an example of a plurality of filters of different types.
  • FIG. 3 is a diagram showing an example of a plurality of filters of different types.
  • FIG. 3 is a diagram showing an example of a plurality of filters of different types.
  • FIG. 3 is a diagram showing an example of a plurality of filters of different types.
  • FIG. 3 is a diagram showing an example of a plurality of filters of different types.
  • FIG. 3 is a diagram showing an example of a plurality of filters of different types.
  • FIG. 3 is a diagram showing an example of a plurality of filters of different types.
  • FIG. 3 is a diagram illustrating an example of a lookup table that defines filter selection based on usage information. It is a figure showing the 1st example of composition of a filter. It is a figure showing the 2nd example of composition of a filter. It is a figure which shows the 3rd example of a structure of a filter.
  • FIG. 2 is a diagram showing a first example of a data structure of a bitstream.
  • FIG. 7 is a diagram illustrating a second example of a bitstream data structure.
  • FIG. 3 is a diagram illustrating a first example of SEI message syntax regarding filter information.
  • FIG. 6 is a diagram illustrating a second example of SEI message syntax regarding filter information.
  • FIG. 6 is a diagram for explaining an example in which a setting unit sets a threshold value regarding an IOU.
  • 3 is a flowchart showing the flow of processing executed by the image encoding device.
  • 3 is a flowchart showing the flow of processing executed by the image decoding device.
  • VCM Video Coding for Machines
  • machines may be able to communicate with each other and perform tasks without human intervention, or in other cases, additional human processing may be required on a particular decompressed stream.
  • additional human processing may be required on a particular decompressed stream.
  • a human "supervisor" searches for a specific person or scene in the video.
  • bitstreams may be used by both humans and machines.
  • features can be used for image enhancement functions for humans and object detection and segmentation for machines.
  • a typical system architecture includes a pair of image encoding device and image decoding device.
  • the input of the system is a moving image, a still image, or a feature amount.
  • machine tasks include object detection, object segmentation, object tracking, action recognition, pose estimation, or any combination thereof. Human vision could be one of the possible use cases along with machine tasks.
  • a bit stream of the highest image quality assuming human vision is always transmitted from the image encoding device to the image decoding device, so there is a problem that the amount of transmitted codes increases and bit efficiency is poor.
  • the present inventor has proposed that the image encoding device performs appropriate filter processing on the input image based on usage information indicating the image usage on the image decoding device side.
  • the present disclosure was conceived based on the knowledge that bit efficiency can be improved in the transmission of a bit stream from a device to an image decoding device.
  • An image encoding device includes a filter processing unit that generates a first image by performing filter processing on an input image, and a filter processing unit that generates a first image by performing encoding processing on the first image.
  • an encoding processing unit that generates a bitstream and transmits the bitstream to an image decoding device; the filter processing unit has a plurality of filters of different types; One filter is selected from the plurality of filters and applied to the input image based on usage information indicating.
  • the filter processing unit has a plurality of filters of different types, and selects and inputs one filter from the plurality of filters based on usage information indicating the image usage on the image decoding device side. Apply to image. As a result, it is possible to improve bit efficiency in transmitting a bit stream from the image encoding device to the image decoding device.
  • the plurality of filters include a noise removal filter, a sharpening filter, a bit depth conversion filter, a color space conversion filter, a resolution conversion filter, and a neural It is preferable to include at least one filter using a network.
  • the filter processing unit can apply an appropriate filter to the input image according to the image usage on the image decoding device side.
  • the noise removal filter is at least one of a low-pass filter, a Gaussian filter, a smoothing filter, an averaging filter, a bilateral filter, and a median filter. It is good to include one.
  • noise in the input image is removed by applying at least one of a low-pass filter, a Gaussian filter, a smoothing filter, an averaging filter, a bilateral filter, and a median filter to the input image. I can do it.
  • the resolution conversion filter preferably includes a downsampling filter that reduces the resolution of the first image from the resolution of the input image.
  • the image application preferably includes at least one machine task and human vision.
  • the filter that reduces the amount of code is applied, and when the image usage is human vision, a filter that does not reduce the amount of code is applied compared to the case of a machine task. You can choose to do so.
  • the filter processing unit inputs the code amount of the first image by the filter processing. It is better to reduce the amount of code compared to the image code amount.
  • bit efficiency is improved in transmitting a bitstream from an image encoding device to an image decoding device by applying a filter that reduces the amount of code when the image application is a machine task. becomes possible.
  • the filter processing unit defines a non-important region that is not important for the machine task in the input image, and It is preferable that the code amount of the first image is reduced from the code amount of the input image by deleting information.
  • the image decoding device machine tasks can be executed properly on the side.
  • the filter processing section defines an important region that is important for the machine task in the input image, and performs the filter processing. It is a good idea to emphasize the important areas mentioned above.
  • the filter processing unit emphasizes important areas through filter processing, it becomes possible to appropriately execute the machine task on the image decoding device side.
  • the filter processing unit when the image application is the human vision, the filter processing unit is configured to , it is preferable that the code amount of the first image is not reduced by the filtering process.
  • the ninth aspect when the image application is human vision, by applying a filter that does not reduce the amount of code compared to the case of machine tasks, it is possible to appropriately execute human vision on the image decoding device side. Become.
  • the encoding processing unit includes filter information regarding the filter applied to the input image by the filter processing unit. is preferably stored in the bitstream.
  • the encoding processing unit may store the filter information in a header of the bitstream.
  • the image decoding device can easily extract the filter information from the bitstream.
  • the header preferably has an SEI area
  • the encoding processing unit stores the filter information in the SEI area.
  • the filter information by storing the filter information in the SEI area, it becomes possible to easily handle the filter information as additional information.
  • An image decoding device includes a decoding processing unit that receives a bitstream including an encoded image from the image encoding device and generates a decoded image by decoding the bitstream; a task processing unit that executes a machine task based on the decoded image, and the bitstream further includes filter information regarding a filter applied to the input image by the image encoding device according to the machine task, and the task processing unit executes the machine task based on the decoded image; A setting section extracts filter information and sets parameter values used when the task processing section executes the machine task based on the filter information.
  • the setting unit extracts filter information from the bitstream, and sets parameter values used when the task processing unit executes the machine task based on the filter information.
  • the task processing unit it becomes possible for the task processing unit to perform appropriate task processing according to the filter applied to the input image by the image encoding device.
  • the image encoding device generates a first image by performing filter processing on an input image, and performs encoding processing on the first image.
  • the bitstream is transmitted to an image decoding device, and in the filter processing, one filter is selected from a plurality of filters of different types based on usage information indicating the image usage on the image decoding device side. Select and apply a filter to the input image.
  • one filter is selected from a plurality of filters of different types and applied to the input image, based on usage information indicating the image usage on the image decoding device side.
  • an image decoding device receives a bitstream including a coded image from the image coding device, generates a decoded image by decoding the bitstream, A machine task is executed based on the decoded image, the bitstream further includes filter information regarding a filter applied by the image encoding device to the input image in response to the machine task, and the filter information is extracted from the bitstream. and setting parameter values to be used when executing the machine task based on the filter information.
  • filter information is extracted from the bitstream, and parameter values used when executing the machine task are set based on the filter information.
  • the image encoding device it becomes possible for the image encoding device to perform appropriate task processing according to the filter applied to the input image.
  • FIG. 1 is a diagram showing a simplified configuration of an image processing system according to an embodiment of the present disclosure.
  • the image processing system includes an image encoding device 10, a network Nw, and an image decoding device 20.
  • the image encoding device 10 includes a filter processing section 11 and an encoding processing section 12.
  • the filter processing unit 11 receives image data D1 of an input image and usage information D2 indicating the usage of the image on the image decoding device 20 side.
  • the input image includes a moving image, a still image, or a feature amount.
  • the filter processing unit 11 has a plurality of filters of different types.
  • the filter processing unit 11 selects one filter from a plurality of filters based on the usage information D2 and applies it to the input image.
  • the filter processing unit 11 generates a first image by performing filter processing on the input image using the selected filter, and outputs image data D3 of the first image.
  • the encoding processing unit 12 generates a bitstream D4 regarding the encoded image by performing encoding processing on the first image, and transmits the bitstream D4 to the image decoding device 20 via the network Nw.
  • the network Nw is the Internet, WAN (Wide Area Network), LAN (Local Area Network), or any combination thereof. Further, the network Nw is not necessarily limited to a two-way communication network, but may be a one-way communication network that transmits broadcast waves such as terrestrial digital broadcasting or satellite broadcasting. Further, the network Nw may be a recording medium such as a DVD (Digital Versatile Disc) or a BD (Blue-Ray Disc) on which the bitstream D4 is recorded.
  • DVD Digital Versatile Disc
  • BD Blue-Ray Disc
  • the image decoding device 20 includes a decoding processing section 21, a setting section 22, and a task processing section 23.
  • the decoding processing unit 21 receives the bitstream D4 from the image encoding device 10 via the network Nw, generates a decoded image by decoding the bitstream D4, and outputs image data D5 of the decoded image.
  • the task processing unit 23 uses the decoded image to execute a machine task according to usage information D8 indicating the usage of the image.
  • the bitstream D4 includes filter information D6 indicating a filter applied to the input image by the image encoding device 10 according to the machine task.
  • the setting unit 22 extracts filter information D6 from the bitstream D4, sets parameter values to be used by the task processing unit 23 when executing the machine task based on the filter information D6, and outputs the setting information D7. do.
  • the parameter values include a threshold for confidence score or a threshold for Intersection Over Union (IOU) for machine task analysis.
  • the task processing unit 23 executes a machine task using the parameter values indicated by the setting information D7, and outputs result data D9 such as an inference result.
  • the configuration of the image decoding device 20 shown in FIG. 1 is an example, and the configuration is not limited to this example.
  • the setting section 22 may be omitted and the function of the setting section 22 may be implemented in the decoding processing section 21 or the task processing section 23.
  • FIG. 2 is a diagram showing a simplified configuration of the task processing unit 23.
  • Image usage on the image decoding device 20 side includes at least one machine task and human vision.
  • the image application includes multiple machine tasks 30A-30C and human vision 30X.
  • the setting unit 22 outputs setting information D7B of parameter values used when the task processing unit 23 executes the machine task 30B.
  • the task processing unit 23 executes the machine task 30B based on the image data D5 using the parameter values indicated by the setting information D7B, and outputs result data D9B such as an inference result.
  • FIG. 3 is a diagram showing object detection and object segmentation as examples of machine tasks.
  • object detection attributes of objects included in the input image (in this example, a television and a person) are detected.
  • the position and number of objects in the input image may be detected. In this way, for example, the positions of objects to be recognized may be narrowed down or objects other than those to be recognized may be excluded.
  • Specific applications include, for example, face detection using a camera and pedestrian detection during automated driving.
  • object segmentation pixels in a region corresponding to an object are segmented (or partitioned). This can be used, for example, to help cars drive safely by separating obstacles from the road in autonomous driving, to detect product defects in factories, and to identify terrain in satellite images. Conceivable.
  • FIG. 4 is a diagram showing object tracking, action recognition, and pose estimation as examples of machine tasks.
  • object tracking movement of an object to which an identification number ID is assigned is tracked. Possible uses include, for example, counting the number of users of facilities such as stores and analyzing the movements of athletes. If the processing speed is further increased, it will be possible to track objects in real time, and it will also be possible to apply it to camera processing such as autofocus.
  • action recognition the type of motion of an object (in this example, "riding a bicycle” or "walking" is detected. For example, by using it in a security camera, it can be applied to prevent and detect criminal behavior such as robbery and shoplifting, and to prevent forgetting work at a factory.
  • pose estimation the pose of an object is detected by detecting key points and joints. For example, it can be used in industrial fields such as improving work efficiency in factories, security fields such as detecting abnormal behavior, and fields such as healthcare and sports.
  • FIG. 5 is a diagram showing a simplified configuration of the filter processing section 11.
  • the filter processing unit 11 includes a plurality of filters 40 of different types that can be selected depending on the image usage on the image decoding device 20 side.
  • the type includes at least one of the shape, size, and coefficient value of the filter.
  • the filter processing unit 11 includes filters 40A to 40C corresponding to machine tasks 30A to 30C, and filter 40X corresponding to human vision 30X.
  • the usage information D8 selects the machine task 30B
  • the usage information D2 selects the filter 40B corresponding to the machine task 30B.
  • the filter processing unit 11 generates a first image by performing filter processing on the input image using the filter 40B, and outputs image data D3B of the first image.
  • the filters 40A to 40C corresponding to the machine tasks are filters that reduce the code amount of the first image from the code amount of the input image by filter processing. As will be described later, the filters 40A to 40C may be filters that emphasize important regions exhibiting features important to the machine task while reducing the amount of code in non-important regions that are unimportant to the machine task. Filters 40A to 40C corresponding to machine tasks include at least one of a noise removal filter, a sharpening filter, a bit depth conversion filter, a color space conversion filter, a resolution conversion filter, and a filter using a neural network.
  • the noise removal filter includes at least one of a low pass filter, a Gaussian filter, a smoothing filter, an averaging filter, a bilateral filter, and a median filter, which remove noise by reducing detailed information of the input image.
  • the sharpening filter includes an edge detection filter or an edge enhancement filter, and specifically includes a Laplacian filter, a Gaussian-Laplacian filter, a Sobel filter, a Prewitt filter, or a Canny edge detection filter.
  • the bit depth conversion filter converts the bit depth of the luminance signal and/or color signal between the input image and the first image.
  • the amount of code is reduced by truncating the lower bits of the color signal of the first image and converting the bit depth of the first image to be smaller than the bit depth of the input image.
  • the color space conversion filter converts the color space between the input image and the first image.
  • the amount of code is reduced by converting the YUV444 color space in the input image to the YUV422, YUV420, or YUV400 color space in the first image.
  • the resolution conversion filter converts the image resolution between the input image and the first image.
  • the resolution conversion filter includes a downsampling filter that reduces the resolution of the first image from the resolution of the input image.
  • the resolution conversion filter may include an upsampling filter that increases the resolution of the first image over the resolution of the input image.
  • the filters 40A to 40C corresponding to the machine tasks are, for example, H.
  • the filter may be a deblocking filter, an ALF filter, a CCALF filter, an SAO filter, an LMCS filter, or any combination thereof, which are defined in H.266/VVC (Versatile Video Codec).
  • the filter 40X compatible with human vision is a filter that does not reduce the code amount of the first image from the code amount of the input image through filter processing.
  • the filter 40X compatible with human vision includes a bypass filter that outputs the input image as it is as a first image.
  • the filter 40X may be a filter that reduces the code amount of the first image from the code amount of the input image through filter processing, but the effect of reducing the code amount is more suppressed than that of the filters 40A to 40C. Further, the filter 40X may be a filter that emphasizes important areas of the input image, but the emphasizing effect is more suppressed than that of the filters 40A to 40C.
  • FIG. 6A to 6I are diagrams showing examples of a plurality of filters 40 of different types.
  • N is the size of the filter corresponding to the number of filter coefficient values.
  • 6F and 6G show noise removal filters using a 5 ⁇ 5 Gaussian filter, the filter in FIG. 6F has a relatively strong filter strength, and the filter in FIG. 6G has a relatively weak filter strength.
  • N is the size of the filter corresponding to the number of filter coefficient values.
  • FIG. 6H shows an edge detection filter using a 7 ⁇ 7 Gaussian-Laplacian filter.
  • the plurality of filters 40 of different types may have different shapes, different sizes, and different coefficient values.
  • FIG. 6I shows a filter using a neural network.
  • the neural network has a convolution layer L1, a pooling layer L2, and a fully connected layer L3.
  • the image data of the convolution layer L1 is generated by applying the convolution filter F1 to the image data D1 of the input image
  • the image data of the pooling layer L2 is generated by applying the pooling filter F2 to the image data of the convolution layer L1.
  • Image data is generated.
  • the image data D0 of the prediction residual is output from the fully connected layer L3, and the image data D3 of the first image is output by adding the image data D1 and the image data D0.
  • FIG. 7 is a diagram showing an example of a lookup table that defines filter selection based on usage information D2.
  • the lookup table is held by the filter processing unit 11.
  • the filter processing unit 11 selects a weak noise removal filter and a weak sharpening filter.
  • the filter processing unit 11 selects a weak noise removal filter.
  • the filter processing unit 11 selects a strong noise removal filter and a weak sharpening filter.
  • the filter processing unit 11 emphasizes dynamic content such as edges of objects while removing redundant information of static content such as the background. Therefore, select a strong noise removal filter and a strong sharpening filter.
  • the image usage indicated by usage information D2 is a pose estimation machine task
  • the pose estimation model (HRNet) learns high-resolution images to detect human key points such as ears or eyes, so the filter is The processing unit 11 emphasizes the details of the image by selecting a strong sharpening filter.
  • the filter processing unit 11 selects a strong noise removal filter for an object tracking machine task, and selects a weak noise removal filter for an object detection machine task.
  • Object detection is a process of detecting a target object in an image
  • object tracking is a process of tracking the trajectory of an object in consecutive frames in a video.
  • object tracking requires the edges and shape of the object
  • object detection requires detailed information about the object. Therefore, in object tracking, a strong noise removal filter is applied to remove detailed information, and in object detection, a weak noise removal filter is applied to remove only unnecessary information.
  • the filter processing unit 11 selects a large size noise removal filter for the object tracking machine task, and selects a small size noise removal filter for the object detection machine task.
  • a small-sized noise removal filter has low control performance for frequency components, so it removes noise in a wide range of frequency components, whereas a large-sized noise removal filter has high control performance for frequency components, so it removes noise in a specific range. Can remove noise of frequency components.
  • a small size filter has a smaller code amount reduction effect than a large size filter, and in another case, a small size filter has a larger code amount reduction effect than a large size filter.
  • the filter processing unit 11 selects a filter with a large bit depth and a wide output color range in the object tracking machine task, and selects a small bit depth filter with a narrow output color range in the object detection machine task. Select depth filter. By applying a filter with a small bit depth, the effect of reducing the amount of code can be enhanced.
  • the filter processing unit 11 selects different color space filters for the object tracking machine task and the object detection machine task.
  • the filter processing unit 11 selects a downsampling filter with a large output resolution and a small scale factor in the object tracking machine task, and selects a downsampling filter with a small output resolution and a large scale factor in the object detection machine task. Select a factor downsampling filter.
  • Each filter 40 shown in FIG. 5 may be composed of one filter, a plurality of filters, or at least one filter and at least one image processing section. .
  • FIG. 8 is a diagram showing a first configuration example of the filter 40.
  • the filter 40 is composed of one filter 51.
  • the filter 51 is, for example, a Gaussian filter.
  • the filter 51 outputs image data D3 from which noise has been removed by applying a Gaussian filter to the image data D1.
  • FIG. 9 is a diagram showing a second configuration example of the filter 40.
  • the filter 40 includes two filters 52 and 53, two image processing units 61 and 62, and an addition processing unit 63.
  • the filter 52 is, for example, a Gaussian-Laplacian filter
  • the filter 53 is, for example, a Gaussian filter
  • the image processing section 61 is, for example, an edge extraction processing section
  • the image processing section 62 is, for example, a background extraction processing section.
  • the filter 52 applies a Gaussian-Laplacian filter to the image data D1 of the input image, thereby outputting an edge map indicating the location of edges in the image.
  • the filter 53 outputs image data from which noise has been removed by applying a Gaussian filter to the image data D1 of the input image.
  • the image processing unit 61 outputs an edge image by extracting edges from the input image based on the image data D1 and the edge map.
  • the image processing unit 62 outputs a background image by extracting the background from the input image based on the image data from which noise has been removed and the edge map.
  • the addition processing unit 63 outputs image data D3 of the first image by adding the edge image and the background image.
  • the filter processing unit 11 defines the background region in the input image as a non-important region that is not important for the machine task, and deletes detailed information (that is, high frequency range) of the background region using the filter 53.
  • the code amount of the first image is reduced from the code amount of the input image.
  • FIG. 10 is a diagram showing a third configuration example of the filter 40.
  • the filter 40 includes two filters 54 and 55, one image processing section 64, and an addition processing section 65.
  • the filter 54 is, for example, a face detection filter using a neural network
  • the filter 55 is, for example, an averaging filter
  • the image processing section 64 is, for example, a region division processing section.
  • the filter 54 detects the face of a person included in the image data D1 of the input image, and outputs a bounding box of the face that defines the position coordinates of the face.
  • the image processing unit 64 separates the input image into a non-face region and a face region based on the image data D1 and the bounding box of the face.
  • the filter 55 outputs a blurred face image by averaging the face area.
  • the addition processing unit 65 outputs image data D3 of the first image by adding the image of the area other than the face and the blurred face image.
  • facial details are not important in object tracking machine tasks, so blurring the face can reduce the amount of code and protect privacy.
  • the filter processing unit 11 defines the face area in the input image as a non-important area that is not important for the machine task, and the filter 55 deletes information on details (that is, high frequency range) of the face area. By doing so, the code amount of the first image is reduced from the code amount of the input image.
  • FIG. 11 is a diagram showing a fourth configuration example of the filter 40.
  • the filter 40 includes three filters 56 to 58, one image processing section 66, and an addition processing section 67.
  • the filter 56 is, for example, a foreground detection filter using a neural network
  • the filter 57 is, for example, a sharpening filter
  • the filter 58 is, for example, a noise removal filter
  • the image processing section 66 is, for example, a region division processing section.
  • the filter 56 detects a foreground corresponding to an important subject included in the image data D1 of the input image, and outputs a foreground bounding box that defines the position coordinates of the foreground.
  • the image processing unit 66 separates the input image into a foreground area and a background area other than the foreground area based on the image data D1 and the foreground bounding box.
  • the filter 57 sharpens the foreground region and outputs a foreground image that has been sharpened by edge emphasis or the like.
  • the filter 58 outputs a background image from which noise has been removed by performing noise removal processing on the background region.
  • the addition processing unit 67 outputs image data D3 of the first image by adding the sharpened foreground image and the background image from which noise has been removed. In the example of FIG.
  • the filter processing unit 11 defines the background region in the input image as a non-important region that is not important for the machine task, and deletes detailed information (that is, high frequency range) of the background region using the filter 58.
  • the code amount of the first image is reduced from the code amount of the input image.
  • the filter processing unit 11 defines a foreground region in the input image as an important region showing features important for the machine task, and emphasizes the foreground region with the filter 57, thereby performing action recognition or pose processing. Improving the accuracy of machine tasks such as estimation.
  • FIG. 12 is a diagram showing a first example of the data structure of the bitstream D4.
  • the bitstream D4 has a header H in which management information and the like are stored, and a payload P in which image data is stored.
  • the encoding processing unit 12 stores encoded data 70 of filter information D6 indicating the filter applied to the input image by the image encoding device 10 in accordance with the machine task at a predetermined location of the payload P.
  • FIG. 13 is a diagram showing a second example of the data structure of the bitstream D4. Similar to FIG. 12, the bitstream D4 has a header H and a payload P.
  • the encoding processing unit 12 stores the encoded data 70 of the filter information D6 in a predetermined location of the header H.
  • the predetermined location is, for example, a SEI (Supplemental Enhancement Information) area for storing additional information.
  • the predetermined location may be VPS, SPS, PPS, PH, SH, APS, tile header, or the like.
  • FIG. 14 is a diagram showing a first example of SEI message syntax regarding filter information D6.
  • prefilter_type_idc specifies the type of filter using, for example, 3-bit flag information; for example, if the value is "0", the noise removal filter is used, if the value is “1”, the sharpening filter is used, and if the value is "2", the filter type is specified.
  • a bit depth conversion filter "3” indicates a color space conversion filter, "4" indicates a resolution conversion filter, and "5" indicates other filters.
  • the filter_strength_level_idc specifies the strength of the filter using, for example, 3-bit flag information, and when the value is "0", it represents the weakest filter strength, and the larger the value, the stronger the filter strength.
  • the maximum value of the filter strength is "7" or any integer.
  • input_bit_depth_minus8 specifies the bit depth of the input image before applying filter processing using, for example, 3-bit flag information, and the bit depth of the input image is "8", “10", “12”, or any integer.
  • input_color_format_idc specifies the color space of the input image before applying filter processing, for example, using 3-bit flag information.
  • the color space that can be specified is monochrome, YUV444, YUV422, YUV420, YUV400, or any color space.
  • the scale_factor specifies the ratio between the resolution of the input image and the resolution of the first image. For example, if the resolution of the input image is 1920 x 1080 and the resolution of the first image is 960 x 540, the resolution in the vertical and horizontal directions will be 1/2, so the scale_factor_nominator will be "1" and the scale_factor_denominator becomes "2".
  • scale_factor_nominator and scale_factor_denominator are each, for example, 3-bit flag information, and any integer can be specified.
  • FIG. 15 is a diagram showing a second example of SEI message syntax regarding filter information D6.
  • prefilter_hint_size_y specifies the vertical size of the filter coefficient or correlation array, and is an arbitrary integer from “1" to "15”, for example.
  • prefilter_hint_size_x specifies the horizontal size of the filter coefficient or correlation array, and is an arbitrary integer from “1" to "15”, for example.
  • prefilter_hint_type specifies the type of filter using 2-bit flag information, for example, if the value is "0", a two-dimensional FIR filter is selected, if the value is "1", two one-dimensional FIR filters are selected, and if the value is "2" ” represents a cross-correlation matrix.
  • prefilter_hint_value specifies the filter coefficient or the element of the cross-correlation matrix.
  • FIG. 16 is a diagram for explaining an example in which the setting unit 22 sets a threshold value related to IOU as a parameter value used when executing a machine task.
  • IOU is a value used to express the degree of overlap between a predicted bounding box and a true bounding box in object detection.
  • the predicted bounding box is shown with a dashed line
  • the true bounding box is shown with a dash-dotted line.
  • the IOU is calculated as the ratio of the area (numerator) of the region containing both bounding boxes to the area (denominator) of the region containing at least one bounding box.
  • the setting unit 22 extracts filter information D6 from the bitstream D4, sets a threshold value regarding the IOU based on the filter information D6, and inputs the setting information D7 to the task processing unit 23.
  • the task processing unit 23 executes the machine task using the threshold value regarding the IOU indicated by the setting information D7.
  • FIG. 17 is a flowchart showing the flow of processing executed by the image encoding device 10.
  • step SP101 the filter processing unit 11 selects one filter from a plurality of filters based on the usage information D2.
  • step SP102 the filter processing unit 11 generates a first image by applying the filter selected in step SP101 to the input image and performing filter processing.
  • step SP103 the encoding processing unit 12 generates a bitstream by performing encoding processing on the first image.
  • the encoding processing unit 12 encodes the filter information D6 indicating the filter applied to the input image by the filter processing unit 11, and stores encoded data 70 of the filter information D6 in the bitstream D4.
  • the encoding processing unit 12 transmits the generated bitstream D4 to the image decoding device 20 via the network Nw.
  • FIG. 18 is a flowchart showing the flow of processing executed by the image decoding device 20.
  • the decoding processing unit 21 receives the bitstream D4 from the image encoding device 10 via the network Nw, and generates a decoded image by decoding the bitstream D4.
  • step SP202 the setting unit 22 extracts filter information D6 from the decoded bitstream D4, and sets parameter values to be used when the task processing unit 23 executes the machine task based on the filter information D6. do.
  • step SP203 the task processing unit 23 executes a machine task using the decoded image decoded in step SP201 and the parameter values set in step SP202, and outputs result data D9 such as an inference result.
  • the filter processing unit 11 has a plurality of filters of different types, and selects one filter from the plurality of filters based on usage information indicating the image usage on the image decoding device 20 side. applied to the input image. As a result, it is possible to improve bit efficiency in transmitting the bit stream D4 from the image encoding device 10 to the image decoding device 20.
  • the filter processing unit 11 can apply an appropriate filter to the input image according to the image usage on the image decoding device 20 side.
  • a noise removal filter at least one of a low-pass filter, a Gaussian filter, a smoothing filter, an averaging filter, a bilateral filter, and a median filter is applied to the input image.
  • Image noise can be removed.
  • a filter that reduces the code amount is applied, and when the image application is human vision, a filter that does not reduce the code amount compared to the case of a machine task is applied. It is possible to choose to apply.
  • the bit stream D4 is transmitted from the image encoding device 10 to the image decoding device 20. It becomes possible to improve efficiency.
  • the filter processing unit 11 emphasizes important regions through filter processing, so that the image decoding device 20 side can appropriately execute the machine task.
  • the image application is human vision
  • a filter that does not reduce the amount of code compared to the case of machine tasks it is possible to appropriately execute human vision on the image decoding device 20 side. becomes possible.
  • the image decoding device 20 can easily extract the filter information D6 from the bitstream D4.
  • the filter information D6 by storing the filter information D6 in the SEI area, it becomes possible to easily handle the filter information D6 as additional information.
  • the setting unit 22 extracts the filter information D6 from the bitstream D4, and based on the filter information D6, sets the parameter value to be used when the task processing unit 23 executes the machine task. Set. As a result, it becomes possible for the task processing unit 23 to perform appropriate task processing according to the filter applied to the input image by the image encoding device 10.
  • the present disclosure is particularly useful for application to an image processing system that includes an image encoding device that transmits images and an image decoding device that receives images.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Image Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

画像符号化装置は、入力画像に対してフィルタ処理を行うことによって第1画像を生成するフィルタ処理部と、前記第1画像に対して符号化処理を行うことによってビットストリームを生成し、当該ビットストリームを画像復号装置に送信する符号化処理部と、を備え、前記フィルタ処理部は、種類が異なる複数のフィルタを有し、前記画像復号装置側での画像用途を示す用途情報に基づいて、前記複数のフィルタから一のフィルタを選択して前記入力画像に適用する。

Description

画像符号化装置、画像復号装置、画像符号化方法、及び画像復号方法
 本開示は、画像符号化装置、画像復号装置、画像符号化方法、及び画像復号方法に関する。
 特許文献1には、適応型結合プレフィルタ及びポストフィルタを用いた、ビデオ符号化及び復号化方法が開示されている。
 特許文献2には、人工知能(AI)集積回路にロードするための、画像データの符号化方法が開示されている。
米国特許第9883207号明細書 米国特許第10452955号明細書
 本開示は、画像符号化装置から画像復号装置へ伝送されるビットストリームのビット効率を向上することを目的とする。
 本開示の一態様に係る画像符号化装置は、入力画像に対してフィルタ処理を行うことによって第1画像を生成するフィルタ処理部と、前記第1画像に対して符号化処理を行うことによってビットストリームを生成し、当該ビットストリームを画像復号装置に送信する符号化処理部と、を備え、前記フィルタ処理部は、種類が異なる複数のフィルタを有し、前記画像復号装置側での画像用途を示す用途情報に基づいて、前記複数のフィルタから一のフィルタを選択して前記入力画像に適用する。
本開示の実施形態に係る画像処理システムの構成を簡略化して示す図である。 タスク処理部の構成を簡略化して示す図である。 マシンタスクの一例として、オブジェクト検出及びオブジェクトセグメンテーションを示す図である。 マシンタスクの一例として、オブジェクトトラッキング、アクション認識、及びポーズ推定を示す図である。 フィルタ処理部の構成を簡略化して示す図である。 種類が異なる複数のフィルタの例を示す図である。 種類が異なる複数のフィルタの例を示す図である。 種類が異なる複数のフィルタの例を示す図である。 種類が異なる複数のフィルタの例を示す図である。 種類が異なる複数のフィルタの例を示す図である。 種類が異なる複数のフィルタの例を示す図である。 種類が異なる複数のフィルタの例を示す図である。 種類が異なる複数のフィルタの例を示す図である。 種類が異なる複数のフィルタの例を示す図である。 用途情報に基づくフィルタの選択を規定するルックアップテーブルの例を示す図である。 フィルタの第1の構成例を示す図である。 フィルタの第2の構成例を示す図である。 フィルタの第3の構成例を示す図である。 フィルタの第4の構成例を示す図である。 ビットストリームのデータ構造の第1の例を示す図である。 ビットストリームのデータ構造の第2の例を示す図である。 フィルタ情報に関するSEIメッセージシンタックスの第1の例を示す図である。 フィルタ情報に関するSEIメッセージシンタックスの第2の例を示す図である。 設定部がIOUに関するしきい値を設定する場合の例を説明するための図である。 画像符号化装置が実行する処理の流れを示すフローチャートである。 画像復号装置が実行する処理の流れを示すフローチャートである。
 (本開示の基礎となった知見)
 従来の符号化方式は、ヒューマンビジョンのために、ビットレート制約の条件下で最適な映像の提供を目指すものであった。
 豊富なセンサとともに機械学習又はニューラルネットワークベースのアプリケーションの進展により、コネクテッドカー、ビデオ監視、又はスマートシティ等を含む、大量のデータを扱う多くのインテリジェントプラットフォームが実現されてきた。大量のデータが常に生成されるため、パイプラインに人間を含む従来の方法は、レイテンシ及びスケールの点で非効率的かつ非現実的なものとなっている。
 さらに、伝送及びアーカイブシステムにおいては、よりコンパクトなデータ表現及び低遅延のソリューションが求められるという懸念があり、そのためにVCM(Video Coding for Machines)が導入された。
 あるケースでは、マシン同士が通信をして人間の介在なしでタスクを実行できる場合もあるし、あるいは、解凍された特定のストリームに対して人間による追加の処理が必要な場合もある。例えば監視カメラにおいて人間の「監督者」が映像内の特定の人物又はシーンを検索する場合等である。
 他のケースでは、対応するビットストリームを人間及びマシンの双方が使用する場合もある。コネクテッドカーの場合、人間に対しては画像補正機能に、マシンに対してはオブジェクトの検出及びセグメンテーションに、特徴を利用することができる。
 一般的なシステムアーキテクチャは、画像符号化装置及び画像復号装置のペアを含んでいる。システムの入力は、動画、静止画、又は特徴量である。マシンタスクの例としては、オブジェクト検出、オブジェクトセグメンテーション、オブジェクトトラッキング、アクション認識、ポーズ推定、又はそれらの任意の組み合わせが挙げられる。ヒューマンビジョンは、マシンタスクとともに利用可能なユースケースの一つである可能性がある。
 従来技術によると、画像符号化装置から画像復号装置へ、常にヒューマンビジョンを想定した最高画質のビットストリームが伝送されるため、伝送符号量が増大し、ビット効率が悪いという問題がある。
 かかる問題を解決するために、本発明者は、画像復号装置側の画像用途を示す用途情報に基づいて画像符号化装置側で入力画像に対して適切なフィルタ処理を行うことによって、画像符号化装置から画像復号装置へのビットストリームの伝送においてビット効率を向上できるとの知見を得て、本開示を想到するに至った。
 次に、本開示の各態様について説明する。
 本開示の第1態様に係る画像符号化装置は、入力画像に対してフィルタ処理を行うことによって第1画像を生成するフィルタ処理部と、前記第1画像に対して符号化処理を行うことによってビットストリームを生成し、当該ビットストリームを画像復号装置に送信する符号化処理部と、を備え、前記フィルタ処理部は、種類が異なる複数のフィルタを有し、前記画像復号装置側での画像用途を示す用途情報に基づいて、前記複数のフィルタから一のフィルタを選択して前記入力画像に適用する。
 第1態様によれば、フィルタ処理部は、種類が異なる複数のフィルタを有し、画像復号装置側での画像用途を示す用途情報に基づいて、複数のフィルタから一のフィルタを選択して入力画像に適用する。その結果、画像符号化装置から画像復号装置へのビットストリームの伝送においてビット効率を向上することが可能となる。
 本開示の第2態様に係る画像符号化装置は、第1態様において、前記複数のフィルタは、ノイズ除去フィルタ、鮮鋭化フィルタ、ビット深度変換フィルタ、色空間変換フィルタ、解像度変換フィルタ、及び、ニューラルネットワークを用いたフィルタの少なくとも一つを含むと良い。
 第2態様によれば、フィルタ処理部は、画像復号装置側での画像用途に応じて適切なフィルタを入力画像に適用することが可能となる。
 本開示の第3態様に係る画像符号化装置は、第2態様において、前記ノイズ除去フィルタは、ローパスフィルタ、ガウシアンフィルタ、平滑化フィルタ、平均化フィルタ、バイラテラルフィルタ、及び、メディアンフィルタの少なくとも一つを含むと良い。
 第3態様によれば、ローパスフィルタ、ガウシアンフィルタ、平滑化フィルタ、平均化フィルタ、バイラテラルフィルタ、及び、メディアンフィルタの少なくとも一つを入力画像に適用することにより、入力画像のノイズを除去することができる。
 本開示の第4態様に係る画像符号化装置は、第2態様において、前記解像度変換フィルタは、前記第1画像の解像度を前記入力画像の解像度より削減するダウンサンプリングフィルタを含むと良い。
 第4態様によれば、ダウンサンプリングフィルタを入力画像に適用することにより、符号量を削減することが可能となる。
 本開示の第5態様に係る画像符号化装置は、第1~第4態様のいずれか一つにおいて、前記画像用途は、少なくとも一つのマシンタスクと、ヒューマンビジョンとを含むと良い。
 第5態様によれば、画像用途がマシンタスクである場合には符号量を削減するフィルタを適用し、画像用途がヒューマンビジョンである場合にはマシンタスクの場合より符号量を削減しないフィルタを適用するという選択が可能となる。
 本開示の第6態様に係る画像符号化装置は、第5態様において、前記画像用途が前記マシンタスクである場合、前記フィルタ処理部は、前記フィルタ処理によって前記第1画像の符号量を前記入力画像の符号量より削減すると良い。
 第6態様によれば、画像用途がマシンタスクである場合には符号量を削減するフィルタを適用することにより、画像符号化装置から画像復号装置へのビットストリームの伝送においてビット効率を向上することが可能となる。
 本開示の第7態様に係る画像符号化装置は、第6態様において、前記フィルタ処理部は、前記マシンタスクにとって重要でない非重要領域を前記入力画像内に規定し、前記非重要領域の細部の情報を削除することによって、前記第1画像の符号量を前記入力画像の符号量より削減すると良い。
 第7態様によれば、非重要領域の細部情報の削除によって第1画像の符号量を削減することにより、マシンタスクにとって重要である重要領域の符号量を削減する必要がないため、画像復号装置側でマシンタスクを適切に実行することが可能となる。
 本開示の第8態様に係る画像符号化装置は、第6又は第7態様において、前記フィルタ処理部は、前記マシンタスクにとって重要である重要領域を前記入力画像内に規定し、前記フィルタ処理によって前記重要領域を強調すると良い。
 第8態様によれば、フィルタ処理部はフィルタ処理によって重要領域を強調するため、画像復号装置側でマシンタスクを適切に実行することが可能となる。
 本開示の第9態様に係る画像符号化装置は、第5態様において、前記画像用途が前記ヒューマンビジョンである場合、前記フィルタ処理部は、前記画像用途が前記マシンタスクである場合と比較して、前記フィルタ処理によって前記第1画像の符号量を削減しないと良い。
 第9態様によれば、画像用途がヒューマンビジョンである場合にはマシンタスクの場合より符号量を削減しないフィルタを適用することにより、画像復号装置側でヒューマンビジョンを適切に実行することが可能となる。
 本開示の第10態様に係る画像符号化装置は、第1~第9態様のいずれか一つにおいて、前記符号化処理部は、前記フィルタ処理部が前記入力画像に適用した前記フィルタに関するフィルタ情報を、前記ビットストリーム内に格納すると良い。
 第10態様によれば、入力画像に適用したフィルタに関するフィルタ情報をビットストリーム内に格納することにより、画像復号装置側でのマシンタスクにおいてフィルタ情報を活用することが可能となる。
 本開示の第11態様に係る画像符号化装置は、第10態様において、前記符号化処理部は、前記フィルタ情報を前記ビットストリームのヘッダ内に格納すると良い。
 第11態様によれば、フィルタ情報をビットストリームのヘッダ内に格納することにより、画像復号装置はフィルタ情報をビットストリームから容易に抽出することが可能となる。
 本開示の第12態様に係る画像符号化装置は、第11態様において、前記ヘッダはSEI領域を有し、前記符号化処理部は、前記フィルタ情報を前記SEI領域内に格納すると良い。
 第12態様によれば、フィルタ情報をSEI領域内に格納することにより、フィルタ情報を付加情報として簡易に取り扱うことが可能となる。
 本開示の第13態様に係る画像復号装置は、符号化された画像を含むビットストリームを画像符号化装置から受信し、当該ビットストリームを復号することによって復号画像を生成する復号処理部と、前記復号画像に基づいてマシンタスクを実行するタスク処理部と、前記ビットストリームは、前記マシンタスクに応じて前記画像符号化装置が入力画像に適用したフィルタに関するフィルタ情報をさらに含み、前記ビットストリームから前記フィルタ情報を抽出し、当該フィルタ情報に基づいて、前記タスク処理部が前記マシンタスクを実行する際に使用するパラメータ値を設定する設定部と、を備える。
 第13態様によれば、設定部は、ビットストリームからフィルタ情報を抽出し、当該フィルタ情報に基づいて、タスク処理部がマシンタスクを実行する際に使用するパラメータ値を設定する。その結果、画像符号化装置が入力画像に適用したフィルタに応じて、タスク処理部によって適切なタスク処理を実行することが可能となる。
 本開示の第14態様に係る画像符号化方法は、画像符号化装置が、入力画像に対してフィルタ処理を行うことによって第1画像を生成し、前記第1画像に対して符号化処理を行うことによってビットストリームを生成し、当該ビットストリームを画像復号装置に送信し、前記フィルタ処理において、前記画像復号装置側での画像用途を示す用途情報に基づいて、種類が異なる複数のフィルタから一のフィルタを選択して前記入力画像に適用する。
 第14態様によれば、フィルタ処理において、画像復号装置側での画像用途を示す用途情報に基づいて、種類が異なる複数のフィルタから一のフィルタを選択して入力画像に適用する。その結果、画像符号化装置から画像復号装置へのビットストリームの伝送においてビット効率を向上することが可能となる。
 本開示の第15態様に係る画像復号方法は、画像復号装置が、符号化された画像を含むビットストリームを画像符号化装置から受信し、当該ビットストリームを復号することによって復号画像を生成し、前記復号画像に基づいてマシンタスクを実行し、前記ビットストリームは、前記マシンタスクに応じて前記画像符号化装置が入力画像に適用したフィルタに関するフィルタ情報をさらに含み、前記ビットストリームから前記フィルタ情報を抽出し、当該フィルタ情報に基づいて、前記マシンタスクを実行する際に使用するパラメータ値を設定する。
 第12態様によれば、ビットストリームからフィルタ情報を抽出し、当該フィルタ情報に基づいて、マシンタスクを実行する際に使用するパラメータ値を設定する。その結果、画像符号化装置が入力画像に適用したフィルタに応じて、適切なタスク処理を実行することが可能となる。
 (本開示の実施形態)
 以下、本開示の実施形態について、図面を用いて詳細に説明する。なお、異なる図面において同一の符号を付した要素は、同一又は相応する要素を示すものとする。
 なお、以下で説明する実施形態は、いずれも本開示の一具体例を示すものである。以下の実施形態で示される数値、形状、構成要素、ステップ、ステップの順序等は、一例であり、本開示を限定する主旨ではない。また、以下の実施形態における構成要素のうち、最上位概念を示す独立請求項に記載されていない構成要素については、任意の構成要素として説明される。また、全ての実施形態において、各々の内容を組み合わせることもできる。
 図1は、本開示の実施形態に係る画像処理システムの構成を簡略化して示す図である。画像処理システムは、画像符号化装置10と、ネットワークNwと、画像復号装置20とを備える。
 画像符号化装置10は、フィルタ処理部11及び符号化処理部12を備える。フィルタ処理部11には、入力画像の画像データD1と、画像復号装置20側での画像用途を示す用途情報D2とが入力される。入力画像には、動画、静止画、又は特徴量が含まれる。フィルタ処理部11は、種類が異なる複数のフィルタを有している。フィルタ処理部11は、用途情報D2に基づいて複数のフィルタから一のフィルタを選択して入力画像に適用する。フィルタ処理部11は、入力画像に対して選択したフィルタを用いたフィルタ処理を行うことによって第1画像を生成し、第1画像の画像データD3を出力する。符号化処理部12は、第1画像に対して符号化処理を行うことによって符号化画像に関するビットストリームD4を生成し、当該ビットストリームD4を、ネットワークNwを介して画像復号装置20に送信する。
 ネットワークNwは、インターネット、WAN(Wide Area Network)、LAN(Local Area Network)、又はこれらの任意の組合せである。また、ネットワークNwは、必ずしも双方向通信網に限定されず、地上デジタル放送又は衛星放送等の放送波を送信する一方向通信網であっても良い。また、ネットワークNwは、ビットストリームD4が記録されたDVD(Digital Versatile Disc)又はBD(Blue-Ray Disc)等の記録媒体であっても良い。
 画像復号装置20は、復号処理部21、設定部22、及びタスク処理部23を備えている。復号処理部21は、ビットストリームD4を画像符号化装置10からネットワークNwを介して受信し、当該ビットストリームD4を復号することによって復号画像を生成し、復号画像の画像データD5を出力する。タスク処理部23は、復号画像を用いて、画像用途を示す用途情報D8に応じたマシンタスクを実行する。ビットストリームD4には、マシンタスクに応じて画像符号化装置10が入力画像に適用したフィルタを示すフィルタ情報D6を含まれている。設定部22は、ビットストリームD4からフィルタ情報D6を抽出し、当該フィルタ情報D6に基づいて、タスク処理部23がマシンタスクを実行する際に使用するパラメータ値を設定し、その設定情報D7を出力する。パラメータ値は、マシンタスク解析のための信頼スコアに関するしきい値又はIOU(Intersection Over Union)に関するしきい値を含む。タスク処理部23は、設定情報D7で示されるパラメータ値を用いてマシンタスクを実行し、推論結果等の結果データD9を出力する。なお、図1に示した画像復号装置20の構成は一例であり、この例に限定されない。例えば、設定部22を省略し、設定部22の機能を復号処理部21又はタスク処理部23に実装しても良い。
 図2は、タスク処理部23の構成を簡略化して示す図である。画像復号装置20側での画像用途には、少なくとも一つのマシンタスクと、ヒューマンビジョンとが含まれる。図2の例では、画像用途には、複数のマシンタスク30A~30Cと、ヒューマンビジョン30Xとが含まれる。用途情報D8が例えばマシンタスク30Bを選択している場合、設定部22は、タスク処理部23がマシンタスク30Bを実行する際に使用するパラメータ値の設定情報D7Bを出力する。タスク処理部23は、設定情報D7Bで示されるパラメータ値を用いて画像データD5に基づいてマシンタスク30Bを実行し、推論結果等の結果データD9Bを出力する。
 図3は、マシンタスクの一例として、オブジェクト検出及びオブジェクトセグメンテーションを示す図である。オブジェクト検出では、入力画像に含まれるオブジェクトの属性(この例ではテレビ及び人物)が検出される。入力画像に含まれるオブジェクトの属性に加え、入力画像中のオブジェクトの位置や個数が検出されても良い。これにより、例えば、認識対象のオブジェクトの位置を絞り込んだり、認識対象以外のオブジェクトを排除したりしても良い。具体的な用途としては、例えば、カメラにおける顔の検出や、自動運転での歩行者等の検出が考えられる。オブジェクトセグメンテーションでは、オブジェクトに対応する領域の画素がセグメント化(つまり区分け)される。これにより、例えば、自動運転において障害物と道路を分離し、自動車の安全な走行の援助を行ったり、工場における製品の欠陥を検出したり、衛星画像中の地形の識別を行う等の用途が考えられる。
 図4は、マシンタスクの一例として、オブジェクトトラッキング、アクション認識、及びポーズ推定を示す図である。オブジェクトトラッキングでは、識別番号IDが割り当てられたオブジェクトの移動が追跡される。用途としては、例えば、店舗等の施設の利用者数の計数やスポーツ選手の動きの分析といったものが考えられる。更に処理を高速化すれば、リアルタイムにオブジェクトの追跡が可能となり、オートフォーカス等のカメラ処理への応用も可能となる。アクション認識では、オブジェクトの動作の種別(この例では「自転車に乗っている」「歩行している」)が検出される。例えば、防犯カメラに利用することで、強盗や万引き等の犯罪行動の防止及び検出、工場での作業忘れ防止といった用途に適用できる。ポーズ推定では、キーポイント及びジョイントの検出によってオブジェクトの姿勢が検出される。例えば、工場における作業効率の改善等の産業分野や、異常行動の検知といったセキュリティ分野、ヘルスケア及びスポーツといった分野での活用が考えられる。
 図5は、フィルタ処理部11の構成を簡略化して示す図である。フィルタ処理部11は、画像復号装置20側での画像用途に応じて選択可能な、種類が異なる複数のフィルタ40を有する。種類は、フィルタの形状、サイズ、及び係数値の少なくとも一つを含む。図5の例では、フィルタ処理部11は、マシンタスク30A~30Cに対応するフィルタ40A~40Cと、ヒューマンビジョン30Xに対応するフィルタ40Xとを有する。用途情報D8が例えばマシンタスク30Bを選択している場合、用途情報D2はマシンタスク30Bに対応するフィルタ40Bを選択する。この場合、フィルタ処理部11は、入力画像に対してフィルタ40Bを用いたフィルタ処理を行うことによって第1画像を生成し、第1画像の画像データD3Bを出力する。
 マシンタスクに対応するフィルタ40A~40Cは、フィルタ処理によって第1画像の符号量を入力画像の符号量より削減するフィルタである。後述するように、フィルタ40A~40Cは、マシンタスクにとって重要でない非重要領域の符号量を削減しつつ、マシンタスクにとって重要な特徴を示す重要領域を強調するフィルタであっても良い。マシンタスクに対応するフィルタ40A~40Cは、ノイズ除去フィルタ、鮮鋭化フィルタ、ビット深度変換フィルタ、色空間変換フィルタ、解像度変換フィルタ、及び、ニューラルネットワークを用いたフィルタの少なくとも一つを含む。ノイズ除去フィルタは、入力画像の細部の情報を削減することによってノイズを除去する、ローパスフィルタ、ガウシアンフィルタ、平滑化フィルタ、平均化フィルタ、バイラテラルフィルタ、及び、メディアンフィルタの少なくとも一つを含む。鮮鋭化フィルタは、エッジ検出フィルタ又はエッジ強調フィルタを含み、具体的には、ラプラシアンフィルタ、ガウシアン・ラプラシアンフィルタ、ソーベルフィルタ、プリウィットフィルタ、又はカニーエッジ検出フィルタを含む。ビット深度変換フィルタは、入力画像と第1画像との間で輝度信号及び/又は色信号のビット深度を変換する。例えば、第1画像の色信号の下位ビットを切り捨てて第1画像のビット深度を入力画像のビット深度より小さく変換することによって、符号量を削減する。色空間変換フィルタは、入力画像と第1画像との間で色空間を変換する。例えば、入力画像におけるYUV444の色空間を、第1画像においてYUV422、YUV420、又はYUV400の色空間に変換することによって、符号量を削減する。解像度変換フィルタは、入力画像と第1画像との間で画像の解像度を変換する。解像度変換フィルタは、第1画像の解像度を入力画像の解像度より削減するダウンサンプリングフィルタを含む。解像度変換フィルタは、第1画像の解像度を入力画像の解像度より増大するアップサンプリングフィルタを含んでも良い。なお、マシンタスクに対応するフィルタ40A~40Cは、例えば、H.266/VVC(Versatile Video Codec)で規定されている、デブロッキングフィルタ、ALFフィルタ、CCALFフィルタ、SAOフィルタ、LMCSフィルタ、又はそれらの任意の組合せであっても良い。
 ヒューマンビジョンに対応するフィルタ40Xは、フィルタ処理によって第1画像の符号量を入力画像の符号量より削減しないフィルタである。ヒューマンビジョンに対応するフィルタ40Xは、入力画像をそのまま第1画像として出力するバイパス用のフィルタを含む。フィルタ40Xは、フィルタ処理によって第1画像の符号量を入力画像の符号量より削減するフィルタであっても良いが、符号量の削減効果はフィルタ40A~40Cよりも抑制される。また、フィルタ40Xは、入力画像の重要領域を強調するフィルタであっても良いが、強調効果はフィルタ40A~40Cよりも抑制される。
 図6A~6Iは、種類が異なる複数のフィルタ40の例を示す図である。図6Aは、N=5の一次元水平フィルタを示している。Nは、フィルタ係数値の数に相当するフィルタのサイズである。図6Bは、N=7の一次元垂直フィルタを示している。図6Cは、N=9の二次元十字形フィルタを示している。図6Dは、N=25の二次元正方形フィルタを示している。図6Eは、N=25の二次元菱形フィルタを示している。図6F及び図6Gは、5×5のガウシアンフィルタを用いたノイズ除去フィルタを示しており、図6Fのフィルタはフィルタ強度が比較的強く、図6Gのフィルタはフィルタ強度が比較的弱い。図6Hは、7×7のガウシアン・ラプラシアンフィルタを用いたエッジ検出フィルタを示している。このように、種類が異なる複数のフィルタ40は、フィルタの形状が異なっていても良いし、フィルタのサイズが異なっていても良いし、フィルタの係数値が異なっていても良い。図6Iは、ニューラルネットワークを用いたフィルタを示している。ニューラルネットワークは、畳み込み層L1、プーリング層L2、及び全結合層L3を有する。入力画像の画像データD1に対して畳み込みフィルタF1が適用されることによって畳み込み層L1の画像データが生成され、畳み込み層L1の画像データに対してプーリングフィルタF2が適用されることによってプーリング層L2の画像データが生成される。全結合層L3からは予測残差の画像データD0が出力され、画像データD1と画像データD0とが加算されることによって、第1画像の画像データD3が出力される。
 図7は、用途情報D2に基づくフィルタの選択を規定するルックアップテーブルの例を示す図である。当該ルックアップテーブルはフィルタ処理部11によって保持されている。用途情報D2で示される画像用途がオブジェクト検出のマシンタスクである場合には、オブジェクトの詳細情報が重要であるため、フィルタ処理部11は、弱いノイズ除去フィルタ及び弱い鮮鋭化フィルタを選択する。用途情報D2で示される画像用途がオブジェクトセグメンテーションのマシンタスクである場合には、画素レベルの予測を行うオブジェクトセグメンテーションモデル(Mask R-CNN)では画像の詳細が重要であるため、フィルタ処理部11は、弱いノイズ除去フィルタを選択する。用途情報D2で示される画像用途がオブジェクトトラッキングのマシンタスクである場合には、オブジェクトの詳細情報は重要でないため、フィルタ処理部11は、強いノイズ除去フィルタ及び弱い鮮鋭化フィルタを選択する。用途情報D2で示される画像用途がアクション認識のマシンタスクである場合には、フィルタ処理部11は、背景等の静的コンテンツの冗長情報を除去しつつオブジェクトのエッジ等の動的コンテンツを強調すべく、強いノイズ除去フィルタ及び強い鮮鋭化フィルタを選択する。用途情報D2で示される画像用途がポーズ推定のマシンタスクである場合には、耳又は目等の人間のキーポイントを検出すべくポーズ推定モデル(HRNet)が高解像度の画像を学習するため、フィルタ処理部11は、強い鮮鋭化フィルタを選択することによって画像の細部を強調する。
 一例として、フィルタ処理部11は、オブジェクトトラッキングのマシンタスクでは強いノイズ除去フィルタを選択し、オブジェクト検出のマシンタスクでは弱いノイズ除去フィルタを選択する。オブジェクト検出は画像中の対象オブジェクトを検出する処理であり、オブジェクトトラッキングは映像中の連続フレームにおけるオブジェクトの軌跡を追跡する処理である。この場合、オブジェクトトラッキングではオブジェクトのエッジ及び形状が不可欠となり、オブジェクト検出ではオブジェクトの詳細情報が不可欠となる。そこで、オブジェクトトラッキングでは強いノイズ除去フィルタを適用して詳細情報を除去し、オブジェクト検出では弱いノイズ除去フィルタを適用して不要な情報のみを除去する。
 他の例では、フィルタ処理部11は、オブジェクトトラッキングのマシンタスクでは大きなサイズのノイズ除去フィルタを選択し、オブジェクト検出のマシンタスクでは小さなサイズのノイズ除去フィルタを選択する。小さなサイズのノイズ除去フィルタは周波数成分に対しての制御性能が低いため広い範囲の周波数成分のノイズが除去され、大きなサイズのノイズ除去フィルタは周波数成分に対しての制御性能が高いため特定の範囲の周波数成分のノイズを除去できる。あるケースでは、小さなサイズのフィルタは大きなサイズのフィルタよりも符号量の削減効果が小さく、別のケースでは、小さなサイズのフィルタは大きなサイズのフィルタよりも符号量の削減効果が大きい。
 他の例では、フィルタ処理部11は、オブジェクトトラッキングのマシンタスクでは、出力のカラーレンジが広い、大きいビット深度のフィルタを選択し、オブジェクト検出のマシンタスクでは、出力のカラーレンジが狭い、小さいビット深度のフィルタを選択する。小さいビット深度のフィルタを適用することにより、符号量の削減効果を高めることができる。
 他の例では、フィルタ処理部11は、オブジェクトトラッキングのマシンタスクとオブジェクト検出のマシンタスクとで、異なる色空間フィルタを選択する。
 他の例では、フィルタ処理部11は、オブジェクトトラッキングのマシンタスクでは、出力の解像度が大きい、小さいスケールファクタのダウンサンプリングフィルタを選択し、オブジェクト検出のマシンタスクでは、出力の解像度が小さい、大きいスケールファクタのダウンサンプリングフィルタを選択する。
 図5に示した各フィルタ40は、一つのフィルタで構成されても良いし、複数のフィルタで構成されても良いし、少なくとも一つのフィルタと少なくとも一つの画像処理部とによって構成されても良い。
 図8は、フィルタ40の第1の構成例を示す図である。フィルタ40は、一つのフィルタ51によって構成されている。フィルタ51は例えばガウシアンフィルタである。フィルタ51は、画像データD1に対してガウシアンフィルタを適用することによって、ノイズが除去された画像データD3を出力する。
 図9は、フィルタ40の第2の構成例を示す図である。フィルタ40は、二つのフィルタ52,53と二つの画像処理部61,62と加算処理部63とによって構成されている。フィルタ52は例えばガウシアン・ラプラシアンフィルタであり、フィルタ53は例えばガウシアンフィルタであり、画像処理部61は例えばエッジ抽出処理部であり、画像処理部62は例えば背景抽出処理部である。フィルタ52は、入力画像の画像データD1に対してガウシアン・ラプラシアンフィルタを適用することによって、画像内におけるエッジの場所を示すエッジマップを出力する。フィルタ53は、入力画像の画像データD1に対してガウシアンフィルタを適用することによって、ノイズが除去された画像データを出力する。画像処理部61は、画像データD1とエッジマップとに基づいて入力画像からエッジを抽出することにより、エッジ画像を出力する。画像処理部62は、ノイズが除去された画像データとエッジマップとに基づいて入力画像から背景を抽出することにより、背景画像を出力する。加算処理部63は、エッジ画像と背景画像とを加算することによって、第1画像の画像データD3を出力する。図9の例において、フィルタ処理部11は、マシンタスクにとって重要でない非重要領域として背景領域を入力画像内に規定し、背景領域の細部(つまり高周波数域)の情報をフィルタ53によって削除することによって、第1画像の符号量を入力画像の符号量より削減する。
 図10は、フィルタ40の第3の構成例を示す図である。フィルタ40は、二つのフィルタ54,55と一つの画像処理部64と加算処理部65とによって構成されている。フィルタ54は例えばニューラルネットワークを用いた顔検出フィルタであり、フィルタ55は例えば平均化フィルタであり、画像処理部64は例えば領域分割処理部である。フィルタ54は、入力画像の画像データD1に含まれる人物の顔を検出し、顔の位置座標を規定する顔のバウンディングボックスを出力する。画像処理部64は、画像データD1と顔のバウンディングボックスとに基づいて、入力画像を顔以外の領域と顔の領域とに分離する。フィルタ55は、顔の領域に対して平均化を行うことによって、ぼかした顔の画像を出力する。加算処理部65は、顔以外の領域の画像とぼかした顔の画像とを加算することによって、第1画像の画像データD3を出力する。例えばオブジェクトトラッキングのマシンタスクにおいては顔の詳細は重要でないため、顔をぼかすことによって、符号量を削減できるとともにプライバシを保護することができる。図10の例において、フィルタ処理部11は、マシンタスクにとって重要でない非重要領域として顔の領域を入力画像内に規定し、顔の領域の細部(つまり高周波数域)の情報をフィルタ55によって削除することによって、第1画像の符号量を入力画像の符号量より削減する。
 図11は、フィルタ40の第4の構成例を示す図である。フィルタ40は、三つのフィルタ56~58と一つの画像処理部66と加算処理部67とによって構成されている。フィルタ56は例えばニューラルネットワークを用いた前景検出フィルタであり、フィルタ57は例えば鮮鋭化フィルタであり、フィルタ58は例えばノイズ除去フィルタであり、画像処理部66は例えば領域分割処理部である。フィルタ56は、入力画像の画像データD1に含まれる重要な被写体に相当する前景を検出し、前景の位置座標を規定する前景のバウンディングボックスを出力する。画像処理部66は、画像データD1と前景のバウンディングボックスとに基づいて、入力画像を前景領域とそれ以外の背景領域とに分離する。フィルタ57は、前景領域に対して鮮鋭化を行うことによって、エッジ強調等によって鮮鋭化された前景画像を出力する。フィルタ58は、背景領域に対してノイズ除去処理を行うことによって、ノイズが除去された背景画像を出力する。加算処理部67は、鮮鋭化された前景画像とノイズが除去された背景画像とを加算することによって、第1画像の画像データD3を出力する。図11の例において、フィルタ処理部11は、マシンタスクにとって重要でない非重要領域として背景領域を入力画像内に規定し、背景領域の細部(つまり高周波数域)の情報をフィルタ58によって削除することによって、第1画像の符号量を入力画像の符号量より削減する。また、図11の例において、フィルタ処理部11は、マシンタスクにとって重要な特徴を示す重要領域として前景領域を入力画像内に規定し、前景領域をフィルタ57によって強調することによって、アクション認識又はポーズ推定等のマシンタスクの精度を向上させる。
 図12は、ビットストリームD4のデータ構造の第1の例を示す図である。ビットストリームD4は、管理情報等が格納されるヘッダHと、画像データが格納されるペイロードPとを有する。符号化処理部12は、マシンタスクに応じて画像符号化装置10が入力画像に適用したフィルタを示すフィルタ情報D6の符号化データ70を、ペイロードPの所定の箇所に格納する。
 図13は、ビットストリームD4のデータ構造の第2の例を示す図である。図12と同様に、ビットストリームD4はヘッダHとペイロードPとを有する。符号化処理部12は、フィルタ情報D6の符号化データ70を、ヘッダHの所定の箇所に格納する。所定の箇所は、例えば、付加情報を格納するためのSEI(Supplemental Enhancement Information)領域である。所定の箇所は、VPS、SPS、PPS、PH、SH、APS、又はタイルヘッダ等であっても良い。
 図14は、フィルタ情報D6に関するSEIメッセージシンタックスの第1の例を示す図である。
 prefilter_type_idcは、例えば3ビットのフラグ情報によってフィルタのタイプを指定し、例えば、その値が「0」の場合はノイズ除去フィルタを、「1」の場合は鮮鋭化フィルタを、「2」の場合はビット深度変換フィルタを、「3」の場合は色空間変換フィルタを、「4」の場合は解像度変換フィルタを、「5」の場合はその他のフィルタを表す。
 filter_strength_level_idcは、例えば3ビットのフラグ情報によってフィルタの強度を指定し、その値が「0」の場合は最弱のフィルタ強度を表し、その値が大きいほど強いフィルタ強度を表す。フィルタ強度の最大値は「7」又は任意の整数である。
 input_bit_depth_minus8は、例えば3ビットのフラグ情報によってフィルタ処理を適用する前の入力画像のビット深度を指定し、入力画像のビット深度は「8」「10」「12」又は任意の整数である。
 input_color_format_idcは、例えば3ビットのフラグ情報によってフィルタ処理を適用する前の入力画像の色空間を指定する。指定可能な色空間は、モノクロ、YUV444、YUV422、YUV420、YUV400、又は任意の色空間である。
 scale_factorは、入力画像の解像度と第1画像の解像度との比を指定する。例えば、入力画像の解像度が1920×1080であり、第1画像の解像度が960×540である場合は、縦方向及び横方向の解像度が1/2となるため、scale_factor_nominatorは「1」となり、scale_factor_denominatorは「2」となる。scale_factor_nominator及びscale_factor_denominatorはそれぞれ例えば3ビットのフラグ情報であり、任意の整数を指定可能である。
 図15は、フィルタ情報D6に関するSEIメッセージシンタックスの第2の例を示す図である。
 prefilter_hint_size_yは、フィルタ係数又は相関配列の垂直方向のサイズを指定し、例えば「1」から「15」までの任意の整数である。
 prefilter_hint_size_xは、フィルタ係数又は相関配列の水平方向のサイズを指定し、例えば「1」から「15」までの任意の整数である。
 prefilter_hint_typeは、例えば2ビットのフラグ情報によってフィルタのタイプを指定し、例えば、その値が「0」の場合は二次元FIRフィルタを、「1」の場合は二つの一次元FIRフィルタを、「2」の場合は相互相関行列を表す。
 prefilter_hint_valueは、フィルタ係数又は相互相関行列の要素を指定する。
 図16は、マシンタスクを実行する際に使用されるパラメータ値として、設定部22がIOUに関するしきい値を設定する場合の例を説明するための図である。IOUは、オブジェクトの検出において、予測されたバウンディングボックスと真のバウンディングボックスとの重なりの程度を表現するために使用される値である。図16において、予測されたバウンディングボックスを破線で示し、真のバウンディングボックスを一点鎖線で示している。少なくとも一方のバウンディングボックスを含む領域の面積(分母)に対する、双方のバウンディングボックスを含む領域の面積(分子)の割合として、IOUが算出される。IOUに関するしきい値が「1」近くに設定された場合には、双方のバウンディングボックスがほぼ重なった場合にのみ検出結果が「真」となり、IOUに関するしきい値が「0」近くに設定された場合には、双方のバウンディングボックスがわずかに重なっている場合でも検出結果が「真」となる。設定部22は、ビットストリームD4からフィルタ情報D6を抽出し、当該フィルタ情報D6に基づいてIOUに関するしきい値を設定し、その設定情報D7をタスク処理部23に入力する。タスク処理部23は、設定情報D7で示されるIOUに関するしきい値を用いてマシンタスクを実行する。
 図17は、画像符号化装置10が実行する処理の流れを示すフローチャートである。
 まずステップSP101においてフィルタ処理部11は、用途情報D2に基づいて複数のフィルタから一のフィルタを選択する。
 次にステップSP102においてフィルタ処理部11は、ステップSP101で選択したフィルタを入力画像に適用してフィルタ処理を実行することによって、第1画像を生成する。
 次にステップSP103において符号化処理部12は、第1画像に対して符号化処理を行うことによってビットストリームを生成する。その際、符号化処理部12は、フィルタ処理部11が入力画像に適用したフィルタを示すフィルタ情報D6を符号化し、フィルタ情報D6の符号化データ70をビットストリームD4内に格納する。符号化処理部12は、生成したビットストリームD4を、ネットワークNwを介して画像復号装置20に送信する。
 図18は、画像復号装置20が実行する処理の流れを示すフローチャートである。
 まずステップSP201において復号処理部21は、ビットストリームD4を画像符号化装置10からネットワークNwを介して受信し、当該ビットストリームD4を復号することによって復号画像を生成する。
 次にステップSP202において設定部22は、復号されたビットストリームD4からフィルタ情報D6を抽出し、当該フィルタ情報D6に基づいて、タスク処理部23がマシンタスクを実行する際に使用するパラメータ値を設定する。
 次にステップSP203においてタスク処理部23は、ステップSP201で復号された復号画像とステップSP202で設定されたパラメータ値とを用いてマシンタスクを実行し、推論結果等の結果データD9を出力する。
 本実施形態によれば、フィルタ処理部11は、種類が異なる複数のフィルタを有し、画像復号装置20側での画像用途を示す用途情報に基づいて、複数のフィルタから一のフィルタを選択して入力画像に適用する。その結果、画像符号化装置10から画像復号装置20へのビットストリームD4の伝送においてビット効率を向上することが可能となる。
 また、本実施形態によれば、フィルタ処理部11は、画像復号装置20側での画像用途に応じて適切なフィルタを入力画像に適用することが可能となる。
 また、本実施形態によれば、ノイズ除去フィルタとして、ローパスフィルタ、ガウシアンフィルタ、平滑化フィルタ、平均化フィルタ、バイラテラルフィルタ、及び、メディアンフィルタの少なくとも一つを入力画像に適用することにより、入力画像のノイズを除去することができる。
 また、本実施形態によれば、ダウンサンプリングフィルタを入力画像に適用することにより、符号量を削減することが可能となる。
 また、本実施形態によれば、画像用途がマシンタスクである場合には符号量を削減するフィルタを適用し、画像用途がヒューマンビジョンである場合にはマシンタスクの場合より符号量を削減しないフィルタを適用するという選択が可能となる。
 また、本実施形態によれば、画像用途がマシンタスクである場合には符号量を削減するフィルタを適用することにより、画像符号化装置10から画像復号装置20へのビットストリームD4の伝送においてビット効率を向上することが可能となる。
 また、本実施形態によれば、非重要領域の細部情報の削除によって第1画像の符号量を削減することにより、マシンタスクにとって重要である重要領域の符号量を削減する必要がないため、画像復号装置20側でマシンタスクを適切に実行することが可能となる。
 また、本実施形態によれば、フィルタ処理部11はフィルタ処理によって重要領域を強調するため、画像復号装置20側でマシンタスクを適切に実行することが可能となる。
 また、本実施形態によれば、画像用途がヒューマンビジョンである場合にはマシンタスクの場合より符号量を削減しないフィルタを適用することにより、画像復号装置20側でヒューマンビジョンを適切に実行することが可能となる。
 また、本実施形態によれば、入力画像に適用したフィルタに関するフィルタ情報D6をビットストリームD4内に格納することにより、画像復号装置20側でのマシンタスクにおいてフィルタ情報D6を活用することが可能となる。
 また、本実施形態によれば、フィルタ情報D6をビットストリームD4のヘッダH内に格納することにより、画像復号装置20はフィルタ情報D6をビットストリームD4から容易に抽出することが可能となる。
 また、本実施形態によれば、フィルタ情報D6をSEI領域内に格納することにより、フィルタ情報D6を付加情報として簡易に取り扱うことが可能となる。
 また、本実施形態によれば、設定部22は、ビットストリームD4からフィルタ情報D6を抽出し、当該フィルタ情報D6に基づいて、タスク処理部23がマシンタスクを実行する際に使用するパラメータ値を設定する。その結果、画像符号化装置10が入力画像に適用したフィルタに応じて、タスク処理部23によって適切なタスク処理を実行することが可能となる。
 本開示は、画像を送信する画像符号化装置と画像を受信する画像復号装置とを備える画像処理システムへの適用が特に有用である。

Claims (15)

  1.  入力画像に対してフィルタ処理を行うことによって第1画像を生成するフィルタ処理部と、
     前記第1画像に対して符号化処理を行うことによってビットストリームを生成し、当該ビットストリームを画像復号装置に送信する符号化処理部と、
    を備え、
     前記フィルタ処理部は、
     種類が異なる複数のフィルタを有し、
     前記画像復号装置側での画像用途を示す用途情報に基づいて、前記複数のフィルタから一のフィルタを選択して前記入力画像に適用する、画像符号化装置。
  2.  前記複数のフィルタは、ノイズ除去フィルタ、鮮鋭化フィルタ、ビット深度変換フィルタ、色空間変換フィルタ、解像度変換フィルタ、及び、ニューラルネットワークを用いたフィルタの少なくとも一つを含む、請求項1に記載の画像符号化装置。
  3.  前記ノイズ除去フィルタは、ローパスフィルタ、ガウシアンフィルタ、平滑化フィルタ、平均化フィルタ、バイラテラルフィルタ、及び、メディアンフィルタの少なくとも一つを含む、請求項2に記載の画像符号化装置。
  4.  前記解像度変換フィルタは、前記第1画像の解像度を前記入力画像の解像度より削減するダウンサンプリングフィルタを含む、請求項2に記載の画像符号化装置。
  5.  前記画像用途は、少なくとも一つのマシンタスクと、ヒューマンビジョンとを含む、請求項1に記載の画像符号化装置。
  6.  前記画像用途が前記マシンタスクである場合、前記フィルタ処理部は、前記フィルタ処理によって前記第1画像の符号量を前記入力画像の符号量より削減する、請求項5に記載の画像符号化装置。
  7.  前記フィルタ処理部は、
     前記マシンタスクにとって重要でない非重要領域を前記入力画像内に規定し、
     前記非重要領域の細部の情報を削除することによって、前記第1画像の符号量を前記入力画像の符号量より削減する、請求項6に記載の画像符号化装置。
  8.  前記フィルタ処理部は、
     前記マシンタスクにとって重要である重要領域を前記入力画像内に規定し、
     前記フィルタ処理によって前記重要領域を強調する、請求項6に記載の画像符号化装置。
  9.  前記画像用途が前記ヒューマンビジョンである場合、前記フィルタ処理部は、前記画像用途が前記マシンタスクである場合と比較して、前記フィルタ処理によって前記第1画像の符号量を削減しない、請求項5に記載の画像符号化装置。
  10.  前記符号化処理部は、前記フィルタ処理部が前記入力画像に適用した前記フィルタに関するフィルタ情報を、前記ビットストリーム内に格納する、請求項1に記載の画像符号化装置。
  11.  前記符号化処理部は、前記フィルタ情報を前記ビットストリームのヘッダ内に格納する、請求項10に記載の画像符号化装置。
  12.  前記ヘッダはSEI(Supplemental Enhancement Information)領域を有し、
     前記符号化処理部は、前記フィルタ情報を前記SEI領域内に格納する、請求項11に記載の画像符号化装置。
  13.  符号化された画像を含むビットストリームを画像符号化装置から受信し、当該ビットストリームを復号することによって復号画像を生成する復号処理部と、
     前記復号画像に基づいてマシンタスクを実行するタスク処理部と、
      前記ビットストリームは、前記マシンタスクに応じて前記画像符号化装置が入力画像に適用したフィルタに関するフィルタ情報をさらに含み、
     前記ビットストリームから前記フィルタ情報を抽出し、当該フィルタ情報に基づいて、前記タスク処理部が前記マシンタスクを実行する際に使用するパラメータ値を設定する設定部と、
    を備える、画像復号装置。
  14.  画像符号化装置が、
     入力画像に対してフィルタ処理を行うことによって第1画像を生成し、
     前記第1画像に対して符号化処理を行うことによってビットストリームを生成し、当該ビットストリームを画像復号装置に送信し、
     前記フィルタ処理において、前記画像復号装置側での画像用途を示す用途情報に基づいて、種類が異なる複数のフィルタから一のフィルタを選択して前記入力画像に適用する、画像符号化方法。
  15.  画像復号装置が、
     符号化された画像を含むビットストリームを画像符号化装置から受信し、当該ビットストリームを復号することによって復号画像を生成し、
     前記復号画像に基づいてマシンタスクを実行し、
      前記ビットストリームは、前記マシンタスクに応じて前記画像符号化装置が入力画像に適用したフィルタに関するフィルタ情報をさらに含み、
     前記ビットストリームから前記フィルタ情報を抽出し、当該フィルタ情報に基づいて、前記マシンタスクを実行する際に使用するパラメータ値を設定する、画像復号方法。
PCT/JP2023/011563 2022-03-31 2023-03-23 画像符号化装置、画像復号装置、画像符号化方法、及び画像復号方法 Ceased WO2023190053A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
EP23780064.4A EP4485923A4 (en) 2022-03-31 2023-03-23 IMAGE CODING DEVICE, IMAGE DECODING DEVICE, IMAGE CODING METHOD AND IMAGE DECODING METHOD
CN202380031418.6A CN118947114A (zh) 2022-03-31 2023-03-23 图像编码装置、图像解码装置、图像编码方法以及图像解码方法
US18/899,188 US20250024033A1 (en) 2022-03-31 2024-09-27 Image encoding device, image decoding device, image encoding method, and image decoding method

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US202263325925P 2022-03-31 2022-03-31
US63/325,925 2022-03-31

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US18/899,188 Continuation US20250024033A1 (en) 2022-03-31 2024-09-27 Image encoding device, image decoding device, image encoding method, and image decoding method

Publications (1)

Publication Number Publication Date
WO2023190053A1 true WO2023190053A1 (ja) 2023-10-05

Family

ID=88202166

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2023/011563 Ceased WO2023190053A1 (ja) 2022-03-31 2023-03-23 画像符号化装置、画像復号装置、画像符号化方法、及び画像復号方法

Country Status (4)

Country Link
US (1) US20250024033A1 (ja)
EP (1) EP4485923A4 (ja)
CN (1) CN118947114A (ja)
WO (1) WO2023190053A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN120499379B (zh) * 2025-07-04 2026-04-10 摩尔线程智能科技(北京)股份有限公司 一种视频编码预处理方法及装置、电子设备、存储介质和计算机程序产品

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05268586A (ja) * 1992-03-20 1993-10-15 Victor Co Of Japan Ltd 画像圧縮装置
JP2014517564A (ja) * 2011-04-19 2014-07-17 サムスン エレクトロニクス カンパニー リミテッド 前処理フィルタリングを伴う階層間予測を行うビデオ符号化方法及びその装置、後処理フィルタリングを伴う階層間予測を行うビデオ復号化方法及びその装置
JP2015508954A (ja) * 2012-01-26 2015-03-23 アップル インコーポレイテッド オブジェクト検出情報に基づく符号化
US9883207B2 (en) 2009-12-31 2018-01-30 Thomson Licensing Dtv Methods and apparatus for adaptive coupled pre-processing and post-processing filters for video encoding and decoding
US10452955B2 (en) 2018-01-15 2019-10-22 Gyrfalcon Technology Inc. System and method for encoding data in an image/video recognition integrated circuit solution
JP2019536314A (ja) * 2017-07-17 2019-12-12 キム、ギベクKim, Ki Baek 画像データ符号化/復号化方法及び装置
WO2020192020A1 (zh) * 2019-03-24 2020-10-01 Oppo广东移动通信有限公司 滤波方法、装置、编码器以及计算机存储介质

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021172956A1 (ko) * 2020-02-28 2021-09-02 엘지전자 주식회사 영상 특징 정보 시그널링을 위한 영상 부호화/복호화 방법, 장치 및 비트스트림을 전송하는 방법

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05268586A (ja) * 1992-03-20 1993-10-15 Victor Co Of Japan Ltd 画像圧縮装置
US9883207B2 (en) 2009-12-31 2018-01-30 Thomson Licensing Dtv Methods and apparatus for adaptive coupled pre-processing and post-processing filters for video encoding and decoding
JP2014517564A (ja) * 2011-04-19 2014-07-17 サムスン エレクトロニクス カンパニー リミテッド 前処理フィルタリングを伴う階層間予測を行うビデオ符号化方法及びその装置、後処理フィルタリングを伴う階層間予測を行うビデオ復号化方法及びその装置
JP2015508954A (ja) * 2012-01-26 2015-03-23 アップル インコーポレイテッド オブジェクト検出情報に基づく符号化
JP2019536314A (ja) * 2017-07-17 2019-12-12 キム、ギベクKim, Ki Baek 画像データ符号化/復号化方法及び装置
US10452955B2 (en) 2018-01-15 2019-10-22 Gyrfalcon Technology Inc. System and method for encoding data in an image/video recognition integrated circuit solution
WO2020192020A1 (zh) * 2019-03-24 2020-10-01 Oppo广东移动通信有限公司 滤波方法、装置、编码器以及计算机存储介质

Non-Patent Citations (1)

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

Also Published As

Publication number Publication date
EP4485923A1 (en) 2025-01-01
EP4485923A4 (en) 2025-04-23
CN118947114A (zh) 2024-11-12
US20250024033A1 (en) 2025-01-16

Similar Documents

Publication Publication Date Title
EP3291558B1 (en) Video coding and decoding methods and apparatus
WO2023005740A1 (zh) 图像编码、解码、重建、分析方法、系统及电子设备
CN110536138B (zh) 一种有损压缩编码方法、装置和系统级芯片
CN114581460A (zh) 图像处理、模型训练、直播间背景切换方法
US20250024033A1 (en) Image encoding device, image decoding device, image encoding method, and image decoding method
CN110503609A (zh) 一种基于混合感知模型的图像去雨方法
CN115035172A (zh) 基于置信度分级及级间融合增强的深度估计方法及系统
EP4505705A1 (en) Systems and methods for region packing based compression
Chen et al. A new image codec paradigm for human and machine uses
CN113112508A (zh) 一种视频处理方法及装置
CN113191991B (zh) 基于信息瓶颈的多模态图像融合方法、系统、设备和介质
EP4510569A1 (en) Image encoding device, image decoding device, image encoding method, and image decoding method
EP4521748A1 (en) Image encoding device, image decoding device, image encoding method, and image decoding method
US20240013442A1 (en) Image encoding method, image decoding method, image processing method, image encoding device, and image decoding device
CN105791687A (zh) 一种蛙眼仿生检测方法及蛙眼仿生摄像机
Wang et al. Deep intensity guidance based compression artifacts reduction for depth map
WO2025020143A1 (en) System and method for edge-guided depth super-resolution through attention-based hierarchical multi-modal fusion
CN111698503B (zh) 一种基于预处理的视频高倍压缩方法
WO2024057721A1 (ja) 復号装置、符号化装置、復号方法、及び符号化方法
Shree et al. Image restoration and object detection in unfavourable weather conditions for autonomous vehicles using deep learning approaches: a review
CN117690049B (zh) 演化和继承的高分辨率无人机图像显著性目标检测方法
Luo et al. A Human-Computer-Friendly Scalable Image Coding Scheme Based on the Canny Edge Detection Algorithm
Kwak et al. Feature-Guided Machine-Centric Image Coding for Downstream Tasks
KR20240175892A (ko) 비디오 데이터의 전경과 배경을 가변적으로 결정하는 기술
CN118921475B (zh) 图像目标检测方法、视频流压缩方法及装置

Legal Events

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

Ref document number: 23780064

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2023780064

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 202380031418.6

Country of ref document: CN

WWE Wipo information: entry into national phase

Ref document number: 202447073644

Country of ref document: IN

ENP Entry into the national phase

Ref document number: 2023780064

Country of ref document: EP

Effective date: 20240925

NENP Non-entry into the national phase

Ref country code: DE