CN111061921A - 一种图像布局实现方法、系统、终端设备和存储介质 - Google Patents
一种图像布局实现方法、系统、终端设备和存储介质 Download PDFInfo
- Publication number
- CN111061921A CN111061921A CN201911229712.XA CN201911229712A CN111061921A CN 111061921 A CN111061921 A CN 111061921A CN 201911229712 A CN201911229712 A CN 201911229712A CN 111061921 A CN111061921 A CN 111061921A
- Authority
- CN
- China
- Prior art keywords
- node data
- layout
- node
- image
- final position
- 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
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/901—Indexing; Data structures therefor; Storage structures
- G06F16/9024—Graphs; Linked lists
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/904—Browsing; Visualisation therefor
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明提供了一种图像布局实现方法、系统、终端设备和存储介质,其方法包括:获取节点数据和各节点数据之间的关系,并根据各节点数据之间的关系生成各节点数据之间的连线;获取各节点数据对应的布局参数;将各节点数据及其对应的布局参数分别输入到至少两个图形处理器的采样器中,在图形处理器中运行力导向布局算法,直至得到各节点数据分别对应的最终位置坐标,根据各节点数据及其最终位置坐标生成对应的力导向布局图像。本发明降低迭代时间复杂度的同时,提升根据数据生成力导向布局图的效率。
Description
技术领域
本发明涉及数据处理技术领域,尤指一种图像布局实现方法、系统、终端设备和存储介质。
背景技术
根据应用场景的不同,图有多种展示形式,比如适用用组织架构的层次结构,适用于展示对象之家紧密程度的圆形布局。不过最为通用的却是力导向布局。力导向布局着力在将图的节点在二维/三维空间内排布,以便所有的边均有大概相同的长度、且尽量少的交叉。
目前常用力导向布局算法均是通过迭代,持续更新节点至稳定的位置,时间复杂度为极高。由于在迭代计算中,斥力是有本地性的,因此有些算法将图分区,以降低所需要的计算量。比如Barnes–Hut算法可以将每次迭代的时间复杂度降低。然而,通过这种方式对于小图来说,性能影响不大,但对于实体/链接数超过百万的大图来说,图像布局就要花费较长时间,严重影响用户体验。
因此,如何降低迭代时间复杂度的同时,提升根据数据生成力导向布局图的效率是亟需解决的问题。
发明内容
本发明的目的是提供一种图像布局实现方法、系统、终端设备和存储介质,实现降低迭代时间复杂度的同时,提升根据数据生成力导向布局图的效率。
本发明提供的技术方案如下:
本发明提供一种图像布局实现方法,其特征在于,包括步骤:
获取节点数据和各节点数据之间的关系,并根据所述各节点数据之间的关系生成各节点数据之间的连线;
获取各节点数据对应的布局参数;
将各节点数据及其对应的布局参数分别输入到至少两个图形处理器的采样器中,在图形处理器中运行力导向布局算法,直至得到各节点数据分别对应的最终位置坐标,根据各节点数据及其最终位置坐标生成对应的力导向布局图像。
进一步的,所述获取节点数据和各节点数据之间的关系,并根据所述各节点数据之间的关系生成各节点数据之间的连线之前包括步骤:
预先设置初始布局参数,并设置各节点数据的节点外形属性以及各连线的连线外形属性。
进一步的,所述将各节点数据及其对应的布局参数分别输入到至少两个图形处理器的采样器中,在图形处理器中运行力导向布局算法,直至得到各节点数据分别对应的最终位置坐标,根据各节点数据及其最终位置坐标生成对应的力导向布局图像包括步骤:
根据所述节点数据及其对应的布局参数进行分组,将分组结果分别输入到至少两个图形处理器处运行的采样器中,并根据分组结果中节点数据对应的节点外形属性、权重值和分组结果中连线对应的连线外形属性,分别配置其所输入采样器中各节点及其对应连线的节点外形和连线外形;
根据各图像处理器处的采样器分别对其获取到的分组结果进行迭代更新,直至得到各节点数据分别对应的最终位置坐标;
根据所述最终位置坐标将对应的节点数据放置于预设分布图上的对应位置处生成所述力导向布局图像。
进一步的,所述根据各图像处理器处的采样器分别对其获取到的分组结果进行迭代更新,直至得到各节点数据分别对应的最终位置坐标包括步骤:
根据各图像处理器处的采样器分别对输入其中的节点数据及其对应的初始布局参数进行初次更新;
根据所述节点数据对应的更新后布局参数进行计算得到上一次更新后每个节点数据对应的速度值,使得所述节点数据在其对应采样器进行下一次更新时,根据计算得到的速度值和上一次更新时的位置坐标进行计算得到所述节点数据在下一次更新时的位置坐标,直至计算得到各节点数据分别对应的最终位置坐标为止;
其中,所述初始布局参数和更新后布局参数均包括所述节点数据所在位置坐标和所述节点数据受到的合力大小。
本发明还提供一种图像布局实现系统,包括:
数据获取模块,用于获取节点数据和各节点数据之间的关系,并根据所述各节点数据之间的关系生成各节点数据之间的连线;
参数获取模块,用于获取各节点数据对应的布局参数;
处理模块,用于将各节点数据及其对应的布局参数分别输入到至少两个图形处理器的采样器中,在图形处理器中运行力导向布局算法,直至得到各节点数据分别对应的最终位置坐标,根据各节点数据及其最终位置坐标生成对应的力导向布局图像。
进一步的,还包括:
设置模块,用于预先设置初始布局参数,并设置各节点数据的节点外形属性以及各连线的连线外形属性。
进一步的,所述处理模块包括:
分组单元,用于根据所述节点数据及其对应的布局参数进行分组;
处理单元,用于将分组结果分别输入到至少两个图形处理器处运行的采样器中,并根据分组结果中节点数据对应的节点外形属性、权重值和分组结果中连线对应的连线外形属性,分别配置其所输入采样器中各节点及其对应连线的节点外形和连线外形;
控制单元,用于根据各图像处理器处的采样器分别对其获取到的分组结果进行迭代更新,直至得到各节点数据分别对应的最终位置坐标;
生成单元,用于根据所述最终位置坐标将对应的节点数据放置于预设分布图上的对应位置处生成所述力导向布局图像。
进一步的,所述控制单元包括:
处理子单元,用于根据各图像处理器处的采样器分别对输入其中的节点数据及其对应的初始布局参数进行初次更新;
计算子单元,用于根据所述节点数据对应的更新后布局参数进行计算得到上一次更新后每个节点数据对应的速度值,使得所述节点数据在其对应采样器进行下一次更新时,根据计算得到的速度值和上一次更新时的位置坐标进行计算得到所述节点数据在下一次更新时的位置坐标,直至计算得到各节点数据分别对应的最终位置坐标为止;
其中,所述初始布局参数和更新后布局参数均包括所述节点数据所在位置坐标和所述节点数据受到的合力大小。
本发明还提供一种终端设备,包括处理器、存储器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器,用于执行所述存储器上所存放的计算机程序,实现如权利要求1至权利要求4任一项所述的图像布局实现方法所执行的操作。
本发明还提供一种存储介质,所述存储介质中存储有至少一条指令,所述指令由处理器加载并执行以实现如权利要求1至权利要求4任一项所述的图像布局实现方法所执行的操作。
通过本发明提供的一种图像布局实现方法、系统、终端设备和存储介质,能够降低迭代时间复杂度的同时,提升根据数据生成力导向布局图的效率。
附图说明
下面将以明确易懂的方式,结合附图说明优选实施方式,对一种图像布局实现方法、系统、终端设备和存储介质的上述特性、技术特征、优点及其实现方式予以进一步说明。
图1是本发明一种图像布局实现方法的一个实施例的流程图;
图2是本发明一种图像布局实现方法的另一个实施例的流程图;
图3是本发明一种图像布局实现方法的另一个实施例的流程图;
图4是本发明一种图像布局实现系统的一个实施例的结构示意图;
图5是本发明一种计算机设备的一个实施例的结构示意图。
具体实施方式
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对照附图说明本发明的具体实施方式。显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图,并获得其他的实施方式。
为使图面简洁,各图中只示意性地表示出了与本发明相关的部分,它们并不代表其作为产品的实际结构。另外,以使图面简洁便于理解,在有些图中具有相同结构或功能的部件,仅示意性地绘示了其中的一个,或仅标出了其中的一个。在本文中,“一个”不仅表示“仅此一个”,也可以表示“多于一个”的情形。
本发明的一个实施例,如图1所示,一种图像布局实现方法,包括:
S1000获取节点数据和各节点数据之间的关系,并根据各节点数据之间的关系生成各节点数据之间的连线;
S2000获取各节点数据对应的布局参数;
S3000将各节点数据及其对应的布局参数分别输入到至少两个图形处理器的采样器中,在图形处理器中运行力导向布局算法,直至得到各节点数据分别对应的最终位置坐标,根据各节点数据及其最终位置坐标生成对应的力导向布局图像。
具体的,力导向图(Force-Directed Graph)是绘图的一种算法。在二维或三维空间里配置节点,节点之间用线连接,称为连线。各连线的长度几乎相等,且尽可能不相交。节点和连线都被施加了力的作用。力的大小是根据节点和连线的相对位置计算的。根据力的作用来计算节点和连线的运动轨迹,并不断降低它们的能量,最终达到一种能量很低的安定状态。功能上,力导向图能表示节点之间的多对多的关系。力导向图由节点(nodes)和连线(edges)的两个数组组成。nodes代表节点的一些必要信息,而edges则表示的是节点之间的连线与否。由于节点的位置坐标和连线的位置坐标可变化,所以力导向图在节点和连线的位置坐标稳定之前是不断改变的。
此处,获取具有关联关系的数据集,将具有关联关系的数据集中的每个元数据作为对应的节点数据,并根据节点数据在数据集中对应的关联关系即节点数据的关系生成各个节点数据之间的连线。然后,获取各个节点数据的布局参数,布局参数包括节点数据对应的权重值,位置坐标以及所受到的合力大小。
GPU即图形处理器,全称为Graphics Processing Unit。将各节点数据及其对应的布局参数分别输入到至少两个图形处理器处运行(GPU)的采样器(Sampler)中直至得到各节点数据分别对应的最终位置坐标,根据各节点数据及其最终位置坐标生成对应的力导向布局图像。
本实施例中,通过将各节点数据及其对应的布局参数分别输入到至少两个图形处理器处运行的采样器中,避免像现有技术那样将所有节点数据全部输入至CPU处的运行采样器中,减小像现有技术那样大量节点数据更新计算得到最终位置坐标所消耗的时间,由于将数据分布式输入到至少两个图形处理器处所运行的采样器中,将节点迭代计算得到对应的最终位置坐标的计算量分散,因此计算得到所有节点数据的最终位置坐标的效率大大增加,从而降低迭代时间复杂度的同时,大大提升根据数据生成力导向布局图的效率。
本发明的一个实施例,如图2所示,一种图像布局实现方法,包括:
S0100预先设置初始布局参数,并设置各节点数据的节点外形属性以及各连线的连线外形属性;
具体的,根据数据展示需求预先设置初始布局参数,初始布局参数包括每个节点数据的初始位置坐标,每个节点数据受到的初始合力大小以及每个节点数据的权重值。此外,还设置各个节点数据的节点外形属性以及各连线的连线外形属性。节点外形属性包括节点形状(包括但是不限于圆形、方形),节点颜色(包括但是不限于边框颜色和填充颜色)以及节点边框厚度。连线外形属性包括线条类型(包括但是不限于虚线、实线),线条颜色、线条两端样式(包括但是不限于箭头、圆形)和线条宽度。
其中,每个节点数据的权重值可以相同,也可以不同,具体根据实际情况和数据分析的需要进一步设定。例如:若根据某区域内个人收入信息生成个人收入力导向布局图像,则将年收入等级相同的节点数据(人)所对应权重值设置为相同,年收入等级不相同的节点数据(人)所对应权重值设置为不同。当然,根据需要和数据分析需求每个节点数据的权重值除了通过一项指标来衡量之外,还可以加入其他评价因素,从而有利于更加精准地表示出不同业务类型对应的力导向布局图像所包含的内容。
S1000获取节点数据和各节点数据之间的关系,并根据各节点数据之间的关系生成各节点数据之间的连线;
S2000获取各节点数据对应的布局参数;
S3100根据节点数据及其对应的布局参数进行分组,将分组结果分别输入到至少两个图形处理器处运行的采样器中,并根据分组结果中节点数据对应的节点外形属性、权重值和分组结果中连线对应的连线外形属性,分别配置其所输入采样器中各节点及其对应连线的节点外形和连线外形;
S3200根据各图像处理器处的采样器分别对其获取到的分组结果进行迭代更新,直至得到各节点数据分别对应的最终位置坐标;
S3300根据最终位置坐标将对应的节点数据放置于预设分布图上的对应位置处生成力导向布局图像。
本发明主要的设计思想为:每个节点数据都可以看成是一个带有一定能量的电子,电子与电子之间存在某种排斥力,使它们两两相互排斥。同时,有些电子间被一些“边”所牵连,这些边产生类似弹簧的吸引力,又紧紧牵制着“边”两端的电子。在电子间排斥力和电子间吸引力的不断作用下,电子们从随机无序的初态不断发生位移,逐渐趋于平衡有序的终态。
本发明包括两个或者两个以上的图形处理器,每个图形处理器处运行有一个采样器。将节点数据及其对应的布局参数进行分组,可以是将节点数据及其对应的布局参数进行平均分组,也可以不平均分组。然后,将分组结果随机分别输入至不同的采样器中。另外,也根据分组结果中的节点数据对应的节点外形属性、权重值和分组结果中连线对应的连线外形属性,分别配置其所输入采样器中各节点及其对应连线的节点外形和连线外形,从而使得根据节点外形和连线外形进行配置好的采样器,对自身获取的分组结果进行迭代更新直至获取每个节点数据对应的最终位置坐标,然后,根据每个节点数据对应的最终位置坐标,将对应的节点数据放置于预设分布图上的对应位置处生成力导向布局图像。
本实施例中,通过各个采样器进行配置并对获取的分组结果进行迭代更新得到各节点数据分别对应的最终位置坐标,然后根据各节点数据分别对应的最终位置坐标生成力导向布局图像,实现了将随机的无序的节点数据,根据节点数据相互之间的关系,规则有序的体现在力导向布局图像中,增强了数据的可读性,从而有助于提升对于数据的分析判断。
本发明的一个实施例,如图3所示,一种图像布局实现方法,包括:
S0100预先设置初始布局参数,并设置各节点数据的节点外形属性以及各连线的连线外形属性;
S1000获取节点数据和各节点数据之间的关系,并根据各节点数据之间的关系生成各节点数据之间的连线;
S2000获取各节点数据对应的布局参数;
S3100根据节点数据及其对应的布局参数进行分组,将分组结果分别输入到至少两个图形处理器处运行的采样器中,并根据分组结果中节点数据对应的节点外形属性、权重值和分组结果中连线对应的连线外形属性,分别配置其所输入采样器中各节点及其对应连线的节点外形和连线外形;
S3210根据各图像处理器处的采样器分别对输入其中的节点数据及其对应的初始布局参数进行初次更新;
S3220根据节点数据对应的更新后布局参数进行计算得到上一次更新后每个节点数据对应的速度值,使得节点数据在其对应采样器进行下一次更新时,根据计算得到的速度值和上一次更新时的位置坐标进行计算得到节点数据在下一次更新时的位置坐标,直至计算得到各节点数据分别对应的最终位置坐标为止;
S3300根据最终位置坐标将对应的节点数据放置于预设分布图上的对应位置处生成力导向布局图像;
其中,初始布局参数和更新后布局参数均包括节点数据所在位置坐标和节点数据受到的合力大小。
具体的,将当前数组内的节点数据的初始位置坐标,以及当前数组内各节点数据之间生成的连线编码输入至当前采样器中,并且将当前数组内个节点数据对应的权重值输入至当前采样器。此外,根据当前数组内各节点数据对应的节点外形,以及连线对应的连线外形对当前采样器进行配置。当前采样器进行第一帧刷新时,再根据当前数组内的各个节点数据的初始位置坐标可以计算出当前数组内的所有节点数据受到的斥力,根据当前数组内的各个节点数据的初始位置坐标与连线,可以计算出当前数组内的所有节点数据受到的引力,根据当前数组内每个节点数据受到的引力和斥力计算得到对应的合力,即可得出当前数组内的所有节点数据的加速度,约等于当前数组内的所有节点数据的速度。将该速度存入当前采样器中。当前采样器下一帧刷新时,根据当前数组内的所有节点数据的初始位置坐标和速度,更新当前数组内的所有节点数据的更新位置坐标,如此反复直至达到较好的布局效果为止,即直至当前数组内的所有节点数据趋于稳定不再移动时获取最终位置坐标。
优选的,如果当使用采样器(包括OpenGL/WebGL)渲染时,直接取用上述布局中存储在GPU中结果,可以降低数据的拷贝数量,提高系统的反应速度。
本实施例能够让包括一定规模的节点数据(其中部分节点数据存在一定的关联关系,且节点数据与节点数据之间的关联关系强烈程度有所不同)的布局方式达到:交叉边最少、可视范围最小、与同一顶点相关的连线的长度趋于接近等效果,从而使得整张力导向布局图像的节点数据布局相对均匀、相对对称,以便绘制后的布局结构能够让用户得到最佳的查看体验,更增强了数据的可读性,从而有助于提升用户对于数据的分析判断。
本发明的一个实施例,如图4所示,一种图像布局实现系统,包括:
数据获取模块10,用于获取节点数据和各节点数据之间的关系,并根据各节点数据之间的关系生成各节点数据之间的连线;
参数获取模块20,用于获取各节点数据对应的布局参数;
处理模块30,用于将各节点数据及其对应的布局参数分别输入到至少两个图形处理器的采样器中,在图形处理器中运行力导向布局算法,直至得到各节点数据分别对应的最终位置坐标,根据各节点数据及其最终位置坐标生成对应的力导向布局图像。
基于前述实施例,还包括:
设置模块,用于预先设置初始布局参数,并设置各节点数据的节点外形属性以及各连线的连线外形属性。
基于前述实施例,处理模块30包括:
分组单元,用于根据节点数据及其对应的布局参数进行分组;
处理单元,用于将分组结果分别输入到至少两个图形处理器处运行的采样器中,并根据分组结果中节点数据对应的节点外形属性、权重值和分组结果中连线对应的连线外形属性,分别配置其所输入采样器中各节点及其对应连线的节点外形和连线外形;
控制单元,用于根据各图像处理器处的采样器分别对其获取到的分组结果进行迭代更新,直至得到各节点数据分别对应的最终位置坐标;
生成单元,用于根据最终位置坐标将对应的节点数据放置于预设分布图上的对应位置处生成力导向布局图像。
基于前述实施例,控制单元包括:
处理子单元,用于根据各图像处理器处的采样器分别对输入其中的节点数据及其对应的初始布局参数进行初次更新;
计算子单元,用于根据节点数据对应的更新后布局参数进行计算得到上一次更新后每个节点数据对应的速度值,使得节点数据在其对应采样器进行下一次更新时,根据计算得到的速度值和上一次更新时的位置坐标进行计算得到节点数据在下一次更新时的位置坐标,直至计算得到各节点数据分别对应的最终位置坐标为止;
其中,初始布局参数和更新后布局参数均包括节点数据所在位置坐标和节点数据受到的合力大小。
具体的,本实施例是上述方法实施例对应的装置实施例,具体效果参见上述方法实施例,在此不再一一赘述。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各程序模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的程序模块完成,即将装置的内部结构划分成不同的程序单元或模块,以完成以上描述的全部或者部分功能。实施例中的各程序模块可以集成在一个处理单元中,也可是各个单元单独物理存在,也可以两个或两个以上单元集成在一个处理单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件程序单元的形式实现。另外,各程序模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。
本发明的一个实施例,如图5所示,一种终端设备100,包括处理器110、存储器120,其中,存储器120,用于存放计算机程序;处理器110,用于执行存储器120上所存放的计算机程序,实现上述图1-图3所对应方法实施例中的图像布局实现方法。
终端设备100可以为桌上型计算机、笔记本、掌上电脑、平板型计算机、手机、人机交互屏等设备。终端设备100可包括,但不仅限于处理器110、存储器120。本领域技术人员可以理解,图5仅仅是终端设备100的示例,并不构成对终端设备100的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如:终端设备100还可以包括输入/输出接口、显示设备、网络接入设备、通信总线、通信接口等。通信接口和通信总线,还可以包括输入/输出接口,其中,处理器110、存储器120、输入/输出接口和通信接口通过通信总线完成相互间的通信。该存储器120存储有计算机程序,该处理器110用于执行存储器120上所存放的计算机程序,实现上述图1-图3所对应方法实施例中的图像布局实现方法。
处理器110可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
存储器120可以是终端设备100的内部存储单元,例如:终端设备的硬盘或内存。存储器也可以是终端设备的外部存储设备,例如:终端设备上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,存储器120还可以既包括终端设备100的内部存储单元也包括外部存储设备。存储器120用于存储计算机程序以及终端设备100所需要的其他程序和数据。存储器还可以用于暂时地存储已经输出或者将要输出的数据。
通信总线是连接所描述的元素的电路并且在这些元素之间实现传输。例如,处理器110通过通信总线从其它元素接收到命令,解密接收到的命令,根据解密的命令执行计算或数据处理。存储器120可以包括程序模块,例如内核(kernel),中间件(middleware),应用程序编程接口(Application Programming Interface,API)和应用。该程序模块可以是有软件、固件或硬件、或其中的至少两种组成。输入/输出接口转发用户通过输入/输出接口(例如感应器、键盘、触摸屏)输入的命令或数据。通信接口将该终端设备100与其它网络设备、用户设备、网络进行连接。例如,通信接口可以通过有线或无线连接到网络以连接到外部其它的网络设备或用户设备。无线通信可以包括以下至少一种:无线保真(WiFi),蓝牙(BT),近距离无线通信技术(NFC),全球卫星定位系统(GPS)和蜂窝通信等等。有线通信可以包括以下至少一种:通用串行总线(USB),高清晰度多媒体接口(HDMI),异步传输标准接口(RS-232)等等。网络可以是电信网络和通信网络。通信网络可以为计算机网络、因特网、物联网、电话网络。终端设备100可以通过通信接口连接网络,终端设备100和其它网络设备通信所用的协议可以被应用、应用程序编程接口(API)、中间件、内核和通信接口至少一个支持。
本发明的一个实施例,一种存储介质,存储介质中存储有至少一条指令,指令由处理器加载并执行以实现上述图像布局实现方法对应实施例所执行的操作。例如,计算机可读存储介质可以是只读内存(ROM)、随机存取存储器(RAM)、只读光盘(CD-ROM)、磁带、软盘和光数据存储设备等。
它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详细描述或记载的部分,可以参见其他实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的实施例中,应该理解到,所揭露的装置/终端设备和方法,可以通过其他的方式实现。例如,以上所描述的装置/终端设备实施例仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性、机械或其他的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可能集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序发送指令给相关的硬件完成,的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,计算机程序包括:计算机程序代码,计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。计算机可读存储介质可以包括:能够携带计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,计算机可读存储介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如:在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
应当说明的是,上述实施例均可根据需要自由组合。以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (10)
1.一种图像布局实现方法,其特征在于,包括步骤:
获取节点数据和各节点数据之间的关系,并根据所述各节点数据之间的关系生成各节点数据之间的连线;
获取各节点数据对应的布局参数;
将各节点数据及其对应的布局参数分别输入到至少两个图形处理器的采样器中,在图形处理器中运行力导向布局算法,直至得到各节点数据分别对应的最终位置坐标,根据各节点数据及其最终位置坐标生成对应的力导向布局图像。
2.根据权利要求1所述的图像布局实现方法,其特征在于,所述获取节点数据和各节点数据之间的关系,并根据所述各节点数据之间的关系生成各节点数据之间的连线之前包括步骤:
预先设置初始布局参数,并设置各节点数据的节点外形属性以及各连线的连线外形属性。
3.根据权利要求2所述的图像布局实现方法,其特征在于,所述将各节点数据及其对应的布局参数分别输入到至少两个图形处理器的采样器中,在图形处理器中运行力导向布局算法,直至得到各节点数据分别对应的最终位置坐标,根据各节点数据及其最终位置坐标生成对应的力导向布局图像:
根据所述节点数据及其对应的布局参数进行分组,将分组结果分别输入到至少两个图形处理器处运行的采样器中,并根据分组结果中节点数据对应的节点外形属性、权重值和分组结果中连线对应的连线外形属性,分别配置其所输入采样器中各节点及其对应连线的节点外形和连线外形;
根据各图像处理器处的采样器分别对其获取到的分组结果进行迭代更新,直至得到各节点数据分别对应的最终位置坐标;
根据所述最终位置坐标将对应的节点数据放置于预设分布图上的对应位置处生成所述力导向布局图像。
4.根据权利要求3所述的图像布局实现方法,其特征在于,所述根据各图像处理器处的采样器分别对其获取到的分组结果进行迭代更新,直至得到各节点数据分别对应的最终位置坐标包括步骤:
根据各图像处理器处的采样器分别对输入其中的节点数据及其对应的初始布局参数进行初次更新;
根据所述节点数据对应的更新后布局参数进行计算得到上一次更新后每个节点数据对应的速度值,使得所述节点数据在其对应采样器进行下一次更新时,根据计算得到的速度值和上一次更新时的位置坐标进行计算得到所述节点数据在下一次更新时的位置坐标,直至计算得到各节点数据分别对应的最终位置坐标为止;
其中,所述初始布局参数和更新后布局参数均包括所述节点数据所在位置坐标和所述节点数据受到的合力大小。
5.一种图像布局实现系统,其特征在于,包括:
数据获取模块,用于获取节点数据和各节点数据之间的关系,并根据所述各节点数据之间的关系生成各节点数据之间的连线;
参数获取模块,用于获取各节点数据对应的布局参数;
处理模块,用于将各节点数据及其对应的布局参数分别输入到至少两个图形处理器的采样器中,在图形处理器中运行力导向布局算法,直至得到各节点数据分别对应的最终位置坐标,根据各节点数据及其最终位置坐标生成对应的力导向布局图像。
6.根据权利要求5所述的图像布局实现系统,其特征在于,还包括:
设置模块,用于预先设置初始布局参数,并设置各节点数据的节点外形属性以及各连线的连线外形属性。
7.根据权利要求6所述的图像布局实现系统,其特征在于,所述处理模块包括:
分组单元,用于根据所述节点数据及其对应的布局参数进行分组;
处理单元,用于将分组结果分别输入到至少两个图形处理器处运行的采样器中,并根据分组结果中节点数据对应的节点外形属性、权重值和分组结果中连线对应的连线外形属性,分别配置其所输入采样器中各节点及其对应连线的节点外形和连线外形;
控制单元,用于根据各图像处理器处的采样器分别对其获取到的分组结果进行迭代更新,直至得到各节点数据分别对应的最终位置坐标;
生成单元,用于根据所述最终位置坐标将对应的节点数据放置于预设分布图上的对应位置处生成所述力导向布局图像。
8.根据权利要求7所述的图像布局实现系统,其特征在于,所述控制单元包括:
处理子单元,用于根据各图像处理器处的采样器分别对输入其中的节点数据及其对应的初始布局参数进行初次更新;
计算子单元,用于根据所述节点数据对应的更新后布局参数进行计算得到上一次更新后每个节点数据对应的速度值,使得所述节点数据在其对应采样器进行下一次更新时,根据计算得到的速度值和上一次更新时的位置坐标进行计算得到所述节点数据在下一次更新时的位置坐标,直至计算得到各节点数据分别对应的最终位置坐标为止;
其中,所述初始布局参数和更新后布局参数均包括所述节点数据所在位置坐标和所述节点数据受到的合力大小。
9.一种终端设备,其特征在于,包括处理器、存储器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器,用于执行所述存储器上所存放的计算机程序,实现如权利要求1至权利要求4任一项所述的图像布局实现方法所执行的操作。
10.一种存储介质,其特征在于,所述存储介质中存储有至少一条指令,所述指令由处理器加载并执行以实现如权利要求1至权利要求4任一项所述的图像布局实现方法所执行的操作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911229712.XA CN111061921B (zh) | 2019-12-04 | 2019-12-04 | 一种图像布局实现方法、系统、终端设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911229712.XA CN111061921B (zh) | 2019-12-04 | 2019-12-04 | 一种图像布局实现方法、系统、终端设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111061921A true CN111061921A (zh) | 2020-04-24 |
CN111061921B CN111061921B (zh) | 2020-10-30 |
Family
ID=70299856
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911229712.XA Active CN111061921B (zh) | 2019-12-04 | 2019-12-04 | 一种图像布局实现方法、系统、终端设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111061921B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114090838A (zh) * | 2022-01-18 | 2022-02-25 | 杭州欧若数网科技有限公司 | 大数据可视化展示的方法、系统、电子装置和存储介质 |
CN115495518A (zh) * | 2022-09-22 | 2022-12-20 | 奇点浩翰数据技术(北京)有限公司 | 一种生成图表的方法和装置 |
WO2022268118A1 (zh) * | 2021-06-22 | 2022-12-29 | 北京锐安科技有限公司 | 关系图的调整方法、装置及存储介质 |
CN116579288A (zh) * | 2023-07-12 | 2023-08-11 | 中山大学 | 一种模拟集成电路版图布局方法及系统 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040059521A1 (en) * | 2002-09-23 | 2004-03-25 | Han Kyung Sook | Method for visualizing large-scale protein interaction data |
US20170084064A1 (en) * | 2015-06-05 | 2017-03-23 | International Business Machines Corporation | Force-directed graphs |
CN106780072A (zh) * | 2017-01-06 | 2017-05-31 | 上海前隆金融信息服务有限公司 | 力导向自适应图布局方法及系统 |
CN106934422A (zh) * | 2017-03-16 | 2017-07-07 | 浙江工业大学 | 基于改进力导引图布局的层级视觉抽象方法 |
CN107733680A (zh) * | 2017-05-19 | 2018-02-23 | 小草数语(北京)科技有限公司 | 网络图谱布局方法、装置及可视化设备 |
CN109981311A (zh) * | 2017-12-27 | 2019-07-05 | 阿里巴巴集团控股有限公司 | 图布局的实现方法及装置 |
-
2019
- 2019-12-04 CN CN201911229712.XA patent/CN111061921B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040059521A1 (en) * | 2002-09-23 | 2004-03-25 | Han Kyung Sook | Method for visualizing large-scale protein interaction data |
US20170084064A1 (en) * | 2015-06-05 | 2017-03-23 | International Business Machines Corporation | Force-directed graphs |
CN106780072A (zh) * | 2017-01-06 | 2017-05-31 | 上海前隆金融信息服务有限公司 | 力导向自适应图布局方法及系统 |
CN106934422A (zh) * | 2017-03-16 | 2017-07-07 | 浙江工业大学 | 基于改进力导引图布局的层级视觉抽象方法 |
CN107733680A (zh) * | 2017-05-19 | 2018-02-23 | 小草数语(北京)科技有限公司 | 网络图谱布局方法、装置及可视化设备 |
CN109981311A (zh) * | 2017-12-27 | 2019-07-05 | 阿里巴巴集团控股有限公司 | 图布局的实现方法及装置 |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022268118A1 (zh) * | 2021-06-22 | 2022-12-29 | 北京锐安科技有限公司 | 关系图的调整方法、装置及存储介质 |
CN114090838A (zh) * | 2022-01-18 | 2022-02-25 | 杭州欧若数网科技有限公司 | 大数据可视化展示的方法、系统、电子装置和存储介质 |
CN114090838B (zh) * | 2022-01-18 | 2022-06-14 | 杭州悦数科技有限公司 | 大数据可视化展示的方法、系统、电子装置和存储介质 |
CN115495518A (zh) * | 2022-09-22 | 2022-12-20 | 奇点浩翰数据技术(北京)有限公司 | 一种生成图表的方法和装置 |
CN115495518B (zh) * | 2022-09-22 | 2023-10-24 | 奇点浩翰数据技术(北京)有限公司 | 一种生成图表的方法和装置 |
CN116579288A (zh) * | 2023-07-12 | 2023-08-11 | 中山大学 | 一种模拟集成电路版图布局方法及系统 |
CN116579288B (zh) * | 2023-07-12 | 2024-03-22 | 中山大学 | 一种模拟集成电路版图布局方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN111061921B (zh) | 2020-10-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111061921B (zh) | 一种图像布局实现方法、系统、终端设备和存储介质 | |
EP3827411B1 (en) | Conditional modification of augmented reality object | |
CN106575158B (zh) | 环境映射虚拟化机构 | |
CN110288705B (zh) | 生成三维模型的方法和装置 | |
US20150332481A1 (en) | Indexed uniform styles for stroke rendering | |
CN108109191A (zh) | 渲染方法及系统 | |
CN112258653A (zh) | 弹性对象的渲染方法、装置、设备及存储介质 | |
CN114066714A (zh) | 一种合批渲染方法、装置、设备及存储介质 | |
US20230401806A1 (en) | Scene element processing method and apparatus, device, and medium | |
CN109697748A (zh) | 模型压缩处理方法、模型贴图处理方法装置、存储介质 | |
CN109598672B (zh) | 一种地图道路渲染方法及装置 | |
CN112925595A (zh) | 资源分发方法、装置、电子设备及存储介质 | |
US10977855B1 (en) | Systems and methods for processing volumetric data using a modular network architecture | |
CN109829963B (zh) | 一种图像绘制方法及装置、计算设备和存储介质 | |
CN110456957A (zh) | 显示交互方法、装置、设备、存储介质 | |
CN111275799B (zh) | 动画的生成方法、装置和电子设备 | |
CN115619904A (zh) | 图像处理方法、装置及设备 | |
CN114723600A (zh) | 美妆特效的生成方法、装置、设备、存储介质和程序产品 | |
CN116775174A (zh) | 一种基于用户界面框架的处理方法、装置、设备及介质 | |
CN113888673A (zh) | 地图编辑方法、系统、装置、计算设备和存储介质 | |
CN113808238A (zh) | 动画的渲染方法、装置、可读介质和电子设备 | |
US12039649B2 (en) | Conditional modification of augmented reality object | |
CN114095719B (zh) | 图像展示方法及图像展示装置、存储介质 | |
KR101769028B1 (ko) | 3차원 지리 공간상에서의 객체 표현 방법 | |
CN118203832A (zh) | 插帧方法、装置、电子设备和计算机可读存储介质 |
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 |