本发明涉及一种用于以可忽略的信息损失来隐写处理和压缩图像数据的方法以及相应的设备,其中,所述图像数据包括噪声和信息。该方法包括获取图像数据并准备所获取的图像数据的步骤,其中,所述准备步骤包括以下步骤:确定输入噪声模型和适于反映由用于捕获所述图像数据的源图像传感器创建的噪声的相应参数,通过以可忽略的信息损失去除来自所获取的图像数据的噪声,例如以产生噪声减少的图像数据,该方法还包括用于存储和/或发送图像数据的步骤。
背景技术:
每年产生的数字图像和视频的数量一直在加速增长。几十年来,压缩在实现有效存储和分发这些图像方面一直发挥着至关重要的作用。通常,该技术已被分为两个领域:无损压缩以较低的压缩比(通常为2:1)为代价,保持了原图的完整、逐位相同的副本,而有损图像压缩以高压缩比(通常为10:1的数量级),产生视觉上与原图相似但不相同的图像。然而,有损压缩可能会生成“伪影”,即不是原图一部分的图像特征(例如,块状伪影、后代振铃、混叠、模糊……),并引入偏差。现代算法,例如jpeg2000或h265等,试图使这些伪影对人眼几乎不可见,并且可以表示为“视觉无损”。然而,此类算法主要是针对将数据分发给最终用户而设计的,并且使用此类算法压缩的后处理图像可能会暴露人眼以前看不见的伪影,例如在jpeg图像“抬起阴影”时观察到的。此外,重新压缩已经由此类算法压缩的图像可能会导致这两种算法之间的相互作用以及产生可见伪影。
在专业和技术应用中,其中图像被认为是有价值的数据,用户一直对使用有损压缩持谨慎态度,因为这可能会导致无法预料的后果或在数据中引入偏差,从而导致计量上不准确。随着越来越多地使用机器学习方法,确保人类视觉系统看不到压缩损失变得不那么重要,并且图像质量变得更关键。特别是在关键应用中,例如医学诊断、自动驾驶汽车或基础设施监控,以客观的方式保持图像质量至关重要。
为了满足该需求,申请人在先前的工作中开发了一种压缩技术,其中可以根据信息内容限制信息损失,这是与人类视觉系统无关的客观度量,例如欧洲专利申请ep3185555中所公开的。其中提出的技术实现了5:1到10:1的压缩比,同时从计量学的角度对无伪影提供了一些严格的保证。尽管该压缩技术已在许多情况下证明令人满意,但在长期使用过程中发现了一些不便之处。特别是,某些特定的分析技术产生的结果与通过分析未压缩数据所获得的结果在统计上显着不同。而且,利用这种压缩技术,不可能预先推断出压缩数据适合于哪种分析,以及不适用于哪种分析。例如,压缩数据可能适用于所有当前的分析技术,但是一旦技术变得更加先进,将来可能会变得不足。对于用户来说,这意味着使用现有的压缩技术时,存在没有对压缩带来的弊端的清晰、简单的指导以及将其应用于特定数据集的适用性的情况。
技术实现要素:
发明目的
本发明的目的是克服上述困难,并提供无损或至少部分无损的图像压缩,从而允许向用户提供强有力的保证,即经过处理的,且可选地经过压缩和解压缩的图像数据给出可靠的结果,即当通过任何算法(当前或将来)进行处理或分析时,在统计上等同于使用原始未经压缩的传感器数据获得的图像数据,同时允许相对较高的压缩比,通常高达10:1。
本发明的又一个目的是,在不满足某些条件的情况下,确保将经过处理的、且可能经过压缩和解压缩的图像与由特定的、真实的或理想的传感器模型产生的未处理的原始图像仅能困难地进行区分。
本发明的再一个目的是,允许将几种类型的有用信息嵌入到经过处理的图像中,同时保证经过处理的图像仍可以用在可以使用原始图像的任何处理应用中,并且给出在统计上难以区分或接近于难以区分的结果。
本发明的还一个目的是,通过允许用户使用该技术而无需对其工作流程或其现有系统进行重大改动,例如通过允许他们继续使用“容器”文件或其选项,例如tiff、dng、png、dicom、jp2等,来允许用户从该新的压缩技术中受益。
根据本发明的解决方案
为此,本发明提出一种用于以可忽略的信息损失来隐写处理和压缩图像数据的方法,其特征在于权利要求1中列举的特征,并且该方法允许实现上述目的。特别地,根据本发明的方法通过以下事实而与众不同:准备所获取的图像数据的步骤还包括以下步骤:确定目标噪声模型和适于反映由真实或理想目标图像传感器产生的噪声的相应参数的步骤,根据所述目标噪声模型生成伪噪声,以隐写方式将所生成的伪噪声添加到所述减少噪声的图像数据中,例如以产生与利用所述目标图像传感器获取的图像数据相比在统计上等效的伪噪声图像数据,并且通过以下事实而与众不同:存储和/或发送步骤包括存储和/或发送所述伪噪声图像数据,例如以允许基于所述伪噪声图像数据和目标噪声模型的参数来复制和/或减去伪噪声。
根据根据本发明的方法的不同实施例,所述目标噪声模型及其参数或者是恒定的,而且通常是可用的,例如,在因特网站点或在该方法的给定应用中或由其他手段使用的特定文档上,和/或与伪噪声图像数据一起存储和/或发送。
在根据本发明的方法的优选实施例中,准备所获取的图像数据的步骤还包括,提供至少一个隐写密钥,以及通过使用所述隐写密钥来存储和/或发送所述目标噪声模型的参数,所述目标噪声模型的参数用于生成伪噪声以产生所述伪噪声图像数据。优选地,这些参数被嵌入到所述伪噪声图像数据中。在甚至更优选的实施例中,所述隐写密钥至少包括用于伪随机数发生器的种子。
在根据本发明的方法的其他优选实施例中,将用于生成伪噪声的所述噪声模型的参数嵌入到所述伪噪声图像数据中的步骤包括加密所述参数。
在根据本发明的方法的一些实施例中,借助于伪随机数发生器和相关联的(多个)种子值来生成伪噪声。对于那些实施例,所述(多个)种子值可以用作隐写密钥之一。
在根据本发明的方法的优选实施例中,可以通过泊松-高斯模型或通过简化模型来实现所述噪声模型,该噪声模型适于反映由用于捕获所述图像数据的所述源图像传感器创建的噪声和/或模拟期望的目标图像传感器的噪声。
在根据本发明的方法的实施例中,可以通过量化或去噪技术来实现从所获取的图像数据中去除噪声。
在根据本发明的方法的更优选实施例中,准备步骤还包括将其他数据,例如图像的元数据、传感器的校准数据和/或对压缩和/或增强图像数据的安全性、保险性和有效性有用的数据,嵌入所述伪噪声图像数据的步骤。包括所述噪声模型的参数以及可选地所述其他数据的伪噪声图像数据可以原样存储和/或发送或嵌入任何已知文件格式的容器文件中,例如,tiff、jp2、dng或png格式的容器文件。
在根据本发明的方法的另一优选实施例中,该方法还包括压缩所述伪噪声图像数据的步骤,所述伪噪声图像数据由准备步骤产生,并且可选地包括所述目标噪声模型的参数,无论是原样还是作为容器文件的一部分。
本发明还提出了一种用于解压缩图像数据而不会损失通过使用上述方法压缩的图像数据的信息的方法。
本发明还涉及配备有存储在适于实现这些方法的计算机可读介质中的计算机程序装置的设备,特别是适于实现这些方法的微处理器、现场可编程门阵列、图像传感器、显微镜、卫星、移动电话、平板电脑和/或个人计算机。
本发明的其他特征和优点在从属权利要求中以及在本发明下面公开的说明书中参照附图更详细地描述。
附图说明
附图示例性且示意性地示出了本发明的原理以及几个实施例。
图1示意性地示出了本发明底层的隐写模型。
图2a、2b和2c示意性地示出了根据本发明的方法的主要步骤。
图3示意性地示出了根据本发明的方法的准备步骤的噪声替代步骤。
图4示意性地示出了根据本发明的方法的压缩步骤。
具体实施方式
下面,将参考上述附图详细描述本发明。
通常,本发明使用从密码术和隐写术得到的技术,以确保经过压缩和解压缩的图像与源自特定(真实或理想)传感器模型的原始“未加工”图像不能区分开,尤其是仅可以困难地区分开,除非用户具有特定的加密密钥(在此也称为隐写密钥)。在这种情况下,从统计学意义上讲,任何无法访问密钥的后处理算法都必须产生与未加工传感器数据相同的结果。在下文中,除了另外明确指出时,否则术语“图像”、“视频”和“数据”被同义使用。
图1示出了底层隐写模型:根据本发明的方法的用户101,被任意地称为爱丽丝,其任务是获取给定对象100的图像。她可以通过以下方式实现这一点:选择图像传感器sa105(下文也特指为源传感器sa)或图像传感器sb115(下文也特指为目标传感器sb),分别产生未加工图像集a120或b140。另一用户102,任意地称为鲍勃,将以各种方式处理图像。除其他事项外,他可以对对象执行一些分析145,尝试通过研究噪声150来确定哪个传感器获取了图像,或者应用无损压缩155。如果爱丽丝递给他图像集a120,则鲍勃在分析145对象时将找到结果a165,并且传感器噪声确定150将产生传感器sa作为输出170。当鲍勃接到图像集b140时,他将相应地从对象分析145中接收结果b190,并且将传感器sb作为传感器噪声确定150的输出185。当鲍勃将无损压缩应用于图像集b140时,他将获得约2:1的压缩比180。注意,假设图像集a和b在相同条件下示出相同对象100。然而,由于两个图像集中的各自噪声会影响对象分析145的结果,因此结果a165和b190可能在统计上水平相差很大。然而,爱丽丝可以选择将隐写处理125应用于图像集a120(可选地包括压缩和解压缩)以获得经过处理的图像集d130。在这样做时,她可以指定经过处理的图像集d130模仿作为目标传感器110的传感器sb的噪声模型。然后爱丽丝可以自由选择135她将两个图像集b140或d130中的哪一个发送给鲍勃。没有相应的隐写密钥160,鲍勃将无法在图像集b和d之间进行区分,特别地,如果事先未获悉,他将无法分别检测到图像集b和d中的一个,尤其是图像集b或d中的哪一个,已经过隐写处理/压缩,无论他应用什么处理。更精确地,当在两个图像集中的任何一个上执行无损压缩155、传感器噪声确定150和对象分析145时,他将在统计波动范围内获得对应于图像集b140的结果180、185、190。这为(经过处理的)压缩数据相对于(未经处理的)未加工数据的质量和不可区分性提供了有力的保证。只有在鲍勃拥有先前用于图像集a的隐写处理以产生图像集d120的正确的隐写密钥160的情况下,他才能够区分图像集d130和图像集b140。例如,当应用无损压缩155时,他可以使用密钥160以执行有效压缩,压缩比175为大约10:1,而在不知道密钥160的情况下,他将仍然只能获得大约2:1的低压缩比180。
这里要注意,产生图像集a120的源传感器sa105不一定与用作模型以拍摄图像集b140的目标传感器sb115相同。这是因为在实际应用中,提供已经针对物理传感器的各种缺陷(例如,像素不均匀性、固定图案噪声等)校正的输出数据是有利的,从而传感器sb140可以是“理想”传感器。重要的事实是,图像集d130与来自具有明确定义和指定属性的(真实或理想)传感器一致。这允许确保将在图像集d130上进行的任何后处理都将给出可靠的结果,就像图像集d130来自目标传感器sb115一样。
将理想模型用于目标传感器sb的另一个优点是,可以将多个真实传感器sa-1,sa-2,…,sa-n(每个具有不同属性)映射到唯一的理想传感器sb。这对于机器学习方法尤其重要,其中,例如,与来自另一传感器sa-2的图像一起使用时,对来自传感器sa-1的图像进行训练的神经网络不一定会给出可靠的推断结果。在许多实际情况下,有必要使用通过传感器sa-1获取的历史数据来训练神经网络,并最终用更加新的模型sa-2代替传感器sa-1,因为传感器sa-1可能会停止使用,可能竞争力会变低,或者因为最终用户宁愿不“锁定”到一个单一制造商。对来自不同传感器sa-1…sa-n的数据进行映射,使得其与来自理想传感器sb的数据一致,因此在这些情况下会有所帮助。
在本发明的一个实施例中,目标传感器sb的特征在于属性集,包括其量子效率、读出噪声、黑电平和增益。在另一实施例中,假定目标传感器sb形成理想设备,该理想设备输出由每个像素吸收的光子的确切数量。还要注意的是,与所有物理系统及其固有缺陷一样,由于对收集到的统计数据的实际限制,以及物理源传感器sa中的有限缺陷或不稳定性,可以以近似的方式进行从源传感器sa到理想模型目标传感器sb的数据映射。这不脱离本发明,并且在实践中,这些缺陷对于用户是可接受的,并且可以被精确地指定和限制。
通常,来自目标传感器sb115的数据将不适于以通常大于约2:1的比率180进行无损压缩155。这意味着,如果没有隐写密钥160,鲍勃将无法以更高的比率无损压缩。另一方面,在有密钥160在手的情况下,鲍勃可以以高得多的比率175(通常高达大约10:1)执行数据的无损压缩155。这允许本发明可以同时向用户提供他可以使用的数据,就像他将使用未加工数据一样,但是他可以在其上以通常高达10:1的因子应用无损压缩。
这里描述的本发明具有许多其他优点,这源于其与隐写术的紧密结合。特别地,经过处理的并且可能被压缩并且随后被解压缩的图像集d(其通常比通过根据本发明的方法压缩的相应数据大10倍)有利地被用于嵌入有用信息,同时保证数据集d仍可以用于可以使用未加工图像集b的任何处理应用中,并且从中得出统计上无法区分的结果。在优选实施例中,这允许将其他信息以及伪噪声参数嵌入最终处理的图像中,例如:
-图像元数据,例如拍摄该图像元数据的时间、拍摄该图像元数据所使用的系统、拍摄该图像元数据所使用的相机系统,
-协助压缩的数据,例如拍摄图像的设备的属性、图像大小和二进制布局(例如,条、块等),
-增强图像安全性、完整性和有效性的数据,例如未加工图像数据的哈希值或可证明图像数据真实性、所有权或版权信息的类似物,来自最初采集该数据的设备的数字签名,即使在处理后仍可恢复的水印数据,以及如果丢失或损坏可用于恢复部分图像和元数据的纠错数据。
此外,要使用户能够完全受益于这种新颖的压缩技术,重要的是,他们能够在不对其工作流程或其现有系统进行重大更改的情况下使用该技术,例如,这意味着继续使用他们选择的容器文件,例如已知的像tiff、dng、png、dicom、jp2等的文件格式。
图2a至2c示意性地示出了实现上述特征的根据本发明的方法的优选实施例的主要步骤。在图2a所示的准备步骤235中,准备由源传感器sa205捕获的未加工图像数据210,使得在图像获取期间在源传感器sa205中产生不可预测的噪声,所述噪声(尽管其不可预测的性质)在给定输入噪声模型215之后,被符合来自真实或理想目标传感器sb(可以但不一定与源传感器sa205不同)的目标噪声模型220的伪随机可预测噪声代替240。加密数据222可用于生成伪随机噪声和准备步骤235的其他子步骤。可选地,该准备步骤235还包括子步骤,用于校正245针对传感器缺陷的数据,如上所述嵌入250元数据225或嵌入其他数据230,和/或执行加水印255,使得以这种方式准备的数据可以在以后的阶段被轻松标识,即使只有其一部分可用。该准备操作产生“准备好的未加工”数据,在以下描述以及附图中也表示为“praw”数据260。所述praw数据260适用于诸如如上所述的使用未加工数据的任何应用。可以单独使用该praw数据260,因为与标准未加工数据相反,它包含使其更加实用的必要的元数据。替代地和可选地,可以将praw数据260嵌入任何已知文件格式(例如,tiff、jp2、dng、png等)的容器文件270中,如通常对未加工数据所做的那样。具有praw数据的容器文件与已经能够使用此文件类型的任何应用兼容,但是具有可高度压缩的优点。在容器文件270中,通常还可以存储非图像数据275,其可以包含任何元数据225或其他数据230。这可以用于存储已经直接嵌入到praw数据260中的数据的副本。
在优选实施例中,在所述准备步骤之后并且在图2b中示出的压缩步骤使用隐写/加密数据222来预测伪噪声并且有效地且无损地压缩155praw数据260。所述隐写/加密数据222可以被编码到压缩器本身中、praw文件中和/或由用户给定。隐写/加密数据222也可以是预定的常数或以任何其他方式传送。如果在准备步骤期间嵌入了此类数据,则压缩步骤还能够提取元数据225和其他数据230,并且可选地使用此数据来验证文件的质量、真实性和完整性,和/或应用纠错(如果需要)。然后,压缩步骤创建压缩文件280,其包含允许以无损方式恢复包括所述praw数据260的原始容器文件270的数据。
最后,在所述压缩步骤之后并在图2c中示出的解压缩步骤中,对所述压缩文件280进行解压缩295,例如以再次产生所述praw数据260,尤其是包含所述praw数据260的容器文件270和可选地一些其他非图像数据275,如上所述用于准备步骤的。
容器文件270和压缩文件280可以具有包含许多帧或图像的复杂结构。这些文件的结构以及二进制praw数据260的位置对于压缩步骤中使用的压缩器可能是未知的。在这种情况下,在praw数据260中嵌入的水印255允许压缩器标识和定位该数据,提取任何嵌入的数据,并且使用该数据有效地执行压缩。压缩器和解压缩器可以由用户明确实现和操作,也可以在后台操作,因此文件被透明地压缩和解压缩,例如在通过网络转换时,在磁盘上存储时,在通过总线传输时。验证、完整性检查、真实性、错误校正和/或数据/元数据提取特征可以独立于压缩和/或解压缩来操作。
为了更详细地描述根据本发明的方法,此外应注意,由图像传感器捕获的数字图像通常包含大量的熵,这在很大程度上归因于传感器噪声以及还归因于撞击传感器的光的固有噪声。这种噪声的存在是使图像具有其自然统计特性的重要方面。如上所述,去除该噪声可导致处理算法针对仍包含所述噪声的图像产生不同的结果。然而,噪声的存在强烈限制了使用无损压缩可以实现的数据大小减小。本发明允许以这样的方式处理数字图像,使得可以实现高无损压缩比,同时保持真实的噪声轮廓,其既不在视觉上也不在统计上,例如,经由图像的像素值的直方图,揭示图像已被处理。图像是高度可压缩的事实以不可检测的隐写方式被隐藏在通过根据本发明的方法处理的图像中,并且只能借助隐写/密码学密钥或功能来揭示。
因此,根据本发明的方法通常包括以下步骤,用于准备给定的数字图像以及具有特定设置的数字相机或图像传感器的相应噪声模型。(1)在适当的数学意义上,消除由源图像传感器捕获的图像中的大部分噪声,例如通过量化或去噪。这可以包括传感器特定噪声的校正,例如固定模式噪声或光响应不均匀性。该步骤的结果表示为降噪的图像数据。(2)通过适当地应用具有明确定义的初始条件(例如,整数种子)的伪随机数发生器来生成伪噪声,然后以如下方式将生成的伪噪声添加到降噪的图像数据中,使得所产生的伪噪声图像紧密模仿期望目标噪声模型。所述期望目标噪声模型可以适于模仿获取原始图像数据的源传感器,或者其可以适于不同的真实或理想目标传感器。在根据本发明的方法的理想功能的情况下,不可能说出最终处理图像的(大部分)噪声是使用伪随机数产生的。(3)伪噪声图像数据,可选地包括带有相应参数(包括种子)的噪声模型,并且,如果存在和期望,则将元数据和其他数据存储到磁盘和/或通过总线或网络传输。在优选实施例中,并且取决于情况的要求,这可能以不同的方式发生,其部分地可以彼此组合:a)不同的数据段作为单独的文件、容器文件的单独部分或单独的数据包存储/传输;b)元数据和其他数据被嵌入伪噪声图像中,如下面进一步详细描述的,同时伪噪声参数被分别存储/传输;c)使用某种隐写方法将伪噪声参数嵌入伪噪声图像的像素子集中,以及选项b)用于嵌入元数据和/或其他数据。此外,伪噪声图像数据的存储和/或传输可以可选地包括以下步骤中的一个或多个:
-可以加密与伪噪声图像一起存储/传输的任何或所有数据,无论其是否嵌入所述伪噪声图像中;
-与伪噪声图像一起存储/传输的任何或全部数据可以被编码以协助错误校正,无论其是否被嵌入所述伪噪声图像中;
-与伪噪声图像一起存储/传输的任何或所有数据以及伪噪声图像本身可以补充水印或数字签名,以协助数据的认证或标识;
-所述噪声模型和相应的参数(包括种子)可以是恒定的和固定的,例如,当硬编码到适于实现本发明方法的硬件或软件中的情况下,或在网站上、说明书中或类似物公开时。
根据本发明的方法的最简单的实施例用可预测的伪噪声代替图像中的大多数不可预测的噪声。在获取由源图像传感器捕获的图像数据之后,这包括以下步骤:确定源和目标噪声模型,生成伪噪声,从所述图像数据中去除大部分噪声,以及将伪噪声添加到降噪的图像数据,例如以产生伪噪声图像数据,其与用所述目标图像传感器获取的图像数据相比在统计上是等效的,以及存储和/或传输所述伪噪声图像数据。因为伪噪声图像数据在统计上等同于使用所述目标图像传感器获取的图像数据,所以我们将以上过程称为隐写术,以突出这样一个事实,即以这种方式准备的图像不易与从目标噪声模型所应用于的传感器产生的自然图像区分开。在这个最简单的实施例中,可以在不使用隐写密钥的情况下以隐写方式用所生成的伪噪声代替自然噪声,并且既不需要存储和/或传输所述目标噪声模型的参数,也不需要存储和/或传输图像的任何元数据或其他数据,例如通过与所述伪噪声图像数据一起存储和/或传输,特别是通过嵌入所述伪噪声图像数据。实际上,在这种情况下,目标噪声模型及其参数可以被选择为恒定的,并且因此可以通过诸如上述的其他方式变得可用/可访问。如下面将变得清楚的,根据本发明的方法的更复杂和详细的实施例是优选的,并且允许,取决于该方法的应用以不同的方式和依个人选择,将所述目标噪声模型的参数和/或图像的元数据和/或其他数据添加到所述伪噪声图像数据,特别是通过将该附加信息嵌入到所述伪噪声图像数据中,可选地通过使用(多个)隐写密钥。因此,在这些情况中的任何一种情况下,保证目标噪声模型和相应的参数(用于生成伪噪声,该伪噪声被添加到降噪的图像数据中以产生伪噪声图像数据)可用,即被呈现为以某种方式可访问,在根据本发明的方法的压缩/解压缩步骤期间,尤其在假定应用于伪噪声图像数据的任何其他期望步骤期间,以便允许基于所述伪噪声图像数据和目标噪声模型的参数对伪噪声进行重现/减掉。
在这种上下文中,(多个)隐写密钥可以是秘密的也可以是公开的,这取决于应用,并且(多个)隐写密钥,尤其通常在生成伪噪声图像数据时以隐写方式将生成的伪噪声添加到降噪的图像数据中,服务于以下目的:
-除了通过使用(多个)所述隐写密钥,文件已被处理的事实实际上是不可检测的,即已经按照给定的目标噪声模型用伪噪声图像数据代替原始图像数据。
-作为处理的结果,伪噪声图像可以被有效且无损地压缩的事实实际上也不可检测的。更精确地,无损压缩将与未经处理的图像数据一样低效,并且有效压缩只能通过使用(多个)所述隐写密钥来“解锁”并且可用。
-实际图像数据之外的伪噪声图像数据可能还包含附加数据的事实实际上也是不可检测的。只能在(多个)所述隐写密钥的帮助下访问附加数据。
在后面的阶段,可以通过使用伪噪声参数生成伪噪声的相同副本来有效压缩伪噪声图像而不会造成损失,然后从图像中减去伪噪声的相同副本,使得取回上述步骤(1)完全相同的噪声减少的图像。取决于使用上述步骤(2)的可能性,可能必须使用隐写密钥从图像本身中提取伪噪声参数,或者从单独的文件或数据包中读取所述参数,或者使其以其他方式可用于噪声模型和相应参数(包括种子)恒定且固定的情况。另外,如果先前嵌入图像中,则可以从图像中提取元数据和其他数据。接下来,由于先前的降噪,可以使用例如在jpeg2000标准中定义的现有或定制的无损图像编解码器来有效地压缩所述降噪图像(通常为5到10的因子)。伪噪声的参数必须保留,并且例如可以与压缩图像数据一起存储。
可以通过首先使用相同的无损编解码器对图像数据进行解压缩,然后以伪噪声的相同参数重新应用上述步骤(2)和(3)来执行相应的解压缩。在根据本发明的方法的理想功能的情况下,结果将与在上述步骤(3)之后获得的最终处理图像在位上相同。
鉴于以上阐述的原理,通常可以通过在图像流水线的不同阶段实施这些步骤和/或通过在硬件和软件的不同部分之间划分这些步骤来实现根据本发明的方法的不同实施例。例如,一种实现可以直接集成到图像传感器中,然后在将图像数据传输到传感器的存储区域或输出总线之前执行步骤(1)至(3),同时后续无损压缩和解压缩功能由用于计算机、平板电脑、移动电话或类似物的软件模块提供。
因此,根据本发明的方法由于所述准备步骤而允许从同一图像的噪声版本中取回图像的降噪版本,该降噪版本适于有效的无损压缩。优选地,这是通过用人工伪噪声代替自然噪声来实现的,该自然噪声的来源通常是由图像传感器捕获的光的量子噪声和图像传感器本身的电子噪声的组合,人工伪噪声是利用伪随机数发生器生成的。尽管自然噪声是不可预测的,但是伪噪声是确定性的,并且如果已知生成噪声的确切参数和算法,则伪噪声可以被相同地再现。然而,本发明的基本部分在于,伪噪声通过使用噪声模型来模仿其特性,从而尽可能地类似于给定期望的真实或理想目标图像传感器的自然噪声,这将在下文中更详细地描述。相应地,本发明还提供了用于具有伪噪声的图像的无损压缩和解压缩的方法,所述压缩和解压缩步骤与现有技术中的相应步骤相比有所不同,这也将在下面更详细地描述。
下面将给出关于图像准备235、压缩155和解压缩295的一些子步骤的进一步细节。
图像准备
第一步骤是所述图像准备步骤235,在该步骤中,以这样的方式处理原始未加工图像数据210,使得将其代替为相同图像的伪噪声版本。优选地,伪噪声参数与伪噪声图像一起被存储/发送,或者使用隐写方法(也就是说,理想地是不可检测的)直接嵌入到图像中。如果没有相应的隐写密钥,就不可能说图像包含伪噪声而不是自然噪声,并且该图像可用于与原始图像数据210相同的目的和应用。如上所述并且在图2a中示意性地示出,元数据225和其他相关数据230也可以可选地嵌入到伪噪声图像中,从而产生自包含并且可以表示与原始图像数据相比的附加值的praw数据260。例如,可以嵌入针对图像数据的最佳处理很重要的其他参数,或者嵌入证明图像真实性的数据。
图2a示意性地示出了图像准备步骤235。在本节和以下各节中的描述将集中于所谓的未加工图像数据,即,直接来自cmos或ccd图像传感器或等效设备的大部分未经处理的图像数据。本领域技术人员将理解,通过适应所涉及的一些步骤,特别是通过使用适当的噪声模型,本发明可以等效地应用于其他种类的图像数据。
图像准备步骤235内的第一步骤是获取所述未加工图像数据210并执行噪声代替240,其中以输入噪声模型215为特征的图像中的大多数随机噪声被以目标噪声模型220为特征的伪噪声代替。噪声代替过程如图3所示。它首先借助于适当的输入噪声模型215和相关联参数来应用降噪或量化步骤305,以生成降噪的图像325。另一组成部分可以是伪随机数发生器320,使用它将在以下各节中变得清楚。泊松-高斯模型通常很好地描述了由ccd或cmos传感器捕获的未加工图像数据中的噪声,对此,具有值xi的像素i的估计标准偏差σi由下式给出:
其中该模型的噪声参数是a,其与图像传感器内部的信号放大有关,传感器的黑电平x0,以及b,其是与传感器的读出噪声有关的参数。尽管该噪声模型优选用于ccd和cmos未加工图像数据,但以下描述将通过假设噪声具有独立于像素值的标准偏差σ0来使用简化模型。对于某些类型的图像传感器,这是一个完美有效的假设。在这种情况下,针对具有整数值的图像数据每像素的噪声位数可以计算为
取决于获取设置,此数字可以高达6到8位。对于编码为16位的图像数据,这严重限制了使用无损压缩可以实现的压缩比。通过应用现有技术中已知的许多降噪技术之一可以改善这种情况。通常,这些技术本身是计算密集型的,并且在图像准备235和解压缩295的某些后续步骤中需要格外小心。因此,代替应用这种已知的去噪技术,根据本发明的方法的图像准备步骤235优选地包括通过以用户指定的噪声标准偏差σ0的分数q缩放像素值进行量化以获得新像素值的步骤。通过使用减法抖动可以避免许多已知的量化缺陷。为此,具有种子s315的上述伪随机数发生器320(其中s通常是整数)可用于为每个像素i从0到1的间隔上的均匀分布生成伪随机数ri,并通过将每个像素i的原始值xi代替为降噪像素值来生成降噪图像325
由降噪像素值yi组成的量化图像与由原始像素值xi组成的原始图像数据相比,具有更少的不同值,因此量化图像的后续无损压缩更加有效。如有必要,可以通过乘以σ0/q将降噪像素值yi缩放回原始范围。如所提到的,可以通过应用已知的去噪技术来实现类似的结果,但是仅在该方法的一些后续步骤期间以计算成本和更高的护理为代价。
在通过量化或通过去噪技术305生成降噪图像325的过程中,大部分自然噪声被去除,并且可以通过引入ri来添加少许人造的、确定性的噪声。
在图像准备步骤235内的第二步骤中,根据目标噪声模型220对图像进行重噪声化330。例如,可以通过变换基本上恢复原始噪声水平
为了计算恢复的像素值zi,使用上述输入噪声模型215及其参数,其中前者指定要使用的变换的函数形式,而后者指定参数σ0和q的精确值。要注意的是,代替使用原始输入噪声模型,可以通过使用用于计算恢复的像素值zi的相应函数和参数来模仿不同的目标噪声模型220。如果如上所述使用,则伪随机数发生器320被重新用于创建基本上形式为-ri·σ0/q的伪噪声,然后将其添加到图像数据以形成伪噪声图像335,由恢复的像素值zi组成。对于计算降噪像素值yi和恢复像素值zi而言,基本上值ri相同。
在根据本发明的方法的图像准备步骤235内的第三步骤是分别存储,尤其以用于传输的包,伪噪声图像数据以及可选的伪噪声参数和其他数据,包括元数据。如果正确执行,则该步骤允许a)只要使用相应类型和格式的未经处理图像数据,就使用伪噪声图像数据。另外,隐写密钥允许b)在稍后的阶段从伪噪声图像335中取回降噪图像数据325,使得可以根据需要借助于无损压缩有效地存储和传输该数据。以及c)取回元数据225和/或可用于启用、协助或改善图像处理或分析的其他数据230。
在根据本发明的方法的一些实施例中,伪噪声图像、噪声参数和其他数据一起存储在适当的数据结构、目录或其他容器中,例如由标记图像文件格式(tiff/ep,iso12234-2)所提供的。伪随机数发生器320的种子值315然后可以用作隐写密钥,因为如下所述,它可以与噪声参数组合以取回降噪图像325。取决于这样的实施例的给定应用的特定要求,所述种子可以是秘密的或公开可用的。
然而,优选的是使伪噪声图像335尽可能自包含,也就是说,在伪噪声图像数据本身中嵌入尽可能多的数据。在图3中示意性示出的根据本发明的方法的一个实施例中,通过首先将数据编码为合适的位串340,在重噪声化步骤330期间嵌入图像元数据225和其他数据230,这可以包括加密和/或错误校正手段。然后,该实施例优选地利用两个不同的种子值315s1和s2,其中s2可以从s1导出。通过在位为0时使用s1生成随机数,而在其他情况使用s2生成随机数,可以将位串340嵌入到像素序列中,每个像素具有串中的一位。偶尔地,s1和s2可能导致相同的伪噪声像素值zi,从而引起所谓的冲突。当在后续阶段从伪噪声图像335中提取位串时,可以通过现有技术中已知的合适的错误校正方法来处理冲突。假设当使用针对伪随机数发生器320的单个种子值315时无法检测到伪噪声,则使用两个不同的种子值应该同样不可能检测到,因此数据会安全地隐藏在伪噪声图像335中。
在根据本发明的方法的另一实施例中,数据嵌入被扩展为包括伪噪声参数本身。例如,通过使用隐写密钥k的加密步骤来生成参数p={σ0,q,s,t}的密码版本cp。在此,s表示随机数发生器320的一个或多个种子值,并且t是伪噪声图像335中固定的、预定位置处某些像素的串联。t是可选的,并且可以用作加密盐,其保证cp从图像到图像改变,即使σ0、q、和s相同。注意,p不一定包含有关这些步骤中使用的噪声模型的类型的信息,但是可以很容易地扩展为包含这些信息。下一步骤是实际的嵌入过程。在简单的实施例中,将参数cp的密码转换为长度为k的位串,并且用该串中的相应值覆盖在生成t中未使用的前k个像素的最低有效位。因此,这些像素的值从zi变为zi'。嵌入cp的这种方式具有有限的安全性,并且更复杂的实施例可以使用其他数据嵌入方法。如上所述,一旦嵌入了cp,就可以使用两个不同的种子值将元数据225和其他数据230嵌入到图像的其余部分中。
更复杂的实施例还可以添加冗余和用于所有数据嵌入的错误校正的手段,使得可以在图像数据经历裁剪或其他修改时取回嵌入的数据。独立于数据嵌入的特定方法,必须注意恢复的像素值zi'满足关系yi(z′i)=yi(xi),也就是说,具有伪噪声参数的经过处理的图像,其是根据本发明的方法在图像准备步骤235内的嵌入步骤的结果,可以与原始图像数据210一样很好地用于获得降噪图像数据325,假设所有其他参数已知且未经修改。
压缩
根据本发明的方法的第二步骤是压缩步骤155,其总体上是可选的并且可以在后续阶段执行。其基本上包括从伪噪声图像335中取回降噪图像325,借助于针对伪随机数发生器320的伪噪声参数和种子值315。然后,使用无损压缩算法对降噪图像325进行压缩。优选地,伪噪声参数以及可能的附加数据与压缩图像数据285组合以形成具有伪噪声参数的压缩图像,例如通过将所有内容存储在单个容器文件280或目录中,以利于后续解压缩步骤295。可选地,可以创建具有伪噪声参数的压缩图像,使得可以由成像应用打开或直接查看,无论是通过使用容器文件(尤其是某格式),其允许直接数据访问降噪图像数据,还是通过将某种预览图像添加到容器中。
现在将参考图4详细描述由上述图像准备过程235产生的图像数据的可选压缩步骤。为简化起见,该描述将使用与前一节相同的简单噪声模型,即由标准偏差σ0表示的恒定的、与信号无关的噪声。然而,该描述类似地适用于任何其他目标噪声模型220。压缩步骤将先前由图像准备步骤235生成的容器文件270或等效数据结构作为起点。第一步骤是伪噪声参数和种子值315的取回405。对于将这些参数嵌入伪噪声图像中的实施例,提取如下进行。首先,通过将无助于t生成的前k个像素的最低有效位级联来生成长度为k的位串。该位串等于参数cp的密码。然后用密钥k解密cp(如上所述,可以由所述种子值315表示),以取回参数p={σ0,q,s,t},该参数为目标噪声模型220和伪随机数发生器320提供所需信息。在第二步骤中,这些参数然后可用于通过位串解码410取回元数据225和其他数据230,并根据目标噪声模型220重新生成伪噪声,其基本上由-ri·σ0/q给出。然后,从容器文件270的praw数据260中的伪噪声图像335中减去415噪声,以取回降噪图像325。对于此处使用的简单噪声模型,通过计算下式将这些步骤组合
这里可以注意,这与在图像准备步骤235期间用于计算降噪图像325的公式相同,除了这里使用由恢复的像素值zi'表示的经过处理的图像数据,而不是由原始像素值xi表示的原始未加工图像数据210。在第三步骤中,将无损压缩420应用于降噪图像数据325。可以从多种现有或定制的图像数据算法中选择压缩算法,例如无损jpeg或png或通用压缩(例如zip),根据采用根据本发明的方法的上下文的要求。最后,伪噪声参数、元数据225和其他数据230被可选地加密,并且与压缩图像数据一起打包425到压缩文件280或等效数据结构中。取决于应用,可以通过将二进制数据简单地附加到同一文件中,通过使用类似存档的容器中的若干文件或通过使用特殊文件格式(例如tiff)的工具来执行此级联。
解压缩
鉴于针对准备235和压缩155步骤的示例实施例的以上描述,根据本发明的方法的相应的解压缩步骤可以简要描述,并且仅在图2c中示意性地示出。从压缩文件280或等效数据结构开始,这种解压缩步骤的第一步骤是参数p的分离。如果参数以参数cp的密码的加密形式存储,则分离可选地包括解密。然后,使用无损解压缩来恢复降噪图像数据325,对应于与在图像准备步骤235期间获得的完全相同的像素值yi。相应地,解压缩通过重现如准备步骤期间的相同步骤进行,即在重噪声化步骤330中将伪噪声添加到降噪图像数据325中,并存储或嵌入伪噪声参数、元数据和/或其他数据,也就是说,生成praw数据260并将所有内容放入容器文件270中。解压缩过程的输出是由图像准备步骤235产生的praw数据260和/或容器文件270的位相同副本。
鉴于以上对根据本发明的方法的若干实施例的描述,对于本领域技术人员而言清楚的是,本发明具有若干重要的优点。首先,本发明允许以这样的方式处理数字图像数据,使得可以实现通常高达约10:1的高无损压缩比,同时保持真实的噪声轮廓,该噪声轮廓既不能从视觉上也不能从统计上揭示该图像经过处理。第二,本发明确保在不知道隐写方式或用于处理图像数据的密钥的情况下,无法将从原始“未加工”图像数据经过压缩和解压缩的图像数据与使用其噪声模型的真实或理想传感器的实际未加工图像数据区分开。第三,本发明有利地还允许将几种类型的有用信息嵌入到经过处理的图像数据中,同时仍保证经过处理的图像数据可以在可以使用未加工图像数据的任何应用中使用,并且给出从统计上与其无法区分的结果。最后,本发明通过允许用户使用该技术而无需对其工作流程或其现有系统进行重大改变,例如通过允许用户继续使用他们选择的容器文件(例如,以tiff、dng、png、dicom、jp2等之类的已知文件格式的文件),从而使用户充分受益于相应的方法。