CN116982313A - 对用于机器视觉的视频进行编码的方法和装置 - Google Patents

对用于机器视觉的视频进行编码的方法和装置 Download PDF

Info

Publication number
CN116982313A
CN116982313A CN202280016592.9A CN202280016592A CN116982313A CN 116982313 A CN116982313 A CN 116982313A CN 202280016592 A CN202280016592 A CN 202280016592A CN 116982313 A CN116982313 A CN 116982313A
Authority
CN
China
Prior art keywords
codec
input
video
learning
hybrid
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202280016592.9A
Other languages
English (en)
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.)
Tencent America LLC
Original Assignee
Tencent America LLC
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 Tencent America LLC filed Critical Tencent America LLC
Publication of CN116982313A publication Critical patent/CN116982313A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/59Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution
    • 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/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/12Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • 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/774Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
    • 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
    • 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
    • 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/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • 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
    • 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/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/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Artificial Intelligence (AREA)
  • Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Databases & Information Systems (AREA)
  • Medical Informatics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Molecular Biology (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Discrete Mathematics (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

一种对用于机器视觉和人/机混合视觉的视频进行编码的技术,包括:在混合编解码器处接收输入,所述输入包括视频或图像数据中的至少一个,所述混合编解码器包括第一编解码器和第二编解码器,其中所述第一编解码器是被设计用于人类消费的传统编解码器,所述第二编解码器是被设计用于机器视觉的基于学习的编解码器;使用所述第一编解码器压缩所述输入,其中所述压缩包括使用下采样模块对所述输入进行下采样,以及使用上采样模块对压缩的输入进行上采样,以产生残差信号;量化所述残差信号以获得所述输入的量化表示;使用一个或多个卷积滤波器模块对所述输入的量化表示进行熵编码;以及使用经熵编码的量化表示来训练一个或多个网络。

Description

对用于机器视觉的视频进行编码的方法和装置
相关申请的交叉引用
本申请根据35U.S.C.§119要求于2021年11月9日在美国专利商标局提交的、申请号为63/277,517的美国临时专利申请、以及于2022年9月22日提交的、申请号为17/950,564的美国专利申请的优先权,其公开内容通过引用整体并入本文。
技术领域
本公开涉及用于机器视觉的视频编码。具体地,公开了用于机器视觉和人/机混合视觉的视频编码方法。
背景技术
传统上,视频或图像被人们用于各种用途,例如娱乐、教育等。因此,视频编码或图像编码通常利用人类视觉系统的特性来获得更好的压缩效率,同时保持良好的主观质量。
近年来,随着机器学习应用的兴起,以及大量的传感器,许多智能平台已经将视频用于机器视觉任务,例如对象检测、分割或跟踪。如何对视频或图像进行编码以供机器任务使用成为一个有趣且具有挑战性的问题,这导致了机器视频编码(VCM)研究的引入。为了实现这个目标,国际标准组MPEG创建了一个特设组“VCM”,以标准化相关技术,从而在不同设备之间实现更好的互操作性。
现有的视频编解码器主要用于人们使用。然而,越来越多的视频被机器用于机器视觉任务,例如对象检测、实例分割、对象跟踪等。开发一种有效编码视频的视频编解码器以用于机器视觉或人/机混合视觉是很重要的。
发明内容
以下呈现了本公开的一个或多个实施例的简化概述,以提供对这些实施例的基本理解。本概述不是所有预期实施例的广泛概述,并且既不旨在识别所有实施例的关键或关键元素,也不旨在描绘任何或所有实施例范围。其唯一目的是以简化的形式呈现本公开的一个或多个实施例的一些概念,作为稍后呈现的更详细描述的前奏。
对用于机器视觉和人/机混合视觉的视频进行编码的方法、装置和非易失性计算机可读介质。
根据示例性实施例,一种对用于机器视觉和人/机混合视觉的视频进行编码的方法由一个或多个处理器执行。所述方法包括:在混合编解码器处接收输入,所述输入包括视频或图像数据中的至少一个,所述混合编解码器包括第一编解码器和第二编解码器,其中所述第一编解码器是被设计用于人类消费的传统编解码器,所述第二编解码器是被设计用于机器视觉的基于学习的编解码器。所述方法进一步包括:使用所述第一编解码器压缩所述输入,其中所述压缩包括使用下采样模块对所述输入进行下采样,以及使用上采样模块对压缩的输入进行上采样,以产生残差信号。所述方法进一步包括:量化所述残差信号以获得所述输入的量化表示。所述方法进一步包括:使用一个或多个卷积滤波器模块对所述输入的量化表示进行熵编码;以及使用经熵编码的量化表示来训练一个或多个网络。
根据示例性实施例,一种对用于机器视觉和人/机混合视觉的视频进行编码的装置,包括:至少一个存储器,被配置为存储计算机程序代码;至少一个处理器,被配置为访问所述计算机程序代码,并按照所述计算机程序代码的指示操作。所述计算机程序代码包括:设置代码,被配置为使所述至少一个处理器在混合编解码器处接收输入,所述输入包括视频或图像数据中的至少一个,所述混合编解码器包括第一编解码器和第二编解码器,其中所述第一编解码器是被设计用于人类消费的传统编解码器,所述第二编解码器是被设计用于机器视觉的基于学习的编解码器。所述计算机程序代码进一步包括:压缩代码,被配置为使所述至少一个处理器使用所述第一编解码器压缩所述输入,其中所述压缩代码包括下采样代码,被配置为使所述至少一个处理器使用下采样模块对所述输入进行下采样,以及所述压缩代码包括上采样代码,被配置为使所述至少一个处理器使用上采样模块对压缩的输入进行上采样,以产生残差信号。所述计算机程序代码进一步包括:量化代码,被配置为使所述至少一个处理器量化所述残差信号以获得所述输入的量化表示。所述计算机程序代码进一步包括:熵编码代码,被配置为使所述至少一个处理器使用一个或多个卷积滤波器模块对所述输入的量化表示进行熵编码。所述计算机程序代码进一步包括:训练代码,被配置为使所述至少一个处理器使用经熵编码的量化表示来训练一个或多个网络。
根据示例性实施例,一种非易失性计算机可读介质,其上存储有计算机指令,当所述计算机指令由至少一个处理器执行时,使所述至少一个处理器执行一种对用于机器视觉和人/机混合视觉的视频进行编码的方法。所述方法包括:在混合编解码器处接收输入,所述输入包括视频或图像数据中的至少一个,所述混合编解码器包括第一编解码器和第二编解码器,其中所述第一编解码器是被设计用于人类消费的传统编解码器,所述第二编解码器是被设计用于机器视觉的基于学习的编解码器。所述方法进一步包括:使用所述第一编解码器压缩所述输入,其中所述压缩包括使用下采样模块对所述输入进行下采样,以及使用上采样模块对压缩的输入进行上采样,以产生残差信号。所述方法进一步包括:量化所述残差信号以获得所述输入的量化表示。所述方法进一步包括:使用一个或多个卷积滤波器模块对所述输入的量化表示进行熵编码。所述方法进一步包括:使用经熵编码的量化表示来训练一个或多个网络。
附加的实施例将在下面的描述中阐述,并且部分地将从描述中显而易见,和/或可以通过实践本公开所呈现的实施例来学习。
附图说明
根据结合附图进行的以下描述,本公开实施例的上述和其他特征和方面将显而易见,其中:
图1是根据本公开各种实施例的示例网络设备的示意图。
图2示出了根据本公开实施例的所公开的混合视频编解码器的架构。
图3是根据本公开各种实施例的用于机器系统的视频编码。
图4是根据本公开各个实施例的基于学习的图像编解码器的架构的示意图。
图5是根据本公开各个实施例的基于学习的图像编解码器的架构的示意图。
图6是根据本公开各个实施例的用于训练混合视频编解码器的一个或多个网络的示例过程的流程图。
图7是根据本公开各种实施例的基于学习的视频编解码器的示例。
具体实施方式
以下示例实施例的详细描述参考附图。不同附图中的相同附图标记可以标识相同或相似的元件。
上述公开内容提供了说明和描述,但并不旨在穷举或将实施方式限制为所公开的精确形式。根据上述的公开内容,可以进行修改和变化,或者可以从实施方式的实践中获得修改和变化。此外,一些实施例的一个或多个特征或组件可以被并入一些实施例(或一些实施例的一个或多个特征)中,或者与一些实施例组合。此外,可以理解的是,在下面提供的操作的流程图和描述中,可以省略一个或多个操作,可以增加一个或多个操作,一个或多个操作可以同时执行(至少部分地),并且可以切换一个或多个操作的顺序。
很明显,本文中所述的系统和/或方法可以以硬件、固件或硬件和软件的组合的不同形式来实现。用于实现这些系统和/或方法的实际专用控制硬件或软件代码并不限制实施方式。因此,本文描述了系统和/或方法的操作和行为,而没有参考特定的软件代码——应当理解,可以基于本文中的描述对软件和硬件进行设计以实现该系统和/或方法。
即使特征的具体组合在权利要求中叙述和/或在说明书中公开,这些组合也不旨在限制可能的实施方式的公开。实际上,这些特征中的许多特征可以以在权利要求中没有具体叙述和/或在说明书中没有公开的方式组合。虽然下面列出的每个从属权利要求可能直接依赖于仅一个权利要求,但是可能的实施方式的公开包括权利要求集中的每个从属权利要求与每个其它权利要求的组合。
除非明确说明,否则本文中使用的元件、动作或指令不应被解释为关键的或必需的。此外,如本文中所使用的,冠词“一个(a)”和“一个(an)”旨在包括一个或多个项,并且可以与“一个或多个(one or more)”互换使用。在仅意指一个项的情况下,使用术语“一个(one)”或类似的语言。此外,如本文中所使用的,术语“具有(has)”、“具有(have)”、“具有(having)”、包括(include)、包括(including)等旨在为开放式术语。此外,短语“基于”旨在表示“至少部分地基于”,除非另有明确说明。此外,诸如“[A]和[B]中的至少一个”或“[A]或[B]中至少一个“等表达应理解为仅包括A、仅包括B、或同时包括A和B。
本说明书中对“一些实施例”、“实施例”或类似语言的引用意味着结合所示实施例描述的特定特征、结构或特性包括在本解决方案的一些实施例中。因此,本说明书中的短语“在一些实施例中”、“在实施例中”和类似语言可以但不一定全部指代相同的实施例。
此外,本公开所描述的特征、优点和特性可以以任何合适的方式组合在一个或多个实施例中。根据本文的描述,相关领域的技术人员将认识到,可以在没有特定实施例的一个或多个特定特征或优点的情况下实践本公开。在其它情况下,在某些实施例中可以认识到可能不存在于本公开所有实施例中的附加特征和优点。
所公开的方法可以单独使用,也可以按任何顺序组合使用。此外,每个方法(或实施例)、编码器和解码器可以由处理电路(例如,一个或多个处理器或一个或多个集成电路)来实现。在一个示例中,一个或多个处理器执行存储在非易失性计算机可读介质中的程序。
本公开的实施例涉及一种用于机器的视频编码。具体地,公开了用于机器视觉和人/机混合视觉的视频编码方法。传统的视频编解码器被设计用于人们使用。在一些实施例中,传统的视频编解码器可以与基于学习的编解码器组合,以形成混合编解码器,使得可以对视频进行有效编码以用于机器视觉和人-机混合视觉。
图1是用于执行翻译服务的示例设备的示意图。设备100可以对应于任何类型的已知计算机、服务器或数据处理设备。例如,设备100可以包括处理器、个人计算机(PC)、包括计算设备的印刷电路板(PCB)、迷你计算机、大型计算机、微型计算机、电话计算设备、有线/无线计算设备(例如,智能手机、个人数字助理(PDA))、膝上型电脑、平板电脑、智能设备或任何其他类似的操作设备。
在一些实施例中,如图1所示,设备100可以包括一组组件,例如处理器120、存储器130、存储组件140、输入组件150、输出组件160和通信接口170。
总线110可以包括一个或多个组件,这些组件允许设备100的一组组件之间进行通信。例如,总线110可以是通信总线、跨接条(cross-over bar)、网络等。虽然总线110在图1中被描绘为单线,但是总线110可以使用设备100的一组组件之间的多个(两个或更多个)连接来实现。本公开不限于此。
设备100可以包括一个或多个处理器,例如处理器120。处理器120可以被实现为硬件、固件和/或硬件和软件的组合。例如,处理器120可以包括被设计为执行本文所述操作的中央处理单元(CPU)、图形处理单元(GPU)、加速处理单元(APU)、微处理器、微控制器、数字信号处理器(DSP)、现场可编程门阵列(FPGA)、专用集成电路(ASIC)、通用单芯片或多芯片处理器、或其他可编程逻辑器件、离散栅极或晶体管逻辑、离散硬件组件或其任何组合。通用处理器可以是微处理器,或任何常规处理器、控制器、微控制器或状态机。处理器120还可以被实现为计算设备的组合,例如DSP和微处理器的组合、多个微处理器、一个或多个与DSP核心结合的微处理器、或者任何其他这样的配置。在一些实施例中,特定的过程和方法可以由特定于给定操作的电路来执行。
处理器120可以控制设备100和/或设备100的一组组件(例如,存储器130、存储组件140、输入组件150、输出组件160和通信接口170)的整体操作。
设备100可进一步包括存储器130。在一些实施例中,存储器130可以包括随机存取存储器(RAM)、只读存储器(ROM)、电可擦可编程只读存储器(EEPROM)、闪存、磁存储器、光存储器和/或另一类型的动态或静态存储设备。存储器130可以存储供处理器120使用(例如执行)的信息和/或指令。
设备100的存储组件140可以存储与设备100的操作和使用有关的信息和/或计算机可读指令和/或代码。例如,存储组件140可以包括硬盘(例如,磁盘、光盘、磁光盘和/或固态盘)、光盘(CD)、数字多功能盘(DVD)、通用串行总线(USB)闪存驱动器、个人计算机存储卡国际协会(PCMCIA)卡、软盘、盒式磁带、磁带、和/或另一种类型的非易失性计算机可读介质以及相应的驱动器。
设备100可以进一步包括输入组件150。输入组件150可以包括允许设备100例如经由用户输入(例如,触摸屏、键盘、小键盘、鼠标、触控笔、按钮、开关、麦克风、相机等)接收信息的一个或多个组件。可替换地或附加地,输入组件150可以包括用于感测信息的传感器(例如,全球定位系统(GPS)组件、加速度计、陀螺仪、致动器等)。
设备100的输出组件160可以包括一个或多个组件,这些组件可以提供设备100的输出信息(例如,显示器、液晶显示器(LCD)、发光二极管(LED)、有机发光二极管(OLED)、触觉反馈设备、扬声器等)。
设备100可以进一步包括通信接口170。通信接口170可以包括接收机组件、发射机组件和/或收发机组件。通信接口170可以使设备100能够与其他设备(例如,服务器、另一设备)建立连接和/或传输通信。通信可以通过有线连接、无线连接或有线和无线连接的组合来实现。通信接口170可以允许设备100从另一设备接收信息和/或向另一设备提供信息。在一些实施例中,通信接口170可以提供经由网络与另一设备的通信,例如局域网(LAN)、广域网(WAN)、城域网(MAN)、专用网络、自组织网络、内联网、因特网、基于光纤的网络、蜂窝网络(例如,第五代(5G)网络,长期演进(LTE)网络、第三代(3G)网络、码分多址(CDMA)网络等)、公共陆地移动网络(PLMN)、电话网络(例如,公共交换电话网络(PSTN))等、和/或这些网络或其他类型的网络的组合。可替换地或附加地,通信接口170可以提供经由设备对设备(D2D)的通信链路与另一个设备的通信,例如FlashLinQ、WiMedia、蓝牙、ZigBee、Wi-Fi、长期演进、5G等。在其他实施例中,通信接口170可以包括以太网接口、光学接口、同轴接口、红外接口、射频(RF)接口等。
设备100可以包括在核心网络240中,并执行本文所述的一个或多个过程。设备100可以基于处理器120执行非易失性计算机可读介质(例如存储器130和/或存储组件140)存储的计算机可读指令和/或代码来执行操作。计算机可读介质可以指非易失性存储器设备。存储器设备可以包括单个物理存储设备内的存储器空间和/或分布在多个物理存储设备上的存储器空间。
计算机可读指令和/或代码可以通过通信接口170从另一计算机可读介质或从另一设备读取到存储器130和/或存储组件140中。存储在存储器130和/或存储组件140中的计算机可读指令和/或代码,如果或者当由处理器120执行时,可以使得设备100执行本文所述的一个或多个过程。
可替换地或附加地,可以使用硬连线电路代替软件指令或与软件指令结合使用,以执行本文所述的一个或多个过程。因此,本文所描述的实施例不限于硬件电路和软件的任何特定组合。
提供图1所示的组件的数量和排列作为示例。在实践中,与图1所示的组件相比,可以有更多的组件、更少的组件、不同的组件或不同排列的组件。此外,图1中所示的两个或多个组件可以在单个组件内实现,或者图1所示的单个组件可以实现为多个分布式组件。附加地或可替换地,图1所示的一组(一个或多个)组件可以执行被描述为由图1所示的另一组组件执行的一个或多个操作。
图2是混合视频编解码器200的实施例的视图的框图。混合视频编解码器200可以包括传统的编解码器220和基于学习的编解码器230。混合编解码器的输入201可以是视频或图像,因为图像可以被视为特殊类型的视频(例如,具有一个图像的视频)。在图2中,传统的视频编解码器220可以用于压缩不同尺度(例如,原始分辨率或下采样)的输入视频201,下采样模块210的下采样率可以是固定的并且在编码器221和解码器223中都是已知的,或者下采样率可以是用户定义的,例如,100%(例如,不执行下采样)、50%、25%等,并且作为比特流224中的元数据进行发送,以通知解码器222。传统的视频编解码器可以是VVC、HEVC、H264或者诸如JPEG、JPEG2000的图像编解码器。下采样模块210可以是经典的图像下采样器或基于学习的图像下采样器。可以使用上采样模块250将解码的下采样视频203(例如,图2中的“低分辨率视频203”)上采样到视频的原始分辨率(例如,“高分辨率视频204”),其可以用于人类视觉。上采样模块250可以是经典的图像上采样器或基于学习的图像上采样器,例如基于学习的超分辨率模块。
在一些实施例中,混合视频编解码器200还可以采用基于学习的视频编解码器230来压缩下采样的视频202。
在编码器中,也可以生成重建视频203,并将其上采样到原始输入分辨率。然后可以从输入视频中减去上采样的重建视频205,以生成残差视频信号202,该残差视频信号202可以被馈送到图2的基于学习的编解码器230中。混合视频编解码器200的上采样模块240可以与上采样模块250相同(在低分辨率之后)。视频203可以在解码器处被解码。残差解码器238的输出可以添加到高分辨率视频204之上,以形成可用于机器视觉任务的重建视频205。
下面将进一步详细讨论的图4和图5中的网络可以使用图像来训练。所公开的网络,例如图6中的网络,需要使用图2中所示的残差信号202来重新训练。
在训练期间,基于学习的编解码器230的输入可以是残差信号/图像202,这也是真值(ground-truth)。损失函数可以如下利用率失真损失:
L=R+λmseLmse (1)
在等式1中,R表示比特流成本,其可以是估计的每像素比特(BPP)值,Lmse是残差图像202和对应的重建残差图像205之间的均方误差,如图2所示。λmse是用于折衷比特率成本和压缩性能的正权重因子。
在一些实施例中,率失真损失可以修改如下:
L=R+λms-ssimLms-ssim (2)
其中Lms-ssim是使用残差图像202和对应的重建残差图像205计算的MS-SSIM度量,λms-ssim是权重因子。
在一些实施例中,任务网络可以用于联合训练过程。可以添加机器视觉任务网络,例如对象检测网络YOLOv3或Faster R-CNN等,以用于联合训练。图2的高分辨率视频204可以是上采样的解码视频。L检测是在对象检测网络中计算的检测损失。总损失函数可以表示为等式3或4:
L=R+λmseLmse检测L检测 (3)
L=R+λms-ssimLms-ssim检测L检测 (4)
其中λ检测是正权重因子。在训练期间,机器视觉网络的模型参数可以是固定的,并且仅训练残差编码器231/解码器238、熵编码器233/解码器236和熵模型235的参数。在一些实施例中,机器视觉网络的参数可以与图2中的其余网络一起训练。
图3示出了诸如混合视频编解码器200的视频编码机器(VCM)的架构的实施例。传感器输出300沿着视频编码路径311通过VCM编码器310到达VCM解码器320,在VCM解码器320中它经历视频解码321。另一路径是用于特征提取312,到特征转换313,再到特征编码314和特征解码322。VCM解码器320的输出主要用于机器消耗,即机器视觉305。在一些情况下,它也可以用于人类视觉306。然后将执行一个或多个机器任务以理解视频内容。
图4和图5示出了一些实施例中的基于学习的图像编解码器230的架构。基于学习的编解码器230可以是图像编解码器,使得可以逐帧压缩上述部分中的残差视频信号而不考虑帧之间的时间冗余。例如,基于学习的图像编解码器230可以遵循如图4和图5所示的自动编码器架构。在一些实例中,由于量化操作401A和401B是舍入操作(例如,将浮点数舍入到其相邻整数),因此可以移除去量化模块。对应的去量化模块237可以是身份模块,并且可以从架构中移除。因此,可以根据量化模块232的操作移除图2中的去量化器模块237。
图4和图5的两种架构是类似的自动编码器架构。图4示出了包括分析网络410、合成网络420、量化401A、401B、算术编码器402A、402B和解码器403A、403B以及熵模型430的示例架构。区别在于分析网络410、合成网络420和熵模型430的细节。
此外,网络可以被设计用于规则图像的压缩。因此,每个卷积模块中的滤波器的数量可以更大。例如,在图2中,N=128且M=192或320。类似地,在图3中,N=192。由于在图2中基于学习的图像编解码器230可以用于压缩残差信号202,因此卷积滤波器模块中的滤波器的数量可以明显减少,以在性能下降较小的情况下降低复杂度。在图5中,广义分裂归一化(GDN)模块511和逆广义分裂归一化(IGDN)模块521可以用整流线性单元(ReLU 531)代替。为了降低复杂度,可以移除图4中的注意模块;高斯混合熵模型可以用图2所示的尺度超先验模块代替。
在本公开中,图4和图5中的架构可以作为示例,可以利用遵循图4或图5的精神的任何自动编码器或其降低复杂度的版本。例如,图2中示出了这种架构的一个示例。在一些实施例中,基于学习的编解码器230可以是视频编解码器,从而可以利用残差信号202中的帧之间的时间冗余。图7中示出了基于学习的视频编解码器230的示例。
图6示出了训练一个或多个网络的过程的实施例的流程图。该过程可以开始于操作S610,在操作S610,在混合编解码器处接收包括至少一个视频或图像的输入。混合编解码器可以包括第一编解码器和第二编解码器,其中第一编解码器是被设计用于人类消费的传统编解码器,第二编解码是被设计用于机器视觉的基于学习的编解码器。例如,混合编解码器可以是包括第一编解码器和第二编解码器的混合视频编解码器200。第一编解码器可以是传统编解码器220,第二编解码器可以是接收输入201的基于学习的编解码器230,如图2所示。该过程进行到操作S620,在操作S620,使用第一编解码器压缩输入。例如,输入201可以被第一编解码器220压缩。压缩可以包括使用下采样模块210对输入进行下采样,以及使用产生残差信号202的上采样模块240对压缩的输入进行上采样。过程进行到操作S630,在操作S630,使用量化器(例如量化器232)对残差信号(例如残差信号202)进行量化,以获得输入的量化表示。过程进行到操作S640,在操作S640,使用熵模型(例如熵模型235)的一个或多个卷积滤波器模块对输入的量化表示进行熵编码。过程进行到操作S650,在操作S650,使用输入的经熵编码的量化表示和重建视频(例如重建视频205)来训练一个或多个网络。
为了指定混合视频编解码器200,需要通过高级语法指定几个参数,例如序列参数集、图片参数集、图片头等。或者,可以通过系统级别的元数据或使用SEI消息来传递这些信息。
下采样率:可以定义一组下采样率,例如{r0,r1,…,rN-1},其中N是下采样率的数量。假设输入图像分辨率的高度和宽度为W,H,下采样率为rn,下采样图像的高度和宽度分别为rnW和rnH。指定索引n∈{0,1,…N-1},以指示在混合视频编解码器中使用采样率rp。解码器需要使用上采样率来对解码的低分辨率图像/视频进行上采样,以获得高分辨率图像/视频。可以使用固定长度代码或p阶指数Golomb代码对索引n进行二值化,并通过旁路编码在比特流中发送。在一些实施例中,p=0或1。
上采样模块(上采样器):如果在混合视频编解码器中仅使用一种类型的上采样器,则不需要在比特流中指定上采样器。然而,如果在编解码器中可以采用多种类型的上采样器,每种上采样器都具有不同的复杂度和性能,则需要在比特流中指定关于上采样器类型的信息。例如,如果有M种类型的上采样器,则使用索引m∈{0,1,…M-1}来指定使用哪种类型的上采样器。可以使用固定长度代码或p阶指数Golomb代码对索引m进行二值化,并通过旁路编码在比特流中发送。在一些实施例中,p=0或1。
用于对下采样图像/视频进行编码的编解码器:如果在用于对下采样图像/视频进行编码的混合视频编解码器中仅使用一种类型的编解码器,则不需要在比特流中指定编解码器。然而,如果在系统中可以采用多种类型的编解码器,例如VVC、HEVC、H264等,则需要在比特流中指定关于编解码器类型的信息,以允许在解码器中进行适当解码。例如,如果有Q种类型的上采样器,则使用索引q∈{0,1,…Q-1}来指定使用哪种类型的编解码器。可以使用固定长度代码或p阶指数Golomb代码对索引q进行二值化,并通过旁路编码在比特流中发送。在一些实施例中,p=0或1。
用于对残差图像/视频进行编码的编解码器:类似地,如果在用于对残差图像/视频进行编码的混合视频编解码器中仅使用一种类型的基于学习的编解码器,则不需要在比特流中指定编解码器。然而,如果在系统中可以采用多种类型的编解码器,例如图2-4所示的编解码器,则需要在比特流中指定关于编解码器类型的信息,以允许在解码器中进行适当解码。例如,如果有L种类型的编解码器,则可以使用索引l∈{0,1,…L-1}来指定使用哪种类型的编解码器。可以使用固定长度代码或p阶指数Golomb代码对索引l进行二值化,并通过旁路编码在比特流中发送。在一些实施例中,p=0或1。编码器和解码器都应该知道不同类型的编解码器。
在一些实施例中,不使用索引,而是可以在高级语法或元数据中指定关于基于学习的编解码器的网络结构的描述。例如,我们可以指定解码器网络中的各个模块,例如具有N个输出滤波器的3×3卷积模块、具有2×上采样的N个输出滤波器的3×3卷积模块等。除了网络结构之外,可以在比特流中发送相应的解码器模型参数,以允许解码器解码比特流并生成重建的残差图像/视频。解码器网络必须与编码器网络对称。残差图像/视频的部分重建是可能的。另外,不是基于学习的编解码器的浮点实现,而是可以指定定点实现。
用于不同机器任务的参数集选择:在一些实施例中,对于残差视频信号编码分支,可以为不同的机器视觉任务训练不同的参数集,同时不同的任务共享相同的网络架构。为了对一个特定视频输入执行残差编码,如果该框架要支持多于一个任务,则应当指定目标机器任务。例如,如果有T种类型的机器视觉任务,则可以使用索引t∈{0,1,…T-1}来指定目标是哪种类型的机器任务。因此,残差信号编码分支将切换到为该任务训练的对应的参数集。
量化:量化通常是指将具有连续变化的数据划分为有限的划分级别,并为每个级别分配特定值。量化的最基本形式是均匀量化。均匀量化是一种在一定范围内具有相同大小的量化间隔的方法。例如,有一种方法是通过将特定输入数据的最小值和最大值除以期望量化的量化比特来设置量化间隔大小。
上述公开提供了图示和描述,但并不旨在穷举或将实施方式限制为所公开的精确形式。根据上述公开,修改和变化是可能的,或者可以从实施方式的实践中获得。
可以理解,本文公开的过程/流程图中的框的特定顺序或层次是示例方法的说明。可以理解,基于设计偏好,过程/流程图中的框的特定顺序或层次可以重新排列。此外,一些框可以被组合或省略。所附的方法权利要求以样本顺序呈现各个框的元素,而不意味着局限于所呈现的特定顺序或层次。
一些实施例可以涉及任何可能的集成技术细节级别的系统、方法和/或计算机可读介质。此外,上述组件中的一个或多个可以被实现为存储在计算机可读介质上并可由至少一个处理器(和/或可以包括至少一个处理器)执行的指令。计算机可读介质可以包括计算机可读非易失性存储介质(或媒介),其上具有计算机可读程序指令,用于使处理器执行操作。
计算机可读存储介质可以是有形设备,该有形设备可以保留和存储供指令执行设备使用的指令。计算机可读存储介质可以是,但不限于,例如电子存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或前述的任何合适的组合。计算机可读存储介质的更具体示例的非详尽列表包括以下内容:便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式光盘只读存储器(CD-ROM)、数字通用盘(DVD)、记忆棒、软盘、机械编码设备(例如其上记录有指令的穿孔卡或凹槽中的凸起结构)、以及上述的任何合适的组合。本文所使用的计算机可读存储介质不应解释为瞬时信号本身,例如无线电波或其它自由传播的电磁波、通过波导或其它传输介质传播的电磁波(例如,通过光纤电缆的光脉冲)、或通过导线传输的电信号。
本文描述的计算机可读程序指令可以经由网络(例如,因特网、局域网、广域网和/或无线网络)从计算机可读存储介质下载到相应的计算/处理设备,或者下载到外部计算机或外部存储设备。该网络可以包括铜传输电缆、光传输光纤、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令以存储在相应的计算/处理设备内的计算机可读存储介质中。
用于执行操作的计算机可读程序代码/指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、集成电路的配置数据、或者以一种或多种编程语言的任何组合编写的源代码或目标代码,该编程语言包括面向对象的编程语言(例如Smalltalk、C++等)以及过程编程语言(例如“C”编程语言或类似编程语言)。计算机可读程序指令可以完全在用户的计算机上执行、部分在用户的计算机上执行、作为独立的软件包,部分在用户的计算机上执行部分在远程计算机上执行,或者完全在远程计算机或服务器上执行。在后一种情况下,远程计算机可以通过任何类型的网络(包括局域网(LAN)或广域网(WAN))连接到用户的计算机,或者可以连接到外部计算机(例如,通过使用因特网服务提供商的因特网)。在一些实施例中,电子电路(包括例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA))可以通过利用计算机可读程序指令的状态信息来执行计算机可读程序指令以使电子电路个性化,以执行各方面或操作。
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,以产生机器指令,使得经由计算机或其它可编程数据处理装置的处理器执行时,创建用于实现在流程图和/或框图的一个或多个框中指定的操作的手段。这些计算机可读程序指令还可以存储在计算机可读存储介质中,该计算机可读存储介质可以指导计算机、可编程数据处理装置和/或其它设备以特定方式操作,使得其中存储有指令的计算机可读存储介质包括一种制品,该制品包括实现在流程图和/或框图的一个或多个框中指定的操作的各方面的指令。
计算机可读程序指令还可以被加载到计算机、其它可编程数据处理装置或其它设备上,以使得在计算机、其它可编程装置或其它设备上执行一系列操作,从而产生计算机实现的过程,使得在计算机、其它可编程装置或其它设备上执行的指令实现在流程图和/或框图的一个或多个框中指定的操作。
附图中的流程图和框图示出了根据各个实施例的系统、方法和计算机可读介质的可能的实施方式的架构、功能和操作。在这方面,流程图或框图中的每个框可以表示指令的模块、片段或部分,其包括用于实现一个或多个指定逻辑操作的一个或多个可执行指令。该方法、计算机系统和计算机可读介质可以包括比附图中所示的更多的框、更少的框、不同的框或不同排列的框。在一些可替代的实施方式中,框中的操作可以不按附图中的顺序发生。例如,连续示出的两个框实际上可以同时或基本上同时执行,或者这些框有时可以以相反的顺序执行,这取决于所涉及的功能。框图和/或流程图中的每个框、以及框图和/或流程图中的框的组合,可以由执行指定操作或执行专用硬件和计算机指令的组合的基于专用硬件的系统来实现。
显然,本文所述的系统和/或方法可以以不同形式的硬件、固件或硬件和软件的组合来实现。用于实现这些系统和/或方法的实际专用控制硬件或软件代码并限制这些实施方式。因此,本文在没有参考特定软件代码的情况下描述了系统和/或方法的操作和行为——应当理解,软件和硬件可以被设计为基于本文的描述来实现该系统和/或方法。
上述公开还包括以下列出的实施例:
(1)一种对用于机器视觉和人/机混合视觉的视频进行编码的方法,所述方法由一个或多个处理器执行,所述方法包括:在混合编解码器处接收输入,所述输入包括视频或图像数据中的至少一个,所述混合编解码器包括第一编解码器和第二编解码器,其中所述第一编解码器是被设计用于人类消费的传统编解码器,所述第二编解码器是被设计用于机器视觉的基于学习的编解码器;使用所述第一编解码器压缩所述输入,其中所述压缩包括使用下采样模块对所述输入进行下采样,以及使用上采样模块对压缩的输入进行上采样,以产生残差信号;量化所述残差信号以获得所述输入的量化表示;使用一个或多个卷积滤波器模块对所述输入的量化表示进行熵编码;以及使用经熵编码的量化表示来训练一个或多个网络。
(2)根据特征(1)所述的方法,其中,所述传统的编解码器包括VVC、HEVC、H264、JPEG或JPEG2000编解码器中的任一种。
(3)根据特征(1)或(2)所述的方法,其中,所述基于学习的编解码器包括图像编解码器,并且在不考虑时间冗余的情况下逐帧压缩所述残差信号。
(4)根据特征(1)-(3)任一个所述的方法,其中,所述下采样模块是经典的图像下采样器和基于学习的图像下采样器之一。
(5)根据特征(1)-(4)任一个所述的方法,其中,所述下采样模块使用下采样率N,所述下采样率N在编码器和解码器中都是固定且已知的,或者所述下采样率N是用户定义的。
(6)根据特征(1)-(5)任一个所述的方法,其中,所述上采样模块是经典的图像上采样器和基于学习的图像上采样器之一。
(7)根据特征(1)-(6)任一个所述的方法,其中,从所述输入中减去上采样的压缩的输入以生成第二残差信号,并且将所述第二残差信号提供给所述基于学习的编解码器。
(8)根据特征(1)-(7)任一个所述的方法,其中,所述第二编解码器的输出被添加到所述上采样的压缩的输入之上,以形成适用于机器视觉任务的重建视频。
(9)根据特征(1)-(8)任一个所述的方法,其中,所述混合编解码器的所述输入是真值。
(10)根据特征(1)-(9)任一个所述的方法,其中,机器视觉网络是固定的,并且对所述第二编解码器的残差编码器、熵编码器和熵模型的参数进行训练。
(11)一种对用于机器视觉和人/机混合视觉的视频进行编码的装置,包括:至少一个存储器,被配置为存储计算机程序代码;至少一个处理器,被配置为访问所述计算机程序代码,并按照所述计算机程序代码的指示操作,所述计算机程序代码包括:设置代码,被配置为使所述至少一个处理器在混合编解码器处接收输入,所述输入包括视频或图像数据中的至少一个,所述混合编解码器包括第一编解码器和第二编解码器,其中所述第一编解码器是被设计用于人类消费的传统编解码器,所述第二编解码器是被设计用于机器视觉的基于学习的编解码器;压缩代码,被配置为使所述至少一个处理器使用所述第一编解码器压缩所述输入,其中所述压缩代码包括下采样代码,被配置为使所述至少一个处理器使用下采样模块对所述输入进行下采样,以及所述压缩代码包括上采样代码,被配置为使所述至少一个处理器使用上采样模块对压缩的输入进行上采样,以产生残差信号;量化代码,被配置为使所述至少一个处理器量化所述残差信号以获得所述输入的量化表示;熵编码代码,被配置为使所述至少一个处理器使用一个或多个卷积滤波器模块对所述输入的量化表示进行熵编码;以及训练代码,被配置为使所述至少一个处理器使用经熵编码的量化表示来训练一个或多个网络。
(12)根据特征(11)所述的装置,其中,所述传统的编解码器包括VVC、HEVC、H264、JPEG或JPEG2000编解码器中的任一种。
(13)根据特征(11)或(12)所述的装置,其中,所述基于学习的编解码器包括图像编解码器,并且在不考虑时间冗余的情况下逐帧压缩所述残差信号。
(14)根据特征(11)-(13)任一个所述的装置,其中,所述下采样模块是经典的图像下采样器和基于学习的图像下采样器之一。
(15)根据特征(11)-(14)任一个所述的装置,其中,所述下采样模块使用下采样率N,所述下采样率N在编码器和解码器中都是固定且已知的,或者所述下采样率N是用户定义的。
(16)根据特征(11)-(15)任一个所述的装置,其中,所述上采样模块是经典的图像上采样器和基于学习的图像上采样器之一。
(17)根据特征(11)-(16)任一个所述的装置,其中,从所述输入中减去上采样的压缩的输入以生成第二残差信号,并且将所述第二残差信号提供给所述基于学习的编解码器。
(18)根据特征(17)所述的装置,其中,所述第二编解码器的输出被添加到所述上采样的压缩的输入之上,以形成适用于机器视觉任务的重建视频。
(19)根据特征(11)-(18)任一个所述的装置,其中,所述混合编解码器的所述输入是真值。
(20)一种非易失性计算机可读介质,其上存储有计算机指令,当所述计算机指令由至少一个处理器执行时,使所述至少一个处理器执行一种对用于机器视觉和人/机混合视觉的视频进行编码的方法,所述方法包括:在混合编解码器处接收输入,所述输入包括视频或图像数据中的至少一个,所述混合编解码器包括第一编解码器和第二编解码器,其中所述第一编解码器是被设计用于人类消费的传统编解码器,所述第二编解码器是被设计用于机器视觉的基于学习的编解码器;使用所述第一编解码器压缩所述输入,其中所述压缩包括使用下采样模块对所述输入进行下采样,以及使用上采样模块对压缩的输入进行上采样,以产生残差信号;量化所述残差信号以获得所述输入的量化表示;使用一个或多个卷积滤波器模块对所述输入的量化表示进行熵编码;以及使用经熵编码的量化表示来训练一个或多个网络。

Claims (20)

1.一种对用于机器视觉和人/机混合视觉的视频进行编码的方法,其特征在于,所述方法由一个或多个处理器执行,所述方法包括:
在混合编解码器处接收输入,所述输入包括视频或图像数据中的至少一个,所述混合编解码器包括第一编解码器和第二编解码器,其中所述第一编解码器是被设计用于人类消费的传统编解码器,所述第二编解码器是被设计用于机器视觉的基于学习的编解码器;
使用所述第一编解码器压缩所述输入,其中所述压缩包括使用下采样模块对所述输入进行下采样,以及使用上采样模块对压缩的输入进行上采样,以产生残差信号;
量化所述残差信号以获得所述输入的量化表示;
使用一个或多个卷积滤波器模块对所述输入的量化表示进行熵编码;以及
使用经熵编码的量化表示来训练一个或多个网络。
2.根据权利要求1所述的方法,其特征在于,所述传统的编解码器包括VVC、HEVC、H264、JPEG或JPEG2000编解码器中的任一种。
3.根据权利要求1所述的方法,其特征在于,所述基于学习的编解码器包括图像编解码器,并且在不考虑时间冗余的情况下逐帧压缩所述残差信号。
4.根据权利要求1所述的方法,其特征在于,所述下采样模块是经典的图像下采样器和基于学习的图像下采样器之一。
5.根据权利要求4所述的方法,其特征在于,所述下采样模块使用下采样率N,所述下采样率N在编码器和解码器中都是固定且已知的,或者所述下采样率N是用户定义的。
6.根据权利要求1所述的方法,其特征在于,所述上采样模块是经典的图像上采样器和基于学习的图像上采样器之一。
7.根据权利要求1所述的方法,其特征在于,从所述输入中减去上采样的压缩的输入以生成第二残差信号,并且将所述第二残差信号提供给所述基于学习的编解码器。
8.根据权利要求7所述的方法,其特征在于,所述第二编解码器的输出被添加到所述上采样的压缩的输入之上,以形成适用于机器视觉任务的重建视频。
9.根据权利要求1所述的方法,其特征在于,所述混合编解码器的所述输入是真值。
10.根据权利要求1所述的方法,其特征在于,机器视觉网络是固定的,并且对所述第二编解码器的残差编码器、熵编码器和熵模型的参数进行训练。
11.一种对用于机器视觉和人/机混合视觉的视频进行编码的装置,其特征在于,所述装置包括:
至少一个存储器,被配置为存储计算机程序代码;
至少一个处理器,被配置为访问所述计算机程序代码,并按照所述计算机程序代码的指示操作,所述计算机程序代码包括:
设置代码,被配置为使所述至少一个处理器在混合编解码器处接收输入,所述输入包括视频或图像数据中的至少一个,所述混合编解码器包括第一编解码器和第二编解码器,其中所述第一编解码器是被设计用于人类消费的传统编解码器,所述第二编解码器是被设计用于机器视觉的基于学习的编解码器;
压缩代码,被配置为使所述至少一个处理器使用所述第一编解码器压缩所述输入,其中所述压缩代码包括下采样代码,被配置为使所述至少一个处理器使用下采样模块对所述输入进行下采样,以及所述压缩代码包括上采样代码,被配置为使所述至少一个处理器使用上采样模块对压缩的输入进行上采样,以产生残差信号;
量化代码,被配置为使所述至少一个处理器量化所述残差信号以获得所述输入的量化表示;
熵编码代码,被配置为使所述至少一个处理器使用一个或多个卷积滤波器模块对所述输入的量化表示进行熵编码;以及
训练代码,被配置为使所述至少一个处理器使用经熵编码的量化表示来训练一个或多个网络。
12.根据权利要求11所述的装置,其特征在于,所述传统的编解码器包括VVC、HEVC、H264、JPEG或JPEG2000编解码器中的任一种。
13.根据权利要求11所述的装置,其特征在于,所述基于学习的编解码器包括图像编解码器,并且在不考虑时间冗余的情况下逐帧压缩所述残差信号。
14.根据权利要求11所述的装置,其特征在于,所述下采样模块是经典的图像下采样器和基于学习的图像下采样器之一。
15.根据权利要求14所述的装置,其特征在于,所述下采样模块使用下采样率N,所述下采样率N在编码器和解码器中都是固定且已知的,或者所述下采样率N是用户定义的。
16.根据权利要求11所述的装置,其特征在于,所述上采样模块是经典的图像上采样器和基于学习的图像上采样器之一。
17.根据权利要求11所述的装置,其特征在于,从所述输入中减去上采样的压缩的输入以生成第二残差信号,并且将所述第二残差信号提供给所述基于学习的编解码器。
18.根据权利要求17所述的装置,其特征在于,所述第二编解码器的输出被添加到所述上采样的压缩的输入之上,以形成适用于机器视觉任务的重建视频。
19.根据权利要求11所述的装置,其特征在于,所述混合编解码器的所述输入是真值。
20.一种非易失性计算机可读介质,其上存储有计算机指令,当所述计算机指令由至少一个处理器执行时,使所述至少一个处理器:
在混合编解码器处接收输入,所述输入包括视频或图像数据中的至少一个,所述混合编解码器包括第一编解码器和第二编解码器,其中所述第一编解码器是被设计用于人类消费的传统编解码器,所述第二编解码器是被设计用于机器视觉的基于学习的编解码器;
使用所述第一编解码器压缩所述输入,其中所述压缩包括使用下采样模块对所述输入进行下采样,以及使用上采样模块对压缩的输入进行上采样,以产生残差信号;
量化所述残差信号以获得所述输入的量化表示;
使用一个或多个卷积滤波器模块对所述输入的量化表示进行熵编码;以及
使用经熵编码的量化表示来训练一个或多个网络。
CN202280016592.9A 2021-11-09 2022-09-28 对用于机器视觉的视频进行编码的方法和装置 Pending CN116982313A (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US202163277517P 2021-11-09 2021-11-09
US63/277,517 2021-11-09
US17/950,564 US20230144455A1 (en) 2021-11-09 2022-09-22 Method and apparatus for video coding for machine vision
US17/950,564 2022-09-22
PCT/US2022/045004 WO2023086164A1 (en) 2021-11-09 2022-09-28 Method and apparatus for video coding for machine vision

Publications (1)

Publication Number Publication Date
CN116982313A true CN116982313A (zh) 2023-10-31

Family

ID=86228994

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202280016592.9A Pending CN116982313A (zh) 2021-11-09 2022-09-28 对用于机器视觉的视频进行编码的方法和装置

Country Status (5)

Country Link
US (1) US20230144455A1 (zh)
JP (1) JP2024512914A (zh)
KR (1) KR20230133330A (zh)
CN (1) CN116982313A (zh)
WO (1) WO2023086164A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116437102B (zh) * 2023-06-14 2023-10-20 中国科学技术大学 可学习通用视频编码方法、系统、设备及存储介质

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9571856B2 (en) * 2008-08-25 2017-02-14 Microsoft Technology Licensing, Llc Conversion operations in scalable video encoding and decoding
CN116546221A (zh) * 2016-02-05 2023-08-04 渊慧科技有限公司 使用神经网络压缩图像
DE202017007512U1 (de) * 2016-04-11 2022-04-28 Magic Pony Technology Limited Bewegungsschätzung durch maschinelles Lernen

Also Published As

Publication number Publication date
KR20230133330A (ko) 2023-09-19
US20230144455A1 (en) 2023-05-11
WO2023086164A1 (en) 2023-05-19
JP2024512914A (ja) 2024-03-21

Similar Documents

Publication Publication Date Title
US11140401B2 (en) Coded-block-flag coding and derivation
US10462467B2 (en) Refining filter for inter layer prediction of scalable video coding
JP7303322B2 (ja) イントラ予測のためのエンコーダ、デコーダおよび対応する方法
RU2668723C2 (ru) Способ и оборудование для кодирования и декодирования видеосигналов
CN113796014B (zh) 一种对视频数据进行解码的方法和装置
KR101653511B1 (ko) 인터-레이어 잔차 예측
CN106998470B (zh) 解码方法、编码方法、解码设备和编码设备
CN110708553A (zh) 视频编解码方法、计算机设备和存储装置
KR20150050561A (ko) 계층간 화소 샘플 예측
KR20170002611A (ko) 팔레트 코딩을 사용하는 비디오 인코딩 및 디코딩을 위한 방법 및 기술 장비
CN104081776A (zh) 在电子设备上减小参考图像集信号开销
EP1961235A1 (en) Method and apparatus for encoding and decoding video signals on group basis
US20190313092A1 (en) Chrominance Prediction Method and Apparatus
KR20230087474A (ko) 병렬 코딩을 위한 양방향 데이터 블록들의 조인트 터미네이션
KR20130070644A (ko) 비디오 코딩 방법, 장치 및 컴퓨터 프로그램
KR102573294B1 (ko) 서브블록 병합 후보를 위한 개별적인 병합 목록 및 비디오 코딩을 위한 인트라-인터 기술 조화
WO2014000168A1 (en) Cross-layer cross-channel residual prediction
JP2016506165A (ja) インターレイヤの動きデータ継承
CN116982313A (zh) 对用于机器视觉的视频进行编码的方法和装置
EP3151559A1 (en) Method for coding and decoding a plurality of picture blocks and corresponding devices
KR20160118365A (ko) 코딩을 위한 방법 및 장치
JP2021526762A (ja) 動画像符号化装置、動画像復号装置、動画像符号化方法および動画像復号方法
KR102267212B1 (ko) 임베디드 이미지 코덱을 위한 서브-블록 기반 엔트로피 코딩
US20240121408A1 (en) Region of interest coding for vcm
US9549193B2 (en) Video encoding method and video encoding device

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination