减少去卷积图像中的色差的方法、装置和计算机程序产品的制作方法
【专利摘要】在一个实施例中,提供了方法、设备和计算机程序产品。该方法包括促进对包括多个分量图像的去卷积图像的接收。从分量图像中选择引导图像,并对引导图像以外的分量图像进行交叉滤波以生成经滤波的分量图像。对分量图像的交叉滤波通过迭代地进行以下操作来执行:在引导图像中选择像素和该像素周围的相邻像素集合,至少基于该像素和该相邻像素集合之间的空间差异来计算与该相邻像素集合对应的权重集合,以及基于所述权重集合对该像素在分量图像中的对应像素进行交叉滤波以生成分量图像中的经滤波的对应像素。经滤波的分量图像形成具有减小的色差的经滤波的去卷积图像。
【专利说明】
减少去卷积图像中的色差的方法、装置和计算机程序产品
[0001] 相关申请的交叉引用
[0002] 本申请要求2015年2月26日提交的申请号为929/CHE/2015的印度申请的权益。其 全部内容在此通过引用并入本文。
技术领域
[0003] 各种实现一般涉及用于减少去卷积图像中的色差的方法、装置和计算机程序产 品。
【背景技术】
[0004] 各种电子设备,例如移动电话和其它多媒体设备被广泛用于捕获图像。由于手部 抖动或其它原因,大多数被捕获的图像是模糊的图像或是焦点没对准的图像。已进行了用 于恢复这样的模糊图像的努力。用于从除模糊图像中去除模糊的一个示例方法是基于点扩 散函数的图像去卷积。虽然通过对模糊图像执行图像去卷积得到的去卷积图像更锐利并且 焦点对准了,去卷积图像却充满色差。现有的用于从去卷积图像减少这种色差的方法是低 效且复杂的,并且用户仍想体验更高质量和对准焦的图像。
【发明内容】
[0005] 在权利要求中陈述了示例实施例的各方面。
[0006] 在一个实施例中,提供了一种方法,包括:促进对去卷积图像的接收,去卷积图像 包含与多个图像通道对应的多个分量图像;从该多个分量图像中选择引导图像;执行对该 多个分量图像中的除了该引导图像以外的一个或多个分量图像的交叉滤波,其中执行对一 个或多个分量图像中的分量图像的交叉滤波包括迭代地执行以下操作:在所述引导图像中 选择像素和所述像素周围的相邻像素集合;至少基于该像素与该相邻像素集合之间的空间 差异来计算与该相邻像素集合对应的权重集合;基于权重集合对该像素在分量图像中的对 应像素进行滤波以在分量图像中生成经滤波的相应像素,其中一个或多个经滤波的分量图 像形成具有减少的色差的经滤波的去卷积图像。
[0007] 在另一个实施例中,提供一种装置,该装置包括至少一个处理器;以及至少一个包 含计算机程序代码的存储器,该至少一个存储器和计算机程序代码被配置为,与该至少一 个处理器一起,使装置至少执行:促进对去卷积图像的接收,该去卷积图像包含与多个图像 通道对应的多个分量图像;从该多个分量图像中选择引导图像;执行对该多个分量图像中 的、除了引导图像以外的一个或多个分量图像的交叉滤波,其中执行对一个或多个分量图 像中的图像的交叉滤波包括迭代地执行以下操作:在该引导图像中选择像素和该像素周围 的相邻像素集合;至少基于该像素与该相邻像素集合之间的空间差异来计算与该相邻像素 集合对应的权重集合;基于该权重集合对该像素在分量图像中的对应像素进行滤波以在分 量图像中生成经滤波的相应像素,其中一个或多个经滤波的分量图像形成具有减少的色差 的经滤波的去卷积图像。
[0008] 在另一实施例中,提供包括至少一个计算机可读存储介质的计算机程序产品、该 计算机可读存储介质包括指令集合,当指令集合由一个或多个处理器执行时,使装置至少 执行:促进对去卷积图像的接收,该去卷积图像包含与多个图像通道对应的多个分量图像; 从多个分量图像中选择引导图像;执行对该多个分量图像中的、除了引导图像以外的一个 或多个分量图像的交叉滤波以生成经滤波的一个或多个分量图像,其中执行对一个或多个 分量图像中的分量图像的交叉滤波包括迭代执行:在引导图像中选择像素和该像素周围的 相邻像素集合;至少基于该像素与该相邻像素集合之间的空间差异来计算与该相邻像素集 合对应的权重集合;基于该权重集合对该像素在分量图像中的对应像素进行滤波以在分量 图像中生成经滤波的相应像素,其中一个或多个经滤波的分量图像形成具有减少的色差的 经滤波的去卷积图像。
[0009] 在另一个实施例中,提供一种装置,其包括:用于促进对去卷积图像的接收的装 置,该去卷积图像包含与多个图像通道对应的多个分量图像;用于从多个分量图像中选择 引导图像的装置;用于执行对多个分量图像中除了该引导图像以外的一个或多个分量图像 的交叉滤波以生成一个或者多个经滤波的分量图像的装置,其中用于执行对一个或多个分 量图像中的分量图像的交叉滤波的装置包括迭代执行:用于在引导图像中选择像素和该像 素周围的相邻像素集合的装置;用于至少基于该像素与该相邻像素集合之间的空间差异来 计算与该相邻像素集合对应的权重集合的装置;用于基于该权重集合对该像素在该分量图 像中的对应像素进行滤波以在分量图像中生成经滤波的相应像素的装置,其中一个或多个 经滤波的分量图像形成具有一个减少的色差的经滤波的去卷积图像。
[0010] 在另一个实施例中,提供一种包括程序指令的计算机程序,当该程序指令由装置 执行时,使得该装置:促进对去卷积图像的接收,该去卷积图像包含与多个图像通道对应的 多个分量图像;从该多个分量图像中选择引导图像;执行对该多个分量图像中除了引导图 像以外的一个或多个分量图像的交叉滤波,以生成一个或者多个经滤波的分量图像,其中 执行对一个或多个分量图像中的分量的交叉滤波包括迭代地执行以下操作:在引导图像中 选择像素和该像素周围的相邻像素集合;至少基于该像素与相邻像素集合之间的空间差异 来计算与该相邻像素集合对应的权重集合;基于该权重集合对该像素在分量图像中的对应 像素进行滤波以在分量图像中生成经滤波的对应像素,其中一个或多个经滤波的分量图像 形成具有减少的色差的经滤波的去卷积图像。
【附图说明】
[0011]在附图中以示例的方式,而不是限制的方式,对各实施例进行了图示,在附图中: [0012]图1示出了根据一个示例实施例的装置;
[0013] 图2示出了根据一个示例实施例的、被配置为用于减少去卷积图像中的色差的装 置;
[0014] 图3示出了根据一个示例实施例的、用于减少去卷积图像中的色差的示例表示;
[0015] 图4是描绘根据一个示例实施例的、用于减少去卷积图像中的色差的示例方法的 流程图;
[0016] 图5是描绘根据另一示例实施例的、用于减少去卷积图像中的色差的示例方法的 流程图;
[0017] 图6是描绘根据又一示例实施例的、用于减少去卷积图像中的色差的示例方法的 流程图。
[0018] 图7示出了根据一个示例实施例的模糊图像的示例表示;
[0019] 图8示出了根据一个示例实施例的具有色差的去卷积图像的示例表示;以及
[0020] 图9示出了根据一个示例实施例的、具有减少的色差的经滤波的去卷积图像的示 例表示。
【具体实施方式】
[0021] 实例实施例和其潜在的影响通过参照附图的图1到图9理解。
[0022] 图1示出了根据一个实施例的设备100。然而,应该理解的是,所图示的并在以下描 述的该设备1〇〇仅仅是能够受益于不同的实施例的一种类型的设备的示例,因此,不应被用 来限制该实施例的范围。因此,应该理解,以下结合设备1〇〇所描述的部件中的至少一些部 件可以是可选的,并且因此在一个示例性实施例中可以包括比结合图1的示例实施例所描 述的部件更多、更少或不同的部件。设备100可以是多种基于触摸屏的类型的移动电子设备 中的任何一种,例如便携式数字助理(PDAs)、移动电视、游戏设备、蜂窝电话、所有类型的计 算机(如笔记本计算机、移动计算机或台式机)、摄像机、移动数字助理,或前面提到设备的 任何组合,以及其它类型的通信设备。
[0023] 设备100可包括天线102(或多个天线),该天线102(或多个天线)处于与发射机104 和接收机106的可操作的通信。设备100可进一步包括例如控制器108或其它处理装置的装 置,该装置分别向发射机104提供信号以及从接收机106接收信号。该信号可以包括根据适 用的蜂窝系统的空口标准的信令信息,以及/或可包括对应于用户语音、接收数据和/或用 户生成的数据的数据。在这方面,设备100能够利用一个或多个空口标准、通信协议、调制类 型和接入类型进行操作。以示例的方式,设备100可能能够根据第一、第二,第三和/或第四 代通信协议等中的任何一个通信协议进行操作。例如,设备100可能能够按照第二代(2G)无 线通信协议IS-136(时分多址(TDMA))、GSM(全球移动通信系统)以及IS-95(码分多址 (⑶MA))进行操作、或按照第三代(3G)无线通信协议,诸如通用移动通信系统(UMTS)、⑶MA 1000,宽带CDMA(WCDMA)和时分同步CDMA(TD-SCDMA)进行操作,按照3.9G无线通信协议诸如 演进的通用陆地无线电接入网络(E-UTRAN)进行操作,按照第四代(4G)无线通信协议进行 操作等。作为一种替代(或另外),设备1〇〇可能能够根据非蜂窝通信机制进行操作。例如,诸 如互联网、局域网、广域网等的计算机网络;诸如蓝牙?网络,ZigBee?网络,电气和电 子工程师协会(IEEE)802.11x网络等的短距离无线通信网络;诸如公共交换电话网(PSTN) 的有线电信网络。
[0024] 控制器108可以包括电路,除其他之外,该电路实现设备100的音频和逻辑功能。例 如,控制器108可以包括,但不限于,一个或多个数字信号处理器设备、一个或多个微处理器 设备、一个或多个附随有数字信号处理器的处理器、一个或多个不附随有数字信号处理器 的处理器、一个或多个专用的计算机芯片、一个或多个现场可编程门阵列(FPGAs)、一个或 多个控制器、一个或多个专用集成电路(ASICs)、一个或多个计算机、各种模数转换器、数模 转换器、和/或其它支持电路。设备100的控制和信号处理功能根据其相应的能力在这些设 备之间分配。控制器108因此也可以包括用于在调制和传输之前对信息和数据进行卷积编 码和交织的功能。控制器108可以另外包括一个内部语音编码器,并且可以包括内部数据调 制解调器。此外,控制器108可以包括用于操作一个或多个软件程序的功能,程序可以存储 在存储器中。例如,控制器108可能能够操作连接程序,诸如常见的网络浏览器。连接程序然 后可以允许设备100根据无线应用协议(WAP)、超文本传输协议(HTTP)等发送和接收网络内 容,诸如基于位置的内容和/或其它网页内容。在一个示例实施例中,控制器108可以被具体 化为一个多核处理器,诸如双核或四核处理器。然而,任何数量的处理器均可以被包括在控 制器108中。
[0025] 设备100还可以包括用户接口,该用户接口包括输出设备,诸如振铃器110、耳机或 扬声器112、麦克风114、显示器116,和用户输入接口,该用户输入接口可耦合到控制器108。 允许设备100接收数据的该用户输入接口,可以包括允许设备100接收数据的多个设备中的 任何一个设备,诸如键盘118、触摸显不器、麦克风或其它输入装置。在包括键盘118的实施 例中,该键盘118可以包括数字(0-9)和相关按键(#,*),以及用于操作该设备100的其它硬 键和软键。替代地或者附加地,键盘118可以包括传统的QWERTY键盘布置。键盘118还可以包 括与功能关联的各种软键。此外,或者替代地,该设备100可以包括一个接口设备,如操纵杆 或其它用户输入接口。该设备100还包括电池120,诸如振动电池组,用于对被用于操作设备 100的各种电路供电,并且可选择地提供机械振动作为可检测的输出。
[0026] 在一个示例实施例中,设备100包括诸如摄像机、视频和/或音频模块的媒体捕捉 元件,其与控制器108通信。媒体捕捉元件可以是用于捕获图像、视频和/或音频以用于存 储、显示或传输的任何装置。在媒体捕捉元件是相机模块122的示例实施例中,该相机模块 122可以包括能够根据所捕获的图像形成数字图像文件的数字相机。因此,该相机模块122 包括所有硬件,如镜头或其它光学部件,以及用于根据所捕获的图像创建数字图像文件的 软件。替代地,相机模块122可以包括用于查看图像的硬件,而设备100的存储器设备以软件 的形式存储由控制器108执行以根据所捕获的图像创建数字图像文件的指令。在一个示例 实施例中,相机模块122还可以包括协助控制器108处理图像数据的诸如协处理器的处理元 件,以及用于压缩和/或解压缩图像的数据编码器/解码器。编码器和/或解码器可以根据 JPEG标准格式或其它相似格式进行解码和/或编码。对于视频,编码器和/或解码器可以使 用多个标准格式中的任何一种,诸如例如,与H. 261、H. 262/MPEG-2、H. 263、H. 264、H. 264/ MPEG-4、MPEG-4等关联的标准。在某些情况下,相机模块122可以提供实时图像数据到显示 器116。此外,在一个实施例中,显不器116可以位于设备100的一侧,并且相机模块122可以 包括相对于显示器116来说位于设备100的对侧的镜头,以使相机模块122在设备100的一侧 捕获图像,并将这些图像呈现给位于设备100另一侧的用户。
[0027] 设备100还可以包括用户识别模块(1]頂)124。1]頂124可以是具有内置的处理器的 存储器设备。UIM 124可以包括,例如,用户身份识别模块(sn〇、通用集成电路卡(UICC)、通 用用户身份识别模块(USIM)、可移除的用户身份识别模块(R-UIM)或任何其它智能卡。UIM 124通常存储与移动用户相关的信息元素。除了 ΙΠΜ 124,设备100可配备存储器。例如,设备 100可以包括易失性存储器126,如包括用于数据的临时存储的缓存区的易失性随机存取存 储器(RAM)。设备100还可以包括其它非易失性存储器128,其可被嵌入和/或可移除。非易失 性存储器128可以另外或可替代的包括电可擦除可编程只读存储器(EEPR0M)、闪存、硬盘 等。存储器可以存储被设备100使用以实现设备100的功能的任意数量的信息和数据。
[0028] 图2示出了根据实施例的装置200,其被配置用于降低去卷积图像的色差。装置200 可以被例如图1中的设备100所使用。然而,应该注意的是,装置200也可用于各种其它移动 和固定设备,并且因此,实施例不应限制在诸如图1中的设备100的设备上的应用。替代地, 各种实施例可在包括例如上面列出的那些设备的设备的组合中使用。因此,各种实施例可 以在例如设备100单个设备中被实施,或在设备的组合中实施。此外,应该注意的是,下面描 述的设备或元素可能不是强制性的,并且因此在某些实施中一些可能会被省略。
[0029] 装置200包括或以其它方式与至少一个处理器202和至少一个存储器204通信。至 少一个存储器204的示例包括但不限于,易失性和/或非易失性存储器。易失性存储器的一 些示例包括但不限于随机存取存储器、动态随机存取存储器、静态随机存取存储器等。非易 失性存储器的一些示例包括但不限于硬盘、磁带、光盘、可编程只读存储器、可擦除可编程 只读存储器,电可擦除可编程只读存储器、闪存等。存储器204可以被配置为存储信息、数 据、应用程序、指令等用于使装置200能够按照各种示例实施例执行各种功能。例如,存储器 204可以配置为缓冲包含用于由处理器202处理的媒体内容的输入数据。附加地或替代地, 存储器204可以被配置为存储用于由处理器202执行的指令。
[0030] 处理器202的一个示例可以包括控制器108。处理器202可以用多种不同的方式体 现。处理器202可以体现为多核处理器、单核处理器、或多核处理器和单核处理器的组合。例 如,处理器202可以体现为各种处理装置中的一个或多个,各种处理装置诸如协处理器、微 处理器、控制器、数字信号处理器(DSP)、附随或不附随DSP的处理电路,或包括集成电路的 其它各种处理设备,集成电路诸如例如专用集成电路(ASIC)、现场可编程门阵列(FPGA)、微 控制器单元(MCU)、硬件加速器,专用计算机芯片等。在示例实施例中,多核处理器可以被配 置为执行存储在存储器204中或以其它方式可由处理器202访问的指令。另外或替代的,处 理器202可以被配置为执行硬编码功能。因此,无论由硬件或软件方法配置,或由二者的组 合配置,处理器202都可以表示一个实体,例如,在电路中物理的体现,在被相应的配置时能 够根据不同的实施方式进行操作。例如,如果处理器202体现为ASIC、FPGA等中的两个或两 个以上,处理器202可以是专门配置的硬件,用于进行本文描述的操作。替代地,作为另一个 示例,如果处理器202被体现为软件指令的执行器,则在指令被执行时,该指令可以特别配 置处理器202来执行本文所描述的算法和/或操作。然而,在某些情况下,处理器202可以是 例如移动终端或网络设备的特定设备的处理器,该特定设备被适配为通过用用于执行本文 描述的算法和/或操作的指令进一步配置处理器202来利用实施例。除其它方面外,处理器 202可以包括时钟、算术逻辑单元(ALU)和被配置为支持的处理器202操作的逻辑门。
[0031] 用户接口 206可与处理器202通信。用户接口 206的示例包括但不限于输入接口和/ 或输出接口。输入接口被配置为接收用户输入的指示。输出接口提供了听觉、视觉,机械或 其它输出和/或向用户的反馈。输入接口的示例可以包括但不限于键盘、鼠标、操纵杆、键 盘、触摸屏、软键盘、麦克风等。输出接口的示例可能包括但不限于如发光二极管显示器的 显示器、薄膜晶体管(TFT)显示器、液晶显示器、有源矩阵有机发光二极管(AM0LED)显示器、 麦克风、扬声器、振铃器、振动器等。在一个实施例中,用户接口206可以包括在其它设备或 元件中,扬声器、麦克风、显示器、键盘、触摸屏等中的任何一个或者全部。在这方面,例如, 处理器202可以包括用户接口电路,该用户接口电路被配置为控制用户接口206的一个或多 个元素的至少部分功能,例如扬声器、振铃、麦克风、显示器等。处理器202和/或包括处理器 202的用户接口电路可以被配置通过计算机程序指令控制用户接口 206的一个或多个元素 的一个或多个功能,计算机程序指令例如为存储在可被处理器202访问的存储器中的软件 和/或固件,该存储器例如为至少一个存储器204。
[0032] 在一个示例实施例中,装置200可以包括一个电子设备。电子设备的一些示例包括 通信设备、多媒体播放设备、有或无通信能力的媒体捕获设备、计算设备等。电子设备的一 些示例可以包括手机、音频/视频播放器、个人数字助理(PDA)等。计算设备的一些示例可以 包括笔记本计算机、个人计算机等。在一个示例实施例中,电子设备可以包括用户接口(如 用户接口 206),该用户接口具有用户接口电路和用户接口软件,被配置为促进用户通过使 用显示器来控制电子设备的至少一个功能,并进一步被配置为响应于用户输入。在一个示 例实施例中,电子设备可以包括显示电路,该显示电路被配置为显示该电子设备的用户接 口 206的至少一部分。显示器和显示器电路可被配置为促进用户控制电子设备的至少一个 功能。
[0033] 在一个实施例中,该电子设备可以被具体化为包括一个收发器。该收发器可以是 根据软件或以其它方式置于硬件中或者硬件和软件的组合进行操作的任何设备或电路。例 如,处理器202在软件的控制下操作,或处理器202体现为被特定配置为执行本文描述的操 作的ASIC或FPGA或它们的组合,由此配置装置200或电路以完成收发器的功能。该收发器可 以配置为接收媒体内容。媒体内容的示例可以包括音频内容、视频内容、数据和它们组合。
[0034] 在一个示例实施例中,该电子设备可以可选地体现为包括一个或多个例如图像传 感器208的图像传感器,体现在一个或多个摄像头模块中。虽然只有一个图像传感器208被 显示在图2的示例表示中,但电子设备可以包括更多这样的图像传感器。图像传感器208可 以与处理器202和/或装置200的其它部件通信。图像传感器208可与其它成像电路系统和/ 或软件通信,并被配置成捕获数字图像、或捕获视频或其它图形媒体。图像传感器208和其 它电路,组合在一起,可以作为诸如设备100的相机模块122的至少一个摄像头模块的示例。 [0035]这些部件(202-208)可以经由集中的电路系统210互相通信,以促进对装置200的 图像和视频捕捉的改进。集中的电路系统210可以是各种设备,该设备被配置为,除其它方 面以外,提供或使能装置200的部件(202-208)之间的通信。在某些实施例中,集中的电路系 统210可以是一个中央印刷电路板(PCB),诸如母板、主板、系统板或逻辑板。集中的电路系 统210也可以,或者替代地,包括其它的印刷电路组件(PCAs)或通信渠道媒体。
[0036]在一个示例实施例中,装置200被促使用于在图像去卷积中减少色差。在这个实施 例中,处理器202被配置为,与存储器204的内容、以及可选的本文描述的其它部件一起,使 装置200促进对去卷积图像的接收。在示例实施例中,该装置200可直接接收去卷积的图像, 或可以接收图像并进行图像的去卷积以生成该去卷积图像。例如,该装置200可以捕获或接 收图像,并执行图像的去卷积。本文中,"图像去卷积"是指以下方法,该方法用于从手部抖 动、不正确的对焦或其它现象造成的模糊或对焦不准的图像中去除模糊。例如,图像去卷积 可以基于本领域已知的点扩散函数(PSF)来进行。本文中,"图像"表示捕捉的场景,而"场 景"是指其图像和/或视频可以被捕获的一个或多个对象的布置(自然的、人为的安排、分类 的或组合的)。在一个示例中,图像可以被一个或多个图像传感器捕获,例如由图像传感器 208捕获。在示例实施例中,图像和/或去卷积图像可以存储在存储器204或可由装置200访 问的任何其它存储位置。在示例实施例中,处理装置可被配置为促进对去卷积图像的接收。 处理装置的示例可以包括处理器202,其可以是控制器108的一个示例。
[0037] 在示例实施例中,接收到的去卷积图像包含多个分量图像,其可以是与多个去卷 积图像关联的图像通道。例如,在一个示例中,多个分量图像可以包括与YCbCr图像通道关 联的亮度图像(Y)、蓝色度图像(Cb)和红色度图像(CR)(以下统称'YCbCr分量图像')。另一 个示例中,多个分量图像可以包括与YPbPr图像通道关联的亮度图像(Y)、第一颜色差图像 (Pb)和第二颜色差图像(Pr)(以下统称为"YPbPr分量图像)。在另一个非限制性的示例中, 多个分量图像可以包括与RGB图像通道相关联的红色图像(R)、绿色图像(G)、和蓝色图像 (B)(以下统称'RGB分量图像')。
[0038] 在一个实施例中,如果输入的去卷积图像包括R、G、B分量图像,R、G、B分量图像可 以被转换为去卷积图像的YCbCr分量图像。本公开利用包括YCbCr分量图像的去卷积图像的 示例进行说明。然而,应该注意的是,去卷积图像可以包括其它类型的分量图像,并且因此, 实施例不应被限制为YCbCr分量图像。
[0039] 在一些实施例中,处理器202被配置为从多个分量图像中选择引导图像。在一个实 施例中,本公开使用交叉滤波来减少去卷积图像的色差。本文中,'交叉滤波'是指依据引导 图像对其它分量图像滤波的过程。因此,引导图像被从多个分量图像中选择出来,以引导处 理器202与其它部件一起对多个图像中的其它分量图像进行滤波。例如,在一个示例实施例 中,引导图像被用来将其它分量图像的边缘与引导图像的边缘对准。一个示例实施例中,Y 分量图像从YCbCr图像中被选择为引导图像。类似地,如果去卷积图像包括YPbPr分量图像, 贝1JY分量图像从YPbPr分量图像中被选择为引导图像,并且如果去卷积图像包括RGB分量,则 G分量图像从RGB分量中被选择为引导图像。在示例实施例中,处理装置可以被配置为从单 个分量图像中选择引导图像。处理装置的示例可以包括处理器202,其可以是控制器108的 示例。
[0040] 在某些实施例中,处理器202被配置为执行对多个分量图像中除了引导图像之外 的一个或多个分量图像的交叉滤波,以生成一个或多个经滤波的分量图像。在一个示例实 施例中,基于双边滤波方法和/或最小生成树方法执行交叉滤波。在一个示例实施例中,对Y 分量图像(引导图像)以外的分量图像,例如Cb和Cr分量图像,进行交叉滤波。
[0041] 在一个示例实施例中,通过迭代地执行以下操作来执行对该一个或多个分量图像 中的分量图像的交叉滤波:在引导图像中选择一个像素和该像素周围的相邻像素集合;至 少基于所选择的像素与该相邻像素集合之间的空间差异来计算与该相邻像素集合对应的 权重集合,并基于该权重集合集合对所选择的像素在分量图像中的对应像素进行滤波以在 分量图像中生成经滤波的对应像素,并且随后对此做更详细的描述。在一个示例实施例中, 处理装置可以被配置为执行对该一个或多个分量图像的交叉滤波。处理装置的一个示例可 以包括处理器202,其可以是控制器108的示例。
[0042]在每个迭代中执行对分量图像的交叉滤波的实施例中,装置200被促使为在引导 图像中选择像素和该像素周围的相邻像素集合。在一个示例实施例中,像素和该相邻像素 集合表示尺寸为W(宽度)XW(高度)的像素窗口。例如,如果交叉滤波关于Y分量图像(引导 图像)在Cb分量图像上执行,则在Y分量图像中选择像素(Pi,其中在连续迭代中i包括Y分量 图像的所有像素)以及该像素(Pi)周围的相邻像素集合。像素(Pi)和相邻像素集合一起组 成像素窗口WxW。在一个示例实施例中,该像素窗口以引导图像中的像素(Pi)为中心。例如, 3x3的像素窗口包括第一行的1、2、3像素,第二行的4、5、6像素,和第三行的7、8、9像素。因此 该3x3像素窗口以像素5为中心,并且像素5周围的相邻像素集合包括像素1、2、3、、4、6、7、8、 和9。然而,如果该像素是Y分量图像中的一个角落像素或任何边界像素,则相邻像素集合在 数目上是受限的(例如,小于八),并且只有这样的相邻像素被考虑用于交叉滤波。在一个示 例实施例中,处理装置可被配置为选择像素和相邻像素集合。处理装置的示例可以包括处 理器202,其可以是控制器108的示例。
[0043]在对分量图像执行交叉滤波的该示例实施例中,装置200被促使至少基于所选择 的的像素与相邻像素集合之间的空间差异来计算与该相邻像素集合对应的权重集合。在一 个示例实施例中,该权重集合可以只基于所选择的像素和相邻像素集合之间的空间差异来 计算,并且可以不利用对所选择的像素和相邻像素集之间的像素差异的计算。在一个示例 实施例中,针对相邻像素集合中的每个相邻像素计算权重,从而计算出相邻像素集合的权 重集合。例如,包括像素5周围的1至4和6至9相邻像素的3x3像素窗口具有相应的权重W1至 W4和W6至W9。在一个示例实施例中,基于像素(例如,像素5)和相邻像素集合之间的空间差 异集合以及像素差异集合来计算权重,后文将对此详细描述。在一个示例实施例中,处理装 置可以被配置为计算与相邻像素集合对应的权重集合。处理装置的一个示例可以包括处理 器202,其可以是控制器108的示例。
[0044] 在计算对应于相邻像素集的权重集合的实施例中,装置200被促使计算所选择的 像素和相邻像素集合之间的空间差异和像素差异。在一个示例实施例中,针对每个相邻像 素计算相对于所选像素的空间差异。本文中,"空间差异"指的是所选择的像素和相邻像素 之间的空间距离。在一个示例实施例中,装置200被促使基于以下表达式(1)来计算像素(i, j)和相邻像素集合中的相邻像素(k,1)之间的空间差:
[0045] spatial difference(k,1)=exp{_[(k_i)~2+(l_j)~2]/(2*sigma_domairT2)}
[0046] 其中(i,j)是像素的坐标,其中(k,l)为关于像素(i,j)的相邻像素集合中的任意 相邻像素的坐标,并且k、l各自在_(W-l)/2到(W-l)/2之间的范围内变化,其中W是像素窗口 WxW的宽度(W是奇整数),并且sigma_domain是预先固定的常数。
[0047] 在计算与相邻像素集合对应的权重集合的该示例实施例中,装置200被促使计算 在所选择的的像素和该相邻像素集合之间的像素差异集合。在一个示例实施例中,针对每 个相邻像素计算相对于所选像素的像素差。本文中,"像素差异"指所选择的像素和相邻像 素之间在强度或像素值上的差异。在一个示例实施例中,装置200被促使基于以下表达式 (2)来计算所选择的像素和相邻像素集合中的相邻像素之间的像素差:
[0048] pixel difference(k,1)=exp{_[g(i_k,j_l)_g(i,j)]~2/(2*sigma_range~2)}
[0049] 其中g(i-k,j_l)是引导图像中像素位置处的像素值,且其中sigma_ domain是预先固定的常数,并且其中(k,l)为相邻像素集合中的相邻像素的坐标,并且k、l 各自范围在-(W-l)/2到(W-l)/2之间,其中W是像素窗口WxW的宽度。
[0050] 在一个计算与相邻像素集合对应的权重集合的实施例中,装置200被促使基于该 空间差异集合和像素差异集合的函数来计算权重集合。在一个示例实施例中,装置200被促 使根据以下表达式(3)、基于针对相邻确定的空间差异和像素差异的乘法函数来计算(相邻 像素集合中的)该相邻像素的权重:
[0051] ffeight(k,1)=spatial difference(k,l)*pixel difference(k,1)
[0052] 其中(k,l)相邻像素集合中的相邻像素的坐标,并且k、l各自范围是-(W-l )/2到 (W-l)/2之间,其中W是像素窗口WxW的宽度。
[0053] 应当注意,针对像素(i,j)周围的所有相邻像素计算weight(k,l)。更进一步地,在 一个实施例中,引导图像的所有像素(通过变化'i'和'j'来连续或同时选择所有的像素)被 选择,并且针对所有像素(i,j)来计算相邻像素集合的权重集合。
[0054]在执行分量图像的交叉滤波的实施例中,装置200被促使基于权重集合对像素(i, j)在分量图像中的对应像素进行滤波,以在分量图像中生成经滤波的对应像素。例如,Y分 量图像(引导图像)中的像素(i,j)在Cb分量图像中有一个对应的像素并且在Cr分 量图像中有一个对应的像素(i",j")。因此,基于权重集合W1-W4和W6-W9对像素 (i ',j ')和 像素进行滤波,以生成像素和像素的经滤波的对应像素。在一个示 例实施例中,装置200被促使基于下面的表达式(4)来生成像素(i,j)在分量图像中的对应 像素:
[0055]
[0056] 其中g'(i-k,j_l)是分量图像中的对应像素的对应相邻像素的像素值。
[0057]在一个示例实施例中,以上执行的交叉滤波被称为双边滤波方法,并且weight(k, 1)是双边权重。在一个示例实施例中也可以使用最小生成树方法进行交叉滤波。在最小生 成树的方法中,像素窗口WxW可能完全或部分地生成Y分量图像(引导图像)。在这个示例实 施例中,权重集合包括计算出的对应于相邻像素(k,l)的最小生成树权重,并根据该权重集 合获得分量图像中经滤波的相应像素。在最小生成树方法的一个实施例中,不存在在选择 的像素周围的这样的像素窗口(WxW),并且相邻像素集合可以包括引导图像中所有的像素 或像素的任何组合。在这个示例实施例中,引导图像中其它像素对于选中的像素的影响(称 为"权重")被计算出来,并使用该计算出的权重来对所选择的像素在分量图像中的对应像 素进行滤波。因此,在最小生成树方法的该实施例中,术语"相邻像素"并不一定表示与所选 择的的像素邻接的像素或距离所选择的的像素的特定空间距离内的像素;实际上"相邻像 素"在本文可以表示引导图像中的任何像素,并与离所选择的的像素的任何空间距离无关。
[0058] 在一个示例实施例中,装置200被促使基于以下表达式(5)来计算权重结合中的针 对相邻像素集合中的相邻像素的最小生成树权重:
[0059]
[0060]其中(k,l)为引导图像中像素的像素坐标,weight(k,l)确定像素(k,l)对像素坐 标(i,j)处的滤波值的贡献,其中D[pixel at location(k,l),pixel at location(i,j)] 是在位置(k,l)处的相邻像素和位置(i,j)处的选中像素之间的最小生成树距离,并且其中 sigma是一个固定不变的常数。
[0061] 在示例实施例中,装置200被促使基于下面的表达式(6)来生成像素(i,j)在分量 图像中的经滤波的对应像素:
[0062]
[0063]其中8'(卜1」-1)是分量图像中对应像素的对应相邻像素的像素值,并且其中 weight(k, 1)是指最小生成树权重。
[0064] 在一个示例实施例中,基于上述交叉滤波(通过双边滤波方法或最小生成树的方 法),所获得的去卷积图像是具有减少了的色差的经滤波的去卷积图像。在一个示例实施例 中,交叉滤波后,经滤波的包括Y、Cb和Cr分量图像的去卷积图像可以被保持原样,或者被转 换为包括R、G、B分量图像的去卷积图像。
[0065] 使用装置200可以使用各种合适的技术来减少去卷积图像的色差。减少去卷积图 像中的色差的一些实施例以下描述中被说明;然而,这些实施例不应被视为对本技术的范 围的限制。
[0066] 参考图3,描述了在双边滤波方法的基础上执行交叉滤波的示例。
[0067] 图3示出了根据示例实施例用于减少去卷积图像中的色差的示例表示。该示例表 示包括对应于去卷积图像的多个分量图像的Y分量图像300,Cb分量图像320和Cr分量图像 330。应该注意的是,示出去卷积图像的Y分量图像300、Cb分量图像320、和Cr分量图像330的 只是为了表示的目的,以帮助描述这些实施例;并且这样的表示并不必然地表示实际分量 图像。
[0068]双边滤波方法被分别用于执行对Cb和Cr分量图像320和330的交叉滤波。在一个示 例实施例中,Y分量图像300从Y、Cb、Cr分量图像(300 - 330)中被选作引导图像。像素,如像素 302,和像素302周围的相邻像素集合的示例在Y分量图像300中被示出。像素302和相邻像素 集合由像素窗口 304表示。在这个示例中,像素窗口 204有例如3x3的WxW,像素窗口 304的宽 度和高度为3。相邻像素集合中的相邻像素表示为?1、?2、?3、?4、?617、?8、?9,并且像素302 被表示为P5。每个像素被(x,y)像素坐标标识,例如像素 P5由像素坐标(i,j)表示,且每个相 邻像素可以被关于像素坐标(i,j)的像素坐标(k,l)表示。在一个示例实施例中,如果像素 302是一个角像素或边界像素,相邻像素集合中的相邻像素的数量可能较少,并且只有这种 相邻像素被考虑用于交叉滤波。
[0069]在一个示例中,每个相邻像素 P1-P4和P6-P9的权重(双边权重)分别被确定为W1-W4和W6-W9。例如,相邻像素 P4(k,l)的权重可以确定如下。像素 P5(i,j)和相邻像素 P4(k,l) 之间的空间差异(k,l)是依据参考图2所述的表达式(1)计算出来的。像素 P5(i,j)和相邻像 素 P4(k,l)之间的像素差异(k,l)进一步依据参考图2所述的表达式(2)被计算。对应于相邻 像素 P4(k,l)的weight(k,l)是基于空间差异(k,l)和像素差异(k,l)的乘法函数、依据参考 图2所述的表达式(3)计算出来的。
[0070]在一个实施例中,对应于相邻像素的权重可能在数值上不同。例如,如果像素 P5 (i,j)表示红色,并且相邻像素 P1和P6分别表示红色和蓝色,则相邻像素 P1的权重高于相邻 的像素 P6的权重,因为相邻像素 P1与像素 P5在颜色(红色)上相似和/或接近。此外,如果引 导图像中有一个边缘,则对应于相邻像素的权重也可能会有所不同。例如,在窗口304中显 示的边缘306可能会导致呈现在边缘一侧上的像素相较于呈现在另一侧的像素由于像素值 的差异而具有不同的权重。颜色差异,例如,相邻像素 P3、P6和P9的颜色差异,可能表示了边 缘306的右侧部分,相较于边缘306的左侧部分,其可能是Y分量图像300中的不同的颜色或 不同的部分。例如,相邻像素 P3、P6和P9的权重(存在于边缘306的与像素 P5相对的一侧)与 对应于相邻像素?1、?2、?417和?8(存在于像素?5离开边缘306的一侧)的权重相比可能更 小。
[0071]对于引导图像的每个像素,与相邻像素集合对应的权重以类似的方式被确定。在 一个示例实施例中,当针对引导图像中所有像素确定了与相邻像素集合对应的权重,对其 它分量图像(例如Cb分量图像320和Cr分量图像330)中的对应像素的交叉滤波被相对于引 导图像执行。例如,Cb分量图像320中对应于像素302的像素被表示为像素322,并且也在Cb 分量图像320中考虑像素322周围的相邻像素集合。像素322和像素322的相邻像素集合被像 素窗口 324表示。在这个示例中,像素窗口 324具有3x3的WxW,例如,像素窗口 324的宽度和高 度为3。在Cb分量图像320中,像素窗口 324中每个对应像素被像素坐标(x',y')所表示,例 如,对应像素 P' 5被像素坐标(i ',j ')表示,并且每个对应相邻像素可能被像素坐标(k',Γ ) 表示。像素302的对应像素322基于权重(W1-W4和W6-W9)被滤波以生成一个Cb分量图像320 的经滤波的对应像素322。例如,像素322通过使用针对引导图像(Y分量图像300)中的相邻 像素集合计算出的权重(W1-W4和W6-W9)、根据参考图3所述的表达(4)进行滤波。因此,Cb分 量图像320中的每个对应像素以上述描述的方式进行滤波,以获得具有减少的色差的经滤 波的Cb分量图像。
[0072]还对Cr分量分像330进行交叉滤波。例如,像素302的对应像素332和像素集合的对 应像素集合在Cr分量图像330中被考虑。像素332和相邻像素集合由像素窗口 334表示。在这 个示例中,像素窗口334有例如3x3的WxW,像素窗口334的宽度和高度为3。在Cr分量图像330 中,像素窗口 334中的对应像素 P5"被像素坐标(i",j")表示,并且每个对应相邻像素可由像 素坐标(k",l")表示。像素302的对应像素332基于权重集合(W1-W4和W6-W9)、按表达式(4) 进行滤波,以生成Cr分量图像中经滤波的对应像素330。在一个示例实施例中,Cr分量图像 330中的每个对应像素以与Cb分量图像320中相似的方式进行滤波。
[0073] 参考图4、5和6描述了用于在图像卷积中降低色差的一些示例方法。
[0074] 图4是描绘根据示例实施例的由于减少去卷积图像色差的示例方法400的流程图。 参照图2示出和解释了方法400。例如,流程图中描述的方法400能够被图2中的装置200执 行。
[0075]在402处,方法400包括促进对去卷积图像的接收。去卷积图像包括对应于多个图 像通道的多个分量图像。在一个示例实施例中,去卷积图像可以通过对例如模糊图像的图 像执行图像去卷积来生成。执行图像去卷积以便从图像中去除模糊。在一个示例实施例中, 多个分量图像包括亮度图像(Y)、蓝色度图像(Cb),红色度图像(Cr)。替代地,多个分量图像 可以是Y、Cb、Cr分量图像以外的分量图像。
[0076]在404处,方法400包括从多个分量图像中选择引导图像。在一个示例实施例中,如 参考附图2和3描述的,Y图像被选择作为引导图像。
[0077]在406处,方法400包括执行对多个分量图像中引导图像以外的一个或多个分量图 像的交叉滤波。
[0078]在一个示例实施例中,针对该一个或多个分量图像中的分量图像的交叉滤波通过 迭代地执行块408-412的操作来执行。在一个示例实施例中,交叉滤波可能通过双边滤波的 方法或最小生成树的方法进行。参照图5详细说明了使用双边滤波方法执行的交叉滤波,参 照图6详细说明使用最小生成树方法执行的交叉滤波。例如,在408处,方法400包括在引导 图像中选择像素和所选择的像素周围的相邻像素集合。例如,在例如为Y分量图像的引导图 像中可以选择中心像素和该中心像素周围的紧邻的相邻像素。在一个示例实施例中,所选 择的像素和相邻像素集合表示尺寸为W(宽度)xw(高度)的像素窗口。
[0079] 在410处,方法400包括至少基于所选择的像素和相邻像素集合之间的空间差异来 计算与相邻像素集合对应的权重集合。在一个示例实施例中,对于双边滤波方法,该权重集 合对应于基于所选择的像素与相邻像素集合之间的空间差异集合以及像素差异集合所计 算出的双边权重。在一个示例实施例中,双边权重的计算基于表达式(1 )、( 2)和(3)。在一个 示例实施例中,对于最小生成树方法,该权重集合对应于相邻像素集合和像素之间的最小 生成树的距离(空间差异的集合)。在一个示例实施例中,最小生成树权重的计算基于表达 式(5)。
[0080] 在412处,方法400包括基于权重集合对所选择的的像素在分量图像中的对应像素 进行滤波,以生成分量图像中的经滤波的对应像素。在计算例如Y分量图像的引导图像中的 相邻像素的权重集合时,(引导图像中的)所选择的像素的(分量图像的)对应相邻像素基于 权重集合被滤波。在一个示例实施例中,对于双边滤波方法,可以基于表达式(4)生成所选 择的像素的经滤波的对应像素。一个示例实施例中,对于最小生成树方法,可以基于表达式 (6)生成(引导图像中的)所选择的像素的(在分量图像中的)经滤波的对应像素。
[0081 ]在一个示例实施例中,针对引导图像的每个像素进行块408、410和412的操作(例 如,通过选择每个像素),且分量图像中的相应像素被滤波。类似地,对所有分量图像都进行 这些操作,以使用引导图像来对所有分量图像的像素进行滤波。
[0082] 参照附图5进一步解释了使用双边滤波方法减少去卷积图像中的色差的示例实施 例。
[0083] 图5是根据另一个实施例的用于减少去卷积图像中的色差的示例方法500的流程 图。参照附图2示出和解释方法500。例如,流程图描述的方法500可被图2中所示的装置实 现。方法500开始于502。
[0084]在504处,方法500包括对图像进行图像去卷积,以生成包括R、G、B分量图像的输入 去卷积的图像。在一个示例实施例中,该图像可能是模糊图像,并执行了图像去卷积来去除 该图像中的模糊。在506处,方法500包括:将输入去卷积图像的R、G、B分量图像转换成去卷 积图像的Y,Cb,Cr分量图像。在一个示例实施例中,以下操作也可在不将R、G、B分量图像转 换成Y、Cb、Cr分量图像的情况下对R、G、B分量图像执行。
[0085]在508处,方法500包括从Y、Cb、Cr分量图像中选择Y分量图像作为引导图像。在不 对本公开的各种实施例的范围进行限制的情况下,应该注意的是,Y分量图像被选作引导图 像,因为相对于色度通道(即,U和V分量图像),人眼对亮度通道(即Y分量图像)的边缘更敏 感。因此,以Y分量图像作为引导图像,Y分量图像的边缘保持不变,而其它分量图像(即,色 度通道)的边缘依据亮度通道的边缘而改变。在510处,方法500包括在引导图像中选择像素 和该像素周围的相邻像素集合,其中该像素和相邻像素集合表示像素窗口。例如,如图3所 示,像素 P5被选择作为在Y分量图像300中的该像素,而像素?112、?3、?4、?6、?7、?8和?9被 选作像素 P5的相邻像素集合。在一个示例实施例中,如果该像素是一个角落像素,则相邻像 素集合很少,并且只这些相邻像素被考虑用于交叉滤波。
[0086] 在512处,方法500包括从引导图像中的相邻像素集合中选择相邻像素。例如,相邻 像素 P1从Y分量图像中的相邻像素集合中被选择。
[0087] 在514处,方法500包括计算所选择的像素和该相邻像素之间的空间差异。在一个 示例中,相邻像素 P1和该像素 P5之间的空间差异可以使用表达式(1)来计算。
[0088]在516处,方法500包括计算所选择的像素和相邻像素之间的像素差异。在一个示 例中,可以使用表达式(2)计算相邻像素 P1和像素 P5之间的像素差异。应该注意的是,空间 差异和像素差异可用任何顺序计算,或用同时的方式计算。
[0089]在518处,方法500包括基于空间差异和像素差异的函数计算相邻像素的权重。例 如,相邻像素 P1的权重可以使用表达式(3)基于在块514处确定的空间差异以及在模块516 处计算出的像素差异来计算。
[0090] 在520处,方法500包括检查是否计算了与所选择的像素的所有相邻像素对应的权 重集合。如果与所有相邻像素对应的权重集合未被计算,则方法500转向模块512,否则522 被执行。例如,一旦相邻像素 P1的权重被计算,处理器202检查是否计算了像素 P5的所有相 邻像素的权重。在这种情况下,因为仅相邻像素 P1的权重被计算,在块512到520的操作被重 复,直到所有相邻像素(?1、?2、?3、?4、?6、?7、?8和?9)的权重被计算。
[0091] 在522处,方法500包括基于权重集合、对所选像素在Cb、Cr分量图像中的每个分量 图像中的对应像素进行滤波,以生成每个分量图像中的经滤波的对应像素。一旦针对相邻 像素集合(?1、?2、?3、?4、?6、?7、?8和?9)的权重集合被计算,每个权重被乘以所选择的像素 在分量图像中的对应像素的对应相邻像素的像素值。对应像素从而基于得到的值的函数被 滤波,以根据表达式(4)生成像素 P5的经滤波的对应像素(例如图3所示的P'5或P"5)。
[0092] 在524处,方法500包括检查是否在Cb和Cr分量图像中生成了与引导图像中的所有 像素对应的经滤波的对应像素。如果未对应引导图像中的所有像素生成经滤波的对应像 素,则方法500转到模块510,以选择另一个像素和另相邻像素集合,并在块510至522执行其 他操作,否则执行526。例如,一旦针对像素 P5的经滤波的对应像素(P'5和P"5)生成,处理器 202检查是否针对Y分量图像的所有像素生成了经滤波的对应像素。在这种情况下,因为仅 针对像素 P5的经滤波的对应像素被生成,块510至522的操作通过采用不同的像素窗口进行 重复,直到分量图像中的所有经滤波的对应像素被生成。在526处,方法500包括将YCbCr分 量图像转换为RGB分量图像,以获得具有色差减少的去卷积图像(经滤波的去卷积图像)。该 方法停止于528。
[0093] 参照图6进一步解释了使用最小生成树方法减少去卷积图像中的色差的一个示例 实施例。
[0094] 图6根据另一个示例实施例描绘用于在去卷积图像中减少色差的示例方法600的 流程图描述。方法600被参照图2示出和解释。例如,在流程图示出的方法600可由图2中的装 置200执行。方法600开始于602。
[0095] 在604处,方法600包括执行对图像的图像去卷积,以生成包括R、G、B分量图像的输 入去卷积图像。在一个示例实施例中,该图像可以是模糊图像,并执行图像去卷积来去除该 该图像中的模糊。在606处,600的方法包括:将输入去卷积图像的R、G、和B分量图像转化为 去卷积图像的Y、Cb、Cr分量图像。在一个示例实施例中,也可在不将R、G、B分量图像转化为 Y、Cb、Cr分量图像的情况下执行以下操作。
[0096]在608处、方法600包括从Y、Cb、Cr分量图像中选择Y分量图像作为引导图像。在610 处,方法600包括在引导图像中选择像素和该像素周围的相邻像素集合。在这个实施例中, 相邻像素集合可以包括该引导图像的所有或一些像素。因此,相邻像素集合不受限于离所 选择的像素的任何空间距离。
[0097]在612处,方法600包括从引导图像的相邻像素集合中选择相邻像素。例如,相邻像 素 P1选自Y分量图像的相邻像素集合。
[0098]在614处,方法600包括计算所选择的像素和相邻像素之间的最小生成树距离。在 616处,方法600包括基于最小生成树距离计算对应于该相邻像素的权重,例如最小生成树 的权重。例如,相邻像素 P1的最小生成树权重可以使用表达式(5)、基于在块614确定的最小 生成树距离来计算。
[0099]在618处,方法600包括检查是否对应于所选择的像素的所有相邻像素的权重集合 均被计算。如果未计算对应于所有相邻像素的权重集合,则方法600进行到块620,否则是块 612被执行。例如,块612至618的操作被重复,直到所选择的像素的所有相邻像素的权重被 计算。
[0100]在620处,方法600包括基于权重集合对所选择的像素在Cb、Cr分量图像中的每个 分量图像中的对应像素进行滤波,以生成每个分量图像中的经滤波的对应像素。一旦针对 引导图像(Y分量图像)中的相邻像素集合计算了权重集合,每个权重被乘以所选择的像素 在分量图像中对应像素的对应相邻像素的像素值。因此,对应像素基于得到的值的函数被 滤波,以根据最小生成树方法的表达式(6)生成经滤波的对应像素。
[0101]在622处,方法600包括检查是否在Cb、Cr分量图像中生成了与引导图像中所有像 素对应的经滤波的对应像素。如果未生成与引导图像中所有像素对应的经滤波的对应像 素,则方法600进行到块610以选择另一个像素和另相邻像素集合,并块610至620的执行其 他操作,否则624被执行。在624处,方法600包括将YCbCr分量图像转化为RGB分量图像,以获 得具有色差减少的去卷积图像(经滤波的去卷积图像)。该方法在626处停止。
[0102]图7示出了根据一个示例实施例的、场景的模糊图像700的示例表示。在这个示例 表示中,模糊图像700可以被图像传感器捕获,例如装置200中的实施于相机中的图像传感 器208。在一个示例中,模糊的图像700的生成可能是用户使用装置200点击场景时手部抖 动、或任何其它现象的结果。在另一个示例中,模糊图像700可能是不适当的对焦导致的。模 糊图像700中分别包含场景700的前景对象和背景对象。例如,前景包括女士 702、女士 704和 男子706,而背景包括建筑708和道路。如图7所示,在模糊图像700的前景和背景中的对象以 示例的形式被显示为模糊或对焦不准。
[0103]图8显示了 一个按照示例实施例的去卷积图像800的示例表示。在这个示例表示 中,对模糊图像700执行图像去卷积,以生成相较于模糊图像700更为锐利和对准焦的去卷 积图像800。图像去卷积可以例如,由该装置200通过本领域任何已知的技术来执行。图像去 卷积的一些示例方法包括,但不限于,基于点扩展函数(PSF)的技术。去卷积图像800,如图8 所示,分别包括前景和背景对象,相较于模糊图像700中的对象更为锐利。例如,前景包括女 士 802、女士 804和男士 806(女士 702、女士 704和男士 706的更锐利或不模糊的版本),并且背 景包括建筑808和道路(图7中建筑708和道路更锐利或不模糊的版本)。
[0104]然而,如图8所示,去卷积图像800包括在去卷积图像800的不同区域的色差,在示 例表示的形式显示。例如,表示建筑808的几个窗户的区域810利用不同表示模式描绘了色 差,以指示不同的颜色。类似地,表示女士 802的手的另一区域812利用不同表示方式描绘了 色差,以指示不同的颜色,例如红色、蓝色、绿色或这些的颜色组合。
[0105] 图9显示了根据一个实施例的、具有减少了色差的经滤波的去卷积图像900的示例 表示。在这个示例表示中,去卷积图像800中显示的色差,例如区域810和812)被利用交叉滤 波进行了减少,如参照图2和图3描述的,以生成具有减少了色差的经滤波的去卷积图像 900。在这个示例表示中,相较于如图8所示的女士802、女士804、男士806,和建筑808,在女 士 902、女士 904、男士 906、建筑908和道路(如图9所示)具有色差减少。在一个示例实施例 中,可基于参照图5所详细解释的双边滤波方法或参照图6所详细解释的最小生成树方法执 行交叉滤波。
[0106] 去卷积图像800 (输入去卷积图像)可以从R、G、B分量图像被转换为Y、Cb、Cr分量图 像。Y分量图像可以从Y、Cb、Cr分量图像被选为引导图像。然后相对于Y分量图像对Cb和Cr分 量图像执行交叉滤波以生成对应的经滤波的分量图像。例如,通过迭代地执行以下操作来 进行交叉滤波:在引导图像中选择像素和该像素周围的相邻像素集合,对每个分量图像,至 少基于所选择的像素和该相邻像素集合之间的空间差异集合和/或像素差异集合来计算对 应于该相邻像素集合的权重集合,并至少基于所选择的像素和相邻像素集合之间的空间差 异集合和/或像素差异集合来计算对应于相邻像素集合的权重集合。交叉滤波的这些步骤 参照图2和图3进行了详细解释,并且在此为了简洁而不进行解释。一旦对去卷积图像800的 分量图像进行了交叉滤波,就得到了具有色差减少的经滤波的去卷积图像900。另一种技术 中,对去卷积图像800的分量图像的滤波利用最小生成树的方法进行,以生成经滤波的去卷 积图像900。包括Y分量图像和Cb、Cr的经滤波的分量图像的、具有减少了的色差的、经滤波 的去卷积图像900可以被进一步转换回R、G、B分量图像。
[0107]应该注意的是,为了方便对于附图4、5、6的流程图的讨论,某些操作被描述为包括 以特定的顺序执行的不同的步骤。这样的实现仅是示例,在范围上并非限制。某些操作可以 组合在一起并在单个操作中执行,并且某些操作可以用与在本文所述的示例中所使用的顺 序不同的顺序被执行。此外,方法400、500、600的某些操作以一种自动的方式被执行。这些 操作大体上不涉及与用户的交互。方法400、500和600的其它操作可通过手动方式或半自动 方式进行。这些操作涉及通过一个或多个用户接口表示与用户进行交互。
[0108]在这些流程图中描述的方法可以被例如图2中的装置200执行。流程图中的操作, 以及流程中操作的组合,可以通过多种方式实现,如硬件、固件、处理器、电路和/或与软件 的执行关联的其它装置,该软件包括一个或多个计算机程序指令。例如,在各种实施例中所 描述的一个或多个过程可以通过计算机程序指令来体现。在一个示例实施例中,体现各种 实施例中所描述的过程的计算机程序指令可以由装置的至少一个存储器设备进行存储,并 被装置中至少一个处理器执行。任何这样的计算机程序指令可以被加载到计算机或其它可 编程装置(例如硬件)中以产生机器,从而,所得到的计算机或其它可编程装置体现用于实 施流程图中指定的操作的装置。这些计算机程序指令也可以被存储在计算机可读存储器 (相对于如载波或电磁信号的传输介质)中,该计算机可读存储器可以引导计算机或其它可 编程装置以特定的方式进行作用,从而,存储在计算机可读存储器中的指令产生一件产品, 该产品的执行实现流程中指定的操作。计算机程序指令也可被加载到计算机或其它可编程 装置中,以使得在计算机或其它可编程装置中执行一系列操作,以产生计算机实现的过程, 诸如指令,其在计算机或其它可编程装置上执行,提供操作以用于实现流程图中的操作。该 方法的操作借助装置200进行了描述。然而,该方法的操作可以被使用任何其它装置进行描 述和/或实现。
[0109] 不以任何方式限制下面出现的权利要求的范围、解释,或应用,本文公开的一个或 多个实施例的技术效果对减少去卷积图像的色差进行改进。提供各种实施例用于采用双边 滤波的方法和/或最小生成树的方法、基于引导图像(该引导图像和分量图像表示去卷积图 像中的多个分量图像)对分量图像执行交叉滤波,以获得具有色差减少的去卷积图像。各种 实施例提供后处理技术以有效、快速、准确的方式获得色差的显著减少,由此使得能够生成 高质量的去卷积图像。
[0110] 以上所述的不同的实施例可以在软件、硬件、应用逻辑或软件、硬件和应用逻辑的 结合中实施。该软件、应用逻辑和/或硬件可以驻留在至少一个存储器、至少一个处理器、一 个装置或一个计算机程序产品中。在一个示例实施例中,应用程序逻辑、软件或指令集可已 被保持在各种传统计算机可读介质中的任何一个之上。在本文档的上下文中,"计算机可读 介质"可以是能够包含、存储、通信、传播或传输指令以由诸如计算机的指令执行系统、装置 或设备使用、或者结合指令执行系统、装置或设备一起使用的任何媒体或部件,其中在图1 和/或2描述了装置的一个示例。计算机可读介质可以包括计算机可读存储介质,其可以是 能够包含或存储应用指令以由诸如计算机的指令执行系统、装置或设备使用、或者结合指 令执行系统、装置或设备一起使用的任何媒体或部件备。
[0111] 如果期望的话,本文讨论的不同的功能可以用不同的顺序和/或彼此同时执行。此 外,如果期望,上述功能的一个或多个功能可以是可选的,或可以被组合。
[0112] 虽然实施例的各方面都在独立权利要求中进行了陈述,其它方面包括从所述的实 施例和/或具有独立权利要求特征的从属权利要求的特征的其它组合,并且不仅仅是在权 利要要求中明确陈述的组合。
[0113] 这里还应注意,尽管上文描述了本发明的实施例,这些描述不应该被视为一种限 制。相反,在不背离如所附加权利要求中定义的本公开范围的情况下,可能有多种变形和修 改。
【主权项】
1. 一种用于图像处理的方法,包括: 促进对去卷积图像的接收,所述去卷积图像包括对应于多个图像通道的多个分量图 像; 从所述多个分量图像中选择引导图像;以及 执行对所述多个分量图像中所述引导图像以外的一个或多个分量图像的交叉滤波以 生成一个或多个经滤波的分量图像,其中执行所述交叉滤波包括迭代地执行以下操作: 在所述引导图像中选择像素和所述像素周围的相邻像素集合; 至少基于所述像素和所述相邻像素集合之间的空间差异来计算与所述相邻像素集合 对应的权重集合;以及 基于所述权重集合,对所述像素在所述分量图像中的对应像素进行滤波,以生成经滤 波的对应像素, 其中所述一个或多个经滤波的分量图像形成具有减少的色差的经滤波的去卷积图像。2. 根据权利要求1所述的方法,其中计算与所述相邻像素集合对应的所述权重集合包 括: 计算所述像素与所述相邻像素集合之间的空间差异集合; 计算所述像素与所述相邻像素集合之间的像素差异集合;以及 基于所述空间差异集合和所述像素差异集合的函数来计算所述权重集合。3. 根据权利要求2所述的方法,其中所述像素和所述相邻像素集合表示尺寸为W(宽度) XW(高度)的像素窗口。4. 根据权利要求2所述的方法,其中所述空间差异集合中的、所述像素与所述相邻像素 集合中的相邻像素之间的空间差异按照以下表达式来计算: spatial difference(k,I) = exp{-[(k~i)'2+(1-j)'2]/(2*sigma_domain'2)}, 其中(i,j)是所述像素的像素坐标,其中(k,I)是所述相邻像素集合中的所述相邻像素 的像素坐标,并且k和1中每一个的范围在_(W-l)/2到(W-l)/2之间,W是像素窗口 WxW的宽 度,并且其中sigma_domain是预定的常数。5. 根据权利要求4所述的方法,其中所述像素差异集合中的、所述像素和所述相邻像素 集合中的所述相邻像素之间的像素差异根据以下表达式来计算: pixel difference(k,I))exp{-[g(i_k,j_l)-g(i,j)]~2/(2*sigma_range~2)}, 其中g(i-k,j-l)是所述引导图像中在像素位置处的像素值,并且其中 s igma_range是预定的常数。6. 根据权利要求2或4或5所述的方法,其中所述权重集合中的、与所述相邻像素集合中 的所述相邻像素对应的权重根据以下表达式来计算: weight(k,l) = spatial differenve(k,I)*paxel difference(k,I), 其中(k,I)为所述相邻像素集合中所述相邻像素的像素坐标,并且k和I中每一个的范 围在-(W-l)/2到(W-l)/2之间,W是像素窗口 WxW的宽度。7. 根据权利要求6所述的方法,其中选择所述像素包括选择所述引导图像中的每个像 素。8. 根据权利要求7所述的方法,其中所述经滤波的对应像素根据以下表达式生成:其中g'(i-k,j-l)是所述分量图像中的所述对应像素的对应相邻像素的像素值。9. 根据权利要求1所述的方法,其中所述交叉滤波使用最小生成树的方法执行。10. 根据权利要求1所述的方法,其中所述权重集合中的、用于所述相邻像素集合中的 相邻像素的权重根据以下表达式计算:其中(k,l)是所述引导图像中的所述相邻像素的像素坐标,weight(k,l)表示具有像素 坐标(k,1)的所述相邻像素对所述经滤波的对应像素的贡献,其中D[pixeI at location (k,I) ,pixel at location(i,j)]是在位置(k,1)处的像素和位置(i,j)处的像素之间的最 小生成树距离,并且其中sigma是一个预定的常数。11. 根据权利要求10所述的方法,其中所述分量图像中的所述像素的所述经滤波的对 应像素根据以下表达式生成:其中g'(i-k,j_l)是所述分量图像中的所述对应像素的对应相邻像素的像素值。12. 根据权利要求1所述的方法,其中所述多个分量图像包括亮度图像(Y)、蓝色度图像 (Cb)和红色度图像(Cr)。13. 根据权利要求12所述的方法,其中促进对所述去卷积图像的接收包括: 将包括作为分量图像的红图像(R)、绿图像(G)和蓝图像(B)的输入去卷积图像转换成 包括Y分量图像、Cb分量图像和Cr分量图像的所述去卷积图像。14. 根据权利要求1所述的方法,其中所述多个分量图像包括亮度图像(Y)、第一颜色差 图像(Pb)和第二颜色差图像(Pr)。15. -种用于图像处理的装置,包括: 用于促进对去卷积图像的接收的部件,所述去卷积图像包含与多个图像通道对应的多 个分量图像; 用于从所述多个分量图像中选择引导图像的部件;以及 用于执行对所述多个分量图像中除了所述引导图像以外的一个或多个分量图像的交 叉滤波以生成一个或者多个经滤波的分量图像的部件,其中为迭代地执行对所述一个或多 个分量图像中的分量图像的所述交叉滤波,所述装置进一步包括: 用于在所述引导图像中选择像素和所述像素周围的相邻像素集合的部件; 用于至少基于所述像素与所述相邻像素集合之间的空间差异来计算与所述相邻像素 集合对应的权重集合的部件;以及 用于基于所述权重集合对所述像素在所述分量图像中的对应像素进行滤波,以在所述 分量图像中生成经滤波的对应像素的部件, 其中所述一个或多个经滤波的分量图像形成具有减少的色差的经滤波的去卷积图像。16. 根据权利要求15所述的装置,其中为计算与所述相邻像素集合对应的所述权重集 合,所述装置进一步包括: 用于计算所述像素与所述相邻像素集合之间的空间差异集合的部件; 用于计算所述像素与所述相邻像素集合之间的像素差异集合的部件;以及 用于基于所述空间差异集合和所述像素差异集合的函数来计算所述权重集合的部件。17. 根据权利要求16所述的装置,所述像素和所述相邻像素集合表示尺寸为W(宽度)X W(高度)的像素窗口。18. 根据权利要求16所述的装置,其中所述空间差异集合中的、所述像素与所述相邻像 素集合中的所述相邻像素之间的空间差异根据以下表达式来计算: spatial difference(k,I) = exp{-[(k~i)'2+(1-j)'2]/(2*sigma_domain'2)}, 其中(i,j)是所述像素的像素坐标,其中(k,I)是所述相邻像素集合中的所述相邻像素 的像素坐标,并且k和1中每一个的范围在_(W-l)/2到(W-l)/2之间,W是像素窗口 WxW的宽 度,其中sigma_domain是预定的常数。19. 根据权利要求18所述的装置,其中所述像素差异集合中的、所述像素和所述相邻像 素集合中的所述相邻像素之间的像素差异根据以下表达式来计算: pixel difference(k,I))exp{-[g(i_k,j_l)-g(i,j)]~2/(2*sigma_range~2)}, 其中g(i-k,j-l)是所述引导图像中在像素位置处的像素值,并且其中 s igma_range是预定的常数。20. 根据权利要求16所述的装置,其中所述权重集合中的、与所述相邻像素集合中的相 邻像素对应的权重根据以下表达式来计算: weight(k,l) = spatial differenve(k,I)*paxel difference(k,I), 其中(k,I)为所述相邻像素集合中的所述相邻像素的像素坐标,并且k和I中每一个的 范围在-(W-l)/2到(W-l)/2之间,W是像素窗口 WxW的宽度。21. 根据权利要求20所述的装置,其中为选择所述像素,所述装置进一步包括: 用于选择所述引导图像中的每个像素的部件。22. 根据权利要求21所述的装置,其中所述经滤波的对应像素根据以下表达式生成:其中g'(i-k,j_l)是所述分量图像中的所述对应像素的对应相邻像素的像素值。23. 根据权利要求15所述的装置,其中所述交叉滤波使用最小生成树方法执行。24. 根据权利要求15所述的装置,其中所述权重集合中的用于所述相邻像素集合中的 相邻像素的权重根据以下表达式计算:其中(k,l)是所述引导图像中的所述相邻像素的像素坐标,weight(k,l)表示具有像素 坐标(k,1)的所述相邻像素对所述经滤波的对应像素的贡献,其中D[pixeI at location (k,l) ,pixel at location(i,j)]是位置(k,l)处的像素和位置(i,j)处的像素之间的最小 生成树距离,并且其中sigma是预定的常数。25. 根据权利要求24所述的装置,其中所述像素在所述分量图像中的所述经滤波的对 应像素根据以下表达式生成:其中g'(i-k,j-l)是所述分量图像中的所述对应像素的对应相邻像素的像素值。26. 根据权利要求15所述的装置,其中所述去卷积图像的所述多个分量图像包括亮度 图像(Y)、蓝色度图像(Cb)和红色度图像(Cr)。27. 根据权利要求26所述的装置,其中为促进对所述去卷积图像的接收,所述装置进一 步包括: 用于将包括作为分量图像的红图像(R)、绿图像(G)和蓝图像(B)的输入去卷积图像转 换成包括Y分量图像、Cb分量图像和Cr分量图像的所述去卷积图像的部件。28. 根据权利要求15所述的方法,其中所述去卷积图像的所述多个分量图像包括亮度 图像(Y)、第一颜色差图像(Pb)和第二颜色差图像(Pr)。29. 根据权利要求15-28中的任一项所述的装置,其中所述装置包括电子设备,所述电 子设备包括: 用于促进用户通过使用显示器来控制所述电子设备的至少一个功能、以及进一步被配 置为对用户输入进行响应的部件;以及 用于显示所述电子设备的用户接口的至少一部分的部件,所述显示器和所述显示电路 被配置为促进所述用户控制所述电子设备的至少一个功能。30. 根据权利要求29所述的装置,其中所述电子设备包括图像传感器,所述图像传感器 被配置为捕捉图像以用于生成所述去卷积图像。31. 根据权利要求30所述的装置,其中所述电子设备包括移动电话。32. -种装置,被配置为执行如权利要求1-14中的任一项所述的方法。
【文档编号】H04N5/14GK105933595SQ201610109470
【公开日】2016年9月7日
【申请日】2016年2月26日
【发明人】G·普特拉亚, K·A·戈文达拉奥, M·尤利雅, B·斯维
【申请人】诺基亚技术有限公司