CN105491364B - 编码装置及其控制方法 - Google Patents

编码装置及其控制方法 Download PDF

Info

Publication number
CN105491364B
CN105491364B CN201510642273.0A CN201510642273A CN105491364B CN 105491364 B CN105491364 B CN 105491364B CN 201510642273 A CN201510642273 A CN 201510642273A CN 105491364 B CN105491364 B CN 105491364B
Authority
CN
China
Prior art keywords
pixel value
image
information
value
error
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.)
Active
Application number
CN201510642273.0A
Other languages
English (en)
Other versions
CN105491364A (zh
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.)
Canon Inc
Original Assignee
Canon Inc
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
Priority claimed from JP2015148849A external-priority patent/JP6529374B2/ja
Application filed by Canon Inc filed Critical Canon Inc
Publication of CN105491364A publication Critical patent/CN105491364A/zh
Application granted granted Critical
Publication of CN105491364B publication Critical patent/CN105491364B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/89Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving methods or arrangements for detection of transmission errors at the decoder
    • 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/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/182Methods 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 a pixel
    • 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/597Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)

Abstract

本发明提供一种编码装置及其控制方法。所述编码装置使得能够在将由像素值的压缩引起的最大失真抑制到容许误差的同时进行编码。所述编码装置包括:设置单元,其根据所述容许误差信息来设置用于将目标图像的像素值变换为第二像素值的变换信息;变换单元,其基于所述变换信息来变换所述图像的各像素值,以生成第二图像;第一单元,其利用编码单元对所述第二图像进行编码,所述编码单元进行编码使得编码前和编码后的像素值之差在常数δ之内;以及第二单元,其生成用于将所述第二图像的像素值变换为与所述目标图像的像素值相关的值的逆变换信息,并且对所生成的逆变换信息进行无损编码。

Description

编码装置及其控制方法
技术领域
本发明涉及一种编码装置及其控制方法。
背景技术
传统上,已知用于对从测距传感器、立体照相机等获得的深度图像进行编码的技术。如果使用深度图像,则能够实现对未拍摄的视点的视频的进行合成的自由视点图像合成、人体检测的高精度化、两点间的三维距离的测量等。
3D视频编码(以下称为3DV)被确立为与深度图像的编码相关的标准技术。在3DV中,生成深度图像,从而以高的图像质量进行自由视点视频合成,但是因为与在诸如H.264等的RGB图像的编码技术中类似地来进行频率变换,所以容易发生深度图像的边缘附近的大的劣化。依据深度图像使用方法,以这种方式在一部分像素中发生大的劣化的压缩方案可能成为大问题。例如,在利用深度图像进行两点间的距离的三维测量的情况下,当使用其距离信息由于压缩而发生了大的劣化的像素值时,测量的结果改变很大。
同时,已知将由图像的像素值的压缩引起的最大失真抑制到特定值的技术。例如,在“The LOCO-I Lossless Image Compression Algorithm:Principles andStandardization into JPEG-LS,(IEEE TRANSACTION ON IMAGE PROCESSING,第9卷,第8期,2000年8月)”(以下称为文献1)中,定义了近无损(准无损)模式。如果将JPEG-LS近无损模式应用于深度图像,则由于压缩而出现的、深度图像中的各个像素的误差的最大值被抑制,因此,即使在两点间的距离测量中,也能够控制由于压缩而出现的、在两点间的距离测量中的误差的最大值。
然而,在JPEG-LS的近无损模式中,仅能保证由于压缩而出现的误差具有固定值,而与像素值无关(以下称为常数精度保证)。因此,无法进行如下编码:保证由像素值的压缩引起的最大失真落在根据像素值而不同的容许误差之内(以下称为与像素值对应的精度保证),并且存在编码数据量因维持高于必要的精度而增加的情况。
在此,以下描述距离信息的编码的示例。在距离信息的编码中,一般通过视差图像对距离信息进行编码,所述视差图像将作为对来自两个视点的图像进行立体匹配的结果而获得的视差(=不同图像间的相应点的偏移)保持为像素值。视差表达是距离越近则距离信息的分辨率越高的表达,并且是适合于立体匹配的原理的表达。在对视差图像应用保证不依赖于像素值的固定误差的编码的情况下,存在如下性质:距离越近,则由距离信息的压缩引起的劣化越低,而距离越远,则由距离信息的压缩引起的劣化越高。同时,可以考虑存在如下需求:依据个人的目的,通过即使在近距离处也容许一定量的误差,来减少距离信息的数据量。例如,在通过使用从视差图像中获得的距离信息来测量人体的身高的情况下,可以考虑即使在近距离处也可接受约1cm的误差。这里容许1cm的误差对应于在视差表达中,在近距离的情况下可接受像素值的大的偏移(例如,3),而在远距离的情况下可接受像素值的小的偏移(例如,1)。然而,因为在常数精度保证的编码中,以例如在近距离处容许±3的误差、而在远距离处容许±1的误差的方式,无法根据像素值进行精度保证,所以难以应对这样的需求。
发明内容
本发明是鉴于上述传统技术的问题而构想的。本发明提供一种用于生成编码数据的技术,该技术将由像素值的压缩引起的最大失真抑制在与各像素值相对应的特定容许误差之内。
根据本发明的第一方面,提供了一种编码装置,其可操作以根据定义与像素值相对应的容许误差的容许误差信息来对图像进行编码,该编码装置包括:设置单元,其根据所述容许误差信息来设置用于将作为编码目标的图像的像素值变换为第二像素值的像素值变换信息;图像变换单元,其基于所述像素值变换信息来变换作为编码目标的图像的各像素值,以生成由变换后的像素构成的第二图像;第一编码控制单元,其利用编码单元对所述第二图像进行编码,所述编码单元用于进行编码使得编码前的像素值与编码后的像素值之差在预先设置的常数δ之内;以及第二编码控制单元,其基于所述像素值变换信息来生成用于将所述第二图像的像素值变换为与输入图像的像素值相关的值的像素值逆变换信息,并且对所述像素值逆变换信息进行编码,其中,所述设置单元将用于进行变换使得在所述第二图像的像素值被偏移δ的情况下输入图像的像素值的偏移落在容许误差之内的信息,设置为所述像素值变换信息。
根据本发明的第二方面,提供了一种编码装置的控制方法,该编码装置可操作以根据定义与像素值相对应的容许误差的容许误差信息,来对图像进行编码,该控制方法包括以下步骤:根据所述容许误差信息来设置用于将作为编码目标的图像的像素值变换为第二像素值的像素值变换信息;基于所述像素值变换信息,来变换作为编码目标的图像的各像素值,以生成由变换后的像素构成的第二图像;利用编码单元对所述第二图像进行编码,所述编码单元用于进行编码使得编码前的像素值与编码后的像素值之差在预先设置的常数δ之内;以及基于所述像素值变换信息来生成用于将所述第二图像的像素值变换为与输入图像的像素值相关的值的像素值逆变换信息,并且利用无损编码器对所述像素值逆变换信息进行编码,其中,将用于进行变换使得在所述第二图像的像素值被偏移δ的情况下输入图像的像素值的偏移落在容许误差之内的信息,设置为所述像素值变换信息。
通过本发明,能够在将由像素值的压缩引起的最大失真抑制到与各像素值相对应的特定容许误差的同时,进行编码。
通过以下参照附图对示例性实施例的描述,本发明的其他特征将变得清楚。
附图说明
图1是根据第一实施例的编码装置及其外围装置的框图。
图2是根据第一实施例的流程图。
图3是根据第一实施例的解码装置及其外围装置的框图。
图4A至图4D是用于说明输入像素值与第二像素值之间的关系的图。
图5A及图5B是用于说明根据第一实施例的容许误差信息的图。
图6是用于说明根据第一实施例的数据变换的流程的图。
图7是计算机的块结构图。
图8是用于说明根据第三实施例的数据变换的流程的图。
图9是用于说明根据第三实施例的容许误差信息的图。
图10A及图10B是用于说明根据第三实施例的容许误差与像素值变换之间的关系的图。
图11是根据第三实施例的、设置单元进行的处理的流程图。
图12A至图12C是用于说明根据第三实施例的设置单元的实施例的图。
图13A及13B是用于说明根据第三实施例的像素值变换的实施例的图。
图14A至图14C是用于说明根据第一实施例的处理的实施例的图。
图15是用于说明由编码引起的误差的图。
图16是用于说明根据第五实施例的摄像模式和距离的容许误差的图。
具体实施方式
在下文中,将根据附图来详细说明根据本发明的实施例。请注意,以下描述的实施例仅例示了具体实施本发明的示例,并且仅是在权利要求的范围中定义的结构的具体实施例。
[第一实施例]
在本实施例中,描述如下示例:通过获取视差图像、进行有损压缩、并且由解码的视差图像构造3D点群,来测量两个特定点间的三维空间内的距离。
图1是关于本实施例的编码装置及其外围装置的框图。下面,将说明构成该图的各要素及其功能。
在摄影单元108中,拍摄多视点彩色图像。然后,在视差估计单元109中,进行立体匹配,并且由多视点图像估计视差图像。在此,视差图像是使得视差被保持在各像素的像素值中的图像。视差是如下量:表示当从两个不同视点拍摄同一被摄体(点)时,在针对一个视点拍摄的图像中的,针对另一视点出现的点。一般而言,表达在不同图像之间,同一被摄体出现的点(以下称为相应点)彼此偏移了多少像素。具体而言,在被布置为沿水平轴以基线长度B[mm]的间隔放置并且光轴平行的两个照相机拍摄了距摄像面(穿过两个照相机并且垂直于光轴的平面)d[mm]的点的情况下,两个拍摄的图像内的相应点的视差l[pix]为:
l=BFW/(dC)
在此,F是照相机的焦距[mm],W是拍摄图像的宽度[pix],并且C是图像传感器的宽度[mm]。在实际使用中,经常不使用视差图像像素值l,而可以使用
n=l+A
以将l平行偏移常数A,从而减小视差图像的位深度(减少色调数)。因此,在本说明书中,n将被称为视差。此外,在这种情况下,上述视差与距离之间的关系为:
n=BFW/(dC)+A...(1)
下面,将利用视差n继续讨论。
请注意,在照相机被正确地横向(水平)布置的情况下,相应点的垂直方向上的视差能够被保证为0(极线约束)。因此,在此说明的视差将表示相应点间的水平方向上的偏移。
此外,摄影单元108及视差估计单元109的目的是获得视差图像,因此上述的相应方法可以被替换。因为视差图像是通过应用基于式1的、摄像装置与被摄体之间的距离的变换而表达的量,因此除了如上所述的多视点图像间的立体匹配以外,也可以广泛使用其他的距离信息获取技术。例如,存在从单独视点的照相机拍摄图案照射的光并由图案的失真条件来测量距离的主动立体方法,并且存在由使激光往返一次的时间来估计距离的飞行时间方法。
接下来,将说明编码装置101。本实施例的编码装置101经由输入单元102输入作为编码目标的视差图像。然后,编码装置101通过根据由获取单元105获取的容许误差信息而进行输入的视差图像的压缩编码,来生成编码数据,并且输出编码数据。在此,容许误差信息是针对各像素值指定容许误差的信息,并且通过函数、表格等来表达容许误差信息。另外,编码装置101在解码时生成用于针对原始像素返回容许误差的信息,并且对该信息进行编码。然后,编码装置101对这两个编码数据项(即用于返回容许误差的信息的编码数据和视差图像的编码数据)进行多路复用和输出。
实施例中的编码装置101的特征在于,编码装置101通过如下方式来对视差图像进行编码:将由于该视差图像的各像素的压缩而产生的误差的最大值,抑制为小于或等于由获取单元105获取的容许误差信息指定的值。为了实现此,首先,设置单元106根据容许误差信息来设置用于将输入视差图像的像素值变换为第二像素值的像素值变换信息。像素值变换信息通过函数、表格等来表达视差像素值到第二像素值的变换。接下来,图像变换单元103通过基于像素值变换信息变换输入视差图像的各像素,来生成由变换后的像素构造的第二图像。然后,第一编码器104进行常数精度保证的编码(压缩图像,同时保证针对生成的第二图像的、由像素值的压缩引起的偏移落在常数δ之内)。第一编码器104可以使用作为公知技术而给出的JPEG-LS。请注意,δ可以是任意值;δ可以由容许误差信息来计算,或者δ可以被预先设置。另外,在δ=0的情况下的编码是指无损编码,并且在这种情况下,编码装置101同样工作而没有问题。在根据像素值进行精度保证编码时,设置单元106具有重要的作用。设置单元106定义像素值变换信息,使得当第二像素值被改变δ、然后通过相应地应用由像素值变换信息确定的逆变换来获取解码像素值时,解码像素值与输入视差图像像素值之间的偏移落在容许误差之内。第二编码器107对用于将第二像素值变换为有意义的值的信息(以下称为像素值逆变换信息),进行无损编码。换言之,第二编码器107对用于指定设置单元106的逆变换的信息,进行无损编码。请注意,“有意义的值”经常是指输入视差图像的像素值。无损编码的方法不受特别限定。另外,以函数、表格等的形式提供像素值逆变换信息。
在实施例中,编码装置101输出的编码数据中,包括下面的信息(1)及(2)。
(1)从第一编码器104获得的用于恢复第二图像的信息
(2)从第二编码器107获得的用于恢复像素值逆变换信息的信息
请注意,编码数据的输出目的地被假定为是诸如存储卡等的存储介质,但也可以是网络,并且输出目的地的类型不受限定。
图3例示了对上述编码数据进行解码的解码装置301的结构。要解码的编码数据被假定为如上所述从存储卡中输入,但是也可以经由网络接收要解码的编码数据,并且输入源的类型不受限定。无论是哪种情况,都是解码装置301输入编码数据,并且第一解码器302恢复第二图像。此外,第二解码器305恢复像素值逆变换信息。然后,图像逆变换单元303通过根据像素值逆变换信息应用第二图像的逆变换,来恢复视差图像。相对于编码装置中的编码目标的视差图像的像素值,通过解码处理获得的视差图像的像素值在由容许误差信息表示的容许误差范围之内。解码的视差图像被输入到两点距离测量单元304中。在两点距离测量单元304中,通过由视差图像构造3D点群,来进行两个特定点间的三维距离的测量。以这种方式,在将视差变换为距离的情况下,有必要在编码数据中,包括从视差到距离的变换所需的信息。此外,如果根据容许误差信息而包括编码数据,则能够知道两点间的距离测量中的最大误差,该最大误差是由于因压缩而产生的视差图像的像素值的劣化而出现。此外,将视差图像用于两点间的距离测量,是解码的视差图像的应用的一个示例。例如,可以将从视差图像中获得的三维信息,用于人体检测、侵入特定区域的侵入者的检测等。
接下来,更详细地说明编码装置101的结构和编码装置101的处理内容。特别地,详细地描述设置单元106进行用来实现容许误差的像素值变换信息设置处理,在该像素值变换信息设置处理中,容许误差信息被具体地定义。
为了说明在本实施例中设置的容许误差信息,首先,补充说明被输入到编码装置101的视差图像。当对式(1)进行变换时,针对视差n[pix]和距离d[mm],关系
d=BFW/(nC)...(2)
=P/(n-A)
=f(n)
显然成立。在此,P=BFW/C。从式(2)的关系中能够看出,因为距离和视差成反比例关系,所以当用曲线图表示该关系时,结果如图4A。从图4A中可以得出以下内容。
-特性1:照相机与被摄体之间的距离越近,则距离的分辨率越高,反之,距离越远,则距离的分辨率越低。
-特性2:在通过三角测量法获得距离的情况下,距离测量误差依赖于在立体匹配中搜索相应点的误差,因此,在视差表达中,虽然在一方面,与视差的大小无关地出现相同程度的误差,但在另一方面,在距离表达中,距离越大,则出现越大的误差。
考虑到上述两种特性,在本实施例中与视差图像相关的容许误差信息被定义如下。
-条件1:“容许视差的误差δ0[pix]”
-条件2:“当容许条件1的误差时,在距离误差落在e[mm]内的区域中,容许距离的误差e[mm]”
在此,有利的是,参数δ0由立体匹配的误差分布定义,并且e根据个人使用距离信息的目的定义足够的精度。用于容许条件2的误差e[mm]的表达设置与距离相关的容许误差,但是也可以由式(1)的变换公式简单地转换到与视差相关的容许误差。以这种方式,针对到获取单元105的输入,可以提供用于间接地指定与输入视差图像的像素值相对应的误差的信息。上述两个条件指定在输入视差图像的像素值与经由编码装置101和解码装置301解码的像素值n'之间建立以下的关系。
此外,下面的式(3)将该关系表示为输入视差图像的像素值与其容许误差δn(n)之间的关系:
换言之,在本实施例中,通过式(3)确定容许误差信息。式(3)的曲线图如图5A所示。图5A的曲线图的实线部分表示由条件1确定的容许误差,并且虚线或点线部分表示由条件2确定的容许误差。请注意,从图5A中能够看出,式(3)指定n的正方向上的误差(上限),以及负方向上的误差(下限)。然而,在能够通过仅符号被反转的方程式来表达上限和下限的情况下,可以仅有一方被指定。
请注意,图5A例示了视差与容许误差之间的关系,但是也可以通过式1的变换公式,将该关系表示为距离d[mm]与容许误差之间的关系,如图5B的曲线A'BC所示。在此,图5B的曲线ABC将与容许条件1的误差δ0[pix]的视差相关的容许误差,表达为与距离相关的容许误差。在本实施例中,如图5B的曲线BC所示,在大于或等于预定距离的距离处,在容许与距离测量精度对应的误差的同时进行编码。同时,在小于预定距离的近距离处,控制像素值的容许误差,使得距离的最大误差是固定值e,如条件2所指定的。在图5B中,例示了e=100[mm]的示例。这对应于图5B的直线A'B。由此,在压缩中,能够高效地减少编码数据的量,而不过度地保证近距离部分中的距离信息的精度。
接下来,将讨论设置单元106的详情。如前所述,设置单元106获得用于从输入像素值n变换到第二像素值m的变换公式。此时,同样有必要定义像素值变换信息,使得当第二像素值被改变δ、然后通过相应地应用由像素值变换信息定义的逆变换获取解码像素值时,解码像素值与输入像素值之间的偏移落在容许误差内。下面,当推导从输入像素值n到第二像素值m的变换时,首先,获得用于从m变换到d的变换公式g(m),然后获得用于从n变换到m的下面的变换公式(4)。
m=g-1(f(n))...(4)
在下面的推导中,通过针对容许误差信息划分出应用条件1的区域和应用条件2的区域,来推导出g(m)。因此,下面通过如图4C中的g(m)所示划分出两个区域,来定义各区域。
在此,g1(m)是应用条件1的区域的函数,并且g2(m)是应用条件2的区域的函数。定义两个区域的边界的值mt是点nt通过以下说明的像素值变换而被变换为第二像素值的值,在所述点nt,针对在图5A的容许误差信息中的容许误差的下限,来切换是应用条件1还是条件2。
首先,获得g1(m)。g1(m)是应用条件1的容许误差是常数δ0的区域。在此,不需要变换,即g1(m)=f(m),并且可以由第一编码器104以常数精度保证精度参数δ=δ0进行编码。在该区域中,对于从输入像素值n到第二像素值的像素值变换,m=n。
接下来,获得g2(m)。g2(m)是对应于应用容许误差信息的条件2的区域的函数。从图5A的曲线图中能够看出,即使在输入像素值的表达保持原样的状态下,如果以容许误差δ=δ0进行编码,则也能够保证输入图像的误差落在容许误差之内。然而,可以考虑因为在应用条件2的区域中,容许较高的误差,所以随着可能出现大于δ0的误差的变换进行得越多,压缩率将提高。关于本实施例的容许误差信息,在应用条件2的区域中,针对下限的容许误差(的绝对值)比针对上限的小。在下文中,仅考虑容许误差的下限来定义像素值变换信息。实际上,如果应用以下推导的变换,则能够确认由压缩引起的输入像素值n的劣化落在容许误差的上限之内。为了理解g2(m)的推导,下面描述图6中所示的本实施例中的数据变换的流程。通过进行变换f,将提供的输入像素值n变换为距离d。接下来,通过应用g的逆变换g-1,将变换后的距离d变换为第二像素值m。在此,应用四舍五入604以舍入为整数。以上是由图像变换单元103对各像素应用的处理。接下来,对m应用编码602及解码603,并且获得m'。M与m'之差最大是δ=δ0。由第一编码器104及第一解码器302进行该处理。接下来,对m'进行变换g,获得d',并且通过对d'应用f的逆变换f-1和四舍五入604,来获得解码像素值n'。由图像逆变换单元303进行该处理。为了由解码像素值n'获得距离,通过应用变换f来获得解码距离d”。g2(m)必须被定义为使得在图6中所示的数据变换中,d与d”之差最大落在e之内。从图4C中能够看出,对于g2(m),有必要考虑与g1(m)的连接,因而推导变得稍微复杂。因此,首先,获得满足条件2的单调递增函数g0(m)。在图6的数据变换中,出现的误差如下:
-在四舍五入601中最大是0.5
-在编码602及解码603中最大是δ=δ0
-在四舍五入604中最大是0.5。
考虑了这些误差,为了满足条件2,仅需使g0(m)满足下面的条件式(5)。
仅需满足条件式
在此,nmax是输入视差图像的像素值能够取的最大值。该条件式被求解如下:
在此,
k(m)=k(0)Rm/(δ+0.5)
并且,
此外,对于α和β,存在以下方程式的解(α<β)。
另外,h(0)可以被定义为满足g0(0)=f(nmax)。以上获得的g0(m)是单调递增函数,如图4B所示。对于g2(m),考虑到如图4C所示与g1(m)的连接,在使g0(m)反转为单调递减后,进行平行偏移,并且通过下式来获得g2(m):
g2(m)=g0(C-m)...(6)
请注意,对C而言,可以考虑与g1(m)的连接来定义合适的常数。
通过与以上获得的图4C的g(m)相关地应用式(4)的变换,设置单元106能够获得图4D中所示的变换信息。以上是对本实施例中的编码装置101的各单元的说明。
接下来,在图2的流程图中,例示了本实施例的拍摄、编码处理、解码处理和用于使用解码信息的处理的流程。这些处理基本上对应于图1或图3的各单元的处理。在步骤S201中,进行多视点摄像。这是摄影单元108进行的处理。在步骤S202中,通过立体匹配进行视差估计。这是视差估计单元109进行的处理。在步骤S203中,获取容许误差信息作为输入,并且设置像素值变换信息。这是设置单元进行的处理。在步骤S204中,基于设置的像素值变换信息,通过变换在步骤S202中获得的视差图像的各像素值,来获得第二图像。这对应于图像变换单元103。在步骤S205中,进行第二图像的编码。这是第一编码器104进行的处理。在步骤S210中,对第二图像的各像素值被变换为输入像素值的信息进行编码。这是第二编码器107进行的处理。在步骤S206中,发送在步骤S205中获得的第二图像的编码数据,以及用于进行在步骤S203中计算出的像素值变换信息的逆变换的信息的编码数据。在步骤S207中,对第二图像进行解码。这对应于第一解码器302。在步骤S211中,对像素值逆变换信息进行解码。这由第二解码器305进行。在步骤S208中,对第二图像进行由像素值逆变换信息确定的逆变换。图像逆变换单元303进行该处理。最后,在步骤S209中,进行两点间的距离的测量。两点距离测量单元304进行该处理。以上是对根据图2的本实施例的处理流程的说明。
在上述的实施例中,描述了像素值变换信息及像素值逆变换信息是能够由少量参数表示的函数的示例。一般而言,像素值逆变换信息是用来与输入像素值相关地列举第二像素值的表格信息,并且因为该表格必须被包括在编码数据中,所以存在数据量增大的可能性。然而,因为在本实施例中描述的示例中,只需发送少量参数作为像素值逆变换信息,所以有能够相应地削减数据量的效果。请注意,有利的是,像素值逆变换信息被可逆地压缩,以实现进行精度保证编码的目的。然而,因为在以表格发送像素值逆变换信息的情况下,数据量增加,所以可以考虑进行通过函数近似该表格并且发送函数的参数的有损压缩。在这种情况下,如果在编码装置上,利用通过有损压缩而解码的像素值逆变换信息,来确认输入像素值n与输出像素值n'之差是否落在容许误差之内,则能够实现进行精度保证编码的目的。
接下来,为了帮助理解,将利用图14A至图14C来说明编码装置101的更具体的示例。请注意,在下面的具体示例中,在前述说明中出现的参数的具体值是P=348000、e=100、δ0=2、nmax=1023、C=184,以及nt=102。在图14A、图14B及图14C中,以表格形式例示了容许误差信息、像素值变换信息及像素值逆变换信息。请注意,如上所述,能够通过小数的函数参数来获得在此所示的表格。在本示例中,以10位来表示视差图像的像素值。因为存在10位,因此,像素值能够取的范围是0-1023。
下面说明像素值n'落在容许误差之内的情况,所述像素值n'是通过图14A中的输入像素值n=147被编码装置101编码并通过解码装置301解码而获得的结果。如图14B所示,像素值n被图像变换单元103变换为第二像素值m=132。然后,像素值m被第一编码器104以最大是δ=2的误差进行编码,并且被第一解码器302解码。作为结果而获得的m'能够取130至134的值。最后,在图像逆变换单元303中,m'被变换为n'。如图14C的箭头符号所示,n'能够取值144至153。因为这落在由图14A的容许误差信息指定的n的容许误差的范围142至153之内,所以能够看出,编码装置的目的确实被实现。
在上文中,描述了通过如条件1及条件2所表示的曲线的参数将容许误差信息输入至获取单元105的方法,但是也可以考虑根据图像来适应性地获得容许误差信息的方法。例如,人体检测处理被应用于由摄影单元108获取的彩色图像,并且参照同一视点的视差图像,获得人体存在的区域中的视差图像的像素值分布,并且针对在该像素值分布中存在许多像素的像素值,使得容许误差更小。在该处理更为一般的情况下,获取单元105具有用于指定关注区域的关注区域指定单元、以及用于参照关注区域中的像素值来计算容许误差信息的容许误差信息计算单元。在这种情况下,由设置单元106获得的变换信息不同于图4D中所示的。然而,同样只需要获得如前所述满足以下规则的变换信息:当第二像素值被改变δ、然后通过相应地应用由像素值变换信息定义的变换的逆变换来获取解码像素值时,解码像素值与输入像素值之间的偏移落在容许误差之内。
另外,在上面的说明中,编码装置101仅用于视差图像解码,但是编码装置101并不限定于视差图像,并且可以被应用于任何图像(即,灰色图像、彩色图像等)。作为灰色图像的示例,可以考虑诸如距离、温度、亮度等的物理量。作为彩色图像的示例,可以考虑获取多个彩色图像以在摄影单元108中进行视差估计,并且由编码装置101对在此获取的一个或更多个彩色图像进行编码。在这种情况下,能够在类似的编码装置上共享彩色图像和视差图像,并且存在系统变得更简易的优点。
此外,可以考虑对上述的彩色图像应用与编码装置101不同的编码(例如JPEG)。在此,因为在利用JPEG的情况下,能够以块为单位在不同的图像质量下进行编码,因此可以考虑参照同一视点的视差图像,通过针对彩色图像、以及针对具有容许误差大的许多像素的块,降低块的图像质量,来设置高压缩。这并不限定于JPEG,并且对于能够按区域控制压缩率的所有图像编码方案,这都能够被实现。
另外,在上述说明中,说明了第一编码器104中的JPEG-LS的示例。这是如下的编码,在该编码中,保证当从编码目标像素值中减去编码目标像素值被解码成的像素值时,所得的差落在-δ或更大和δ或更小之内。然而,本发明的基本考虑是能够应用非对称的、在正和负方向上出现的最大误差。例如,可以应用如下编码:当从编码目标像素值中、减去编码目标像素值被解码成的像素值时,所得的差将落在0或更大和1或更小之内。即使在这种情况下,因为出现的差是-1或更大和1或更小,因此只需以δ=1应用上述像素值变换。此外,通过使用最大误差的非对称性,可以获得更优的像素值变换。在这种情况下,只需获得满足如下规则的变换信息:即使在第二像素值中出现在第一编码器104中能够出现的最大误差,解码像素值与输入像素值之间的偏移也落在容许误差之内。请注意,通过与JPEG-LS类似地预测编码,能够轻松地实现用于实现0或更大和1或大小的误差的编码。换言之,在以光栅扫描顺序对各像素进行编码的方案中,可以由周围的像素值预测编码目标的像素值,并且可以对在以二进制来表达预测误差时至少有效位被下舍入的值进行熵编码。
以上是对本实施例的说明。通过上述结构,编码装置101能够对图像进行编码,同时将由于由输入单元102输入的图像的各像素的压缩而出现的误差的最大值,抑制为小于或等于由获取单元105获取的容许误差。
[第一实施例的变形例]
图1中所示的编码装置101的各单元可以由硬件构成,或者可以被实施为软件(计算机程序)。在这种情况下,软件被安装在诸如PC(个人计算机)等的通用计算机的存储器中。然后,通过由计算机的CPU执行该安装的软件,计算机实现上述的图像处理装置的功能。具体而言,该计算机能够被应用于上述图像处理装置。针对适用于第一实施例的编码装置的计算机的硬件结构示例,利用图7的框图来给出说明。
CPU 1501使用存储在RAM 1502、ROM 1503等中的计算机程序、数据等整体地进行计算机的控制,并执行图像处理装置进行的上述各处理。RAM 1502是非临时性计算机可读存储介质的示例。RAM 1502充当用于临时存储从外部存储装置1507、存储介质驱动器1508或网络接口(未示出)加载的计算机程序、数据等的区域。此外,RAM 1502充当在CPU1501执行各种处理时使用的工作区。具体而言,RAM 1502能够适当地提供各种区域。ROM 1503是非临时性计算机可读存储介质的示例,并且存储计算机的设置数据、引导程序等。
键盘1504及鼠标1505在计算机的操作者进行操作时,能够向CPU 1501输入各种指令。显示装置1506由CRT、液晶画面等构成,并且能够以图像、文本等来显示CPU 1501的处理结果。
外部存储装置1507是计算机可读存储介质的示例,并且是如硬盘驱动设备所代表的大容量信息存储设备。在外部存储装置1507中,保存OS(操作系统)、用于使CPU 1501实现图1中所示的各种处理的计算机程序、数据等、上述表格、数据库等。保存在外部存储装置1507中的计算机程序、数据等根据CPU 1501的控制,被适当地加载到RAM 1502中,并且成为CPU 1501的处理目标。
存储介质驱动器1508读取存储在诸如CD-ROM、DVD-ROM等的存储介质中的计算机程序、数据等,并且将读取的计算机程序、数据等输出到外部存储装置1507、RAM 1502等。此外,所说明的被保存在外部存储装置1507中的信息的全部或一部分,可以被存储在该存储介质中,并且可以被读取到存储介质驱动器1508中。
I/F 1509是用于从外部输入彩色图像、深度图像等的接口,并且例示了I/F 1509的一个示例是USB(通用串行总线)。附图标记1510表示连接上述各单元的总线。
在上述结构中,当计算机的电源被接通时,CPU 1501根据存储在ROM 1503中的引导程序,将OS从外部存储装置1507加载到RAM 1502中。结果,能够经由键盘1504及鼠标1505进行信息输入操作,并且能够在显示装置1506上显示GUI。当用户通过操作键盘1504、鼠标1505等输入启动存储在外部存储装置1507中的编码应用的指令时,CPU 1501将该程序加载到RAM 1502中,并执行该程序。由此,计算机充当图像处理装置。
请注意,CPU 1501执行的编码应用程序包括与属于图1的编码装置101的各单元基本对应的函数(或子程序)。在此,图像处理结果被保存在外部存储装置1507中。请注意,该计算机同样适用于与以下各实施例相对应的编码装置,并且通过以下的说明,这一点将变得清楚。
[第二实施例]
在第一实施例中,在图6的数据变换流程中,在获得了解码像素值(视差)n'后,获得解码距离d”。然而,在解码时不需要视差n'并且只需要获取距离的情况下,编码装置101输出的编码数据如下。
-从第一编码器104获得的、用于恢复第二图像所需的信息(对m'进行解码所需的信息)
-用于由第二图像的像素值m'获得距离d'的信息(函数g的参数)
这些当中,前者是与第一实施例共通的,并且后者是与“像素值逆变换信息”的第一实施例不同的示例。请注意,在第一实施例中,作为像素值逆变换信息,对用于由第二图像的像素值m'获得解码像素值n'的信息进行解码。如果对该构思进行一般化,则像素值逆变换信息不仅是用于将第二像素值变换为输入像素值的信息,并且也可以说是用于将第二像素值直接变换为输入像素值本来表达的物理量的信息。
第二实施例的解码装置及编码装置的结构基本上与第一实施例的图1及图3中相同。然而,设置单元106、第二编码器107、第二解码器305及图像逆变换单元303的详情不同。此外,解码装置301输出在各像素中包括距离信息d'的深度图像,而不是视差图像。
在此,作为与第一实施例的不同点,重点说明设置单元106的作用。与在第一实施例中类似地,第二实施例的设置单元106的作用是获得如下变换:当第二像素值被改变δ、并且通过相应地应用像素值变换信息的逆变换来获得解码像素值时,解码像素值与输入像素值之间的偏移落在容许误差之内。为了实现满足该规则的变换,首先,与在第一实施例中类似地,获得用于从m变换为d的变换公式g(m),然后获得用于基于式(4)从n变换为m的变换公式。在本实施例中,g(m)包括g1(m)及g2(m),并且g1(m)与在第一实施例中类似。为了获得g2(m),首先,与在第一实施例中类似地,获得g0(m)。对于用于获得g0(m)的条件式,因为图6的四舍五入604是不必要的,所以可以获得满足下面的式(7)的函数,替代第一实施例的式(5)。
求解上述的式(7)获得以下的结果。
如果针对g0(m)进行与在第一实施例中类似的变换,则能够获得g2(m)及g(m)。
在第二编码器107中,如前所述,对用于由第二图像的像素值m'来获得距离d'(函数g的参数)的信息进行编码。另外,第二解码器305对由第二编码器107编码的像素值逆变换信息(函数g)进行解码。
在图像逆变换单元303中,通过对第二图像的各像素值应用函数g的变换来获得深度图像。该深度图像的各像素值对应于图6的d'。
请注意,第二实施例中的解码像素值n'未被明确地解码,但是如果对d'应用变换f-1,并且对非整数解码像素值nd应用四舍五入604,则n'能够被解码。在本实施例中,保证nd与n之差落在由容许误差信息定义的误差之内。然而,因为当确定像素值变换信息时未考虑四舍五入604的误差,所以无法保证n'与n之间的误差落在容许误差之内。与第一实施例的大的差异在于,在本实施例中,通过在不考虑四舍五入604的误差的情况下获得g(m),能够通过比在第一实施例中更简单的变换公式,来表示变换公式g0(m)。由此,可以认为与第一实施例相比能够实现实施更容易、处理更高速的效果。
请注意,在本实施例中,例示了不考虑图6的四舍五入604的误差的示例,但是在第二像素值m能够取整数以外的值的情况下,不需要考虑四舍五入601的误差。即使在这种情况下,也能够通过与本实施例中相同的构思,来构造编码装置。
以上是对第二实施例的说明。通过上述结构,与在第一实施例中类似地,能够实现如下编码装置:能够对图像进行编码,同时将由于输入图像的各像素的压缩而出现的误差的最大值,抑制到容许误差信息定义的容许误差或更小。另外,作为本实施例特有的效果,与第一实施例相比,能够获得实施更容易、处理更高速的效果。
[第三实施例]
在第一实施例中,定义了容许误差信息的具体示例(条件1及条件2),并且说明了在这种情况下有效的像素值变换的方法。相反,在本实施例中,说明了在能够以指定根据像素值的特定容许误差的表格的形式提供容许误差信息情况下能够应用的像素值变换方法。与在第一实施例中相比,能够以更通用的方式来使用本实施例的像素值变换。
在图8中,例示了本实施例中的数据变换的流程。对输入像素值n应用像素值变换h,并且获得像素值m。对像素值m进行编码和解码,并且获得像素值m'。M与m'之差最大在常数δ之内。接下来,对像素值m'应用变换h-1,并且获得解码像素值n'。图8是与第一实施例的图6相对应的图,并且在变换f及g-1的两个阶段中进行的图6中的从n到m的变换被收集到变换h中。在第一实施例中,为了例示在输入像素值表示视差的情况下特别有效的编码的示例,为了简化说明,说明了在输入像素值n与第二像素值m之间夹入距离d的数据变换的流程。然而,在本实施例中,针对不论像素值对应于哪些物理量都能够有效地使用的通用方法,说明了不经过距离d而直接从n到m的变换。请注意,对于逆变换的原始定义,下式成立。
n=h-1(h(n))
然而,在本实施例中描述的变换h和h-1不一定满足这种关系。然而,因为这些变换进行输入像素值和第二像素值的双向变换,所以这些变换被称为逆变换,从而能够轻松地理解对应关系。
在第三实施例中说明的编码装置的框图与图1的编码装置101相同。另外,与在第一实施例中类似地,编码装置101的作用是对图像进行编码,同时将由于输入图像的各像素的压缩而产生的误差的最大值,抑制为小于或等于容许误差信息指定的值。第三实施例与第一实施例之间的大的差异在于由获取单元105输入的容许误差信息、以及设置单元106基于该容许误差而设置的像素值变换信息。下面,将重点针对与第一实施例的差异,来说明第三实施例的详情。
视差图像被输入到图像输入单元102中。请注意,与在第一实施例中类似地,输入图像并不限定于视差图像。为了简化下面的说明,输入的视差图像的各像素值被假定为取0至7的值。
在获取单元105中,以表格形式输入与像素值对应的容许误差。对于容许误差,在针对一个值在正和负方向上容许相同误差的情况下,针对各像素值输入一个值;在针对一个值在正和负方向上容许不同误差的情况下,针对各像素值输入两个值。这里,在图9中例示了后者的示例。图9是例示各输入像素值的容许误差的表格,并且例如对于输入像素值“4”,针对正方向提供了容许误差“2”,并且针对负方向提供了容许误差“1”。换言之,对于输入像素值“4”,容许由编码引起的误差导致的、在3至6的范围内的改变。另外,图9中的被圆圈标记包围的容许误差的数字表示,劣化后的像素值在容许误差内包括像素值的有效区域的上限或下限(在本实施例的示例中,是0或7)。
在图10A中,例示了在图9中容许误差信息定义的解码像素值n'与输入像素值n之间的关系。在图10A中,横轴表示输入像素n,并且纵轴表示解码像素n',并且利用实线例示了相对于像素值n、n'能够取的值的范围。图中的黑色圆点是n=n'的点,并且在这些点上下,实线根据容许误差而延伸。
设置单元106生成定义从像素值n变换为m的像素值变换h的表格。然后,图像变换单元103生成输入图像的各个像素值基于该表格而被变换为的第二图像。然后,第一编码器104应用常数精度保证的编码,该常数精度保证的编码压缩图像同时保证针对被生成的第二图像的、由像素值的压缩引起的偏移落在常数δ内。该处理的流程与在第一实施例中类似,但是设置单元106的详情是不同的,并且被描述如下。
设置单元106的目的与在第一实施例中类似。具体而言,像素值变换信息及像素值逆变换信息被定义,使得当第二像素值m被改变δ、并且通过相应地应用逆变换信息h-1定义的逆变换来获取解码像素值时,解码像素值与输入像素值之间的偏移落在容许误差之内。下面,说明如下示例:假定δ=1,并且生成输入像素值n与解码像素值n'之间的偏移落在图10A中所示的范围之内的像素值(逆)变换表。
请注意,下面的算法在δ是任何特定值的状态下操作,并且因为压缩率依据δ而改变,所以有利的是压缩率被设置为合适的值。当δ过小时,例如当δ=0时,必须由第一编码器104进行无损压缩,并且因为未考虑到像素值可以在容许误差内偏移的优点,所以可以认为压缩率将降低。另一方面,当使δ变大时,第二像素值的位深度变为大于输入像素值的位深度,并且这引起数据量的增加、编码时的内存使用量的增加等。在本实施例中,在图9中所示的容许误差的表格中,在圆圈未包围的容许误差之中,δ被设置为最小值(即,1)。当以这种方式进行设置时,第二像素值的位深度必定小于输入像素值的位深度。换言之,第二像素值的色调数小于视差图像的像素值的色调数。由此,能够进行如下编码:减少视差图像的数据量,并且利用如下的有利情况,即像素值可以被第一编码器104偏移,只要偏移在容许误差之内即可。
下面,利用图10B,说明在第三实施例中在设置单元106中实现像素值变换的方法的基本思路,所述像素值变换使得当第二像素值m被改变δ时,解码像素值n'的偏移落在容许误差之内。图10B是仅保留与图10A的n=1及n=4相对应的部分用于说明的图。
基本上,只需要进行满足以下事项的变换:
-变换规则1:“在n的各像素值的容许误差内,分配2δ+1个或更多m的量化代表值,并且将各像素值n,变换为在容许误差内的m的量化代表值的中心的值”。在此,严格来讲,“在容许误差内的m的量化代表值的中心的值”是“在容许误差内上下分别存在δ个或更多量化代表值的值”。在图10B的示例中,如虚线1001、1002及1003所示,针对n=4的容许范围而分配3(即,2δ+1)个量化代表值,并且,可以将n=4变换为与虚线1001相对应的值,该虚线1001是3个量化代表值的中心。变换规则1是足以达到目的的条件,但是为了更高效地变换:
-变换规则2:“在像素值的有效区域的上限(下限)被包括在容许误差内的情况下,在n的各像素值的容许误差内,分配δ+1个或更多m的量化代表值,并且将各像素值n,变换为在容许误差内的m的量化代表值中的最小的值(最大的值)”可以被执行。请注意,严格来讲,“将各像素值n,变换为在容许误差内的m的量化代表值中的最小的值(最大的值)”是在上面(下面)存在δ个或更多量化代表值的值。例如,在图10B的n=1的示例中,容许误差范围包括像素值的有效区域的下限,因而,在容许误差内,分配2(即,δ+1)个量化代表值,并且将n=1变换为与虚线1004相对应的量化代表值,该虚线1004的值是这两个量化代表值之中最小的。以这种方式,即使m的像素值偏移+δ,该像素值也能够被保证落在n的容许误差之内,如虚线1005所示。另外,因为n在容许误差内包括像素值的有效区域的下限,因此,即使未特别地考虑-δ方向上的偏移,也能够保证n落在容许误差之内。在该示例中,说明了像素值的有效区域的下限被包括在容许误差内的情况,但是,在上限被包括在容许误差内的情况下,也能够应用相同的思路。此外,
-变换规则3:“在像素值的有效区域的上限和下限均被包括在容许误差内的情况下,在容许误差内分配一个或更多量化代表值,并且将各像素值n,变换为容许误差内的m的量化代表值中的任何值”可以被执行,但是因为这种情形的发生非常罕见,所以下面省略详细的说明。
为了实现满足上述变换规则的像素值(逆)变换,在第三实施例中,根据图11的流程,来处置用于设定设置单元106的像素值变换信息的处理。下面,给出图11的各处理的说明,从而表示图12A-12C中的示例。
在步骤S1101中,设置单元106在各像素值的容许范围内,设置可以分配多少m的量化代表值。在图12A中,例示了与图10A所示的容许范围的曲线图相对应的像素值分数的示例。通过前述的变换规则,在初始状态下,针对像素值分数,分配3(即,2δ+1)或2(即,δ+1)。
在步骤S1102中,设置单元106确定是否所有的像素值分数都是0。在该确定为是(YES)的情况下,能够确定进行了满足变换规则的“m的量化代表值的分配”。
在步骤S1103中,设置单元106获得各像素值的代表值分数。代表值分数是如下的值,其表示关于n的哪个像素值要分配m的量化代表值的优先级。在本实施例的示例中,各像素值的代表值分数使用“在各自的容许范围内包括该像素值的像素值的像素值分数之和”。这一点反映了如下的思路,即不妨针对代表值分数,选择“被包括在尽可能多的像素值的容许范围内的值,以及有必要分配许多量化代表值的区域”。在图12A中,例示了代表值分数的具体示例。例如,n的像素值“3”被包括在像素值“2-5”的容许误差内。因此,作为像素值“2-5”的像素值分数之和的“11”成为代表值分数。
在步骤S1104中,设置单元106将m的量化代表值,分配给代表值分数是最大值的n的像素值。如图12B的虚线1201所示,针对n的像素值“3”分配m的量化代表值。请注意,当作为在代表值分数是最大值的有多个的情况下的优先级、进行到使像素值分数的总和减少最多的像素值的分配时,可以认为,因为能够较早地满足步骤S1102的确定条件,所以这种做法是有利的。另外,作为下一优先级顺序,当代表值尚未被分配的像素值被优先分配时,因为能够防止许多代表值被集中地分配于一处,所以这种做法是有利的。在尽管如此、优先级也不被唯一地确定的情况下,像素值最小的一者可以被优先分配。
再一次地,在步骤S1101中,设置单元106计算像素值分数。在图12B的示例中,由于代表值分配,n的像素值2-5的像素值分数各自被减小1。
再一次地,在步骤S1102中,设置单元106更新代表值分数。在图12B的示例中,示出了如下的示例,即伴随着像素值分数的更新,代表值分数被更新。
设置单元106重复上述的从步骤S1101到步骤S1104的处理,直到在步骤S1102确定所有的像素值分数都是0为止。结果,如图12C所示,针对n的像素值0至6分配m的量化代表值,并且以从最小到最大的顺序,针对m的像素值0至6关联这些n的像素值的代表值。参见图12C,能够确认,针对n的各像素值的容许范围,分配了3(即,2δ+1)或2(即,δ+1)个量化代表值。换言之,能够确认,能够分配满足变换规则1及2的条件的量化代表值。
接下来,在步骤S1105中,设置单元106基于在步骤S1104中获得的n和m的关系,来获得图8的h及h-1的像素值变换。对于像素值变换h,如前面在变换规则1及2中说明的,只需要从在n的各像素值的容许误差内的m的量化代表值,变换为在上下两方(在n的容许误差包括像素值的上限或下限的情况下的这两方中的适当的一方)均存在δ个或更多量化代表值的值。另外,在存在满足这些条件的多个候选的情况下,可以变换为被分配到最接近于n自身的像素值的位置的量化代表值。在图13A中,例示了定义像素值变换h的表格,该表格是由在图12C中获得的m的量化代表值的分配而获得的。此外,对于像素值变换h-1,能够从图12C中,唯一地获得与m的各像素值相对应的n。在图13B中,例示了这一情况的示例。
以上是对第三实施例中的设置单元106的说明。编码装置101之外的部分的操作与在第一实施例中类似,只是像素值变换信息被从函数改变为表格。此外,与在第一实施例中类似地,可以由解码装置301来进行输出的编码数据的解码。
此外,在本实施例中,第二像素值的量化代表值被分配给输入像素值的有效区域的整数值,但是也可以分配给小数值。在这样的情况下,如果进行变换以满足上述的变换规则,则能够利用根据像素值的精度保证来实现编码。此外,对于从满足变换规则的变换中获得更合适的变换的方法,如在本实施例中说明的,可以应用如下的思路,即获得代表值分数,并且从具有最高代表值分数的项目起,优先分配代表值。此外,在由容许误差信息定义的各像素值的容许误差是小数的情况下,本实施例的思路同样是适用的。
以上是对第三实施例的说明。凭借上述的结构,与在第一实施例中类似地,能够实现如下的编码装置,该编码装置能够进行编码,同时将由于输入图像的各像素的压缩而出现的误差的最大值,抑制到容许误差信息定义的容许误差或更小。另外,作为第三实施例特有的效果,在以指定根据像素值的特定容许误差的表格的形式、提供容许误差信息的情况下,能够应用编码装置。
另外,在上述的实施例中,第一编码器104例示了根据JPEG-LS(JPEG-LS的近无损模式)的编码的示例。然而,只需要用于控制如下编码单元的手段(编码控制单元),所述编码单元对图像进行编码,同时保证在编码前后的像素值的偏移落在常数δ之内,并且,编码单元本身不一定限定于JPEG-LS。
[第四实施例]
在第一实施例中,C被定义为考虑与g1(m)的连接的合适的常数,但是,在此说明计算更合适的C的方法。在此,为了简便起见,假定在式2中,P及n-A始终是正的。如前所述,在本实施例中,作为基本的方法,(i)设置单元106将深度图像的各像素n(越小越远),变换为色调减少的距离表达m(越大越远),并且,(ii)第一编码器104进行近无损编码。(iii)在解码时,第二解码器305进行包括误差的像素值m'的逆变换,并且获得解码像素值n'。此时出现的距离误差ε(n)由下面的式(8)定义:
ε(n)=|f(n')-f(n)|...(8)
推导如下条件:在色调减少的距离获取函数g0(m)小于预定距离的精度过剩部分中,满足ε(n)≦e(即,在第一实施例中描述的条件2),所述的色调减少的距离获取函数g0(m)将色调减少的距离表达m变换为距离。以下,例示与上面的(i)-(iii)相对应的具体处理。以下内容对应于图15,并且,针对出现的距离的误差是最大值的情况而例示了相应的状态。(i)像素值n到色调减少的表达m的变换
m0=k(n)=g0 -1(f(n))
m=ROUND(m0)...(9)
(在此,ROUND(-)进行四舍五入)
通过舍入为整数,产生按减少的色调表达的最大误差。
(ii)通过JPEG-LS对在(i)中获得的色调减少的图像进行编码。通过编码,在色调减少的表达中产生δ的最大误差。此时的值被设置为m'。
(iii)通过逆变换,获得解码像素值n'。
n'=ROUND(k-1(m'))...(10)
通过舍入为整数,在原始表达中产生0.5的最大误差。
为了通过上述处理,在(i)和(iii)中分别出现0.5的最大舍入误差,并且在(ii)中,由于编码而出现δ的最大误差。考虑到这些误差,为了通过使色调数最小化来削减编码数据量,只需使e(n)=E,如图15所示,并且最优的是g0(m)满足下面的式(12)。
这一点的基本考虑是不依赖于f(n)的像素值变换以及在由式(2)提供f(n)的情况下的g0(-)的解,并且下面例示了其处置。当通过式(2)展开式(12)的f(-)时,获得下面的式(13)。
式(13)能够被变形如下:
当上述的递推公式被求解时,获得下面的式(14)。
其中,g0是设备能够输出的最小距离。对于α及β,
的解使得
接下来,定义精度过剩部分(d<dt))。由下面的式(15)来定义zt
|(f-1)'(d)|=|(g0 -1)'(d)|...(15)
这是通过变换而减少了色调数的范围,并且dt是g(m)的斜率与f(n)匹配的距离。这里,在n>f-1(dt)的情况下进行像素值变换。请注意,(-)'表示d的微分。另外,为了维持变换之后的像素值与距离之间的相应的连续性,只需进行如下设置:
C=nt+ROUND(k(nt))+1
请注意,在此,能够利用下面的式(16)重新定义k(n):
k(n)=C-g-1(f(n))...(16)。
[第五实施例]
在第一实施例中,在设置单元106中,计算变换,以满足由获取单元105获取的容许误差,并且设置了该结果。在本实施例中,例示了如下示例:预先获得2种类型的像素值变换信息,并且在设置单元106中,根据容许误差信息来切换所述2种类型的像素值变换信息。
本实施例中的设备结构和处理流程与第一实施例类似,并且可以由图1及图2来表示。然而,因为处理的详情不同,所以补充详情的说明。
首先,在本实施例中,在获取单元105中,摄像模式被接收作为间接指定容许误差的信息。在图16中,例示了摄像模式的示例。在此,假设人体检测模式和姿势识别模式被指定为摄像模式。对于摄像模式足够的精度e,被假定为在人体检测模式下为100[mm],在姿势识别模式下为30[mm]。这是因为,可以认为在将距离信息用于人体检测的情况下,将存在使得能够分离人和背景以及人的相互交叠的足够的检测精度。此外,这是因为在姿势识别中,可以认为如果主要关节间的位置关系能够被理解,则姿势估计精度即是足够的。此外,上述的参数e与在图5B中图示的参数e相同。
接下来,在设置单元106中,根据由容许误差信息获取单元105获取的摄像模式,来选择像素值变换信息。对于像素值变换信息,变换表分别根据上述2个摄像模式而被预先计算出,被存储在存储单元(未示出)中,并且根据摄像模式读出这两个变换表中的任一者。请注意,关于针对各参数e的变换信息的计算,可以通过在第一实施例中获得变换信息的方法,来获得变换信息。在第一实施例中,描述了变换公式的计算方法;很容易由变换公式来获得变换表。
在第二编码器107中,发送由设置单元106设置的变换表的信息。请注意,如果相应的解码装置具有用于根据摄像模式来存储逆变换表的存储单元,则变换表的编码不是必要的,并且只需对用于区别摄像模式的信息进行编码。因为在本实施例的示例中,存在2个摄像模式,因此,可以用1位的数据对摄像模式进行编码。
与在第一实施例中类似地,可以由图3的解码装置对由在本实施例中说明的编码装置输出的编码数据进行解码。请注意,如前所述,在第二解码器305中,预先计算出的两个逆变换表中的任一者可以根据摄像模式而被选择,并且根据摄像模式而从存储单元(未示出)中被读取。
以上是对本实施例的说明。通过上述结构,与在第一实施例中类似地,能够实现如下编码装置:能够对图像进行编码,同时将由于输入图像的各像素的压缩而出现的误差的最大值,抑制到容许误差信息定义的容许误差或更小。作为本实施例特有的效果,存在如下效果:因为像素值变换信息被预先计算,并且根据摄像模式而被选择性地切换,所以像素值变换信息计算处理变为不必要的,并且处理负荷变得更小。
其他实施例
另外,可以通过读出并执行记录在存储介质(也可更完整地称为“非暂时性计算机可读存储介质”)上的计算机可执行指令(例如,一个或更多个程序)以执行上述实施例中的一个或更多个的功能、并且/或者包括用于执行上述实施例中的一个或更多个的功能的一个或更多个电路(例如,专用集成电路(ASIC))的系统或装置的计算机,来实现本发明的实施例,并且,可以利用通过由系统或装置的计算机例如读出并执行来自存储介质的计算机可执行指令以执行上述实施例中的一个或更多个的功能、并且/或者控制一个或更多个电路执行上述实施例中的一个或更多个的功能的方法,来实现本发明的实施例。计算机可以包括一个或更多个处理器(例如,中央处理单元(CPU),微处理单元(MPU)),并且可以包括分开的计算机或分开的处理器的网络,以读出并执行计算机可执行指令。计算机可执行指令可以例如从网络或存储介质被提供给计算机。存储介质可以包括例如硬盘、随机存取存储器(RAM)、只读存储器(ROM)、分布式计算系统的存储器、光盘(诸如压缩光盘(CD)、数字通用光盘(DVD)或蓝光光盘(BD)TM)、闪存设备以及存储卡等中的一个或更多个。
本发明的实施例还可以通过如下的方法来实现,即,通过网络或者各种存储介质将执行上述实施例的功能的软件(程序)提供给系统或装置,该系统或装置的计算机或是中央处理单元(CPU)、微处理单元(MPU)读出并执行程序的方法。
虽然参照示例性实施例对本发明进行了描述,但是应当理解,本发明并不限定于所公开的示例性实施例。所附权利要求的范围应当被赋予最宽的解释,以便涵盖所有这些变型例以及等同的结构和功能。

Claims (9)

1.一种编码装置,其可操作以根据限定与像素值相对应的容许误差的容许误差信息来对图像进行编码,该编码装置包括:
设置单元,其根据所述容许误差信息来设置用于将作为编码目标的图像的像素值变换为第二像素值的像素值变换信息;
图像变换单元,其基于所述像素值变换信息来变换作为编码目标的图像的各像素值,以生成由变换后的像素构成的第二图像;
第一编码控制单元,其利用编码单元对所述第二图像进行编码,所述编码单元用于进行编码使得编码前的像素值与编码后的像素值之差在预先设置的常数δ之内;以及
第二编码控制单元,其基于所述像素值变换信息来生成用于将所述第二图像的像素值变换为与输入图像的像素值相关的值的像素值逆变换信息,并且对所述像素值逆变换信息进行编码,
其中,所述设置单元将,用于进行变换使得在所述第二图像的像素值被偏移δ的情况下通过应用由所述像素值变换信息确定的逆变换而获取的解码像素值与作为编码目标的所述图像的像素值之间的偏移落在容许误差之内的信息,设置为所述像素值变换信息。
2.根据权利要求1所述的编码装置,其中,所述第二编码控制单元生成的用来进行编码的信息,是用于将所述第二图像中的像素值变换为与作为所述编码目标的图像相对应的像素值的信息。
3.根据权利要求1的编码装置,其中,所述第二编码控制单元生成的用来进行编码的信息,是用于将所述第二图像中的像素值变换为物理量的信息。
4.根据权利要求1所述的编码装置,其中,所述第一编码控制单元使用的所述编码单元是根据JPEG-LS进行编码的编码器。
5.根据权利要求1所述的编码装置,其中,所述设置单元根据所述容许误差信息,间接地限定与作为编码目标的图像的像素值相对应的容许误差。
6.根据权利要求1所述的编码装置,其中,作为所述编码目标的图像是通过视差来表达摄像装置与被摄体之间的距离的视差图像,并且所述容许误差信息是以将按视差表达的常数误差和按距离表达的常数误差组合的形式指定容许误差的信息。
7.根据权利要求1所述的编码装置,所述编码装置还包括:
关注区域指定单元,其指定图像中的关注区域;以及
容许误差信息计算单元,其计算所述容许误差信息,使得所述关注区域中的误差变为小于所述关注区域之外的区域的误差。
8.根据权利要求1所述的编码装置,其中,
所述设置单元包括分配单元,该分配单元针对作为编码目标的图像的各像素值进行如下分配:
在像素值有效范围的上限和下限均未被包括在容许误差中的情况下,在容许误差内分配2δ+1个或更多个量化代表值,
在像素值有效范围的上限和下限中的任一者被包括在容许误差中的情况下,在容许误差内分配δ+1个或更多个量化代表值,并且
在像素值有效范围的上限和下限均被包括在容许误差中的情况下,在容许误差内分配1个或更多个量化代表值,并且
其中,基于所分配的量化代表值计算所述像素值变换信息。
9.一种编码装置的控制方法,该编码装置可操作以根据限定与像素值相对应的容许误差的容许误差信息,来对图像进行编码,该控制方法包括以下步骤:
根据所述容许误差信息来设置用于将作为编码目标的图像的像素值变换为第二像素值的像素值变换信息;
基于所述像素值变换信息,来变换作为编码目标的图像的各像素值,以生成由变换后的像素构成的第二图像;
利用编码单元对所述第二图像进行编码,所述编码单元用于进行编码使得编码前的像素值与编码后的像素值之差在预先设置的常数δ之内;以及
基于所述像素值变换信息来生成用于将所述第二图像的像素值变换为与输入图像的像素值相关的值的像素值逆变换信息,并且利用无损编码器对所述像素值逆变换信息进行编码,
其中,将用于进行变换使得在所述第二图像的像素值被偏移δ的情况下通过应用由所述像素值变换信息确定的逆变换而获取的解码像素值与作为编码目标的所述图像的像素值之间的偏移落在容许误差之内的信息,设置为所述像素值变换信息。
CN201510642273.0A 2014-10-07 2015-09-30 编码装置及其控制方法 Active CN105491364B (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2014-206674 2014-10-07
JP2014206674 2014-10-07
JP2015-148849 2015-07-28
JP2015148849A JP6529374B2 (ja) 2014-10-07 2015-07-28 符号化装置及びその制御方法

Publications (2)

Publication Number Publication Date
CN105491364A CN105491364A (zh) 2016-04-13
CN105491364B true CN105491364B (zh) 2017-06-20

Family

ID=54150281

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510642273.0A Active CN105491364B (zh) 2014-10-07 2015-09-30 编码装置及其控制方法

Country Status (3)

Country Link
US (1) US9602842B2 (zh)
EP (1) EP3007448A1 (zh)
CN (1) CN105491364B (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11051039B2 (en) 2017-06-02 2021-06-29 Ostendo Technologies, Inc. Methods for full parallax light field compression
US10931956B2 (en) 2018-04-12 2021-02-23 Ostendo Technologies, Inc. Methods for MR-DIBR disparity map merging and disparity threshold determination
US11172222B2 (en) 2018-06-26 2021-11-09 Ostendo Technologies, Inc. Random access in encoded full parallax light field images
JP7282532B2 (ja) 2019-01-24 2023-05-29 キヤノン株式会社 情報処理装置、情報処理方法、データ構造、及びプログラム
JP7278795B2 (ja) 2019-02-21 2023-05-22 キヤノン株式会社 画像処理装置、画像処理方法及びプログラム
WO2020196680A1 (ja) * 2019-03-25 2020-10-01 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 三次元データ符号化方法、三次元データ復号方法、三次元データ符号化装置、及び三次元データ復号装置
JP2020190438A (ja) * 2019-05-20 2020-11-26 株式会社リコー 計測装置および計測システム
CN110769261A (zh) * 2019-06-28 2020-02-07 叠境数字科技(上海)有限公司 一种三维动态序列模型的压缩编码方法
JP7479925B2 (ja) * 2020-05-14 2024-05-09 キヤノン株式会社 画像処理システム、画像処理方法、及びプログラム

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1183769C (zh) * 1996-05-28 2005-01-05 松下电器产业株式会社 图像预测编码/解码装置和方法以及记录媒体
US6115420A (en) * 1997-03-14 2000-09-05 Microsoft Corporation Digital video signal encoder and encoding method
KR101885258B1 (ko) * 2010-05-14 2018-08-06 삼성전자주식회사 비디오 신호의 부호화 방법과 그 장치, 및 비디오 복호화 방법과 그 장치
JP5281624B2 (ja) * 2010-09-29 2013-09-04 日本電信電話株式会社 画像符号化方法,画像復号方法,画像符号化装置,画像復号装置およびそれらのプログラム
JPWO2012128241A1 (ja) 2011-03-18 2014-07-24 ソニー株式会社 画像処理装置、画像処理方法、及び、プログラム
US8768073B2 (en) * 2011-07-05 2014-07-01 Texas Instruments Incorporated Method, system and computer program product for coding a region of interest within an image of multiple views
CN103067716B (zh) * 2013-01-10 2016-06-29 华为技术有限公司 深度图像的编解码方法和编解码装置
CN103974063A (zh) * 2013-01-28 2014-08-06 乐金电子(中国)研究开发中心有限公司 一种深度模型的编解码方法及视频编解码器
CN103595991B (zh) * 2013-11-04 2015-10-28 天津大学 深度视频编码的像素级预测方法

Also Published As

Publication number Publication date
US20160100198A1 (en) 2016-04-07
EP3007448A1 (en) 2016-04-13
US9602842B2 (en) 2017-03-21
CN105491364A (zh) 2016-04-13

Similar Documents

Publication Publication Date Title
CN105491364B (zh) 编码装置及其控制方法
CN110996098B (zh) 处理点云数据的方法和装置
US11166048B2 (en) Method and apparatus for video coding
EP3861755B1 (en) Techniques and apparatus for weighted-median prediction for point-cloud attribute coding
CN113557745B (zh) 点云几何结构填充
US11509933B2 (en) Method, an apparatus and a computer program product for volumetric video
ES2927560T3 (es) Aparato de decodificación de vídeo, aparato de codificación de vídeo, medio de almacenamiento y método para la trasmisión
JP4999854B2 (ja) 画像符号化方法及び復号方法、それらの装置、及びそれらのプログラム並びにプログラムを記録した記憶媒体
Wu et al. Lossless compression of JPEG coded photo collections
CN114467302A (zh) 针对点云压缩的基于块的预测编码
CN113574567A (zh) 点云压缩的方法和装置
US20150271522A1 (en) Method, program and apparatus for reducing data size of a plurality of images containing mutually similar information, and data structure representing a plurality of images containing mutually similar information
CN104081780A (zh) 图像处理装置和图像处理方法
JP6232075B2 (ja) 映像符号化装置及び方法、映像復号装置及び方法、及び、それらのプログラム
US20220180567A1 (en) Method and apparatus for point cloud coding
US20140184739A1 (en) Foreground extraction method for stereo video
US12063389B2 (en) 3D prediction method for video coding
JP6614822B2 (ja) 画像符号化装置及びその制御方法及びプログラム及び記憶媒体
WO2012172634A1 (ja) 画像符号化装置、画像復号化装置、方法およびプログラム
CN104994365A (zh) 一种获取非关键帧深度图像的方法以及2d视频立体化方法
WO2019185983A1 (en) A method, an apparatus and a computer program product for encoding and decoding digital volumetric video
WO2019211519A1 (en) A method and an apparatus for volumetric video encoding and decoding
KR101897665B1 (ko) 부호화 장치, 그 제어 방법, 프로그램, 컴퓨터 판독 가능한 기록매체
JP2013247653A (ja) 画像処理装置および画像処理方法
JP2017098789A (ja) 画像符号化装置及びその制御方法、並びにプログラム及び記憶媒体

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant