CN111383312A - 一种基于粒子系统的大规模知识图谱可视化方法及装置 - Google Patents
一种基于粒子系统的大规模知识图谱可视化方法及装置 Download PDFInfo
- Publication number
- CN111383312A CN111383312A CN202010201399.5A CN202010201399A CN111383312A CN 111383312 A CN111383312 A CN 111383312A CN 202010201399 A CN202010201399 A CN 202010201399A CN 111383312 A CN111383312 A CN 111383312A
- Authority
- CN
- China
- Prior art keywords
- particle system
- client
- particle
- rendering
- map
- 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
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/005—General purpose rendering architectures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/34—Browsing; Visualisation therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/36—Creation of semantic tools, e.g. ontology or thesauri
- G06F16/367—Ontology
-
- 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/95—Retrieval from the web
- G06F16/957—Browsing optimisation, e.g. caching or content distillation
- G06F16/9574—Browsing optimisation, e.g. caching or content distillation of access to content, e.g. by caching
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/5018—Thread allocation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2210/00—Indexing scheme for image generation or computer graphics
- G06T2210/56—Particle system, point based geometry or rendering
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Software Systems (AREA)
- Computer Graphics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Animal Behavior & Ethology (AREA)
- Computational Linguistics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Image Generation (AREA)
Abstract
本发明提供了一种基于粒子系统的大规模知识图谱可视化方法及装置,其中主要涉及到大规模图谱渲染,粒子系统等。包括,超参优化客户端,用于提交优化请求;超参优化服务门户,用于接收客户端请求进行处理;粒子系统,用于将服务端响应客户端的大规模图谱进行渲染,可将数万个对象缩减为1个粒子系统对象,极大降低复杂度;service worker,用于离线资源缓存,优化性能等。本发明的有益效果为:使用粒子系统实现大规模图谱可视化,避免数据量庞大时,图谱渲染会杂乱密集,使得图谱清晰;服务端通过字节流方式响应返回给客户端,客户端使用异步多线程队列加载渲染实现图谱的快速流畅渲染,从而达到优化性能的效果。
Description
技术领域
本发明属于人工智能领域,具体涉及一种基于粒子系统的大规模知识图谱可视化方法及装置。
背景技术
从一开始的Google搜索,到现在的聊天机器人、大数据风控、证券投资、智能医疗、自适应教育、推荐系统,无一不跟知识图谱相关。它在技术领域的热度也在逐年上升,随着移动互联网的发展,万物互联成为了可能,这种互联所产生的数据也在爆发式地增长,而且这些数据恰好可以作为分析关系的有效原料。如果说以往的智能分析专注在每一个个体上,在移动互联网时代则除了个体,这种个体之间的关系也必然成为我们需要深入分析的很重要一部分。 在一项任务中,只要有关系分析的需求,知识图谱就“有可能”派的上用场。目前行业对于图谱可视化是利用neo4j自带的客户端进行可视化操作.这种方式存在一定的弊端,第一是当需要的节点数据达到千级,可能就会产生客户端奔溃;第二,当页面数据达到千级以上,会造成数据密密麻麻展示在页面上,可读性差。
发明内容
为了解决这些问题,在提高海量图谱的渲染优化时,又使得图谱可读性高。本发明提供了一种基于粒子系统的大规模知识图谱可视化方法及装置。
本发明采用以下技术方案:
一种基于粒子系统的大规模知识图谱可视化方法及装置,其特征在于,包括:海量知识图谱的渲染、粒子系统、粒子材质、service worker、客户端性能优化等。
如权利要求1所述的一种基于粒子系统的大规模知识图谱可视化方法及装置,其特征在于:所述海量知识图谱的渲染还包括:为用户提供可视化知识图谱界面,当用户搜索其中某一个节点,可将该节点的相关的关系节点都渲染在页面,还可将渲染出的图谱进行存储,如需要分析csv文件或者json还可导入这两种文件格式,将文件中内容,渲染成图谱信息,进行一系列数据分析;
数据是一定全部传给客户端才能进行数据处理,这样会1造成当json 数据庞大性能差,时间慢耗用cpu内存,而改用字节流,可以服务端传送多少,客户端启用异步多线程队列进行加载渲染,而不是一定要全部传送完,从而实现对于性能的优化;
所述所述海量知识图谱的渲染还包括:选型使用d3-force利导向图布局+webgl渲染;
所述的一种基于粒子系统的大规模知识图谱可视化方法及装置,使用Points类粒子;
粒子系统使用points类,points对象只能通过渲染器进行渲染,渲染器渲染时的粒子如果需要用canvas实现,则必须加多一步将canvas转化为纹理,在通过map属性加载进来;
每个粒子材质图形的创建,一般是通过canvas描绘或通过加载图片的方式来格式化粒子,一个客户端使用Service Worker 离线资源缓存。
采用上述技术方案后,本发明与背景技术相比,具有如下优点:
第一,海量图谱快速渲染,服务端通过异步字节流,客户端使用异步多线程队列加载渲染并且使用d3-force利导向图布局+webg3D绘图协议渲染实现客户端的快速流畅渲染;第二,使用Points粒子系统将数万个 circle 对象缩减为 1 个粒子系统对象,极大降低复杂度;第三,service worker避免重复对客户端发送请求;第四,服务端不光响应客户端相应图谱数据,还可对图谱数据进行路径搜索、关系分析、中心度分析、社区发现等算法、图谱中的数据进行分析。
附图说明
图1为本发明的结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
实施例
参考图1所示,本发明公开了一种基于粒子系统的大规模知识图谱可视化方法及装置,包括:海量知识图谱的渲染、粒子系统、粒子材质、service worker、性能优化、路径搜索、关系分析、中心度分析、社区发现等算法、图谱中的数据进行分析。客户端请求服务端实现图谱渲染实施方式如下所示:
步骤1、用户使用客户端封装超参优化相关资源,发送请求到服务器端服务门户,发送的请求数据格式例子如下:
Request:{
graph:”try”,
confidence:”1”,
relationship:”person-watching->movie”,
type:”1”,
start:”2019-1-11”,
end:”2019-1-13”
}
步骤2、服务端服务门户接收对应的请求,将请求转发给服务端图谱控制器处理,同时返回给客户端状态信息(是否启动成功)以及相应图谱数据二进制流形式,10万条原始数据经过优化处理得到 5 万个节点 4 万条关系, 这些数据约占 10M~20M 的内存;
步骤3、客户端采用流的形势读取二进制数据有效节约了数据的读取时间,做到边读取边渲染 从而减少了用户等待数据加载的时间;
步骤4、客户端对数据进行预处理,例如创建索引等;
步骤5、客户端准备渲染器以及准备粒子系统:准备粒子材质,将数据结合webg3D绘图协议形成顶点集合;
步骤6、客户端准备初始化控制器,绑定渲染事件(渲染帧等);
步骤7、客户端初始化web worker ,,将步骤5产生的顶点集合与步骤5准备的粒子系统中的粒子材质结合,采用异步任务处理队列进行逐步渲染,可以将原万级节点大规模图谱信息有序清晰渲染在页面,从而实现大规模图谱渲染的可视化;
通过以上步骤,当原始图数据达到亿级别时,只需在服务端进行相应的数据处理(压缩成粒子对象模型数据),客户端处理方式不变,即可以实现亿级别海量知识图谱渲染。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发那些年明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。
Claims (9)
1.一种基于粒子系统的大规模知识图谱可视化方法及装置,其特征在于,包括:海量知识图谱的渲染、粒子系统、粒子材质、service worker、客户端性能优化,其中:
所述海量知识图谱渲染它可以让点线关系以一种清晰姿态呈现,从而实现可视化;
所述粒子系统中每个节点只需一个顶点,上面贴一张圆形图案纹理即可;
并且使用粒子系统后,可将数万个 circle 对象缩减为 1 个粒子系统对象,极大降低复杂度,从而实现客户端性能优化;
所述粒子材质,结合粒子系统,控制海量只是图谱展示在页面的效果,从而使得基于粒子系统展示效果更加完善;
所述service worker 用户客户端进行离线缓存,从而使得当客户端发送相同请求给服务端时会进行相应拦截,从而减少请求实现性能优化。
2.如权利要求1所述的一种基于粒子系统的大规模知识图谱可视化方法及装置,其特征在于:所述海量知识图谱的渲染还包括:为用户提供可视化知识图谱界面,当用户搜索其中某一个节点,可将该节点的相关的关系节点都渲染在页面,还可将渲染出的图谱进行存储,如需要分析csv文件或者json还可导入这两种文件格式,将文件中内容,渲染成图谱信息,进行一系列数据分析。
3.如权利要求1所述的一种基于粒子系统的大规模知识图谱可视化方法及装置,其特征在于,一个基本的客户端请求服务端渲染过程包含如下步骤:
步骤1、用户使用客户端封装参数优化相关资源,发送请求到服务器端服务门户;
步骤2、服务器端服务门户接收对应的请求,启用异步处理机制,将请求转发给获取图谱引擎,服务端通过异步字节流,同时返回给客户端字节流数据(不用json);
步骤3、客户端使用异步多线程队列加载渲染,实现服务端的快速流畅渲染;
以上步骤:丢弃服务端丢弃传统的json格式数据,使用字节流数据这样避免了:json数据是一定全部传给客户端才能进行数据处理,这样会1造成当json 数据庞大性能差,时间慢耗用cpu内存,而改用字节流,可以服务端传送多少,客户端启用异步多线程队列进行加载渲染,而不是一定要全部传送完,从而实现对于性能的优化。
4.如权利要求1所述的一种基于粒子系统的大规模知识图谱可视化方法及装置,其特征在于:所述海量知识图谱的渲染还包括:选型webg3D绘图协议渲染,这种选型可以让点线关系以一种清晰姿态呈现;
这种算法建立在粒子物理学的基础上,将每个节点模拟成原子,在每一帧都通过原子间的斥力(与线的束缚)产生节点的速度与加速度,生成新的位置;
经过多次迭代之后,最终得到一个低能量的稳定布局。
5.一种基于粒子系统的大规模知识图谱可视化方法及装置,其特征在于,包括:海量知识图谱的渲染、粒子系统、粒子材质、service worker、性能优化,其中:所述粒子系统包含两种创建方式,如权利要求1所述的一种基于粒子系统的大规模知识图谱可视化方法及装置,使用Points类粒子,每个节点只需一个顶点,上面贴一张圆形图案纹理即可;
并且使用粒子系统后,可将数万个 circle 对象缩减为 1 个粒子系统对象,极大降低复杂度。
6.如权利要求5所述的一种基于粒子系统的大规模知识图谱可视化方法及装置,其特征在于,一个基本Points类粒子系统创建包含如下步骤:
步骤1、客户端使用Three.j s,创建一个几何对象Geometry(也可以是外部导入的模型),然后基于几何体自身的顶点集合geometry.节点集合创建粒子(这里是将服务端响应客户端的数据与选型结合形成的顶点集合,或者是下文所述service worker与客户端数据的缓存与选型形成的顶点集合),每个顶点将代表粒子系统中的每个粒子;
步骤2、创建粒子材质,Points对应Points Material,来实现每个粒子的图案;
实现的方式可以是加载图片纹理或者canvas纹理,又或者不采用纹理直接创建正方体粒子;
步骤3、通过以上两步的创建一个Points类的物体,这个物体则代表了整个粒子系统。
7.如权利要求5所述的一种基于粒子系统的大规模知识图谱可视化方法及装置,其特征在于;粒子系统使用points类,points对象只能通过渲染器进行渲染,渲染器渲染时的粒子如果需要用canvas实现,则必须加多一步将canvas转化为纹理,在通过map属性加载进来。
8.如权利要求1所述的一种基于粒子系统的大规模知识图谱可视化方法及装置,其特征在于,每个粒子材质图形的创建,一般是通过canvas描绘或通过加载图片的方式来格式化粒子,一个基本的粒子系统的粒子材质创建过程包含如下步骤:
步骤1、直接引用画布,通过渲染器渲染,在每个粒子的材质对象里直接引用HTML5画布;
步骤2、canvas画布画上图片;
步骤3、canvas画布传递给THREE.Texture纹理;
步骤4、将纹理传递给材质;
步骤5、构造THREE.Mesh。
9.如权利要求1所述的一种基于粒子系统的大规模知识图谱可视化方法及装置,其特征在于,
客户端使用Service Worker 离线资源缓存过程包含如下步骤:
步骤1、确认前提条件:先使用 if 判断下浏览器是否支持 Service Worker;
注册完 Service Worker 之后,浏览器会为我们自动安装Service Worker;
步骤2、使用service worker 进行动态缓存静态资源:每当客户端向服务器发起请求的时候 fetch 事件触发.事件对象提供的respond With方法,劫持客户端发出的 http请求,并把一个 Promise 作为响应结果返回给客户端。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010201399.5A CN111383312B (zh) | 2020-03-20 | 2020-03-20 | 一种基于粒子系统的大规模知识图谱可视化方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010201399.5A CN111383312B (zh) | 2020-03-20 | 2020-03-20 | 一种基于粒子系统的大规模知识图谱可视化方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111383312A true CN111383312A (zh) | 2020-07-07 |
CN111383312B CN111383312B (zh) | 2023-03-31 |
Family
ID=71220635
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010201399.5A Active CN111383312B (zh) | 2020-03-20 | 2020-03-20 | 一种基于粒子系统的大规模知识图谱可视化方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111383312B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111897973A (zh) * | 2020-08-10 | 2020-11-06 | 厦门渊亭信息科技有限公司 | 一种基于WebGL的海量节点知识图谱可视化布局方法及系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2009129732A1 (zh) * | 2008-04-22 | 2009-10-29 | 华为技术有限公司 | 一种分布式调用消息的方法和装置 |
CN102722549A (zh) * | 2012-05-28 | 2012-10-10 | 中国科学院遥感应用研究所 | 一种基于集群的遥感数据集实时渲染服务 |
CN104616354A (zh) * | 2015-01-23 | 2015-05-13 | 克拉玛依红有软件有限责任公司 | 一种三维gis快速加载空间数据的方法 |
WO2018227102A1 (en) * | 2017-06-09 | 2018-12-13 | Sony Interactive Entertainment Inc. | Optimized deferred lighting and foveal adaptation of particles and simulation models in a foveated rendering system |
CN109961368A (zh) * | 2019-03-18 | 2019-07-02 | 京东数字科技控股有限公司 | 基于机器学习的数据处理方法及装置 |
-
2020
- 2020-03-20 CN CN202010201399.5A patent/CN111383312B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2009129732A1 (zh) * | 2008-04-22 | 2009-10-29 | 华为技术有限公司 | 一种分布式调用消息的方法和装置 |
CN102722549A (zh) * | 2012-05-28 | 2012-10-10 | 中国科学院遥感应用研究所 | 一种基于集群的遥感数据集实时渲染服务 |
CN104616354A (zh) * | 2015-01-23 | 2015-05-13 | 克拉玛依红有软件有限责任公司 | 一种三维gis快速加载空间数据的方法 |
WO2018227102A1 (en) * | 2017-06-09 | 2018-12-13 | Sony Interactive Entertainment Inc. | Optimized deferred lighting and foveal adaptation of particles and simulation models in a foveated rendering system |
CN109961368A (zh) * | 2019-03-18 | 2019-07-02 | 京东数字科技控股有限公司 | 基于机器学习的数据处理方法及装置 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111897973A (zh) * | 2020-08-10 | 2020-11-06 | 厦门渊亭信息科技有限公司 | 一种基于WebGL的海量节点知识图谱可视化布局方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN111383312B (zh) | 2023-03-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7295906B2 (ja) | ニューラルネットワークを使用したシーンの理解および生成 | |
KR101692193B1 (ko) | 크라우드소싱된 비디오 렌더링 시스템 | |
US8966356B1 (en) | Providing views of three-dimensional (3D) object data models | |
US20170351648A1 (en) | Delivery and display of page previews using shadow dom | |
US20100045662A1 (en) | Method and system for delivering and interactively displaying three-dimensional graphics | |
WO2013052208A2 (en) | 2d animation from a 3d mesh | |
CN114513520A (zh) | 基于客户端和服务器同步渲染的Web三维可视化技术 | |
CN111383312B (zh) | 一种基于粒子系统的大规模知识图谱可视化方法 | |
CN104270437A (zh) | 分布式混合架构的海量数据处理和可视化系统及方法 | |
CN116664772A (zh) | 一种轻量级的大规模bim可视化方法及系统 | |
Lluch et al. | Interactive three-dimensional rendering on mobile computer devices | |
JP2024533470A (ja) | シーンベースの没入型メディアをストリーミングするための方法、コンピューティングデバイス及びコンピュータプログラム | |
CN109582417A (zh) | 一种界面展示方法、客户端及图片服务器 | |
CN112489210A (zh) | 一种自主可控的三维立体自然资源一张图系统构建方法 | |
JPH10198823A (ja) | 映像生成装置 | |
WO2015035129A2 (en) | Rendering engine for multi-dimensional tracking, reconstruction and mapping | |
Nam et al. | Performance Comparison of 3D File Formats on a Mobile Web Browser | |
Stein et al. | hare3d-rendering large models in the browser | |
Ramírez et al. | Web visualization of 3D medical data with open source software | |
Gao et al. | Real-Time Ray Tracing Algorithm for Dynamic Scene | |
CN116630552B (zh) | 面向大规模的三维流程工厂模型的优化渲染方法 | |
Rischbeck et al. | A scalable, multi-user VRML server | |
CN117078825B (zh) | 一种点云数据线上渲染修改方法、系统、设备及介质 | |
Zhang et al. | Transmission Method of the Rendered Image based on Cube Environment Mapping | |
Abdallah et al. | 3D web-based shape modelling: building up an adaptive architecture |
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 |