A flow field visualization method and system based on declarative language

Through the flow field visualization method of declarative language, the initial object is constructed and operational processing is performed, which solves the complexity of use for non-professional users, realizes efficient and convenient flow field visualization, expands the applicable population and improves the visualization quality.

CN114610928BActive Publication Date: 2025-09-19SUN YAT SEN UNIV
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202210240371.1
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-03-10
Publication Date
2025-09-19
Estimated Expiration
2042-03-10

AI Technical Summary

Technical Problem

The existing interactive flow field visualization system is complex to use for non-programming professional users, has high learning costs, cumbersome operations, is difficult to expand the applicable population, and the traditional interaction method is not user-friendly.

Method used

A flow field visualization method based on a declarative language is adopted. The initial object is constructed by acquiring the interactive system data set, and the object processing is performed in response to operation instructions, including filtering, generation, combination, mapping and expansion. Finally, particle seeding processing is performed to realize flow field visualization.

Benefits of technology

It lowers the threshold for using the flow field visualization system, expands the applicable population, and improves visualization quality and operational efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114610928B_ABST
    Figure CN114610928B_ABST
Patent Text Reader

Abstract

The present invention discloses a flow field visualization method and system based on a declarative language, the method comprising: obtaining a data set of an interactive system, and constructing an initial object according to data attributes; in response to an operation instruction, selecting a generation method and processing the initial object and a custom object separately to obtain a derived object; and performing particle seeding processing on the derived object to obtain a flow field visualization object. The system comprises: an initial module, a derived module, and a construction module. By using the present invention, the use threshold of the flow field visualization interactive system can be lowered, and the visualization quality of the flow field can be improved while expanding the applicable population. As a flow field visualization method and system based on a declarative language, the present invention can be widely used in the field of image visualization technology.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of image visualization, and in particular to a flow field visualization method and system based on a declarative language. Background Art

[0002] Data visualization allows people to intuitively and quickly understand patterns and regularities in the data. Interactive visualization builds on this by providing user interaction, enabling users to interactively change the visualization presentation and explore and analyze the data. Flow field visualization is essentially a tool that uses rendered images to answer questions from domain experts about flow fields. Static flow field visualization methods require users to pose questions to visualization experts, who then develop specific techniques to extract and visualize the streamline structures of interest. However, in practice, using interactive visualization analysis interfaces may require users to spend additional time learning the interactive system, which often hinders user experience and limits its application in real-world scenarios. Furthermore, systems that only support traditional keyboard or mouse operation of components make visualization cumbersome for users. Although these interactive visualization tools strive to strike a balance between ease of use and the diversity of supported functions, the complex technical concepts and editing operations of the systems are not user-friendly for non-programming professionals. Summary of the Invention

[0003] In order to solve the above technical problems, the purpose of the present invention is to provide a flow field visualization method and system based on a declarative language, which can expand the applicable population while improving the visualization quality of the flow field.

[0004] The first technical solution adopted by the present invention is: a flow field visualization method based on a declarative language, comprising the following steps:

[0005] Obtain the dataset of the interactive system and construct the initial object based on the data attributes;

[0006] In response to the operation instruction, a generation method is selected and the initial object and the custom object are processed respectively to obtain a derived object;

[0007] The derived object is subjected to particle seeding processing to obtain a flow field visualization object.

[0008] Furthermore, the step of obtaining the data set of the interactive system and constructing the initial object according to the data attributes specifically includes:

[0009] Obtain the data set of the interactive system and obtain the original data;

[0010] Judging the scalar field of the original data according to the properties of the original data;

[0011] It is determined that the scalar field of the original data contains a vector field, and sampling processing is performed to obtain self-generated data;

[0012] Combine the original data and self-generated data to construct the initial object.

[0013] Furthermore, the step of selecting a generation method in response to the operation instruction and processing the initial object and the custom object respectively to obtain the derived object specifically includes:

[0014] Responding to an operation instruction, the operation instruction including filtering, generating, combining, mapping, and expanding;

[0015] Performing operations on the initial object to obtain a first derived object;

[0016] Perform operations between custom objects to obtain a second derived object;

[0017] The first derived object and the second derived object are extended to obtain a derived object.

[0018] Furthermore, the step of operating and processing the initial object to obtain the first derived object specifically includes:

[0019] Filtering the initial object based on the attributes of the initial object to obtain a filtered object;

[0020] Generate and process the initial object based on the index of the initial object to obtain a subset object;

[0021] The filter object and the subset object are combined to obtain a first derived object.

[0022] Furthermore, the step of performing operations on the custom objects to obtain the second derived object specifically includes:

[0023] Constructing a first custom object and a second custom object according to the input instruction data;

[0024] Determine the types of the first custom object and the second custom object;

[0025] Determining that the first custom object and the second custom object are of the same type, combining the first custom object and the second custom object to obtain a combined object;

[0026] Determining that the first custom object and the second custom object are of different types, mapping elements within the first custom object and the second custom object to obtain a mapping object;

[0027] The composite object and the mapped object are integrated to obtain a second derived object.

[0028] The second technical solution adopted by the present invention is: a flow field visualization system based on a declarative language, comprising:

[0029] The initial module is used to obtain the dataset of the interactive system and construct the initial object according to the data attributes;

[0030] A derivation module, configured to respond to an operation instruction, select a generation method, and process the initial object and the custom object respectively to obtain a derived object;

[0031] The building module is used to perform particle seeding processing on the derived object to obtain the flow field visualization object.

[0032] The beneficial effects of the method and system of the present invention are as follows: the present invention lowers the usage threshold of the flow field visualization interactive system by abstracting the instructions input by the user, and designs a set of operation instructions based on objects or single objects to realize efficient and convenient flow field visualization steps, which can expand the applicable population while improving the visualization quality of the flow field. BRIEF DESCRIPTION OF THE DRAWINGS

[0033] Figure 1 It is a flowchart of the steps of a flow field visualization method based on a declarative language of the present invention;

[0034] Figure 2 It is a structural block diagram of a flow field visualization system based on a declarative language according to the present invention;

[0035] Figure 3 The streamline object graph of the cyclic or spiral mode obtained by the intersection operation in the combination operation of the present invention;

[0036] Figure 4 The present invention is a spiral and cyclic structure streamline object graph obtained by using the union operation in the combination operation;

[0037] Figure 5 This is a flow field visualization diagram of “flow within China” obtained by using the in-situ instruction operation in the expansion operation of the present invention;

[0038] Figure 6 This is a flow field visualization diagram of "flow from China" obtained by the present invention using the right neighbor instruction operation in the expansion operation;

[0039] Figure 7 The present invention uses filtering operation to obtain an airflow object diagram of a spiral structure with a high flow speed on the earth. DETAILED DESCRIPTION

[0040] The present invention will be further described in detail below with reference to the accompanying drawings and specific embodiments. The step numbers in the following embodiments are provided for ease of description only and do not limit the order of the steps. The order of execution of the steps in the embodiments can be adaptively adjusted based on the understanding of those skilled in the art.

[0041] Reference Figure 1 The present invention provides a flow field visualization method based on a declarative language, which includes the following steps:

[0042] S1. Obtain the dataset of the interactive system and construct the initial object based on the data attributes;

[0043] S11. Obtain the data set of the interactive system to obtain the original data;

[0044] Specifically, the original data may include a flow field, multiple scalar fields, and features detected in the flow field, such as critical point features. The more common data sets in flow field scientific visualization include ECMWF, Crayfish, and 5CP.

[0045] S12. judging the scalar field of the original data according to the attributes of the original data;

[0046] S13, determining that the scalar field of the original data contains a vector field, performing sampling processing to obtain self-generated data;

[0047] Specifically, a data set in the field of flow field visualization may contain only several scalar fields, such as vorticity, or it may have a vector field based on the scalar field. When there is such a vector field in the data set, the original data is said to contain a flow field. When the original data contains a flow field, the system will sample a series of streamlines of the original data to provide the corresponding Lagrangian view of the original data and obtain self-generated data.

[0048] S14. Combine the original data and the self-generated data to construct the initial object.

[0049] S2. In response to the operation instruction, select a generation method and process the initial object and the custom object respectively to obtain a derived object;

[0050] S21. Responding to an operation instruction, wherein the operation instruction includes filtering, generating, combining, mapping, and expanding;

[0051] S22, operating and processing the initial object to obtain a first derived object;

[0052] S221, filtering the initial object based on the attributes of the initial object to obtain a filtered object;

[0053] S222: Generate the initial object based on its index to obtain a subset object.

[0054] Specifically, refer to Figure 7 , shows that the user uses filtering and generating operations to obtain the spiral structure of airflow with high flow velocity on the earth: the user first specifies to filter the velocity magnitude of the initial object "grid" with a filtering condition of 90%. The first derived object "high velocity magnitude" will be the element with the velocity magnitude value in the initial object "grid" in the top 10%. Then, the user uses Figure 3 The second derived object "spiral flow" generated in the example is intersected with the first derived object "high velocity magnitude" to obtain a streamline that is both a spiral structure and has a high flow rate, and is visualized using the visualize command. Since the user did not specify the color of the visualization in this command, the system randomly selected a streamline segment for visualization. From the results, it can be seen that in the Atlantic region where hurricanes frequently occur, airflows with multiple spiral structures with high wind speeds are generated by continuing to filter the initial object to obtain a filtered object. For example, a filtered saddle point object is obtained by filtering by selecting a saddle point type among all critical points, while a generated object is generated by specifying a subset of the initial object elements. This type is different from a filtered object because it does not require the specified elements to share any attributes, but can simply specify a subset of elements through a set of indices, an index range, or a Boolean mask of all elements. In the present invention, a streamline represents a generated object, and a streamline or streamline segment is represented by the start and end indexes of the streamline sampling point, and a flag is used to represent the connection between adjacent points.

[0055] S223: Integrate the filter object and the subset object to obtain a first derived object.

[0056] S23, performing operations on the custom objects to obtain a second derived object;

[0057] S231: Construct a first custom object and a second custom object according to the input instruction data;

[0058] Specifically, custom objects are constructed based on user input instructions, including certain areas of interest to the user, such as the Gulf of Mexico, or definitions of some scientific phenomena, such as hurricanes.

[0059] S232: Determine the types of the first user-defined object and the second user-defined object.

[0060] S233: Determine that the first custom object and the second custom object are of the same type, and combine the first custom object and the second custom object to obtain a combined object;

[0061] Specifically, refer to Figure 3 and Figure 4 The combination operation includes intersection operation processing and union operation processing, Figure 3 In , the user first obtains the derived object "circulation flow" by performing an intersection operation on the initial object "flow" and the derived object "circulation" in the initial object "flow pattern", and then uses the same syntax statement to obtain the derived object "spiral flow". Next, the user obtains the derived object "circulation flow or spiral flow" by performing a union operation on the derived object "circulation flow" and the derived object "spiral flow". This derived object refers to a streamline with a spiral structure or a circulatory structure. Finally, the user uses the visualize command to visualize the derived object in red. Figure 4 In the example, after viewing the streamlines with spiral or cyclic structures, the user wants to see the streamlines with both spiral and cyclic structures. Therefore, the user first uses the hide command to hide the streamlines. Figure 3 The derived object "circulation flow or spiral flow" visualized in the example is hidden. The user then intersects the derived object "circulation flow" with the derived object "spiral flow" to obtain the derived object "circulation flow and spiral flow". The user then uses the visualize command to visualize the derived object in red. Figure 3 and Figure 4 From the visualization results, we can see that the same two objects will get different results through different set operations.

[0062] S234: Determine that the first custom object and the second custom object are of different types, and map the elements in the first custom object and the second custom object to obtain a mapping object;

[0063] Specifically, when the first and second custom objects are of different types, the system will perform a mapping operation, mapping elements of the second object to elements of the first object. For example, if the user wants to find the intersection of a wet area and a spiral streamline, the system will first segment the spiral streamline into grid points and then calculate the intersection at those grid points. However, if the user wants to find the intersection of the spiral streamline and the wet area, the system will first calculate all streamline sampling points within the wet area and intersect them with the spiral streamline.

[0064] S235: Integrate the combined object and the mapped object to obtain a second derived object.

[0065] S24: Perform expansion processing on the first derived object and the second derived object to obtain a derived object.

[0066] Specifically, refer to Figure 5 and Figure 6 , the expansion operation includes an in-place operation and a right neighbor operation. The expansion operation can expand the spatial coverage of the object to provide more contextual information of the corresponding object. For grid points, the expansion operation includes the neighborhood of the current grid point, which is similar to the expansion in image processing. For spatial regions, the expansion operation increases the radius of each circular region. For streamline segments, the expansion operation will expand the streamline segments along the streamline. In addition, since the sampling points on the streamline are ordered, the present invention further introduces in-place operations and right neighbor operations to expand the line segments on the streamline, that is, it supports the expansion of the line segments along the flow direction and the opposite direction of the flow direction, respectively. Figure 5 In the example, the user performs an intersection operation on the initial object "flow" and the derived object "China" in the initial object "geographic region" to obtain the derived object "flow in china". Then, through the visualize command, the derived object "flow in china" is visualized using streamlines to obtain all airflows in China. Figure 6In the example, the user performs the right neighbor operation (from) on the derived object "flow in china" to obtain the derived object "flow from china", and also uses the visualize command to visualize the derived object "flow from china" using streamlines.

[0067] S3. Perform particle seeding processing on the derived object to obtain a flow field visualization object.

[0068] Specifically, once a dataset is available, particles can be scattered across a grid. When particles land on corresponding grid points, they are affected by the information at those points, such as speed or direction. By tracing the particle's trajectory, streamlines are generated. Clusters of streamlines form a flow field, which is visualized using low-level C++ programming. The underlying logic is as described above: by scattering particles across a grid and tracing the particle's trajectory, streamlines are generated. Clusters of streamlines form a flow field. The process from instruction set to flow field visualization involves the user inputting an instruction set that conforms to our syntax. The system parses the syntax, determines which operations should be performed on the data, and which streamlines the user wishes to display, and then renders a visualization. Within a dataset, a grid can have multiple attributes. For example, a grid in a dataset on air pollution concentration might have an attribute for PM2.5 concentration, while a grid in a dataset on meteorology might have an attribute for humidity. For example, consider a dataset of air pollution concentrations. A grid has an attribute, PM2.5 concentration. A user wishes to visualize streamlines flowing from polluted areas with PM2.5 concentrations greater than 75 to areas with lower concentrations. The underlying implementation involves scattering particles onto grid points with values ​​greater than 75. The trajectories of these particles are determined by the dataset; some may flow to higher concentrations, while others may spin in place. The system needs to visualize the trajectories of particles flowing to grid points with values ​​less than 75. Countless trajectories form a flow field visualization object. The syntax table designed by this invention is as follows:

[0069]

[0070]

[0071] Reference Figure 2 , a flow field visualization system based on a declarative language, including:

[0072] The initial module is used to obtain the dataset of the interactive system and construct the initial object according to the data attributes;

[0073] A derivation module, configured to respond to an operation instruction, select a generation method, and process the initial object and the custom object respectively to obtain a derived object;

[0074] The building module is used to perform particle seeding processing on the derived object to obtain the flow field visualization object.

[0075] The contents of the above method embodiments are all applicable to the present system embodiments. The functions specifically implemented by the present system embodiments are the same as those of the above method embodiments, and the beneficial effects achieved are also the same as those achieved by the above method embodiments.

[0076] The above is a specific description of the preferred implementation of the present invention, but the invention is not limited to the embodiments. Those skilled in the art can make various equivalent modifications or substitutions without violating the spirit of the present invention. These equivalent modifications or substitutions are all included in the scope defined by the claims of this application.

Claims

1. A flow field visualization method based on a declarative language, characterized in that: The following steps are involved: Obtain the dataset of the interactive system and construct the initial object based on the data attributes; In response to the operation instruction, a generation method is selected and the initial object and the custom object are processed respectively to obtain a derived object; Perform particle seeding processing on the derived object to obtain a flow field visualization object; The step of obtaining the data set of the interactive system and constructing the initial object according to the data attributes specifically includes: Obtain the data set of the interactive system and obtain the original data; Judging the scalar field of the original data according to the properties of the original data; It is determined that the scalar field of the original data contains a vector field, and sampling processing is performed to obtain self-generated data; Combine original data and self-generated data to construct the initial object; The step of selecting a generation method in response to the operation instruction and processing the initial object and the custom object respectively to obtain the derived object specifically includes: Responding to an operation instruction, the operation instruction including filtering, generating, combining, mapping, and expanding; Performing operations on the initial object to obtain a first derived object; Perform operations between custom objects to obtain a second derived object; The first derived object and the second derived object are extended to obtain a derived object.

2. The flow field visualization method based on a declarative language according to claim 1, characterized in that: The step of operating and processing the initial object to obtain the first derived object specifically includes: Filtering the initial object based on the attributes of the initial object to obtain a filtered object; Generate and process the initial object based on the index of the initial object to obtain a subset object; The filter object and the subset object are combined to obtain a first derived object.

3. The flow field visualization method based on a declarative language according to claim 2, characterized in that: The step of performing operations on the custom objects to obtain the second derived object specifically includes: Constructing a first custom object and a second custom object according to the input instruction data; Determine the types of the first custom object and the second custom object; Determining that the first custom object and the second custom object are of the same type, combining the first custom object and the second custom object to obtain a combined object; Determining that the first custom object and the second custom object are of different types, mapping elements within the first custom object and the second custom object to obtain a mapping object; The composite object and the mapped object are integrated to obtain a second derived object.

4. A flow field visualization system based on a declarative language, characterized by: Used to execute the flow field visualization method based on a declarative language as claimed in claim 1, comprising the following modules: The initial module is used to obtain the dataset of the interactive system and construct the initial object according to the data attributes; A derivation module, configured to respond to an operation instruction, select a generation method, and process the initial object and the custom object respectively to obtain a derived object; The building module is used to perform particle seeding processing on the derived object to obtain the flow field visualization object.

Citation Information

Patent Citations

  • Information processing device, information processing system and method

    CN101231644A

  • Ocean flow field visualization method based on unstructured grid under Cesium engine

    CN113177372A