CN106663329A - 图形基元和颜色通道 - Google Patents

图形基元和颜色通道 Download PDF

Info

Publication number
CN106663329A
CN106663329A CN201580048982.4A CN201580048982A CN106663329A CN 106663329 A CN106663329 A CN 106663329A CN 201580048982 A CN201580048982 A CN 201580048982A CN 106663329 A CN106663329 A CN 106663329A
Authority
CN
China
Prior art keywords
primitive
pixel
type
view data
graphic primitive
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.)
Granted
Application number
CN201580048982.4A
Other languages
English (en)
Other versions
CN106663329B (zh
Inventor
F.岳
J.A.哈钦斯
P.马亚孔特拉
E.O.彼得森
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.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Technology Licensing LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Technology Licensing LLC filed Critical Microsoft Technology Licensing LLC
Publication of CN106663329A publication Critical patent/CN106663329A/zh
Application granted granted Critical
Publication of CN106663329B publication Critical patent/CN106663329B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/001Texturing; Colouring; Generation of texture or colour
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
    • G06K15/02Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
    • G06K15/18Conditioning data for presenting it to the physical printing elements
    • G06K15/1867Post-processing of the composed and rasterized print image
    • G06K15/1872Image enhancement
    • G06K15/1878Adjusting colours
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/40Filling a planar surface by adding surface attributes, e.g. colour or texture
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/02Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the way in which colour is displayed
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2210/00Indexing scheme for image generation or computer graphics
    • G06T2210/32Image data format
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2320/00Control of display operating conditions
    • G09G2320/06Adjustment of display parameters
    • G09G2320/0613The adjustment depending on the type of the information to be displayed
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2320/00Control of display operating conditions
    • G09G2320/06Adjustment of display parameters
    • G09G2320/066Adjustment of display parameters for control of contrast
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2340/00Aspects of display data processing
    • G09G2340/04Changes in size, position or resolution of an image
    • G09G2340/0457Improvement of perceived resolution by subpixel rendering
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2340/00Aspects of display data processing
    • G09G2340/10Mixing of images, i.e. displayed pixel being the result of an operation, e.g. adding, on the corresponding input pixels

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Image Generation (AREA)
  • Image Processing (AREA)

Abstract

描述了图形基元和颜色通道技术。在一个或多个实现中,由计算设备对图像数据进行处理以形成多个像素和对应的一个或多个颜色通道,所述颜色通道可用于为相应的所述像素定义颜色。由计算设备标识与经处理的图像数据中的像素的一个或多个相关联的图形基元类型。由计算设备使用至少一个颜色通道将所述图形基元类型指派给所述一个或多个像素。

Description

图形基元和颜色通道
背景技术
诸如矢量化文档的图像数据可以被配置成包括各种各样的内容。例如,内容可以包括图形基元(graphics primitive),诸如图像图形基元、文本、笔触(brush strokes)等等。然而,被利用来光栅化图像数据的常规技术不在图像数据中的这些类型的图形基元之间进行区分,因为还没有已建立的常规机制用来经过图像编码去辨别图像数据的起源。
因此,这种光栅化的图像数据的常规消费者在渲染(render)内容时通常以单一方式来处置该图像数据,例如,与处置文本图形基元一样地处置图像图形基元。因此,这些常规技术经常牵涉到对于渲染在内容的类型之间进行平衡,当面对在单个图像数据的集合中的各种各样的内容时,其问题可能加剧。
发明内容
描述了图形基元和颜色通道技术。在一个或多个实现中,由计算设备对图像数据进行处理以形成多个像素和对应的一个或多个颜色通道,所述颜色通道可用于为相应像素定义颜色。由计算设备标识与经处理的图像数据中的像素的一个或多个相关联的图形基元类型。由计算设备使用至少一个颜色通道将图形基元类型指派给一个或多个像素。
在一个或多个实现中,系统包括至少部分地以硬件实现的一个或多个模块。所述一个或多个模块被配置成执行操作,所述操作包括接收具有多个颜色通道的图像数据,所述颜色通道定义要用于该图像数据中的相应像素的颜色,并且至少一个颜色通道定义其中包括相应像素的图形基元的类型。所述操作还包括至少部分地基于所定义的用于像素的图形基元的类型以及所定义的通过多个颜色通道描述的颜色来渲染图像数据的像素。
在一个或多个实现中,系统包括至少部分地以硬件实现的一个或多个模块。所述一个或多个模块被配置成执行操作,所述操作包括确定与图像数据中的多个像素相关联的图形基元类型,以及使用多个颜色通道中的至少一个将所述图形基元类型指派给所述多个像素,所述多个颜色通道还定义用于所述多个像素中的相应像素的颜色。
本概要被提供来以简化的形式介绍概念的选择,这些概念将在以下的详细说明中进一步描述。本概要既不打算标识所要求保护的主题的关键特征或必要特征,也不打算用于帮助确定所要求保护的主题的范围。
附图说明
参考附图来对详细描述进行说明。在附图中,参考标号的最左边的数字标识该参考标号首次在其中出现的附图。在说明书和附图的不同实例中使用相同的参考标号可以指示相似或相同的项目。附图中表示的实体可以指示一个或多个实体,并且因此在讨论中可以对单数或复数形式的实体进行互换地参考。
图1是可操作来执行图形基元和颜色通道技术的示例实现中的环境的图示。
图2描绘了示例实现中的系统,其将图1的图形基元模块更详细地示出为将图形基元类型编码为图像数据的一部分。
图3描绘了示例实现中的系统,在该系统中把标识符与经处理的图像数据相关联,这些标识符指示被包括在所述经处理的图像数据中的基元。
图4描绘了示例实现中的系统,其将图1的图形基元模块更详细地示出为解码具有定义的像素和相关联的图形基元类型的图像数据以供渲染。
图5是描绘示例实现中的过程的流程图,在其中处理图像数据,使得像素具有一个或多个图形基元类型的对应指示。
图6是描绘示例实现中的过程的流程图,在其中包括图形基元类型的指示的图像数据被渲染。
图7图示了包括示例设备的各种组件的示例系统,该示例设备可以被实现为如参考图1-6描述的、用来实现本文所描述技术的实施例的任何类型的计算设备。
具体实施方式
概述
描述了图形基元和颜色通道技术。在一个或多个实现中,描述了用于对图像数据(例如,矢量化文档)进行光栅化的技术,其包括对光栅化图像数据中的图形基元的类型的标识,图形基元是诸如图像图形基元(例如,捕获的照片)、文本、字形(glyph)、矢量和其他类型的图形基元,比如模仿画出的笔触的、划出的画笔线(stroked brush lines)。例如,可以处理图像数据以形成多个像素并且利用相应的颜色通道来描述像素的颜色,例如红色、绿色和蓝色通道。还可以处理图像以利用另一颜色通道来描述与像素相关联的图形基元的类型(例如,基元文档构造)。以这种方式,可以以知晓图像中每个像素表示什么的方式来执行图像中的像素的后续渲染。
例如,图形基元和颜色通道技术因此可以解决与打印或显示光栅化图像内容相关联的质量问题。因为常规光栅化图像中的内容仅仅被形成为有色像素的汇集,所以不可能使用常规技术来让用户针对这样的因素来优化图像数据的显示,所述因素类似:当前环境光的清晰可辨性(legibility)、对比度(例如,用于视觉受损的个人)、打印机墨水选择(例如,复合黑色对比真黑色墨水/墨粉),或者要被应用于图像数据的页面的墨水浓度。然而,通过利用本文描述的技术,通过标识像素表示“什么”图形基元而使得这些优化成为可能。对这些和其他示例的进一步讨论可以在以下部分中找到。在下面的讨论中,“基元”的使用也指“图形基元”。
在下面的讨论中,首先描述可以采用本文描述的图形基元和颜色通道技术的示例环境。然后描述可以在示例环境中以及其他环境中被执行的示例过程。因此,示例过程的执行不限于示例环境,并且示例环境不限于示例过程的执行。
示例环境
图1是示例实现中的环境100的图示,其可操作来采用本文所描述的图形基元和颜色通道技术。所图示的环境100包括计算设备102,其可以按各种各样的方式配置。例如,计算设备可以被配置为能够通过网络进行通信的计算机,诸如台式计算机、移动站、娱乐器具、通信地耦合到显示设备的机顶盒、无线电话、游戏控制台等。
因此,计算设备102的范围可以从具有大量存储器和处理器资源的全资源设备(例如,个人计算机、游戏控制台)到具有有限存储器和/或处理资源的低资源设备(例如,传统机顶盒、手持游戏控制台)。另外,尽管示出了单个计算设备102,但是计算设备102可以代表多个不同的设备,诸如由企业利用来比如通过web服务执行操作的多个服务器、遥控器与机顶盒组合、被配置来捕获手势的图像捕获设备与游戏控制台等。
计算设备102被图示为包括各种各样的硬件组件,其示例包括处理系统104、被图示为存储器106的计算机可读存储介质的示例、显示设备108等等。处理系统104代表通过执行存储在存储器106中的指令来完成操作的功能性。虽然分开地图示,但是这些组件的功能性可以在不偏离其精神和范围的情况下被进一步地划分、组合(例如,在专用集成电路上)等等。
计算设备102还被图示为包括操作系统110。操作系统110被配置成将计算设备102的底层功能性抽象到在计算设备102上可执行的应用112。例如,操作系统110可以对诸如处理系统104、存储器106、网络114和/或显示设备108的硬件组件的功能性以及计算设备102的软件功能性进行抽象,使得可以在不知道“如何”实现这个底层功能性的情况下编写应用112。例如,应用112可以向操作系统110提供数据以由显示设备108或打印机116进行渲染和显示,而无需理解将如何执行该渲染。操作系统110还可以表示各种各样的其他功能性,诸如管理可由计算设备102的用户导航的文件系统和用户界面。
操作系统110的抽象的功能性的示例被表示为图形基元模块118。尽管被图示为操作系统110的一部分,但是图形基元模块118的功能性可以按各种各样的其它方式实现,诸如以独立的模块的方式、以硬件方式、作为应用112的一部分等等来实现。
图形基元模块118代表计算设备102的、有关通过借力(leverage)被包括在图像数据120中的图形基元122来标识、编码和解码图像数据120的功能性。图像数据120的示例由显示设备108来显示,显示设备108例如是矢量化文档的显示器。在该示例中,图像数据120包括描绘具有狗的森林场景的图像图形基元124,其例如由图像捕获设备(例如,相机)捕获、由用户虚拟地生成等等。图像数据120还包括笔触基元126,诸如通过显示设备108的触摸屏功能性而从用户的手的手指、触控笔等检测到的文本的绘制。图像数据120中还可包括图形基元的其它示例,如关于图2进一步描述的。因此,图像数据120可以包括各种各样不同类型的图形基元122。如前所述,被利用于渲染这样的图形基元的常规技术不支持在正由像素表示什么之间进行区分,例如不在图像图形基元124和笔触基元126之间进行区分。
然而,图形基元模块118可以通过显露包括在图像数据120中的图形基元122的知识而支持各种各样的功能性,诸如用来解决与由显示设备108和/或打印机116渲染光栅化图像内容相关联的质量问题。如前所述,因为光栅化图像数据120中的内容仅仅被形成为有色像素的汇集,所以不可能使用常规技术来针对这样的因素优化图像数据120,所述因素类似:当前环境光的清晰可辨性、用于视觉受损个人的对比度、打印机墨水选择(复合黑色对比真黑色墨水/墨粉),或应被应用到页面的墨水浓度等。
然而,通过将基元122描述为图像数据120的一部分,图形基元模块118可以支持一种图像格式,其通过与图形基元122——比如所图示示例中图像数据120的笔触基元126——的关联而对由像素描述的内容的类型进行描述。例如,打印机116可以使用该知识来改变墨粉的量、为图像图形基元124选择不同类型的墨水——比如“照片黑”而不是“黑”,等等。在显示技术的情况下,显示设备108可以改变所渲染的图像数据120的对比度、对某些种类的内容应用不同种类的子像素渲染以便最大化可读性等等。对图像数据120和基元122的进一步描述可以在以下的讨论中找到,并且被示出在对应的图中。
图2描绘示例实现中的系统200,其将图1的图形基元模块118更详细地示出为将图形基元类型编码为图像数据120的一部分。在此示例中,图形基元模块118被配置成:确定对于通过光栅化图像数据120而生成的像素的图形基元122类型,例如矢量化文档或图像;并且将该图形基元类型编码为用于基于位图的图像格式、页面描述语言等的颜色编码的一部分。
图形基元模块118例如可以接收要被光栅化以便如前所述由显示设备108或打印机116渲染的图像数据120。图像数据120可以采取各种各样的形式,诸如指定了图形基元的类型的矢量文档或其他类型的文档、图像、文件等。
然后采用光栅化模块202来光栅化图像数据120以供输出。光栅化模块202例如可以被配置成将图像数据120的格式转换成具有多个像素206的经处理的图像数据204。另外,可以使用一个或多个颜色通道208来描述像素206中的每一个的颜色,所述颜色通道208诸如是红色、绿色、蓝色(RGB)颜色通道;青色、品红色、黄色和另一颜色(比如黑色)(CMYK)颜色通道;色度饱和度纯度(hue saturation value)颜色通道;包括使用α通道来存储透明度信息;等等。
基元标识模块210然后可以被图形基元模块118利用来标识包括在图像数据120中的图像基元122。图像数据120例如可以被配置成定义图形基元类型212本身。例如,矢量文档可以包括定义的图形基元类型作为图像数据120的一部分,图形基元类型诸如是文本214、字形216、矢量218、图像220图形基元或其他222的类型(例如,划出的画笔/线)。还设想了其他示例,比如作为可移植文档格式(PDF)的一部分而被编码为字形的文本。
因此,基元标识模块210可以利用该标识作为图像数据120的一部分来定位图像数据120中的所述类型的对象,并照此标识经处理的图像数据204的对应像素206。以此方式,经处理的图像数据204中的像素206可具有指派给那些像素的对应图形基元类型,使得渲染器(例如,图形处理单元、显示设备108、打印机116等等)可以知晓像素206正表示“什么”。
图形基元类型212的标识可以按各种各样的方式来执行。经处理的图像数据204例如可以被配置为基于位图的图像格式,其具有如前所述的使用颜色通道208为像素206指派的颜色。这个协定(convention)可以扩展成包括被利用来为相应像素206标识图形基元类型212的另一个颜色通道。例如,经处理的图像数据204中的特定图形基元类型212的像素可以被映射到被用来标识图形基元类型212的颜色通道208的某个特定“颜色”。以这种方式,图像数据120(比如矢量文件)可以被光栅化来分离出特定种类的图形基元类型(例如,基元文档构造)并被组合成单个的元数据编码的光栅化位图文档,其示例被示为由图形基元模块118输出的经处理的图像数据204。
对于以每通道八位编码的、具有内置二十四位颜色信息的标准红、绿、蓝(sRGB)图像数据,可以使用用于元数据的附加颜色通道来编码相同的sRGB图像数据,附加颜色通道描述图形基元类型212,例如,其可被用来描述并发的元数据的八位标志,对于每一像素206中的内容是28种可能的独特类型,等等。因此,在该示例中,图形基元类型212可以被组合为颜色通道208的一部分,以描述经处理的图像数据204中的像素的颜色以及像素206的图形基元类型212。技术也可以被利用来提高渲染经处理的图像数据的效率,其示例可以在以下讨论中找到并在相应的附图中示出。
图3描绘了示例实现中的系统300,其中标识符与经处理的图像数据204相关联,该标识符指示被包括在经处理的图像数据204中的图形基元。在该示例中,经处理的图像数据204包括如前所述的像素206,所图示的它的示例包括图像图形基元124的具有狗的森林场景和在其中绘制姓名的笔触基元126。
在该示例中,经处理的图像数据204还包括与其相关联的全局基元标识符302和块基元标识符304。全局基元标识符302表示与经处理的图像数据204相关联的指示,用以全局地指示与作为整体的经处理的图像数据204(例如,每一页面)相关联的基元。例如,全局基元标识符302可以支持用于编码每页面/每图形基元类型的技术,其中内容不变化。在想要关于在经处理的图像数据204的页面上是否存在文本以及是否不存在文本的信息的系统中,例如,页面或图像的题头可以包括将该页面描述为仅仅包括特定类型的图形基元的元数据。以这种方式,可以避免当经处理的图像数据204的内容有相同的图形基元类型时在每个像素的颜色编码中包括额外的元数据,例如避免使用附加的颜色通道,从而节省计算设备102资源。
可以在逐块的基础上采用类似的功能性,正如由块基元标识符304表示的。如针对经处理的图像数据204所图示的,例如,八个块的汇集306包括图像图形基元124和笔触基元126 (例如,在不同层),而经处理的图像数据204中的每个其它块仅仅包括图像图形基元124。因此,像上文那样,可以避免当经处理的图像数据204的内容对于该块有相同图形基元类型时在每个像素的颜色编码中包括附加的元数据,例如避免使用附加的颜色通道,从而节省计算设备资源。虽然在附图中以虚线(phantom)图示出了大体正方形的块,但是应当容易明显的是,块可以采取各种各样的形状和大小,例如块可以被形成为经处理的图像数据204的一连串水平带条。
像素206还可具有与其相关联的混合值306,其指示在形成该像素时不同图形基元的贡献量。经处理的图像数据204例如可以包括多个层,使得图形基元124处在与笔触基元126分开的层上。因此,图形基元模块118可以检查不同的图形基元以便指派混合值306,混合值306指示那些层的贡献,其可作为经处理的图像数据204的一部分而被传送。在另一示例中,混合值306可以连同阈值一起被利用来将图形基元类型212指派给像素206,例如为像素206指派单个图形基元类型212、定义贡献是否大到足以在定义图形基元类型时予以考虑,等等。
图4描绘了示例实现中的系统400,系统400将图1的图形基元模块118更详细地示出为解码具有定义的像素206和相关联的图形基元类型212的图像数据120以供渲染。在该示例中,图形基元模块118被图示为接收图3的经处理的图像数据204。
图形基元模块118然后可以利用标识器模块402来标识经处理的图像数据204是否包括全局基元标识符302、块基元标识符304,并且相应地作出反应。例如,在渲染器对优化在经处理的图像数据204的页面上的文本感兴趣的情况下,页面的题头可以包括全局基元标识符302以作为元数据,其将页面描述为包括文本、描述为仅仅图像图形基元,等等。以这种方式,对经处理的图像数据204的处理可以在不包括期望的图形基元类型的这样一种情况下被进一步跳过、可以在包括期望的图形基元类型时执行等等。在基于块基元标识符304对块进行处理时可以利用类似的技术。
如果包含感兴趣的图形基元类型,则经处理的图像数据204可以接着被图像渲染模块404处理来作为渲染的一部分,以便由打印机116或显示设备108以如下方式输出:借力为经处理的图像数据204中的像素206指定的图形基元类型212,可以借力混合值306来确定图形基元类型212的贡献,等等。例如,打印机116可以使用该知识来变化墨粉的量、为图像图形基元124选择不同类型的墨水——比如是“照片黑”而不是“黑”,等等。在显示技术的情况下,显示设备108可以针对不同图形基元改变所渲染的图像数据120的对比度、对某些种类的内容应用不同种类的子像素渲染以便最大化可读性,等等。
示例过程
以下的讨论描述了可以利用先前描述的系统和设备来实现的图形基元和颜色通道技术。这些过程的每个的诸方面可以在硬件、固件或软件或其组合中实现。过程被示出为一组方框,这些方框指定由一个或多个设备执行的操作,并且这些操作不一定限于所示的、用于由相应的方框执行所述操作的顺序。在以下讨论的部分中,将参考上文描述的附图。
关于图1-4的示例所描述的功能性、特征和概念可被用在本文所描述的过程的上下文中。此外,以下关于不同过程所描述的功能性、特征和概念可以在不同过程之间互换,并且不限于在单个过程的上下文中实现。此外,与本文中不同的代表性过程和对应的附图相关联的方框可以按不同的方式被一起应用和/或被组合。因此,关于本文中的不同示例环境、设备、组件和过程所描述的各个功能性、特征和概念可以以任何合适的组合来使用,并且不限于由所列举的示例所表示的特定组合。
图5描绘了示例实现中的过程500,其中图像数据被处理成使得像素具有一个或多个图形基元类型的对应指示。图像数据由计算设备处理以形成多个像素和可用于定义相应像素的颜色的对应的一个或多个颜色通道(方框502)。图像数据例如可以被配置为矢量化文档并且由图形基元模块118处理成具有多个像素的位图或页面描述语言,每个像素具有由诸如sRGB的颜色通道定义的颜色。
由计算设备确定与经处理的图像数据中的像素的一个或多个相关联的图形基元类型(方框504)。继续前面的示例,图形基元模块118可以在“第二遍”光栅化过程中检查矢量文档,以确定与每个像素相关联的一个或多个图形基元类型,诸如该像素是否与文本(例如字形)、矢量、图像图形基元或其他图形基元类型212相关联。
由计算设备使用至少一个颜色通道将图形基元类型关联到一个或多个像素(方框506)。图形基元模块118例如可以将不同的图形基元类型与附加颜色通道的不同“颜色”相关联,以使这些颜色表示图形基元类型。然后可以利用该附加通道中的、表示图形基元类型的这些“颜色”来将一种类型的图形基元指派给相关联的像素。
还可以将混合值指派给该至少一个像素,指示多个图形基元类型对所述至少一个像素的贡献量(方框508)。然后,混合值可以被使用作为渲染过程的一部分,比如来判定如何表示像素,例如,通过使用针对文本优化特征的阈值来判定该像素是“文本足够(textenough)”的。
例如,在8位sRGB中,不是文本的蓝色像素可以被编码为“0x0000FF”,而在包括元数据的定制的颜色格式中,其可以被编码为可指示文本基元的“0x0000FF01”或可指示图像图形基元的“0x0000FF02”,等等。另外,混合值可以描述两个不同项之间的α混合的比率。例如,元数据通道的第一个4位可以被定义为混合比,而第二个4位被定义为内容类型。在这种情况下,作为文本和图像的50%混合的蓝色像素可以被表示为“0x0000FF83”。
图形基元模块118还可以标识图像的像素汇集和对应的图形基元类型。例如,全局基元标识符可以与经处理的图像数据相关联,指示经处理的图像包括一种或多种类型的图形基元(方框510)。以这种方式,在渲染期间,如果为特定的图形基元类型配置了优化过程,并且该类型未被包括在页面中,则该页面可以被从进一步的处理跳过,从而节省了计算设备102的资源。以类似的方式,可标识经处理的图像中的多个块,并且块基元标识符与所述块中的至少一个相关联,指示在该至少一个块中所包括的一种或多种类型的基元(方框512)。因此,渲染过程且甚至是编码过程可以使用这些指示来确定是否在编码场景中使用颜色通道来指示该块的图形基元类型、是否在渲染场景中执行优化,等等。因此,在该示例中,可以利用全局和块基元标识符来提高渲染效率。如前所述,这些标识符还可以被采用来提高编码效率,比如对于作为整体的矢量化文档的被标识的块或甚至页面,来确定是否对这些块采用编码(例如,使用附加的颜色通道)。因此,在这样的实例中,这些功能可以在方框502-508的功能之前初始地由图形基元模块118执行。
图6描绘了示例实现中的过程600,在该过程中渲染包括图形基元类型的指示的图像数据。接收具有多个颜色通道的图像数据,所述颜色通道定义要被用于图像数据中的相应像素的颜色,并且至少一个颜色通道定义其中包括该相应像素的图形基元的类型(方框602)。如前所述,图像数据中的颜色通道可被利用于描述与像素相关联的颜色以及其中包括该像素的图形基元的类型,诸如文本、字形、矢量、图像或其他图形基元类型212。
至少部分地基于通过多个颜色通道描述的、针对像素所定义的图形基元的类型和所定义的颜色来渲染图像数据的像素(方框604)。例如,作为(例如由与打印机116相关联的驱动器或硬件进行的)渲染的一部分,打印机116可以使用该知识来变化墨粉的量、为图形基元124选择不同类型的墨水——比如是“照片黑”而不是“黑”,等等。在显示技术的情况下,显示设备108可以改变所渲染的图像数据120的对比度、对某些种类的内容应用不同种类的子像素渲染以便最大化可读性,等等。在不脱离本发明的精神和范围的情况下,还可以设想各种各样的其他优化。
一般方法伪代码
以下是描述使用基元的一般方法的伪代码的示例。
PrimitivesToMark = {文本,图像}
If (文档包含PrimitivesToMark) {
  对于支持区域级别元数据的矢量文档的每个区域{
   取区域
   If (区域包含PrimitivesToMark) {
    对于区域中的每个基元 {
     如果基元是在PrimitivesToMark中 {
      将基元的界限存储到MarkedBoundaries
     }
    }
    设置区域颜色编码以包括元数据通道
    ColorizedRaster = 以目标DPI光栅化
    MetadataRaster = 使用基元光栅化 ->以目标DPI进行颜色映射
   对于ColorizedRaster中的每个像素{
    If (像素是在MarkedBoundaries中)
     Mergedaster[pixel]= CombinePixels(ColorizedRaster[pixel],
     MetadataRaster [pixel])
         } Else {
           MergedRaster[pixel] = ConvertPixelToDefaultEncoding(ColorizedRaster [pixel] )
         }
      }
      写输出
    } else {
       将区域标记为默认类型
       将区域设置为默认颜色编码
       以目标DPI光栅化区域
       写输出
   }
  }
} else {
   将文档和/或多个区域标记为默认类型
   将文档和/或多个区域标记为默认颜色编码
   以目标DPI光栅化文档或多个区域
   写输出
}
应用于打印的一般方法的示例
以下是描述使用被应用于打印的上述基元的一般方法的伪代码的示例。示例打印机描述语言,PWG Raster [PWG-5102.4-2012]支持关于图像编码的页面级元数据,因此在可以被优化的这样的示例中可用的最小区域是针对整个页面的。其他行业标准,类似PCLm [WFAWFDS-Print vl .0],使用被单独编码的多个带条,因此通过借力本文所描述的技术可以每带条发生优化。
PrimitivesToMark = {文本}
If (文档包含PrimitivesToMark) {
  对于每个页面 {
    If (页面包含PrimitivesToMark) {
      对于页面中的每个基元 {
       如果基元是在PrimitivesToMark中 {
        将基元的界限存储到MarkedBoundaries
       }
      }
      设置页面颜色编码以包括元数据通道
      ColorizedRaster = 以目标DPI光栅化
      MetadataRaster = 使用基元光栅化 ->以目标DPI进行颜色映射
    对于ColorizedRaster中的每个像素{
      If (像素是在MarkedBoundaries中)
      MergedRaster[pixel] = CombinePixels(ColorizedRaster[pixel],
MetadataRaster [pixel])
         } Else {
                   MergedRaster[pixel] =ConvertPixelToDefaultEncoding(ColorizedRaster[pixel] )
         }
      }
      写输出
    } else {
       将页面标记为默认类型
       将页面设置为默认颜色编码
       以目标DPI光栅化页面
       写输出
   }
  }
} else {
   将所有页面标记为默认类型
   将所有页面标记为默认颜色编码
   以目标DPI光栅化文档或多个区域
   写输出
}
示例系统和设备
图7总地在700处图示了包括示例计算设备702的示例系统,示例计算设备702代表可以实现本文所描述的各种各样的技术的一个或多个计算系统和/或设备。其示例通过包括图形基元模块118而被图示。计算设备702可以是例如服务提供者的服务器、与客户端相关联的设备(例如,客户端设备)、片上系统和/或任何其他合适的计算设备或计算系统。
所图示的示例计算设备702包括彼此通信地耦合的处理系统704、一个或多个计算机可读介质706和一个或多个I / O接口708。尽管未示出,但是计算设备702还可以包括将各种组件彼此耦合的系统总线或其他数据和命令传送系统。系统总线可以包括不同总线结构的任何一个或组合,诸如存储器总线或存储器控制器、外围总线、通用串行总线和/或利用各种各样的总线架构中的任一种的处理器或本地总线。还设想了各种各样的其他示例,比如控制线和数据线。
处理系统704代表使用硬件执行一个或多个操作的功能性。因此,处理系统704被图示为包括可以被配置为处理器、功能块等的硬件元件710。这可以包括以硬件来实现为使用一个或多个半导体形成的专用集成电路或其他逻辑器件。硬件元件710不受形成它们的材料或其中所采用的处理机制的限制。例如,处理器可以包括(多个)半导体和/或晶体管(例如,电子集成电路(IC))。在这样的上下文中,处理器可执行指令可以是电子地可执行的指令。
计算机可读存储介质706被图示为包括存储器/存储装置712。存储器/存储装置712表示与一个或多个计算机可读介质相关联的存储器/存储装置容量。存储器/存储装置组件712可以包括易失性介质(诸如随机存取存储器(RAM))和/或非易失性介质(诸如只读存储器(ROM)、闪存、光盘、磁盘等)。存储器/存储装置组件712可以包括固定介质(例如,RAM、ROM、固定硬盘驱动器等)以及可拆卸介质(例如,闪存、可拆卸硬盘驱动器、光盘等)。计算机可读介质706可以以下面进一步描述的各种各样的其它方式进行配置。
(多个)输入/输出接口708代表允许用户向计算设备702输入命令和信息、并且还允许使用各种输入/输出设备向用户和/或其他组件或设备呈现信息的功能性。输入设备的示例包括键盘、光标控制设备(例如,鼠标)、话筒、扫描仪、触摸功能性(例如,被配置成检测物理触摸的电容或其他传感器)、相机(例如,其可以采用比如红外频率这样的可见或不可见波长来将运动识别为手势,其不涉及触摸)等。输出设备的示例包括显示设备(例如,监视器或投影仪)、扬声器、打印机、网卡、触觉响应设备等。因此,计算设备702可以以下面进一步描述的各种各样的方式被配置来支持用户交互。
在本文中,可以在软件、硬件元件或程序模块的一般上下文中描述各种技术。通常,这样的模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、元件、组件、数据结构等。当在本文中使用时,术语“模块”、“功能性”和“组件”通常表示软件、固件、硬件或其组合。本文所描述的技术的特征是与平台无关的,这意味着这些技术可以在具有各种各样处理器的各种各样商用计算平台上实现。
所描述的模块和技术的实现可以被存储在某种形式的计算机可读介质上、或可以跨某种形式的计算机可读介质来传送。计算机可读介质可以包括可由计算设备702访问的各种各样的介质。作为示例而非限制,计算机可读介质可以包括“计算机可读存储介质”和“计算机可读信号介质”。
与仅仅信号传输、载波或信号本身相反,“计算机可读存储介质”可以指使能信息的持久和/或非暂时存储的介质和/或设备。因此,计算机可读存储介质是指非信号承载介质。计算机可读存储介质包括诸如易失性和非易失性、可拆卸和不可拆卸的介质和/或存储设备的硬件,其以适合于存储诸如计算机可读指令、数据结构、程序模块、逻辑元件/电路或其他数据这样的信息的方法或技术实现。计算机可读存储介质的示例可以包括但不限于RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字通用盘(DVD)或其他光学存储装置、硬盘、磁带盒、磁带、磁盘存储装置或其他磁性存储设备、或适合于存储所期望的信息并可由计算机访问的其他存储设备、有形介质或制品。
“计算机可读信号介质”可以指被配置成比如经由网络向计算设备702的硬件传送指令的信号承载介质。信号介质通常可以将计算机可读指令、数据结构、程序模块或其他数据体现在调制的数据信号中,诸如载波、数据信号或其它传输机制中。信号介质还包括任何信息传递介质。术语“调制的数据信号”是指使它的特性中的一个或多个以将信息编码在信号中这样的方式设置或改变的信号。作为示例而非限制,通信介质包括有线介质和无线介质,有线介质是诸如有线网络或直接有线连接,而无线介质是诸如声学、RF、红外和其他无线介质。
如前所述,硬件元件710和计算机可读介质706代表以硬件形式实现的模块、可编程设备逻辑和/或固定设备逻辑,其可以在一些实施例中被采用来实现本文所描述的技术的至少一些方面,比如用来执行一个或多个指令。硬件可以包括以下组件:集成电路或片上系统、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、复杂可编程逻辑器件(CPLD)以及在硅或其他硬件中的其他实现。在这个上下文中,硬件可以作为处理设备来操作,处理设备执行通过由该硬件以及被利用来存储指令以供执行的硬件(例如,先前描述的计算机可读存储介质)包含的指令和/或逻辑而定义的程序任务。
还可以采用前述内容的组合来实现本文所描述的各种各样的技术。因此,软件、硬件或可执行模块可以被实现为在某种形式的计算机可读存储介质上体现的和/或由一个或多个硬件元件710体现的一个或多个指令和/或逻辑。计算设备702可以被配置成实现与软件和/或硬件模块相对应的特定指令和/或功能。因此,可由计算设备702作为软件来执行的模块的实现可以至少部分地以硬件——例如通过使用计算机可读存储介质和/或处理系统704的硬件元件710——来实现。指令和/或功能可以是可由一个或多个制品(例如,一个或多个计算设备702和/或处理系统704)执行/操作来实现本文所描述的技术、模块和示例的。
如图7中进一步图示的,示例系统700使得当在个人计算机(PC)、电视设备和/或移动设备上运行应用时能够实现普适环境以用于无缝用户体验。当在使用应用、播放视频游戏、观看视频等时从一个设备转移到下一个设备时,服务和应用在所有三个环境中都基本上类似地运行以获得共同的用户体验。
在示例系统700中,多个设备通过中央计算设备互连。中央计算设备可以对于该多个设备来说是本地的,或者可以位于该多个设备的远程。在一个实施例中,中央计算设备可以是通过网络、因特网或其他数据通信链路连接到该多个设备的一个或多个服务器计算机的云。
在一个实施例中,这种互连架构使得能够跨多个设备传递功能性,以向该多个设备的用户提供共同的且无缝的体验。多个设备中的每一个设备可以具有不同的物理要求和能力,并且中央计算设备使用平台来使得能向设备传递既是迎合(tailor)该设备的、然而又是对于所有设备共同的体验。在一个实施例中,创建目标设备的类别,并且使体验迎合该通用类别的设备。设备的类别可以通过设备的物理特征、用途类型或其他共同特性来定义。
在各种实现中,计算设备702可以诸如针对计算机714、移动设备716和电视机718用途而采取各种各样的不同的配置。这些配置中的每一个包括可具有大体上不同的构造和能力的设备,并且因此可以根据不同设备类别中的一个或多个来配置计算设备702。例如,计算设备702可以被实现为计算机714类别的设备,其包括个人计算机、台式计算机、多屏幕计算机、膝上型计算机、上网本等。
计算设备702还可以被实现为移动设备716类别的设备,其包括诸如移动电话、便携式音乐播放器、便携式游戏设备、平板计算机、多屏幕计算机等之类的移动设备。计算设备702还可以被实现为电视机718类别的设备,其包括在休闲观看环境中具有或连接到通常较大屏幕的设备。这些设备包括电视机、机顶盒、游戏控制台等。
本文所描述的技术可以由计算设备702的这各种配置来支持,并且不限于本文所描述的技术的特定示例。该功能性还可以通过使用分布式系统来全部或部分地实现,诸如经由如下所述的平台722通过“云”720来实现。
云720包括和/或代表用于资源724的平台722。平台722抽象云720的硬件(例如,服务器)和软件资源的底层功能性。资源724可以包括当在远离计算设备702的服务器上执行计算机处理时可被利用的应用和/或数据。资源724还可以包括通过因特网和/或通过订户网络(诸如蜂窝网或Wi-Fi网)提供的服务。
平台722可以抽象用于将计算设备702与其他计算设备连接的资源和功能。平台722还可以用来抽象资源的缩放,以便向遇到的对于经由平台722实现的资源724的需求提供对应的规模水平。因此,在互连设备实施例中,本文所描述的功能性的实现可以分布在系统700各处。例如,该功能性可以部分地在计算设备702上、以及经由对云720的功能性进行抽象的平台722来实现。
结论
尽管已经用特定于结构特征和/或方法动作的语言描述了示例实现,但是应当理解,在所附权利要求中限定的实现不一定限于所描述的特定特征或动作。而是,这些特定特征和动作是作为实现所要求保护的特征的示例形式被公开的。

Claims (15)

1.一种方法,包括:
由计算设备对图像数据进行处理以形成多个像素和对应的一个或多个颜色通道,所述颜色通道可用于为相应的所述像素定义颜色;
由所述计算设备确定与所述经处理的图像数据中的像素的一个或多个相关联的图形基元类型;和
由所述计算设备使用至少一个颜色通道将所述图形基元类型指派给所述一个或多个像素。
2.如权利要求1所述的方法,其中所述图像数据是矢量化图像,并且所述经处理的图像数据是位图。
3.如权利要求1所述的方法,其中所述图形基元类型是图像、字形、文本、矢量或笔画线。
4.如权利要求1所述的方法,还包括:
标识所述经处理的图像数据中的多个块;和
将块基元标识符关联到至少一个所述块,指示被包括在该至少一个所述块中的一种或多种类型的图形基元。
5.如权利要求4所述的方法,其中,响应于确定该至少一个所述块包括除图像之外的图形基元类型而执行所述关联。
6.如权利要求4所述的方法,其中,响应于确定该至少一个所述块包括多于一个图形基元类型而执行所述关联。
7.如权利要求4所述的方法,其中所述块被配置为带条。
8.如权利要求1所述的方法,还包括将全局基元标识符关联到所述经处理的图像数据,指示所述经处理的图像数据包括一种或多种类型的图形基元。
9.如权利要求1所述的方法,还包括向至少一个所述像素指派混合值,所述混合值指示多个所述图形基元类型对该至少一个所述像素的贡献量。
10.如权利要求9所述的方法,其中所述图像数据包括多个层,每个所述层具有该多个所述图形基元类型中的不同的一个。
11.一种系统,包括:
至少部分地以硬件实现的一个或多个模块,所述一个或多个模块被配置成执行操作,所述操作包括:
接收具有多个颜色通道的图像数据,所述多个颜色通道定义要用于所述图像数据中的相应像素的颜色,并且至少一个颜色通道定义其中包括所述相应像素的图形基元的类型;和
至少部分地基于所定义的用于所述像素的图形基元的类型以及通过多个颜色通道描述的所定义的颜色来渲染所述图像数据的像素。
12.如权利要求11所述的系统,其中所述渲染被执行来由打印机或显示设备输出。
13.如权利要求11所述的系统,还包括:辨认与至少一个所述块相关联的块基元标识符,所述块基元标识符指示在该至少一个所述块中包括一种或多种类型的图形基元;并且响应于辨认出所述一种或多种类型的图形基元,执行如基于所指示的一种或多种类型的图形基元而优化的、对该至少一个所述块的渲染。
14.如权利要求13所述的系统,其中所述块基元标识符指示该至少一个所述块包括多种类型的图形基元。
15.一种系统,包括:
至少部分地以硬件实现的一个或多个模块,所述一个或多个模块被配置成执行操作,所述操作包括:
确定与图像数据中的多个像素相关联的图形基元类型;和
使用多个颜色通道中的至少一个将所述图形基元类型指派给所述多个像素,所述多个颜色通道还为所述多个像素中的相应像素定义颜色。
CN201580048982.4A 2014-09-12 2015-09-11 图形基元和颜色通道 Active CN106663329B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/485422 2014-09-12
US14/485,422 US9659387B2 (en) 2014-09-12 2014-09-12 Graphics primitive and color channels
PCT/US2015/049541 WO2016040715A2 (en) 2014-09-12 2015-09-11 Graphics primitive and color channels

Publications (2)

Publication Number Publication Date
CN106663329A true CN106663329A (zh) 2017-05-10
CN106663329B CN106663329B (zh) 2020-03-31

Family

ID=54197092

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201580048982.4A Active CN106663329B (zh) 2014-09-12 2015-09-11 图形基元和颜色通道

Country Status (4)

Country Link
US (1) US9659387B2 (zh)
EP (1) EP3192056A2 (zh)
CN (1) CN106663329B (zh)
WO (1) WO2016040715A2 (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9275215B2 (en) 2008-04-01 2016-03-01 Nudata Security Inc. Systems and methods for implementing and tracking identification tests
US9842204B2 (en) 2008-04-01 2017-12-12 Nudata Security Inc. Systems and methods for assessing security risk
US10019109B2 (en) 2016-06-28 2018-07-10 Google Llc Enhancing touch-sensitive device precision
US10496273B2 (en) 2017-03-27 2019-12-03 Google Llc Dismissing displayed elements
US10127373B1 (en) 2017-05-05 2018-11-13 Mastercard Technologies Canada ULC Systems and methods for distinguishing among human users and software robots
US9990487B1 (en) * 2017-05-05 2018-06-05 Mastercard Technologies Canada ULC Systems and methods for distinguishing among human users and software robots
US11158024B2 (en) * 2019-05-31 2021-10-26 Apple Inc. Configuring alpha channel video based on display settings
US11790604B2 (en) * 2021-12-14 2023-10-17 Gm Cruise Holdings Llc Mapping data to generate simulation road paint geometry

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6429950B1 (en) * 1998-12-31 2002-08-06 Xerox Corporation Method and apparatus for applying object characterization pixel tags to image data in a digital imaging device
CN102595023A (zh) * 2012-01-19 2012-07-18 西安联客信息技术有限公司 移动终端及其图像处理方法
US20120213435A1 (en) * 2011-02-23 2012-08-23 Nvidia Corporation Method and system for quantizing and squeezing base values of associated tiles in an image
US20120288211A1 (en) * 2011-05-13 2012-11-15 Canon Kabushiki Kaisha Image processing apparatus, image processing method of image processing apparatus, and program

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5638498A (en) * 1992-11-10 1997-06-10 Adobe Systems Incorporated Method and apparatus for reducing storage requirements for display data
US5991515A (en) * 1992-11-10 1999-11-23 Adobe Systems Incorporated Method and apparatus for compressing and decompressing data prior to display
AUPM704494A0 (en) 1994-07-25 1994-08-18 Canon Information Systems Research Australia Pty Ltd Efficient methods for the interpretation of a graphical programming language
US6173316B1 (en) * 1998-04-08 2001-01-09 Geoworks Corporation Wireless communication device with markup language based man-machine interface
US20020097416A1 (en) 2001-01-19 2002-07-25 Chang William Ho Output controller processor for universal data output
US7019864B2 (en) 2001-06-22 2006-03-28 Xeikon International N.V. Page composition in an image reproduction system using segmented page elements
US8111928B2 (en) * 2003-02-13 2012-02-07 Ati Technologies Ulc Method and apparatus for compression of multi-sampled anti-aliasing color data
US7280120B2 (en) * 2003-06-26 2007-10-09 Canon Kabushiki Kaisha Compositing with a sub-pixel mask in graphic object rendering
US7420699B2 (en) 2003-12-22 2008-09-02 Xerox Corporation Systems and methods for rapid processing of raster intensive color documents
US7519899B2 (en) 2004-05-03 2009-04-14 Microsoft Corporation Planar mapping of graphical elements
US7616342B2 (en) 2004-12-03 2009-11-10 Xerox Corporation Mechanism for allowing content-independent imaging date stream object usage
JP2009165025A (ja) 2008-01-09 2009-07-23 Canon Inc 画像処理システム、画像処理システムの制御方法、及び制御プログラム
US20100214614A1 (en) 2009-02-23 2010-08-26 Andrew Rodney Ferlitsch Context-aware printing method and system
US8306345B2 (en) 2009-09-22 2012-11-06 Xerox Corporation 3+N layer mixed raster content (MRC) images and processing thereof
US8824011B2 (en) * 2012-06-01 2014-09-02 Oce-Technologies B.V. Method for processing rasterized image data
US8948509B2 (en) * 2012-11-15 2015-02-03 Adobe Systems Incorported Blending with multiple blend modes for image manipulation
US20150015574A1 (en) * 2013-07-09 2015-01-15 Nvidia Corporation System, method, and computer program product for optimizing a three-dimensional texture workflow

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6429950B1 (en) * 1998-12-31 2002-08-06 Xerox Corporation Method and apparatus for applying object characterization pixel tags to image data in a digital imaging device
US20120213435A1 (en) * 2011-02-23 2012-08-23 Nvidia Corporation Method and system for quantizing and squeezing base values of associated tiles in an image
US20120288211A1 (en) * 2011-05-13 2012-11-15 Canon Kabushiki Kaisha Image processing apparatus, image processing method of image processing apparatus, and program
CN102595023A (zh) * 2012-01-19 2012-07-18 西安联客信息技术有限公司 移动终端及其图像处理方法

Also Published As

Publication number Publication date
EP3192056A2 (en) 2017-07-19
US9659387B2 (en) 2017-05-23
WO2016040715A2 (en) 2016-03-17
CN106663329B (zh) 2020-03-31
WO2016040715A3 (en) 2016-06-16
US20160078644A1 (en) 2016-03-17

Similar Documents

Publication Publication Date Title
CN106663329A (zh) 图形基元和颜色通道
CN101031022B (zh) 图像处理装置,图像形成装置,图像处理装置的控制方法
US7602527B2 (en) Album creating apparatus, album creating method and program
US8090196B2 (en) Album creating apparatus, album creating method and computer readable medium storing thereon program therefor
US10068518B2 (en) Method, apparatus and system for dithering an image
US10067646B2 (en) Color selector for desktop publishing
CN107111771A (zh) 二维码生成装置、二维码生成方法以及程序
US8830533B2 (en) System and method for creating machine-readable codes in combination with other images such as logos
US20230370561A1 (en) Interactive Three-Dimensional (3D) Color Histograms
JP6808583B2 (ja) 画像処理装置、画像処理システム、画像処理方法、およびプログラム
JP2009230760A (ja) 画像処理装置および画像処理方法
US8791954B2 (en) Systems and methods for combining images into a file using multiple color palettes
CN104240273A (zh) 栅格图片的处理方法及装置
JP2013505854A (ja) 印刷可能なラスタ画像ファイルを作成する方法
US20150278661A1 (en) Image processing apparatus
US20160309061A1 (en) Computer product, image processing method, display method, image processing apparatus, and information processing apparatus
CN105051788A (zh) 使用多个图元进行图形处理
JP6525526B2 (ja) 画像処理装置、画像処理方法、及びプログラム
US20220319051A1 (en) Modifying Promotional Material Using Logo Images
CN113196380A (zh) 图像处理设备及其操作方法
CN107247984B (zh) 一种可视化二维码的编码方法
JP5741792B2 (ja) 画像処理装置、画像処理プログラム
JP6627703B2 (ja) 印刷データ作成プログラム、印刷データ作成装置、印刷装置、印刷データ作成方法
JP6292061B2 (ja) 情報処理装置およびプログラム
AU2019101827A4 (en) A method for automatic vector watermarking

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
GR01 Patent grant
GR01 Patent grant