CN107483948A - 一种webp压缩处理中像素宏块处理方法 - Google Patents

一种webp压缩处理中像素宏块处理方法 Download PDF

Info

Publication number
CN107483948A
CN107483948A CN201710842465.5A CN201710842465A CN107483948A CN 107483948 A CN107483948 A CN 107483948A CN 201710842465 A CN201710842465 A CN 201710842465A CN 107483948 A CN107483948 A CN 107483948A
Authority
CN
China
Prior art keywords
macro block
pixel
pixel macroblock
processing
mrow
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
CN201710842465.5A
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.)
Zhengzhou Yunhai Information Technology Co Ltd
Original Assignee
Zhengzhou Yunhai Information Technology Co Ltd
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 Zhengzhou Yunhai Information Technology Co Ltd filed Critical Zhengzhou Yunhai Information Technology Co Ltd
Priority to CN201710842465.5A priority Critical patent/CN107483948A/zh
Publication of CN107483948A publication Critical patent/CN107483948A/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/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • 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

Landscapes

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

Abstract

本发明公开了一种webp压缩处理中像素宏块处理方法,该方法包括:在原始图像的像素宏块周边填充虚拟像素宏块,使填充后的像素宏块组成平行四边形;将位于平行四边形左边长上的一行像素宏块作为宏块处理顺序的第一行,将与位于平行四边形左边长上的一行像素宏块相邻并平行的下一行像素宏块作为宏块处理顺序的第二行,依次类推,直至将位于平行四边形右边长上的一行像素宏块作为宏块处理顺序的最后一行;按照宏块处理顺序进行像素宏块处理。该方法实现提高宏块并行流水效率。

Description

一种webp压缩处理中像素宏块处理方法
技术领域
本发明涉及图像处理技术领域,特别是涉及一种webp压缩处理中像素宏块处理方法。
背景技术
目前,Webp图像压缩标准是谷歌公司提出的一种基于预测的图像压缩方案,其广泛的应用到网页图片加载,各种即时通信工具的图片处理上,有非常强大的应用前景,图1是在传统CPU结构下的Webp压缩软件的数据处理框图。
图像处理一般是针对于像素块的,像素块的大小有16*16,8*8,4*4等。预测模块的主要功能是根据像素块的边界值(像素块的上边界和左边界的像素等),根据预测模式计算该预测模式下的与原始的像素的标准差,即通过预测找出一个标准差最小的预测模式,然后经过DCT变化和系数量化大幅度减少了像素块中的冗余信息,最后经过熵编码进一步压缩数据后输出。边界重建的反馈回路是根据系数量化后的值回复出像素数据,用作下一个相邻的宏块的预测用。
在传统的CPU的软件结构下,块之间的处理步骤如下图2所示。图2所示为一副64*48的图像,可以分解为12个16*16的像素宏块,宏块之间的处理顺序为从水平A方向扫描,然后垂直B方向扫描,像素宏块被按照1~12的顺序依次处理。另外,如图2中,像素宏块1处理完毕后得到,该像素宏块的下边界和右边界的值,在图中如虚线所示,下边界和右边界的值会参与到其相邻的右像素宏块2和下像素宏块5的计算中,即像素宏块1产生的下边界会作为像素宏块5的上边界参与运算,像素宏块1产生的右边界会作为像素宏块2的左边界参与运算,因此在传统以CPU为计算中心的软件架构下,需要额外的存储空间来存放迭代更新的边界值。存储两个边界值得内存的大小分别是原始图片的长和宽乘以单位像素的存储空间。
在传统以CPU为核心的计算框架下,Webp的软件压缩流程中,数据块的处理都是串行执行,而且都是内存操作。然而在以FPGA为中心的场景下,即以FPGA为加深核心加速Webp图像处理,传统的软件处理流程存在一些问题:1、在传统的webp软件压缩流程中,像素宏块处理是按照如图2中的宏块数字顺序执行的,如果直接移植到FPGA中,在计算完成宏块1的之前,是无法计算宏块2的,同理在计算完成宏块2之前,宏块3也没办法计算,造成宏块之间的数据依赖性无法解决,无法发挥FPGA的独有的并行流水线的特性;2、需要在FPGA中设计特殊的控制逻辑和内存空间,来存储和分配每个宏块计算完成之后的边界值,也会造成流水线无法完全展开,不能发挥FPGA的并行数据处理特性。
发明内容
本发明的目的是提供一种webp压缩处理中像素宏块处理方法,以实现提高宏块并行流水效率。
为解决上述技术问题,本发明提供一种webp压缩处理中像素宏块处理方法,该方法包括:
在原始图像的像素宏块周边填充虚拟像素宏块,使填充后的像素宏块组成平行四边形;
将位于平行四边形左边长上的一行像素宏块作为宏块处理顺序的第一行,将与位于平行四边形左边长上的一行像素宏块相邻并平行的下一行像素宏块作为宏块处理顺序的第二行,依次类推,直至将位于平行四边形右边长上的一行像素宏块作为宏块处理顺序的最后一行;
按照宏块处理顺序进行像素宏块处理。
优选的,所述在原始图像的像素宏块周边填充虚拟像素宏块,包括:
在原始图像的像素宏块的左边区域和右边区域填充虚拟像素宏块;其中,原始图像中高小于宽。
优选的,原始图像的大小为M*N,M为高的宏块数量,N为宽的宏块数量。
优选的,填充的虚拟像素宏块的数量为min(M,N)*(min(M,N)-1)。
优选的,在整个原始图像处理中,有效数据的占比率δ的表达式如下:
优选的,按照宏块处理顺序进行像素宏块处理之前,还包括:将像素宏块处理移植到FPGA中。
优选的,所述按照宏块处理顺序进行像素宏块处理之后,FPGA中宏块处理的行间完全并行流水。
本发明所提供的一种webp压缩处理中像素宏块处理方法,在原始图像的像素宏块周边填充虚拟像素宏块,使填充后的像素宏块组成平行四边形;将位于平行四边形左边长上的一行像素宏块作为宏块处理顺序的第一行,将与位于平行四边形左边长上的一行像素宏块相邻并平行的下一行像素宏块作为宏块处理顺序的第二行,依次类推,直至将位于平行四边形右边长上的一行像素宏块作为宏块处理顺序的最后一行;按照宏块处理顺序进行像素宏块处理。可见,在原始图像中引入虚拟宏块,虚拟宏块本身是一系列特性的像素值,这些虚拟的像素也参与到所有的运算中,这些特定的值产生的边界也会参与到其相邻的像素宏块的计算中,通过虚拟宏块显著的提高基于FPGA的Webp压像素宏块之间的并行流水。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为传统CPU结构下的webp压缩软件的数据处理框图;
图2为像素宏块分布图;
图3为本发明所提供的一种webp压缩处理中像素宏块处理方法的流程图;
图4为填充虚拟像素宏块后的像素宏块分布图;
图5为另一种填充虚拟像素宏块后的像素宏块分布图。
具体实施方式
本发明的核心是提供一种webp压缩处理中像素宏块处理方法,以实现提高宏块并行流水效率。
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
FPGA:FieldProgrammable Gate Array,表示现场可编程与门阵列;
LUT:LookUptable,表示查找表;
WebP表示一种图片压缩标准;
OpenCL表示一种并行编程语言。
请参考图3,图3为本发明所提供的一种webp压缩处理中像素宏块处理方法的流程图,该方法包括:
S11:在原始图像的像素宏块周边填充虚拟像素宏块,使填充后的像素宏块组成平行四边形;
S12:将位于平行四边形左边长上的一行像素宏块作为宏块处理顺序的第一行,将与位于平行四边形左边长上的一行像素宏块相邻并平行的下一行像素宏块作为宏块处理顺序的第二行,依次类推,直至将位于平行四边形右边长上的一行像素宏块作为宏块处理顺序的最后一行;
S13:按照宏块处理顺序进行像素宏块处理。
可见,在原始图像中引入虚拟宏块,虚拟宏块本身是一系列特性的像素值,这些虚拟的像素也参与到所有的运算中,这些特定的值产生的边界也会参与到其相邻的像素宏块的计算中,通过虚拟宏块显著的提高基于FPGA的Webp压像素宏块之间的并行流水。
基于上述方法,进一步的,步骤S11中,在原始图像的像素宏块周边填充虚拟像素宏块的过程具体为:在原始图像的像素宏块的左边区域和右边区域填充虚拟像素宏块;其中,原始图像中高小于宽。
具体的,原始图像的大小为M*N,M为高的宏块数量,N为宽的宏块数量。
其中,填充的虚拟像素宏块的数量为min(M,N)*(min(M,N)-1)。
其中,在整个原始图像处理中,有效数据的占比率δ的表达式如下:
进一步的,步骤S13之前,还包括:将像素宏块处理移植到FPGA中。
其中,所述按照宏块处理顺序进行像素宏块处理之后,FPGA中宏块处理的行间完全并行流水。
本发明基本思想是引入虚拟宏块的概念,虚拟宏块本身是一系列特性的像素值,这些虚拟的像素也参与到所有的运算中,这些特定的值产生的边界也会参与到其相邻的像素宏块的计算中,通过虚拟宏块技术可以显著的提高基于FPGA的Webp压像素宏块之间的并行流水处理效率,提升系统的性能。
如图4和图5,分别表示原始图像高和宽不同的情况下的虚拟像素宏块的填充方案。填充过程是基于原始图像像素宏块分布,填充虚拟像素宏块,使得填充后的像素宏块分布组成平行四边形,每一行都有相同的宏块数量。
如图4,在原始图像高High大于宽Width的情况下,虚拟宏块填充模式如图所示。虚拟宏块处理顺序按照图中黑色虚线表示,即v1,v2以及实际宏块1组成宏块处理顺序的第一行,v3和5,2组成第二行,依次类推。宏块之间的虚线表示宏块经过处理后重建产生的边界值。
设原始图像的大小为M*N,M和N分别表示高和宽的宏块数量,则填充的虚拟宏块数量等于min(M,N)*(min(M,N)-1),则在整个原始图像处理中,有效数据计算的占比率在最差情况下,即M=N,且M,N都较大的情况下,δ≈0.5。
虽然在计算效率上有损失,在极差的情况下要损失二分之一的计算效率,但是能带来系统设计方面的一些巨大的提升,因而可以提升总体的webp压缩系统的性能。
本发明优点如下:
1、使得在FPGA的中宏块处理的行间完全并行流水,如图4、5中,所有的计算行内所有的宏块数据之间没有数据依赖关系,计算所依赖的边界值都可以在上一次的行内计算中确定,因而可以实现在行间的宏块并行或者流水处理;
2、填充的虚拟宏块的值是一些列的特定值,这些特定值经过如图1所示的处理流程之后,会重建产生新的将要参与相邻宏块计算的特定边界值,这些值可以根据计算需要实时设定,这样带来的好处是,每一行产生的边界值的个数以及产生的顺序都是固定,如图4中所示,每计算一行都产生3个下边界和3个右边界值,这些值产生顺序都是沿着黑色虚线所指示的方向,和相邻下一行宏块数量和计算方向一致,这样在基于FPGA的OpenCL语言设计其数据流水线的过程中,无需额外的逻辑来控制边界数据流,节省FPGA的资源,提高系统的性能;
3、便于宏块数据处理部分的模块和系统中其他的模块解耦合,提高系统可优化和可更改性。
本发明有效提高在基于FPGA的webp压缩处理中像素宏块处理效率,其基本思想是引入虚拟宏块的概念,虚拟宏块本身是一系列特性的像素值,这些虚拟的像素也参与到所有的运算中,这些特定的值产生的边界也会参与到其相邻的像素宏块的计算中,通过虚拟宏块技术可以显著的提高基于FPGA的Webp压像素宏块之间的并行流水处理效率,提升系统的性能。通过在系统中添加冗余信息,牺牲一部分的计算效率,来解决系统设计上数据控制的问题,简化系统的设计方案,提高系统整体的性能,即消耗一部分计算资源,显著的提高整个系统的流水效率,提升系统的实际运行性能。
以上对本发明所提供的一种webp压缩处理中像素宏块处理方法进行了详细介绍。本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。

Claims (7)

1.一种webp压缩处理中像素宏块处理方法,其特征在于,包括:
在原始图像的像素宏块周边填充虚拟像素宏块,使填充后的像素宏块组成平行四边形;
将位于平行四边形左边长上的一行像素宏块作为宏块处理顺序的第一行,将与位于平行四边形左边长上的一行像素宏块相邻并平行的下一行像素宏块作为宏块处理顺序的第二行,依次类推,直至将位于平行四边形右边长上的一行像素宏块作为宏块处理顺序的最后一行;
按照宏块处理顺序进行像素宏块处理。
2.如权利要求1所述的方法,其特征在于,所述在原始图像的像素宏块周边填充虚拟像素宏块,包括:
在原始图像的像素宏块的左边区域和右边区域填充虚拟像素宏块;其中,原始图像中高小于宽。
3.如权利要求2所述的方法,其特征在于,原始图像的大小为M*N,M为高的宏块数量,N为宽的宏块数量。
4.如权利要求3所述的方法,其特征在于,填充的虚拟像素宏块的数量为min(M,N)*(min(M,N)-1)。
5.如权利要求5所述的方法,其特征在于,在整个原始图像处理中,有效数据的占比率δ的表达式如下:
<mrow> <mi>&amp;delta;</mi> <mo>=</mo> <mfrac> <mrow> <mi>M</mi> <mo>*</mo> <mi>N</mi> </mrow> <mrow> <mi>min</mi> <mrow> <mo>(</mo> <mi>M</mi> <mo>,</mo> <mi>N</mi> <mo>)</mo> </mrow> <mo>*</mo> <mrow> <mo>(</mo> <mi>min</mi> <mo>(</mo> <mi>M</mi> <mo>,</mo> <mi>N</mi> <mo>)</mo> </mrow> <mo>-</mo> <mn>1</mn> <mo>)</mo> <mo>+</mo> <mi>M</mi> <mo>*</mo> <mi>N</mi> </mrow> </mfrac> <mo>.</mo> </mrow>
6.如权利要求1至5中任意一项所述的方法,其特征在于,按照宏块处理顺序进行像素宏块处理之前,还包括:将像素宏块处理移植到FPGA中。
7.如权利要求6所述的方法,其特征在于,所述按照宏块处理顺序进行像素宏块处理之后,FPGA中宏块处理的行间完全并行流水。
CN201710842465.5A 2017-09-18 2017-09-18 一种webp压缩处理中像素宏块处理方法 Pending CN107483948A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710842465.5A CN107483948A (zh) 2017-09-18 2017-09-18 一种webp压缩处理中像素宏块处理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710842465.5A CN107483948A (zh) 2017-09-18 2017-09-18 一种webp压缩处理中像素宏块处理方法

Publications (1)

Publication Number Publication Date
CN107483948A true CN107483948A (zh) 2017-12-15

Family

ID=60584478

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710842465.5A Pending CN107483948A (zh) 2017-09-18 2017-09-18 一种webp压缩处理中像素宏块处理方法

Country Status (1)

Country Link
CN (1) CN107483948A (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110913225A (zh) * 2019-11-19 2020-03-24 北京奇艺世纪科技有限公司 图像编码方法、装置、电子设备和计算机可读存储介质
CN111405277A (zh) * 2019-01-02 2020-07-10 华为技术有限公司 帧间预测方法、装置以及相应的编码器和解码器
CN111815502A (zh) * 2020-07-08 2020-10-23 上海雪湖科技有限公司 基于WebP压缩算法的多图处理的FPGA加速方法
CN112527832A (zh) * 2019-09-17 2021-03-19 天翼电子商务有限公司 基于fpga的规则引擎加速执行方法、装置、介质及设备

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101252691A (zh) * 2008-03-12 2008-08-27 中兴通讯股份有限公司 一种多处理器并行实现高分辨率图像滤波的方法
CN101710986A (zh) * 2009-11-18 2010-05-19 中兴通讯股份有限公司 基于同构多核处理器的h.264并行解码方法和系统
CN101820546A (zh) * 2009-02-27 2010-09-01 源见科技(苏州)有限公司 帧内预测方法
CN101939994A (zh) * 2008-12-08 2011-01-05 松下电器产业株式会社 图像解码装置及图像解码方法
WO2015004495A1 (en) * 2013-07-09 2015-01-15 Google Inc. Transcoding images at a network stack level
CN105684036A (zh) * 2013-09-27 2016-06-15 苹果公司 并行的硬件块处理流水线和软件块处理流水线

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101252691A (zh) * 2008-03-12 2008-08-27 中兴通讯股份有限公司 一种多处理器并行实现高分辨率图像滤波的方法
CN101939994A (zh) * 2008-12-08 2011-01-05 松下电器产业株式会社 图像解码装置及图像解码方法
CN101820546A (zh) * 2009-02-27 2010-09-01 源见科技(苏州)有限公司 帧内预测方法
CN101710986A (zh) * 2009-11-18 2010-05-19 中兴通讯股份有限公司 基于同构多核处理器的h.264并行解码方法和系统
WO2015004495A1 (en) * 2013-07-09 2015-01-15 Google Inc. Transcoding images at a network stack level
CN105684036A (zh) * 2013-09-27 2016-06-15 苹果公司 并行的硬件块处理流水线和软件块处理流水线

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111405277A (zh) * 2019-01-02 2020-07-10 华为技术有限公司 帧间预测方法、装置以及相应的编码器和解码器
CN111405277B (zh) * 2019-01-02 2022-08-09 华为技术有限公司 帧间预测方法、装置以及相应的编码器和解码器
CN112527832A (zh) * 2019-09-17 2021-03-19 天翼电子商务有限公司 基于fpga的规则引擎加速执行方法、装置、介质及设备
CN110913225A (zh) * 2019-11-19 2020-03-24 北京奇艺世纪科技有限公司 图像编码方法、装置、电子设备和计算机可读存储介质
CN110913225B (zh) * 2019-11-19 2022-03-08 北京奇艺世纪科技有限公司 图像编码方法、装置、电子设备和计算机可读存储介质
CN111815502A (zh) * 2020-07-08 2020-10-23 上海雪湖科技有限公司 基于WebP压缩算法的多图处理的FPGA加速方法
CN111815502B (zh) * 2020-07-08 2023-11-28 上海雪湖科技有限公司 基于WebP压缩算法的多图处理的FPGA加速方法

Similar Documents

Publication Publication Date Title
CN107483948A (zh) 一种webp压缩处理中像素宏块处理方法
CN103650496B (zh) 用于在hevc中编码的基于像素的帧内预测
CN101123723B (zh) 基于图形处理器的数字视频解码方法
CN108921910B (zh) 基于可伸缩卷积神经网络的jpeg编码压缩图像复原的方法
CN103227919B (zh) 一种基于多核处理器Tilera的SVC编码方法
CN104715496B (zh) 云环境下基于三维点云模型的图像预测方法、系统及装置
CN105898330A (zh) 采用受限帧内区块拷贝模式进行视频编码的方法和装置
CN103414895A (zh) 一种适用于hevc标准的编码器帧内预测装置及方法
CN107071419A (zh) 图像编码设备和方法以及图像解码设备和方法
CN101115207B (zh) 基于预测点间相关性的帧内预测实现的方法及装置
CN108665063A (zh) 用于bnn硬件加速器的双向并行处理卷积加速系统
CN108449603A (zh) 基于多核平台多层次任务级与数据级并行的hevc解码方法
CN102970531A (zh) Jpeg-ls近无损图像压缩编码器硬件实现方法
CN107231558A (zh) 一种基于cuda的h.264并行编码器的实现方法
CN107820091A (zh) 一种图片处理方法、系统及一种图片处理设备
CN104469488B (zh) 视频解码方法及系统
CN101888554B (zh) 并行流水运动补偿滤波器vlsi结构设计方法
CN109963151A (zh) 编码单元划分确定方法及装置、终端设备及可读存储介质
CN102340668B (zh) 一种基于可重构技术的mpeg2亮度插值的实现方法
CN104331883B (zh) 一种基于非对称逆布局模型的图像边界提取方法
CN102572430A (zh) 一种基于可重构技术的h.264去块滤波算法的实现方法
CN110324668A (zh) 图像块编码中的变换方法、解码中的反变换方法及装置
CN105100799B (zh) 一种减少hevc编码器中帧内编码时延的方法
CN106851298A (zh) 一种高效视频编码方法及装置
CN110446043A (zh) 一种基于多核平台的hevc细粒度并行编码方法

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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20171215