A data visualization method, terminal device, system and storage medium
By classifying and processing business types of park data, generating updated data for interactive interfaces, and rendering it, the problem of poor visualization of park data in the existing technology is solved, data isolation and linkage are realized, and the display effect is improved.
Patent Information
- Application Number
- CN202110204488.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-02-23
- Publication Date
- 2025-03-28
- Estimated Expiration
- 2041-02-23
AI Technical Summary
In the prior art, the visual display of park data is not effective, and it is difficult to achieve isolation of different business data and data linkage of the same business type.
By receiving service data and classifying based on service types, multiple sets of target data of different service types are obtained, and these data are processed to generate updated data of the interactive interface, and rendering the interactive interface based on the updated data to achieve content update.
The isolation of different business data and the linkage of data of the same business type is realized, the visual display effect of campus data is improved, and the synchronization control and rendering efficiency of data is enhanced.
Smart Images

Figure CN112799773B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of data visualization, and in particular to a data visualization method, terminal equipment, system and storage medium. Background Art
[0002] With the development of Internet of Things technology, people have entered a new era of "Internet of Everything". Nowadays, more and more smart devices (such as networked cameras, networked sensors and detection equipment, etc.) have emerged and are applied in all aspects of life and production, providing people with real-time and efficient network monitoring services.
[0003] Parks generally include buildings, park roads, conference rooms, parking lots, office areas, exhibition halls, etc. They are large in area, have many buildings, complex terrain, and require many types of equipment / data to be monitored. How to improve the visualization of park data has become a technical problem currently faced. Summary of the invention
[0004] The embodiment of the present application solves the technical problem of poor visualization of park data in the prior art by providing a park data visualization client and system, realizes the isolation of different business data and the linkage of data of the same business type, thereby improving the visualization effect of park data.
[0005] In the first aspect, the present application provides the following technical solution through an embodiment of the present application:
[0006] A data visualization method, comprising:
[0007] Receiving business data, and classifying the business data based on different business types to obtain multiple groups of target data of different business types;
[0008] Processing at least one set of target data among the multiple sets of target data of different business types to obtain update data of the interactive interface;
[0009] The interactive interface is rendered based on the updated data to update the content of the interactive interface.
[0010] Preferably, the processing of at least one set of target data among the multiple sets of target data of different business types to obtain update data of the interactive interface includes:
[0011] Controlling the display window refresh module to process the at least one set of target data to obtain the updated data;
[0012] Wherein, the display window refresh module includes:
[0013] A data source module, used for receiving the target data;
[0014] A display window module, corresponding to the display window of the interactive interface;
[0015] An agent module, used for connecting to the data source module;
[0016] A refresh module is used to generate corresponding update data according to the target data, assign the update data to the display window module, and control the display window module to refresh.
[0017] Preferably, the control display window refresh module processes the at least one set of target data to obtain the updated data, including:
[0018] Controlling the data source module to receive the target data;
[0019] Controlling the proxy module to connect to the data source module;
[0020] The refresh module is controlled to generate corresponding update data according to the target data, the update data is assigned to the display window module, and the display window module is refreshed.
[0021] Preferably, the update data includes 2D data and 3D data.
[0022] Preferably, rendering the interactive interface based on the updated data includes:
[0023] Batch rendering objects of the same material in the 3D data; and / or
[0024] Merging multiple images in the 2D data into one image and rendering it; and / or
[0025] Objects outside the field of view in the 3D data are cut off.
[0026] Preferably, rendering the interactive interface based on the updated data includes:
[0027] When constructing a 3D model, creating a mesh and assigning the mesh to a 2D object, the mesh corresponding to the shape of a designated display area of the interactive interface;
[0028] extracting the 2D data from the update data;
[0029] Associating the 2D object with the 2D data;
[0030] The designated display area is rendered based on the 2D data.
[0031] Preferably, the receiving of the business data and classifying the business data based on different business types to obtain multiple groups of target data of different business types includes:
[0032] Receiving a plurality of pieces of the business data, and storing the plurality of pieces of the business data in a message buffer;
[0033] Each piece of the business data is sequentially acquired from the message buffer, and each piece of the business data is classified to obtain multiple groups of target data of different business types.
[0034] Preferably, the target data of different business types include one or more of the following target data:
[0035] Target data corresponding to different places;
[0036] Target data corresponding to different characters;
[0037] Target data corresponding to different events.
[0038] Based on the same inventive concept, in the second aspect, the present application provides the following technical solution through an embodiment of the present application:
[0039] A terminal device comprises a memory, a processor and a computer program stored in the memory and executable on the processor, wherein when the processor executes the program, any method step described in the first aspect can be implemented.
[0040] Based on the same inventive concept, in the third aspect, the present application provides the following technical solution through an embodiment of the present application:
[0041] A computer-readable storage medium stores a computer program, which, when executed by a processor, can implement any of the method steps described in the first aspect.
[0042] Based on the same inventive concept, in the fourth aspect, the present application provides the following technical solution through an embodiment of the present application:
[0043] A data visualization system, comprising:
[0044] Smart devices for obtaining monitoring data;
[0045] A server, configured to receive the monitoring data and generate business data based on the monitoring data;
[0046] Terminal device.
[0047] One or more technical solutions provided in the embodiments of the present application have at least the following technical effects or advantages:
[0048] 1. In an embodiment of the present application, a data visualization method is disclosed, including: receiving business data, and classifying the business data based on different business types to obtain multiple groups of target data of different business types; processing at least one group of target data of the multiple groups of target data of different business types to obtain update data of an interactive interface; rendering the interactive interface based on the update data to update the content of the interactive interface. Due to the classification of different business data, the isolation of different business data and the linkage of data of the same business type are achieved, thereby improving the effect of the visualization display of park data.
[0049] 2. In the embodiment of the present application, since the updated data includes 2D data and 3D data, the refresh of the 2D UI and the linkage of the 3D entity model can be synchronously controlled to improve the data visualization display effect.
[0050] 3. In the embodiment of the present application, the proxy module is associated with a specific data source module through dependency injection. When the content of the display window needs to be updated, it only needs to be associated with a new data source module to switch the data source, thereby meeting the situation of changing data sources.
[0051] 4. In an embodiment of the present application, during rendering, objects of the same material in the 3D data are batch rendered to reduce CPU consumption; and / or, multiple images in the 2D data are merged to reduce memory consumption; and / or, objects outside the field of view in the 3D data are cut off to avoid GPU consumption caused by additional rendering.
[0052] 5. In the embodiment of the present application, when creating a 3D model, a mesh is created and assigned to a 2D object, the mesh corresponds to the shape of a designated display area of the interactive interface; 2D data is extracted from the update data; the 2D object is associated with the 2D data; and the designated display area is rendered based on the 2D data. In this way, the linkage update of 2D data and 3D data is achieved, that is, the video fusion effect is achieved. BRIEF DESCRIPTION OF THE DRAWINGS
[0053] In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the following briefly introduces the drawings required for use in the description of the embodiments. Obviously, the drawings described below are some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without creative work.
[0054] Figure 1 This is a structural diagram of a data visualization system in an embodiment of the present application;
[0055] Figure 2 This is a flow chart of a data visualization method in an embodiment of the present application;
[0056] Figure 3-5 This is a rendering of the data visualization processing of the park data in the embodiment of this application;
[0057] Figure 6 This is a display effect diagram of the alarm service data in the embodiment of the present application;
[0058] Figure 7 This is a schematic diagram of merging multiple images in target data when rendering the target data in an embodiment of the present application;
[0059] Figure 8 is a schematic diagram of a conventional processing method for rendering target data in the prior art; Figure 8 for Figure 7 ;
[0060] Fig. 9 This is a structural diagram of a terminal device in an embodiment of the present application. DETAILED DESCRIPTION
[0061] The embodiment of the present application solves the technical problem of poor visualization of park data in the prior art by providing a park data visualization client and system, realizes the isolation of different business data and the linkage of data of the same business type, thereby improving the visualization effect of park data.
[0062] The technical solution of the embodiment of the present application is to solve the above technical problems, and the overall idea is as follows:
[0063] In an embodiment of the present application, a data visualization method is disclosed, including: receiving business data, and classifying the business data based on different business types to obtain multiple groups of target data of different business types; processing at least one group of target data of the multiple groups of target data of different business types to obtain update data of an interactive interface; rendering the interactive interface based on the update data to update the content of the interactive interface. Due to the classification of different business data, the isolation of different business data and the linkage of data of the same business type are achieved, thereby improving the effect of the visualization display of park data.
[0064] In order to better understand the above technical solution, the above technical solution will be described in detail below in conjunction with the accompanying drawings and specific implementation methods.
[0065] First of all, the term "and / or" in this article is only a description of the association relationship of the associated objects, indicating that there can be three relationships. For example, A and / or B can mean: A exists alone, A and B exist at the same time, and B exists alone. In addition, the character " / " in this article generally indicates that the associated objects before and after are in an "or" relationship.
[0066] This embodiment provides a data visualization system, such as Figure 1 As shown, including:
[0067] Smart devices for collecting monitoring data;
[0068] The server, i.e., the cloud platform server, is used to obtain monitoring data and generate business data based on the monitoring data;
[0069] Terminal device.
[0070] In the specific implementation process, this system can be applied to a variety of scenarios (such as schools, hospitals, shopping malls, stations, airports, parks, etc.), and can realize data visualization of these scenarios. This article will take "park" as an example to introduce the application of this system in the park and realize the visualization of park data.
[0071] In the specific implementation process, the system includes multiple smart devices, namely IOT (Internet of Things) devices (such as cameras, sensors, positioning devices, etc.), which are distributed in multiple locations in the park, and are used to collect monitoring data of the park (such as camera image data, sensor detection data, positioning information of positioning devices, etc.), and aggregate the monitoring data to the server. For example, the monitoring data is aggregated to the server through MQTT (Message Queuing Telemetry Transport).
[0072] In the specific implementation process, the server can analyze the monitoring data in real time and generate business data. For example, the server can use AI (Artificial Intelligence) algorithm to analyze the monitoring data in real time and generate business data.
[0073] In the specific implementation process, business data can mainly include three categories: 1. Business data related to places; 2. Business data related to people; 3. Business data related to events. Furthermore, according to different places, different people, and different events, business data can be further divided into more types.
[0074] In the specific implementation process, the business data related to the venue includes: business data corresponding to the conference room, business data corresponding to the parking lot, business data corresponding to the office area, business data corresponding to the exhibition hall, etc. For example, one or more cameras can be installed in different venues, and the server can analyze the monitoring data sent by the cameras in different venues to generate video data corresponding to different venues (ie, business data related to the venue).
[0075] In the specific implementation process, the business data related to the person includes: business data corresponding to visitors, business data corresponding to staff, where staff include: guards, cleaners, workers, managers, etc. For example, a positioning device or camera can be installed at a designated location in the park, and the server can analyze the monitoring data sent by the positioning device or camera to obtain the real-time location information of different people (that is, business data related to the person).
[0076] In the specific implementation process, the business data related to the event specifically includes: business data corresponding to the alarm prompt and business data corresponding to the message notification. For example, a sensor can be installed on the equipment that needs to be detected (such as air conditioners, elevators, etc.), and the server can analyze the monitoring data sent by the sensor to obtain the status of the detected equipment. If the status is abnormal, the business data corresponding to the alarm prompt is generated, or the business data corresponding to the message notification is generated.
[0077] In a specific implementation process, when the server analyzes the monitoring data of a place or a person, it can obtain not only the business data related to the place or the business data related to the person, but also the business data related to the event.
[0078] For example, for a conference room, the server can analyze the current usage status of the conference room based on the monitoring data sent by smart devices (such as cameras), including "free", "in use", "booked", "timed out", etc., and generate business data indicating the current usage status. Furthermore, the server can also analyze the abnormal behavior of participants in the conference room and generate business data corresponding to the alarm prompt.
[0079] For example, in a parking lot, the server can analyze the current usage status of each parking space based on the monitoring data sent by smart devices (such as cameras), including "idle", "in use", etc., and generate business data indicating the current usage status. Furthermore, the server can also analyze abnormal parking behaviors such as illegal parking and illegal occupation, and generate business data corresponding to the alarm prompt.
[0080] For example, for visitors, the server can analyze the visitor's abnormal behavior (for example, overstaying, illegally entering a restricted area, etc.) based on the monitoring data sent by smart devices (such as cameras). If the visitor is found to have abnormal behavior, the server will generate corresponding business data for alarm prompts.
[0081] In the specific implementation process, there may be many other ways to classify business types, which can be flexibly set according to actual needs and will not be described in detail here.
[0082] Furthermore, the server can implement subscription / publishing of business data, and the terminal device can obtain the corresponding real-time message data push after subscribing to the required business data.
[0083] For example, if the user wants to pay attention to the dynamics of the parking lot, he can subscribe to the corresponding business data of the parking lot through the terminal device; if the user wants to pay attention to the operating status of the elevator, he can subscribe to the corresponding business data of the elevator through the terminal device.
[0084] In the specific implementation process, the terminal device can receive business data, and classify the business data based on different business types to obtain multiple groups of target data of different business types; process at least one group of target data of the multiple groups of target data of different business types to obtain update data of the interactive interface; render the interactive interface based on the updated data to achieve content update of the interactive interface. The specific role of the terminal device will be described in detail later and will not be repeated here.
[0085] Based on the same inventive concept, this embodiment provides a data visualization method, which is applied to a terminal device, such as Figure 2 As shown, including:
[0086] Step S101: receiving business data, and classifying the business data based on different business types to obtain multiple groups of target data of different business types;
[0087] Step S102: processing at least one set of target data among multiple sets of target data of different business types to obtain update data of the interactive interface;
[0088] Step S103: Rendering the interactive interface based on the updated data to update the content of the interactive interface.
[0089] In the specific implementation process, in step S101, a core control module is set in the terminal device to receive business data, classify the business data based on different business types, and obtain multiple groups of target data of different business types. Due to the classification of different business data, the isolation of different business data and the linkage of data of the same business type are achieved, thereby improving the visual display effect of the park data.
[0090] In the specific implementation process, the core control module is deployed in the 3D engine (such as unity, unreal, etc.) of the terminal device. The core control module can be connected to the designated node service (such as broker service) of the cloud platform server through a preset communication protocol and subscribe to the required type of business data. In this way, when the designated node service has new data, it will be pushed to the terminal device in real time, and the terminal device can receive the latest business data in real time. Among them, the preset communication protocol can be TCP (Transmission Control Protocol).
[0091] Furthermore, the core control module includes:
[0092] A distribution unit, used for receiving business data sent by a server, classifying the business data based on different business types, obtaining multiple groups of target data of different business types, and distributing the multiple groups of target data of different business types to different business processing units;
[0093] The business processing unit is used to receive target business data and process the target data through the MVC (Model View Command, data view control) unit to obtain updated data of the interactive interface.
[0094] In the specific implementation process, the MVC unit includes: a control module (Command), a data module (Model) and a view module (View); wherein the view module (View) is used to control multiple display window refresh modules to process target data and obtain updated data.
[0095] In the specific implementation process, a plurality of MVC units are provided, corresponding to different types of target data respectively, and each MVC unit is used to receive a group of target data of a corresponding type and process the group of target data.
[0096] As an optional embodiment, step S101 includes:
[0097] Receive multiple business data and store the multiple business data in a message buffer; obtain each business data from the message buffer in turn, and classify each business data to obtain multiple groups of target data of different business types.
[0098] In the specific implementation process, the distribution unit includes:
[0099] A message receiving unit, a message buffer, a message classification unit, and a message pushing unit; wherein the message receiving unit is used to connect to a designated node service (e.g., Broker service) of a server and subscribe to business data, and receive multiple business data sent by the server, and store the multiple business data in a message buffer; the message classification unit is used to obtain each business data from the message buffer in sequence, and classify each business data to obtain multiple groups of target data of different business types; the message pushing unit is used to push the classified target business data to the corresponding business processing unit.
[0100] In the specific implementation process, business data can be divided into data of the type that is directly used and data that needs to be applied for and aggregated again. The data of the type that is directly used can be used directly after acquisition and pushed to the business processing unit via the distribution unit; for example, the data of the abnormal equipment alarm information is directly pushed to the corresponding business processing unit for display after acquisition. For the data of the type that needs to be applied for and aggregated again, after acquisition, it is necessary to use the index information to call the interface again to obtain more detailed data; for example, after receiving the abnormal alarm information of the visitor, it is necessary to call the API (Application Programming Interface) interface again according to the alarm location information to obtain the screen information of the surrounding monitoring equipment, and then obtain the identity identification information of the visitor, and then aggregate the screen information and identity identification information, and then push it to the corresponding business processing unit for display. Among them, AI (Artificial Intelligence) algorithm or other algorithms can be used to obtain the identity identification information of the visitor.
[0101] As an optional embodiment, the target data of different business types includes one or more of the following target data:
[0102] Target data corresponding to different places; target data corresponding to different people; target data corresponding to different events.
[0103] During the specific implementation process, the terminal device usually receives a lot of business data at the same time. At this time, the terminal device needs to classify these business data according to different business types and obtain multiple groups of target data of different business types.
[0104] For example, different places include: conference rooms, parking lots, office areas, exhibition halls, etc.; different characters include: visitors, staff (such as: doormen, cleaners, workers, managers, etc.); different events include: alarm prompts, message notifications, etc.
[0105] In the specific implementation process, there may be many other ways to classify business types, which can be flexibly set according to actual needs and will not be described in detail here.
[0106] For example, Figure 1 As shown, business types can be divided into: park status, park space, asset management, office space, smart security, and convenient access.
[0107] Park situation: park alarm information (comprehensive display of alarm information of other modules), overall overview of the park (number of people, number of vehicles), deployment monitoring (operating status of various equipment), park work order status analysis (handling rate, satisfaction), park energy efficiency analysis (power consumption, water consumption), and park traffic analysis.
[0108] Park space: garbage overflow alarm, smoking alarm, building alarm, cleaning alarm, bicycle alarm.
[0109] Asset management: equipment alarm information, park asset utilization rate, important asset equipment analysis, equipment repair and operation work order status, equipment repair and operation work order response time.
[0110] Office space: real-time identification of people entering the office area, workstation saturation analysis, vacant workstation change trends, conference room reservation information, conference room popularity analysis, and conference room utilization rates by time period.
[0111] Smart security: abnormal personnel alarm information, alarm event status statistics, alarm trends, real-time status monitoring of non-resident personnel, and status distribution of restricted areas in the park.
[0112] Convenient passage: abnormal vehicle alarm information, parking lot vehicle record statistics for the day, park traffic analysis, vehicle remaining space detection, and charging pile usage.
[0113] As an optional embodiment, step S102 includes:
[0114] Controlling the display window refresh module to process the target data and obtain updated data; the number of the display window refresh modules is multiple;
[0115] Among them, each display window refresh module includes: a data source module for receiving target data; a display window module corresponding to the display window of the interactive interface; an agent module for connecting to the data source module; a refresh module for controlling the entire display process, which can generate corresponding update data according to the target data, assign the update data to the display window module, and control the display window module to refresh the data.
[0116] In a specific implementation process, there are multiple display window refresh modules for processing different parts of a set of target data.
[0117] In the specific implementation process, there are multiple data source modules and multiple display window modules, which correspond to different display windows on the interactive interface. The refresh module manages multiple display window modules and holds a proxy module. The proxy module can be associated with a specific data source module through dependency injection. The dependency injection method can quickly switch the data acquisition path (only a new data source module needs to be injected) to meet the changing situation of the data source.
[0118] As an optional embodiment, the control display window refresh module processes at least one set of target data to obtain updated data, including:
[0119] The data source module is controlled to receive target data; the proxy module is controlled to connect to the data source module; the refresh module is controlled to generate corresponding update data according to the target data, assign the update data to the display window module, and refresh the display window module.
[0120] For example, when it is necessary to update the display content in display window A based on target data: first, control the data source module to receive the target data; second, control the proxy module to connect to the data source module; third, control the refresh module to generate corresponding update data according to the target data, assign the update data to the display window module, and refresh the display window module; finally, render the display window module A on the interactive interface based on the update data, so as to display the updated data in display window A.
[0121] In the specific implementation process, the proxy module will be associated with a specific data source module through dependency injection. When the content of the display window needs to be updated, it only needs to be associated with a new data source module to switch the data source, thereby meeting the situation of changing data sources.
[0122] For example, Figure 5 As shown, there are 4 display windows for displaying device alarms in the view table. These display windows are managed by the refresh module. These display windows all correspond to the same proxy module. The proxy module can be associated with a specific data source module through dependency injection. Different alarm data are stored in the data source module. When switching the alarm data to be displayed, you only need to control the proxy module to switch to a new data source module to meet the situation of changing data sources.
[0123] As an optional embodiment, the update data includes 2D data and 3D data.
[0124] In a specific implementation, the 2D data includes tables and pictures, for example Figure 3 As shown, in Figure 3 There are 12 pictures in the upper left corner of the 6*2, and Figure 3Table on the right; 3D data includes 3D models, e.g. Figure 3 The 3D model in the middle.
[0125] In the specific implementation process, in step S103, in addition to the traditional 2D graphical display method, there is also a 3D physical display. The terminal device can synchronously control the refresh of the 2D UI (2 Dimensional User Interface) and the linkage of the 3D entity model based on the 2D data and 3D data in the updated data to improve the data visualization display effect.
[0126] As an optional embodiment, step S103 includes:
[0127] Batch render objects of the same material in the 3D data; and / or merge multiple images in the 2D data into one image for rendering; and / or cut out objects outside the field of view in the 3D data.
[0128] In the specific implementation process, when executing step S103, some measures may be taken to reduce the resource consumption caused by rendering. For example, the rendering of objects of the same material may be batched to reduce the number of Draw Calls (the operation in which the CPU calls the graphics programming interface to command the GPU to render), thereby reducing the CPU consumption caused by the CPU frequently calling the GPU to set the rendering state; or, multiple small images may be merged into a large atlas to reduce memory consumption; or, objects outside the field of view in the target data may be cut off, and the cut off parts may not be rendered to avoid GPU consumption caused by additional rendering.
[0129] For example, Figure 3 As shown, there are 12 pictures (6*2) in the upper left corner. These 12 pictures can be merged into a large picture for rendering.
[0130] For example, Figure 6 As shown in the figure, for merging multiple small images into a large atlas, a small image size of 100*100 will allocate the nearest power of 2 size, i.e. 128*128, in memory. Then, ten small images will allocate 10*128*128=163840 spaces, with an additional loss of 63840. If they are merged into a large atlas of 500*200, then only 512*256=131072 spaces will be allocated, with an additional loss of 31072. It can be seen that 32768 spaces are saved.
[0131] In contrast, Figure 7As shown, in the prior art, a small image size of 100*100 will be allocated in the memory with the size of the nearest power of 2, that is, 128*128. Then, 10 images will be allocated with 10*128*128=163840 spaces, with an additional loss of 63840. If they are combined into a large atlas of 500*200, then only 512*256=131072 spaces need to be allocated, with an additional loss of 31072. It can be seen that in this embodiment, Figure 6 The method shown saves 32768 spaces. As an optional embodiment, step S103 includes:
[0132] When creating a 3D model, a mesh is created and assigned to a 2D object, the mesh corresponding to the shape of a specified display area of the interactive interface; 2D data is extracted from the update data; the 2D object is associated with the 2D data; and the specified display area is rendered based on the 2D data.
[0133] The 2D objects include video objects, picture objects and table objects.
[0134] Specifically, you can create a mesh that corresponds to the shape of the specified display area, and then assign the mesh to the video object. The video object is associated with a table rendering component (Mesh Render), the table rendering component (Mesh Render) is associated with a material module (Materail), and the material module (Materail) is associated with the target 2D data (Texture2D), that is, the video object (video gameobject) is finally associated with a 2D data (Texture2D). When the video is playing, the 2D data (Texture2D) of the video object (video gameobject) will be continuously updated based on the 2D data resources of each frame, realizing the linkage update of 2D data and 3D data, that is, achieving the video fusion effect.
[0135] For example, when rendering, the 2D image can be displayed in the 3D scene in a video fusion manner based on the 2D data in the update data. Figure 4 As shown, in Figure 4 The middle part of the image has a 2D object of a person (associated with a 2D data), and the other parts are 3D models. Through the above method, the 2D object of the person can be merged with the 3D model. In addition, the 2D data associated with the 2D object is updated, realizing the linkage update of 2D data and 3D data.
[0136] Here, in step S103, when rendering the interactive interface based on the updated data, the refresh of the 2D UI and the linkage of the 3D entity model can be synchronously controlled based on the 2D data and 3D data in the updated data, thereby improving the data visualization display effect, improving the timeliness of information acquisition, and improving the speed of event processing.
[0137] In the specific implementation process, in step S103, when rendering, 3D modeling technology can be used, combined with CAD (Computer Aided Design) vector data and GIS (Geographic Information System) information, to truly restore the building data in the park (for example: buildings, park roads, conference rooms, parking lots, office areas, exhibition halls) and spatial position relationships, etc. Use a 3D engine for real-time rendering, provide a variety of interactive methods (for example: mouse and keyboard, touch, gesture control), and provide users with a free interactive experience in three-dimensional space, so that users can view the park situation from a bird's eye view, and can also easily locate the area of interest for micro analysis.
[0138] During the specific implementation process, the terminal device can present the rendered effect image on various media such as the Windows large screen, Android mobile terminal, or Web page, so that users can view it anytime and anywhere.
[0139] In the specific implementation process, the user's input operations can be collected and processed accordingly. The user's input operations include but are not limited to mouse and keyboard input, touch input, gesture control input, etc.
[0140] For example, in the conference room interface, when the user clicks on a flashing conference room area in the three-dimensional scene, the terminal device will jump and display the specific conference room model, and the user can intuitively view the equipment configuration and layout of the conference room; in the parking lot interface, the user can select a parking space on the client, and the terminal device will quickly plan the most convenient route to reach it; and so on.
[0141] Below is an actual business scenario.
[0142] First, the server is started and the Broker node of the message queue MQ is created for the collection and transfer of messages.
[0143] Various smart devices will connect to the Broker node of MQ to report monitoring data, such as {topic="WarningTip", eventTypeId="0", deviceId="0x1101}.
[0144] After the terminal device is started, the message receiving unit of the distribution unit will connect to the Broker node of MQ and subscribe to the corresponding topic ({topic="WarningTip"}).
[0145] At this time, if a smart device finds that the air conditioning system is faulty, the smart device will report the alarm information (carrying relevant information such as {topic="WarningTip", eventTypeId="0, deviceId="0x1101}) to the Broker node of the server's message queue MQ. After the Broker receives the message, it will broadcast it to the terminal devices that have subscribed to the topic.
[0146] Furthermore, the message receiving unit of the distribution unit receives the real-time alarm information, and the message is placed in the message buffer and queued for processing. The message at the front of the queue is taken out from the message buffer for processing. At this time, the alarm information flows to the message classification unit, which matches the eventTypeId attribute carried by the data with the local business rules. If it is found that the information belongs to the equipment abnormality alarm type and belongs to the park space business processing unit, the data of the park space is reorganized, and {themeType = SmartPark.IntelligentProperty, warningType = "deviceWarning"} is added and pushed to the park space business processing unit.
[0147] The MVC of the campus space business processing unit includes IntelligentPropertyView (i.e., view module), IntelligentPropertyModel (i.e., data module), and IntelligentPropertyCommand (i.e., control module). IntelligentPropertyCommand receives message data sent by the distribution unit and transfers it to the IntelligentPropertyModel. After caching the data, IntelligentPropertyModel splits out business data such as warningType="deviceWarning", deviceId="0x1101", and transfers it to the IntelligentPropertyView module. The IntelligentPropertyView module contains multiple display window refresh modules, such as the display window refresh module corresponding to the alarm information panel, the display window refresh module corresponding to the 3D alarm point, and so on.
[0148] The display window refresh module corresponding to the alarm information panel mainly includes WarningInfoMgr (i.e., refresh module), WarningInfoItem (i.e., display window module), WarningInfoDataFactory (i.e., data source module), etc. The IntelligentPropertyView module passes the received message data to WarningInfoMgr, WarningInfoMgr parses the alarm type, sets the http restful interface address through the proxy (proxy module), and passes it to WarningInfoDataFactory to obtain more detailed information List of the alarm data. <warninginfodata>Then, it calls back to WarningInfoMgr through delegation, triggers the RefreshListData logic, and pushes each WarningInfoData to a specific WarningInfoItem for assignment. Finally, the panel information is updated, such as Figure 5 As shown, in Figure 5 In the figure, the garbage overflow warning interface is shown on the right.
[0149] The 3D warning point display window refresh module mainly includes Warning3DMgr (i.e. refresh module), Warning3DItem (i.e. display window module), Warning3DDataFactory (i.e. data source module), etc. The IntelligentPropertyView module passes the received message data to Warning3DMgr, Warning3DMgr parses the warning type, sets the http interface address through the proxy (proxy module), and passes it to Warning3DDataFactory to obtain more detailed information List of the warning data. <warning3ddata>, and then call back to Warning3DMgr through delegation, triggering the RefreshListData logic to generate multiple 3D warning point objects of this type at the corresponding position.
[0150] Each 3D warning point object can be clicked, and the monitoring screen information carried in Warning3DData is used to display the monitoring screen in the 3D scene in the form of video fusion. The specific method of video fusion has been introduced in the previous article and will not be repeated here.
[0151] Based on the same inventive concept, this embodiment provides a terminal device 800, such as Figure 8 As shown, the terminal device 800 can be a mobile phone, a computer, a digital broadcast terminal, a messaging device, a game console, a tablet device, a medical device, a fitness device, a personal digital assistant, etc.
[0152] Reference Fig. 9 The terminal device 800 may include one or more of the following components: a processing component 802 , a memory 804 , a power component 806 , a multimedia component 808 , an audio component 810 , an input / output (I / O) interface 812 , a sensor component 814 , and a communication component 816 .
[0153] The processing component 802 generally controls the overall operation of the terminal device 800, such as operations associated with display, phone calls, data communications, camera operations, and recording operations. The processing component 802 may include one or more processors 820 to execute instructions to complete all or part of the steps of the above-mentioned method. In addition, the processing component 802 may include one or more modules to facilitate the interaction between the processing component 802 and other components. For example, the processing component 802 may include a multimedia module to facilitate the interaction between the multimedia component 808 and the processing component 802.
[0154] The memory 804 is configured to store various types of data to support operations on the device 800. Examples of such data include instructions for any application or method operating on the terminal device 800, contact data, phone book data, messages, pictures, videos, etc. The memory 804 can be implemented by any type of volatile or non-volatile storage device or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic memory, flash memory, magnetic disk or optical disk.
[0155] The power component 806 provides power to various components of the terminal device 800. The power component 806 may include a power management system, one or more power supplies, and other components associated with generating, managing, and distributing power to the terminal device 800.
[0156] The multimedia component 808 includes a screen that provides an output interface between the terminal device 800 and the user. In some embodiments, the screen may include a liquid crystal display (LCD) and a touch panel (TP). If the screen includes a touch panel, the screen may be implemented as a touch screen to receive input signals from the user. The touch panel includes one or more touch sensors to sense touch, slide, and gestures on the touch panel. The touch sensor may not only sense the boundaries of the touch or slide action, but also detect the duration and pressure associated with the touch or slide operation. In some embodiments, the multimedia component 808 includes a front camera and / or a rear camera. When the device 800 is in an operating mode, such as a shooting mode or a video mode, the front camera and / or the rear camera may receive external multimedia data. Each front camera and rear camera may be a fixed optical lens system or have a focal length and optical zoom capability.
[0157] The audio component 810 is configured to output and / or input audio signals. For example, the audio component 810 includes a microphone (MIC), and when the terminal device 800 is in an operating mode, such as a call mode, a recording mode, and a speech recognition mode, the microphone is configured to receive an external audio signal. The received audio signal can be further stored in the memory 804 or sent via the communication component 816. In some embodiments, the audio component 810 also includes a speaker for outputting audio signals.
[0158] I / O interface 812 provides an interface between processing component 802 and peripheral interface modules, such as keyboards, click wheels, buttons, etc. These buttons may include but are not limited to: a home button, a volume button, a start button, and a lock button.
[0159] The sensor assembly 814 includes one or more sensors for providing various aspects of status assessment for the terminal device 800. For example, the sensor assembly 814 can detect the open / closed state of the device 800, the relative positioning of the components, such as the display and keypad of the terminal device 800, and the sensor assembly 814 can also detect the position change of the terminal device 800 or a component of the terminal device 800, the presence or absence of contact between the user and the terminal device 800, the orientation or acceleration / deceleration of the terminal device 800, and the temperature change of the terminal device 800. The sensor assembly 814 may include a proximity sensor configured to detect the presence of nearby objects without any physical contact. The sensor assembly 814 may also include an optical sensor, such as a CMOS or CCD image sensor, for use in imaging applications. In some embodiments, the sensor assembly 814 may also include an acceleration sensor, a gyroscope sensor, a magnetic sensor, a pressure sensor, or a temperature sensor.
[0160] The communication component 816 is configured to facilitate the communication between the terminal device 800 and other devices in a wired or wireless manner. The terminal device 800 can access a wireless network based on a communication standard, such as WiFi, 2G or 3G, or a combination thereof. In an exemplary embodiment, the communication component 816 receives a broadcast signal or broadcast-related information from an external broadcast management system via a broadcast channel. In an exemplary embodiment, the communication component 816 also includes a near field communication (NFC) module to facilitate short-range communication. For example, the NFC module can be implemented based on radio frequency identification (RFID) technology, infrared data association (IrDA) technology, ultra-wideband (UWB) technology, Bluetooth (BT) technology and other technologies.
[0161] In an exemplary embodiment, the terminal device 800 can be implemented by one or more application-specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field programmable gate arrays (FPGAs), controllers, microcontrollers, microprocessors or other electronic components to perform one of the above-mentioned data visualization methods.
[0162] In an exemplary embodiment, a non-transitory computer-readable storage medium including instructions is also provided, such as a memory 804 including instructions, and the instructions can be executed by a processor 820 of a terminal device 800 to complete the above method. For example, the non-transitory computer-readable storage medium can be a ROM, a random access memory (RAM), a CD-ROM, a magnetic tape, a floppy disk, an optical data storage device, etc.
[0163] A non-temporary computer-readable storage medium, when the instructions in the storage medium are executed by the processor of a terminal device 800, enables the terminal device 800 to execute a data visualization method, including: receiving business data, and classifying the business data based on different business types to obtain multiple groups of target data of different business types; processing at least one group of target data of the multiple groups of target data of different business types to obtain updated data of an interactive interface; rendering the interactive interface based on the updated data to achieve content update of the interactive interface.
[0164] Although the preferred embodiments of the present invention have been described, those skilled in the art may make other changes and modifications to these embodiments once they have learned the basic creative concept. Therefore, the appended claims are intended to be interpreted as including the preferred embodiments and all changes and modifications that fall within the scope of the present invention.
[0165] Obviously, those skilled in the art can make various changes and modifications to the present invention without departing from the spirit and scope of the present invention. Thus, if these modifications and variations of the present invention fall within the scope of the claims of the present invention and their equivalents, the present invention is also intended to include these modifications and variations. < / warninginfodata>
Claims
1. A data visualization method, characterized in that: include: Receiving business data, and classifying the business data based on different business types to obtain multiple groups of target data of different business types; The business data includes: business data related to places, business data related to people, and business data related to events; The receiving of the business data and classifying the business data based on different business types to obtain multiple groups of target data of different business types specifically includes: Receive multiple business data sent by the server, and store the multiple business data in a message buffer; obtain each business data from the message buffer in turn, and classify each business data to obtain multiple groups of target data of different business types, and push them to different business processing units; Processing at least one set of target data among the multiple sets of target data of different business types to obtain update data of the interactive interface; the update data includes 2D data and 3D data; Rendering the interactive interface based on the updated data to update the content of the interactive interface; The rendering of the interactive interface based on the updated data includes: Batch rendering objects of the same material in the 3D data; and / or Merging multiple images in the 2D data into one image and rendering it; and / or Cutting out objects outside the field of view in the 3D data; When constructing a 3D model, creating a mesh and assigning the mesh to a 2D object, the mesh corresponding to the shape of a designated display area of the interactive interface; extracting the 2D data from the update data; Associating the 2D object with the 2D data; The designated display area is rendered based on the 2D data.
2. The method according to claim 1, characterized in that The processing of at least one set of target data among the multiple sets of target data of different business types to obtain update data of the interactive interface includes: Controlling the display window refresh module to process the at least one set of target data to obtain the updated data; Wherein, the display window refresh module includes: A data source module, used for receiving the target data; A display window module, corresponding to the display window of the interactive interface; An agent module, used for connecting to the data source module; A refresh module is used to generate corresponding update data according to the target data, assign the update data to the display window module, and control the display window module to refresh.
3. The method according to claim 2, characterized in that The control display window refresh module processes the at least one set of target data to obtain the update data, including: Controlling the data source module to receive the target data; Controlling the proxy module to connect to the data source module; The refresh module is controlled to generate corresponding update data according to the target data, the update data is assigned to the display window module, and the display window module is refreshed.
4. The method according to claim 1, characterized in that The receiving of the business data and classifying the business data based on different business types to obtain multiple groups of target data of different business types include: Receiving a plurality of pieces of the business data, and storing the plurality of pieces of the business data in a message buffer; Each piece of the business data is sequentially acquired from the message buffer, and each piece of the business data is classified to obtain multiple groups of target data of different business types.
5. The method according to any one of claims 1 to 4, characterized in that: The target data of different business types include one or more of the following target data: Target data corresponding to different places; Target data corresponding to different characters; Target data corresponding to different events.
6. A terminal device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that: When the processor executes the program, the method steps described in any one of claims 1 to 5 can be implemented.
7. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the program is executed by a processor, the method steps described in any one of claims 1 to 5 can be implemented.
8. A data visualization system, characterized in that: include: Smart devices for obtaining monitoring data; A server, configured to receive the monitoring data and generate business data based on the monitoring data; The terminal device as claimed in claim 6.
Citation Information
Patent Citations
Smart park management system
CN111667237A
System and method for user interface in dashboard software
US20150186473A1