CN101583973A - 用于参数曲线的动态反馈和交互 - Google Patents
用于参数曲线的动态反馈和交互 Download PDFInfo
- Publication number
- CN101583973A CN101583973A CNA2007800391183A CN200780039118A CN101583973A CN 101583973 A CN101583973 A CN 101583973A CN A2007800391183 A CNA2007800391183 A CN A2007800391183A CN 200780039118 A CN200780039118 A CN 200780039118A CN 101583973 A CN101583973 A CN 101583973A
- Authority
- CN
- China
- Prior art keywords
- curve
- parameter
- user
- value
- control
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/20—Drawing from basic elements, e.g. lines or circles
- G06T11/203—Drawing of straight lines or curves
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/20—Drawing from basic elements, e.g. lines or circles
- G06T11/206—Drawing of charts or graphs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/40—Filling a planar surface by adding surface attributes, e.g. colour or texture
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- User Interface Of Digital Computer (AREA)
- Complex Calculations (AREA)
- Calculators And Similar Devices (AREA)
Abstract
公开了一种方法,程序产品和系统,用于接受选择参数曲线的参数的用户输入,所述参数曲线显示在图中。根据所述参数的值的范围来确定所述参数曲线的曲线范围。以及在所述曲线的图中显示所述参数的曲线范围。
Description
技术领域
在诸如图像处理和音频处理的领域中,很多操作通常可以基于交互式用户界面控制来描述,该交互式用户界面将输入值直接映射为输出值,或者映射为将在随后影响处理的某些其他参数。例如,这种控制可以允许用户交互式地调节功能曲线,诸如用于图像处理的色调曲线和基于色度的曲线,以及用于音频处理的频率响应曲线。在色调曲线的情况中,通常将每个像素的图像分量值馈送到函数中,并得到由该函数产生的新的分量值。在基于色度的曲线情况中,将每个像素的色度馈送到函数中,并得到参数值,产生该参数值是为了用于对像素的进一步处理。例如,可以使用色度来控制将像素变为多亮或者多暗。最后,给定输入音频频率,频率响应曲线提供将应用于音频频谱的该部分的增益量或者剪切量的指示。
作为单输入、单输出函数,这些函数可以通过相应的曲线来描述,这些曲线被设计为将所有输入值映射至其相应的输出值。典型的图像操纵应用允许用户直接通过规定曲线必须通过的一系列点来规定曲线。然而,通过点来规定曲线容易产生具有不期望性质的曲线。例如,对于图像色调曲线,针对范围极值的裁剪通常将导致细节的丢失和逆向运动(也即,减小曲线的截面),这将导致负感效应(solarization effects)。一些应用允许用户通过用于连续、有界参数的一小组控制来操纵曲线,从而避免这一困境。由于基于点的曲线实质上是为曲线生成过程指定参数,对于参数曲线而言,参数是简单地从沿着函数图的位置抽取出来的。但是所抽取的参数的属性可能使用户较难理解这些参数实际上是如何与曲线相关的。
背景技术
本说明书描述与交互式图像操纵有关的技术。
总体上,本说明书中所描述主题的一个方面可以在一种方法中实现,该方法包括接受选择参数曲线的参数的用户输入,该参数曲线显示在图中。基于参数值的范围来确定该参数曲线的曲线范围。将该参数的曲线范围显示在曲线图中。本方面的其他实施方式包括相应的系统、装置和计算机程序产品。
这些以及其他实施方式可选地包括以下一个或多个特征。突出显示与参数相对应的控制。用户输入是以下之一:参数控制的指示,图中区域的指示,或者图像中与曲线位置相对应的像素的指示。可以接受修改参数值的用户输入。用户输入是鼠标手势(mouse gesture)和击键中的一个或多个。向上的鼠标手势增加参数值,而向下的鼠标手势降低参数值。确定基于参数值的新曲线,并将其显示在图中。该组曲线表示关于图中曲线的一个或多个区,曲线将根据不同的参数值位于该区中。曲线是三次曲线的组合。参数控制曲线的斜率。参数不与沿着曲线图的位置相对应。曲线确定图像的色调。
总体上,本说明书中所描述主题的一个方面可以实现在一个方法中,该方法包括接受第一用户输入,其指明所显示的图中的区域,或者指明与该区域对应的所显示的控制,该控制位于与该图分离的显示区域中。响应于第一用户输入,自动地突出显示该区域和控制。基于第二用户输入,自动调节与该控制相关联的值。此方面的其他实施方式包括相应的系统、装置和计算机程序产品。
这些和其他实施方式可选地可以包括一个或多个以下特征。用户输入是鼠标手势。向上的鼠标手势增加值,而向下的鼠标手势降低值。手势输入投射(incident)在所显示的图上。所显示的图是直方图。
可以实现本说明书中所描述主题的特定实施方式,以实现一个或多个以下特征。曲线范围为用户提供了理解曲线参数将如何影响参数曲线图的图形化方法,并且使用户一看便知哪个参数控制是做什么的,控制对图像的部分将具有多大影响,以及曲线目前有多接近给定参数的任一极值。用于参数曲线的用户界面简化了曲线调节的复杂任务。与参数曲线图的用户交互自动地映射至基础参数。与手动操纵曲线图上的点相比,更易实现对参数曲线的精细调节。
在下文的附图和描述中记载了本发明的一个或多个实施方式的细节。根据说明书、附图和权利要求,本发明的其他特征、方面和优点将变得易见。
附图说明
本专利或者申请文件包含至少一副彩色附图。专利局将根据请求以及所需费用的支付提供具有彩色附图的本专利或者专利申请公开的副本。
图1示出了用于操纵参数曲线的用户界面。
图2A-图2G示出了参数曲线图中的曲线范围的显示。
图3是示出了显示曲线范围的方法的流程图。
图4A-图4B示出了对参数曲线参数的用户修改。
图5是示出了用于参数曲线参数的修改的方法的流程图。
图6A示出了用于根据与图的交互来改变参数值的用户界面。
图6B是用于根据与图的交互来改变参数值的方法的流程图。
图7示出了支持与参数曲线的用户交互的系统。
图8是通用计算机系统的示意图。
各图中类似的标号和名称表示类似的元素。
具体实施方式
图1示出了用于操纵在图102中被示为曲线104的参数曲线的图形用户界面(GUI)100。尽管所示的参数曲线104是平面曲线,包括空间曲线在内的其他参数曲线也是可能的。例如,空间曲线可以表示在n维图中,并且投影到平面并在图102中表示。参数曲线代表数据集的一个或多个变换。这种变换例如可以包括色调、频率响应、透明度或者其他类型的变换,包括这些变换的组合。数据集可以是数字图像(例如,118;为了简短,将简称为“图像”)中的像素、音频数据或者其他类型的数据。除了图像之外,数据的其他可视化表示也是可能的,诸如直方图106,其位于图102中的参数曲线104之下,并且表示图像118中的颜色分布,越暗的颜色越靠近x轴上的原点。
在一些实施方式中,参数曲线104表示图像色调。色调是颜色明暗的测量。在这些实施方式中,图102表示图像118中颜色的输入色调值(x轴)与输出色调值(y轴)。一般地说来,色调曲线从黑到白(或者从白到黑),并且总是上升的。例如,为45°直线的参数曲线表示色调值没有改变。用户可以直接通过与参数曲线104相关联的有界参数来操纵参数曲线104的形状,并由此操纵图像118中颜色的色调。
特别地,对于需要对曲线104进行精细改变的任务,这通过允许用户容易地操纵曲线104的分量而非必须显式地改变曲线形状(例如,通过拖拽曲线上的点)(这可能无法给予用户其需要的控制)来简化曲线调节的复杂任务。实际上,曲线的可能形状与图像118的期望修改之间可能缺乏直观的关系。利用参数曲线的“简易”和利用基于点的曲线的“困难”的一个例子是:在端点处使曲线接近零斜率,而没有实际的过冲(overshooting)。产生平滑曲线(例如,自然样条)的曲线拟合算法倾向于过冲。避免过冲的算法倾向于产生较不平滑的曲线。
一般地,用户可以通过提供用户输入(例如,GUI控制之上或者控制附近的一个或多个鼠标点击或者其他手势,击键,将光标定位在控制之上或者控制附近,语音命令或者其他适当的输入)来“指示”用户界面100中呈现的感兴趣的对象。与参数曲线104的用户交互映射为一个或多个基础参数,可以修改该基础参数以改变曲线104的形状。参数可以是曲线104函数的输入参数,曲线104函数的输出参数,或者其组合。一个或多个参数曲线参数映射至图102中的可视区或者“区域”。区域可以是任何形状或者大小,并非必须具有与给定参数曲线的其他区域相同的形状或大小,并且在参数空间曲线的情况下可以具有多于两个维度。而且,区域可以重叠。
在图102中,存在4个区域,由矩形R1、R2、R3和R4表示。用户可以通过与图102中参数的相应区域进行交互、与对应于参数的控制(例如,108a-b、110a-b、112a-b和114a-b)进行交互、或者与数据表示118进行交互来修改参数的值。用户界面100例如包括诸如滑块(例如,108b、110b、112b和114b)的参数控制以及相应的文本输入域(例如,108a、110a、112a和114a),以用于操纵参数。每个控制108a-b、110a-b、112a-b和114a-b对应于图102中的区域(并因此对应于色调参数)。控制108a-b对应于区域R1,并允许操纵与区域R1相关联的参数。类似地,控制110a-b对应于区域R2,并允许操纵与区域R2相关联的参数,以此类推。在色调曲线104的该示范中,控制108a-b允许对影响最暗颜色的色调的参数进行操纵,而其余控制每个允许对影响渐亮的颜色的色调的参数进行操纵,其中最亮颜色的色调由控制114a-b来影响。
在一些实现中,参数对应于三次曲线的斜率。例如,四个控制(108a-b、110a-b、112a-b和114a-b)允许对四个不同三次曲线的斜率进行修改,其中这四个不同三次曲线在级联函数中结合在一起,以创建曲线104。通过示范方式,可以根据一个基本分量来构建在0到1范围上操作的、区域友好的参数曲线:将0..1映射至由0和1处的斜率参数化的0..1的三次函数。如果0处的斜率为A且1处的斜率为B,该功能可以定义如下:
f(x,A,B)=x*((1-x)*(A+x*(3-B-A))+x2)
为了避免逆向运动,可以限制A和B的范围,但是可用的范围仍然相当大。
现在,考虑指定斜率C和D,并使用以下逻辑:
g(x,C,D)=ifx<=0.5then 0.5*f(2x,C,1)else 0.5+0.5*f(2x-1,1,D)
换言之,使用从0到0.5、以从C到1的斜率结束的三次曲线,继而使用从0.5到1、斜率为从1到D的另一三次曲线。曲线通过点(0,0)、(0.5,0.5)和(1,1)。继而可以利用在全域上操作的另一三次(曲线)对其进行级联,以得到:
h(x,C,A,B,D)=f(g(x,C,D),A,B)
这得到了这样的曲线,其中A和B控制曲线的大规模响应,而C和D控制曲线在每端处的弯曲。向范围的自然细分在0.25、0.5和0.75处分割曲线,以产生四个分别与C、A、B和D相关联的大小相等的范围。
可以进一步通过注意以下事实来提供对向范围中细分的控制:如果函数p的反函数是q,并且如果p将位置y映射到0.5,则
q(h(p(x),C,A,B,D))
这给出了这样的函数,其在y处而不是0.5处的较低和较高范围之间具有分割。可以插入类似的函数,并且将配对反向到用来应用C和D的子范围函数,并且这些将得到曲线响应的扭斜,同时保留端点处的实际斜率。只要斜率不变为零或者无穷,围绕曲线函数缠绕p和q就将保持端点处的斜率不变。这符合微分的链锁法则以及函数全部保留0和1的事实。
以下是一个这样的函数配对。为了将输入值y<0.5映射为0.5,使用:
alpha=(1-2y)/(1-y)
p(x)=x/(1-alpha*(1-x))
q(x)=1-((1-x)/(1-alpha*x))
对于y>0.5,使用类似的函数:
beta=(2y-1)/y
p(x)=1-((1-x)/(1-beta*x))
q(x)=x/(1-beta*(1-x))
因此,现在可以构造分割为四个分量(例如,标号为I,II,III和IV)并且可以应用基于斜率的控制的曲线,其中控制的重点分别在分量I、I和II、III和IV以及IV上。
在一些实现中,对于图像色调曲线,期望使用可感知的统一色调响应(例如,标准红、绿和蓝(sRGB)响应曲线)来呈现用户界面100和曲线图102,同时仍然在具有其他色调响应(例如,线性响应)的空间中执行实际的曲线数学。这以较为接近用户体验的形式来呈现用户界面100项目,同时在较为接近地反映问题的实际物理过程的空间中执行数学。
图2A-图2G示出了参数曲线图中曲线范围的显示。参数对应于曲线的范围,该曲线是根据研究该参数的值的范围而得到的。曲线的范围表示关于图102中的曲线104的一个或多个区,其中将给出基于给定参数的不同值的所有可能的曲线。在空间曲线的情况下,范围可以是两个或者更多维度。当用户例如通过指示参数控制(例如,108b)来表示对参数感兴趣时,对应于该参数的范围例如自动显示在图102中,如108c所示。这允许用户理解参数是如何影响曲线104的以及参数可以达到的影响范围这二者。在一些实现中,用户可以指明不止一个参数。例如,通过在按下键盘修改符的同时在图上移动鼠标光标,用户能够指明不止一个区域,并由此指明不止一个参数。然而,为了简便,通常按照单个参数来给出示例。
作为示范,如果用户将光标(例如,鼠标光标)定位在用户界面100中由116a表示的区中,或者指明区116a中的参数控制108a-b,与区116a中的控制相对应的参数的曲线108c的范围自动显示,如图2B中的108c所示。而且,还可以例如通过改变控制的颜色或者亮度来突出显示区116a中的控制。同样,如果用户将光标定位在图102的区域R1中的任何位置(在此例中,其对应于同一参数),也将显示曲线108c的范围。再一次,还将突出显示对应于该参数的控制。以此,用户一看便知参数控制与其对曲线104的影响范围之间的关系。用户例如可以通过在图102的不同区域上或者在不同的参数控制上移动鼠标光标来立即查看这种关系。
在一些实现中,如果用户将光标置于数据点(例如,像素116b)之上,或者是指明数据表示118中的数据点,可以将数据点116b’的值显示为曲线104上的点116b,并且自动显示与该点所在的图102的区域(例如,R1)相关联的曲线(例如,108c)的范围。还可以突出显示与用于曲线范围的参数相对应的控制。在某种意义上,选择数据点指明了图的区域、参数以及控制。在参数色调曲线的情况下,曲线104示出了图像像素在色调空间中的位置。用户可以从数据表示118(例如图像、图像颜色值的直方图、音频频谱、音频数据频率的直方图或者从任何其他适当的表示)选择数据,并且立即看出该数据对应于曲线104的什么部分,以及如何修改曲线的该部分。
图2C-图2G提供了与用户界面100的用户交互的进一步示范。在图2C中,用户通过在图102的区域R2中移动光标,或者通过将光标移动到区域116c或者指明区域116c中的控制,可以致使显示曲线110c的范围以及突出显示控制110a-b。类似地,在图2D中,用户通过在图102的区域R3中移动光标,或者通过在区域116d中移动光标或者指明区域116d中的控制,可以致使显示曲线112c的范围以及突出显示控制112a-b。在图2E中,用户通过在图102的区域R4中移动光标,或者通过在区域116e中移动光标或者指明区域116e中的控制,可以致使显示曲线114c的范围以及突出显示控制114a-b。
如图2F-图2G所示,一些参数可能对整个曲线104的形状具有影响。例如,亮度控制122a-b和对比度控制124a-b对应于可能对整个曲线104具有影响的参数。亮度控制122a-b与具有曲线122c的范围的参数相关联。对比度控制124a-b与具有曲线124c的范围的参数相关联。在这种情况下,曲线124c的范围在沿着曲线104的不同位置处位于当前曲线104之上和之下。
图3是示出了用于显示曲线范围的方法300的流程图。接受选择参数曲线的参数的用户输入(步骤302)。例如,用户可以通过如下方式来这么做:移动光标靠近或者指明参数控制(例如,112b),在图102的区域内移动光标,或者指明数据集的表示118中的数据点。确定所选参数的曲线范围(步骤304)。这可以临时确定或者提前来确定。在曲线的图中显示曲线的范围(例如108c;步骤306)。可选地,突出显示能够修改参数的控制(例如112b;步骤308)。
可以通过与图102、参数控制(例如,108a-b)或者数据表示(例如,118)的用户交互来修改参数值。用户交互被映射为其值改变的一个或多个参数。在某些实现中,用户可以通过用户界面100来操纵参数控制。例如,可以向左或者向右移动滑块参数控制112b,以分别指明滑块的相关联参数的较小值或者较大值。然而,诸如这些的显式参数控制是可选的,因为用户也可以通过其他方式来修改参数。
在其他实现中,可以将图102的区内的手势(例如,鼠标光标移动)解释为修改与该手势所在的区域(例如,R1)相关联的参数。注意,这种手势并不“抓取”曲线104,该手势“抓取”一个或多个区域的基础参数。参考图2A,作为示例,通过在区域R1中向上或者向下(或者向左或向右)拖拽鼠标光标,与区域R1相关联的参数的值分别增加或者降低。备选地,还可以将位于图102之外的手势解释为修改与图102的区域相关联的参数。例如,用户可以在鼠标位于图区域之内时选择修改符键或者鼠标按钮,并继而在图区域之外创建手势。通过在区域中的同时选择修改符键或者鼠标按钮,用户将随后的鼠标手势同与该区域相关联的参数联系起来,直到松开修改符键或者鼠标按钮。在一些实现中,数据表示118的区内的手势(例如,鼠标光标移动)可以解释为修改与所选数据点(例如,116b)所在的区域(例如,R1)相关联的参数。
在一些实现中,当用户在曲线图102上移动光标时,可以突出显示不同的区域,并且例如光标图标改变外观,以表明:用户可以垂直地点击拖拽鼠标来调节与该区域相对应的参数。当用户点击鼠标按钮时,隐藏光标,并且将垂直移动映射为参数值的改变。用来控制参数的移动的范围可以是任意的。特别地,对于基于点的曲线,曲线的小移动必须通过小的、因此是不精确的鼠标移动来表示,与此不同,即使是小的改变也可以得到拖拽操作的足够精度。如果通过水平拖拽来修改参数更为合适,也可以允许这样做。在其他实现中,如果指明两个参数(例如,通过如上所述地选择不止一个图区域或者参数控制),用户可以使用垂直手势来修改一个参数,而使用水平手势来修改另一个。
上述针对图102和数据表示118描述的手势也可以通过键盘输入或者其他用户输入来实现。例如,用户可以使用鼠标或者其他用户输入设备来通过曲线区域机制指明参数,同时使用键盘来增加或者减少参数。
图4A-图4B示出了参数曲线参数的用户修改。图4A示出了参数曲线图102,其中曲线108c的范围沿着曲线104显示。曲线104的当前形状粗略地通过曲线108c的范围的中心。例如通过调节与区域R1相对应的参数控制108a或者108b,用户可以在曲线108c的范围的界限内改变曲线104的形状。在此示例中,通过将滑块108b向中心左侧移动来降低图像118中最暗颜色的色调,由此使这些颜色在图像118中看起来更暗。图4B示出了经修改的曲线104,其现在位于曲线108c的范围的底部附近。
图5是示出用于修改曲线参数的方法500的流程图。接受修改参数曲线(例如,图4A中的曲线104)的参数的用户输入(步骤502)。例如,如上所述,用户可以在用户界面100上执行鼠标手势或者与参数控制(例如,108a或者108b)直接交互。根据修改的参数确定新的曲线(步骤504)。继而在图中显示新曲线(例如,图4B中的曲线104;步骤506)。
图6A示出了用于根据与图602的交互来改变参数值的用户界面600。在一些实现中,用户可能希望通过与图进行交互而不是与参数控制直接交互来修改参数值,而不考虑图是否表示参数函数。可以将图的区分为一个或多个区域,其在交互时修改一个或多个与之相关联的参数值。例如,图602是图像中输出颜色分布的直方图。图602的区域604a与参数控制606a相关联。同样,区域604b与参数控制606b相关联,区域604c与参数控制606c相关联,并且区域604d与参数控制604d相关联。如上所述,当用户例如在任一区域604a-d中移动鼠标光标时,突出显示或者显示该区域,并且相应的控制606a-d突出显示并且可以通过使用鼠标手势或者其他用户输入来进行修改。区域无需是相同的大小和形状。在各种实现中,在直方图上移动鼠标光标不改变其他图表中的参数色调曲线。相反,其以其他方式参数式地改变图像,其继而可以通过直方图602中可见的改变来反映。
图6B是示出了用于根据与图的交互来改变参数值的方法601的流程图。接受用户输入,其指明所显示的图(例如,602)中的区域(例如,604a)或者指明与区域相对应的所显示控制(例如,606a),该控制位于与图相分离的显示区中(步骤603)。继而,响应于用户输入,自动地突出显示区域和控制(步骤605)。基于其他用户输入来修改与控制相关联的值(步骤607)。
图7示出了用于支持与参数曲线的用户交互的系统700。尽管示出了多个组件,系统700中可以有更少或者更多的组件。而且,组件可以分布在通过一个或多个网络或者其他适当的通信手段连接的一个或多个计算设备上。用户可以通过计算机712或者其他设备与系统700进行交互。例如,计算机712可以是局域网(LAN)或者广域网(WAN)内的计算机终端。特别地,用户可以使用数字图像管理和处理应用,例如来自加利福尼亚州圣何塞的Adobe System公司的Adobe Photoshop Lightroom。如上所述,用户可以通过与参数曲线用户界面100的交互来操纵图像702b或者其他数据。用户界面100由用户界面组件708生成,并由绘制组件710绘制在计算机712的显示设备上。与用户界面100的交互由用户输入检测器组件706接收,用户输入检测器组件706将输入提供给用户界面组件708以供处理。用户界面组件708更新用户界面100以反映用户输入,例如通过显示曲线的范围以及突出显示参数控制。如果用户已经修改了控制颜色色调的参数功能的参数,用户界面组件708还可以向色调调节组件704(或者其他适当的组件)发出信号。色调调节组件704继而更新输入图像702a中的色调,输入图像702a继而被提供给绘制组件710并被绘制为图像702b。
图8是通用计算机系统800的示意图。系统800可以用于实践结合方法300、500、601以及系统700描述的操作。系统800可以包括处理器810,存储器820,存储设备830,以及输入/输出设备840。组件810、820、830和840中的每一个使用系统总线850互连。处理器810能够处理用于在系统800内执行的指令。例如,这种所执行的指令可以实现系统700的一个或多个组件。在一个实现中,处理器810是单线程处理器。在另一实现中,处理器810是多线程处理器。处理器810能够处理存储在存储器820中或者存储设备830上的指令,以便在输入/输出设备840上显示用于用户界面的图形信息。
存储器820是存储系统800内的信息的计算机可读介质,例如易失性或者非易失性随机访问存储器。存储器820例如可以存储表示数字图像数据和参数曲线参数的数据结构。存储设备830能够为系统800提供永久存储。存储设备830可以是软盘设备、硬盘设备、光盘设备或者磁带设备或者其他适当的永久存储装置。输入/输出设备840为系统800提供输入/输出操作。在一个实现中,输入/输出设备840包括键盘和/或指点设备。在另一实现中,输入/输出设备840包括显示单元,用于显示图形用户界面。
输入/输出设备840可以为系统700提供输入/输出操作。系统700可以包括如上所述的计算机软件组件。这种软件组件的例子包括用户输入检测器706、用户界面708、绘制组件710以及色调调节组件704,这些仅仅是几个例子。
本说明书中描述的主题和功能性操作的实施方式可以在数字电子电路中实现,或者在计算机软件、固件或硬件中实现,该计算机软件、固件或硬件包括本说明书中公开的结构及其等同结构,或是在它们的一个或多个的组合中实现。本说明书中描述的主题的实施方式可以实现为一个或多个计算机程序产品,也即,在计算机可读介质上编码的、以便由数据处理装置执行或控制数据处理装置操作的一个或多个计算机程序指令模块。有形程序载体可以是传播的信号或者计算机可读介质。传播信号是人工产生的信号,例如,机器产生的电信号、光信号或者电磁信号,生成该信号以对信息进行编码,以便传输到适当的接收器装置。计算机可读介质可以是机器可读的存储设备、机器可读的存储衬底、存储设备、实现计算机可读的传播信号的组合、或者它们中一个或多个的结合。
术语“数据处理装置”包括用于处理数据的所有装置、设备和机器,例如包括可编程处理器、计算机,或者多个处理器或计算机。除了硬件之外,该装置可以包括为考虑中的计算机程序创建执行环境的代码,例如,构成处理器固件、协议栈、数据库管理系统、操作系统、跨平台运行时环境,或者它们中一个或多个的结合的代码。传播信号是人工生成的信号,例如机器生成的电信号、光信号或者电磁信号,生成该信号来编码信息,以便传输至适当的接收机装置。
计算机程序(也公知为程序、软件、软件应用、脚本或代码)可以由任意形式的编程语言编写,包括编译语言或解释语言,说明性语言或过程语言,并且该计算机程序可以任意形式部署,包括部署为单独的程序或模块、组件、子例程,或者适于在计算环境中使用的其他单元。计算机程序无需对应于文件系统中的文件。程序可以存储在保存其他程序或数据(例如,存储在标记语言文档中的一个或多个脚本)的文件的一部分中、可以存储在专门用于考虑中的程序的单个文件中,或者存储在多个协同文件中(例如,存储一个或多个模块、子程序,或代码部分的文件)。可以将计算机程序部署为在一个计算机上执行,或者将其部署为在位于一个地点的多个计算机上执行或跨过多个地点分布且通过通信网络互连的多个计算机上执行。
本说明书中描述的处理和逻辑流程可以由执行一个或多个计算机程序的一个或多个可编程处理器执行,用于通过对输入数据进行操作以及产生输出来执行功能。该处理和逻辑流程还可以由例如FPGA(现场可编程门阵列)或ASIC(专用集成电路)的专用逻辑电路执行,并且也可以将装置实现为所述专用逻辑电路。
适于计算机程序执行的处理器例如包括通用和专用处理器两者、以及任意类型的数字计算机的任意一个或多个处理器。通常,处理器将从只读存储器或随机访问存储器或两者处接收指令和数据。计算机的基本元件是用于执行指令的处理器以及用于存储指令和数据的一个或多个存储器设备。通常,计算机还将包括用于存储数据的一个或多个海量存储设备,或被操作性地耦合为从所述用于存储数据的一个或多个海量存储设备接收数据、向其传送数据、或者进行两者,该海量存储设备例如磁盘、磁光盘、或光盘。然而,计算机不必一定具有这样的设备。而且,计算机可以嵌入在其他设备中,例如移动电话、个人数字助理(PDA)、移动音频或视频播放器、全球定位系统(GPS)接收器、或者便携式存储设备(例如,通用串行总线(USB)闪存驱动),这仅是几例。适于存储计算机程序指令和数据的计算机可读介质包括所有形式的非易失性存储器、介质和存储设备,例如包括:半导体存储设备,如EPROM、EEPROM和闪存设备;磁盘,如内部硬盘或可移动硬盘;磁光盘;以及CD-ROM和DVD-ROM盘。处理器和存储器可以由专用逻辑电路补充或是包括在专用逻辑电路中。
为了提供与用户的交互,本说明书中描述的主题的实施方式可以在具有用于向用户显示信息的显示设备以及用户可以通过其向计算机提供输入的键盘和指点设备的计算机上实现,其中显示设备例如CRT(阴极射线管)或者LCD(液晶显示器)监视器,指点设备例如鼠标或者轨迹球。也可以使用其他类型的设备来提供与用户的交互;例如,提供给用户的反馈可以是任何形式的感观反馈,例如视觉反馈、声觉反馈、或者触觉反馈;并且可以接收来自用户的任意形式的输入,包括声音、语音或触觉输入。
用户界面可以从例如鼠标、估计球、拨盘、触摸板、键盘、麦克风、视频相机、能够测量用户心理变化的设备或者其组合接收用户输入。作为另一例子,用户输入可以包括鼠标手势、拨盘移动、击键、声音、口头命令、脸部表情、眼睛移动、脑电波或者其组合。
数字图像未必对应于文件。图像可以存储在保存其他图像的文件的部分中,存储在专门用于所考虑图像的单个文件中,或者存储在多个协作文件中。而且,图像可以存储在存储器,而无需首先存储在文件中。
本说明书中描述的主题的实施方式可以实现在包括后端组件的计算系统中,例如数据服务器;或实现在包括中间件组件的计算系统中,例如应用服务器;或实现在包括前端组件的计算系统中,例如具有图形用户界面或者Web浏览器的客户端计算机,用户通过该图形用户界面或Web浏览器可以与本说明书中描述的主题的实现进行交互;或实现在一个或多个这样的后端、中间件、或前端组件的任意结合中。系统组件可以与任意形式或介质的数字数据通信(例如,通信网络)互连。通信网络的示例包括局域网(“LAN”),广域网(“WAN”),例如,互联网。
计算系统可以包括客户端和服务器。客户端和服务器一般相互远离,并且通常通过通信网络进行交互。客户端和服务器的关系是借助于在各自计算机上运行的、彼此具有客户端-服务器关系的计算机程序得到的。
尽管本说明书包含多种特定细节,但是不应将其理解为是对本发明的范围或者所要求保护内容的限制,而应当理解为是本发明具体实施方式的特定特征的描述。本说明书中描述的在各个实施方式的上下文中的某些特征也可以在单个实施方式中结合实现。相反,在单个实施方式上下文中描述的各种特征也可以分别实现在多个实施方式中或者任意适当的子组合中。而且,尽管上文可能将特征描述为在特定的组合中操作,甚至初始也是这样要求保护的,但是来自所要求保护的组合的一个或多个特征在一些情况下可以从该组合中去除,并且所要求保护的组合可以针对子组合或组合的变形。
类似地,尽管在附图中以特定的顺序描述操作,但是不应将其理解为要求按照所示的特定顺序或是串行顺序来执行这些操作,或是要求执行全部所示的操作以得到期望的结果。在特定环境中,多任务和并行处理可能是有利的。而且,在上述实施方式中多个系统组件的分离不应被理解为在所有实施方式中需要这些操作,应当将其理解为所描述的程序组件和系统通常可以在单个软件产品中集成在一起,或是被打包到多个软件产品中。
这样,已经描述了本发明的具体实施方式。其他实施方式位于所附权利要求的范围内。例如,权利要求中记载的动作可以按照不同的顺序执行,并仍能实现期望的结果。
Claims (34)
1.一种计算机实现的方法,包括:
接受选择参数曲线的参数的用户输入,所述参数曲线显示在图中;
根据所述参数的值的范围来确定所述参数曲线的曲线范围;以及
在所述曲线的图中显示所述参数的所述曲线范围。
2.如权利要求1的方法,进一步包括:
突出显示与所述参数相对应的控制。
3.如权利要求1的方法,其中所述用户输入是以下之一:
参数控制的指示,所述图中区域的指示,或者图像中与所述曲线上的位置相对应的像素的指示。
4.如权利要求1的方法,进一步包括:
接受修改所述参数的值的用户输入。
5.如权利要求4的方法,其中所述用户输入是以下一个或多个:
鼠标手势或者击键。
6.如权利要求5的方法,其中:
向上的鼠标手势增加所述参数的值,而向下的鼠标手势降低所述参数的值。
7.如权利要求4的方法,进一步包括:
基于所述参数的所述值来确定新曲线;以及
在所述图中显示所述新曲线。
8.如权利要求1的方法,其中:
所述曲线范围表示关于所述图中的所述曲线的一个或多个区,所述曲线将根据所述参数的不同值而位于所述区中。
9.如权利要求1的方法,其中:
所述曲线是三次曲线的组合。
10.如权利要求9的方法,其中:
所述参数控制所述曲线的斜率。
11.如权利要求1的方法,其中:
所述参数不与沿着所述曲线的所述图的位置相对应。
12.如权利要求1的方法,其中:
所述曲线确定图像的色调。
13.一种计算机实现的方法,包括:
接受第一用户输入,其指明所显示的图中的区域,或者指明与所述区域相对应的所显示控制,所述控制位于与所述图分离的显示区中;
响应于所述第一用户输入,自动突出显示所述区域和所述控制;
基于第二用户输入自动调节与所述控制相关联的值。
14.如权利要求13的方法,其中:
所述第二用户输入是鼠标手势。
15.如权利要求14的方法,其中:
向上的鼠标手势增加所述值,而向下的鼠标手势降低所述值。
16.如权利要求13的方法,其中:
所述第二用户输入投射在所述所显示的图上。
17.如权利要求13的方法,其中:
所述所显示的图是直方图。
18.一种编码在计算机可读介质上的计算机程序产品,其可操作以使得数据处理装置执行操作,所述操作包括:
接受选择参数曲线的参数的用户输入,所述参数曲线显示在图中;
根据所述参数的值的范围来确定所述参数曲线的曲线范围;以及
在所述曲线的所述图中显示所述参数的所述曲线范围。
19.如权利要求18的程序产品,进一步包括以下操作:
突出显示与所述参数相对应的控制。
20.如权利要求18的程序产品,其中所述用户输入是以下之一:
参数控制的指示,所述图中区域的指示,或者图像中与所述曲线上的位置相对应的像素的指示。
21.如权利要求18的程序产品,进一步包括:
接受修改所述参数的值的用户输入。
22.如权利要求21的程序产品,其中所述用户输入是以下一个或多个:
鼠标手势或者击键。
23.如权利要求22的程序产品,其中:
向上的鼠标手势增加所述参数的值,而向下的鼠标手势降低所述参数的值。
24.如权利要求21的程序产品,进一步包括:
基于所述参数的所述值来确定新曲线;以及
在所述图中显示所述新曲线。
25.如权利要求18的程序产品,其中:
所述曲线范围表示关于所述图中的所述曲线的一个或多个区,所述曲线将根据所述参数的不同值而位于所述区中。
26.如权利要求18的程序产品,其中:
所述曲线是三次曲线的组合。
27.如权利要求26的程序产品,其中:
所述参数控制所述曲线的斜率。
28.如权利要求18的程序产品,其中:
所述曲线确定图像的色调。
29.一种编码在计算机可读介质上的计算机程序产品,其可操作以使得数据处理装置执行操作,所述操作包括:
接受第一用户输入,其指明所显示的图中的区域,或者指明与所述区域相对应的所显示控制,所述控制位于与所述图分离的显示区中;
响应于所述第一用户输入,自动突出显示所述区域和所述控制;以及
基于第二用户输入自动调节与所述控制相关联的值。
30.如权利要求29的程序产品,其中:
所述第一用户输入是鼠标手势。
31.如权利要求30的程序产品,其中:
向上的鼠标手势增加所述值,而向下的鼠标手势降低所述值。
32.如权利要求30的程序产品,其中:
所述鼠标手势投射在所述所显示的图上。
33.如权利要求29的程序产品,其中:
所述所显示的图是直方图。
34.一种系统,包括:
装置,用于接受选择参数曲线的参数的用户输入,所述参数曲线显示在图中;
装置,用于根据所述参数的值的范围来确定所述参数曲线的曲线范围;以及
装置,用于在所述曲线的所述图中显示所述参数的所述曲线范围。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US84274606P | 2006-09-07 | 2006-09-07 | |
US60/842,746 | 2006-09-07 | ||
US11/821,399 US8487931B2 (en) | 2006-09-07 | 2007-06-22 | Dynamic feedback and interaction for parametric curves |
US11/821,399 | 2007-06-22 | ||
PCT/US2007/077787 WO2008030983A2 (en) | 2006-09-07 | 2007-09-06 | Dynamic feedback and interaction for parametric curves |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101583973A true CN101583973A (zh) | 2009-11-18 |
CN101583973B CN101583973B (zh) | 2016-04-20 |
Family
ID=39158061
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200780039118.3A Active CN101583973B (zh) | 2006-09-07 | 2007-09-06 | 用于参数曲线的动态反馈和交互 |
Country Status (3)
Country | Link |
---|---|
US (1) | US8487931B2 (zh) |
CN (1) | CN101583973B (zh) |
WO (1) | WO2008030983A2 (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103473005A (zh) * | 2013-09-29 | 2013-12-25 | 深圳Tcl新技术有限公司 | 对播放的音频进行音效控制的方法及装置 |
CN108038891A (zh) * | 2017-12-28 | 2018-05-15 | 福建中金在线信息科技有限公司 | 一种图形处理方法及装置 |
CN113298916A (zh) * | 2020-07-14 | 2021-08-24 | 阿里巴巴集团控股有限公司 | 用于调整曲线的交互方法、装置和电子设备 |
CN113812940A (zh) * | 2021-08-25 | 2021-12-21 | 武汉联影生命科学仪器有限公司 | 调整调谐曲线显示的方法及显示交互装置 |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7725828B1 (en) * | 2003-10-15 | 2010-05-25 | Apple Inc. | Application of speed effects to a video presentation |
US8259118B2 (en) * | 2008-12-12 | 2012-09-04 | Mobitv, Inc. | Event based interactive animation |
US9319813B2 (en) * | 2009-03-31 | 2016-04-19 | Starkey Laboratories, Inc. | Fitting system with intelligent visual tools |
US8910046B2 (en) | 2010-07-15 | 2014-12-09 | Apple Inc. | Media-editing application with anchored timeline |
US9997196B2 (en) | 2011-02-16 | 2018-06-12 | Apple Inc. | Retiming media presentations |
US11747972B2 (en) | 2011-02-16 | 2023-09-05 | Apple Inc. | Media-editing application with novel editing tools |
US20140098142A1 (en) * | 2012-10-09 | 2014-04-10 | School Yourself, Inc. | System and method for generation and manipulation of a curve in a dynamic graph based on user input |
JP5892094B2 (ja) * | 2013-03-21 | 2016-03-23 | カシオ計算機株式会社 | グラフ表示制御装置、グラフ表示制御方法及びグラフ表示制御プログラム |
WO2015200303A1 (en) * | 2014-06-24 | 2015-12-30 | Google Inc. | User interface with quantum curves and quantum arcs |
JP6134985B2 (ja) * | 2014-07-31 | 2017-05-31 | 富士フイルム株式会社 | 曲線修正装置および方法並びにプログラム |
US10084866B1 (en) | 2015-12-28 | 2018-09-25 | Amazon Technologies, Inc. | Function based dynamic traffic management for network services |
US20170323385A1 (en) | 2016-05-09 | 2017-11-09 | Axioma, Inc. | Methods and apparatus employing hierarchical conditional variance to minimize downside risk of a multi-asset class portfolio and improved graphical user interface |
US20180064403A1 (en) * | 2016-09-06 | 2018-03-08 | Toshiba Medical Systems Corporation | Medical image diagnostic apparatus |
WO2019068215A1 (en) * | 2017-10-03 | 2019-04-11 | Intel Corporation | VISUAL GRAPHICS INSPECTION TECHNIQUES FOR THE ANALYSIS AND IDENTIFICATION OF SELECTED SCHEMES |
CN109960454B (zh) * | 2019-03-11 | 2022-08-02 | 深圳市诺为控制技术有限公司 | 电器设备的用户参数输入方法、装置及使用该方法的电器设备 |
US11127124B2 (en) * | 2019-10-28 | 2021-09-21 | Adobe Inc. | Evenly spaced curve sampling technique for digital visual content transformation |
US11321781B1 (en) * | 2021-03-11 | 2022-05-03 | Bottomline Technologies, Inc. | System and a method for facilitating financial planning |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4686635A (en) * | 1984-09-10 | 1987-08-11 | Allied Corporation | Method and apparatus for generating a set of signals representing a curve |
US5982379A (en) * | 1996-06-04 | 1999-11-09 | Ricoh Company, Ltd. | Interactive color system editor and method of specifying potable color system framework representation |
EP0886437B1 (en) * | 1997-06-17 | 2004-11-24 | Seiko Epson Corporation | Method and apparatus for colour adjustment |
JP3586565B2 (ja) * | 1998-05-14 | 2004-11-10 | シャープ株式会社 | 棒グラフ表示方法およびそのプログラム記憶媒体 |
US6847376B2 (en) * | 1998-11-13 | 2005-01-25 | Lightsurf Technologies, Inc. | Method and system for characterizing color display monitor output |
US6323852B1 (en) * | 1999-01-04 | 2001-11-27 | Leadscope, Inc. | Method of analyzing organizing and visualizing chemical data with feature hierarchy |
JP2000251086A (ja) * | 1999-02-26 | 2000-09-14 | Sony Corp | 曲線生成装置及び方法、並びにプログラム提供媒体 |
KR100490405B1 (ko) * | 2002-07-02 | 2005-05-17 | 삼성전자주식회사 | 프린팅 시스템에 있어서 이미지의 색상 조정방법 및 이를위한 그래픽 사용자 인터페이스 |
DE10303258A1 (de) * | 2003-01-28 | 2004-08-05 | Red Chip Company Ltd. | Graphischer Audio-Equalizer mit parametrischer Equalizer-Funktion |
US7372464B2 (en) * | 2003-07-21 | 2008-05-13 | Autodesk, Inc. | Processing image data |
JP4143549B2 (ja) * | 2004-01-28 | 2008-09-03 | キヤノン株式会社 | 画像処理装置及び方法、並びに、コンピュータプログラム及びコンピュータ可読記憶媒体 |
US7286131B2 (en) * | 2005-05-26 | 2007-10-23 | Microsoft Corporation | Generating an approximation of an arbitrary curve |
-
2007
- 2007-06-22 US US11/821,399 patent/US8487931B2/en active Active
- 2007-09-06 CN CN200780039118.3A patent/CN101583973B/zh active Active
- 2007-09-06 WO PCT/US2007/077787 patent/WO2008030983A2/en active Application Filing
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103473005A (zh) * | 2013-09-29 | 2013-12-25 | 深圳Tcl新技术有限公司 | 对播放的音频进行音效控制的方法及装置 |
CN103473005B (zh) * | 2013-09-29 | 2017-04-26 | 深圳Tcl新技术有限公司 | 对播放的音频进行音效控制的方法及装置 |
CN108038891A (zh) * | 2017-12-28 | 2018-05-15 | 福建中金在线信息科技有限公司 | 一种图形处理方法及装置 |
CN113298916A (zh) * | 2020-07-14 | 2021-08-24 | 阿里巴巴集团控股有限公司 | 用于调整曲线的交互方法、装置和电子设备 |
CN113812940A (zh) * | 2021-08-25 | 2021-12-21 | 武汉联影生命科学仪器有限公司 | 调整调谐曲线显示的方法及显示交互装置 |
CN113812940B (zh) * | 2021-08-25 | 2024-04-26 | 武汉联影生命科学仪器有限公司 | 调整调谐曲线显示的方法及显示交互装置 |
Also Published As
Publication number | Publication date |
---|---|
WO2008030983A2 (en) | 2008-03-13 |
WO2008030983A3 (en) | 2008-05-02 |
CN101583973B (zh) | 2016-04-20 |
US20080062177A1 (en) | 2008-03-13 |
US8487931B2 (en) | 2013-07-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101583973B (zh) | 用于参数曲线的动态反馈和交互 | |
US8009177B2 (en) | User interfaces for managing image colors | |
US8438498B2 (en) | Managing user interface control panels | |
RU2443014C2 (ru) | Изменение диаграммы | |
US8849028B2 (en) | Color selection tool for selecting a custom color component | |
US9424799B2 (en) | On-screen image adjustments | |
US20110167336A1 (en) | Gesture-based web site design | |
US20150109323A1 (en) | Interactive black and white image editing | |
US20120206655A1 (en) | Color balance | |
CN104247390A (zh) | 用于修剪和拉直图像的用户界面工具 | |
US20190304141A1 (en) | Interactive color palette interface for digital painting | |
US20090089739A1 (en) | Intelligent editing of relational models | |
WO2006044834A2 (en) | Desktop alert management | |
US20130093782A1 (en) | Color Selection and Chart Styles | |
CN104247392A (zh) | 用于媒体编辑应用程序的扇形用户界面控件 | |
US20110167360A1 (en) | Incoming web traffic conversion | |
US20140237357A1 (en) | Two-dimensional document navigation | |
US8077182B2 (en) | User interface controls for managing content attributes | |
US20140063047A1 (en) | Duotone effect | |
US20150207478A1 (en) | Adjusting Controls of an Audio Mixer | |
US11829712B2 (en) | Management of presentation content including generation and rendering of a transparent glassboard representation | |
US11188213B2 (en) | Edit experience for transformation of digital content | |
US20180089201A1 (en) | Rendering and interacting with transmedia content data | |
CN114518821A (zh) | 应用图标管理方法、装置和电子设备 | |
CN113987384A (zh) | 态势感知大屏的页面自定义方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |