Generating animated information maps from static information maps
By automatically identifying and applying dynamic effects, the problem of low efficiency in the design of animated infographics is solved, and efficient generation of animated infographics is achieved.
Patent Information
- Application Number
- CN202510737375.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2020-06-30
- Publication Date
- 2025-09-19
AI Technical Summary
Designing animated infographics requires a lot of creativity and time. Existing tools and libraries are difficult to generate animated infographics efficiently, resulting in inefficiency.
By extracting the visual elements of static infographics, identifying their structure and layout, and automatically applying dynamic effects based on these elements, animated infographics are generated.
It simplifies the design process of animated infographics, improves generation efficiency, and reduces manual creation time.
Smart Images

Figure CN120672914A_ABST
Abstract
Description
[0001] Related applications
[0002] This application is a divisional application of the invention patent application with application number 202010622542.8, invention name “Generating animated infographics from static infographics”, and application date June 30, 2020. Background Art
[0003] Animated infographics present ideas in a logical and easily digestible format, offering numerous advantages such as rich content, aesthetics, and vividness. However, designing an animated infographic involves a variety of creative approaches and requires significant effort. Creating a beautiful animated infographic requires controlling the movement of numerous visual elements. For example, designers often use general-purpose video creation tools or visualization and animation libraries. Completing an animated infographic lasting just a few seconds can take hours, days, or even weeks. Summary of the Invention
[0004] According to various implementations of the present disclosure, a method for generating an animated infographic from a static infographic is provided. A computer-implemented method includes extracting visual elements from the static infographic; determining a structure of the static infographic based on the visual elements, the structure indicating at least a layout of the visual elements within the static infographic; and applying dynamic effects to the visual elements based on the structure of the static infographic to generate the animated infographic.
[0005] This summary is provided to introduce a selection of concepts in a simplified form that are further described below in the detailed description. It is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to limit the scope of the claimed subject matter. BRIEF DESCRIPTION OF THE DRAWINGS
[0006] Figure 1 A block diagram illustrating a computing device capable of implementing various implementations of the present disclosure is shown;
[0007] Figure 2 A schematic diagram illustrating the architecture of a conversion module according to some implementations of the present disclosure;
[0008] Figure 3-Figure 10 A schematic diagram illustrating a structure for extracting a static information graph according to some implementations of the present disclosure is shown;
[0009] Figure 11-13 A schematic diagram illustrating an animation sequence according to some implementations of the present disclosure;
[0010] Figure 14-16 A schematic diagram illustrating a time arrangement according to some implementations of the present disclosure; and
[0011] Figure 17 A flowchart illustrating a conversion method according to some implementations of the present disclosure is shown.
[0012] In these drawings, the same or similar reference symbols are used to designate the same or similar elements. DETAILED DESCRIPTION
[0013] The present disclosure will now be discussed with reference to several example implementations. It should be understood that these implementations are discussed only to enable those skilled in the art to better understand and thus implement the present disclosure, and do not imply any limitation on the scope of the subject matter.
[0014] As used herein, the term "including" and its variations are to be interpreted as open-ended terms meaning "including but not limited to." The term "based on" is to be interpreted as "based, at least in part, on." The terms "an implementation" and "an implementation" are to be interpreted as "at least one implementation." The term "another implementation" is to be interpreted as "at least one other implementation." The terms "first," "second," and so on may refer to different or the same objects. Other explicit and implicit definitions may also be included below.
[0015] The basic principles and several example implementations of the present disclosure are explained below with reference to the accompanying drawings. Figure 1 FIG1 shows a block diagram of a computing device 100 capable of implementing various implementations of the present disclosure. It should be understood that Figure 1 The computing device 100 shown is merely exemplary and should not be construed as limiting the functionality and scope of the implementations described herein. Figure 1 As shown, computing device 100 comprises a computing device in the form of a general-purpose computing device 100. Components of computing device 100 may include, but are not limited to, one or more processors or processing units 110, memory 120, storage device 130, one or more communication units 140, one or more input devices 150, and one or more output devices 160.
[0016] In some implementations, the computing device 100 can be implemented as various user terminals or service terminals with computing capabilities. The service terminal can be a server, a large computing device, etc. provided by various service providers. The user terminal is such as a mobile terminal, a fixed terminal, or a portable terminal of any type, including a mobile phone, a site, a unit, a device, a multimedia computer, a multimedia tablet, an Internet node, a communicator, a desktop computer, a laptop computer, a notebook computer, a netbook computer, a tablet computer, a personal communication system (PCS) device, a personal navigation device, a personal digital assistant (PDA), an audio / video player, a digital camera / camcorder, a positioning device, a television receiver, a radio broadcast receiver, an e-book device, a gaming device, or any combination thereof, including accessories and peripherals of these devices, or any combination thereof. It is also foreseeable that the computing device 100 can support any type of interface for the user (such as a "wearable" circuit, etc.).
[0017] Processing unit 110 may be a real or virtual processor and is capable of performing various processes according to a program stored in memory 120. In a multi-processor system, multiple processing units execute computer-executable instructions in parallel to increase the parallel processing capabilities of computing device 100. Processing unit 110 may also be referred to as a central processing unit (CPU), a microprocessor, a controller, or a microcontroller.
[0018] The computing device 100 typically includes a plurality of computer storage media. Such media can be any available media accessible to the computing device 100, including but not limited to volatile and non-volatile media, removable and non-removable media. The memory 120 can be a volatile memory (e.g., registers, cache, random access memory (RAM)), a non-volatile memory (e.g., read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory), or some combination thereof. The memory 120 can include a conversion module 122, which are program modules configured to perform the functions of the various implementations described herein. The conversion module 122 can be accessed and executed by the processing unit 110 to implement the corresponding functions.
[0019] Storage device 130 may be removable or non-removable media and may include machine-readable media that can be used to store information and / or data and can be accessed within computing device 100. Computing device 100 may further include additional removable / non-removable, volatile / non-volatile storage media. Although not described in Figure 1 As shown in FIG, a magnetic disk drive for reading or writing from a removable, nonvolatile magnetic disk and an optical disk drive for reading or writing from a removable, nonvolatile optical disk can be provided. In these cases, each drive can be connected to a bus (not shown) by one or more data media interfaces.
[0020] The communication unit 140 enables communication with other computing devices via a communication medium. Additionally, the functionality of the components of the computing device 100 can be implemented as a single computing cluster or multiple computing machines that can communicate via a communication connection. Thus, the computing device 100 can operate in a networked environment using logical connections to one or more other servers, personal computers (PCs), or other general network nodes.
[0021] Input device 150 may be one or more of various input devices, such as a mouse, keyboard, trackball, voice input device, etc. Output device 160 may be one or more output devices, such as a display, speaker, printer, etc. Computing device 100 may also communicate with one or more external devices (not shown) via communication unit 140 as needed, such as storage devices, display devices, etc., with one or more devices that allow a user to interact with computing device 100, or with any device that allows computing device 100 to communicate with one or more other computing devices (e.g., a network card, modem, etc.). Such communication may be performed via an input / output (I / O) interface (not shown).
[0022] In some implementations, in addition to being integrated on a single device, some or all of the various components of computing device 100 may also be configured in the form of a cloud computing architecture. In a cloud computing architecture, these components may be remotely located and may work together to implement the functionality described herein. In some implementations, cloud computing provides computing, software, data access, and storage services that do not require the end user to be aware of the physical location or configuration of the systems or hardware providing these services. In various implementations, cloud computing provides services over a wide area network (such as the Internet) using appropriate protocols. For example, a cloud computing provider provides applications over a wide area network, and these applications can be accessed through a web browser or any other computing component. The software or components of the cloud computing architecture and the corresponding data may be stored on servers at a remote location. Computing resources in a cloud computing environment may be consolidated at a remote data center location or they may be dispersed. Cloud computing infrastructure may provide services through a shared data center, even though they appear to be a single access point for users. Therefore, the components and functionality described herein may be provided by a service provider at a remote location using a cloud computing architecture. Alternatively, they may be provided from a conventional server, or they may be installed directly or otherwise on the client device.
[0023] The computing device 100 can be used to implement the scheme of generating dynamic information graphics from static information graphics according to multiple implementations of the present disclosure. The computing device 100 can receive input data, such as a static information graphic, through the input device 150. Optionally, the computing device 100 can also receive user operations on the static information graphic or information obtained from the static information graphic through the input device 150. The conversion module 122 can process the input data (e.g., the static information graphic) to obtain corresponding output data, such as an animated information graphic, etc. The output data can be provided to the output device 160 to be provided to the user as output 180.
[0024] Figure 2 Schematic diagram showing the structure of the conversion module 200 according to some implementations of the present disclosure. The conversion module 200 can be implemented in Figure 1 The conversion module 122 shown may also be implemented in any other suitable environment, for example, at least partially implemented in the cloud.
[0025] In the conversion module 200, a static information graph 202 is first obtained, wherein the static information graph can be in the form of a graphic design file, for example, a vector image format, such as svg, psd, ppt, etc. The static information graph 202 may include various visual elements, for example, text boxes, icons, shapes, etc. For the format of the vector image, the static information graph 202 can be parsed into visual elements (for example, text boxes, shapes, and icons, etc.) and their attributes (for example, position, color, and size, etc.) according to the metadata of the vector image (for example, tags, etc.). In one example, the structured data in the vector image can be converted into data representing the structure of the information graph, etc. For example, in an svg file, shape tags (for example, <rect> 、 <ellipse>) and general labels (e.g. <path>labels) into data representing different types of shapes and text.
[0026] Figure 3 A schematic diagram of a static information diagram 300 according to some implementations of the present disclosure is shown. The static information diagram 300 includes 6 repeating units 301-306, which display different mathematical symbols. For example, the repeating unit 301 includes a unit icon "=", a unit title "Etc.", a unit index "01", and a unit background with a slash. These repeating units have similar structures and are connected to the title "Mathematical Symbols" (global text box) through corresponding connectors. The visual elements in the static information diagram 300 include text boxes, shapes, and icons. For example, in the repeating unit 301, the unit icon "=" is an icon, the unit title "Etc." is a text box, the unit index "01" is a text box, and the unit background is a shape.
[0027] return Figure 2 , the information graph structure inference 204 infers the structure of the static information graph 202 based on the extracted visual elements, and the structure at least indicates the layout of the visual elements in the static information graph 202. In addition, the structure of the static information graph 202 may also include the role or function of the visual elements in the static information graph 202, such as title, body, decoration, etc. Figures 4-10 It introduces how to identify and infer the structure of the static information graph 202.
[0028] In some implementations, the structure of an infographic may include a layout of icons, shapes, and text, and most infographics contain repeating units with similar designs. In some infographics, repeating units are placed in specific locations to imply the relationship between these units. In other infographics, connectors are used to connect these units to indicate the relationship between these units. Some infographic designs contain indexes (such as numbers such as 1, 2, 3, etc.) to indicate the order of each unit, while many infographic designs do not contain indexes. Some infographics contain a title with the largest font in their repeating units, while other infographics contain multiple text boxes with the same font size in their repeating units. Therefore, there are many technical challenges in automatically identifying and inferring the structure of infographics.
[0029] In some implementations, a bottom-up approach is used to solve the above problem. For example, the structure of the infographic is identified from the perspective of atomic visual elements. For example, the approach starts by finding repeating (similar) elements that are used to build repeating units. These elements are then organized into repeating units, and the structure of the infographic is determined based on these units. Semantic and layout tags are then added to the infographic to complete the structural inference, thereby enabling flexible animation arrangements.
[0030] The visual elements in an infographic design form different components. For an infographic structured using repeating units, the first step is to identify the elements within the units. These units are often designed to have the same (or similar) elements and are repeated throughout the infographic to enhance the visual impact. This serves as an anchor for the repeating units.
[0031] In some infographics, the visual elements of repeated units are not exactly the same. For example, corresponding shapes may have the same size but different colors; corresponding text boxes may have different content and length but the same font. Identifying these visual elements requires considering different similarity metrics. In addition, the number of similar elements may be different from the number of units. For example, for an infographic containing 5 units, the infographic may contain a total of 10 circles, with each unit containing two circles; or, because the title text box uses the same font size and style as the unit text box, the title text box is considered similar to the unit text box, resulting in the number of identified similar elements being greater than the number of units.
[0032] In some implementations, the elements that are most likely to belong to a repeating unit can be determined first. For example, similar elements can be grouped, and the group with the highest number of elements can be determined. For example, given an element, all other elements in the information graph are searched to find elements similar to the element, or elements with a similarity greater than a threshold. If there are similar elements, the similar elements are grouped together. If there are no similar elements, the element is grouped into a new group. After all elements in the information graph are grouped, the process is stopped and the number of elements in each group is calculated, and the number of elements with the highest frequency of occurrence is used as the number of repeating units. In other words, for an information graph with n (n>2) units, the group with n elements has the highest probability of occurrence, that is, more visual elements with repeated designs are grouped into groups of size n; while the group with m elements (m>2, m≠n) has a lower frequency of occurrence, that is, fewer visual elements with repeated designs are grouped into groups of size m.
[0033] Figure 4 Schematic diagram of identified similar elements 400 according to some implementations of the present disclosure is shown. Figure 4 As shown, similar element 411 represents the corresponding element in the visualization elements 401-406. Figure 3 The shape of the outer contour of the corresponding visual elements 301-306 in the image is 6; the similar element 412 represents the shape of the outer contour of the corresponding visual elements 301-306 in the image. Figure 3 The number of elements of the text boxes of the corresponding visual elements 301-306 is 6; similar element 413 represents the text boxes of the corresponding visual elements 401-406. Figure 3 The number of elements of the icons in the corresponding visual elements 301-306 is 6; similar elements 414 represent the corresponding elements in the visual elements 401-406 Figure 3 The number of the indexed elements in the corresponding visual elements 301-306 is 6; similar element 415 represents the connectors in the visual elements 401-406, which are 6; similar element 416 represents the connection points in the visual elements 401-406, which are 12; similar element 417 represents the corresponding element in the visual element 407 Figure 3 The number of elements of the text box in the visual element 307 is 1; and similar elements 418 represent the elements in the visual element 407 corresponding to Figure 3 The number of circular elements in the visualization element 307 is 1. It can be seen that the number of elements in 5 groups is 6, the number of elements in 1 group is 12, and the number of elements in 2 groups is 2. Therefore, the number of the most frequent element is 6 (frequency is 5), and the number of repeating units is 6.
[0034] In some implementations, in order to identify similar elements, different strategies or different similarity metrics can be used for different element types. For example, static infographics typically contain three types of visual elements: shapes, text boxes, and icons. The height and width of the visual elements can be extracted. For shapes, their paths can be extracted, and the paths of the shapes can be further classified into basic shapes, such as circles, matrices, etc. The shape similarity between two visual elements can be measured by shape type, width and height, color, fill pattern, etc. For text boxes, the font of the text in the text box can be extracted. Because the text length of different cells may be different, the similarity of text boxes can be measured by the font and the width of the text box (if there are multiple lines of text). It should be understood that any other suitable similarity metric can also be used.
[0035] After extracting multiple groups of n similar visual elements, repeating units can be constructed from the similar elements. For example, the visual elements can be grouped into units based on a regularity principle. Generally speaking, elements are arranged in a regular manner between units, as designers typically avoid overlapping related elements and irregular spacing. In some implementations, repeating units can be constructed based on one or more of color scheme, similar layout, and element proximity.
[0036] For example, elements across different units can use the same or similar color schemes. Therefore, elements with similar colors or color schemes can be grouped into different units. These elements can then be used as anchors for these units to assign units to other elements that are not color-coded. Alternatively, elements within each unit can use the same or similar color schemes. Therefore, elements with similar colors or color schemes can be grouped into one unit, while elements with different color schemes can be grouped into different units.
[0037] In some examples, for each identified repeating element, the layout of the elements can be determined within a group of similar elements. If the layout is the same across different groups, cells can be constructed based on the coordinate position of each element. For example, if all elements are horizontal, the elements can be sorted based on their horizontal position and placed into cells one by one.
[0038] In some examples, repeating units can be constructed based on element proximity. For example, infographic designs without a standard layout often leverage proximity to enhance user perception—that is, elements within a unit are more likely to be placed close to each other. Therefore, repeating units can be constructed based on element proximity. For example, starting with a group of similar elements, add elements to that unit by searching for the closest elements in other groups.
[0039] In some implementations, an anchor point for a repeating unit in a visualization element can be determined. Starting from the anchor point, visualization elements whose similarity to the anchor point exceeds a threshold are added to the repeating unit represented by the anchor point. The similarity can be based on similarity in color, layout, and / or proximity. In a specific example, a repeating unit can be constructed based on similarity in color, layout, and proximity, in that order.
[0040] In such Figure 5 In the example shown, the similar element group 500 includes elements 501-506, which can be used as anchor points to construct repeating units. Figure 6 In the element 600 shown, all other elements with a number of 6 are added to the corresponding repeating unit based on the element proximity to form repeating units 601-606. In one example, the element regularity between each unit can be further utilized to avoid incorrect grouping. For example, the standard deviation of the distance between the current unit and the newly added element can be calculated. The standard deviation should be lower than a threshold to avoid incorrect grouping.
[0041] In some implementations, elements from groups of similar elements greater than n may be omitted from a cell. In one example, a group of similar elements has n+1 similar text boxes, where n text boxes belong to n repeating cells and 1 text box is a global text box. In another example, each cell uses 2 similar decorative shapes, resulting in a group of size 2n. In this case, the missing elements can be added using the above strategy, using existing cells as anchors. For example, elements can be placed into repeating cells based on color, layout, and / or proximity.
[0042] like Figure 3 As shown, it is assumed that the unit text boxes of units 301-306 and the global text box "mathematical symbols" are all recognized as text boxes as a similar element group, without Figure 4 As shown, the text boxes are divided into two different similar element groups, 412 and 417. The number of text boxes in the similar element group is 7=6+1, where 6 text boxes belong to 6 repeating units and 1 text box is a global text box. In this case, the text box can be divided into two different similar element groups, 412 and 417. The number of text boxes in the similar element group is 7=6+1, where 6 text boxes belong to 6 repeating units and 1 text box is a global text box. Figure 5 The existing cells shown are anchors, and these text boxes are placed into repeating cells based on color, layout, and / or proximity. For example, in this example, cell text boxes can be placed into repeating cells based on proximity, leaving the global text box.
[0043] For example, you can Figure 6 The end points of the connector are added to the element 600 shown to form a Figure 7 Element 700 is shown. Figure 4 As shown, the number of similar elements 416 as the endpoints of the connector is 12=6×2. In this example, these elements can be placed into corresponding repeating units according to their proximity to form Figure 7 Units 701-706 are shown.
[0044] In some implementations, after identifying the repeating units, the layout of the infographic can be further determined based on the repeating units, and the connectors in the infographic can be determined. For example, common layouts include linear layouts, radial layouts, segmented layouts, and free-form layouts. In a linear layout, the units have the same form and form a straight line, such as a horizontal line, a vertical line, or a diagonal line. In a radial layout, the units are placed together to form an arc or a circle. In a segmented layout, the units are arranged in a zigzag or sawtooth pattern and can be set to a horizontal, vertical, or diagonal direction. In a free-form layout, the units are not arranged in a regular pattern, for example, the units can be arranged along a free-form curve.
[0045] In some examples, infographic layouts can be categorized based on the location of repeating units. If the infographic falls into one of these layouts, the repeating units are connected into a sequence. Connectors can then be further searched for by examining other visual elements in the area between two adjacent units. If the identified layout is a free-form layout, the relationships between the individual units can be further clarified based on connectors. Connectors are a special type of repeating unit. To identify connectors, a visual element can be searched for a straight line, arrow, or other shape representing a connection relationship between any two units. After identifying the units and connectors, they can be constructed into an infographic structure.
[0046] In some examples, the order of the cells can be inferred from the text content of the text box. For example, if there is an index (e.g., 1, 2, 3, etc.), the index order can be followed. If there is a connector with a direction such as an arrow, the direction of the connector can be used to navigate through the cells. If such content is not found in the information diagram, the reading order (e.g., from left to right, from top to bottom, clockwise, counterclockwise, etc.) can be used to determine the order of the cells.
[0047] Figure 8 A schematic diagram of layout recognition according to some implementations of the present disclosure is shown. Based on the positions of units 801-806, it can be determined that the layout of the information graph is a radial layout. In layout 800, the text content recognized from units 801-806 contains indexes 01-06 respectively. Therefore, the order between the units can be determined according to the index order, that is, in a clockwise order, such as Figure 8 shown.
[0048] After building the structure of the infographic, semantic labels can be added to the infographic components based on heuristic rules to indicate the role of each element in the infographic, thereby achieving flexible animation arrangements. For example, semantic labels can be added to elements other than repeating units and connectors as global-level infographic components, such as titles, descriptions, backgrounds, body text, and footnotes. For example, the text box with the largest font close to the canvas boundary can be designated as the infographic title; the visual element with the lowest z-order can be designated as the background (where the z-order indicates the display level of the element in the window, and the larger the z-order value, the higher the display level); and the text box with a smaller font at the bottom of the canvas can be designated as the footnote. Semantic labels can also be added to the visual elements within the unit. For example, elements within a unit can include unit titles, unit icons, unit backgrounds, etc.
[0049] Figure 9 and Figure 10 An example of how to add semantic tags is shown, where element 900 includes repeating units 901-906 and a visual element 907, and Figure 10 Shown Figure 9 Specific examples of the repeating unit 902 and the visual element 907 in FIG. Figure 10 As shown, element 1002 is a background, element 1004 is a title, element 1006 is a cell background, element 1008 is a cell title, element 1010 is a cell index, and element 1012 is a cell icon.
[0050] Return now Figure 2 Infographic structure inference 204 can output a body with structural information (e.g., text) and can identify other components such as titles, footers, and backgrounds. Using this information, animation arrangement 206 can be performed. Animation arrangement 206 applies dynamic effects to visual elements, such as arranging animation sequences, applying staging, and applying animation effects. Animation sequences represent the temporal order in which visual elements are presented, and staging indicates a method for hierarchically presenting visual elements, such as how these elements are hierarchically presented and / or which elements are presented simultaneously.
[0051] In some implementations, animation sequences can be arranged based on reading order. For example, the infographic components in an infographic design may not have clear dependencies or logical order. In this case, the animation sequence can be arranged according to the reading order (e.g., from left to right, from top to bottom, clockwise or counterclockwise). In other implementations, animation sequences can be arranged based on semantic tags. For example, some designs use a semantic order, for example, the title appears first, followed by the subtitle. Footnotes appear at the end. This approach is more desirable for infographics where the layout pattern is not clear. Based on the semantic tags, it is easy to adjust the order of the content. It should be understood that in addition to the above animation sequences, any other suitable animation sequences can also be used.
[0052] Within the body, animation sequences can also be assigned. For example, the infographic structure inference 204 can determine the body structure of the infographic. For example, for infographics with explicit order cues, such as indexes and arrows, the original order of the infographic can be followed. For infographics without a specific order, reading order can also be used. A special structure of an infographic is a parallel structure, which means that all units are not in order. For example, the units can be arranged evenly from top to bottom and are not connected to each other. For example, two element arrangements can be provided: unit priority and group priority. In unit priority, the unit relationship of the elements is prioritized, where the units are displayed one after another and the elements in the unit tend to appear together. In group priority, the corresponding elements between units are prioritized, and similar elements are displayed together. For example, all unit titles can appear first and all unit descriptions can appear later. Figure 11-13 Different examples of animation sequences are shown, where Figure 11 An example of simultaneous display is shown, where three units are displayed simultaneously; Figure 12 An example of unit prioritization is shown, where three units are displayed sequentially; and Figure 13 An example of group prioritization is shown, where three groups are displayed in sequence.
[0053] In some implementations, animations can be arranged according to the semantic hierarchy of infographic components. Showing all animations one after another can become scattered and confusing, while showing animations simultaneously can be difficult to grasp and understand. Timing strategies can be used to combine animations into multiple stages. For example, components can be hierarchical, and visual elements of a level will be displayed together. The title, footer, and description of an infographic can be displayed at the same level. Within the body of the infographic, elements within a unit can be treated as a level and displayed simultaneously.
[0054] Figure 14-16 Three animation arrangements are shown, Figure 14 An example of simultaneous playback or simultaneous presentation is shown; Figure 15 An example of playing one after another or presenting one by one is shown; Figure 16 An example of staggered playback or interleaved presentation is shown, where all animations start at different times, with each animation overlapping the previous one for a period of time. The choice of animation arrangement may depend on the number of elements and the complexity of the unit. In one example, infographic components such as titles and footers can be set to "one after another"; for the main structure of the infographic, repeating units are displayed in a "staggered" manner; and within each repeating unit, elements are displayed "all at once."
[0055] In some implementations, animated infographics can be generated by machine learning models (e.g., decision tree models) to apply dynamic effects to visual elements. In one example, a decision tree model is trained on a dataset of visual elements, with attributes as input, such as the width, height, shape, and layout of each element (e.g., the positional relationship between elements and connectors), and dynamic effects as output, such as fade-out, appear, zoom, erase, fly-in, fly-out, and other animation effects and their directions. For example, a decision tree can recommend one or more dynamic effect options for each visual element in a unit. It should be understood that any other suitable model (e.g., a neural network model) can also be used to generate animated infographics.
[0056] Designers can choose dynamic effects based on various factors such as semantic structure, element shape, aspect ratio, or personal preference. To this end, in some examples, multiple dynamic effect options can be provided for users to choose from. Given the flexibility of the animation design environment, more dynamic effects can be used to provide more animation design options.
[0057] Return now Figure 2 The output of infographic structure inference 204 and animation arrangement 206 is an abstract specification of the infographic design. The infographic design is organized into a hierarchical structure consisting of visual elements. Animations can be applied to each visual element. For each animation, a delay (start time), duration, effect type, and effect direction can be described.
[0058] In animation synthesis 208, the extracted infographic specifications are converted into supported animation types based on different applications and synthesized into an animated infographic 210. For a static infographic 202, multiple animated infographics 210 can be determined and presented to the user for selection. Alternatively, only the optimal animated infographic 210 can be provided to the user.
[0059] Figure 2 Also shown is a designer 212, who can adjust the infographic structure inference 204 and the animation arrangement 206 through a design user interface (UI) 214. For example, the designer 212 can select inference criteria in the infographic structure inference 204, such as criteria for identifying repeating units. In addition, the designer 212 can also modify the intermediate results in the infographic structure inference 204, such as adding, modifying, and deleting semantic tags. In this way, the designer 212 can correct the inference results. In some examples, the designer 212 can select criteria, animation effects, etc. in the animation arrangement 206 to reflect the designer's 212 preferences.
[0060] Figure 17 A flow chart of a method 1700 for converting a static information graph into a dynamic information graph according to some implementations of the present disclosure is shown. The method 1700 may be implemented in a manner such as Figure 1 The illustrated conversion module 122 is implemented in FIG. 1 , and may also be implemented in any other suitable architecture.
[0061] At block 1702, visual elements of the static information graph are extracted. For example, the static information graph may be a vector image or a vector file. Therefore, the visual elements of the static information graph may be extracted based on metadata or structured data in the vector file.
[0062] At block 1704, a structure of the static information graph is determined based on the visualization elements, the structure indicating at least the layout of the visualization elements in the static information graph. Figure 2 Information graph structure inference 204 is shown to determine the structure of the static information graph.
[0063] In some implementations, determining the structure of the static information graph includes: identifying repeating units of the visualization elements; and determining a layout of the visualization elements in the static information graph based on the repeating units.
[0064] In some implementations, method 1700 further includes adding a semantic tag to the visualization element that indicates a role of the visualization element.
[0065] In some implementations, determining the repeating unit includes: grouping the visualization elements into multiple groups based on similarities between the visualization elements; and determining the most frequent number of visualization elements in the multiple groups as the number of the repeating unit.
[0066] In some implementations, determining the repeating unit includes determining the repeating unit based on at least one of color, layout, and proximity of the visualization elements.
[0067] In some implementations, determining the repeating unit includes: determining an anchor point in the visualization element for the repeating unit; and adding visualization elements in the visualization element having a similarity with the anchor point greater than a threshold to the repeating unit represented by the anchor point.
[0068] In some implementations, determining the layout includes: determining the layout based on positions of the repeating units; and determining connectors between the repeating units based on visual elements located between the repeating units.
[0069] At block 1706, based on the structure of the static infographic, dynamic effects are applied to the visualization elements to generate an animated infographic. Figure 2 The animation arrangement 206 is shown to generate an animated infographic.
[0070] In some implementations, applying the dynamic effect includes at least one of the following: specifying an animation sequence of the visual elements, the animation sequence indicating a time order for presenting the visual elements; specifying a time arrangement of the visual elements, the time arrangement indicating a method for grouping and presenting the visual elements; and applying an animation effect to the visual elements.
[0071] In some implementations, determining the animation sequence includes at least one of: determining the animation sequence of the visual elements based on a reading order; and determining the animation sequence of the visual elements based on semantic tags of the visual elements.
[0072] In some implementations, the temporal arrangement is selected from one or more of the following: one-by-one presentation, simultaneous presentation, and staggered presentation.
[0073] Some example implementations of the present disclosure are listed below.
[0074] In a first aspect, the present disclosure provides a computer-implemented method. The method comprises: extracting visual elements from a static information graph; determining a structure of the static information graph based on the visual elements, wherein the structure indicates at least a layout of the visual elements within the static information graph; and applying dynamic effects to the visual elements based on the structure of the static information graph to generate an animated information graph.
[0075] In some implementations, determining the structure of the static information graph includes: identifying repeating units of the visualization elements; and determining a layout of the visualization elements in the static information graph based on the repeating units.
[0076] In some implementations, the method further includes adding a semantic tag to the visualization element that indicates a role of the visualization element.
[0077] In some implementations, determining the repeating unit includes: grouping the visualization elements into multiple groups based on similarities between the visualization elements; and determining the most frequent number of visualization elements in the multiple groups as the number of the repeating unit.
[0078] In some implementations, determining the repeating unit includes determining the repeating unit based on at least one of color, layout, and proximity of the visualization elements.
[0079] In some implementations, determining the repeating unit includes: determining an anchor point in the visualization element for the repeating unit; and adding visualization elements in the visualization element having a similarity with the anchor point greater than a threshold to the repeating unit represented by the anchor point.
[0080] In some implementations, determining the layout includes: determining the layout based on positions of the repeating units; and determining connectors between the repeating units based on visual elements located between the repeating units.
[0081] In some implementations, applying the dynamic effect includes at least one of the following: specifying an animation sequence of the visual elements, the animation sequence indicating a time order for presenting the visual elements; specifying a time arrangement of the visual elements, the time arrangement indicating a method for grouping and presenting the visual elements; and applying an animation effect to the visual elements.
[0082] In some implementations, determining the animation sequence includes at least one of: determining the animation sequence of the visual elements based on a reading order; and determining the animation sequence of the visual elements based on semantic tags of the visual elements.
[0083] In some implementations, the temporal arrangement is selected from one or more of the following: one-by-one presentation, simultaneous presentation, and staggered presentation.
[0084] In a second aspect, the present disclosure provides a device, comprising: a processing unit; and a memory coupled to the processing unit and containing instructions stored therein, wherein when the instructions are executed by the processing unit, the device performs the method of the first aspect of the present disclosure.
[0085] In a third aspect, the present disclosure provides a computer program product tangibly stored in a non-transitory computer storage medium and comprising computer-executable instructions which, when executed by a device, cause the device to perform the method of the first aspect of the present disclosure.
[0086] In a fourth aspect, the present disclosure provides a computer-readable storage medium having computer-executable instructions stored thereon. When the computer-executable instructions are executed by a device, the device executes the method in the first aspect of the present disclosure.
[0087] The functions described above herein may be performed, at least in part, by one or more hardware logic components. For example, and without limitation, exemplary types of hardware logic components that may be used include: field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), application specific standard products (ASSPs), systems on chip (SOCs), complex programmable logic devices (CPLDs), and the like.
[0088] The program code for implementing the method of the present disclosure can be written in any combination of one or more programming languages. These program codes can be provided to a processor or controller of a general-purpose computer, a special-purpose computer, or other programmable data processing device so that when the program code is executed by the processor or controller, the functions / operations specified in the flow chart and / or block diagram are implemented. The program code can be executed entirely on the machine, partially on the machine, as a stand-alone software package, partially on the machine and partially on a remote machine, or entirely on a remote machine or server.
[0089] In the context of the present disclosure, a machine-readable medium can be a tangible medium that can contain or store a program for use by or in conjunction with an instruction execution system, device or equipment. A machine-readable medium can be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium can include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, device or equipment, or any suitable combination of the foregoing. A more specific example of a machine-readable storage medium can include an electrical connection based on one or more lines, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
[0090] In addition, although each operation is described in a specific order, this should be understood as requiring such operation to be performed in the specific order shown or in a sequential order, or requiring that all illustrated operations should be performed to obtain the desired result. Under certain circumstances, multitasking and parallel processing may be advantageous. Similarly, although some specific implementation details have been included in the above discussion, these should not be interpreted as limiting the scope of the present disclosure. Some features described in the context of a separate implementation can also be implemented in a single implementation in combination. On the contrary, the various features described in the context of a single implementation can also be implemented in multiple implementations individually or in any suitable sub-combination mode.
[0091] Although the subject matter has been described in language specific to structural features and / or methodological logical acts, it should be understood that the subject matter defined in the appended claims is not necessarily limited to the specific features or acts described above. Rather, the specific features and acts described above are merely example forms of implementing the claims.< / path> < / ellipse> < / rect>
Claims
1. A computer-implemented method comprising: extracting visual elements of a static infographic, the static infographic being an image described in a graphic design file; determining a structure of the static information graph based on the visualization elements, the structure indicating a layout of the visualization elements in the static information graph; Training a machine learning model based on the dataset of visualization elements; Recommend dynamic effects based on the machine learning model; as well as Based on the structure of the static information graph, the dynamic effect is applied to the visual element to generate an animated information graph.
2. The method of claim 1 , wherein determining the structure of the static information graph comprises: Identify visual elements that are similar to other visual elements; determining the number of repeating units based on the repetition frequency of the visualization element; constructing a repeating unit based on the determined number of the repeating units; as well as The layout of the visualization elements in the static information graph is determined based on the constructed repeating units.
3. The method according to claim 2, further comprising: A semantic tag indicating a role of the visualization element is added to the visualization element.
4. The method of claim 2, wherein determining the repeating unit comprises: Based on the similarities between the visual elements, the visual elements are divided into a plurality of groups; as well as The number of visualization elements with the highest frequency in the plurality of groups is determined as the number of the repeating units.
5. The method of claim 2, wherein determining the repeating unit comprises: The repeating unit is determined based on at least one of color, layout, and proximity of the visual elements.
6. The method of claim 2, wherein determining the repeating unit comprises: determining an anchor point in the visual element for the repeating unit; as well as Adding, among the visual elements, the visual elements whose similarity to the anchor point is greater than a threshold value to the repeating unit represented by the anchor point.
7. The method of claim 2, wherein determining the layout comprises: determining the layout based on the positions of the repeating units; as well as Connectors between the repeating units are determined based on visualization elements located between the repeating units.
8. The method of claim 1 , wherein applying the dynamic effect comprises at least one of: specifying an animation sequence for the visual element, the animation sequence indicating a time order for presenting the visual element; specifying a temporal arrangement of the visualization elements, the temporal arrangement indicating a manner for hierarchically presenting the visualization elements; and Applying animation effects to the visual element.
9. The method according to claim 8, wherein the animation sequence is determined by at least one of the following: determining an animation sequence for the visual elements based on the reading order; and An animation sequence of the visual element is determined based on the semantic tag of the visual element.
10. The method of claim 1 , wherein the machine learning model comprises a neural network that takes attributes as input and outputs the dynamic effect, Where the input includes the width, height, shape or layout of each element, The output includes a fade-out animation effect, an appearance animation effect, a zoom animation effect, an erase animation effect, or a fly-in / fly-out animation effect, and The machine learning model recommends one or more dynamic effects for each visualization element in the unit.
11. A device comprising: processing unit; as well as a memory coupled to the processing unit and containing instructions stored thereon, the instructions, when executed by the processing unit, causing the apparatus to perform the following operations: extracting visual elements of a static infographic, the static infographic being an image described in a graphic design file; determining a structure of the static information graph based on the visualization elements, the structure indicating a layout of the visualization elements in the static information graph; Training a machine learning model based on the dataset of visualization elements; Recommend dynamic effects based on the machine learning model; as well as Based on the structure of the static information graph, the dynamic effect is applied to the visual element to generate an animated information graph.
12. The apparatus of claim 11 , wherein determining the structure of the static information graph comprises: Identify visual elements that are similar to other visual elements; determining the number of repeating units based on the repetition frequency of the visualization element; constructing a repeating unit based on the determined number of the repeating units; The layout of the visualization elements in the static information graph is determined based on the constructed repeating units.
13. The apparatus of claim 12, wherein the operations further comprise: A semantic tag indicating a role of the visualization element is added to the visualization element.
14. The apparatus of claim 12, wherein determining the repeating unit comprises: Based on the similarities between the visual elements, the visual elements are divided into a plurality of groups; as well as The number of visualization elements with the highest frequency in the plurality of groups is determined as the number of the repeating units.
15. The apparatus of claim 12, wherein determining the repeating unit comprises: The repeating unit is determined based on at least one of color, layout, and proximity of the visual elements.
16. The apparatus of claim 12, wherein determining the repeating unit comprises: determining an anchor point in the visual element for the repeating unit; as well as Adding, among the visual elements, the visual elements whose similarity to the anchor point is greater than a threshold value to the repeating unit represented by the anchor point.
17. The apparatus of claim 12, wherein determining the layout comprises: determining the layout based on the positions of the repeating units; as well as Connectors between the repeating units are determined based on visualization elements located between the repeating units.
18. The apparatus of claim 11, wherein applying the dynamic effect comprises at least one of: specifying an animation sequence for the visual element, the animation sequence indicating a time order for presenting the visual element; specifying a temporal arrangement of the visualization elements, the temporal arrangement indicating a manner for hierarchically presenting the visualization elements; and applying animation effects to said visual elements, The animation sequence is determined by at least one of the following: determining an animation sequence for the visual elements based on the reading order; and An animation sequence of the visual element is determined based on the semantic tag of the visual element.
19. The apparatus of claim 11 , wherein the machine learning model comprises a neural network that takes attributes as input and outputs the dynamic effect, Where the input includes the width, height, shape or layout of each element, The output includes a fade-out animation effect, an appearance animation effect, a zoom animation effect, an erase animation effect, or a fly-in / fly-out animation effect, and The machine learning model recommends one or more dynamic effects for each visualization element in the unit.
20. A computer program product stored in a computer storage medium and comprising computer-executable instructions that, when executed by a device, cause the device to perform actions comprising: extracting visual elements of a static infographic, the static infographic being an image described in a graphic design file; determining a structure of the static information graph based on the visualization elements, the structure indicating a layout of the visualization elements in the static information graph; Training a machine learning model based on the dataset of visualization elements; Recommend dynamic effects based on the machine learning model; as well as Based on the structure of the static information graph, the dynamic effect is applied to the visual element to generate an animated information graph.