CN110771165A - 图像处理方法和设备 - Google Patents
图像处理方法和设备 Download PDFInfo
- Publication number
- CN110771165A CN110771165A CN201880040329.7A CN201880040329A CN110771165A CN 110771165 A CN110771165 A CN 110771165A CN 201880040329 A CN201880040329 A CN 201880040329A CN 110771165 A CN110771165 A CN 110771165A
- Authority
- CN
- China
- Prior art keywords
- region
- image
- motion vector
- area
- sub
- 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
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 17
- 239000013598 vector Substances 0.000 claims abstract description 170
- 238000013507 mapping Methods 0.000 claims abstract description 107
- 238000000034 method Methods 0.000 claims abstract description 53
- 239000011159 matrix material Substances 0.000 claims description 27
- 238000012545 processing Methods 0.000 claims description 18
- 230000015654 memory Effects 0.000 claims description 17
- 238000012935 Averaging Methods 0.000 claims description 8
- 230000008569 process Effects 0.000 description 19
- 238000010586 diagram Methods 0.000 description 11
- 238000004364 calculation method Methods 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 5
- 230000009466 transformation Effects 0.000 description 5
- 238000013139 quantization Methods 0.000 description 4
- 230000002123 temporal effect Effects 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 238000007906 compression Methods 0.000 description 3
- 230000006835 compression Effects 0.000 description 3
- 238000012937 correction Methods 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000013519 translation Methods 0.000 description 3
- 238000004590 computer program Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000006073 displacement reaction Methods 0.000 description 2
- 238000001914 filtration Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000013144 data compression Methods 0.000 description 1
- 238000000354 decomposition reaction Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000007499 fusion processing Methods 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/13—Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/06—Topological mapping of higher dimensional structures onto lower dimensional surfaces
- G06T3/073—Transforming surfaces of revolution to planar images, e.g. cylindrical surfaces to planar images
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/597—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
- G06T3/4038—Image mosaicing, e.g. composing plane images from plane sub-images
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/60—Rotation of whole images or parts thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
- G06T9/001—Model-based coding, e.g. wire frame
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/103—Selection of coding mode or of prediction mode
- H04N19/105—Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/103—Selection of coding mode or of prediction mode
- H04N19/107—Selection of coding mode or of prediction mode between spatial and temporal predictive coding, e.g. picture refresh
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/136—Incoming video signal characteristics or properties
- H04N19/137—Motion inside a coding unit, e.g. average field, frame or block difference
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/157—Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
- H04N19/159—Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
- H04N19/56—Motion estimation with initialisation of the vector search, e.g. estimating a good candidate to initiate a search
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/17—Methods 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/176—Methods 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
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
公开了一种图像处理方法和设备。该方法包括:确定用于得到第一平面图像上的第一区域的至少一个第二区域,所述第二区域为第二平面图像上的区域,所述第一平面图像由曲面图像映射得到,所述曲面图像由至少一个所述第二平面图像得到;利用所述至少一个第二区域的运动矢量,确定所述第一区域的运动矢量;利用所述第一平面图像包括的至少一个所述第一区域的运动矢量,对所述第一平面图像进行编码。本申请实施例的技术方案可以获取更为准确的矢量信息,从而可以提升视频编码质量。
Description
版权申明
本专利文件披露的内容包含受版权保护的材料。该版权为版权所有人所有。版权所有人不反对任何人复制专利与商标局的官方记录和档案中所存在的该专利文件或者该专利披露。
技术领域
本申请涉及图像处理领域,并且更具体地,涉及一种图像处理方法和设备。
背景技术
为了减少视频存储和传输所占用的带宽,可以对视频数据进行编码压缩处理。
在视频编码的帧间编码中,利用参考图像的信息获得预测块数据,其过程包括将待编码图像划分成若干个图像块;然后,针对每个图像块,在参考图像中搜索与当前图像块最匹配的图像块作为预测块。由于在二维平面运动中,物体所做的运动基本是二维平面上的平移等刚性运动,可以在运动搜索过程中先给搜索点所在的区域计算出全局运动矢量(Global Motion Vector,GMV)信息,然后在进行运动搜索时就不再从(0,0)点开始搜索,而是以GMV信息为搜索原点开始搜索,这样更容易搜索到最匹配的预测块,而且由于运动搜索范围的限制,有时候运动剧烈的一些子图像块可能无法准确地搜索到最匹配的图像块作为预测块,利用GMV技术,则能够避免这样的问题,使得运动搜索的结果更加准确,在一定程度上能够提高图像编码质量。
然而,在对全景视频进行编码压缩时,由于全景图像是曲面图像,映射到二维平面进行编码时,为了保存曲面图像的完整信息,通常会有一些拉伸扭曲,这样全景视频中物体所做的运动就不一定是刚性运动,以此计算的GMV的信息就不一定准确,从而降低了视频编码质量。
发明内容
本申请实施例提供一种图像处理方法和设备,可以获取更为准确的矢量信息,从而可以提升视频编码质量。
第一方面,提供了一种图像处理方法,包括:
确定用于得到第一平面图像上的第一区域的至少一个第二区域,所述第二区域为第二平面图像上的区域,所述第一平面图像由曲面图像映射得到,所述曲面图像由至少一个所述第二平面图像得到;
利用所述至少一个第二区域的运动矢量,确定所述第一区域的运动矢量;
利用所述第一平面图像包括的至少一个所述第一区域的运动矢量,对所述第一平面图像进行编码。
第二方面,提供了一种图像处理设备,包括:
第一确定单元,用于确定用于得到第一平面图像上的第一区域的至少一个第二区域,所述第二区域为第二平面图像上的区域,所述第一平面图像由曲面图像映射得到,所述曲面图像由至少一个所述第二平面图像得到;
第二确定单元,用于利用所述至少一个第二区域的运动矢量,确定所述第一区域的运动矢量;
编码单元,用于利用所述第一平面图像包括的至少一个所述第一区域的运动矢量,对所述第一平面图像进行编码。
第三方面,提供了一种计算机***,包括:存储器,用于存储计算机可执行指令;处理器,用于访问所述存储器,并执行所述计算机可执行指令,以进行上述第一方面的方法中的操作。
第四方面,提供了一种计算机存储介质,该计算机存储介质中存储有程序代码,该程序代码可以用于指示执行上述第一方面的方法。
第五方面,提供了一种计算机程序产品,包括用于指示执行上述第一方面的方法的程序代码。
因此,在本申请实施例中,由于第一平面图像是由曲面图像映射得到的,而该曲面图像是由第二平面图像得到的,第二平面图像是得到曲面图像的图像,未经过拉伸扭曲,对应的运动仍是刚性运动,利用第二平面图像上的区域的运动矢量,确定第一平面图像上的区域的运动矢量,可以避免直接利用利用拉伸扭曲的第一平面图像计算运动矢量,所带来的运动矢量不准确的问题,从而可以进一步提升编码质量。并且进一步地,本申请实施例的实现方式是先得到第一平面图像的区域的运动矢量,然后对该第一平面图像进行编面,可以避免先将视频编码一遍,得到运动矢量,然后计算出运动矢量提供给第二次编码该视频时使用所带来的复杂度较高的问题,并且本申请实施例是利用得到本帧图像的图像计算出运算矢量,将该运动矢量用于本帧图像的编码,可以避免利用其它帧图像的编码信息计算出运动矢量用于本帧图像的编码,进一步避免运动矢量计算不准确的问题,从而可以进一步提升编码质量。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据本申请实施例的技术方案的架构图。
图2是根据本申请实施例的帧间编码的示意性流程图。
图3是根据本申请实施例的图像处理方法的示意性流程图。
图4是根据本申请实施例的图像处理方法的示意性流程图。
图5是根据本申请实施例的曲面图像映射为平面图像的示意性图。
图6是根据本申请实施例的曲面图像映射为平面图像的示意性图。
图7是多个第二区域在第一区域的映射位置的示意性图。
图8是根据本申请实施例的由于图像拼接带来的第二区域的旋转的示意性图。
图9是根据本申请实施例的图像处理方法的示意性流程图。
图10是根据本申请实施例的图像处理设备的示意性框图。
图11是根据本申请实施例的计算机***的示意性框图。
具体实施方式
下面将结合附图,对本申请实施例中的技术方案进行描述。
应理解,本文中的具体的例子只是为了帮助本领域技术人员更好地理解本申请实施例,而非限制本申请实施例的范围。
还应理解,本申请实施例中的公式只是一种示例,而非限制本申请实施例的范围,各公式可以进行变形,这些变形也应属于本申请保护的范围。
还应理解,在本申请的各种实施例中,各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
还应理解,本说明书中描述的各种实施方式,既可以单独实施,也可以组合实施,本申请实施例对此并不限定。
除非另有说明,本申请实施例所使用的所有技术和科学术语与本申请的技术领域的技术人员通常理解的含义相同。本申请中所使用的术语只是为了描述具体的实施例的目的,不是旨在限制本申请的范围。本申请所使用的术语“和/或”包括一个或多个相关的所列项的任意的和所有的组合。
全景图像的拼接是指利用摄像机的平移或旋转得到的部分重叠的平面图像,生成一个较大的甚至360度的全方位图像的过程。换句话说,就是获取给定场景的一组局部平面图像,然后对这组平面图像进行拼接,生成包含这组局部平面图像的新视图,也即全景图像。
其中,在图像拼接时,可以将多个平面图像以一定方式投影到统一的空间面上,如多面体、圆柱体或球体表面等,这样这多个平面图像具有统一的参数空间坐标。在这个统一的空间对相邻图像进行比较,以确定可匹配的区域位置。将图像重叠区域进行融合处理,以拼接成全景图像。
全景图像可以包括360度全景图像。360度全景视频通常是指水平视角有360度(-180°~180°)、垂直视角有180度(-90°~90°)的图像,通常以三维球面形式呈现。
拼接后的全景图像可以是曲面图像,为了方便存储和传输,可以将曲面全景图像展开得到二维平面全景图像,再对其进行编码和传输等。
其中,将曲面全景图像展开得到二维平面全景图像的操作可以称为映射。
本申请实施例可以采用多种映射方式得到二维平面全景图像。例如,可以采用多面体或经纬图的方式进行映射得到。
其中,对展开后的二维平面全景图像,可以采用如图1所示的编码压缩***。
如图1所示,***100可以接收待编码数据102,对待编码数据102进行编码,产生编码数据108。例如,***100可以接收全景视频数据。在一些实施例中,***100中的部件可以由一个或多个处理器实现,该处理器可以是计算设备中的处理器,也可以是移动设备(例如无人机)中的处理器。该处理器可以为任意种类的处理器,本申请实施例对此不做限定。在一些可能的设计中,该处理器可以包括图像信号处理器(Image Signal Processor,ISP)、编码器等。***100中还可以包括一个或多个存储器。该存储器可用于存储指令和数据,例如,实现本申请实施例的技术方案的计算机可执行指令,待编码数据102、编码数据108等。该存储器可以为任意种类的存储器,本申请实施例对此也不做限定。
编码对于高效和/或安全的传输或存储数据是必需的。对待编码数据102的编码可以包括数据压缩,加密,纠错编码,格式转换等。例如,对多媒体数据(例如视频或音频)压缩可以减少在网络中传输的比特数量。敏感数据,例如金融信息和个人标识信息,在传输和存储前可以加密以保护机密和/或隐私。为了减少视频存储和传输所占用的带宽,需要对视频数据进行编码压缩处理。
任何合适的编码技术都可以用于编码待编码数据102。编码类型依赖于被编码的数据和具体的编码需求。
在一些实施例中,编码器可以实现一种或多种不同的编解码器。每种编解码器可以包括实现不同编码算法的代码,指令或计算机程序。基于各种因素,包括待编码数据102的类型和/或来源,编码数据的接收实体,可用的计算资源,网络环境,商业环境,规则和标准等,可以选择一种合适的编码算法编码给定的待编码数据102。
例如,编码器可以被配置为编码一系列视频帧。编码每个帧中的数据可以采用一系列步骤。在一些实施例中,编码步骤可以包括预测、变换、量化、熵编码等处理步骤。
以下将结合图2所示的帧间编码流程为例进行说明。
在201中,获取当前图像。
在202中,获取参考图像。
在203中,利用当前图像和参考图像,进行运动估计,以得到运动矢量(MotionVector,MV)。其中,在运动估计过程中,可以将当前图像划分为多个互不重叠的图像块,并假定图像块内所有像素的位移量都相同,然后针对每个图像块,根据一定的匹配准则,在参考图像的一特定搜索范围内找出与当前图像块最相似的块,即匹配块,计算匹配块与当前图像块的相对位移即为运动矢量。
在204中,利用运动估计得到的运动矢量,进行运动补偿,以得到当前图像块的估计值。
在205中,将当前图像块的估计值与当前图像块相减,得到残差,将得到的各图像块对应的残差组合在一起,可以得到图像的残差。
在206中,对图像块的残差进行变换,使用变换矩阵对图像块的残差进行变换可以去除图像块的残差的相关性,即去除图像块的冗余信息,以便提高编码效率,图像块中的数据块的变换通常采用二维变换,即在编码端将数据块的残差信息分别与一个NxM的变换矩阵及其转置矩阵相乘,相乘之后得到的是变换系数。
在207中,变换系数经量化可得到量化后的系数。
在208中,将量化后的系数进行熵编码,最后将熵编码得到的比特流及进行编码后的编码模式信息,如帧内预测模式、运动矢量信息等,进行存储或发送到解码端。在图像的解码端,首先获得熵编码比特流后进行熵解码,得到相应的残差,根据解码得到的运动矢量或帧间预测等信息图像块对应的预测图像块,根据预测图像块与图像块的残差得到当前图像块中各像素点的值。
在209中,对量化结果进行反量化。
在210中,对反量化结果进行反变换,
在211中,利用反变换结果以及运动补偿结果,得到残差,
在212中,对当前图像进行重建,重建后的当前图像,可以作为其他图像的参考图像。
其中,在编码中,一个图像可以被划分成编码树单元(Coding Tree Unit,CTU),每一个CTU可以包含一个或多个编码单元(Coding Unit,CU),CU是决定帧内预测还是帧间预测的单元。每个CU还可以分解为更小的预测单元(Prediction Unit,PU)和变换单元(Transform unit,TU)。PU是进行预测运算的基本单元,TU是进行变换和量化的基本单元。其中,以上各步骤中的图像或图像块可以对应到此处提到各种单元。
在202中,在运动搜索的过程中,可以采用高级运动矢量预测技术(AMVP),也即,利用空域、时域上运动矢量的相关性为当前图像块建立候选预测运动矢量(MV)列表,将预测MV送入运动估计过程中做正像素运动搜索和分像素运动搜索,最后在运动搜索范围内搜索到与当前PU最匹配的图像块作为预测块,得到最终的运动矢量。
由于在二维平面运动中,物体所做的运动基本是二维平面上的平移等刚性运动,由此可以在运动搜索过程中可以先给搜索点所在的区域计算出GMV信息,然后在进行运动搜索时就不再从(0,0)点开始搜索,而是以GMV信息为搜索原点开始搜索,这样更容易搜索到最匹配的预测块,而且由于运动搜索范围的限制,有时候运动剧烈的一些图像块可能无法准确地搜索到最匹配的图像块作为预测块,在利用GMV技术的基础上则能够避免这样的问题,使得运动搜索的结果要更加准确,在一定程度上能够后提高视频编码质量。
但是在全景图像的编码中,由于拼接后的全景图像是曲面图像,映射到二维平面进行编码时为了保存曲面图像的完整信息往往会有一些拉伸扭曲,这样全景图像中物体所做的运动就不一定是刚性运动,直接以映射后的二维平面去计算GMV的信息就不一定准确。
因此,本申请实施例提出了一种方法,可以基于拼接前平面图像的GMV信息,得到拼接后的平面图像的GMV信息,并基于得到的GMV信息对拼接后的平面图像进行编码。
其中,ISP端可以在全景图像的拼接之前,对拼接前图像进行处理,以得到拼接前图像的GMV信息。
例如,如图3所示,多个图像(图像1,图像2和图像3)可以分别在ISP端获取GMV,在获取到GMV之后,对多个图像进行拼接,得到拼接后图像(也可以称为全景图像),基于拼接前图像的GMV,计算拼接后图像GMV,利用计算的GMV对拼接后图像进行编码。
图4是根据本申请实施例的图像处理方法300的示意性流程图。该方法200包括以下内容中的至少部分内容。以下图像处理方法可以由图像处理设备实现,例如,可以是全景相机、VR/AR产品(例如,眼镜)、头戴式设备(HMD,Head Mount Device)或视频编码器等。进一步地,该图像处理设备可以设置于无人机中。
在310中,确定用于得到第一平面图像上的第一区域的至少一个第二区域,该第二区域为第二平面图像上的区域,该第一平面图像由曲面图像映射得到,该曲面图像由至少一个该第二平面图像得到。
可选地,该曲面图像由至少一个第二平面图像拼接得到,也即该曲面图像可以是曲面全景图像。
可选地,该第一平面图像是由以下方式映射得到的:将该曲面图像映射到多面体表面上的多个多边形后由该多个多边形展开形成的。其中,该多面体可以是六面体(例如,立方体)、八面体或十二面体。
以多面体为立方体以及曲面图像为三维球面图像为例,如图5所示,可以将该球面图像通过立方体的6个相等大小的正方形的面来表示,将映射在立方体的六个面的图形直接按空间邻近关系展开后得到十字形的二维图像。
其中,可以直接对该十字形的二维图像作为待编码的图像进行编码,也可以将该十字形的二维图像整合成其他的形状,例如,矩形,然后将该矩形作为待编码的二维图像进行编码。
可选地,该第一平面图像是由以下方式得到的:将该曲面图像按照二维经纬图的方式进行映射得到的。
除了多面体和经纬图的映射方式之外,还可以使用其它的映射机制将一个曲面图像映射成一个平面图像,经映射之后的平面图像可以组成平面视频,所述二维平面视频可以使用通用的视频编解码标准进行编码压缩,如HEVC/H.265,H.264/AVC,AVS1-P2,AVS2-P2,VP8,VP9,进行编码压缩。所述二维平面视频通过球面视频映射得到,也可经由部分球面视频映射得到。所述球面视频或部分球面视频通常由多个摄像机拍摄得到。
可选地,该第一区域可以包括一个或多个像素点。
可选地,该第一平面图像可以包括一个或多个第一区域。
其中,在第一平面图像包括多个第一区域时,该多个第一区域的形状或包括的像素点的数量(面积)可以相同,也可以不相同。
可选地,该第二区域可以包括一个或多个像素点。
可选地,第二平面图像可以包括一个或多个第二区域。
其中,在第二平面图像包括多个第二区域时,该多个第二区域的形状或包括的像素点的数量(面积)可以相同,也可以不相同。
可选地,该第一区域与第二区域的形状或包括的像素点的数量可以相同,也可以不相同。
可选地,该第一区域由该至少一个第二区域拼接得到。
可选地,第二区域的运动矢量可以是经过ISP生成的。
可选地,该运动矢量为GMV。
可选地,在运动矢量为GMV时,该第一区域和第二区域可以分别多个像素点。具体,该第一区域和第二区域可以是PU,也可以是以其他方式划分的图像块,本申请实施例对此不作具体限定。
为了更加清楚地理解本申请,以下将介绍如何确定得到第一区域的至少一个第二区域。
在一种实现方式中,确定该第二平面图像包括的区域在该第一平面图像中的映射位置;将该第二平面图像包括的区域中映射位置落入到该第一区域的区域,确定为该第二区域。应理解,本申请实施例提到的映射位置可以是指坐标。
具体地,可以将拼接形成曲面图像的各个第二平面图像划分成多个区域,以及将第一平面图像划分为多个区域,将第二平面图像的各个区域映射到第一平面图像上,在计算第一平面图像上某一区域的运动矢量时,可以确定有哪些区域落入到了该区域中,并将这些区域确定为第二区域。
其中,第二区域落入到第一区域,可以指包括的全部像素点或部分像素点落入到了第一区域。
可选地,确定该第二平面图像包括的区域中的第一像素点在该第一平面图像中的映射位置;根据该第一像素点在该第一平面图像中的映射位置,确定该第二平面图像包括的区域在该第一平面图像中的映射位置。
其中,该第一像素点可以包括区域的中心像素点,也可以包括区域的其他像素点,例如,假设区域是方形的区域,则该第一像素点可以包括方形的四个顶点上的像素点。
其中,在计算了某一个或多个第一像素点在该第一平面图像中的映射位置之后,可以基于该区域的形状,确定该区域在第一平面图像中的映射位置。
当然,第一像素点可以为该第二平面图像包括的区域中的任一像素点,也就是第二平面图像中的每个像素点均按照上述的方式来获取映射位置,并由此获取该区域在第一平面图像中的映射位置。
可选地,根据将该第二平面图像进行旋转拼接得到该曲面图像的旋转矩阵,和/或拍摄得到该第二平面图像的相机的相机内参数矩阵,确定该第一像素点在该第一平面图像中的映射位置。
具体地,相机的内参数可以包括相机的焦距,径向和切向畸变等,相机的内参数矩阵K可以是:
其中,fx、fy为相机的焦距,一般情况下二者是相等的;x0、y0是主点坐标,s为坐标轴倾斜参数。
具体地,由于在对第二平面图像进行拼接形成曲面图像时,在拼接时会利用所述旋转矩阵R和相机内参数矩阵K,因此,可以利用该旋转矩阵R和相机内参数矩阵K,来确定第一像素点在该第一平面图像中的映射位置。
可选地,可以通过以下方式计算第一像素点在第一平面中的映射位置:将该第一像素点在该第二平面图像上的坐标,映射到球面坐标;将该球面坐标,映射到该第一平面图像上的坐标,整个过程可以称为坐标转换。
具体地,根据利用旋转矩阵R和相机内参数矩阵K得到的单应性矩阵变换,可以算出第二平面图像上的第一像素点与第二平面图像上的像素点的对应关系。
假设第二平面图像上的第一像素点的三维空间坐标为(x,y,z=1),经过变换后的坐标为(x1,y1,z1),这里的变换指的是坐标转换过程中的一次变换,然后映射到球形坐标(U,V,W),具体计算可以采用以下式1-4:
V=scale*(π-cos-1W) 式4
在计算了第一像素点的球形坐标之后,可以利用反投影的方式将球形坐标映射为第二平面图像上的坐标,具体地,进行坐标转换,得到坐标(x2,y2,z2),然后基于(x2,y2,z2)得到映射到第一平面图像上的坐标(x0,y0),也即本申请提到的第一像素点在该第一平面图像中的映射位置,具体计算可以采用以下式5-10:
x2=sin(π-v)*sinu 式7
y2=cos(π-v) 式8
z2=sin(π-v)*cosu 式9
其中,在式10中得到(x0,y0,z0),如果z0>0,则x0=x0/z0,y0=y0/z0;否则,x0=y0=-1,由此可以得到第一像素点在该第一平面图像中的映射位置(x0,y0)。
在式1-10中,scale表示对数值进行缩放,各式中scale的取值可以相同。
应理解,以上介绍了一种确定第一区域的至少一个第二区域的方式,即,确定该第二平面图像包括的区域在该第一平面图像中的映射位置;将该第二平面图像包括的区域中映射位置落入到该第一区域的区域,确定为该第二区域,这意味着需要将第二平面图像的各个区域向第一平面图像进行映射,但是本申请实施例并不限于此。以下将介绍另一种实现方式。
在另一种实现方式中,可以确定第一区域在第二平面图像的映射位置,将第一区域的映射位置在第二平面图像中落入到的区域,确定为该第一区域对应的第二区域。
具体地,可以将拼接形成曲面图像的各个第二平面图像划分多个区域,以及将第一平面图像划分为多个区域,在需要计算第一平面图像的某一区域的运动矢量时,可以计算该区域在第二平面图像的落入位置,确定该区域落入到了第二平面图像的哪些区域,并将这些区域确定为该区域对应的第二区域。
其中,第一区域落入到第二区域,可以指包括的全部像素点或部分像素点落入到了第二区域。一个第一区域可以落入到一个第一平面图像,也可以落入到多个第二平面图像。
可选地,确定该第一区域中的第一像素点在该第二平面图像中的映射位置;根据该第一像素点在该第二平面图像中的映射位置,确定该第一区域在该第二平面图像中的映射位置。
其中,该第一像素点可以包括该第一区域的中心像素点,也可以包括该第一区域的其他像素点,例如,假设该第一区域是方形的区域,则该第一像素点可以包括方形的四个顶点上的像素点。
其中,在计算了某一个或多个第一像素点在该第二平面图像中的映射位置之后,可以基于该第一区域的形状,确定该第一区域在第二平面图像中的映射位置。
可选地,可以通过以下方式计算第一像素点在第二平面图像中的映射位置:将该第一像素点在该第一平面图像上的坐标,映射到球面坐标;将该球面坐标,映射到该第二平面图像上的坐标。
可选地,根据将该第二平面图像进行旋转拼接得到该曲面图像的旋转矩阵,和/或拍摄得到该第二平面图像的相机的相机内参数矩阵,确定该第一像素点在该第二平面图像中的映射位置。其中,具体的计算公式可以参照以上式1-10。
在320中,利用该至少一个第二区域的运动矢量,得到该第一区域的运动矢量。
可选地,该第二区域的运动矢量可以由ISP端生成。
具体地,ISP端的运动补偿时域滤波(Motion-Compensated Temporal Filtering,MCTF)技术可以采用运动估计补偿和时域一维分解技术去除帧间的冗余信息,在做运动补偿时域滤波时会进行像素域的运动估计,通过块匹配的方法确定运动矢量。该运动矢量可以用于视频编码中的帧间预测。
可选地,该第一区域可以包括至少一个子区域,根据映射位置落入到每个子区域的第二区域的运动矢量,计算该每个子区域的运动矢量;根据该至少一个子区域的运动矢量,计算该第一区域的运动矢量。
可选地,根据该至少一个第二区域在该第一区域的映射位置,将该第一区域划分为至少一个子区域。
具体地,由于第一区域是由至少一个第二区域拼接形成的,不同第二区域可能会映射到第一区域的不同位置,而不同的第二区域的所对应的运动矢量也可能是不同的,因此,可以基于至少一个第二区域在该第一区域的映射位置,对第一区域进行子区域的划分,并分别计算各个子区域的运动矢量,进一步基于各个子区域的运动矢量计算第一区域的运动矢量,可以使得运动矢量的计算更为准确。
可选地,一个子区域映射有一个或多个第二区域,其中,在该一个子区域映射有多个第二区域时,该多个第二区域在该一个子区域中对应的像素点的数量相同。
其中,一个子区域映射有第二区域可以指映射有该第二区域的全部像素点或者部分像素点,一个第二区域可以落入到不同的子区域。
例如,如图7所示,存在多个长方形的第二区域,即第二区域1,第二区域2,第二区域3,第二区域4和第二区域5的映射位置落入到长方形的第一区域1中,其中,可以根据该多个第二区域在第一区域1的映射位置,将该第一区域1划分成多个子区域,即可以划分为子区域1,子区域2,子区域3,子区域4,子区域5和子区域6。其中,子区域1中映射有第二区域1,子区域2中映射有第二区域1和第二区域2,子区域3中映射有第二区域2和第二区域3,子区域4中映射有第二区域3,子区域5中映射第二区域4,子区域6中映射有第二区域5。
可选地,根据映射位置落入到该每个子区域的第二区域的运动矢量,确定该每个子区域的运动矢量。
具体地,可以根据映射位置落入到该每个子区域的第二区域的运动矢量,以及作为权重因子的第一数值,确定该每个子区域的运动矢量,其中,该第一数值等于该每个子区域包括的像素点的数量与该第一区域包括的像素点的总数量的比值。
可选地,将该至少一个子区域的运动矢量的和,作为该第一区域的运动矢量。
可选地,假设第一区域由n个第二区域映射得到,n个第二区域中第i区域的GM V信息为GMVi(i=1,2,3,…,n),先求出每个第二区域的面积占当前第一区域面积的比例,作为计算GMV信息的一个权重因子Wi;每个第二区域的权重因子的计算方式就是每个第二区域所含的像素点个数与当前第一区域所含像素点个数的比值。则当前第一区域的GMV可以通过以下式11计算:
其中,在上述举例中,是按照第二区域的运动矢量以及第二区域对应的权重因子计算第一区域的运动矢量,在该举例中,意味着不存在映射重叠的问题,也即第一区域中不存在像素点上同时映射有多个第二区域的像素点。此时,各个第二区域分别对应于第一区域的一个子区域。
可选地,在映射位置落入到该第一子区域的第二区域包括多个第二区域时,将该多个第二区域的运动矢量取平均;根据取平均之后的运动矢量,计算该第一子区域的运动矢量。
例如,如图7所示,子区域2映射有第二区域1和第二区域2,则可以将第二区域1和第二区域2的运动矢量取平均,根据取平均后的运动矢量以及该子区域2所占的像素点的数量与第一区域1所占的像素点的数量的比值作权重因子,计算该子区域2的运动矢量。
可选地,一个子区域可以包括一个或多个像素点。其中,在一个子区域包括一个像素点时,意味着可以分别计算各个像素点的运动矢量,然后基于各个像素点的运动矢量,计算第一区域的运动矢量。
可选地,利用将该第二平面图像进行旋转拼接得到该曲面图像的旋转矩阵,对该第二区域的运动矢量进行修正。
具体地,由于在将至少一个第二平面图形拼接形成曲面图像的过程中,可能会涉及到第二平面图像的旋转,旋转的过程会对运动矢量造成影响,如图8所示,相对于第二区域A在第二平面图像中的位置,第二区域A在第一平面图像中的映射位置是经过了旋转的,所以对应的运动矢量也可以进行旋转的修正。这里可以用旋转矩阵对第二区域的GMV信息做修正,假设第二区域A修正前的GMV为(x,y),经过旋转的修正之后的GMV为(x’,y’),令z=1;旋转矩阵为R,则修正后的运动矢量可以通过以下式12-14得到:
在330中,利用该第一平面图像包括的至少一个该第一区域的运动矢量,对该第一平面图像进行编码。
可选地,根据该第一区域的运动矢量,对该第一区域进行帧间预测。
可选地,根据该第一区域的运动矢量,获取对该第一区域进行帧间预测时所使用的参考数据。
可选地,可以根据所述第一区域的运动矢量,进行运动搜索以获得用于帧间预测的运动矢量;根据所述获得的用于帧间预测的运动矢量,获取对所述第一区域进行帧间预测时所使用的参考数据。
具体地,可以在获取到第一区域的运动矢量后,可以基于该运动矢量确定搜索原点,并进行运动搜索,以得到帧间预测的运动矢量,并从而可以基于该运动矢量获取参考数据,进一步可以基于该参考数据获取像素残差。
为了更加清楚地理解本申请,以下将结合图9描述根据本申请实施例的图像处理方法。
在401中,将多个平面图像输入至ISP。
在402中,ISP获取各个平面图像中的各个区域的GMV。
在403中,对多个平面图像进行图像拼接,获取拼接后曲面图像,并将拼接后曲面图像进行映射,得到拼接后平面图像。
在404中,利用图像拼接和映射过程中所用的相机内参数矩阵和旋转矩阵,进行对应位置坐标转换,确定拼接前平面图像各个区域在拼接后图像中各个区域的映射位置。
在405中,对拼接前图像中各个区域的GMV进行优化。
在406中,对拼接前图像中各个区域的优化后的GMV,进行加权平均处理,以得到拼接后平面图像GMV。
在407中,利用在406中得到的GMV进行帧间预测。
其中,图9所示的图像处理的方法中各个步骤的实现方式,可以参照上文的描述,为了简洁,在此不再赘述。
因此,在本申请实施例中,由于第一平面图像是由曲面图像映射得到的,而该曲面图像是由第二平面图像得到的,第二平面图像是得到曲面图像的图像,未经过拉伸扭曲,对应的运动仍是刚性运动,利用第二平面图像上的区域的运动矢量,确定第一平面图像上的区域的运动矢量,可以避免直接利用利用拉伸扭曲的第一平面图像计算运动矢量,所带来的运动矢量不准确的问题,从而可以进一步提升编码质量。
并且进一步地,本申请实施例的实现方式是先得到第一平面图像的区域的运动矢量,然后对该第一平面图像进行编面,可以避免先将视频编码一遍,得到运动矢量,然后计算出运动矢量提供给第二次编码该视频时使用所带来的复杂度较高的问题,并且本申请实施例是利用得到本帧图像的图像计算出运算矢量,将该运动矢量用于本帧图像的编码,可以避免利用其它帧图像的编码信息计算出运动矢量用于本帧图像的编码,进一步避免运动矢量计算不准确的问题,从而可以进一步提升编码质量。
图10是根据本申请实施例的图像处理设备500的示意性框图。如图10所示,该设备500包括第一确定单元510,第二确定单元520和编码单元530。
其中,第一确定单元510用于:确定用于得到第一平面图像上的第一区域的至少一个第二区域,该第二区域为第二平面图像上的区域,该第一平面图像由曲面图像映射得到,该曲面图像由至少一个该第二平面图像得到;第二确定单元用于:利用该至少一个第二区域的运动矢量,确定该第一区域的运动矢量;编码单元520用于:利用该第一平面图像包括的至少一个该第一区域的运动矢量,对该第一平面图像进行编码。
可选地,该第一区域由该至少一个第二区域拼接得到。
可选地,该第一确定单元510具体用于:
确定该第二平面图像包括的区域在该第一平面图像中的映射位置;
将该第二平面图像包括的区域中映射位置落入到该第一区域的区域,确定为该第二区域。
可选地,该第一确定单元510具体用于:
确定该第二平面图像包括的区域中的第一像素点在该第一平面图像中的映射位置;
根据该第一像素点在该第一平面图像中的映射位置,确定该第二平面图像包括的区域在该第一平面图像中的映射位置。
可选地,该第一确定单元510具体用于:
将该第一像素点在该第二平面图像上的坐标,映射到球面坐标;
将该球面坐标,映射到该第一平面图像上的坐标。
可选地,该第一确定单元510具体用于:
根据将该第二平面图像进行旋转拼接得到该曲面图像的旋转矩阵,和/或拍摄得到该第二平面图像的相机的相机内参数矩阵,确定该第一像素点在该第一平面图像中的映射位置。
可选地,该第一像素点包括中心像素点。
可选地,该第一区域包括至少一个子区域,该第二确定单元具体用于:
根据映射位置落入到每个子区域的第二区域的运动矢量,计算该每个子区域的运动矢量;
根据该至少一个子区域的运动矢量,计算该第一区域的运动矢量。
可选地,一个子区域映射有一个或多个第二区域,其中,在该一个子区域映射有多个第二区域时,该多个第二区域在该一个子区域中对应的像素点的数量相同。
可选地,该第二确定单元520具体用于:
根据映射位置落入到该每个子区域的第二区域的运动矢量,以及作为权重因子的第一数值,确定该每个子区域的运动矢量,其中,该第一数值等于该每个子区域包括的像素点的数量与该第一区域包括的像素点的总数量的比值。
可选地,该第二确定单元520具体用于:
将该至少一个子区域的运动矢量的和,作为该第一区域的运动矢量。
可选地,该至少一个子区域包括第一子区域,该第二确定单元具体用于:
在映射位置落入到该第一子区域的第二区域包括多个第二区域时,将该多个第二区域的运动矢量取平均;
根据取平均之后的运动矢量,计算该第一子区域的运动矢量。
可选地,该第二确定单元520还用于:
利用将该第二平面图像进行旋转拼接得到该曲面图像的旋转矩阵,对该第二区域的运动矢量进行修正。
可选地,该第二确定单元520具体用于:
利用该至少一个第二区域经过图像信号处理器ISP生成的运动矢量,确定该第一区域的运动矢量。
可选地,该运动矢量为全局运动矢量GMV。
可选地,该第一平面图像是由以下方式得到的:
将该曲面图像映射到多面体表面上的多个多边形后由该多个多边形展开形成的。
可选地,该第一平面图像是由以下方式得到的:
将该曲面图像按照二维经纬图的方式进行映射得到的。
可选地,该编码单元530具体用于:
根据该第一区域的运动矢量,对该第一区域进行帧间预测。
可选地,该编码单元530具体用于:
根据所述第一区域的运动矢量进行运动搜索获得用于帧间预测的运动矢量;
根据所述获得的用于帧间预测的运动矢量,获取对所述第一区域进行帧间预测时所使用的参考数据。
可选地,上述第一确定单元510,第二确定单元520和编码单元530可以都由编码器实现,也可以分开实现,例如,第一确定单元510和第二确定单元520由非编码器的处理设备实现,编码单元530由编码器实现。
应理解,上述本发明实施例的图像处理设备可以是芯片,其具体可以由电路实现,但本发明实施例对具体的实现形式不做限定。
图11示出了本发明实施例的计算机***600的示意性框图。
如图11所示,该计算机***600可以包括处理器610和存储器620。
应理解,该计算机***600还可以包括其他计算机***中通常所包括的部件,例如,输入输出设备、通信接口等,本发明实施例对此并不限定。
存储器620用于存储计算机可执行指令。
存储器620可以是各种种类的存储器,例如可以包括高速随机存取存储器(RandomAccess Memory,RAM),还可以包括非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器,本发明实施例对此并不限定。
处理器610用于访问该存储器620,并执行该计算机可执行指令,以进行上述本发明实施例的图像处理方法中的操作。
处理器610可以包括微处理器,现场可编程门阵列(Field-Programmable GateArray,FPGA),中央处理器(Central Processing unit,CPU),图形处理器(GraphicsProcessing Unit,GPU)等,本发明实施例对此并不限定。
本发明实施例的图像处理设备和计算机***可对应于本发明实施例的图像处理方法的执行主体,并且图像处理设备和计算机***中的各个模块的上述和其它操作和/或功能分别为了实现前述各个方法的相应流程,为了简洁,在此不再赘述。
本发明实施例还提供了一种电子设备,该电子设备可以包括上述本发明各种实施例的图像处理设备或者计算机***。
本发明实施例还提供了一种计算机存储介质,该计算机存储介质中存储有程序代码,该程序代码可以用于指示执行上述本发明实施例的图像处理方法。
应理解,在本发明实施例中,术语“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系。例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的***、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的***、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口、装置或单元的间接耦合或通信连接,也可以是电的,机械的或其它的形式连接。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本发明实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
Claims (38)
1.一种图像处理方法,其特征在于,包括:
确定用于得到第一平面图像上的第一区域的至少一个第二区域,所述第二区域为第二平面图像上的区域,所述第一平面图像由曲面图像映射得到,所述曲面图像由至少一个所述第二平面图像得到;
利用所述至少一个第二区域的运动矢量,确定所述第一区域的运动矢量;
利用所述第一平面图像包括的至少一个所述第一区域的运动矢量,对所述第一平面图像进行编码。
2.根据权利要求1所述的方法,其特征在于,所述第一区域由所述至少一个第二区域拼接得到。
3.根据权利要求1或2所述的方法,其特征在于,所述确定用于得到第一区域的至少一个第二区域,包括:
确定所述第二平面图像包括的区域在所述第一平面图像中的映射位置;
将所述第二平面图像包括的区域中映射位置落入到所述第一区域的区域,确定为所述第二区域。
4.根据权利要求3所述的方法,其特征在于,所述确定所述第二平面图像包括的区域在所述第一平面图像中的映射位置,包括:
确定所述第二平面图像包括的区域中的第一像素点在所述第一平面图像中的映射位置;
根据所述第一像素点在所述第一平面图像中的映射位置,确定所述第二平面图像包括的区域在所述第一平面图像中的映射位置。
5.根据权利要求4所述的方法,其特征在于,所述确定所述第二平面图像包括的区域中的第一像素点在所述第一平面图像中的映射位置,包括:
将所述第一像素点在所述第二平面图像上的坐标,映射到球面坐标;
将所述球面坐标,映射到所述第一平面图像上的坐标。
6.根据权利要求4或5所述的方法,其特征在于,所述确定所述曲面图像包括的区域中的第一像素点在所述第二平面图像中的映射位置,包括:
根据将所述第二平面图像进行旋转拼接得到所述曲面图像的旋转矩阵,和/或拍摄得到所述第二平面图像的相机的相机内参数矩阵,确定所述第一像素点在所述第一平面图像中的映射位置。
7.根据权利要求1至6中任一项所述的方法,其特征在于,所述第一区域包括至少一个子区域,所述利用所述至少一个第二区域的运动矢量,确定所述第一区域的运动矢量,包括:
根据映射位置落入到每个子区域的第二区域的运动矢量,计算所述每个子区域的运动矢量;
根据所述至少一个子区域的运动矢量,计算所述第一区域的运动矢量。
8.根据权利要求7所述的方法,其特征在于,一个子区域映射有一个或多个第二区域,其中,在所述一个子区域映射有多个第二区域时,所述多个第二区域在所述一个子区域中对应的像素点的数量相同。
9.根据权利要求7或8所述的方法,其特征在于,所述根据映射位置落入到每个子区域的第二区域的运动矢量,计算所述每个子区域的运动矢量,包括:
根据映射位置落入到所述每个子区域的第二区域的运动矢量,以及作为权重因子的第一数值,确定所述每个子区域的运动矢量,其中,所述第一数值等于所述每个子区域包括的像素点的数量与所述第一区域包括的像素点的总数量的比值。
10.根据权利要求7至9中任一项所述的方法,其特征在于,所述根据所述至少一个子区域的运动矢量,计算所述第一区域的运动矢量,包括:
将所述至少一个子区域的运动矢量的和,作为所述第一区域的运动矢量。
11.根据权利要求7至10中任一项所述的方法,其特征在于,所述至少一个子区域包括第一子区域,所述根据映射位置落入到每个子区域的第二区域的运动矢量,计算所述每个子区域的运动矢量,包括;
在映射位置落入到所述第一子区域的第二区域包括多个第二区域时,将所述多个第二区域的运动矢量取平均;
根据取平均之后的运动矢量,计算所述第一子区域的运动矢量。
12.根据权利要求1至11中任一项所述的方法,其特征在于,所述方法还包括:
利用将所述第二平面图像进行旋转拼接得到所述曲面图像的旋转矩阵,对所述第二区域的运动矢量进行修正。
13.根据权利要求1至12中任一项所述的方法,其特征在于,所述利用所述至少一个第二区域的运动矢量,确定所述第一区域的运动矢量,包括:
利用所述至少一个第二区域经过图像信号处理器ISP生成的运动矢量,确定所述第一区域的运动矢量。
14.根据权利要求1至13中任一项所述的方法,其特征在于,所述运动矢量为全局运动矢量GMV。
15.根据权利要求1至14中任一项所述的方法,其特征在于,所述第一平面图像是由以下方式得到的:
将所述曲面图像映射到多面体表面上的多个多边形后由所述多个多边形展开形成的。
16.根据权利要求1至14中任一项所述的方法,其特征在于,所述第一平面图像是由以下方式得到的:
将所述曲面图像按照二维经纬图的方式进行映射得到的。
17.根据权利要求1至16中任一项所述的方法,其特征在于,所述利用所述第一平面图像包括的至少一个所述第一区域的运动矢量,对所述第一平面图像进行编码,包括:
根据所述第一区域的运动矢量,对所述第一区域进行帧间预测。
18.根据权利要求17所述的方法,其特征在于,所述根据所述第一区域的运动矢量,对所述第一区域进行帧间预测,包括:
根据所述第一区域的运动矢量进行运动搜索获得用于帧间预测的运动矢量;
根据所述获得的用于帧间预测的运动矢量,获取对所述第一区域进行帧间预测时所使用的参考数据。
19.一种图像处理设备,其特征在于,包括:
第一确定单元,用于确定用于得到第一平面图像上的第一区域的至少一个第二区域,所述第二区域为第二平面图像上的区域,所述第一平面图像由曲面图像映射得到,所述曲面图像由至少一个所述第二平面图像得到;
第二确定单元,用于利用所述至少一个第二区域的运动矢量,确定所述第一区域的运动矢量;
编码单元,用于利用所述第一平面图像包括的至少一个所述第一区域的运动矢量,对所述第一平面图像进行编码。
20.根据权利要求19所述的设备,其特征在于,所述第一区域由所述至少一个第二区域拼接得到。
21.根据权利要求19或20所述的设备,其特征在于,所述第一确定单元具体用于:
确定所述第二平面图像包括的区域在所述第一平面图像中的映射位置;
将所述第二平面图像包括的区域中映射位置落入到所述第一区域的区域,确定为所述第二区域。
22.根据权利要求21所述的设备,其特征在于,所述第一确定单元具体用于:
确定所述第二平面图像包括的区域中的第一像素点在所述第一平面图像中的映射位置;
根据所述第一像素点在所述第一平面图像中的映射位置,确定所述第二平面图像包括的区域在所述第一平面图像中的映射位置。
23.根据权利要求22所述的设备,其特征在于,所述第一确定单元具体用于:
将所述第一像素点在所述第二平面图像上的坐标,映射到球面坐标;
将所述球面坐标,映射到所述第一平面图像上的坐标。
24.根据权利要求22或23所述的设备,其特征在于,所述第一确定单元具体用于:
根据将所述第二平面图像进行旋转拼接得到所述曲面图像的旋转矩阵,和/或拍摄得到所述第二平面图像的相机的相机内参数矩阵,确定所述第一像素点在所述第一平面图像中的映射位置。
25.根据权利要求19至24中任一项所述的设备,其特征在于,所述第一区域包括至少一个子区域,所述第二确定单元具体用于:
根据映射位置落入到每个子区域的第二区域的运动矢量,计算所述每个子区域的运动矢量;
根据所述至少一个子区域的运动矢量,计算所述第一区域的运动矢量。
26.根据权利要求25所述的设备,其特征在于,一个子区域映射有一个或多个第二区域,其中,在所述一个子区域映射有多个第二区域时,所述多个第二区域在所述一个子区域中对应的像素点的数量相同。
27.根据权利要求25或26所述的设备,其特征在于,所述第二确定单元具体用于:
根据映射位置落入到所述每个子区域的第二区域的运动矢量,以及作为权重因子的第一数值,确定所述每个子区域的运动矢量,其中,所述第一数值等于所述每个子区域包括的像素点的数量与所述第一区域包括的像素点的总数量的比值。
28.根据权利要求25至27中任一项所述的设备,其特征在于,所述第二确定单元具体用于:
将所述至少一个子区域的运动矢量的和,作为所述第一区域的运动矢量。
29.根据权利要求25至28中任一项所述的设备,其特征在于,所述至少一个子区域包括第一子区域,所述第二确定单元具体用于:
在映射位置落入到所述第一子区域的第二区域包括多个第二区域时,将所述多个第二区域的运动矢量取平均;
根据取平均之后的运动矢量,计算所述第一子区域的运动矢量。
30.根据权利要求19至29中任一项所述的设备,其特征在于,所述第二确定单元还用于:
利用将所述第二平面图像进行旋转拼接得到所述曲面图像的旋转矩阵,对所述第二区域的运动矢量进行修正。
31.根据权利要求19至30中任一项所述的设备,其特征在于,所述第二确定单元具体用于:
利用所述至少一个第二区域经过图像信号处理器ISP生成的运动矢量,确定所述第一区域的运动矢量。
32.根据权利要求19至31中任一项所述的设备,其特征在于,所述运动矢量为全局运动矢量GMV。
33.根据权利要求19至32中任一项所述的设备,其特征在于,所述第一平面图像是由以下方式得到的:
将所述曲面图像映射到多面体表面上的多个多边形后由所述多个多边形展开形成的。
34.根据权利要求19至32中任一项所述的设备,其特征在于,所述第一平面图像是由以下方式得到的:
将所述曲面图像按照二维经纬图的方式进行映射得到的。
35.根据权利要求19至34中任一项所述的设备,其特征在于,所述编码单元具体用于:
根据所述第一区域的运动矢量,对所述第一区域进行帧间预测。
36.根据权利要求35所述的设备,其特征在于,所述编码单元具体用于:
根据所述第一区域的运动矢量进行运动搜索获得用于帧间预测的运动矢量;
根据所述获得的用于帧间预测的运动矢量,获取对所述第一区域进行帧间预测时所使用的参考数据。
37.一种计算机***,其特征在于,包括处理器和存储器;其中,所述存储器用于存储程序代码,所述处理器用于调用所述程序代码,执行根据权利要求1至18中任一项所述的方法。
38.一种计算机存储介质,其特征在于,用于存储程序代码,所述程序代码使得计算机执行如权利要求1至18中任一项所述的方法。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2018/098105 WO2020024173A1 (zh) | 2018-08-01 | 2018-08-01 | 图像处理方法和设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110771165A true CN110771165A (zh) | 2020-02-07 |
Family
ID=69230501
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201880040329.7A Pending CN110771165A (zh) | 2018-08-01 | 2018-08-01 | 图像处理方法和设备 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20210150665A1 (zh) |
CN (1) | CN110771165A (zh) |
WO (1) | WO2020024173A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113129395A (zh) * | 2021-05-08 | 2021-07-16 | 深圳市数存科技有限公司 | 一种数据压缩加密*** |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11637043B2 (en) | 2020-11-03 | 2023-04-25 | Applied Materials, Inc. | Analyzing in-plane distortion |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107135397A (zh) * | 2017-04-28 | 2017-09-05 | 中国科学技术大学 | 一种全景视频编码方法和装置 |
WO2018060207A1 (en) * | 2016-09-30 | 2018-04-05 | Thomson Licensing | Method and apparatus for encoding and decoding an omnidirectional video |
US20180184121A1 (en) * | 2016-12-23 | 2018-06-28 | Apple Inc. | Sphere Projected Motion Estimation/Compensation and Mode Decision |
CN108235031A (zh) * | 2016-12-15 | 2018-06-29 | 华为技术有限公司 | 一种运动矢量解码方法及解码器 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107040779B (zh) * | 2016-02-03 | 2020-04-21 | 腾讯科技(深圳)有限公司 | 全景视频编码方法及装置 |
US20170230668A1 (en) * | 2016-02-05 | 2017-08-10 | Mediatek Inc. | Method and Apparatus of Mode Information Reference for 360-Degree VR Video |
US20180020238A1 (en) * | 2016-07-15 | 2018-01-18 | Mediatek Inc. | Method and apparatus for video coding |
US20180109810A1 (en) * | 2016-10-17 | 2018-04-19 | Mediatek Inc. | Method and Apparatus for Reference Picture Generation and Management in 3D Video Compression |
-
2018
- 2018-08-01 WO PCT/CN2018/098105 patent/WO2020024173A1/zh active Application Filing
- 2018-08-01 CN CN201880040329.7A patent/CN110771165A/zh active Pending
-
2021
- 2021-01-29 US US17/162,886 patent/US20210150665A1/en not_active Abandoned
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018060207A1 (en) * | 2016-09-30 | 2018-04-05 | Thomson Licensing | Method and apparatus for encoding and decoding an omnidirectional video |
CN108235031A (zh) * | 2016-12-15 | 2018-06-29 | 华为技术有限公司 | 一种运动矢量解码方法及解码器 |
US20180184121A1 (en) * | 2016-12-23 | 2018-06-28 | Apple Inc. | Sphere Projected Motion Estimation/Compensation and Mode Decision |
CN107135397A (zh) * | 2017-04-28 | 2017-09-05 | 中国科学技术大学 | 一种全景视频编码方法和装置 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113129395A (zh) * | 2021-05-08 | 2021-07-16 | 深圳市数存科技有限公司 | 一种数据压缩加密*** |
CN113129395B (zh) * | 2021-05-08 | 2021-09-10 | 深圳市数存科技有限公司 | 一种数据压缩加密*** |
Also Published As
Publication number | Publication date |
---|---|
US20210150665A1 (en) | 2021-05-20 |
WO2020024173A1 (zh) | 2020-02-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110115037B (zh) | 球面投影运动估计/补偿和模式决策 | |
US10992919B2 (en) | Packed image format for multi-directional video | |
US10264282B2 (en) | Method and apparatus of inter coding for VR video using virtual reference frames | |
KR102359820B1 (ko) | 멀티뷰 비디오를 위한 비디오 코딩 기법 | |
US10986371B2 (en) | Sample adaptive offset filtering method for reconstructed projection-based frame that employs projection layout of 360-degree virtual reality projection | |
CN107888928B (zh) | 运动补偿预测方法和设备 | |
JP6690061B2 (ja) | 動き補償予測方法およびデバイス | |
US20190045212A1 (en) | METHOD AND APPARATUS FOR PREDICTIVE CODING OF 360º VIDEO | |
CN110268716B (zh) | 由球面投影处理等量矩形对象数据以补偿畸变 | |
TWI688258B (zh) | 一種用於重構的基於投影的幀的解塊方法 | |
CN107948547B (zh) | 全景视频拼接的处理方法、装置及电子设备 | |
US11202099B2 (en) | Apparatus and method for decoding a panoramic video | |
RU2729966C1 (ru) | Способы, устройства и машиносчитываемый носитель для кодирования и декодирования видеосигнала | |
US20210150665A1 (en) | Image processing method and device | |
US20190394484A1 (en) | Method and apparatus for predictive coding of 360-degree video dominated by camera motion | |
CN107959855B (zh) | 运动补偿预测方法和设备 | |
CN112313958B (zh) | 用于编码和解码视频信号的装置和方法 | |
WO2018059500A1 (zh) | 运动补偿预测方法和设备 |
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 | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20200207 |