CN116108826A - 用于设计者的智能改变总结 - Google Patents

用于设计者的智能改变总结 Download PDF

Info

Publication number
CN116108826A
CN116108826A CN202211026469.3A CN202211026469A CN116108826A CN 116108826 A CN116108826 A CN 116108826A CN 202211026469 A CN202211026469 A CN 202211026469A CN 116108826 A CN116108826 A CN 116108826A
Authority
CN
China
Prior art keywords
document
version
versions
distance
changes
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.)
Pending
Application number
CN202211026469.3A
Other languages
English (en)
Inventor
S·布维
V·维纳伊
N·H·克哈雅
N·戈亚尔
E·曹
B·V·斯里尼瓦桑
A·加里梅拉
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.)
Adobe Inc
Original Assignee
Adobe Systems Inc
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 Adobe Systems Inc filed Critical Adobe Systems Inc
Publication of CN116108826A publication Critical patent/CN116108826A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/197Version control
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • G06F16/9027Trees
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/93Document management systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/14Tree-structured documents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/194Calculation of difference between files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • G06Q10/101Collaborative creation, e.g. joint development of products or services

Abstract

公开了用于生成智能改变总结的实施例。在一些实施例中,一种生成智能改变总结的方法包括:获得文档的多个版本的表示;基于文档的第一版本和文档的第二版本的比较来确定距离得分,距离得分表示从文档的第一版本到文档的第二版本做出的改变的幅度;以及基于距离得分生成文档的改变总结。

Description

用于设计者的智能改变总结
背景技术
共同编辑是协作的关键目标,它允许多个创建者在相同的画布/画板上同时进行设计。越来越多的设计工作流程正在转向数字平台,数字平台使能了协作者的地理分布。因此,具有不同专业水平的设计者在共同的画布上一起工作的场景正在增加。这可以采取基于云的文档的形式,基于云的文档可以被远程维护并且由多个用户访问。云文档使能协作-在一些情况下,使能实时共同编辑。云文档经常自动保存,并且这些先前的保存可以经由文档历史或版本历史而对用户可用。这使得用户能够浏览、访问和恢复他们正在协作的文档的先前状态。然而,对改变的管理,特别是对长期文档的管理,是复杂的,并且在不知道这些改变是在何时做出的情况下,可能难以标识对文档做出特定改变的版本。
关于电子系统中的协作设计存在这些和其他问题。
发明内容
这里介绍的是提供自动化方法来显现云文档中随时间的改变的方法/技术。这使能了浏览改变以及标识可以代表文档生命周期中的拐点的点的不同方式。在一些实施例中,设计管理系统对文档的版本进行比较,以清楚地标出用户在解决选择打开文档的哪个版本或将哪个版本标记为里程碑的问题时可能感兴趣的改变。然后,这些标识的拐点可以被用户利用,以用于增加导航的便利性以及标记书签版本以供存档和将来使用。
本公开的示例性实施例的附加特征和优点将在随后的描述中被阐明,并且部分地将从描述变得明显,或者可以通过对这种示例性实施例的实践来了解。
附图说明
参考附图描述详细描述,其中:
图1图示了根据一个或多个实施例的智能改变总结的过程的示意图;
图2图示了根据一个或多个实施例的文档的结构的图;
图3图示了根据一个或多个实施例的计算文档的版本之间的距离的过程的图;
图4图示了根据一个或多个实施例的对基于距离指标发现的文档的改变的示例;
图5图示了根据一个或多个实施例的高重要性改变的示例;
图6图示了根据一个或多个实施例的中重要性改变的示例;
图7图示了根据一个或多个实施例的低重要性改变的示例;
图8图示了根据一个或多个实施例的标识与在文档的版本之间做出的改变相关联的编辑类型的过程的图;
图9图示了根据一个或多个实施例的生成文档的改变总结的过程的图;
图10图示了根据一个或多个实施例的示例用户接口;
图11图示了根据一个或多个实施例的设计管理系统的示意图;
图12图示了根据一个或多个实施例的智能改变总结的方法中的一系列动作的流程图;
图13图示了根据一个或多个实施例的图像处理系统可以在其中操作的示例性环境的示意图;以及
图14图示了根据一个或多个实施例的示例性计算设备的框图。
具体实施方式
跟踪改变、版本控制和保存检查点是许多软件应用的共同特征。例如,GitHub经由提交跟踪对代码做出的改变,并且提供工具来直观地比较什么行被添加和删除。ViusalStudio Code遵循类似的例程来描述两个代码实例之间的差异。各种应用为用户提供了带有时间戳的版本以及突出显示的改变。在线设计应用也提供版本控制,但这些设计应用主要使能同步工作流,跨版本没有冲突。这种常规的应用不尝试构建和/或语义理解多个用户在时间戳索引之外,在其画布上做出的改变。其他应用可以标识冲突的编辑,但以其他方式依赖用户注释来标识哪些改变是重要的。
如所讨论的,现有系统没有解决理解复杂数字设计空间中的改变的问题,其中改变的范围可以从微小(改变矩形的边框厚度)到显著(改变画布的情感主题)。在得出改变的意图和/或排名(例如,按质量、重要性等)方面没有进行尝试。文本编辑模型和图像编辑模型跨小时间段应用有限范围的简单改变。实施例收集并且总结跨更大的时间段的改变,诸如设计文档的全部或部分生命周期。
实施例自动标识协作文档/设计中的重要编辑/改变点。对这些改变进行评分以标识文档中可用的各种编辑和改变的拐点。评分还可以用于区分文档或设计中的常规(例如,次要)改变和拐点(例如,主要改变)。这使能了到关键点的快速导航,并且使能了重要文档版本的自动标识。
尽管现有技术通常跟踪改变,但这些工具需要用户手动检查给定文档的数百个版本,以导航通过沿途出现的改变的进程,以标识引入重要改变的版本。此外,由于改变和编辑通常跨多个维度出现,因此在设计的其余部分的上下文中标识改变的语义重要性并非易事。实施例允许对文档的重要改变被标识,根据做出的改变的类型被标记,以及根据得分、改变类型等被排序。这使得用户更容易跟踪和报告更新,并且如果需要,恢复到特定改变。
图1图示了根据一个或多个实施例的智能改变总结的过程的图。如图1中所示,实施例可以包括设计管理系统100。在一些实施例中,设计管理系统100可以被合并到设计应用、应用套件等中,或者可以被实现为与设计应用、应用套件等对接的独立系统,以向与其对接的(多个)应用提供版本跟踪和管理服务。设计管理系统100负责基于跨文档的版本出现的改变来对文档的版本进行排名和分类。
例如,在数字1处,设计管理系统100可以接收设计版本历史102。设计版本历史102可以包括特定文档的多个带时间戳的版本。在一些实施例中,设计版本历史可以是一种数据结构,该数据结构指向或以其他方式链接到文档的多个带时间戳的版本,该文档可以被存储在中央存储位置中或跨多个电子设备(例如,桌面计算机、膝上型计算机、服务器、移动设备等)存储。在一些实施例中,文档的每个版本可以是由一个或多个用户保存,或由正在其中编辑文档的应用自动保存的单独文件。在一些实施例中,设计版本历史102可以特定于文档和/或应用的类型,并且可以通过应用对设计管理系统100可用。
当设计版本历史102被设计管理系统100接收时,它可以由表示管理器104处理。在一些实施例中,在数字2处,表示管理器104可以基于其版本历史102生成文档的表示。例如,如下文进一步讨论的,设计版本历史可以被转换为JSON、XML或其他格式。表示格式使得版本历史102中的文档的各种版本能够被比较,以标识从一个版本到下一个版本的改变。通过将文档的版本的表示与文档的先前版本的表示进行比较,文档如何被改变的进展(例如,在什么时候添加了什么,在什么点处某些项改变、某些项被删除,等等)可以由设计管理系统100确定。在标识出这些改变之后,实施例对这些改变进行评分,并且标识跨连续改变的delta或差异,以使用在下面进一步描述的无监督评分和距离计算技术来标记文档中的拐点。
如前所述,共同编辑文档产生多个版本,这些版本在一系列改变之后被自动保存。在数字3处,距离管理器106从表示管理器104接收设计版本历史102的表示。在一些实施例中,到设计管理系统100的输入可以是设计版本历史102的表示(例如,以便不需要重新格式化)。在这种情况下,可以绕过表示管理器104。备选地,表示管理器104可以确定输入的设计版本历史102已经被正确格式化(例如,基于文件类型或其他属性)并且穿过表示传递到距离管理器106。
在数字4处,距离管理器106确定距离指标值,距离指标值指示文档的两个版本的不同程度。距离管理器106可以对设计版本历史中的每个连续版本对确定距离指标。如所讨论的,设计版本历史102可以包括多个保存的版本。所保存的版本可以被定义为vi,i=1,..,T。这些版本中的每个版本可以包括对先前版本的改变序列。为了确定多个版本中的拐点,在第i版本和第i+1版本之间定义了距离函数d(vi,vi+1)。
实施例关于用户接口设计文档进行描述,诸如,用户接口设计文档由诸如AdobeXD的用户接口设计应用生成。这是为了解释简单,并且不旨在是限制性的。实施例类似地可适用于与不同设计应用相关联的其他设计文档类型。如上所述,文档版本可以包括多个画板,诸如b1,b2,..,bn。在一些实施例中,bij表示对应于第i个版本中的第j个画板的数据,包括定义在该时间步长处的画布上的各种元素的状态的属性。元素可以包括形状(矩形、椭圆、线等)、文本或诸如组件的组等。随着新的对象定义被添加到设计/创建平台,该方法可适于扩展到其他类型的元素。根据元素类型,各种属性可以包括尺寸、位置、笔划、颜色、文本等。以下符号被定义:
Figure BDA0003815726440000051
是画板bij上的第k个元素,k=1,2...K。
Figure BDA0003815726440000052
是第
Figure BDA0003815726440000053
个元素的第p个属性,p=1,2...P。
对于现有画板和对象中的改变,第i个版本和第i+1个版本之间的距离d(vi,vi+1)被评估为,
Figure BDA0003815726440000054
这里的第一项确定了跨版本i和版本i+1的不同属性(诸如“填充”、“文本”、“形状”)之间的改变距离。例如,当考虑“文本”属性时,第一项产生加权的莱文斯坦(Levenshtein)距离。第二项对应于画板的添加或删除。K(j′)是添加/删除的画板j′上的元素数目,其中
Figure BDA0003815726440000055
直观地,这里捕获了画板上的元素之间的差异以及跨这些元素的属性中的差异。这有助于根据明确定义的步骤来量化改变。
为了标识拐点版本,在后一个(i)版本和当前(i+1)版本之间具有最高距离指标值的前k(k=5)个版本(例如,表示与其先前版本相比改变最多的版本)被考虑。在一些实施例中,K的值基于与被分析的文档相关联的得分分布凭经验进行确定。基于得分中的代尔塔(delta)(即距离值),拐点版本或点进一步被分类为高重要性、中重要性和低重要性。提供这些值作为相对于非常严格的指标的指导,因为它们对于设计者及其在文档上下文中的需求往往是主观的。
虽然跨文件中的所有编辑标识拐点有助于轻松导航,但还需要区分文档上出现的编辑类型。在一些实施例中,在数字5处,编辑管理器108负责标识与在文档的版本之间做出的改变相关联的编辑类型。在一些实施例中,编辑管理器108可以接收由如上所述的距离管理器106标识的版本之间的改变列表。然后,编辑管理器可以标识与版本的表示中的改变属性相关联的“键”,以确定已经做出的改变的类型。
能够按做出的编辑类型来导航改变,改进了审阅者专注于对他们重要的改变的能力。例如,与文本文档的审阅者相比,颜色编辑对于设计文档的审阅者可能更重要。另一方面,文本字段中的改变对于语义至关重要的文本繁重文档的审阅者可能更重要。因此,版本之间的改变进一步被分类为至少以下类型:添加、画板添加、画板删除、颜色改变、删除和文本改变。上面的等式1也可以应用于类型特定改变的局部子集上的拐点检测。这使用户能够使用诸如“带我到颜色改变”或“组件添加”等术语来导航通过他们的历史和改变。注意,这些改变不会孤立地出现,并且因此需要一些关于拐点标识的公式。
在一些实施例中,编辑管理器接收列表或其他数据结构,该列表或其他数据结构标识在版本之间做出的改变,如在数字4处由距离管理器标识的。备选地,编辑管理器可以执行其自己的对从表示管理器104获得的文档的两个版本的表示的比较。如所讨论的,表示管理器可以将文档的版本从设计版本历史102转换成用于分析的格式。例如,表示管理器104可以将画板AGC文件转换为JSON格式,并且使用现有的键作为改变类型的指示符。例如,“填充”键的值的所有改变被分类为颜色改变。AGC-JSON文档中的“文本”键的值的任何改变可以被分类为文本改变。新添加的画板被分类为“画板添加”改变,并且移除的画板被分类为“画板删除”。当正被处理的版本中的一个版本中没有对应的画板时,画板被标识为已被添加或删除。类似地,如果与先前版本相比,从文档的版本中移除了元素,则该改变被分类为“删除”。同样,如果与文档的先前版本相比添加了元素,则该改变被分类为“添加”。
在一些实施例中,可以根据重要性对不同的键进行加权。例如,“填充”键可以在具有层次重要性的不同抽象水平下进行加权。与在图形对象水平下的“填充”改变相比,这允许在画板水平下的“填充”改变获得更高的权重。在一些实施例中,序列匹配器用于将JSON元素对齐,并且将改变分类为对应类型。这确保了跨两个版本比较相同画板的“填充”或“文本”键-值对。
在版本之间的改变已经被标识,并且距离得分和编辑类型被确定之后,在数字6处,该信息可以被提供给总结管理器110。在数字7处,总结管理器110可以生成改变的视觉表示,该视觉表示标识在文档的版本之间做出的改变。如进一步讨论的,所得的改变总结120可以突出高、中和低重要性改变,使得用户能够恢复对特定元素做出的改变的先前版本等。在数字8处,改变总结可以被输出给用户。这可以包括将改变总结显示为设计应用的图形用户接口的一部分、作为独立的设计管理或版本管理应用显示改变总结,等。在一些实施例中,可以以可以在设计应用之外审阅的格式生成改变总结,格式诸如是便携文档格式(PDF)文档等。
图2图示了根据一个或多个实施例的文档200的结构的图。在一些实施例中,可以利用唯一标识符对每个文档进行索引,该唯一标识符可以用于从存储位置查询相关文档数据。文档数据可以包括版本的列表,并且每个版本可以包括组件和/或交互的集合。在图2的示例中,文档200与M-1个版本相关联:版本1 202至版本M 208。每个版本与一个或多个画板相关联。例如,版本3 206包括N-1个画板:画板1 210至画板N 216。每个画板还可以包括交互的一个或多个组件。例如,画板2 212包括K-1个组件:组件1 218至组件K 220和交互222。可以不同地组织其他类型的文档。例如,文档200可以是用户接口设计文档。如果正在呈现文本文档,则每个版本可以不包括画板。
设计管理系统100使用清单文件在组件上进行迭代,并且下载针对版本中的每个版本的组件和/或交互。将组件从其现有格式(诸如AGC格式)转换为表示格式(诸如JSON格式)以进行处理。每个组件带有诸如形状、尺寸、颜色、画布中的相对位置和绝对位置、画板ID、名称、文本等的特征。组件可以基于其画板ID被分组在一起。这为要跨版本分析的画布提供了文本上下文。在一些实施例中,当画板的呈现被存储时,可以从文档数据自然地获得视觉上下文。备选地或附加地,画板的屏幕截图可以被(手动或自动)获得并且用于视觉上下文。
图3图示了根据一个或多个实施例的计算文档的版本之间的距离的过程的图。如所讨论的,距离管理器106负责标识文档的版本(诸如版本A-D 300-306)之间的改变。如上所述,版本300-306可以从版本历史获得。版本可以是文档的版本的表示,文档已被转换为JSON或其他格式的文件以捕获每个版本的元素。这些版本可以由差异管理器308接收,差异管理器308对来自每个连续版本对的对应元素进行比较。例如,如图3中所示,差异管理器308可以从四个输入版本计算三个差异。这些差异包括差异B-A 312、差异C-B 314和差异D-C 316。可以根据由距离管理器接收的版本的数目,计算更多或更少的差异。
每个差异312-314可以包括两个版本之间的所有改变的列表。这可以包括不同的填充值、不同的文本值、新的或移除的元素等。这些差异可以被提供给距离函数318。距离函数318可以计算量化版本之间的改变的距离。例如,上面的等式1示出了一个可以用来计算距离值的这种距离函数318。在等式1的示例中,距离值是元素的属性值的改变与新元素或移除元素的总数目的组合。然而,也可以使用备选的距离函数。例如,可以将权重应用于某些类型元素的值。
图4图示了根据一个或多个实施例的对基于距离指标发现的文档的改变的示例。图4示出了示例文件及其版本的得分。左侧的表400示出了版本402(以日期/时间戳命名)以及距右侧的先前版本的计算距离404。注意,这些数字是相对于绝对值的距离或得分差异。对于突出显示的图像,设计管理系统将突出显示的画板改变列为由“2月3日,上午2点59分”索引的最显著改变之一,与先前的快照的距离为400点。这里,如所见的,与“2月3日,上午1点27分”版本相比,在“2月3日,上午2点59分”版本中添加了在缩放视图中突出显示的三个新画板406,并且没有修改现有的画板。因此,基于等式1,400分的距离得分将包括三个新画板的元素的总数目,该总数目在本示例中等于400。如果修改了其他现有画板,则这些改变也被考虑为距离得分的因素,如上面关于等式1讨论的。
图5图示了根据一个或多个实施例的高重要性改变的示例。如图5中所示,还可以基于画板内的改变来标识特定的拐点。例如,在文档的先前版本中,画板500包括舞会横幅元素502。在后续版本中,画板已被修改为画板504,画板504现在描绘了情绪板/创意板506。这表示对文档的高重要性改变,因为整个画板已被改变。这导致在画板中添加和移除了大量元素,产生高距离得分。在一些实施例中,可以将与新元素相关联的属性的数目相加,以确定这些新元素的距离得分。在一些实施例中,新元素的属性的值可以用于确定距离得分。例如,较大的新元素由于具有较大的尺寸属性,可以比小元素贡献更高的距离得分。
图6图示了根据一个或多个实施例的中重要性改变的示例。在图6中,在画板的集合600内示出了部分改变,在画板的集合600中添加了设计块(即,颜色和不透明度元素)。如图6中所示,先前的画板在区域602中不包括任何元素。在后续版本中,更新的画板604现在包括设计块606,设计块606具有允许用户与文档交互的数个用户接口控件。这表示对文档的中重要性改变,因为元素被添加到文档但大部分画板保持不变。这产生与添加的元素数目相对应的距离得分。在一些实施例中,每个元素可以对距离得分贡献相同的量(例如,一个新元素等于添加到距离得分的一个附加分数)。备选地,不同类型的元素可以具有不同的得分,它们对距离得分贡献该不同的得分。例如,与被动元素(例如,图像等)相比,用户交互元素可以与更高的得分相关联。附加地或备选地,添加或移除的元素的属性可以对距离得分有贡献。例如,较大的元素(如由其“尺寸”属性所指示的)可以比较小的元素贡献更大的距离得分。
图7图示了根据一个或多个实施例的低重要性改变的示例。图7示出了一种改变,该改变被检测为具有低重要性的改变。在图7的示例中,先前版本画板700中的元素已在后续版本画板702中被缩放。在该示例中,它是小的缩放改变,如在704处所指示的。在该特定设计中观察到的其他改变和各种改变的上下文中,该特定的缩放改变被称为具有低重要性的改变。这表示低重要性的改变,因为元素在画板中的一个画板中被略微缩放。
图8图示了根据一个或多个实施例的标识与在文档的版本之间做出的改变相关联的编辑类型的过程的图。如所讨论的,编辑管理器108可以接收由距离管理器106生成的差异310-316。编辑管理器可以包括键管理器800,键管理器800标识与每个差异中的每个改变的属性相关联的键。如所讨论的,键可以包括“填充”或“文本”键-值对,或者可以包括与差异中表示的改变的值相关联的其他键。在与改变相关联的键已经由键管理器800标识之后,它们就可以由编辑类型分类器802分类为编辑类型。编辑类型分类器可以包括将键映射到特定编辑类型的数据结构。例如,填充键可以映射到颜色编辑类型,文本键可以映射到文本编辑类型等。在改变已经被映射到它们的编辑类型之后,编辑类型计数器804可以对每个差异确定编辑类型的数目。例如,编辑类型计数器可以包括多个计数器(例如,每个编辑类型一个计数器),这些计数器随着编辑类型被标识而递增。
图9图示了根据一个或多个实施例的生成文档的改变总结的过程的图。如图9中所示,总结管理器119可以接收来自距离管理器106和编辑类型计数器804的差异数据900(例如,上述差异312-316)和距离数据902(例如,上述距离值322-326),并且可以接收来自编辑管理器108的编辑类型数据903。使用该数据,总结管理器110可以生成文档的智能改变总结。
在一些实施例中,总结管理器110可以包括集群管理器904。集群管理器904可以标识距离值的集群以标识高、中和低重要性改变。通常,大多数版本相对于先前版本没有或只有很少改变。因此,与这些版本相关联的距离值预计为零或接近零。这些版本通常可以被总结管理器忽略。相反,集群管理器904可以标识距离得分的集群,包括对应于高重要性改变的K个最大距离得分,然后是中等得分的集群和低得分的集群。这些集群的大小可以根据正被分析的文档的距离得分的分布而变化。
总结管理器110可以进一步包括标签管理器906。标签管理器906可以接收编辑类型数据903,编辑类型数据903可以包括与差异数据中的改变相关联的编辑类型,如上面描述的由编辑类型分类器确定的。标签管理器906可以生成要与距离得分相关联的一个或多个标签。在一些实施例中,对给定版本的距离得分有贡献的每个编辑类型可以用该版本来标记。备选地,可以标记对该版本得分贡献最大距离量的编辑类型。此外,标签管理器906可以用与其集群相关联的标识符来标记已经被集群的版本。例如,高重要性集群中的版本可以被标记为具有高重要性,并且对每个集群以此类推。然后可以将标签和距离数据提供给总结生成器908,总结生成器908生成版本历史的视觉表示,包括与每个版本相关联的距离得分和标签。
图10图示了根据一个或多个实施例的示例用户接口1000。如图10中所示,用户接口1000可以使用户能够按时间顺序察看版本历史,或者根据特定的编辑类型1002对版本进行排序。当排序时,沿所选维度(例如,文本、颜色等)的最高得分版本可以被首先显示。对于用户来说,这简化了版本历史的审阅,允许用户快速标识相关版本进行检查。
在一些实施例中,用户接口1000可以包括表格,该表格包括版本号/排名1004、版本时间戳1006、改变的缩略图1008和标签1010。例如,版本8被示为具有改变。这在缩略图1012中进行图示,缩略图1012可以被选择来向用户显示该版本与先前版本的易于比较的视图。此外,改变已经用文本改变标签1014标记,文本改变标签1014指示改变包括但不限于与先前版本相比时的文本改变。在一些实施例中,用户接口1000还可以包括全局总结1016,其包括视觉形式的编辑类型计数器数据,编辑类型计数器数据指示出现在版本历史中的改变的每种类型的数目。
图11图示了根据一个或多个实施例的设计管理系统(例如,上述“设计管理系统”)的示意图。如所示的,设计管理系统1100可以包括但不限于用户接口管理器1102、表示管理器1104、距离管理器1106、编辑管理器1108、总结管理器1110和存储管理器1112。存储管理器1112包括设计版本历史1118和改变总结1120。
如图11中所示,设计管理系统1100包括用户接口管理器1102。例如,用户接口管理器1102允许用户选择要由设计管理系统处理的一个或多个文档或文档版本历史。在一些实施例中,用户接口管理器1102使用户能够选择一个或多个文件,该一个或多个文件包括设计版本历史1118并且由存储管理器1112存储或访问。在一些实施例中,用户接口管理器1102使用户能够从设计版本历史选择要比较的特定版本(例如,基于时间戳数据、版本标识符等选择一个范围)。此外,用户接口管理器1102允许用户请求设计管理系统为所选择的设计版本历史生成改变总结1120。此外,用户接口管理器1102允许用户察看改变总结、将文档的全部状态或部分状态恢复到在文档的不同版本中表示的较早状态等。在一些实施例中,改变总结可以经由通过用户接口管理器1102管理的用户接口元素而被呈现给用户,用户接口元素诸如是侧边栏、弹出窗口或其他视觉元素。这可以通过数字设计应用的图形用户接口、作为独立的设计管理应用或其他应用来提供。
如图11中进一步所示的,设计管理系统1100还可以包括表示管理器1104。表示管理器1104可以接收设计版本历史,并且可以生成与版本历史相关联的每个版本的表示。在一些实施例中,如上所述,这可以包括将版本历史从第一格式转换为第二格式。例如,画板可以以AGC格式文件进行存储。表示管理器1104可以将AGC文件转换为JSON或其他格式的文件,并且以树结构表示设计版本历史。这允许比较来自不同版本的相似元素的属性。
如图11中进一步所示的,设计管理系统1100还可以包括距离管理器1106。如所讨论的,距离管理器1106负责基于文档的版本历史,来比较正被处理的文档的连续版本。距离管理器1106可以首先计算一个差异,该差异表示一个版本与其先前版本之间的所有改变。这些可以包括添加、属性值改变(例如,尺寸、位置、填充、线宽度、文本等)。然后这些改变可以由距离函数处理,该距离函数为每个改变分配分数值。例如,距离函数可以为每个添加的元素分配分数,并且为每个删除的元素移除分数。在一些实施例中,可以基于新元素的属性为新元素分配分数。例如,基于每个元素的尺寸属性,较大元素可以比较小元素对距离得分贡献更大的总分数。对于改变的元素,分数可以是基于改变。例如,如果元素的尺寸属性改变了X个像素,则可以向距离添加X分数。类似地,如果元素的填充颜色改变,则这些颜色的这些十六进制值可以被比较,并且差异用于为颜色改变分配分数值。在一些实施例中,可以对所有改变进行同等加权。备选地,一些类型的改变可以比其他类型的改变更重地加权。例如,颜色在前(color-forward)文档可以对颜色改变比对文本改变更多加权,而文本在前(text-forward)文档可以对文本改变更高加权。
如图11中进一步所示的,设计管理系统1100还可以包括编辑管理器1108。如所讨论的,编辑管理器1108负责标识与在版本之间找到的改变相关联的编辑类型。在一些实施例中,编辑管理器1108可以接收由距离管理器生成的差异,并且标识与改变相关联的键。编辑管理器1108可以包括将键映射到编辑类型的数据结构。例如,对填充键的改变对应于颜色改变,对文本键的改变对应于文本改变等。编辑管理器1108可以附加地维持编辑类型计数器,当对差异中的改变标识编辑类型时,该计数器递增。
如图11中进一步所示的,设计管理系统1100还可以包括总结管理器1110。总结管理器1110可以从距离管理器和编辑管理器接收距离得分、编辑类型数据和计数器数据,并且生成体现在版本历史中的改变的视觉表示(例如,改变总结1120)。例如,改变总结1120可以使用户能够从一个版本导航到另一个版本,并且被呈现与该版本相关联的改变的描述和/或描绘。如所讨论的,总结管理器1110可以基于找到的改变的类型来标记版本。此外,总结管理器1110可以包括版本和先前版本的缩略图,该缩略图指示找到的改变。在一些实施例中,可以基于改变的类型、距离得分、距离得分的重要性等对改变总结进行排序。在一些实施例中,改变总结1120可以包括一种数据结构,该数据结构指示在版本历史或一个或多个所选择的版本中做出的改变的每种类型的数量。
如图11中所示,设计管理系统1100还包括存储管理器1112。存储管理器1112维持用于设计管理系统1100的数据。存储管理器1112可以维持如执行设计管理系统1100的功能所需的任何类型、尺寸或种类的数据。如图11中所示,存储管理器1112包括设计版本历史1118。设计版本历史1118可以包括特定文档的多个带时间戳的版本。在一些实施例中,设计版本历史可以是一种数据结构,该数据结构指向或以其他方式链接到文档的多个带时间戳的版本,该文档可以被存储在中央存储位置中或跨多个电子设备(例如,桌面计算机、膝上型计算机、服务器、移动设备等)存储。在一些实施例中,文档的每个版本可以是由一个或多个用户保存,或由正在其中编辑文档的应用自动保存的单独文件。在一些实施例中,设计版本历史可以特定于文档和/或应用的类型,并且可以通过应用对设计管理系统100可用。
如图11中进一步所示的,存储管理器1112还包括改变总结1120。改变总结1120可以包括跨由设计管理系统正在分析的设计版本历史中的版本做出的改变的可视化。例如,改变总结1120可以实现为应用的图形用户接口的用户接口元素。如所讨论的,改变总结1120可以使用户能够从一个版本导航到另一个版本,并且被呈现与该版本相关联的改变的描述和/或描绘。如所讨论的,总结管理器1110可以基于找到的改变的类型来标记版本。此外,总结管理器1110可以包括版本和先前版本的缩略图,该缩略图指示找到的改变。在一些实施例中,可以基于改变的类型、距离得分、距离得分的重要性等对改变总结进行排序。在一些实施例中,改变总结1120可以包括一种数据结构,该数据结构指示在版本历史或一个或多个所选择的版本中做出的改变的每种类型的数量。
设计管理系统1100的组件1102-1112中的每个组件及其对应元件(如图11中所示)可以使用任何适当的通信技术相互通信。应当认识到,尽管组件1102-1112及其对应元件在图11中被示为分离,但组件1102-1112中的任何组件及其对应元件可以被组合成更少的组件(诸如组合成单个设施或模块)、被划分成更多的组件,或者被配置成可以服务于特定实施例的不同组件。
组件1102-1112及其对应元件可以包括软件、硬件或两者。例如,组件1102-1112及其对应元件可以包括一个或多个指令,该一个或多个指令被存储在计算机可读存储介质上并且可由一个或多个计算设备的处理器执行。当由一个或多个处理器执行时,设计管理系统1100的计算机可执行指令可以使客户端设备和/或服务器设备执行本文描述的方法。备选地,组件1102-1112及其对应元件可以包括硬件,诸如用于执行特定功能或功能组的专用处理设备。附加地,组件1102-1112及其对应元件可以包括计算机可执行指令和硬件的组合。
此外,设计管理系统1100的组件1102-1112可以例如被实现为一个或多个独立应用、应用的一个或多个模块、一个或多个插件、一个或多个库函数或可以由其他应用调用的函数,和/或云计算模型。因此,设计管理系统1100的组件1102-1112可以被实现为独立应用,诸如桌面或移动应用。此外,设计管理系统1100的组件1102-1112可以被实现为托管在远程服务器上的一个或多个基于web的应用。备选地或附加地,设计管理系统1100的组件可以被实现在一套移动设备应用或“app”中。为了说明,设计管理系统1100的组件可以被实现为应用的一部分或应用的套件,包括但不限于ADOBE CREATIVE CLOUD、ADOBE PHOTOSHOP、ADOBE ACROBAT、ADOBE ILLUSTRATOR、ADOBE LIGHTROOM和ADOBE INDESIGN。“ADOBE”、“CREATIVE CLOUD”、“PHOTOSHOP”、“ACROBAT”、“ILLUSTRATOR”、“LIGHTROOM”和“INDESIGN”是Adobe公司在美国和/或其他国家的注册商标或商标。
图1至图11、对应的文本和示例提供了许多不同的系统和设备,它们允许智能改变总结。除了前述之外,还可以根据流程图来描述实施例,流程图包括用于实现特定结果的方法中的动作和步骤。例如,图12图示了根据一个或多个实施例的示例性方法的流程图。结合图12描述的方法可以用更少或更多的步骤/动作来被执行,或者步骤/动作可以以不同的顺序来被执行。附加地,本文描述的步骤/动作可以彼此并行地被重复或执行,或者与相同或相似步骤/动作的不同实例并行地被重复或执行。
图12图示了根据一个或多个实施例的智能改变总结的方法中的一系列动作的流程图。在一个或多个实施例中,方法1200在包括设计管理系统100的数字媒体环境中被执行。方法1200旨在说明根据本公开的一种或多种方法,并且不旨在限制潜在实施例。与图12中图示的那些步骤相比,备选实施例可以包括附加的、更少的或不同的步骤。
如图12中所示,方法1200包括获得文档的多个版本的表示的动作1202。在一些实施例中,获得文档的版本历史(例如,从用户、从文件系统、从与文档相关联的应用等)。如所讨论的,版本历史可以是指向特定文档的多个版本的数据结构。在一些实施例中,文档的多个版本的表示包括树结构,该树结构包括:表示文档的根;来自根的、表示文档的版本的第一节点集合;来自第一节点集合的、表示画板的第二节点集合;以及来自第二节点集合的、表示画板的元素的第三节点集合。
如图12中所示,方法1200还包括基于文档的第一版本和文档的第二版本的比较来确定距离得分的动作1204,距离得分表示从文档的第一版本到文件的第二版本做出的改变的幅度。在一些实施例中,确定距离得分还包括:确定与文档的第一版本的一个或多个元素相关联的一个或多个属性值和与文档的第二版本中的一个或多个元素相关联的一个或多个属性值之间的一个或多个差异,以及将一个或多个差异组合以确定距离得分。
在一些实施例中,方法还包括确定新画板被添加到文档的第二版本,确定与新画板相关联的元素的数目,以及将元素的数目与一个或多个差异组合以确定距离得分。
在一些实施例中,将差异组合以确定距离得分包括计算一个或多个差异的和。在一些实施例中,将差异组合以确定距离得分包括:计算一个或多个差异的加权和,其中一个或多个差异基于与差异相关联的编辑类型而被加权。在一些实施例中,编辑类型包括以下至少一项:文本改变、颜色改变或对象改变。
如图12中所示,方法1200还包括基于距离得分生成文档的改变总结的动作1206。在一些实施例中,生成改变总结包括:基于与文档的连续版本之间进行的、由距离得分表示的改变相关联的编辑类型,在改变总结中标记文档的一个或多个版本。
在一些实施例中,文档的每个版本包括多个属性,该多个属性定义文档的多个对应元素的状态,其中多个对应元素包括形状、文本或组中的一种或多种。在一些实施例中,多个属性包括尺寸、位置、笔划、颜色或文本中的一种或多种。
在一些实施例中,基于多个距离得分标识文档的版本历史中的拐点还包括:确定多个版本的具有最高距离得分的子集。在一些实施例中,基于多个距离得分的分布,来确定多个版本的子集的尺寸。在一些实施例中,方法还包括将多个版本的子集分类为高重要性、中重要性和低重要性。
在一些实施例中,方法还包括:确定与在与文档的连续版本之间做出的改变相关联的编辑类型,确定与每个编辑类型相关联的多个距离得分,以及标识每个编辑类型的拐点。
在一些实施例中,方法还包括:在多个版本的表示上进行迭代,以确定多个距离得分,每个距离得分与文档的连续版本之间的改变相关联;基于多个距离得分的值,标识多个距离得分的至少一个子集;确定多个版本的、对应于距离得分的至少一个子集的至少一个子集;以及将多个版本的至少一个子集分类为高重要性、中重要性或低重要性。
图13图示了根据一个或多个实施例的设计管理系统1100可以在其中操作的示例性环境1300的示意图。在一个或多个实施例中,环境1300包括服务提供方1302,服务提供方1302可以包括经由一个或多个网络1308连接到多个客户端设备1306A-1306N的一个或多个服务器1304。客户端设备1306A-1306N、一个或多个网络1308、服务提供方1302和一个或多个服务器1304可以使用适于传输数据和/或通信信号的任何通信平台和技术来相互通信或与其他组件通信,包括任何已知的通信技术、设备、介质和支持远程数据通信的协议,其示例将在下文关于图14更详细地被描述。
尽管图13图示了客户端设备1306A-1306N、一个或多个网络1308、服务提供方1302和一个或多个服务器1304的特定布置,但各种附加布置是可能的。例如,客户端设备1306A-1306N可以绕过网络1308与一个或多个服务器1304直接通信。或者备选地,客户端设备1306A-1306N可以直接相互通信。服务提供方1302可以是公共云服务提供方,其在一个或多个数据中心中拥有并且运营他们自己的基础设施,并且按需向客户和最终用户提供该基础设施以在一个或多个服务器1304上托管应用。服务器可以包括一个或多个硬件服务器(例如主机),每个硬件服务器具有其自己的计算资源(例如处理器、内存、磁盘空间、网络带宽等),计算资源可以在多个客户之间进行安全划分,客户中的每个客户可以将其自己的应用托管在一个或多个服务器1304上。在一些实施例中,服务提供方可以是为单个组织维护云基础设施的私有云提供方。一个或多个服务器1304可以类似地包括一个或多个硬件服务器,每个硬件服务器具有其自己的计算资源,该计算资源在由一个或多个服务器托管的应用中间进行划分以供组织的成员或其客户使用。
类似地,尽管图13的环境1300被描绘为具有各种组件,但环境1300可以具有附加的或备选的组件。例如,环境1300可以被实现在具有设计管理系统1100的单个计算设备上。特别地,设计管理系统1100可以全部或部分地被实现在客户端设备1306A上。
如图13中所示,环境1300可以包括客户端设备1306A-1306N。客户端设备1306A-1306N可以包括任何计算设备。例如,客户端设备1306A-1306N可以包括一个或多个个人计算机、膝上型计算机、移动设备、移动电话、平板计算机、专用计算机、TV或其他计算设备,包括下面关于图14描述的计算设备。尽管在图13中示出了三个客户端设备,但应当理解,客户端设备1306A-1306N可以包括任意数目的客户端设备(大于或小于所示出的)。
此外,如图13中所示,客户端设备1306A-1306N和一个或多个服务器1304可以经由一个或多个网络1308进行通信。一个或多个网络1308可以表示单个网络或网络集合(诸如因特网、公司内联网、虚拟专用网(VPN)、局域网(LAN)、无线局域网(WLAN)、蜂窝网络、广域网(WAN)、城域网(MAN),或两个以上这种网络的组合。因此,一个或多个网络1308可以是任何适当的网络,客户端设备1306A-1306N可以通过一个或多个网络1308访问服务提供方1302和服务器1304,反之亦然。将在下面关于图14详细地讨论一个或多个网络1308。
此外,环境1300还可以包括一个或多个服务器1304。一个或多个服务器1304可以生成、存储、接收和传送任何类型的数据,包括设计版本历史1118、改变总结1120或其他信息。例如,服务器1304可以从诸如客户端设备1306A的客户端设备接收数据,并且将数据发送到诸如客户端设备1306B和/或1306N的另一个客户端设备。服务器1304还可以在环境1300的一个或多个用户之间传送电子消息。在一个示例实施例中,服务器1304是数据服务器。服务器1304还可以包括通信服务器或web托管服务器。关于服务器1304的附加细节将在下面关于图14进行讨论。
如所述的,在一个或多个实施例中,一个或多个服务器1304可以包括或实现设计管理系统1100的至少一部分。特别地,设计管理系统1100可以包括在一个或多个服务器1304上运行的应用,或者设计管理系统1100的一部分可以从一个或多个服务器1304下载。例如,设计管理系统1100可以包括web托管应用,该web托管应用允许客户端设备1306A-1306N与在一个或多个服务器1304处托管的内容交互。为了说明,在环境1300的一个或多个实施例中,一个或多个客户端设备1306A-1306N可以访问由一个或多个服务器1304支持的网页。特别地,客户端设备1306A可以运行web应用(例如,web浏览器)以允许用户访问、察看和/或与在一个或多个服务器1304处托管的网页或网站交互。
在客户端设备1306A访问在一个或多个服务器1304处托管的网页或其他web应用时,在一个或多个实施例中,一个或多个服务器1304可以提供对存储在一个或多个服务器1304处的设计版本历史(例如,设计版本历史1118)的访问。此外,客户端设备1306A可以接收(即,经由用户输入)对与设计版本历史相关联的文档的改变总结的请求,并且将请求提供给一个或多个服务器1304。在接收到请求时,一个或多个服务器1304可以自动执行上述方法和过程以生成设计版本历史的改变总结。一个或多个服务器1304可以向客户端设备1306A提供改变总结以用于显示给用户/与用户交互。
如刚刚描述的,设计管理系统1100可以全部或部分地由环境1300的个体元件1302-1308实现。应当理解,尽管设计管理系统1100的某些组件在先前示例中关于环境1300的特定元素进行了描述,但各种备选实施方式是可能的。例如,在一个或多个实施例中,设计管理系统1100被实现在客户端设备1306A-1306N中的任何客户端设备上。类似地,在一个或多个实施例中,设计管理系统1100可以被实现在一个或多个服务器1304上。此外,设计管理系统1100的不同组件和功能可以在客户端设备1306A-1306N、一个或多个服务器1304和网络1308中间分开实现。
本公开的实施例可以包括或利用专用或通用计算机,其包括计算机硬件,诸如,例如一个或多个处理器和系统存储器,如下面更详细地讨论的。本公开的范围内的实施例还包括用于运载或存储计算机可执行指令和/或数据结构的物理和其他计算机可读介质。特别地,本文描述的一个或多个过程可以至少部分地被实施为指令,该指令被体现在非暂态计算机可读介质中并且可由一个或多个计算设备(例如,本文描述的任何介质内容访问设备)执行。通常,处理器(例如,微处理器)从非暂态计算机可读介质(例如,存储器等)接收指令,并且执行那些指令,从而执行一个或多个过程,包括本文描述的一个或多个过程。
计算机可读介质可以是可以由通用或专用计算机系统访问的任何可用介质。存储计算机可执行指令的计算机可读介质是非暂态计算机可读存储介质(设备)。运载计算机可执行指令的计算机可读介质是传输介质。因此,作为示例而非限制,本公开的实施例可以包括至少两种明显不同种类的计算机可读介质:非暂态计算机可读存储介质(设备)和传输介质。
非暂态计算机可读存储介质(设备)包括RAM、ROM、EEPROM、CD-ROM、固态驱动器(“SSD”)(例如,基于RAM)、闪存、相变存储器(“PCM”)、其他类型的存储器、其他光盘存储、磁盘存储或其他磁存储,或可以用于存储所需程序代码部件的任何其他介质,该程序代码部件处于计算机可执行指令或数据结构的形式,并且可以由通用或专用计算机访问。
“网络”被定义为使得能够在计算机系统和/或模块和/或其他电子设备之间传输电子数据的一个或多个数据链路。在通过网络或其他通信连接(硬连线、无线或硬连线或无线的组合)将信息传输或提供给计算机时,计算机会将该连接正确地视为传输介质。传输介质可以包括网络和/或数据链路,该网络和/或数据链路可以用于运载期望的程序代码部件,该程序代码部件处于计算机可执行指令或数据结构的形式,并且可以由通用或专用计算机访问。上述的组合也应当被包括在计算机可读介质的范围内。
此外,在到达各种计算机系统组件时,可以将处于计算机可执行指令或数据结构的形式的程序代码部件从传输介质自动传输到非暂态计算机可读存储介质(设备)(或反之亦然)。例如,可以将通过网络或数据链路接收的计算机可执行指令或数据结构缓冲在网络接口模块(例如“NIC”)内的RAM中,然后最终传输到计算机系统RAM和/或计算机系统处的不那么易失的计算机存储介质(设备)。因此,应当理解,非暂态计算机可读存储介质(设备)可以被包括在也(或者甚至主要地)利用传输介质的计算机系统组件中。
计算机可执行指令包括例如指令和数据,当指令和数据在处理器处被执行时,使得通用计算机、专用计算机或专用处理设备执行某些功能或功能组。在一些实施例中,计算机可执行指令在通用计算机上被执行以将通用计算机转变成实施本公开的元素的专用计算机。计算机可执行指令可以是例如二进制、中间格式指令(诸如汇编语言)或甚至源代码。尽管已经以特定于结构特征和/或方法动作的语言描述了主题,但是应当理解,所附权利要求中定义的主题不必限于上述描述的特征或动作。而是,所描述的特征和动作被公开为实施权利要求的示例形式。
本领域技术人员应当理解,可以在具有许多类型的计算机系统配置的网络计算环境中实践本公开,计算机系统配置包括个人计算机、台式计算机、膝上型计算机、消息处理器、手持式设备、多处理器系统、基于微处理器或可编程的消费类电子产品、网络PC、小型计算机、大型计算机、移动电话、PDA、平板计算机、寻呼机、路由器、交换机等。还可以在分布式系统环境中实践本公开,在分布式系统环境中,本地和远程计算机系统通过网络链接(通过硬连线数据链接、无线数据链接或通过硬连线和无线数据链接的组合),两者都执行任务。在分布式系统环境中,程序模块可以位于本地和远程存储设备两者中。
本公开的实施例还可以被实施在云计算环境中。在本描述中,“云计算”被定义为用于使能对可配置计算资源的共享池进行按需网络访问的模型。例如,可以在市场中采用云计算,以提供对可配置计算资源共享池的无处不在和方便的按需访问。可配置计算资源的共享池可以经由虚拟化被快速提供,并且以较少的管理工作量或服务提供方交互被释放,然后被对应地扩展。
云计算模型可以包括各种特性,例如,诸如按需自助服务、广泛的网络访问、资源池、快速弹性、经测量的服务等。云计算模型还可以暴露各种服务模型,诸如,例如软件即服务(“SaaS”)、平台即服务(“PaaS”)和基础设施即服务(“IaaS”)。还可以使用不同的部署模型(诸如私有云、社区云、公共云、混合云等)来部署云计算模型。在本描述和权利要求中,“云计算环境”是其中采用云计算的环境。
图14以框图形式图示了示例性计算设备1400,计算设备1400可以被配置成执行上述过程中的一个或多个过程。应当理解,诸如计算设备1400的一个或多个计算设备可以实现图像处理系统。如由图14所示,计算设备可以包括处理器1402、存储器1404、一个或多个通信接口1406、存储设备1408,以及一个或多个“I/O”设备/接口1410。在某些实施例中,计算设备1400可以包括比图14中所示的那些组件更少或更多的组件。现在将以附加的细节描述图14中所示的计算设备1400的组件。
在特定实施例中,(多个)处理器1402包括用于执行指令(诸如构成计算机程序的那些指令)的硬件。作为示例而非限制,为了执行指令,(多个)处理器1402可以从内部寄存器、内部高速缓存、存储器1404或存储设备1408取回(或获取)指令,并且解码和执行它们。在各种实施例中,(多个)处理器1402可以包括一个或多个中央处理单元(CPU)、图形处理单元(GPU)、现场可编程门阵列(FPGA)、片上系统(SoC)或其他处理器或处理器的组合。
计算设备1400包括耦合到(多个)处理器1402的存储器1404。存储器1404可以用于存储数据、元数据和程序以供由(多个)处理器执行。存储器1404可以包括易失性存储器和非易失性存储器中的一个或多个,诸如随机存取存储器(“RAM”)、只读存储器(“ROM”)、固态磁盘(“SSD”)、闪存、相变存储器(“PCM”)或其他类型的数据存储。存储器1404可以是内部或分布式存储器。
计算设备1400还可以包括一个或多个通信接口1406。通信接口1406可以包括硬件、软件或两者。通信接口1406可以提供一个或多个接口,以用于在计算设备与一个或多个其他计算设备1400或一个或多个网络之间进行通信(诸如,例如基于分组的通信)。作为示例而非限制,通信接口1406可以包括网络接口控制器(NIC)或网络适配器,以用于与以太网或其他基于有线的网络进行通信,或者包括无线NIC(WNIC)或无线适配器,以用于与无线网络(诸如,WI-FI)通信。计算设备1400还可以包括总线1412。总线1412可以包括将计算设备1400的组件相互耦合的硬件、软件或两者。
计算设备1400包括存储设备1408,存储设备1408包括用于存储数据或指令的存储。作为示例而非限制,存储设备1408可以包括上述非暂态存储介质。存储设备1408可以包括硬盘驱动器(HDD)、闪存、通用串行总线(USB)驱动器或这些或其他存储设备的组合。计算设备1400还包括一个或多个输入或输出(“I/O”)设备/接口1410,提供这些I/O设备/接口1410是为了允许用户向计算设备1400提供输入(诸如用户划线),从计算设备1400接收输出,以及以其他方式向和从计算设备1400传输数据。这些I/O设备/接口1410可以包括鼠标、小键盘或键盘、触摸屏、相机、光学扫描仪、网络接口、调制解调器、其他已知的I/O设备或这种I/O设备/接口1410的组合。可以利用触笔或手指激活触摸屏。
I/O设备/接口1410可以包括用于向用户呈现输出的一个或多个设备,包括但不限于图形引擎、显示器(例如,显示屏)、一个或多个输出驱动器(例如,显示驱动器)、一个或多个音频扬声器以及一个或多个音频驱动器。在某些实施例中,I/O设备/接口1410被配置成将图形数据提供给显示器以呈现给用户。图形数据可以表示一个或多个图形用户接口和/或可以服务于特定实施方式的任何其他图形内容。
在前述说明书中,已经参考本发明的特定示例性实施例描述了实施例。参考本文讨论的细节描述了各种实施例,并且附图图示了各种实施例。上面的描述和附图是对一个或多个实施例的说明,并且不应当被解释为限制。描述了许多具体细节以提供对各种实施例的透彻理解。
在不脱离本发明的精神或基本特性的情况下,实施例可以包括其他特定形式。所描述的实施例应当在所有方面仅被认为是说明性而不是限制性的。例如,本文描述的方法可以利用更少或更多的步骤/动作来执行,或者可以以不同的顺序来执行步骤/动作。附加地,本文描述的步骤/动作可以彼此并行地或与相同或相似步骤/动作的不同实例并行地重复或执行。因此,本发明的范围由所附权利要求而不是前述描述来指示。落入权利要求的等同物的含义和范围内的所有改变均应当被包括在其范围内。
在上述各种实施例中,除非另外特别指出,否则诸如短语“A、B或C中的至少一个”的选言语言旨在被理解为意指A、B或C,或其任何组合(例如,A、B和/或C)。因此,选言语言不旨在也不应当被理解为暗示给定实施例要求A中的至少一个A、B中的至少一个B或C中的至少一个C均存在。

Claims (20)

1.一种计算机实现的方法,包括:
获得文档的多个版本的表示;
基于所述文档的第一版本和所述文档的第二版本的比较来确定距离得分,所述距离得分表示从所述文档的所述第一版本到所述文档的所述第二版本做出的改变的幅度;以及
基于所述距离得分,生成所述文档的改变总结。
2.根据权利要求1所述的计算机实现的方法,其中所述文档的所述多个版本的所述表示包括树结构,所述树结构包括:表示所述文档的根;来自所述根的、表示所述文档的版本的第一节点集合;来自所述第一节点集合的、表示画板的第二节点集合;以及来自所述第二节点集合的、表示所述画板的元素的第三节点集合。
3.根据权利要求2所述的计算机实现的方法,其中基于所述文档的第一版本和所述文档的第二版本的比较来确定距离得分,所述距离得分表示从所述文档的所述第一版本到所述文件的所述第二版本做出的改变的幅度,还包括:
确定与所述文档的所述第一版本的一个或多个元素相关联的一个或多个属性值和与所述文档的所述第二版本中的所述一个或多个元素相关联的所述一个或多个属性值之间的一个或多个差异;以及
组合所述一个或多个差异以确定所述距离得分。
4.根据权利要求3所述的计算机实现的方法,其中组合所述一个或多个差异以确定所述距离得分还包括:
计算所述一个或多个差异的和。
5.根据权利要求3所述的计算机实现的方法,其中组合所述一个或多个差异以确定所述距离得分还包括:
计算所述一个或多个差异的加权和,其中所述一个或多个差异基于与所述差异相关联的编辑类型而被加权。
6.根据权利要求5所述的计算机实现的方法,其中所述编辑类型包括以下至少一项:文本改变、颜色改变或对象改变。
7.根据权利要求6所述的计算机实现的方法,其中基于所述距离得分生成所述文档的改变总结还包括:
基于与在所述文档的连续版本之间做出的、由所述距离得分表示的改变相关联的所述编辑类型,在所述改变总结中标记所述文档的一个或多个版本。
8.根据权利要求3所述的计算机实现的方法,还包括:
确定新画板被添加到所述文档的所述第二版本;
确定与所述新画板相关联的元素的数目;以及
将元素的所述数目与所述一个或多个差异组合,以确定所述距离得分。
9.根据权利要求1所述的计算机实现的方法,还包括:
在所述多个版本的所述表示上进行迭代,以确定多个距离得分,每个距离得分与所述文档的连续版本之间的改变相关联;
基于所述多个距离得分的值,标识所述多个距离得分的至少一个子集;
确定所述多个版本的、对应于距离得分的所述至少一个子集的至少一个子集;以及
将所述多个版本的所述至少一个子集分类为高重要性、中重要性或低重要性。
10.一种非暂态计算机可读存储介质,包括存储在其上的指令,所述指令在由处理器执行时,使所述处理器:
获得文档的多个版本的表示;
基于所述文档的第一版本和所述文档的第二版本的比较来确定距离得分,所述距离得分表示从所述文档的所述第一版本到所述文档的所述第二版本做出的改变的幅度;以及
基于所述距离得分,生成所述文档的改变总结。
11.根据权利要求10所述的非暂态计算机可读存储介质,其中所述文档的所述多个版本的所述表示包括树结构,所述树结构包括:表示所述文档的根;来自所述根的、表示所述文档的版本的第一节点集合;来自所述第一节点集合的、表示画板的第二节点集合;以及来自所述第二节点集合的、表示所述画板的元素的第三节点集合。
12.根据权利要求11所述的非暂态计算机可读存储介质,其中为了基于所述文档的第一版本和所述文档的第二版本的比较来确定距离得分,所述距离得分表示从所述文档的所述第一版本到所述文件的所述第二版本做出的改变的幅度,所述指令在被执行时,还使所述处理器:
确定与所述文档的所述第一版本的一个或多个元素相关联的一个或多个属性值和与所述文档的所述第二版本中的所述一个或多个元素相关联的所述一个或多个属性值之间的一个或多个差异;以及
组合所述一个或多个差异以确定所述距离得分。
13.根据权利要求12所述的非暂态计算机可读存储介质,其中为了组合所述一个或多个差异以确定所述距离得分,所述指令在被执行时,还使所述处理器:
计算所述一个或多个差异的和。
14.根据权利要求12所述的非暂态计算机可读存储介质,其中为了组合所述一个或多个差异以确定所述距离得分,所述指令在被执行时,还使所述处理器:
计算所述一个或多个差异的加权和,其中所述一个或多个差异基于与所述差异相关联的编辑类型而被加权。
15.根据权利要求14所述的非暂态计算机可读存储介质,其中所述编辑类型包括以下至少一项:文本改变、颜色改变或对象改变。
16.根据权利要求15所述的非暂态计算机可读存储介质,其中为了基于所述距离得分生成所述文档的改变总结,所述指令在被执行时,还使所述处理器:
基于与在所述文档的连续版本之间做出的、由所述距离得分表示的改变相关联的所述编辑类型,在所述改变总结中标记所述文档的一个或多个版本。
17.根据权利要求12所述的非暂态计算机可读存储介质,其中所述指令在被执行时,还使所述处理器:
确定新画板被添加到所述文档的所述第二版本;
确定与所述新画板相关联的元素的数目;以及
将元素的所述数目与所述一个或多个差异组合,以确定所述距离得分。
18.根据权利要求10所述的非暂态计算机可读存储介质,其中所述指令在被执行时,还使所述处理器:
在所述多个版本的所述表示上进行迭代,以确定多个距离得分,每个距离得分与所述文档的连续版本之间的改变相关联;
基于所述多个距离得分的值,标识所述多个距离得分的至少一个子集;
确定所述多个版本的、对应于距离得分的所述至少一个子集的至少一个子集;以及
将所述多个版本的所述至少一个子集分类为高重要性、中重要性或低重要性。
19.一种系统,包括:
处理器;以及
包括指令的存储器,所述指令在由所述处理器执行时,使所述系统:
获得文档的多个版本的表示;
基于所述文档的第一版本和所述文档的第二版本的比较来确定距离得分,所述距离得分表示从所述文档的所述第一版本到所述文档的所述第二版本做出的改变的幅度;以及
基于所述距离得分,生成所述文档的改变总结。
20.根据权利要求19所述的系统,其中所述指令在被执行时,还使所述系统:
在所述多个版本的所述表示上进行迭代,以确定多个距离得分,每个距离得分与所述文档的连续版本之间的改变相关联;
基于所述多个距离得分的值,标识所述多个距离得分的至少一个子集;
确定所述多个版本的、对应于距离得分的所述至少一个子集的至少一个子集;以及
将所述多个版本的所述至少一个子集分类为高重要性、中重要性或低重要性。
CN202211026469.3A 2021-11-09 2022-08-25 用于设计者的智能改变总结 Pending CN116108826A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US17/522,790 US11954431B2 (en) 2021-11-09 2021-11-09 Intelligent change summarization for designers
US17/522,790 2021-11-09

Publications (1)

Publication Number Publication Date
CN116108826A true CN116108826A (zh) 2023-05-12

Family

ID=86053023

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211026469.3A Pending CN116108826A (zh) 2021-11-09 2022-08-25 用于设计者的智能改变总结

Country Status (4)

Country Link
US (1) US11954431B2 (zh)
CN (1) CN116108826A (zh)
AU (1) AU2022228142A1 (zh)
DE (1) DE102022121867A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20230215467A1 (en) * 2022-01-05 2023-07-06 Avid Technology, Inc. Difference engine for media change management
US11954775B2 (en) * 2022-02-23 2024-04-09 International Business Machines Corporation Artboard element positioning in a series of computer-based artboards

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6449624B1 (en) * 1999-10-18 2002-09-10 Fisher-Rosemount Systems, Inc. Version control and audit trail in a process control system
US20080177782A1 (en) * 2007-01-10 2008-07-24 Pado Metaware Ab Method and system for facilitating the production of documents
US9477703B1 (en) * 2013-08-20 2016-10-25 Amazon Technologies, Inc. Item version similarity scoring system
US10713432B2 (en) * 2017-03-31 2020-07-14 Adobe Inc. Classifying and ranking changes between document versions
US10600228B1 (en) * 2018-10-14 2020-03-24 Adobe Inc. Automatic and interactive animation driven by change-based heuristics
US11295076B1 (en) * 2019-07-31 2022-04-05 Intuit Inc. System and method of generating deltas between documents

Also Published As

Publication number Publication date
AU2022228142A1 (en) 2023-05-25
DE102022121867A1 (de) 2023-05-11
US20230141448A1 (en) 2023-05-11
US11954431B2 (en) 2024-04-09

Similar Documents

Publication Publication Date Title
US20220318756A1 (en) Managing tasks in a content management system
US10205643B2 (en) Systems and methods for monitoring and analyzing performance in a computer system with severity-state sorting
US10402786B2 (en) Managing projects in a content management system
TWI549006B (zh) 資料集和資料服務的上下文趨向
US10642888B2 (en) Management and dynamic assembly of presentation material
US10445063B2 (en) Method and apparatus for classifying and comparing similar documents using base templates
CN116108826A (zh) 用于设计者的智能改变总结
US20190272071A1 (en) Automatic generation of a hierarchically layered collaboratively edited document view
US20210200939A1 (en) Document conversion, annotation, and data capturing system
US9824155B2 (en) Automated electronic discovery collections and preservations
US10249068B2 (en) User experience for multiple uploads of documents based on similar source material
US20150081718A1 (en) Identification of entity interactions in business relevant data
US20160085389A1 (en) Knowledge automation system thumbnail image generation
US10146881B2 (en) Scalable processing of heterogeneous user-generated content
US11151308B2 (en) Electronic document processing system
US20210056131A1 (en) Methods and systems for generating timelines for entities
US11455461B2 (en) Self-executing document revision
US10503743B2 (en) Integrating search with application analysis
US20160085850A1 (en) Knowledge brokering and knowledge campaigns
US11645095B2 (en) Generating and utilizing a digital knowledge graph to provide contextual recommendations in digital content editing applications
CN115937886A (zh) 知识资源的数据集更新方法、检索方法、装置及设备
CN113672794A (zh) 页面生成方法、设备、介质
JP5931804B2 (ja) Gui部品メタ情報付与装置およびその方法、並びに操作ログ自動生成装置
Vujic Quality Assurance Workflow, Release 2+ Release Report

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