CN108876867A - 用于数字绘画的交互式颜色调色板接口 - Google Patents
用于数字绘画的交互式颜色调色板接口 Download PDFInfo
- Publication number
- CN108876867A CN108876867A CN201810084433.8A CN201810084433A CN108876867A CN 108876867 A CN108876867 A CN 108876867A CN 201810084433 A CN201810084433 A CN 201810084433A CN 108876867 A CN108876867 A CN 108876867A
- Authority
- CN
- China
- Prior art keywords
- color
- pixel
- color value
- attribute set
- pixel group
- 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
Links
- 230000002452 interceptive effect Effects 0.000 title claims abstract description 50
- 239000003086 colorant Substances 0.000 claims abstract description 27
- 238000000034 method Methods 0.000 claims description 73
- 238000003860 storage Methods 0.000 claims description 27
- 230000008859 change Effects 0.000 claims description 19
- 230000006870 function Effects 0.000 claims description 19
- 230000008569 process Effects 0.000 claims description 18
- 230000004048 modification Effects 0.000 claims description 17
- 238000012986 modification Methods 0.000 claims description 17
- 238000009877 rendering Methods 0.000 claims description 17
- 230000004044 response Effects 0.000 claims description 14
- 238000004422 calculation algorithm Methods 0.000 claims description 7
- 239000000049 pigment Substances 0.000 abstract description 16
- 238000004088 simulation Methods 0.000 abstract description 2
- 238000009987 spinning Methods 0.000 description 12
- 235000013399 edible fruits Nutrition 0.000 description 8
- 230000015654 memory Effects 0.000 description 8
- 238000005516 engineering process Methods 0.000 description 7
- 239000000203 mixture Substances 0.000 description 6
- 238000005070 sampling Methods 0.000 description 6
- 239000003973 paint Substances 0.000 description 5
- 238000010422 painting Methods 0.000 description 5
- 238000009826 distribution Methods 0.000 description 4
- 239000004744 fabric Substances 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 230000002776 aggregation Effects 0.000 description 2
- 238000004220 aggregation Methods 0.000 description 2
- 238000000429 assembly Methods 0.000 description 2
- 230000000712 assembly Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 230000001066 destructive effect Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000010295 mobile communication Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000001052 transient effect Effects 0.000 description 2
- 239000012463 white pigment Substances 0.000 description 2
- 241000208340 Araliaceae Species 0.000 description 1
- 241001269238 Data Species 0.000 description 1
- 238000012614 Monte-Carlo sampling Methods 0.000 description 1
- 235000005035 Panax pseudoginseng ssp. pseudoginseng Nutrition 0.000 description 1
- 235000003140 Panax quinquefolius Nutrition 0.000 description 1
- CZMRCDWAGMRECN-UGDNZRGBSA-N Sucrose Chemical compound O[C@H]1[C@H](O)[C@@H](CO)O[C@@]1(CO)O[C@@H]1[C@H](O)[C@@H](O)[C@H](O)[C@@H](CO)O1 CZMRCDWAGMRECN-UGDNZRGBSA-N 0.000 description 1
- 229930006000 Sucrose Natural products 0.000 description 1
- NIXOWILDQLNWCW-UHFFFAOYSA-N acrylic acid group Chemical group C(C=C)(=O)O NIXOWILDQLNWCW-UHFFFAOYSA-N 0.000 description 1
- 239000011248 coating agent Substances 0.000 description 1
- 238000000576 coating method Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013501 data transformation Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 239000012530 fluid Substances 0.000 description 1
- 239000012634 fragment Substances 0.000 description 1
- 235000008434 ginseng Nutrition 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000002045 lasting effect Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000003032 molecular docking Methods 0.000 description 1
- 238000010428 oil painting Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000007591 painting process Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 238000004321 preservation Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 239000005720 sucrose Substances 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/001—Texturing; Colouring; Generation of texture or colour
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0487—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
- G06F3/0488—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0487—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
- G06F3/0488—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
- G06F3/04883—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures for inputting data by handwriting, e.g. gesture or text
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2200/00—Indexing scheme for image data processing or generation, in general
- G06T2200/24—Indexing scheme for image data processing or generation, in general involving graphical user interfaces [GUIs]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Processing Or Creating Images (AREA)
- Image Processing (AREA)
- Image Generation (AREA)
- Color, Gradation (AREA)
- Color Image Communication Systems (AREA)
Abstract
本公开的实施例涉及用于数字绘画的交互式颜色调色板接口。一种交互式调色板接口包括用于数字绘画应用的颜色拾取器。用户能够使用交互式调色板接口来创建、修改以及选择用于创建数字艺术品的颜色。该交互式调色板接口包括混合碟,在混合碟中颜色能够被添加、被移除以及被重新布置以混合在一起来创建梯度和色域。混合碟是物理调色板的数字模拟,艺术家在将各种颜色的颜料应用于艺术品之前在物理调色板上添加和混合颜料。作为混合碟中的逻辑像素组的颜色块能够在空间上被重新布置并由用户缩放以创建和探索不同的颜色组合。每个块的颜色、位置和大小影响混合碟中的其他像素的颜色。对混合碟的编辑是非破坏性的,并且保留了颜色组合的无限历史。
Description
技术领域
本公开内容总体上涉及数字图像处理,并且更具体地涉及用于使用交互式调色板接口来创建、修改以及选择数字艺术品的颜色的技术。
背景技术
某些交互形式(例如平板电脑和触笔)为使用数字绘画应用程序的艺术家提供了自然接口。为了选择颜色,一些现有的数字绘画工具利用数十年前设计的颜色拾取器接口。然而,现有的颜色拾取器只能满足传统艺术家的调色板的功能的一小部分,调色板是用物理介质绘画的基本工具。传统的调色板通常是刚性的、平坦的表面,绘画者在其上布置和混合具有各种颜色的颜料。传统调色板不仅用于方便地访问颜色,而且还允许艺术家创建特定于艺术品的颜色空间的定制视图。另外,传统调色板允许艺术家容易地访问先前混合的颜色。此外,使用传统调色板来混合颜色的能力提供了一种创建相关调和的方式,例如在花瓶的蓝色表面上反射的橙色颜色。传统调色板也向艺术家提供探索和运用颜色的能力,并为整个艺术品规划色域。然而,与用传统介质的创作绘画过程整合的这些复杂的交互尚未被现有数字绘画工具所复制。
附图说明
本专利或申请文件包含至少一副彩色的附图。具有(一副或多幅)彩色附图的本专利或专利申请公布的副本将在请求并支付必要的费用时由官方提供。
附图不旨在按比例绘制。在附图中,在各个图中图示的每个相同或几乎相同的组件由相似的数字来表示。
图1示出了根据本公开内容的实施例的用于使用交互式调色板接口进行数字绘画的示例系统。
图2示出了根据本公开内容的实施例的示例交互式调色板接口。
图3A-3F示出了根据本公开内容的实施例的若干其他示例交互式调色板接口。
图4A-4F示出了根据本公开内容的实施例的交互式调色板接口中的示例混合碟的各种交互式编辑功能。
图5示出了根据本公开内容的实施例的具有颜色历史旋轮的示例性交互式调色板接口。
图6示出了根据本公开内容的实施例的具有颜色历史旋轮的另一示例交互式调色板接口。
图7是根据本公开内容的实施例的用于使用交互式调色板接口进行数字绘画的示例方法的流程图。
图8是根据本公开内容的实施例的用于编辑交互式调色板的示例方法的流程图。
图9是根据本公开内容的实施例的用于维护交互式调色板接口的颜色历史的示例方法的流程图。
图10是根据本公开内容的实施例的用于自动构建调色板接口的示例方法的流程图。
图11是表示可以用于执行如本公开内容中以各种方式描述的技术中的任何技术的示例计算设备的框图。
具体实施方式
综述
在物理领域中,传统颜料调色板提供用于布置和混合颜料的表面。传统调色板允许艺术家在颜色混合过程中添加一些意外发现的元素,但是同时由于混合颜料的局限性而使得选择特定颜色更困难。例如,一些颜色一旦混合在一起,会获得难以增强或消除的色调,迫使艺术家再次用新颜料开始混合过程。常见的示例是将黑色颜料添加到白色颜料,在其之后几乎不可能重新获得白色颜料的原始色调。传统调色板也允许艺术家根据他们的意愿在调色板周围布置颜色。调色板上的这种颜色的空间布置同时呈现整个色域,其然后通过向调色板上的所有颜色添加新的颜色(例如少量红色)来实现调和。然而,一旦颜色被布置,调色板就不能被重新布置,随着时间的推移会使其变得杂乱。物理调色板具有物理介质的缺点,例如无法恢复到较早的颜色,一旦混合的颜料用完,其可能很难再现。此外,物理调色板不允许进行非破坏性编辑(改变颜色),这限制了艺术家的实验和对错误的恢复。这可能会导致艺术家对于他们的探索比在能够进行非破坏性编辑时更为保守。由于这些原因,仅仅用数字版本仿真物理调色板并不是支持艺术家的颜色需求的最佳设计。
在数字领域中,一些现有数字颜色拾取器可以满足用传统颜料调色板不可能的艺术家的偏好。例如,一些现有数字颜色拾取器提供了选择颜色的机制,例如交互式颜色旋轮。这种现有颜色拾取器也支持颜色历史和色样调色板,并且独立于绘画程序(其使能从画布中对颜色进行采样)常见的滴管工具的颜色拾取器接口。然而,这种现有颜色拾取器缺乏其他能力,例如混合和调和与其他颜色相关的颜色、探索和试验不同的颜色组合、以及使用色域布局在图形接口中组织颜色。一些艺术家采用变通方案来实现这些缺失的能力,例如使用色样调色板来组织色域,但是由于现有接口不是为这种用途而设计的,所以它们是脆弱且繁琐的。
为此,提供了用于使用交互式调色板接口进行数字绘画的技术,该交互式调色板接口将传统颜料调色板的某些特征并入到数字领域中并且还改进了一些现有数字颜色拾取器。根据本公开内容的实施例,用户能够使用交互式调色板接口来创建、修改和选择用于创建数字艺术品的颜色。交互式调色板接口包括混合碟,在混合碟中颜色能够被添加、被移除以及被重新布置以混合在一起来创建梯度和色域。混合碟是物理调色板的数字模拟,艺术家在将颜料应用于艺术品之前在物理调色板上添加和混合各种颜色的颜料。作为混合碟中的逻辑像素组的颜色块能够在空间上被重新布置并且由用户缩放以创建和探索不同的颜色组合。每个颜色块的颜色、位置和大小影响混合碟中的其他像素的颜色。对混合碟的编辑是非破坏性的,并且保留了颜色组合的可能无限历史,这允许用户回忆和修改先前创建的颜色组合。在一些实施例中,代替或除了由用户手动创建的颜色,混合碟能够通过再现来自现有数字艺术品的颜色而自动被创建或被修改。
根据本公开内容的实施例,提供了一种参数调色板接口,其解决了物理领域和数字领域两者中的一些现有调色板的限制。调色板接口使用简单直观、渲染速度快并且存储紧凑。该表示可泛化到其他数字颜色操作和物理颜色模型,并且支持完整的历史跟踪。该设计提供了以下能力同时避免了传统调色板的许多缺点:创建和选择颜色;访问先前创建的颜色;创建(调和)与其他颜色有关的颜色;对色域进行布局以用于艺术品,包括阴影和色调;以及探索不同的颜色组合作为创作过程的一部分。所公开的技术在以下情况下特别有用,其中用颜色工作的自然工具的无缝体验能够鼓励人们在数字领域中绘画,并且为现有数字艺术家提供新的创作自由度。这种交互式调色板接口组合了物理调色板和数字调色板的特征。例如,根据实施例,用于数字绘画应用的颜色拾取器包括用于熟悉传统油画颜料和水彩介质的艺术家的直观接口。
系统架构
图1示出了根据本公开内容的实施例的用于使用交互式调色板接口进行数字绘画的示例系统100。系统100包括计算设备110,其具有处理器120、数字绘画应用130以及包括交互式调色板接口162的图形用户接口(GUI)160。计算设备110被配置为执行调色板渲染模块140、调色板编辑模块142、调色板历史模块144以及自动的调色板构建模块146。
如下面关于例如图2、图3A至图3F、图4A至图4F、图5、图6、图7、图8、图9和图10进一步详细描述的,调色板渲染模块140通常被配置为将属性分配给在计算设备110的图形用户接口(GUI)中渲染的一个或多个像素组或颜色块,计算GUI中的至少一个其他像素的颜色作为像素组属性的参数函数,以及在GUI中渲染像素。如将理解的,如本公开内容中使用的“像素”包括由数字或电子显示器或打印机设备呈现的图像中的物理点。属性包括像素组的颜色、位置和大小。调色板编辑模块142通常被配置为接收表示修改像素组中的一个或多个像素的颜色、位置或大小的输入,使用参数函数来更新GUI中的一个或多个其他像素的颜色,并且在GUI中渲染经更新的像素。调色板历史模块144通常被配置成在修改属性之前存储像素组的属性中的一个或多个属性,使得属性一旦被修改就能够响应于用户输入而被恢复为所存储的值。自动的调色板构建模块146通常被配置为将来自现有数字艺术品的一种或多种颜色转换到交互式调色板接口中。
示例参数调色板接口
根据实施例,用于给定艺术品的调色板P被表示为混合碟集合D1...Dn,其中每个混合碟里是颜色块Bi的集合。每个块Bi是属性元组{ci,pi,ri,mi},其包含在选定颜色空间(例如sRGB)中的颜色向量ci、在中的位置pi、的连续子集(例如由单位圆定义的区域)、半径ri、以及可选元数据向量mi。在一些实施例中,属性表示由客户端设备接收的一个或多个用户输入,每个用户输入对应于颜色块的选择、颜色块在混合碟内和相对于任何其他颜色块的位置、以及颜色块的大小。属性中的任何或所有能够由用户通过由客户端设备提供的交互式调色板接口来控制。连续的平滑的函数族被定义,其中每个函数定义每个块对混合碟中的其他像素的颜色的局部影响区域,从而在调色板中产生颜色块之间或否则接近颜色块的颜色的梯度。每个块Bi的位置和半径参数在域上隐含地定义其影响函数Mi:=F(pi,ri)。在一些情况下,使用元球函数的变型,其是具有有限范围的高斯近似,并且应用二次半径变换来确保对可变半径的块具有相等的影响力。
图2示出了根据实施例的具有混合碟202的示例调色板140。调色板140可以例如被实现为图1的交互式调色板接口162的一部分。调色板140包括例如由用于定位调色板140内的像素的x坐标和y坐标定义的参考框架212。例如,混合碟202可以包括第一像素组204和第二像素组206。第一像素组204和第二像素组206中的每个也被称为颜色块(blob)。应当理解,混合碟202可以包括任何数目的颜色块;这里出于解释的目的示出了两个颜色块。第一像素组204包括布置成具有半径r1的圆的第一多个像素,并且第二像素组206包括布置成具有半径r2的圆的第二多个像素。第一像素组204中的像素具有颜色c1,并且第二像素组206中的像素具有颜色c2。混合碟204还可以包括与第一像素组204和第二像素组206邻接的等值面208。包括等值面像素210的等值面208上的像素具有由参数影响函数Mi定义的一种或多种颜色,该参数影响函数Mi定义位于相对于参考框架212的点p处的像素(例如,等值面像素210)的颜色cp。参数函数Mi根据颜色c1、c2、...cn、大小(例如半径r1和r2)以及每个像素组(例如第一像素组204和第二像素组206)的位置来定义在整个等值面208上的颜色的梯度。能够使用不同的混合类型来生成梯度,例如sRGB插值和使用用于对光进行漫反射的众所周知的Kubelka-Munk(K-M)变换渲染的真实颜料的光谱系数空间中的插值。
为了渲染混合碟Dj,所有满足以下约束的点被渲染:
对于给定的阈值T>0,这导致调色板140中的块204、206(碟Dj中的块Bi)的平滑的填充等值面208。为了计算p处的颜色cp∈K,参数影响函数Mi(p)被用作插值权重:
能够在片段着色器中并行计算点p和每个点的颜色cp。
在调色板140中能够使用sRGB颜色,但是也能够利用其他颜色空间。例如,代替3DsRGB向量,ci能够是物理Kubelka-Munk(K-M)系数的向量。使用以上针对ci的方程对系数进行插值并且能够用K-M方程来渲染颜色。真实的丙烯酸颜料系数的集合能够被用作sRGB的替代。在一些实施例中,能够使用特殊的“变换器”块,例如去饱和器,其控制HSV颜色空间的S分量。
图3A-3F分别示出了具有3个、4个、5个、6个、7个和8个颜色块的若干示例调色板(顶部),以及从相应调色板采样并且在sRGB空间中绘制的对应颜色分布(底部)。
交互式编辑示例
关于图2讨论的示例调色板接口140实现响应的和表达的调色板接口。这样的接口能够在具有触敏屏幕的计算设备(诸如平板电脑)上或者使用传统输入设备(诸如鼠标、触笔或其他合适的设备)来实现。例如,用户能够创建新的混合碟,添加、移除以及重新布置颜色块,并且使用基于触摸的输入来改变画刷颜色。因为标准HSV颜色拾取器非常适合于选择颜色,所以在一些实施例中将其并入到示例调色板表示中。
调色板140能够被交互式地编辑以参数化各种各样的颜色流形,这使得该表示成为构建定制颜色空间和探索色域的强大且有吸引力的机制。图4A-4F示出了根据本公开内容的实施例的交互式调色板接口中的示例混合碟400的各种交互式编辑功能。通常,用户通过以下来在混合碟400中创建颜色块:从例如颜色旋轮(例如参见图6的颜色拾取器606)中选择颜色,将选择的颜色添加到混合碟400以创建颜色块,使用例如拖拽运动围绕颜色块移动,以及使用例如夹捏运动来调整颜色块的大小或重新缩放颜色块。
更具体地,图4A示出了示例混合碟400,其中用户使用例如触敏显示器、鼠标或其他合适的输入设备叩击调色板接口以将颜色块402添加到混合碟400。例如,颜色可以使用任何合适的颜色选择技术来选择,例如颜色旋轮、颜色滑块或色样接口。在图4A中还示出了两个其他颜色块404和406。
图4B示出了图4A的示例混合碟400,其中用户将添加的颜色块402拖拽向另一颜色块406。当添加的颜色块402被拖拽靠近或者远离另一颜色块406时,添加的颜色块402通过创建具有平滑的、流体状特性的梯度408而对混合碟400的颜色产生影响。
图4C示出了图4A-4B的示例混合碟400,其中用户夹捏颜色块404以改变其大小及其对混合碟400的颜色的影响。例如,与图4B相比,如图4C所示,改变颜色块404的大小也改变了与颜色块404相邻的梯度410的颜色。
图4D示出了图4A-4C的示例混合碟400,其中用户从混合碟400选择一种或多种颜色以使用数字绘画应用内的画刷工具来绘制艺术品420。可以通过触摸或以其他方式选择混合碟400中对应于画刷工具的期望颜色的点来选择颜色。
图4E示出了图4A-4D的示例混合碟400,其中用户双击混合碟400中的某个点以改变该点的颜色。一旦被选择,该点的颜色就能够以类似于添加颜色块402的方式被改变,如以上关于图4A所讨论的。
图4F示出了图4A-4E的示例混合碟400,其中用户在绘制艺术品420的同时通过叩击期望的颜色来从混合碟400选择各种颜色。这类似于艺术家从物理调色板上拾取颜料。
图4A-4F示出了示例调色板交互序列。假设艺术家用花瓶和水果绘制静物。即使场景设置在他或她面前,绘画也不仅仅涉及复制颜色。能够利用引人注目的紫色阴影和鲜明的加亮来使水果饱满,或者利用棕色阴影和微妙粉红色调来使水果更加逼真。这样的选择影响了调色板通过添加块、对块进行重新布置和缩放来帮助艺术家探索的风格和基调。如以上所讨论的,颜色块可以例如通过触摸和拖拽颜色点而被移动,这创建具有平滑的流体状特性的新的梯度。艺术家能够触摸调色板来选择混合的颜色并以选择的颜色开始绘画。双击块打开HSV拾取器来改变它的颜色并且因此改变绘制另一水果的色域。一旦对颜色布置满意,就能够调用调色板来绘制更多的水果。当在花瓶中绘制水果的反射时,艺术家能够将来自水果调色板的颜色复制粘贴到花瓶调色板,创建调和的梯度。
历史和重新着色
根据实施例,艺术品的颜色历史与交互式调色板相关联地存储,作为用于绘制艺术品的至少一笔的颜色集合Hc={c1...ck}。调色板中的每个块例如使用8个字节的存储。常见的混合碟可能含有相对少量的块。
调色板历史相当于调色板P,其中每个混合碟Di能够由用户明确地创建或者能够在调色板编辑期间自动保存。每个混合碟Di参考父混合碟(如果有的话)以及从拾取的颜色列表如果新的混合碟Di不再包含中的相同颜色,则存储混合碟的状态的快照。例如,用户编辑混合碟D0以产生表述与混合盘D0相同的颜色的新混合盘D0'(可能以不同的布置)。在这种情况下,因为D0'表示相同的颜色,所以先前混合碟D0被丢弃(不被存储)。然后,用户根据D0'创建新的混合碟D1,然后编辑D1以产生D2,其包括不同于D1的至少一种颜色。这导致D1被自动保存为单独的快照,因为D2包含也未被包括在D1中的至少一种颜色。
为了渲染P,一次显示一个混合碟Di,并且颜色历史HC中的颜色通过色调被布置为混合碟周边周围的像素环,如图5和图6所示(颜色历史旋轮504、604)。环中的每个像素对应于被存储在历史中的混合碟Di。在颜色历史旋轮中选择周边颜色cj使用混合盘Df填充调色板使得其中f是指被存储在历史中并且对应于所选颜色cj的特定混合碟Df。类似地,混合碟Df能够从历史中通过使用标准滴管工具从画布中选择任何元素而被调用。由于能够重新访问保存的混合碟Di并且在稍后进行编辑,所以调色板历史能够被表示为树的森林,其中每个混合碟在森林中至多具有一棵父树。因为一种颜色可以被表示在多于一个混合碟上,所以在画布上通过颜色选择碟可能是模棱两可的。因此,艺术品中的每个像素都被标记有用于绘制对应像素的混合碟识别(ID)值。然后使用ID值调用对应于选定颜色的特定混合碟Di。
图5示出了根据本公开内容的实施例的具有由至少部分围绕混合碟502的像素环表示的颜色历史旋轮504的示例交互式调色板接口500。混合碟502通常如以上关于图4A-4F的混合碟400所描述的那样进行工作,并且尤其包括等值面像素(例如图2中的208、210所指示的)。沿着颜色历史旋轮504的不同点对应于调色板500中在当用户编辑和修改调色板的颜色时的特定时间点的颜色。例如,混合碟502a对应于在第一时间点的调色板500,混合碟502b对应于在第二时间点的调色板500,混合碟502c对应于在第三时间点的调色板500,以及混合碟504d对应于在第四时间点的调色板500。如图5所示,混色碟502a、502b、502c和502d不必在如图5所示的调色板500中被描绘,但为了解释的目的在图5中被示出。实际上,叩击或以其他方式选择沿着颜色历史旋轮504的点使得调色板接口500的中心处的混合碟502的颜色改变为对应于选定点的颜色(例如改变为502a、502b、502c或502d中的一个)。
图6示出了根据本公开内容的实施例的具有由至少部分围绕混合碟602的像素环604表示的颜色历史旋轮的示例交互式调色板接口600。混合碟602通常如以上关于图4A-4F的混合碟400描述的那样进行工作。类似于图5,沿着颜色历史旋轮604的不同点对应于调色板600中在当用户编辑和修改调色板的颜色时的特定时间点的颜色。交互式调色板接口600还包括颜色拾取器606,其显示用户能够从中选择颜色以添加到混合碟602的色域。例如,用户可以选择颜色拾取器606上的对应于用户希望添加到混合碟602的颜色的点。一旦被添加到混合碟602,该颜色就变成颜色块,其能够以多种方式被操纵,诸如在本公开内容中以各种方式被操作的。
绘画重新着色
调色板历史和画布颜色之间的关联实现作为为历史意识的绘画重新着色。在绘画重新着色模式下,只允许改变块颜色(它们不能被移动、被添加或被删除)。当通过改变块Bc的颜色来编辑混合碟Di时,编辑被传播到所有的后代混合碟如果子碟中的Bc'与其父具有相同的颜色,则其被更新为新的颜色并且变为例如,将D1中的棕色块的颜色改变为颜色c会将D2和D4中对应的棕色块更改为c,但是不会导致不包括棕色的D3的改变。
一旦被更新,编辑就被转移到图像。绘画中的每个像素x包含颜色cx以及对用于拾取cx的碟Dx的引用。在编辑之前选择原始Dx中的颜色cx的位置px。然后,利用在编辑的碟中的px处的颜色来更新像素x。因此,艺术家能够通过编辑历史树中高的混合碟来影响绘画的大区域或者仅仅通过编辑叶子碟来改变最近的细节。在对艺术品重新着色之后,艺术家能够继续用调色板历史中更新的混合碟进行绘画。
所公开的实施例的优点在于,调色板历史能够基于它们如何被绘制来在对艺术品的相似颜色的区域(例如风景画的水和天空区域)的编辑之间进行区分,而一些现有调色板接口不能够单独地对这些区域重新着色。这也使艺术家在花了相当多的时间绘画后探索和改变色域。
示例自动的调色板构建
在一些情况下,数字艺术家可以在绘制艺术品的同时使用示例图像作为颜色参考。然而,示例图像不支持对不同的颜色组合的探索,因为图像中的颜色不能够被容易地编辑或访问历史记录,因为颜色不能够被重新选择。根据实施例,示例图像被转换到交互式调色板接口中。本实施例提供了可编辑的色域作为艺术颜色探索的起点。
对于定义为具有颜色c(xi)和位置p(xi)的像素xi的离散集合的给定输入颜色图像I,调色板P表示I的色域并且包括一个或多个混合碟Di。P的能量被最小化如下:
其中指示符函数将值0分配给任何输入c,该输入c在P中的任何碟中的L*a*b*空间中具有足够接近的颜色,否则最大成本为1。Ei(P)能够被解释为由调色板表示的I中的颜色的部分。采样和聚类被用来产生简化的结果。
上面公式化的问题是中等大小的非凸约束离散连续优化问题,其中由可变数目的块和混合碟引入增加的复杂性。调色板能够包括任何数目n的混合碟和范围从1到中等数目(例如20)的混合碟中的块数目以及每个块6个变量(位置、颜色、半径)。通过做出以下观察来减少搜索空间:
1:I中的颜色集合对于块颜色足够。
2:自然图像具有许多冗余颜色。
3:相邻像素来自同一混合碟。
4:常规网格上的恒定大小的块是足够的。
从这些观察中,形成以下算法。从I采样颜色,并且中的单链接聚集聚类(位置和L*a*b*颜色)被用于找到对应于从单独的混合碟所抽取颜色的颜色聚类集合。在聚类期间,维持表示每个聚类的调色板混合碟配置,在合并两个聚类之后,通过在具有恒定块大小的规则网格上执行调色板配置的马尔可夫链蒙特卡罗采样并且块颜色仅从属于合并的聚类的颜色样本中被选择,来调整混合碟。
算法1-自动的调色板构建
该算法具有参数n0、n1和Et,即目标成本。首先,从输入图像I中抽取n0个均匀样本S。在样本图像S中将几乎不可区分的颜色被聚类(例如,L*a*b*距离小于t=3)为更小的集合其中每个条目包含平均颜色平均位置以及数目。丢弃具有少于三个样本的聚类。在一些实施例中,n0=10000,其将大多数图像的S的大小减小至少一个数目级并且加速成本计算。为了计算成本,中的平均颜色被用作I的代理,通过它的计数来加权每个
所有后续的聚类都是在(L*a*b*颜色和位置)中被执行,其中向量被缩放为处于[0,1]以将大致相同的重要性归因于位置和颜色。针对每个初始化一个聚类,并且合并最小的聚类群,直到只有n1个聚类保留在集合C中。在一些实施例中,n1=30并且每个聚类中的颜色通过最多三个块进行近似。通过对1个、2个、3个块配置进行采样来初始化每个聚类的碟直到达到Et为止,使用来自聚类中的所有的颜色及其平均颜色。所有块都是相同的大小并且被放置在固定的参考网格上。
C的单链接聚集聚类被执行,直到达到一些终止条件(例如混合碟的数目(||C||)或聚类之间的最小距离)。在每次合并之后,使用具有(1-EC)的Metropolis-Hastings算法作为提议分布对混合碟的空间进行采样,从而使得更低成本的采样更可能。对于采样的混合碟和合并的颜色计算成本,颜色集合属于合并的聚类。作为随机的步骤,块能够被添加、被移除,或者能够改变颜色,其中颜色仅仅从C被选择。在达到Et时,采样终止。否则,每次合并允许固定次数的迭代,并保留最好的样本。当聚类结束时,最小的调色板被合并以避免一个和两个块混合碟能够很容易地接合另一混合碟。
示例方法
图7是根据本公开内容的实施例的用于使用交互式调色板接口进行数字绘画的示例方法700的流程图。方法700可以例如被实现在图1的数字绘画应用130的调色板渲染模块140中。通常,方法700被配置为在图形用户接口(GUI)中将属性分配给一个或多个像素组或颜色块,其中属性包括像素组的颜色、位置以及大小,计算GUI中的至少一个其他像素的颜色作为像素组属性的参数函数,以及在GUI中渲染像素。
更详细地,方法700包括将第一属性集合分配702给第一像素组。第一属性集合包括第一参考坐标点、第一颜色值以及第一大小值。第一参考坐标点定义了GUI内的第一像素组的位置(如图2描绘的)。第一颜色值定义第一像素组的颜色(例如RGB颜色值或代表适当颜色空间内的颜色的其他值)。第一大小值定义包被括在第一像素组中的像素的数目(例如由半径r限定的区域中的像素的数目)。在一些实施例中,被配置为渲染交互式调色板接口的客户端设备接收对应于第一参考坐标点、第一颜色值、第一大小值或这些的任何组合的选择的用户输入。方法700还包括将第二属性集合分配704给第二像素组。第二属性集合包括第二参考坐标点、第二颜色值以及第二大小值。第二参考坐标点定义GUI内的第二像素组的位置(如图2描绘的)。第二颜色值定义第二像素组的颜色(例如RGB颜色值或代表适当颜色空间内的颜色的其他值)。第二大小值定义被包括在第二像素组中的像素的数目(例如由半径r限定的区域中的像素的数目)。在一些实施例中,客户端设备接收对应于第二参考坐标点、第二颜色值、第二大小值或这些的任何组合的选择的用户输入。应当理解,如将鉴于本公开内容而显而易见的,客户端设备可以接收对应于任何数目的参考点、颜色值和大小值的任何数目的用户输入。
方法700还包括计算706定义第三参考坐标点处的(例如图2所描绘的)等值面像素的颜色的第三颜色值。第三颜色值(或多个第三颜色值)表示交互式调色板接口中的像素的颜色,其不一定包括在第一像素组或第二像素组中,并且能够是在第一像素组和第二像素组中的一个或多个像素的位置之间的像素或者接近第一像素组和第二像素组中的一个或多个像素的位置的像素。例如,第三颜色值可以表示在第一像素组和第二像素组(例如图2的第一像素组204和第二像素组206)中的一个或多个像素的位置之间的像素或者接近第一像素组和第二像素组(例如图2的第一像素组204和第二像素组206)中的一个或多个像素的位置的一个或多个像素(例如图2的等值面像素210)中的颜色的梯度的至少一部分。为了获得梯度,每个等值面像素的第三颜色值被定义为第一属性集合和第二属性集合中的每个属性集合的参数函数,例如在以下方程中:
如以上所讨论的,当用户将颜色块放置在彼此的阈值距离T内时,梯度的颜色随着用户调整每个颜色块的位置或大小而改变。例如,在交互式调色板接口中存在三个颜色块的情况下,梯度的颜色可以随着用户围绕其他两个块移动一个块或调整该块的大小而改变,例如关于图4A-4F所讨论的。
方法700还包括在GUI中使用第三颜色值来渲染708第三参考坐标点处的等值面像素。等值面像素以及等值面像素的区域中的其他像素的渲染在调色板中产生颜色梯度,用户能够经由交互式调色板界面从颜色梯度选择用于绘画的颜色。在一些实施例中,方法700还包括在GUI中使用第一颜色值(例如具有位置、颜色和大小的第一颜色块)来渲染710第一像素组的位置处的第一像素组,以及在GUI中使用第二颜色值(例如具有位置、颜色和大小的第二颜色块)来渲染第二像素组的位置处的第二像素组。例如,这样的渲染可以产生诸如图2和3A-3F所示的调色板。
图8是根据本公开内容的实施例的用于编辑交互式调色板的示例方法800的流程图。方法800可以例如被实现在图1的数字绘画应用130的调色板编辑模块142中。通常,方法800被配置为接收表示修改一个或多个像素组的颜色、位置或大小的输入,使用参数函数来更新GUI中的一个或多个其他像素的颜色,以及在GUI中渲染更新的像素。
更详细地,方法800包括接收802表示修改第一属性集合的输入。输入可以例如由用户与调色板接口交互来生成以添加、移除或修改混合碟内的颜色块或像素组。例如,用户可以叩击接口以添加或移除颜色,跨接口将颜色块拖拽到GUI内的不同位置,或者夹捏颜色块以放大或缩小颜色块的大小(并且因此增加或减少颜色块中的像素的数目)。方法800还包括响应于输入,基于该改变来更新804第三颜色值。例如,在用户已经添加、移除或修改颜色块之后,能够使用以下方程来更新混合碟中的等值面像素的颜色,其中颜色块的属性已经通过输入被修改:
方法800还包括在GUI中使用经更新的第三颜色值来渲染806等值面像素。这导致调色板接口响应用户的输入而更新色域和梯度。
图9是根据本公开内容的实施例的用于维持交互式调色板接口的颜色历史的示例方法900的流程图。方法900可以例如被实现在图1的数字绘画应用130的调色板历史模块144中。通常,方法900被配置为在修改属性之前存储像素组的属性中的一个或多个属性,使得属性一旦被修改就能够响应于用户输入而被恢复为所存储的值。
更详细地,方法900包括在修改第一属性集合之前将第一属性集合作为原始第一属性集合存储902在电子存储介质中。例如,每当用户添加、移除或修改颜色块(例如关于图8讨论的)时,第一像素组的属性的原始值或先前值都被保存在存储装置或存储器中以用于将来的引用。方法900还包括接收904表示请求恢复第一属性集合的改变的输入。例如,用户可以叩击GUI的显示颜色历史旋轮的部分,例如关于图5和图6描述的,在调色板被修改之前(例如关于图8描述的)调用在早前被存储902的调色板颜色的集合。方法900还包括从电子存储介质中取回906原始第一属性集合(例如响应于接收到904输入),以及响应于输入,基于原始第一属性集合来更新908第三颜色值。例如,在用户已经将调色板恢复到较早状态之后,能够使用以下方程来更新混合碟中的等值面像素的颜色,其中颜色块的属性已经被恢复到早前状态:
方法900还包括在GUI中使用经更新的第三颜色值来渲染等值面像素。这导致调色板接口响应用户的输入而更新色域和梯度,以将调色板的颜色恢复到较早状态。
在一些实施例中,方法900还包括在GUI中渲染912包括与第一属性集合相关联的第一颜色的至少部分像素环。像素环至少部分地围绕等值面像素的位置,如图5和图6所示。
图10是根据本公开内容的实施例的用于自动构建调色板接口的示例方法1000的流程图。方法1000可以例如被实现在图1的数字绘画应用130的自动的调色板构建模块146中。通常,方法1000被配置为将来自现有数字艺术品的一种或多种颜色转换到交互式调色板接口中。当用户希望使用现有艺术品中的颜色创建调色板作为修改艺术品或创建具有与现有艺术品相似的颜色的新艺术品的起点时,这是特别有用的。
更详细地,方法1000包括对现有数字艺术品中的像素的颜色进行采样和聚类1002。以上在算法1中描述了示例采样和聚类算法。方法1000还包括至少部分地基于来自现有艺术品的采样和聚类的像素来生成1004第一像素组(或者任何一个或多个其他像素组)。一旦像素组或多个像素组被生成1004,交互式调色板接口就能够被渲染、别编辑等,例如关于图7所描述的。
图11是表示可以用于执行本公开内容中以各种方式描述的任何技术的示例计算设备1100的框图。例如,图1的系统100或其任何部分以及图7-10的方法或其任何部分可以被实现在计算设备1100中。计算设备1100可以是任何计算机系统,例如工作站、台式计算机、服务器、笔记本、手持式计算机、平板电脑(例如平板电脑)、移动计算或通信设备(例如移动通信设备、AndroidTM移动通信设备等)、VR设备或VR组件(例如头戴式耳机、手套、相机、跑步机等)、或能够通信并且具有足够的处理器能力和存储器容量以执行本公开内容中描述的操作的其他形式的计算或电信设备。可以提供包括多个这样的计算设备的分布式计算系统。
计算设备1100包括一个或多个存储装置1110或非暂态计算机可读介质1120,其上编码有用于实现本公开内容中以各种方式描述的技术的一个或多个计算机可执行指令或软件。存储装置1110可以包括计算机系统存储器或随机存取存储器,例如持久磁盘存储设备(其可以包括任何合适的光学或磁性持久存储设备,例如RAM、ROM、闪存、USB驱动器或其他基于半导体的存储介质)、硬盘驱动器、CD-ROM或其他计算机可读介质,以用于存储实现本公开内容中教导的各种实施例的数据和计算机可读指令或软件。存储装置1110也可以包括其他类型的存储器或其组合。存储装置1110可以被提供在计算设备1100上或者可以与计算设备1100单独地或远程地提供。非暂态计算机可读介质1120可以包括但不限于一种或多种类型的硬件存储器,非暂态有形介质(例如一个或多个磁性存储盘、一个或多个光盘、一个或多个USB闪存驱动器)等。被包括在计算设备1100中的非暂态计算机可读介质1120可以存储用于实现各种实施例的计算机可读和计算机可执行指令或软件。计算机可读介质1120可以被提供在计算设备1100上或者从计算设备1100单独地或远程地被提供。
计算设备1100还包括用于执行被存储在存储装置1110或非暂态计算机可读介质1120中的计算机可读且计算机可执行指令或软件以及用于控制系统硬件的其他程序的至少一个处理器1130。可以在计算设备1100中采用虚拟化使得可以动态地共享计算设备1100中的基础设施和资源。例如,可以提供虚拟机来处理在多个处理器上运行的过程,使得该过程似乎仅仅使用一个计算资源,而不是多个计算资源。多个虚拟机也可以与一个处理器一起使用。
用户可以通过可以显示根据一些实施例提供的一个或多个用户接口的输出设备1140(例如屏幕或监视器)与计算设备1100交互。输出设备1140还可以显示与一些实施例相关联的其他方面、元素或信息或数据。计算设备1100可以包括用于接收来自用户的输入的其他I/O设备1150,例如键盘、操纵杆、游戏控制器、指点设备(例如鼠标、与触敏显示设备直接对接的用户手指等)或任何合适的用户接口。计算设备1100可以包括其他合适的传统I/O外围设备。计算设备1100包括或可操作地耦合到用于执行本公开内容中以各种方式描述的一个或多个方面的各种合适的设备。
计算设备1100可以运行任何操作系统,例如 操作系统的任何版本、Unix和Linux操作系统的不同版本、Macintosh计算机的的任何版本、任何嵌入式操作系统、任何实时操作系统、任何开源操作系统、任何专有操作系统、用于移动计算设备的任何操作系统、或者能够在计算设备1000上运行并且执行本公开中描述的操作的任何其他操作系统。在实施例中,操作系统可以被运行在一个或多个云计算机实例上。
在其他实施例中,功能组件/模块可以利用诸如门级逻辑(例如FPGA)或专用半导体(例如ASIC)的硬件来实现。还可以利用具有用于接收和输出数据的多个输入/输出端口的微控制器以及用于执行本公开内容中所描述的功能的多个嵌入式例程来实现另外的其他实施例。从更一般的意义上讲,如将显而易见的,能够使用硬件、软件和固件的任何适当组合。
如鉴于本公开内容将认识到的,系统的各种模块和组件,例如数字绘画应用130、调色板渲染模块140、调色板编辑模块142、调色板历史模块144、自动的调色板构建模块146、GUI 160或这些的任何组合使用软件来实现,软件例如被编码在任何计算机可读介质或计算机程序产品(例如硬盘驱动器、服务器、光盘、或其他合适的非暂态存储器或存储器集合)上的指令集(例如HTML、XML、C、C++、面向对象的C、JavaScript、Java、BASIC等),指令当由一个或多个处理器执行时,使得本公开内容中提供的各种方法被执行。将认识到,在一些实施例中,如本公开内容中所描述的,由用户计算系统执行的各种功能和数据变换能够由具有不同配置和布置的类似处理器或数据库来执行,并且所描绘的实施例不旨在进行限制。包括计算设备1100的该示例实施例的各种组件可以被集成到例如一个或多个台式或笔记本计算机、工作站、平板电脑、智能手机、游戏控制台、机顶盒或其他这样的计算设备中。计算系统的诸如处理器(例如中央处理单元和协处理器、图形处理器等)、输入设备(例如键盘、鼠标、触摸板、触摸屏等)和操作系统的常见的其他组件和模块都没有被示出,但是将是显而易见的。
鉴于本公开内容,许多实施例将是显而易见的,并且本文描述的特征能够以任何数目的配置进行组合。一个示例实施例提供了一种在数字绘画应用中提供交互式调色板接口(GUI)的计算机实现的方法。该方法包括将第一属性集合分配给第一像素组。第一属性集合包括第一参考坐标点、第一颜色值以及第一大小值。第一参考坐标点定义GUI内的第一像素组的位置。第一颜色值定义第一像素组的颜色。第一大小值定义被包括在第一像素组中的像素的数目。该方法还包括将第二属性集合分配给第二像素组。第二属性集合包括第二参考坐标点、第二颜色值以及第二大小值。第二参考坐标点定义GUI内的第二像素组的位置。第二颜色值定义第二像素组的颜色。第二大小值定义被包括在第二像素组中的像素的数目。该方法还包括计算定义第三参考坐标点处的等值面像素的颜色的第三颜色值。第三颜色值是第一和第二参考坐标点、第一和第二颜色值以及第一和第二大小值中的每个的参数函数。该方法还包括在GUI中使用第三颜色值来渲染第三参考坐标点处的等值面像素。在一些实施例中,该方法包括在GUI中使用第一颜色值来渲染第一像素组的位置处的第一像素组,以及在GUI中使用第二颜色值来渲染第二像素组的位置处的第二像素组。在一些实施例中,该方法包括接收表示修改第一属性集合的输入;响应于输入,基于改变来更新第三颜色值;以及在GUI中使用经更新的第三颜色值来渲染等值面像素。在一些这样的实施例中,该方法还包括在修改第一属性集合之前将第一属性集合作为原始第一属性集合存储在电子存储介质中。在一些这样的实施例中,该方法还包括接收表示对于恢复第一属性集合的改变的请求的输入;从电子存储介质中取回原始第一属性集合;响应于输入,基于原始第一属性集合来更新第三颜色值;以及在GUI中使用经更新的第三颜色值来渲染等值面像素。在一些实施例中,该方法包括在GUI中渲染包括与第一属性集合相关联的第一颜色的至少部分像素环,像素环至少部分地围绕等值面像素的位置。在一些实施例中,该方法包括至少部分地基于现有数字艺术品的多个像素的颜色来生成第一像素组。另一示例实施例提供一种非暂态计算机程序产品,其具有被编码在其上的指令,指令在由一个或多个计算机处理器执行时使得一个或多个计算机处理器执行诸如在本段落中所阐述的过程。
仅以示例的方式呈现了各种实施例的前述描述和附图。这些示例并不旨在为穷尽的或将本发明限制在所公开的确切形式。鉴于本公开内容,改变、修改和变型将是明显的,并且旨在落入如权利要求中所阐述的本发明的范围内。
Claims (20)
1.一种在数字绘画应用中提供交互式调色板接口(GUI)的计算机实现的方法,所述方法包括:
将第一属性集合分配给第一像素组,所述第一属性集合包括第一参考坐标点、第一颜色值以及第一大小值,所述第一参考坐标点定义所述GUI内的所述第一像素组的位置,所述第一颜色值定义所述第一像素组的颜色,以及所述第一大小值定义被包括在所述第一像素组中的像素的数目;
将第二属性集合分配给第二像素组,所述第二属性集合包括第二参考坐标点、第二颜色值以及第二大小值,所述第二参考坐标点定义所述GUI内的所述第二像素组的位置,所述第二颜色值定义所述第二像素组的颜色,以及所述第二大小值定义被包括在所述第二像素组中的像素的数目;
计算定义第三参考坐标点处的等值面像素的颜色的第三颜色值,所述第三颜色值是以下各项中的每项的参数函数:所述第一参考坐标点和所述第二参考坐标点、所述第一颜色值和所述第二颜色值、以及所述第一大小值和所述第二大小值;以及
在所述GUI中使用所述第三颜色值来渲染所述第三参考坐标点处的所述等值面像素。
2.根据权利要求1所述的方法,还包括:在GUI中使用所述第一颜色值来在所述第一像素组的所述位置处渲染所述第一像素组,以及在所述GUI中使用所述第二颜色值来在所述第二像素组的所述位置处渲染所述第二像素组。
3.根据权利要求1所述的方法,还包括:
接收表示对所述第一属性集合的修改的输入;
响应于所述输入,基于所述改变来更新所述第三颜色值;以及
在所述GUI中使用经更新的所述第三颜色值来渲染所述等值面像素。
4.根据权利要求3所述的方法,还包括:在对所述第一属性集合的所述修改之前,将所述第一属性集合作为原始第一属性集合存储在电子存储介质中。
5.根据权利要求4所述的方法,还包括:
接收表示对于恢复所述第一属性集合的所述改变的请求的输入;
从所述电子存储介质取回所述原始第一属性集合;
响应于所述输入,基于所述原始第一属性集合来更新所述第三颜色值;以及
在所述GUI中使用经更新的所述第三颜色值来渲染所述等值面像素。
6.根据权利要求1所述的方法,还包括:在所述GUI中渲染包括与所述第一属性集合相关联的所述第一颜色的至少部分像素环,所述像素环至少部分地围绕所述等值面像素的所述位置。
7.根据权利要求1所述的方法,还包括:至少部分地基于现有数字艺术品的多个像素的颜色来生成所述第一像素组。
8.一种非暂态计算机可读介质,其具有被编码在其上的指令,所述指令当由一个或多个计算机处理器执行时使得所述一个或多个计算机处理器执行包括以下的过程:
将第一属性集合分配给第一像素组,所述第一属性集合包括第一参考坐标点、第一颜色值以及第一大小值,所述第一参考坐标点定义交互式调色板接口(GUI)内的所述第一像素组的位置,所述第一颜色值定义所述第一像素组的颜色,以及所述第一大小值定义被包括在所述第一像素组中的像素的数目;
将第二属性集合分配给第二像素组,所述第二属性集合包括第二参考坐标点、第二颜色值以及第二大小值,所述第二参考坐标点定义所述GUI内的所述第二像素组的位置,所述第二颜色值定义所述第二像素组的颜色,以及所述第二大小值定义被包括在所述第二像素组中的像素的数目;
计算定义第三参考坐标点处的等值面像素的颜色的第三颜色值,所述第三颜色值是以下各项中的每项的参数函数:所述第一参考坐标点和所述第二参考坐标点、所述第一颜色值和所述第二颜色值、以及所述第一大小值和所述第二大小值;以及
在所述GUI中使用所述第三颜色值来渲染所述第三参考坐标点处的所述等值面像素。
9.根据权利要求8所述的非暂态计算机可读介质,其中所述过程还包括:在GUI中使用所述第一颜色值来在所述第一像素组的所述位置处渲染所述第一像素组,以及在所述GUI中使用所述第二颜色值来在所述第二像素组的所述位置处渲染所述第二像素组。
10.根据权利要求8所述的非暂态计算机可读介质,其中所述过程还包括:
接收表示对所述第一属性集合的修改的输入;
响应于所述输入,基于所述改变来更新所述第三颜色值;以及
在所述GUI中使用经更新的所述第三颜色值来渲染所述等值面像素。
11.根据权利要求10所述的非暂态计算机可读介质,其中所述过程还包括:在对所述第一属性集合的所述修改之前,将所述第一属性集合作为原始第一属性集合存储在电子存储介质中。
12.根据权利要求11所述的非暂态计算机可读介质,其中所述过程还包括:
接收表示对于恢复所述第一属性集合的所述改变的请求的输入;
从所述电子存储介质取回所述原始第一属性集合;
响应于所述输入,基于所述原始第一属性集合来更新所述第三颜色值;以及
在所述GUI中使用经更新的所述第三颜色值来渲染所述等值面像素。
13.根据权利要求8所述的非暂态计算机可读介质,其中所述过程还包括:在所述GUI中渲染包括与所述第一属性集合相关联的所述第一颜色的至少部分像素环,所述像素环至少部分地围绕所述等值面像素的所述位置。
14.根据权利要求8所述的非暂态计算机可读介质,其中所述过程还包括:至少部分地基于现有数字艺术品的多个像素的颜色来生成所述第一像素组。
15.一种用于将硬拷贝文本内容上的机械标记转换为数字文档文件中的数字注释的系统,所述系统包括:
存储装置;以及
处理器,其被可操作地耦合到所述存储装置,所述处理器被配置为执行被存储在所述存储装置中的指令,所述指令在被执行时使得所述处理器执行包括以下的过程:
用于将第一属性集合分配给第一像素组的步骤,所述第一属性集合包括第一参考坐标点、第一颜色值以及第一大小值,所述第一参考坐标点定义交互式调色板接口(GUI)内的所述第一像素组的位置,所述第一颜色值定义所述第一像素组的颜色,以及
所述第一大小值定义被包括在所述第一像素组中的像素的数目;
用于将第二属性集合分配给第二像素组的步骤,所述第二属性集合包括第二参考坐标点、第二颜色值以及第二大小值,所述第二参考坐标点定义所述GUI内的所述第二像素组的位置,所述第二颜色值定义所述第二像素组的颜色,以及所述第二大小值定义被包括在所述第二像素组中的像素的数目;
用于计算定义第三参考坐标点处的等值面像素的颜色的第三颜色值的步骤,所述第三颜色值是以下各项中的每项的参数函数:所述第一参考坐标点和所述第二参考坐标点、所述第一颜色值和所述第二颜色值、以及所述第一大小值和所述第二大小值;
以及
用于在所述GUI中使用所述第三颜色值来渲染所述第三参考坐标点处的所述等值面像素的步骤。
16.根据权利要求15所述的系统,其中所述过程还包括:在GUI中使用所述第一颜色值来在所述第一像素组的所述位置处渲染所述第一像素组,以及在所述GUI中使用所述第二颜色值来在所述第二像素组的所述位置处渲染所述第二像素组。
17.根据权利要求15所述的系统,其中所述过程还包括:
接收表示对所述第一属性集合的修改的输入;
用于响应于所述输入,基于所述改变来更新所述第三颜色值的步骤;以及
在所述GUI中使用经更新的所述第三颜色值来渲染所述等值面像素。
18.根据权利要求17所述的系统,其中所述过程还包括:
在对所述第一属性集合的所述修改之前,将所述第一属性集合作为原始第一属性集合存储在电子存储介质中;
接收表示对于恢复所述第一属性集合的所述改变的请求的输入;
从所述电子存储介质取回所述原始第一属性集合;
响应于所述输入,基于所述原始第一属性集合来更新所述第三颜色值;以及
在所述GUI中使用经更新的所述第三颜色值来渲染所述等值面像素。
19.根据权利要求15所述的系统,其中所述过程还包括:在所述GUI中渲染包括与所述第一属性集合相关联的所述第一颜色的至少部分像素环,所述像素环至少部分地围绕所述等值面像素的所述位置。
20.根据权利要求15所述的系统,其中所述过程还包括:用于使用用于对现有数字艺术品的多个像素进行采样和聚类的算法、至少部分地基于所述现有数字艺术品的所述像素的颜色来生成所述第一像素组的步骤。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/589,223 US10347012B2 (en) | 2017-05-08 | 2017-05-08 | Interactive color palette interface for digital painting |
US15/589,223 | 2017-05-08 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108876867A true CN108876867A (zh) | 2018-11-23 |
CN108876867B CN108876867B (zh) | 2024-05-24 |
Family
ID=61903381
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810084433.8A Active CN108876867B (zh) | 2017-05-08 | 2018-01-29 | 用于数字绘画的交互式颜色调色板接口 |
Country Status (5)
Country | Link |
---|---|
US (2) | US10347012B2 (zh) |
CN (1) | CN108876867B (zh) |
AU (2) | AU2018201064B2 (zh) |
DE (1) | DE102018001136A1 (zh) |
GB (1) | GB2562342B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111161361A (zh) * | 2019-12-27 | 2020-05-15 | 广东以诺通讯有限公司 | 一种绘制调色板数据的计算机实现方法及系统 |
CN113703635A (zh) * | 2021-08-31 | 2021-11-26 | 维沃移动通信有限公司 | 颜色处理方法、装置和电子设备 |
CN115457167A (zh) * | 2022-09-21 | 2022-12-09 | 山东大学 | 基于色彩排序的调色板设计系统 |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10347012B2 (en) * | 2017-05-08 | 2019-07-09 | Adobe Inc. | Interactive color palette interface for digital painting |
EP3529976B1 (en) * | 2017-12-20 | 2022-11-23 | Google LLC | Tonal palette generation |
US11068144B2 (en) * | 2018-07-20 | 2021-07-20 | Ledvance Llc | Diamond shaped digitial color selection interface |
US11107257B1 (en) * | 2018-08-01 | 2021-08-31 | Adobe Inc. | Systems and methods of generating playful palettes from images |
EP4327193A1 (en) * | 2021-04-19 | 2024-02-28 | Signify Holding B.V. | Systems and methods for interactive color selection with dynamic color changing leds |
CN117409127B (zh) * | 2023-12-15 | 2024-04-05 | 中国美术学院 | 基于人工智能的实时水墨流体渲染方法和装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6226010B1 (en) * | 1995-06-16 | 2001-05-01 | Canon Kabushiki Kaisha | Color selection tool |
US20030184557A1 (en) * | 2002-03-26 | 2003-10-02 | Senfar Wen | Interactive method and apparatus for managing color gamut mapping |
CN1984229A (zh) * | 2005-12-17 | 2007-06-20 | 富士施乐株式会社 | 图像处理装置、图像处理方法、图像处理程序、存储介质以及计算机数据信号 |
US20130132053A1 (en) * | 2011-02-16 | 2013-05-23 | Radomir Mech | Methods and Apparatus for Simulation Of Fluid Motion Using Procedural Shape Growth |
CN104798108A (zh) * | 2012-12-24 | 2015-07-22 | 英特尔公司 | 用于改善msaa渲染效率的技术 |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5432896A (en) * | 1991-01-31 | 1995-07-11 | Axa Corporation | Watercolor simulation in computer graphics |
US5420607A (en) * | 1992-09-02 | 1995-05-30 | Miller; Robert F. | Electronic paintbrush and color palette |
GB2371729B (en) * | 2000-10-05 | 2004-12-22 | Ferdinand Carabott | Computer simulated paint mixing |
US7495670B1 (en) * | 2005-04-15 | 2009-02-24 | Johnnie Manzari | Shapes comprising repeated graphic elements |
US8243325B2 (en) * | 2005-07-08 | 2012-08-14 | Xerox Corporation | Method for prepress-time color match verification and correction |
US8520004B2 (en) * | 2007-06-04 | 2013-08-27 | Daedal Doodle, LLC | Interactive labyrinth curve generation and applications thereof |
US8487963B1 (en) * | 2008-05-30 | 2013-07-16 | Adobe Systems Incorporated | Preview representation of pixels effected by a brush tip area |
US8749572B2 (en) * | 2010-05-28 | 2014-06-10 | Adobe Systems Incorporated | System and method for simulation of brush-based painting in a color space that includes a fill channel |
US8369616B2 (en) * | 2010-10-20 | 2013-02-05 | Xerox Corporation | Chromatic matching game |
US8762866B2 (en) * | 2011-04-08 | 2014-06-24 | Adobe Systems Incorporated | Remote paint mixing controller |
US20130326381A1 (en) * | 2012-05-29 | 2013-12-05 | Microsoft Corporation | Digital art program interaction and mechanisms |
DE102013215438A1 (de) * | 2012-08-06 | 2014-02-06 | Wixpress Ltd | System zum Unterstützen einer flexiblen Farbzuweisung in komplexen Dokumenten |
US9563972B2 (en) * | 2012-10-22 | 2017-02-07 | FifthyThree, Inc. | Methods and apparatus for providing color palette management within a graphical user interface |
US20140273715A1 (en) * | 2013-03-15 | 2014-09-18 | Crayola Llc | Panoramic Coloring Kit |
US9147378B2 (en) | 2013-04-01 | 2015-09-29 | Adobe Systems Incorporated | Color selection interface |
US10347012B2 (en) * | 2017-05-08 | 2019-07-09 | Adobe Inc. | Interactive color palette interface for digital painting |
-
2017
- 2017-05-08 US US15/589,223 patent/US10347012B2/en active Active
-
2018
- 2018-01-29 CN CN201810084433.8A patent/CN108876867B/zh active Active
- 2018-02-13 DE DE102018001136.5A patent/DE102018001136A1/de active Pending
- 2018-02-13 AU AU2018201064A patent/AU2018201064B2/en active Active
- 2018-02-23 AU AU2018201319A patent/AU2018201319B2/en active Active
- 2018-02-23 GB GB1802967.8A patent/GB2562342B/en active Active
-
2019
- 2019-06-21 US US16/448,127 patent/US11087503B2/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6226010B1 (en) * | 1995-06-16 | 2001-05-01 | Canon Kabushiki Kaisha | Color selection tool |
US20030184557A1 (en) * | 2002-03-26 | 2003-10-02 | Senfar Wen | Interactive method and apparatus for managing color gamut mapping |
CN1984229A (zh) * | 2005-12-17 | 2007-06-20 | 富士施乐株式会社 | 图像处理装置、图像处理方法、图像处理程序、存储介质以及计算机数据信号 |
US20130132053A1 (en) * | 2011-02-16 | 2013-05-23 | Radomir Mech | Methods and Apparatus for Simulation Of Fluid Motion Using Procedural Shape Growth |
CN104798108A (zh) * | 2012-12-24 | 2015-07-22 | 英特尔公司 | 用于改善msaa渲染效率的技术 |
Non-Patent Citations (1)
Title |
---|
吴仲乐等: "基于可编程图形硬件的直接体绘制方法", 《生物医学工程研究》 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111161361A (zh) * | 2019-12-27 | 2020-05-15 | 广东以诺通讯有限公司 | 一种绘制调色板数据的计算机实现方法及系统 |
CN113703635A (zh) * | 2021-08-31 | 2021-11-26 | 维沃移动通信有限公司 | 颜色处理方法、装置和电子设备 |
CN115457167A (zh) * | 2022-09-21 | 2022-12-09 | 山东大学 | 基于色彩排序的调色板设计系统 |
CN115457167B (zh) * | 2022-09-21 | 2023-06-09 | 山东大学 | 基于色彩排序的调色板设计系统 |
Also Published As
Publication number | Publication date |
---|---|
GB2562342A (en) | 2018-11-14 |
AU2018201319B2 (en) | 2021-09-23 |
GB2562342B (en) | 2021-05-12 |
AU2018201319A1 (en) | 2018-11-22 |
CN108876867B (zh) | 2024-05-24 |
US10347012B2 (en) | 2019-07-09 |
AU2018201064A1 (en) | 2018-11-22 |
US20190304141A1 (en) | 2019-10-03 |
US11087503B2 (en) | 2021-08-10 |
DE102018001136A1 (de) | 2018-11-08 |
US20180322661A1 (en) | 2018-11-08 |
GB201802967D0 (en) | 2018-04-11 |
AU2018201064B2 (en) | 2021-08-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108876867A (zh) | 用于数字绘画的交互式颜色调色板接口 | |
Yang et al. | Deep plastic surgery: Robust and controllable image editing with human-drawn sketches | |
JP2022524891A (ja) | 画像処理方法及び装置、電子機器並びにコンピュータプログラム | |
CN108830288A (zh) | 图像处理方法、神经网络的训练方法、装置、设备及介质 | |
CN108122264A (zh) | 促进草图到绘画变换 | |
CN110009721A (zh) | 生成由曲线表示的图像的三角网格 | |
CN104778654A (zh) | 非物质文化遗产数字化展示系统及其方法 | |
CN102663806B (zh) | 基于艺术视觉的图像卡通风格化渲染方法 | |
US9176662B2 (en) | Systems and methods for simulating the effects of liquids on a camera lens | |
CN108459704A (zh) | 用于三维数字内容的笔画操作预测 | |
CN106471551A (zh) | 用于将现有3d模型转换成图形数据的方法和系统 | |
CN113838158B (zh) | 一种图像和视频的重构方法、装置、终端设备及存储介质 | |
Zhang et al. | Parametric modeling and generation of mandala thangka patterns | |
CN108229680A (zh) | 神经网络系统、遥感图像识别方法、装置、设备及介质 | |
Ren et al. | Dunhuang murals image restoration method based on generative adversarial network | |
Cai et al. | Wowtao: A personalized pottery-making system | |
CN108805095A (zh) | 图片处理方法、装置、移动终端及计算机可读存储介质 | |
Ye | [Retracted] Application of Photoshop Graphics and Image Processing in the Field of Animation | |
CN109543294A (zh) | 一种用于游艇舱室内装场景的设计系统及方法 | |
CN109859537A (zh) | 一种织锦教学系统及方法、信息数据处理终端 | |
DiVerdi et al. | Generating Playful Palettes from Images. | |
Salval et al. | Multiresolution surface blending for detail reconstruction | |
Zhang et al. | Neural Modelling of Flower Bas‐relief from 2D Line Drawing | |
Feng et al. | An interactive 2d-to-3d cartoon modeling system | |
Cui et al. | Traditional art design expression based on embedded system development |
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 |