Expression processing method, interactive implementation device, and storage medium
By combining the display of geometric shapes with handwritten strokes on an interactive smart whiteboard, the properties of the geometric shapes are automatically solved, which solves the problem of low efficiency in existing technologies and improves teaching efficiency.
Patent Information
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- GUANGZHOU SHIYUAN INNOVATION TECH CO LTD
- Filing Date
- 2024-12-12
- Publication Date
- 2026-06-18
AI Technical Summary
Existing technologies cannot effectively solve for the properties of geometric figures, resulting in low computational efficiency in teaching scenarios.
The interactive smart whiteboard responds to graphic input operations to display geometric shapes, combines the target handwritten handwriting for geometric annotation, and uses the geometric shapes and handwriting to determine the attribute solution results.
It enables automatic calculation of geometric properties, improving computational efficiency in teaching scenarios.
Smart Images

Figure CN2024138870_18062026_PF_FP_ABST
Abstract
Description
Expression processing methods, interactive implementation devices, and storage media Technical Field
[0001] This application relates to the field of computer technology, and in particular to an expression processing method, an interactive implementation device, and a storage medium. Background Technology
[0002] In daily work and life, people have calculation needs in many scenarios. For example, in the context of teaching, there is a need to calculate equations.
[0003] In related technologies, people need to use a keyboard to input expressions, and then the interactive device processes the input expressions to obtain the expression solution results.
[0004] However, the technical solutions provided in the related technologies can only solve individual expressions and are powerless when it comes to solving the properties of geometric figures. Summary of the Invention
[0005] This application provides an expression processing method, an interactive implementation device, and a storage medium, which can solve for the properties of geometric figures. The technical solution is as follows:
[0006] On the one hand, a method for processing expressions is provided, the method comprising:
[0007] In response to a graphical input operation, the geometric shape input by the graphical input operation is displayed;
[0008] In response to an expression input operation, the target handwritten handwriting input by the expression input operation is displayed;
[0009] If the target handwritten handwriting is a geometric annotation of the geometric figure and meets the solution conditions, the attribute solution result of the geometric figure is determined based on the geometric figure and the target handwritten handwriting.
[0010] Display the solution results for the stated attributes.
[0011] On the one hand, an expression processing system is provided, the system comprising:
[0012] A graphics display module is used to display the geometric shape input by the graphics input operation in response to the graphics input operation;
[0013] The handwriting display module is used to display the target handwritten handwriting input by the expression input operation in response to the expression input operation;
[0014] The solution module is used to determine the attribute solution result of the geometric figure based on the geometric figure and the target handwriting when the target handwriting is a geometric annotation of the geometric figure and meets the solution conditions.
[0015] The results display module is used to display the results of the attribute solution.
[0016] On one hand, an interactive implementation device is provided, the interactive implementation device including one or more processors and one or more memories, the one or more memories storing at least one computer program, the computer program being loaded and executed by the one or more processors to implement the processing method of the expression.
[0017] On one hand, a computer-readable storage medium is provided, wherein at least one computer program is stored in the computer-readable storage medium, the computer program being loaded and executed by a processor to implement the processing method of the expression.
[0018] On one hand, a computer program product or computer program is provided, which includes program code stored in a computer-readable storage medium. The processor of an interactive implementation device reads the program code from the computer-readable storage medium and executes the program code, causing the interactive implementation device to perform the processing method of the above expression.
[0019] The technical solution provided in this application displays the geometric shape input by the graphic input operation in response to the graphic input operation. In response to the expression input operation, it displays the target handwritten strokes input by the expression input operation. If the target handwritten strokes are geometric annotations of the geometric shape and meet the solution conditions, the attribute solution result is determined using the geometric shape and the target handwritten strokes. The attribute solution result is displayed, thereby achieving automatic solution of the attributes of the geometric shape and greatly improving the efficiency of geometric attribute solution. Attached Figure Description
[0020] To more clearly illustrate the technical solutions in the embodiments of this application, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the accompanying drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0021] Figure 1 is a schematic diagram of the implementation environment of an expression processing method provided in an embodiment of this application;
[0022] Figure 2 is a flowchart of an expression processing method provided in an embodiment of this application;
[0023] Figure 3 is a schematic diagram of an interface provided in an embodiment of this application;
[0024] Figure 4 is another interface diagram provided in an embodiment of this application;
[0025] Figure 5 is another interface diagram provided in an embodiment of this application;
[0026] Figure 6 is a flowchart of another expression processing method provided in an embodiment of this application;
[0027] Figure 7 is another schematic diagram of an interface provided in an embodiment of this application;
[0028] Figure 8 is a schematic diagram of a preset area of a geometric shape provided in an embodiment of this application;
[0029] Figure 9 is a schematic diagram of another interface provided in an embodiment of this application;
[0030] Figure 10 is a flowchart of a handwriting recognition method provided in an embodiment of this application;
[0031] Figure 11 is a schematic diagram of target expression segmentation provided in an embodiment of this application;
[0032] Figure 12 is a flowchart of another expression processing method provided in an embodiment of this application;
[0033] Figure 13 is a flowchart of a target expression classification provided in an embodiment of this application;
[0034] Figure 14 is a schematic diagram of a vertical calculation-based recognition method provided in an embodiment of this application;
[0035] Figure 15 is a schematic diagram of a vertical calculation formula provided in an embodiment of this application;
[0036] Figure 16 is a schematic diagram of the operation of a formula to be solved according to an embodiment of this application;
[0037] Figure 17 is a schematic diagram of function expression processing provided in an embodiment of this application;
[0038] Figure 18 is a schematic diagram of the structure of a handwriting calculation system provided in an embodiment of this application;
[0039] Figure 19 is a schematic diagram of the structure of an expression processing system provided in an embodiment of this application;
[0040] Figure 20 is a schematic diagram of the structure of an interactive implementation device provided in an embodiment of this application. Detailed Implementation
[0041] To make the objectives, technical solutions, and advantages of this application clearer, the embodiments of this application will be described in further detail below with reference to the accompanying drawings.
[0042] In this application, the terms "first," "second," etc., are used to distinguish identical or similar items with essentially the same function. It should be understood that there is no logical or temporal dependency between "first," "second," and "n," nor is there any limitation on the quantity or execution order.
[0043] In order to illustrate the technical solutions provided in the embodiments of this application, some terms involved in the embodiments of this application will be explained first.
[0044] An expression is a combination of numbers, operators, number grouping symbols (parentheses), free variables, and constrained variables arranged in a meaningful way that yields a numerical value.
[0045] Touch device: A device capable of collecting a user's touch operation and converting it into an electrical signal. In the embodiments of this application, the user performs a touch operation on the touch device, and the touch device is capable of converting the touch operation into handwriting.
[0046] Handwriting recognition: In this embodiment of the application, it refers to the process of converting handwriting collected by a touch device into an expression.
[0047] This application provides a method for processing expressions, which can be executed by an interactive implementation device. The interactive implementation device can be implemented through software and / or hardware. The interactive implementation method can consist of two or more physical entities, or it can consist of a single physical entity. The interactive implementation device can be an interactive smart tablet, tablet computer, smart TV, mobile phone, or other intelligent electronic device.
[0048] In one embodiment, as shown in FIG1, the interactive implementation device is an interactive smart flat panel 100, and the interactive implementation method of the interactive smart flat panel 100 is described exemplarily. The interactive smart flat panel 100 is an integrated device that uses touch technology to control the content displayed on the display flat panel and realize human-computer interaction. It integrates one or more functions such as a projector, electronic whiteboard, screen, audio equipment, television, and video conferencing terminal.
[0049] The interactive smart whiteboard 100 is equipped with at least one operating system, such as Android, Windows, Linux, or iOS. The interactive smart whiteboard 100 can install at least one application under this operating system. This application can be a built-in application of the operating system or an application downloaded from a third-party device or server; there are no current limitations. For example, the interactive smart whiteboard 100 may have a whiteboard application installed. This whiteboard application allows users to perform writing and presentation operations. It can generate handwriting based on the user's writing operations (touch operations) on the whiteboard application interface, and can also be used to insert and display multimedia elements on the whiteboard application interface. Multimedia elements can include graphics, images, tables, documents, audio files, and / or video files. Within the whiteboard application interface, users can perform operations similar to writing, drawing, and erasing on a physical blackboard, and further offer enhanced digital functions such as moving, saving, scaling, inserting images, color adjustment, and stroke thickness settings. The whiteboard application can also display and edit file data (including handwriting and / or multimedia elements) created by the user in whiteboard applications on other terminals. In practical applications, whiteboard applications can also be named writing applications, electronic whiteboard applications, collaborative whiteboard applications, etc. Regardless of the name, any application used to achieve the above functions is equivalent to the whiteboard application disclosed herein. The interactive smart whiteboard 100 can also be equipped with annotation applications, document display applications, screen projection applications, etc.
[0050] The interactive smart flat panel 100 is also equipped with at least one display screen (which can also be referred to as a monitor). For example, the interactive smart flat panel 100 is equipped with a touch-enabled display screen, which can be a capacitive screen, resistive screen, infrared screen, and / or electromagnetic screen. Users can control the interactive smart flat panel 100 by touching the display screen with their fingers or a stylus. In addition, the interactive smart flat panel 100 can also be connected to external devices such as a mouse and keyboard, allowing users to control the interactive smart flat panel 100 by operating these external devices.
[0051] The interactive smart flat panel 100 is also equipped with a communication module, which enables communication functions. For example, the interactive smart flat panel 100 can transmit data with other electronic devices through the communication module. Furthermore, the interactive smart flat panel 100 can transmit data with a server through the communication module. When the interactive smart whiteboard 100 communicates with other electronic devices through its communication module, it can receive and display file data transmitted by other electronic devices, or allow users to annotate and edit such data. It can also receive and display screen projection data sent by other electronic devices, conduct audio and video calls with other electronic devices, or share its screen with other electronic devices. Especially in scenarios requiring multi-person communication, such as meetings, the interactive smart whiteboard 100 can serve as an interactive device to meet the functional requirements of multi-person communication scenarios. For example, in a meeting scenario, the interactive smart whiteboard 100 can sequentially display screen projection data from the mobile terminals of local users in the meeting room, or sequentially display file data sent by the mobile terminals of local users in the meeting room, or enable local users to conduct audio and video calls with users on remote terminals (such as remote interactive smart whiteboard 100 or mobile terminals), and send the screen content of the interactive smart whiteboard 100 to the remote terminal for display during the audio and video call.
[0052] In related technologies, when people have computational needs, they usually use a keyboard to input expressions. For complex expressions, it may be necessary to look up special symbols, resulting in low input efficiency and consequently reduced processing efficiency. This is especially true in teaching scenarios, where teachers may waste significant time inputting equations, reducing the utilization of teaching time. More importantly, the technical solutions provided in related technologies are incapable of handling the need to solve for the properties of geometric figures. By adopting the technical solution provided in this application, the properties of geometric figures can be intelligently solved, thereby obtaining the property solution results.
[0053] It should be noted that in some other embodiments, the interaction device may also be a tablet computer, or a display device with a touch-screen writing pad, etc. It is understood that the handwriting function and the processing function may be integrated into one device, or they may be independent of each other in different devices.
[0054] The technical solutions provided in this application can be applied to any scenario where there is a need for computing, such as in teaching scenarios and learning scenarios.
[0055] When the technical solution provided in this application is applied to a teaching scenario, such as in the interactive smart whiteboard 100 shown in Figure 1, and there is a need to solve the properties of geometric figures, the teacher uses the interactive smart whiteboard 100 to input geometric figures and target handwritten handwriting. The interactive smart whiteboard 100 can intelligently process the geometric figures and target handwritten handwriting and directly display the property solution results of the geometric figures, thereby improving the efficiency of teaching.
[0056] After introducing the application scenarios of the embodiments of this application, the expression processing method provided by the embodiments of this application will be described below. Referring to Figure 2, taking the interactive smart flat panel as the execution subject as an example, the method includes the following steps.
[0057] 201. In response to a graphic input operation, the interactive smart whiteboard displays the geometric shape entered in the graphic input operation.
[0058] The graphic input operation is used to input geometric shapes. In this embodiment, the graphic input operation is a graphic selection operation, which is used to select one geometric shape from multiple candidate geometric shapes. For example, referring to Figure 3, in response to the graphic input operation, the interactive smart flat panel displays geometric shape 300.
[0059] In some other embodiments, the graphic input operation can also be a graphic drawing operation, used to draw a custom geometric shape. To facilitate subsequent calculations, the interactive smart whiteboard can also correct the user-drawn geometric shape, for example, by correcting it according to the geometric annotations input by the user, so that it becomes a shape that conforms to the geometric annotations input by the user.
[0060] 202. In response to an expression input operation, the interactive smart whiteboard displays the target handwritten handwriting input by that expression input operation.
[0061] The expression input operation is used to input handwritten handwriting. In this embodiment, the handwritten handwriting input by the expression input operation is defined as the target handwritten handwriting. The reason for defining the handwritten handwriting input operation as an expression input operation is that the handwritten handwriting will ultimately be recognized as an expression for processing. Therefore, the handwritten handwriting input operation can be regarded as the expression input operation. For example, referring to Figure 4, in response to the expression input operation, the interactive smart whiteboard displays the target handwritten handwriting 400.
[0062] 203. If the handwritten mark of the target is the geometric annotation of the geometric figure and meets the solution conditions, the interactive smart whiteboard determines the attribute solution result of the geometric figure based on the geometric figure and the handwritten mark of the target.
[0063] Among them, geometric annotations are used to annotate the attributes of geometric figures. For example, the side length or radius of a geometric figure is an attribute of the geometric figure.
[0064] The solution condition refers to the condition that triggers the attribute solution of the geometric figure. This solution condition is not a condition for further judgment of the handwritten handwriting, but rather an additional judgment condition when the handwritten handwriting is a geometric annotation. The attribute solution result of the geometric figure is the result obtained after solving a certain attribute of the geometric figure. For example, when it is necessary to solve for the perimeter of the geometric figure, the perimeter is the attribute to be solved, and the value of the perimeter is the result of the attribute solution.
[0065] 204. The interactive smart whiteboard displays the solution result for this attribute.
[0066] As shown in Figure 5, taking the area (S) as the attribute to be solved as an example, the interactive smart whiteboard displays the solution result 500 for this attribute.
[0067] The technical solution provided in this application displays the geometric shape input by the graphic input operation in response to the graphic input operation. In response to the expression input operation, it displays the target handwritten strokes input by the expression input operation. If the target handwritten strokes are geometric annotations of the geometric shape and meet the solution conditions, the attribute solution result is determined using the geometric shape and the target handwritten strokes. The attribute solution result is displayed, thereby achieving automatic solution of the attributes of the geometric shape and greatly improving the efficiency of geometric attribute solution.
[0068] The above steps 201-205 are a simple description of the technical solution provided by the embodiments of this application. The technical solution provided by the embodiments of this application will be explained more clearly below with some examples. Referring to Figure 6, taking the interactive smart flat panel as the execution subject as an example, the method includes the following steps.
[0069] 601. In response to a graphic input operation, the interactive smart whiteboard displays the geometric shape input by the graphic input operation.
[0070] The graphic input operation is used to input geometric shapes. In this embodiment, the graphic input operation is either a graphic selection operation or a graphic drawing operation. The graphic selection operation is used to select a geometric shape from multiple candidate geometric shapes, and the graphic drawing operation is used to draw a custom geometric shape.
[0071] In one possible implementation, when the graphical input operation is a graphical selection operation, the interactive smart board displays multiple candidate geometric shapes. In response to a selection operation on these candidate geometric shapes, the interactive smart board displays the selected candidate geometric shape.
[0072] The candidate geometries are pre-configured and selectable geometries. These candidate geometries are configured by technicians according to actual conditions or by users according to their needs. This application embodiment does not limit this.
[0073] In this implementation, geometric shapes can be selected through graphic selection operations, resulting in high efficiency in graphic selection and display.
[0074] For example, the interactive smart whiteboard displays the application interface of a target application, which is an application capable of executing the technical solutions provided in the embodiments of this application. The application interface displays multiple candidate geometric shapes. In response to a click operation on any of the multiple candidate geometric shapes, the interactive smart whiteboard displays the clicked candidate geometric shape.
[0075] In this embodiment, clicking on a candidate geometric shape is equivalent to selecting the shape, and the clicked candidate geometric shape is the selected candidate geometric shape. In some embodiments, the display position of the clicked candidate geometric shape is a preset shape selection position on the application interface. This preset shape selection position is set by a technician according to actual conditions, and this application embodiment does not limit this. In some embodiments, after displaying the geometric shape, in response to a dragging operation on the geometric shape, the interactive smart tablet configures the geometric shape into a draggable state. In response to the end of the dragging operation, the interactive smart tablet displays the geometric shape at the position where the dragging operation ended.
[0076] For example, referring to Figures 7 and 3, the interactive smart board displays multiple candidate geometric shapes. In response to a click operation on triangle 701 among the multiple candidate geometric shapes, the interactive smart board displays triangle 300.
[0077] Another implementation of step 601 described above will be described below.
[0078] In one possible implementation, when the graphic input operation is a graphic drawing operation, the interactive smart board displays the geometric shape drawn by the graphic drawing operation in response to the graphic drawing operation.
[0079] The graphics drawing operation is used to draw geometric shapes in the smart device. In some embodiments, the graphics drawing operation is performed via a touch device.
[0080] In this implementation, geometric shapes can be drawn through graphic drawing operations, and the selection of geometric shapes is more autonomous.
[0081] For example, when the graphic input operation is a graphic drawing operation, in response to the graphic drawing operation, the interactive smart board acquires multiple graphic trajectory points corresponding to the graphic input operation through the touch device. The interactive smart board then displays the geometric shape corresponding to these multiple graphic trajectory points.
[0082] For example, when the graphic input operation is a graphic drawing operation, in response to the graphic drawing operation, the interactive smart board acquires multiple graphic trajectory points corresponding to the graphic input operation through the touch device. The interactive smart board displays an initial geometric shape composed of these multiple graphic trajectory points. The interactive smart board then standardizes this initial geometric shape to obtain the final geometric shape.
[0083] Standardizing the initial geometry can transform the drawn initial geometry into a standard geometry, which facilitates the subsequent solution of the geometry's properties.
[0084] 602. In response to an expression input operation, the interactive smart whiteboard displays the target handwritten handwriting input by that expression input operation.
[0085] In this application, the expression input operation is used to input handwritten handwriting. The handwritten handwriting input in this embodiment is defined as the target handwritten handwriting. The reason for defining the handwritten handwriting input operation as an expression input operation is that the handwritten handwriting will ultimately be recognized as an expression for processing; therefore, the handwritten handwriting input operation can be considered as an expression input operation. The target handwritten handwriting is the handwriting captured by a touch device. In this application embodiment, the expression input operation can be performed through a touch device, that is, by using a touch device to input expressions via handwriting. It should be noted that handwriting here includes writing by directly touching the touch device with the hand, and also writing by touching the touch device with a writing pen; this application embodiment does not limit this. Compared to the keyboard input method in related technologies, using a touch device for input is more efficient.
[0086] In one possible implementation, in response to an expression input operation, the interactive smart panel acquires trajectory points collected by the touch device. The interactive smart panel connects the acquired trajectory points according to the generation time of every two adjacent trajectory points to obtain the target handwritten handwriting. The interactive smart panel then displays the target handwritten handwriting.
[0087] Adjacent trajectory points refer to trajectory points generated in adjacent time periods. Touch devices have a certain sampling rate; the higher the sampling rate, the more trajectory points are collected within the same time period. This application embodiment does not limit the sampling rate of the touch device.
[0088] For example, the interactive smart panel acquires trajectory points collected by the touch device. If the time difference between the generation time of the currently acquired trajectory point and the previously acquired trajectory point is less than or equal to a time difference threshold, the interactive smart panel connects the currently acquired trajectory point with the previously acquired trajectory point to obtain a handwritten trajectory. If the time difference between the generation time of the currently acquired trajectory point and the previously acquired trajectory point is greater than the time difference threshold, the interactive smart panel does not connect the currently acquired trajectory point with the previously acquired trajectory point, and continues to determine whether to connect trajectory points according to the above logic until the target handwritten handwriting is obtained. The interactive smart panel then displays the target handwritten handwriting.
[0089] The time difference threshold is set by technicians according to the actual situation, and this application embodiment does not limit it.
[0090] It should be noted that the interactive smart flat panel will simultaneously display the trajectory points while acquiring them. That is, the interactive smart flat panel will display the collected trajectory points and show connecting lines between them, thereby displaying the target handwritten handwriting. Furthermore, the thickness of the target handwritten trajectory is set by the user, and this embodiment does not limit this.
[0091] In some embodiments, a transformation relationship exists between the coordinate system of the touch point acquired by the touch device and the coordinate system of the trajectory point displayed on the interactive smart board. A correspondence exists between the touch point and the trajectory point; once acquired and displayed by the interactive smart board, the touch point becomes a trajectory point. The touch device sends the coordinates of the acquired touch point to the interactive smart board, which can then use the aforementioned transformation relationship to convert the touch point coordinates into the trajectory point coordinates, thereby enabling input via the touch device. The correspondence between touch points and trajectory points is set by technicians according to actual conditions, and this application embodiment does not limit this.
[0092] 603. The interactive smart whiteboard determines whether the handwritten handwriting of the target is a geometric annotation of the geometric shape.
[0093] Among them, geometric annotations are used to annotate the attributes of geometric figures. For example, the side length or radius of a geometric figure is an attribute of the geometric figure.
[0094] In one possible implementation, the interactive smart board determines the display position and content of the target handwritten handwriting. Based on the display position and content of the target handwritten handwriting, the interactive smart board determines whether the target handwritten handwriting is a geometric annotation of the geometric shape.
[0095] The display position of the target handwriting refers to the writing position of the target handwriting, which is also the position where the expression input operation is performed.
[0096] In this implementation, by utilizing the display position and content of the target handwritten handwriting, it is possible to determine whether the target handwritten handwriting is a geometric annotation of a geometric shape, and the efficiency and accuracy of the geometric annotation determination are relatively high.
[0097] To provide a clearer explanation of the above embodiments, the following description is divided into several parts.
[0098] Part 1: The interactive smart whiteboard determines the display position and content of the handwritten handwriting.
[0099] In one possible implementation, the interactive smart board determines the position of the bounding rectangle of the target handwriting as the display position of the target handwriting. The interactive smart board performs expression recognition on the target handwriting to obtain the target expression corresponding to the target handwriting. The interactive smart board performs symbol recognition on the target expression to obtain the symbol recognition result of the target expression. The interactive smart board determines the symbol recognition result of the target expression as the handwriting content of the target handwriting.
[0100] The target handwritten handwriting has an irregular shape, and its display position can be directly determined using the bounding rectangle of the target handwritten handwriting. The target expression is the expression corresponding to the target handwritten handwriting, i.e., the expression to be processed. In other words, the target handwritten handwriting carries the writer's personal writing style, and the target expression is machine-coded text representing the written content after removing the personal writing style. The method of recognizing the target handwritten handwriting to obtain the target expression will be described in detail in subsequent embodiments. Symbol recognition is used to determine the type of symbols in the target expression, thereby obtaining the symbol recognition result. The symbol recognition result is used to represent the type of symbols in the target expression. In some embodiments, the symbol types include numerical symbols and non-numerical symbols.
[0101] In this implementation, the display position of the target handwritten handwriting is determined by using the bounding rectangle of the target handwritten handwriting. By recognizing the target handwritten handwriting as a target expression and performing symbol recognition on the target expression to obtain the handwriting content of the target handwritten handwriting, the efficiency and accuracy of determining the display position and handwriting content are relatively high.
[0102] Part Two: The interactive smart whiteboard determines whether the handwritten mark is a geometric annotation of the geometric shape based on the display position and content of the handwritten mark.
[0103] In one possible implementation, if the display position of the target handwriting falls within a preset area of the geometric shape and the handwriting content of the target handwriting is a preset form of handwriting content, the interactive smart tablet determines that the target handwriting is a geometric annotation of the geometric shape.
[0104] The preset region of a geometric figure refers to the area surrounding the geometric figure, including the areas where the edges and corners of the geometric figure are located. The preset region of a geometric figure corresponds to the attributes of the geometric figure. For example, referring to Figure 8, for triangle 800, there are three preset regions 801-803, each corresponding to one of the three sides of triangle 800. In addition to the three preset regions 801-803, triangle 800 may also include other preset regions, corresponding to other attributes of the triangle, such as preset regions corresponding to the corners of the triangle. This embodiment does not limit this. The preset region of the geometric figure is set by a technician according to the actual situation. If the display position of the target handwriting falls within the preset region of the geometric figure, it means that the display position of the target handwriting belongs to the preset region, or that the execution position of the input operation of the target handwriting expression belongs to the preset region. The handwriting content of the preset form is set by a technician according to the actual situation, for example, configuring the preset form as a pure numerical form. This embodiment does not limit this.
[0105] In this implementation, by utilizing the relationship between the display position of the target handwritten handwriting and the preset area of the geometric shape, as well as the relationship between the handwriting content and the handwriting content in the preset form, it is possible to determine whether the target handwritten handwriting is a geometric annotation of a geometric shape, with high efficiency and accuracy.
[0106] To provide a clearer explanation of the above embodiments, the method for determining whether the handwriting content of the target handwriting is a preset format will be described below.
[0107] In some embodiments, if the symbol recognition result of the target expression indicates that all symbols in the target expression are numerical symbols, the interactive smart board determines that the handwriting content of the target handwriting is a preset form of handwriting content. Conversely, if the symbol recognition result of the target expression indicates that there are non-numerical symbols in the target expression, the interactive smart board determines that the handwriting content of the target handwriting is not a preset form of handwriting content.
[0108] In this context, all symbols in the target expression are numerical symbols, indicating that the target expression is a purely numerical expression. For example, "20" is a purely numerical expression. Correspondingly, non-numerical symbols refer to symbols other than numerical symbols, such as "+" and "=".
[0109] In one possible implementation, if the display position of the target handwritten handwriting does not fall within the preset area of the geometric shape, or if the handwriting content of the target handwritten handwriting is not the preset form of handwriting content, the interactive smart tablet determines that the target handwritten handwriting is not a geometric annotation of the geometric shape.
[0110] In some embodiments, referring to Figures 4 and 9, when the target handwriting 400 is a geometric annotation, the interactive smart board converts the target handwriting into the standardized form 900 in Figure 9, thereby facilitating the user's viewing of the geometric shape.
[0111] In addition, before performing step 604 above, the interactive smart whiteboard can also perform the following steps.
[0112] In one possible implementation, the interactive smart board determines the shape type of the geometric figure. If the shape type of the geometric figure is a preset shape type, the interactive smart board determines whether the target handwriting is a geometric annotation of the geometric figure. If the shape type of the geometric figure is not the preset shape type, the interactive smart board determines that the target handwriting is not a geometric annotation.
[0113] The preset graphic type is a graphic type that supports solving the properties of geometric figures. This preset graphic type is set by technicians according to actual conditions and is updated with version updates; this embodiment does not limit this. If the graphic type of the geometric figure is the preset graphic type, it means that solving the properties of that geometric figure is supported; therefore, it is sufficient to determine whether the target handwritten handwriting is a geometric annotation. If the graphic type of the geometric figure is not the preset graphic type, it means that solving the properties of that geometric figure is not supported; therefore, it is sufficient to directly determine that the target handwritten handwriting is not a geometric annotation.
[0114] In this implementation, before determining whether the target handwriting is a geometric annotation, it first checks whether the geometric shape's shape type is a preset shape type, that is, whether it supports attribute solving for the geometric shape. If the geometric shape's shape type is a preset shape type, then it checks whether the target handwriting is a geometric annotation; otherwise, it directly determines that the target handwriting is not a geometric annotation. This avoids wasting resources performing the step of determining whether the target handwriting is a geometric annotation when attribute solving for geometric shapes is not supported.
[0115] 604. If the handwritten handwriting of the target is the geometric annotation of the geometric figure, the interactive smart whiteboard determines whether it meets the solution conditions.
[0116] The solution condition refers to the condition that triggers the attribute solution of the geometric figure. This solution condition is not a condition for further judgment of the handwritten handwriting, but rather an additional judgment condition when the handwritten handwriting is a geometric annotation. The attribute solution result of the geometric figure is the result obtained after solving a certain attribute of the geometric figure. For example, when it is necessary to solve for the perimeter of the geometric figure, the perimeter is the attribute to be solved, and the value of the perimeter is the result of the attribute solution.
[0117] In one possible implementation, if the target handwriting and the geometric shape satisfy the attribute requirements of the preset attributes of the geometric shape, the interactive smart board determines that it meets the solution conditions.
[0118] Among them, preset attributes refer to the properties of the geometric figure to be solved. These preset attributes are configured by technicians according to actual conditions. For example, technicians configure corresponding preset attributes for different geometric figures that support attribute solving. In the process of determining whether the solution conditions are met, the displayed geometric figure is used to determine the corresponding preset attributes, thereby judging whether the solution conditions are met. Alternatively, preset attributes can be configured by the user. For example, the user can configure commonly used properties to be solved as preset attributes. Then, during the process of solving the properties of the geometric figure, the determination of whether the solution conditions are met can be directly based on the configured preset attributes.
[0119] In this implementation, the determination of whether the solution conditions are met is made by judging whether the attribute requirements of the geometric figure are satisfied, and the degree of intelligence in judging the solution conditions is relatively high.
[0120] For example, the interactive smart board acquires the known attributes of the geometric shape. Based on the handwriting content of the target handwriting and the geometric shape, the interactive smart board determines the labeled attributes of the geometric shape. The interactive smart board determines whether the known attributes and the labeled attributes meet the attribute requirements of the preset attributes of the geometric shape. If the known attributes and the labeled attributes meet the attribute requirements of the preset attributes of the geometric shape, the interactive smart board determines that the solution condition is met.
[0121] The statement that the known attribute and the labeled attribute satisfy the preset attribute requirement of the geometric figure indicates that the preset attribute can be solved by using the known attribute and the labeled attribute. For example, if the preset attribute is the perimeter, then the perimeter of the geometric figure can be obtained directly or indirectly through the known attribute and the labeled attribute, which means that the attribute and the labeled attribute satisfy the preset attribute requirement of the geometric figure.
[0122] In one possible implementation, in response to the property solving operation of the geometry, the interactive smart board determines that the solving conditions are met.
[0123] The attribute solving operation is used to instruct the solving of a specified attribute of the geometry, where the specified attribute is the attribute indicated by the attribute solving operation. In some embodiments, the attribute solving operation is a symbol input operation or a click operation on the attribute solving control, where the symbol input operation is the operation of inputting the solving symbol.
[0124] In this implementation, when an attribute solving operation is detected, it is determined that the solving condition is met, making the determination of the solving condition more intuitive.
[0125] In another possible implementation, if the target handwriting and the geometric shape do not meet the attribute requirements of the preset attributes of the geometric shape, or if no attribute solving operation for the geometric shape is detected, the interactive smart board determines that it does not meet the solving conditions.
[0126] 605. Under the condition that the solution conditions are met, the interactive smart panel determines the target solution attributes of the geometric figure.
[0127] The target property to be solved is the property to be solved.
[0128] In one possible implementation, if the solution condition is met—that is, a property solution operation for the geometry is detected and the property solution operation is a symbolic input operation—the interactive smart board determines the target symbol input by the symbolic input operation. The interactive smart board then determines the solution attribute corresponding to the target symbol as the target solution attribute.
[0129] The correspondence between the target symbol and the solution attribute is set by the technician according to the actual situation, or configured by the user according to the needs. For example, the solution attribute corresponding to the symbol "C" is configured as "perimeter". This application embodiment does not limit this.
[0130] In this implementation, the target solution property is determined by using the target symbol input through symbolic input operations, which makes it relatively easy to determine the target solution property.
[0131] For example, if the solution condition is met—that is, an attribute solution operation for the geometry is detected and the attribute solution operation is a symbol input operation—the interactive smart board identifies the symbol input in the symbol input operation to obtain the target symbol. The interactive smart board uses this target symbol to query and obtain the solution attribute corresponding to the target symbol. The interactive smart board determines the solution attribute corresponding to the target symbol as the target solution attribute.
[0132] In one possible implementation, if the solution condition is met—that is, a property solving operation on the geometry is detected and the property solving operation is a click operation on the property solving control—the interactive smart board determines at least one solveable property corresponding to the property solving control. The interactive smart board then determines this at least one solveable property as the target solveable property.
[0133] The correspondence between the property solving control and the property to be solved is set by the technicians according to the actual situation, or configured by the user according to the needs. For example, a property solving control can be configured to solve for "perimeter". This application embodiment does not limit this.
[0134] In one possible implementation, if the solution condition is met, meaning that the target handwritten handwriting and the geometric shape satisfy the attribute requirements of the preset attribute of the geometric shape, the interactive smart board determines the preset attribute as the target solution attribute.
[0135] 606. The interactive smart whiteboard determines the attribute solution result corresponding to the target's solution attribute based on the target's solution attribute, the geometric shape, and the target's handwritten handwriting.
[0136] The attribute solution result corresponding to the target solution attribute refers to the attribute value of the target solution attribute.
[0137] In one possible implementation, the interactive smart board determines at least one reference attribute of the geometry required to solve the target property, as well as target relationship data, which represents the relationship between the at least one reference attribute and the target property. The interactive smart board obtains the attribute values of the at least one reference attribute from the target expression corresponding to the geometry and the target handwritten handwriting. The interactive smart board substitutes the attribute values of the at least one reference attribute into the target relationship data to obtain the property solution result corresponding to the target property.
[0138] The correspondence between the target solution attribute, at least one reference attribute, and the target relationship data is set by a technician according to the actual situation, and this application embodiment does not limit this. The target relationship data can be regarded as a function acting on solving the target solution attribute.
[0139] 607. The interactive smart whiteboard displays the solution result for this attribute.
[0140] In one possible implementation, the interactive smart board determines the location to be annotated within the geometry corresponding to the handwritten handwriting of the target as the target display location. The interactive smart board then displays the attribute calculation result at this target display location.
[0141] The location to be labeled is used to label the properties to be solved of the geometric figure. The location to be labeled is determined according to the actual situation of the geometric figure, and this application embodiment does not limit it.
[0142] In some embodiments, when there is no location to be labeled, the interactive smart board determines the area around the geometry as the target display location, or determines the target display location in response to a target operation. For example, if the target operation is to input a formula related to the geometry, then the target display location is behind the symbol corresponding to the solution action of the input formula.
[0143] In one possible implementation, the interactive smart whiteboard generates handwriting based on the target handwriting and the attribute solution result, obtaining a target result handwriting. This target result handwriting is similar to or identical to the handwriting, and the content of the target result handwriting is the attribute solution result. The interactive smart whiteboard then displays this target result handwriting.
[0144] To provide a clearer explanation of the above implementation methods, the generation of the target result handwriting in the above implementation methods will be described below.
[0145] In one possible implementation, the interactive smart board determines the handwriting size and spacing corresponding to the target handwriting. Based on the handwriting size and spacing, the interactive smart board generates handwriting from the solution of the expression to obtain the target handwriting, which has the same handwriting size and spacing as the original handwriting.
[0146] For example, the interactive smart board determines the reference stroke size and reference stroke interval of at least one sub-stroke in the target handwritten handwriting. The interactive smart board determines the average of the reference stroke sizes of at least one sub-stroke as the stroke size corresponding to the target handwritten handwriting, and determines the average of the reference stroke intervals of at least one sub-stroke as the stroke interval corresponding to the target handwritten handwriting. The interactive smart board determines multiple template characters corresponding to the result of this expression. Based on the stroke size and stroke interval, the interactive smart board scales and arranges the multiple template characters to obtain the target handwriting.
[0147] For example, the interactive smart board determines the character size and character spacing of multiple characters in each sub-handwritten stroke within the target handwriting. The interactive smart board determines the average character size of each sub-handwritten stroke as the reference stroke size, and the average character spacing of each sub-handwritten stroke as the reference stroke spacing. The interactive smart board determines the average reference stroke size of at least one sub-handwritten stroke as the corresponding stroke size of the target handwriting, and the average reference stroke spacing of at least one sub-handwritten stroke as the corresponding stroke spacing of the target handwriting. The interactive smart board determines multiple template characters corresponding to the result of this expression. Based on the stroke size and stroke spacing, the interactive smart board scales and arranges these multiple template characters to obtain the target handwriting.
[0148] In one possible implementation, the interactive smart tablet inputs the target handwritten handwriting and the expression solution result into a handwriting generation model. The handwriting generation model then extracts features from the target handwritten handwriting to obtain its handwriting characteristics. The interactive smart tablet then uses these handwriting characteristics to generate handwriting based on the expression solution result, resulting in the target handwriting. The interactive smart tablet displays the target handwriting at the designated display location.
[0149] Here, handwriting generation is equivalent to image generation, that is, generating an image of a specified style (target handwriting). The handwriting generation model can be any type of image generation model, such as an image generation model trained based on generative adversarial techniques; this application does not limit this.
[0150] The technical solution provided in this application displays the geometric shape input by the graphic input operation in response to the graphic input operation. In response to the expression input operation, it displays the target handwritten strokes input by the expression input operation. If the target handwritten strokes are geometric annotations of the geometric shape and meet the solution conditions, the attribute solution result is determined using the geometric shape and the target handwritten strokes. The attribute solution result is displayed, thereby achieving automatic solution of the attributes of the geometric shape and greatly improving the efficiency of geometric attribute solution.
[0151] To provide a clearer explanation of the technical solutions provided in the embodiments of this application, the following describes the method of recognizing the target handwritten handwriting and obtaining the target expression corresponding to the target handwritten handwriting in the embodiments of this application. Referring to Figure 10, taking the interactive smart tablet as the execution subject as an example, the method includes the following steps.
[0152] 1001. The interactive smart flat panel segments the target handwriting to obtain at least one sub-handwriting, and each sub-handwriting corresponds to a sub-expression in the target expression.
[0153] The target handwritten trajectory includes at least one sub-handwritten stroke. Segmenting the target handwritten stroke is to divide the target handwritten trajectory into sub-handwritten strokes. Since the target handwritten stroke includes at least one sub-handwritten stroke, the target expression includes at least one sub-expression, and the number of sub-expressions is the same as the number of sub-handwritten strokes. For example, referring to Figure 11, if the user handwrites the target expression 1100, segmenting the target expression 1100 can divide it into three sub-expressions 1101-1103.
[0154] In one possible implementation, the interactive smart board clusters the multiple local trajectories in the target handwriting based on the trajectory position and trajectory generation time, to obtain at least one sub-handwriting, where a sub-handwriting includes multiple local trajectories.
[0155] A local trajectory comprises multiple trajectory points; in other words, a local trajectory is formed by connecting multiple trajectory points. A local trajectory can be viewed as the handwriting trajectory corresponding to a complete handwriting action by the user. For example, a local trajectory corresponds to a number, a character, or a symbol. In this embodiment, the interactive smart tablet obtains the local trajectory through the trajectory point generation time. That is, the generation time difference between trajectory points belonging to the same local trajectory and the generation time of two adjacent trajectory points is less than a time difference threshold. The trajectory position of the local trajectory is the position corresponding to the circumscribed rectangle of the local trajectory, such as the center of the circumscribed rectangle, or the position of the upper left, upper right, lower left, or lower right corner of the circumscribed rectangle. The trajectory generation time of the local trajectory is determined based on the trajectory point generation times of multiple trajectory points on the local trajectory. For example, the trajectory generation time of the local trajectory is the average of the trajectory point generation times of multiple trajectory points on the local trajectory, or the latest trajectory point generation time among the multiple trajectory point generation times on the local trajectory, which is the time to complete the writing of the local trajectory. This embodiment does not limit this.
[0156] In this implementation, clustering is performed using the trajectory positions and trajectory generation times of multiple local trajectories, which can yield at least one sub-handwriting, resulting in high segmentation efficiency for the target handwriting.
[0157] For example, for any two adjacent first and second local trajectories among the multiple local trajectories, the interactive smart board determines the local trajectory distance between the first and second local trajectories based on the positional difference between their trajectory positions and the time difference between their trajectory generation times. If the local trajectory distance is less than or equal to a first distance threshold, the interactive smart board classifies the first and second local trajectories into the same sub-handwriting trajectory. If the local trajectory distance is greater than the first distance threshold, the interactive smart board classifies the first and second local trajectories into different sub-handwriting trajectories.
[0158] The first distance threshold is set by technicians according to actual conditions, and this application embodiment does not limit it. The local trajectory distance is not used to describe the difference in position of the local trajectory, but is a distance defined from a clustering perspective.
[0159] It should be noted that the above example illustrates the processing of two adjacent first and second local trajectories. The processing method for other adjacent local trajectories among multiple local trajectories belongs to the same inventive concept as described above, and the implementation process will not be repeated. By applying the above scheme to multiple local trajectories, multiple local trajectories can be divided into corresponding sub-handwriting trajectories, thereby obtaining at least one sub-handwriting trajectory, that is, obtaining the target handwriting trajectory.
[0160] For example, the interactive smart flat panel determines the local trajectory distance between the first local trajectory and the second local trajectory using the following formula (1).
[0161] In the above example, D represents the local trajectory distance, x represents the lateral position difference, y represents the longitudinal position difference, and the lateral and longitudinal position differences constitute the position difference between the trajectory positions. x1 is the abscissa of the trajectory position of the first local trajectory, y1 is the ordinate of the trajectory position of the first local trajectory, x2 is the abscissa of the trajectory position of the second local trajectory, y2 is the ordinate of the trajectory position of the second local trajectory, t1 is the trajectory generation time of the first local trajectory, t2 is the trajectory generation time of the second local trajectory, ω1 is the first weight, ω2 is the second weight, and ω3 is the third weight. The first, second, and third weights are set by the technicians according to the actual situation. For example, since the interval between rows is usually larger than the interval between different local trajectories in the same row, the second weight can be set to be larger than the first weight. This application embodiment does not limit this.
[0162] Another implementation of step 1001 described above will be described below.
[0163] In one possible implementation, the interactive smart board clusters multiple trajectory points on the target handwriting based on the trajectory point positions and trajectory point generation times to obtain at least one sub-handwriting.
[0164] The location of a trajectory point can be represented by its coordinates, which are the display coordinates when the interactive smart board displays the trajectory point. The generation time of a trajectory point can refer to either the time the interactive smart board acquires the trajectory point or the time the touch device collects the corresponding touch point. Of course, the time of collection is sent from the touch device to the interactive smart board. Clustering the trajectory points is to assign them to their respective clusters, thereby obtaining at least one sub-handwriting stroke, with each sub-handwriting stroke corresponding to one cluster.
[0165] In this implementation, clustering is performed using the location of multiple trajectory points and the generation time of the trajectory points, which can yield at least one sub-handwriting, resulting in high segmentation efficiency for the target handwriting.
[0166] For example, for any two adjacent first and second trajectory points among the plurality of trajectory points, the interactive smart board determines the trajectory point distance between the first and second trajectory points based on the positional difference between their positions and the time difference between their generation times. If the trajectory point distance is less than or equal to a second distance threshold, the interactive smart board assigns the first and second trajectory points to the same sub-handwriting trajectory. If the trajectory point distance is greater than the second distance threshold, the interactive smart board assigns the first and second trajectory points to different sub-handwriting trajectories.
[0167] The second distance threshold is set by technicians according to actual conditions, and this application embodiment does not limit it. Similar to local trajectory distance, trajectory point distance is not used to describe the difference in position of trajectory points, but is a distance defined from a clustering perspective.
[0168] It should be noted that the above example illustrates the processing of two adjacent first and second trajectory points. The processing of other adjacent trajectory points among multiple trajectory points belongs to the same inventive concept as described above, and the implementation process will not be repeated. By applying the above scheme to multiple trajectory points, multiple trajectory points can be divided into corresponding sub-handwriting trajectories, thereby obtaining at least one sub-handwriting trajectory, that is, obtaining the target handwriting trajectory.
[0169] For example, the interactive smart flat panel determines the distance between the first trajectory point and the second trajectory point using the above formula (1).
[0170] When the distance between trajectory points is determined by the above formula (1), D in formula (1) represents the distance between trajectory points, x represents the difference in lateral position, y represents the difference in longitudinal position, the difference in lateral position and the difference in longitudinal position constitute the position difference between trajectory points, x1 is the abscissa of the trajectory point position of the first trajectory point, y1 is the ordinate of the trajectory point position of the first trajectory point, x2 is the abscissa of the trajectory point position of the second trajectory point, y2 is the ordinate of the trajectory point position of the second trajectory point, t1 is the time when the trajectory point of the first trajectory point is generated, and t2 is the time when the trajectory point of the second trajectory point is generated.
[0171] 1002. The interactive smart flat panel performs character recognition on at least one sub-handwritten stroke to obtain the target expression.
[0172] The target handwritten handwriting can be regarded as a global image, while the sub-handwritten handwriting can be regarded as a local image. The purpose of character recognition on the sub-handwritten handwriting is to convert the local image into machine-encoded text (such as text in LaTeX format), that is, to obtain the target expression, so as to facilitate subsequent processing.
[0173] In one possible implementation, the interactive smart flat panel inputs the at least one sub-handwriting into a character recognition model, and performs optical character recognition on the at least one sub-handwriting through the character recognition model to obtain the sub-expressions corresponding to each sub-handwriting, thereby obtaining the target expression.
[0174] The character recognition model can be any OCR (Optical Character Recognition) model, such as an OCR model based on a CNN (Convolutional Neural Network) structure or an OCR model based on an RNN (Recurrent Neural Network) structure. This application does not limit the structure of the character model.
[0175] In addition, the above steps 601-607 are explained using the example of the target handwriting being a geometric annotation of a geometric shape. When the target handwriting is not a geometric annotation of a geometric shape, see Figure 12. Taking the interactive smart tablet as the execution subject as an example, the method includes the following steps.
[0176] 1201. If the target handwriting is not a geometric annotation of the geometric shape, the interactive smart whiteboard determines the expression type of the target expression corresponding to the target handwriting.
[0177] The target expression may have multiple expression types, such as expression to be solved, function expression, and vertical calculation expression. Different expression types have different characteristics, and these characteristics can be used to determine the expression type.
[0178] In one possible implementation, the interactive smart board identifies the unresolved expression in the target expression. If an unresolved expression exists in the target expression, the interactive smart board determines the expression type of the target expression as an unresolved expression. Alternatively, the interactive smart board identifies the target expression as a function expression. Alternatively, the interactive smart board determines the expression type of the target expression as a function expression. Alternatively, the interactive smart board identifies the target expression as a vertical calculation expression. If a vertical calculation expression exists in the target expression, the interactive smart board determines the expression type of the target expression as a vertical calculation expression. If no unresolved expression, function expression, or vertical calculation expression exists in the target expression, the interactive smart board determines the expression type of the target expression as a preset expression type.
[0179] Here, "expression to be solved" refers to an expression with a quantity to be solved; "function expression" refers to an expression describing the relationship between unknown variables; and "vertical calculation expression" refers to an expression in which numbers are arranged vertically for calculation. A preset expression type indicates that the target expression does not belong to any of the categories of "expression to be solved," "function expression," "geometric annotation," or "vertical calculation expression," and can also be considered an unknown expression. This preset expression type is set by a technician according to the actual situation, and this application embodiment does not limit it. In some embodiments, the above process can be executed using the method shown in Figure 13.
[0180] In this implementation, by identifying the undetermined expression, function expression, geometric annotation, and vertical calculation expression of the target expression, the expression type of the target expression can be determined with high accuracy.
[0181] To provide a clearer explanation of the above embodiments, the following description is divided into several parts.
[0182] Part One explains the method by which the interactive smart whiteboard identifies the undetermined expression of the target.
[0183] In one possible implementation, the interactive smart board determines whether a first preset symbol exists in the target expression. This first preset symbol is a symbol corresponding to the solving action. If the first preset symbol exists in the target expression and satisfies a preset condition, the interactive smart board determines that there is an expression to be solved in the target expression. Otherwise, the interactive smart board determines that there is no expression to be solved in the target expression.
[0184] The symbols corresponding to the solving action include equal signs (=) and question marks (?). Accordingly, the first preset symbol is either an equal sign or a question mark. Of course, besides equal signs and question marks, the first preset symbol can also be other symbols corresponding to the solving action, and this application embodiment does not limit this. The first preset symbol satisfies the preset condition if the distance between the first preset symbol and the previous symbol in the target expression is less than or equal to a distance threshold. If the distance between the first preset symbol and the previous symbol in the target expression is less than or equal to the distance threshold, then the first preset symbol satisfies the preset condition; if the distance between the first preset symbol and the previous symbol in the target expression is greater than the distance threshold, then the first preset symbol does not satisfy the preset condition. The distance threshold is set by the technician according to the actual situation, and this application embodiment does not limit this. Determining whether the distance between the first preset symbol and the previous symbol in the target expression is less than or equal to the distance threshold is also determining whether the first preset symbol can be classified into the set containing the previous symbol in the target expression. If the first preset symbol and the previous symbol can be classified into the same set, then the preset condition is considered satisfied; otherwise, the preset condition is considered not satisfied.
[0185] In addition, the "otherwise" in the above embodiments includes two cases: one is that the target expression does not contain the first preset symbol, and the other is that the target expression contains the first preset symbol and the first preset symbol does not meet the preset conditions.
[0186] In this implementation, by determining whether a first preset symbol exists in the target expression and whether the first preset symbol satisfies a preset condition, it is possible to determine whether there is an expression to be determined in the target expression, and the efficiency of identifying the expression to be determined is relatively high.
[0187] Part Two explains how the interactive smart whiteboard identifies the target expression as a function expression.
[0188] In one possible implementation, the interactive smart board determines whether a second preset symbol and a third preset symbol exist in the target expression, wherein the second preset symbol is a function symbol and the third preset symbol is an equal sign. If the second preset symbol and the third preset symbol exist in the target expression, the interactive smart board determines that a function expression exists in the target expression. Otherwise, the interactive smart board determines that a function expression does not exist in the target expression.
[0189] Function symbols are used to represent functions. Function symbols usually include the independent variable of the function. For example, f(x) is a function symbol, and x is the independent variable. Different function symbols correspond to different functions. For example, f(x) and g(x) correspond to different functions.
[0190] In this implementation, by determining whether there are second and third preset symbols in the target expression, it is possible to determine whether there is a function expression in the target expression, and the efficiency of function expression recognition is relatively high.
[0191] For example, the interactive smart board determines whether a second preset symbol and a third preset symbol exist in the target expression. If the second and third preset symbols exist in the target expression, the interactive smart board determines whether the second and third preset symbols exist in the same sub-expression. If the second and third preset symbols exist in the same sub-expression, the interactive smart board determines that a function expression exists in the target expression. Otherwise, the interactive smart board determines that a function expression does not exist in the target expression.
[0192] For example, the interactive smart board determines whether a second preset symbol and a third preset symbol exist in the target expression. If the second and third preset symbols exist in the target expression, the interactive smart board determines whether the second and third preset symbols exist in the same sub-expression. If the second and third preset symbols exist in the same sub-expression, the interactive smart board determines whether a variable exists in the sub-expression. If a variable exists in the sub-expression and that variable is the same as the variable in the second preset symbol, the interactive smart board determines that a function expression exists in the target expression. Otherwise, the interactive smart board determines that a function expression does not exist in the target expression.
[0193] Part Three explains the vertical calculation method used by the interactive smart whiteboard to recognize the target expression.
[0194] In one possible implementation, the interactive smart board determines whether a fourth preset symbol, which is a vertical calculation symbol, exists in the target expression. If the fourth preset symbol exists in the target expression, the interactive smart board determines that a vertical calculation expression exists in the target expression. Otherwise, the interactive smart board determines that a vertical calculation expression does not exist in the target expression.
[0195] In this context, the vertical solver symbol is a horizontal line whose length and slope meet preset conditions. For example, the vertical solver symbol is a horizontal line whose length is greater than or equal to a length threshold and whose slope is within a preset slope range. The length threshold and preset slope range are set by technicians according to the actual situation, and this application embodiment does not limit this. The presence of a vertical solver symbol in the target expression indicates the existence of a vertical calculation formula in the target expression.
[0196] In this implementation, by determining whether there are vertical calculation symbols in the target expression, it is possible to determine whether there are vertical calculation expressions in the target expression, and the efficiency of vertical calculation expression identification is relatively high.
[0197] For example, the interactive smart whiteboard determines whether a fourth preset symbol exists in the target expression. If the fourth preset symbol exists, the interactive smart whiteboard determines whether at least two sub-expressions exist within a preset area above the fourth preset symbol. If at least two sub-expressions exist within the preset area, the interactive smart whiteboard determines that a vertical calculation expression exists in the target expression. Otherwise, the interactive smart whiteboard determines that a vertical calculation expression does not exist in the target expression.
[0198] The preset area is a rectangular area, and its size is determined based on the fourth preset symbol. For example, the width of the preset area is determined based on the width of the fourth preset symbol. In some embodiments, the width of the preset area is obtained by multiplying the width of the fourth preset symbol by a preset width ratio, where the preset width ratio is less than or equal to 1, meaning the width of the preset area is less than or equal to the width of the fourth preset symbol. The height of the preset area is obtained by multiplying the width of the fourth preset symbol by a preset height ratio, which is set by a technician according to actual conditions; this application does not limit this setting.
[0199] For example, the interactive smart board determines whether a fourth preset symbol exists in the target expression. If a fourth preset symbol exists, the interactive smart board determines whether at least two sub-expressions exist within a preset area above the fourth preset symbol. If at least two sub-expressions exist within the preset area, the interactive smart board determines whether the starting symbol of the sub-expression closest to the fourth preset symbol is a fifth preset symbol, which is an operator. If the starting symbol of the sub-expression closest to the fourth preset symbol is a fifth preset symbol, the interactive smart board determines that a vertical calculation expression exists in the target expression. Otherwise, the interactive smart board determines that a vertical calculation expression does not exist in the target expression.
[0200] Furthermore, the interactive smart board determines whether a fourth preset symbol exists in the target expression. If a fourth preset symbol exists in the target expression, the interactive smart board determines whether at least two sub-expressions exist within a preset area above the fourth preset symbol. If at least two sub-expressions exist within the preset area, the interactive smart board determines whether the starting symbol of the sub-expression closest to the fourth preset symbol is a fifth preset symbol, which is an operator. If the starting symbol of the sub-expression closest to the fourth preset symbol is a fifth preset symbol, the interactive smart board determines whether the other sub-expressions in the at least two sub-expressions are purely numerical. If the other sub-expressions in the at least two sub-expressions are purely numerical, the interactive smart board determines that a vertical calculation expression exists in the target expression. Otherwise, the interactive smart board determines that a vertical calculation expression does not exist in the target expression.
[0201] The fifth preset symbol includes the plus sign "+", the minus sign "-", and the multiplication sign "×".
[0202] It should be noted that the presence of the vertical calculation symbol may affect the character recognition effect in step 502. For example, referring to Figure 14, the result of segmenting the vertical calculation expression has two cases: 1401 and 1402, which depends on whether the lower vertical calculation symbol (large horizontal line) is included in the bottommost subexpression. When the vertical calculation symbol is included in the bottommost subexpression (case 1401), the interactive smart board removes the vertical calculation symbol before executing step 1002, thereby improving the accuracy of recognition. Of course, when the vertical calculation symbol is not included in the bottommost subexpression (case 1402), step 1002 can be executed directly.
[0203] Another implementation of step 1201 described above will be described below.
[0204] In one possible implementation, the interactive smart board performs symbol recognition and position recognition on the target expression to obtain the symbol recognition result and position recognition result of the target expression. Based on the symbol recognition result and / or the position recognition result, the interactive smart board determines the expression type of the target expression.
[0205] The symbol recognition result of the target expression is used to indicate the type of symbols present in the target expression. The position recognition result of the target expression is used to indicate the position of sub-expressions in the target expression.
[0206] In this implementation, the target expression can be classified by utilizing the target expression symbol recognition results and / or position recognition results, resulting in high classification efficiency.
[0207] For example, if the symbol recognition result indicates that the target expression contains a first preset symbol, and the first preset symbol satisfies a preset condition, the interactive smart board determines the expression type of the target expression as an expression to be solved, and the first preset symbol is the symbol corresponding to the solving action. If the symbol recognition result indicates that the target expression contains a second preset symbol and a third preset symbol, the interactive smart board determines the expression type of the target expression as a function expression, the second preset symbol is a function symbol, and the third preset symbol is an equal sign. If the position recognition result of the target expression indicates that the target expression contains a sub-expression located at a preset position on a geometric figure, the interactive smart board determines the expression type of the target expression as a geometric label. If the symbol recognition result of the target expression indicates that the target expression contains a fourth preset symbol, the interactive smart board determines the expression type of the target expression as a vertical calculation expression, and the fourth preset symbol is a vertical solving symbol.
[0208] 1202. The interactive smart whiteboard determines the expression processing method corresponding to the target expression based on the expression type of the target expression.
[0209] Different expression types correspond to different expression processing methods. In other words, different expression types correspond to different intentions, and different intentions correspond to different expression processing methods.
[0210] In one possible implementation, if the expression type of the target expression is an expression to be solved, the interactive smart board determines the expression processing method corresponding to the expression type of the target expression as solving the expression to be solved. If the expression type of the target expression is a function expression, the interactive smart board determines the expression processing method corresponding to the expression type of the target expression as function graph generation. If the expression type of the target expression is geometric annotation, the interactive smart board determines the expression processing method corresponding to the expression type of the target expression as geometric operation. If the expression type of the target expression is a vertical calculation expression, the interactive smart board determines the expression processing method corresponding to the expression type of the target expression as solving the vertical calculation expression.
[0211] 1203. The interactive smart board simplifies the objective expression to obtain a simplified objective expression, which is a polynomial form of the original objective expression.
[0212] In one possible implementation, the interactive smart board simplifies at least one sub-expression in the target expression according to the variable name to obtain at least one simplified sub-expression, and the at least one simplified sub-expression constitutes the simplified target expression.
[0213] The simplified subexpression is the polynomial form of the original subexpression.
[0214] In this implementation, the expression is converted into a polynomial form to simplify the polynomial, which facilitates subsequent processing of the expression.
[0215] For example, the interactive smart whiteboard transforms the subexpression into the form shown in formula (2) below, thereby simplifying the subexpression. p(x)+p(y)+p(z)+…=0 (2)
[0216] in, x, y, and z are variables, and a (a1, a2, and a3), b (b1, b2, and b3), and c (c1, c2, and c3) are coefficients.
[0217] 1204. The interactive smart whiteboard processes the simplified target expression according to the expression processing method to obtain the expression solution result of the target expression.
[0218] The expression solution result is the result obtained after processing the target expression using the corresponding expression processing method. In this embodiment, the expression solution result includes multiple forms. For ease of description, the target expression in the following embodiments is the simplified target expression in step 307 above.
[0219] In one possible implementation, when the expression processing method involves solving the expression to be solved, the interactive smart board determines whether there are variables in the target expression. If there are no variables in the target expression, the interactive smart board performs numerical or symbolic computation on the target expression to obtain the expression solution result. If there are variables in the target expression, the interactive smart board performs variable solving on the target expression to obtain the expression solution result. Alternatively, if there are variables in the target expression, the interactive smart board performs variable solving on the target expression and substitutes the variable solving result into the first target sub-expression in the target expression to obtain the expression solution result of the target expression.
[0220] Numerical computation refers to the process of directly performing calculations on numerical values when there are no variables to be solved. For example, "1+1=" can be performed as a numerical computation. Symbolic computation refers to the process of directly performing symbolic calculations on numerical values when there are no variables to be solved. For example, "sin(90°)" can be performed as a symbolic computation. The first target sub-expression is the sub-expression that needs to be processed using the results of variable calculations. For example, the target expression includes three sub-expressions, the first of which is "ax+bx". 2 =c", the second subexpression is "ey+fy" 2 =g", the third subexpression is "x+y=", where x and y are variables, and a, b, c, e, f and g are constants. The interactive smart whiteboard needs to process the first subexpression "ax+bx". 2 =c” and the second subexpression “ey+fy” 2 =g” performs variable evaluation, and the result of the variable evaluation is substituted into the third subexpression “x+y=" to obtain the expression evaluation result of the target expression. The third subexpression “x+y=" is the first target subexpression.
[0221] To provide a clearer explanation of the above implementation methods, the method of solving the target expression using variables in the above implementation methods will be described below.
[0222] In one possible implementation, when variables exist in the target expression, for any sub-expression in the target expression, the interactive smart board determines the number of first sub-expressions required to solve for the variables in the sub-expression, based on the number of variables in the sub-expression. This first number of sub-expressions is the same as the number of variables in the sub-expression. The interactive smart board obtains a reference number of second sub-expressions from the target expression, which is the number of first sub-expressions minus 1. Based on the sub-expression and the reference number of second sub-expressions, the interactive smart board performs variable solving on the variables in the sub-expression to obtain the variable solving results. Once all variables in the target expression have been solved, the interactive smart board determines the variable solving results of the target expression as the expression solving result of the target expression.
[0223] Taking a target expression comprising three subexpressions as an example, the three subexpressions are "a+b=10", "ab=5", and "c=a+b". For the subexpression "a+b=10", the number of its variables is determined to be n=2. From the other m-1=2 subexpressions, combine one expression, namely "ab=5" or "c=a+b". Solve for a and b by combining "a+b=10" and "ab=5", or solve for a and b by combining "a+b=10" and "c=a+b" (if it cannot be solved, skip).
[0224] Another implementation of step 1204 described above will be described below.
[0225] In one possible implementation, when the expression processing method is function graph generation, the interactive smart board draws a function graph based on the target expression to obtain the expression solution result of the target expression.
[0226] For example, when the expression is processed through function graph generation, the interactive smart board determines the range of values for the independent variable in the target expression. From this range, the interactive smart board determines the range of values for the target independent variable, where the target range is smaller than the range of values for the target independent variable. The interactive smart board then samples the independent variable within this target range, obtaining the sampling results. Based on these sampling results, the interactive smart board plots the function graph of the target expression, obtaining the solution to the target expression.
[0227] The selection method for the range of values of the target independent variable is set by the technicians according to the actual situation. For example, for the function expression f(x) = 2x, the corresponding values of f(x) are sampled when x is between -10 and 10. This application embodiment does not limit this.
[0228] Another implementation of step 1204 described above will be described below.
[0229] In one possible implementation, when the expression processing method is to solve a vertical calculation expression, the interactive smart board determines the vertical calculation method based on the operator above the fourth preset symbol in the target expression. The interactive smart board then uses this vertical calculation method to calculate at least two sub-expressions in the target expression to obtain the expression solution result of the target expression.
[0230] Among them, the operators above the fourth preset symbol include the plus sign, the minus sign, and the multiplication sign. The plus sign, the minus sign, and the multiplication sign correspond to different vertical calculation methods. For example, the vertical calculation method corresponding to the plus sign is to add at least two sub-expressions in the target expression; the vertical calculation method corresponding to the minus sign is to subtract at least two sub-expressions in the target expression; and the vertical calculation method corresponding to the multiplication sign is to multiply at least two sub-expressions in the target expression.
[0231] 1205. The interactive smart whiteboard displays the solution result of the expression based on the expression type of the target expression.
[0232] Different expression types correspond to different display positions and / or display methods for expression solution results. Using expression types to display expression solution results is more effective.
[0233] In one possible implementation, the interactive smart board determines the target display location for the solution result of the target expression based on the expression type of the target expression. The interactive smart board then displays the solution result of the expression at that target display location.
[0234] Since different expression types correspond to different expression processing methods, different expression processing methods will yield different expression solution results, and different expression solution results correspond to different target display positions. Therefore, the target display position can be determined by using the expression type.
[0235] Under the above implementation, the target display position can be determined based on the expression type, and displaying the expression solution result at the target display position has a better display effect.
[0236] To provide a clearer explanation of the above embodiments, the following description will be divided into two parts.
[0237] Part 1: The interactive smart whiteboard determines the target display position of the solution result of the target expression based on the expression type of the target expression.
[0238] In one possible implementation, when the expression type of the target expression is an expression to be solved, the interactive smart tablet determines the first preset distance range of the first preset symbol in the target handwriting as the target display position, and the first preset symbol is the symbol corresponding to the solving action.
[0239] In this embodiment, the first preset symbol is an equal sign or a question mark. Determining the first preset distance range of the equal sign or question mark as the target display position means that the expression solution result will be displayed after the equal sign or question mark, and the display of the expression solution result meets the requirements of the expression to be solved. In some embodiments, the first preset distance range of the first preset symbol refers to a certain distance after the first preset symbol. This first preset distance range is set by a technician according to the actual situation, and this application embodiment does not limit it.
[0240] In one possible implementation, if the expression type of the target expression is a function expression, the interactive smart tablet determines the second preset distance range of the target handwriting as the target display position.
[0241] In cases where the target expression is a function expression, the solution is a function graph. Therefore, the second preset distance range of the target handwriting is determined as the target display position, resulting in a high degree of matching between the function graph and the target handwriting. Furthermore, the relative positional relationship between the target display position and the target handwriting is set by a technician based on actual conditions, and this embodiment does not limit this. In some embodiments, the second preset distance range refers to a certain distance centered on the target handwriting; this second preset distance range is set by a technician based on actual conditions, and this embodiment does not limit this.
[0242] In one possible implementation, when the expression type of the target expression is a vertical calculation expression, the interactive smart tablet determines the third preset distance range of the fourth preset symbol in the target handwriting as the target display position, and the fourth preset symbol is a vertical solving symbol.
[0243] In some embodiments, the third preset distance range of the fourth preset symbol is below the fourth preset symbol. According to the calculation method of the vertical calculation formula, the calculation result will be displayed below the vertical solver symbol. Therefore, the target display position is determined to be below the vertical solver symbol in accordance with the calculation method of the vertical calculation formula.
[0244] Part Two: The interactive smart whiteboard displays the solution to the expression at the target display location.
[0245] In one possible implementation, if the result of solving the expression is not a function graph, the interactive smart board generates handwriting based on the target handwriting from the solution result, obtaining the target result handwriting, which is similar to or identical to the handwriting. The interactive smart board then displays the target result handwriting at the target display location.
[0246] The result of the expression solution is not the function graph, including the expression solution of the above-mentioned unsolved expression and the expression solution of the vertical calculation expression.
[0247] In this implementation, when the expression solution result is not a function graph, the target result handwriting is generated based on the target handwriting, so that the final displayed expression solution result is similar in form to the target handwriting, thus improving the display effect of the expression solution result.
[0248] The method of generating the target handwriting belongs to the same inventive concept as described in step 607 above. The implementation process is described in the relevant description in step 607 above, and will not be repeated here.
[0249] For example, referring to Figure 15, after inputting the target handwriting 1501, the interactive smart whiteboard will recognize that the target handwriting 1501 is a vertical calculation formula. After the calculation, the expression solution result 1502 of the vertical calculation formula will be displayed below the target handwriting 1501. The expression solution result 1502 is displayed in a way that is similar to or the same as the target handwriting 1501.
[0250] For example, referring to Figure 16, after inputting the target handwriting 1601, the interactive smart whiteboard will recognize the target handwriting 1601 as an expression to be solved. After calculation, it will display the expression solution result 1602 of the expression to be solved, and the expression solution result 1602 will be displayed in a way that is similar to or the same as the target handwriting 1601.
[0251] For example, referring to Figure 17, after inputting the target handwriting 1701, the interactive smart whiteboard will recognize that the target handwriting 1701 is a function expression, and after calculation, it will display the function graph 1702 of the function expression.
[0252] Referring to Figure 18, the expression processing method provided in this embodiment can be executed by a handwritten calculation system 1800. The handwritten calculation system 1800 includes a functional module 1801 and a basic module 1802. The functional module 1801 is used to process the expression to obtain the attribute solution result or the expression solution result, that is, to execute the above steps 606 and 1204. The functional module 1801 includes a submodule 18011 for processing the expression to be solved; a vertical calculation submodule 18012 for processing the vertical calculation expression; a function graph generation submodule 18013 for generating function graphs; and a geometric operation submodule 18014 for processing geometric figures and geometric annotations.
[0253] The basic module 1802 includes a handwriting segmentation submodule 18021, a character recognition submodule 18022, a simplification submodule 18023, a processing method determination submodule 18024, and a result display submodule 18025. The handwriting segmentation submodule 18021 performs step 1001. The character recognition submodule 18022 performs step 1002. The simplification submodule 18023 performs step 1203. The processing method determination submodule 18024 performs steps 1201 and 1202. The result display submodule 18025 performs steps 607 and 1205.
[0254] All of the above-mentioned optional technical solutions can be combined in any way to form the optional embodiments of this application, and will not be described in detail here.
[0255] The technical solution provided in this application determines the expression type of the target expression when the target handwritten handwriting is not a geometric annotation. The expression type of the target expression is used to determine the corresponding expression processing method. The target expression is then processed according to this method to obtain the expression solution result, thereby achieving intelligent processing of the target expression. Based on the expression type of the target expression, the expression solution result is displayed, integrating expression processing and expression solution results, thus improving the efficiency of processing the target expression.
[0256] Figure 19 is a schematic diagram of the structure of an expression processing system provided in an embodiment of this application. Referring to Figure 19, the system includes: a graphics display module 1901, a handwriting display module 1902, a solution module 1903, and a result display module 1904.
[0257] The graphics display module 1901 is used to display the geometric figure input by the graphics input operation in response to the graphics input operation.
[0258] The handwriting display module 1902 is used to display the target handwritten handwriting input in response to an expression input operation.
[0259] The solver module 1903 is used to determine the attribute solution result of the geometric figure based on the geometric figure and the target handwriting when the target handwriting is the geometric annotation of the geometric figure and meets the solution conditions.
[0260] Result display module 1904 is used to display the solution results for this attribute.
[0261] In one possible implementation, the system further includes: a handwriting classification module, used to determine the display position and content of the target handwriting. Based on the display position and content of the target handwriting, it is determined whether the target handwriting is a geometric annotation of the geometric shape.
[0262] In one possible implementation, the handwriting classification module is configured to determine that the target handwriting is a geometric label of the geometric shape when the display position of the target handwriting falls within a preset area of the geometric shape and the handwriting content of the target handwriting is in a preset format. Alternatively, if the display position of the target handwriting does not fall within the preset area of the geometric shape, or the handwriting content of the target handwriting is not in the preset format, the module determines that the target handwriting is not a geometric label of the geometric shape.
[0263] In one possible implementation, the handwriting classification module is used to determine the position of the bounding rectangle of the target handwriting as the display position of the target handwriting. Expression recognition is performed on the target handwriting to obtain the target expression corresponding to the target handwriting. Symbol recognition is performed on the target expression to obtain the symbol recognition result of the target expression. The symbol recognition result of the target expression is determined as the handwriting content of the target handwriting.
[0264] In one possible implementation, the handwriting classification module is used to determine that the handwriting content of the target handwriting is a preset form of handwriting content when the symbol recognition result of the target expression indicates that all symbols in the target expression are numerical symbols. Alternatively, if the symbol recognition result of the target expression indicates that there are non-numerical symbols in the target expression, the module determines that the handwriting content of the target handwriting is not a preset form of handwriting content.
[0265] In one possible implementation, the system further includes a handwriting classification module for determining the shape type of the geometric figure. If the shape type of the geometric figure is a preset shape type, the module determines whether the target handwriting is a geometric annotation of the geometric figure.
[0266] In one possible implementation, the handwriting classification module is further configured to determine that the target handwriting is not a geometric annotation if the geometric shape is not of the preset geometric shape type.
[0267] In one possible implementation, the solver module 1903 is used to determine the target solver attribute of the geometry. Based on the target solver attribute, the geometry, and the target handwritten handwriting, the attribute solver result corresponding to the target solver attribute is determined.
[0268] In one possible implementation, the solving module 1903 is configured to, when the solving condition is met (i.e., an attribute solving operation on the geometry is detected and the attribute solving operation is a symbol input operation), determine the target symbol input by the symbol input operation. The solving attribute corresponding to the target symbol is then determined as the target solving attribute. Alternatively, when the solving condition is met (i.e., an attribute solving operation on the geometry is detected and the attribute solving operation is a click operation on an attribute solving control), determine at least one solving attribute corresponding to the attribute solving control. The at least one solving attribute is then determined as the target solving attribute. Alternatively, when the solving condition is met (i.e., the target handwritten handwriting and the geometry satisfy the attribute requirements of a preset attribute of the geometry), the preset attribute is determined as the target solving attribute.
[0269] In one possible implementation, the solving module 1903 is configured to determine at least one reference attribute of the geometry required to solve the target solveable attribute, and target relation data, wherein the target relation data represents the relationship between the at least one reference attribute and the target solveable attribute. The attribute values of the at least one reference attribute are obtained from the target expression corresponding to the geometry and the target handwritten handwriting. The attribute values of the at least one reference attribute are substituted into the target relation data to obtain the attribute solving result corresponding to the target solveable attribute.
[0270] In one possible implementation, the result display module 1904 is used to generate handwriting based on the target handwriting and the attribute solution result, to obtain a target result handwriting, wherein the target result handwriting is similar to or identical to the handwriting, and the handwriting content of the target result handwriting is the attribute solution result. The target result handwriting is then displayed.
[0271] In one possible implementation, the result display module 1904 is used to determine the handwriting size and spacing corresponding to the target handwriting. Based on the handwriting size and spacing, handwriting generation is performed on the attribute solution result to obtain the target result handwriting, which has the same handwriting size and spacing as the original handwriting. Alternatively, the target handwriting and the attribute solution result are input into a handwriting generation model, which extracts features from the target handwriting to obtain its handwriting features. Using this handwriting generation model, handwriting generation is performed on the attribute solution result based on these handwriting features to obtain the target result handwriting.
[0272] In one possible implementation, the result display module 1904 is further configured to determine that the solution condition is met if the target handwritten handwriting and the geometric shape satisfy the attribute requirements of the preset attributes of the geometric shape. Alternatively, the solution condition is determined to be met in response to the attribute solving operation of the geometric shape.
[0273] In one possible implementation, the system further includes a handwriting classification module, which is further configured to determine the expression type of the target expression corresponding to the target handwriting when the target handwriting is not a geometric annotation of the geometric figure.
[0274] The system also includes a processing method determination module, which determines the expression processing method corresponding to the target expression based on the expression type of the target expression.
[0275] The solver module 1903 is also used to process the target expression according to the expression processing method to obtain the expression solution result of the target expression.
[0276] The result display module 1904 is also used to display the solution result of the expression based on the expression type of the target expression.
[0277] In one possible implementation, the handwriting classification module is further configured to identify the undetermined expression in the target expression. If an undetermined expression exists in the target expression, the expression type of the target expression is determined to be an undetermined expression. Alternatively, the module may identify the function expression in the target expression. If a function expression exists in the target expression, the expression type of the target expression is determined to be a function expression. Alternatively, the module may identify the vertical calculation expression in the target expression. If a vertical calculation expression exists in the target expression, the expression type of the target expression is determined to be a vertical calculation expression. Alternatively, if no undetermined expression, function expression, or vertical calculation expression exists in the target expression, the expression type of the target expression is determined to be a preset expression type.
[0278] In one possible implementation, the handwriting classification module is further configured to determine whether a first preset symbol exists in the target expression, the first preset symbol being a symbol corresponding to a solving action. If the first preset symbol exists in the target expression and satisfies a preset condition, it is determined that there is an expression to be solved in the target expression. Otherwise, it is determined that there is no expression to be solved in the target expression. The module further determines whether a second preset symbol and a third preset symbol exist in the target expression, the second preset symbol being a function symbol and the third preset symbol being an equal sign. If the second and third preset symbols exist in the target expression, it is determined that there is a function expression in the target expression. Otherwise, it is determined that there is no function expression in the target expression. The module further determines whether a fourth preset symbol exists in the target expression, the fourth preset symbol being a vertical calculation symbol. If the fourth preset symbol exists in the target expression, it is determined that there is a vertical calculation expression in the target expression. Otherwise, it is determined that there is no vertical calculation expression in the target expression.
[0279] In one possible implementation, the handwriting classification module is further configured to perform symbol recognition and position recognition on the target expression, obtaining symbol recognition results and position recognition results for the target expression. Based on the symbol recognition results and / or the position recognition results, the expression type of the target expression is determined.
[0280] In one possible implementation, the handwriting classification module is further configured to, when the symbol recognition result indicates the presence of a first preset symbol in the target expression and the first preset symbol satisfies a preset condition, determine the expression type of the target expression as a problem expression, where the first preset symbol is a symbol corresponding to the solving action. Alternatively, when the symbol recognition result indicates the presence of a second and a third preset symbol in the target expression, determine the expression type of the target expression as a function expression, where the second preset symbol is a function symbol and the third preset symbol is an equal sign. Alternatively, when the symbol recognition result indicates the presence of a fourth preset symbol in the target expression, determine the expression type of the target expression as a vertical calculation expression, where the fourth preset symbol is a vertical solving symbol.
[0281] In one possible implementation, the processing method determination module is used to determine the expression processing method corresponding to the expression type of the target expression as solving the expression to be solved when the expression type of the target expression is an expression to be solved. Alternatively, if the expression type of the target expression is a function expression, the expression processing method corresponding to the expression type of the target expression is function graph generation. Alternatively, if the expression type of the target expression is a vertical calculation expression, the expression processing method corresponding to the expression type of the target expression is solving the vertical calculation expression.
[0282] In one possible implementation, the solving module 1903 is further configured to determine whether there are variables in the target expression when the expression processing method is solving the expression to be solved. If there are no variables in the target expression, numerical or symbolic calculations are performed on the target expression to obtain the expression solution result. If there are variables in the target expression, variable solving is performed on the target expression to obtain the expression solution result. Alternatively, if there are variables in the target expression, variable solving is performed on the target expression, and the variable solution result is substituted into the first target sub-expression in the target expression to obtain the expression solution result. Alternatively, if the expression processing method is function graph generation, a function graph is drawn based on the target expression to obtain the expression solution result. Alternatively, if the expression processing method is solving a vertical calculation expression, the vertical calculation method is determined based on the operator above the fourth preset symbol in the target expression. The vertical calculation method is then used to calculate at least two sub-expressions in the target expression to obtain the expression solution result.
[0283] In one possible implementation, the solving module 1903 is further configured to, when variables exist in the target expression, determine, for any sub-expression in the target expression, the number of first sub-expressions required to solve the variables in the sub-expression based on the number of variables in the sub-expression, wherein the number of first sub-expressions is the same as the number of variables in the sub-expression. A reference sub-expression for a second number of sub-expressions is obtained from the target expression, wherein the number of second sub-expressions is the number of first sub-expressions minus 1. Based on the sub-expression and the reference sub-expression for the second number of sub-expressions, variable solving is performed on the variables in the sub-expression to obtain the variable solving results for the variables in the sub-expression. When all variables in the target expression have been solved, the variable solving results for the variables in the target expression are determined as the expression solving result of the target expression.
[0284] In one possible implementation, the solver module 1903 is further configured to determine the range of values for the independent variable in the objective expression. The range of values for the target independent variable is determined from the range of values for the independent variable, wherein the range of values for the target independent variable is smaller than the range of values for the independent variable. Independent variable sampling is performed within the range of values for the target independent variable to obtain the sampling results. Based on the sampling results, a function graph is plotted on the objective expression to obtain the solution result of the objective expression.
[0285] In one possible implementation, the result display module 1904 is further configured to determine a target display position for the solution result of the target expression based on the expression type of the target expression. The solution result is then displayed at that target display position.
[0286] In one possible implementation, the result display module 1904 is further configured to, when the expression type of the target expression is a to-be-solved expression, determine a first preset distance range of a first preset symbol in the target handwriting as the target display position, wherein the first preset symbol is a symbol corresponding to the solving action. Alternatively, when the expression type of the target expression is a function expression, determine a second preset distance range of the target handwriting as the target display position. Alternatively, when the expression type of the target expression is a vertical calculation expression, determine a third preset distance range of a fourth preset symbol in the target handwriting as the target display position, wherein the fourth preset symbol is a vertical solving symbol.
[0287] In one possible implementation, the result display module 1904 is further configured to display the function graph at the target display position if the expression solution result is a function graph. Alternatively, if the expression solution result is not a function graph, handwriting generation is performed on the expression solution result based on the target handwriting to obtain the target result handwriting, which is similar to the handwriting. The target result handwriting is then displayed at the target display position.
[0288] In one possible implementation, the solver module 1903 is further used to simplify the objective expression to obtain a simplified objective expression, which is a polynomial form of the original objective expression. The simplified objective expression is then processed according to the expression processing method to obtain the solution result of the objective expression.
[0289] In one possible implementation, the system further includes:
[0290] The handwriting recognition module is used to segment the target handwriting to obtain at least one sub-handwriting, where each sub-handwriting corresponds to a sub-expression in the target expression. Character recognition is then performed on the at least one sub-handwriting to obtain the target expression.
[0291] In one possible implementation, the handwriting recognition module is used to cluster the multiple local trajectories in the target handwriting based on their trajectory positions and trajectory generation times to obtain at least one sub-handwriting, wherein each sub-handwriting includes multiple local trajectories. Alternatively, the module can cluster the multiple trajectory points on the target handwriting based on their trajectory point positions and trajectory point generation times to obtain the at least one sub-handwriting.
[0292] In one possible implementation, the handwriting recognition module is configured to, for any two adjacent first and second local trajectories among the plurality of local trajectories, determine the local trajectory distance between the first and second local trajectories based on the positional difference between their trajectory positions and the time difference between their trajectory generation times. If the local trajectory distance is less than or equal to a first distance threshold, the first and second local trajectories are grouped into the same sub-handwriting trajectory. If the local trajectory distance is greater than the first distance threshold, the first and second local trajectories are grouped into different sub-handwriting trajectories. For any two adjacent first and second trajectory points among the plurality of trajectory points, the module determines the trajectory point distance between the first and second trajectory points based on the positional difference between their trajectory point positions and the time difference between their trajectory point generation times. If the trajectory point distance is less than or equal to a second distance threshold, the first and second trajectory points are grouped into the same sub-handwriting trajectory. If the distance between the trajectory points is greater than the second distance threshold, the first trajectory point and the second trajectory point are divided into different sub-handwritten trajectories.
[0293] It should be noted that the expression processing system provided in the above embodiments is only illustrated by the division of the above functional modules. In practical applications, the above functions can be assigned to different functional modules as needed, that is, the internal structure of the interactive device can be divided into different functional modules to complete all or part of the functions described above. In addition, the expression processing system and expression processing method embodiments provided in the above embodiments belong to the same concept, and their specific implementation process can be found in the method embodiments, which will not be repeated here.
[0294] The technical solution provided in this application displays the geometric shape input by the graphic input operation in response to the graphic input operation. In response to the expression input operation, it displays the target handwritten strokes input by the expression input operation. If the target handwritten strokes are geometric annotations of the geometric shape and meet the solution conditions, the attribute solution result is determined using the geometric shape and the target handwritten strokes. The attribute solution result is displayed, thereby achieving automatic solution of the attributes of the geometric shape and greatly improving the efficiency of geometric attribute solution.
[0295] Figure 20 is a schematic diagram of the structure of an interactive implementation device provided in an embodiment of this application. Typically, the interactive implementation device 2000 includes one or more processors 2001 and one or more memories 2002.
[0296] Processor 2001 may include one or more processing cores, such as a quad-core processor, an octa-core processor, etc. Processor 2001 may be implemented using at least one hardware form selected from DSP (Digital Signal Processing), FPGA (Field-Programmable Gate Array), and PLA (Programmable Logic Array). Processor 2001 may also include a main processor and a coprocessor. The main processor, also known as a CPU (Central Processing Unit), is used to process data in the wake-up state; the coprocessor is a low-power processor used to process data in the standby state. In some embodiments, processor 2001 may integrate a GPU (Graphics Processing Unit), which is responsible for rendering and drawing the content required to be displayed on the screen. In some embodiments, processor 2001 may also include an AI (Artificial Intelligence) processor, which is used to handle computational operations related to machine learning.
[0297] The memory 2002 may include one or more computer-readable storage media, which may be non-transitory. The memory 2002 may also include high-speed random access memory and non-volatile memory, such as one or more disk storage devices or flash memory devices. In some embodiments, the non-transitory computer-readable storage media in the memory 2002 are used to store at least one computer program, which is executed by the processor 2001 to implement the expression processing method provided in the method embodiments of this application.
[0298] In some embodiments, the interactive implementation device 2000 further includes a peripheral device interface 2003 and at least one peripheral device. The processor 2001, memory 2002, and peripheral device interface 2003 can be connected via a bus or signal lines. Each peripheral device can be connected to the peripheral device interface 2003 via a bus, signal lines, or a circuit board. Specifically, the peripheral device includes at least one of a radio frequency circuit 2004, a display screen 2005, a camera assembly 2006, an audio circuit 2007, and a power supply 2008.
[0299] Peripheral device interface 2003 can be used to connect at least one I / O (Input / Output) related peripheral device to processor 2001 and memory 2002. In some embodiments, processor 2001, memory 2002 and peripheral device interface 2003 are integrated on the same chip or circuit board; in some other embodiments, any one or two of processor 2001, memory 2002 and peripheral device interface 2003 can be implemented on separate chips or circuit boards, which is not limited in this embodiment.
[0300] The radio frequency (RF) circuit 2004 is used to receive and transmit RF (Radio Frequency) signals, also known as electromagnetic signals. The RF circuit 2004 communicates with communication networks and other communication devices via electromagnetic signals. The RF circuit 2004 converts electrical signals into electromagnetic signals for transmission, or converts received electromagnetic signals back into electrical signals. Optionally, the RF circuit 2004 includes: an antenna system, an RF transceiver, one or more amplifiers, a tuner, an oscillator, a digital signal processor, a codec chipset, a user identity module card, etc.
[0301] Display screen 2005 is used to display a UI (User Interface). This UI may include graphics, text, icons, video, and any combination thereof. When display screen 2005 is a touch screen, it also has the ability to collect touch signals on or above its surface. These touch signals can be input as control signals to processor 2001 for processing. In this case, display screen 2005 can also be used to provide virtual buttons and / or a virtual keyboard, also known as soft buttons and / or a soft keyboard.
[0302] The camera assembly 2006 is used to capture images or videos. Optionally, the camera assembly 2006 includes a front-facing camera and a rear-facing camera. Typically, the front-facing camera is located on the front panel of the interactive implementation device, and the rear-facing camera is located on the back of the interactive implementation device.
[0303] The audio circuit 2007 may include a microphone and a speaker. The microphone is used to collect sound waves from the user and the environment, and convert the sound waves into electrical signals that are input to the processor 2001 for processing, or input to the radio frequency circuit 2004 to realize voice communication.
[0304] The power supply 2008 is used to power the various components in the interactive implementation device 2000. The power supply 2008 can be AC power, DC power, a disposable battery, or a rechargeable battery.
[0305] In some embodiments, the interaction implementation device 2000 further includes one or more sensors 2009. The one or more sensors 2009 include, but are not limited to: an accelerometer 2010, a gyroscope 2011, a pressure sensor 2012, an optical sensor 2013, and a proximity sensor 2014.
[0306] The accelerometer 2010 can detect the magnitude of acceleration on the three coordinate axes of a coordinate system established by the interactive implementation device 2000.
[0307] The gyroscope sensor 2011 can interactively realize the body orientation and rotation angle of the device 2000. The gyroscope sensor 2011 can work in conjunction with the accelerometer sensor 2010 to collect user feedback and realize the 3D motion of the device 2000.
[0308] The pressure sensor 2012 can be installed on the side bezel of the interactive device 2000 and / or on the lower layer of the display screen 2005. When the pressure sensor 2012 is installed on the side bezel of the interactive device 2000, it can detect the user's grip signal on the interactive device 2000, and the processor 2001 can perform left / right hand recognition or quick operation based on the grip signal collected by the pressure sensor 2012. When the pressure sensor 2012 is installed on the lower layer of the display screen 2005, the processor 2001 can control the operable controls on the UI interface based on the user's pressure operation on the display screen 2005.
[0309] An optical sensor 2013 is used to collect ambient light intensity. In one embodiment, a processor 2001 can control the display brightness of a display screen 2005 based on the ambient light intensity collected by the optical sensor 2013.
[0310] The proximity sensor 2014 is used to collect the distance between the user and the front of the interactive device 2000.
[0311] Those skilled in the art will understand that the structure shown in FIG20 does not constitute a limitation on the interactive implementation device 2000, and may include more or fewer components than shown, or combine certain components, or use different component arrangements.
[0312] In an exemplary embodiment, a computer-readable storage medium is also provided, such as a memory including a computer program that can be executed by a processor to perform the processing method of the expression in the above embodiments. For example, the computer-readable storage medium may be a read-only memory (ROM), a random access memory (RAM), a compact disc read-only memory (CD-ROM), magnetic tape, floppy disk, and optical data storage device, etc.
[0313] In an exemplary embodiment, a computer program product or computer program is also provided, which includes program code stored in a computer-readable storage medium. The processor of the interactive implementation device reads the program code from the computer-readable storage medium and executes the program code, causing the interactive implementation device to perform the processing method of the above expression.
[0314] In some embodiments, the computer program involved in the present application embodiments may be deployed and executed on an interactive implementation device, or on multiple interactive implementation devices located in one location, or on multiple interactive implementation devices distributed in multiple locations and interconnected through a communication network. Multiple interactive implementation devices distributed in multiple locations and interconnected through a communication network may constitute a blockchain system.
[0315] Those skilled in the art will understand that all or part of the steps of the above embodiments can be implemented by hardware or by a program instructing related hardware. The program can be stored in a computer-readable storage medium, such as a read-only memory, a disk, or an optical disk.
[0316] The above are merely optional embodiments of this application and are not intended to limit this application. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of this application should be included within the protection scope of this application.
Claims
1. A method for processing expressions, characterized in that, The method includes: In response to a graphical input operation, the geometric shape input by the graphical input operation is displayed; In response to an expression input operation, the target handwritten handwriting input by the expression input operation is displayed; If the target handwritten handwriting is a geometric annotation of the geometric figure and meets the solution conditions, the attribute solution result of the geometric figure is determined based on the geometric figure and the target handwritten handwriting. Display the solution results for the stated attributes.
2. The method according to claim 1, characterized in that, Before determining the attribute solution result of the geometric figure based on the geometric figure and the target handwritten handwriting, when the target handwritten handwriting is a geometric annotation of the geometric figure and meets the solution conditions, the method further includes: Determine the display position and content of the target handwritten handwriting; Based on the display position and content of the target handwritten handwriting, determine whether the target handwritten handwriting is a geometric annotation of the geometric figure.
3. The method according to claim 2, characterized in that, The step of determining whether the target handwritten handwriting is a geometric annotation of the geometric figure based on the display position and content of the target handwritten handwriting includes: If the display position of the target handwritten handwriting falls within the preset area of the geometric shape and the handwriting content of the target handwritten handwriting is a preset form of handwriting content, then the target handwritten handwriting is determined to be a geometric annotation of the geometric shape. Alternatively, if the display position of the target handwritten handwriting does not fall within the preset area of the geometric shape, or if the handwriting content of the target handwritten handwriting is not the preset form of handwriting content, then it is determined that the target handwritten handwriting is not a geometric annotation of the geometric shape.
4. The method according to claim 2, characterized in that, Determining the display position and content of the target handwritten handwriting includes: The position of the bounding rectangle of the target handwriting is determined as the display position of the target handwriting; The target handwriting is subjected to expression recognition to obtain the target expression corresponding to the target handwriting. The target expression is subjected to symbol recognition to obtain the symbol recognition result of the target expression; The symbol recognition result of the target expression is determined as the handwriting content of the target handwriting.
5. The method according to claim 4, characterized in that, The method further includes: If the symbol recognition result of the target expression indicates that all symbols in the target expression are numerical symbols, the handwriting content of the target handwriting is determined to be handwriting content in a preset form; Alternatively, if the symbol recognition result of the target expression indicates that there are non-numerical symbols in the target expression, it is determined that the handwriting content of the target handwriting is not a preset form of handwriting content.
6. The method according to claim 1, characterized in that, Before determining the attribute solution result of the geometric figure based on the geometric figure and the target handwritten handwriting, when the target handwritten handwriting is a geometric annotation of the geometric figure and meets the solution conditions, the method further includes: Determine the graphic type of the geometric figure; If the geometric shape is of a preset shape type, determine whether the target handwritten handwriting is a geometric annotation of the geometric shape.
7. The method according to claim 6, characterized in that, The method further includes: If the geometric shape is not of the preset geometric shape type, the target handwritten handwriting is determined to be a geometric annotation.
8. The method according to claim 1, characterized in that, The determination of the attribute solution result of the geometric shape based on the geometric shape and the target handwritten handwriting includes: Determine the target solution properties of the geometry; Based on the target solution attribute, the geometric figure, and the target handwritten handwriting, the attribute solution result corresponding to the target solution attribute is determined.
9. The method according to claim 8, characterized in that, The determination of the target solution attribute of the geometry corresponding to the attribute solution operation includes: If the solution condition is met, meaning that an attribute solution operation on the geometry is detected and the attribute solution operation is a symbol input operation, then the target symbol input by the symbol input operation is determined; and the solution attribute corresponding to the target symbol is determined as the target solution attribute. Alternatively, if the solution condition is met, meaning that an attribute solving operation on the geometry is detected and the attribute solving operation is a click operation on the attribute solving control, then at least one solveable attribute corresponding to the attribute solving control is determined; and the at least one solveable attribute is determined as the target solveable attribute. Alternatively, if the solution condition is met, meaning that the target handwritten handwriting and the geometric figure satisfy the attribute requirements of the preset attribute of the geometric figure, then the preset attribute is determined as the target solution attribute.
10. The method according to claim 8, characterized in that, The step of determining the attribute solution result corresponding to the target solution attribute based on the target solution attribute, the geometric figure, and the target handwritten handwriting includes: Determine at least one reference attribute of the geometry required to solve the target solution attribute, and target relation data, wherein the target relation data is used to represent the relationship between the at least one reference attribute and the target solution attribute; Obtain the attribute value of at least one reference attribute from the target expression corresponding to the geometric figure and the target handwritten handwriting; Substitute the attribute value of the at least one reference attribute into the target relation data to obtain the attribute solution result corresponding to the target solution attribute.
11. The method according to claim 1, characterized in that, The display of the attribute solution results includes: Handwriting is generated based on the target handwriting and the attribute solution results to obtain the target result handwriting. The target result handwriting is similar to or the same as the handwriting. The handwriting content of the target result handwriting is the attribute solution results. Display the handwriting of the target result.
12. The method according to claim 11, characterized in that, The handwriting generation process, based on the target handwriting input from the expression input operation and the attribute solution result, yields the target handwriting result, including: Determine the handwriting size and spacing corresponding to the target handwriting; generate handwriting based on the attribute solution results using the handwriting size and spacing to obtain the target handwriting, wherein the target handwriting has the same handwriting size and spacing as the handwriting. Alternatively, the target handwritten handwriting and the attribute solution result are input into a handwriting generation model, which extracts features from the target handwritten handwriting to obtain handwriting features; the handwriting generation model then generates handwriting based on the handwriting features and the attribute solution result to obtain the target result handwriting.
13. The method according to claim 1, characterized in that, Before determining the attribute solution result of the geometric figure based on the geometric figure and the target handwritten handwriting, when the target handwritten handwriting is a geometric annotation of the geometric figure and meets the solution conditions, the method further includes: If the target handwriting and the geometric shape satisfy the attribute requirements of the preset attributes of the geometric shape, then the solution conditions are met. Alternatively, in response to the property solving operation of the geometry, it is determined that the solution conditions are met.
14. The method according to claim 1, characterized in that, The method further includes: If the target handwriting is not a geometric annotation of the geometric figure, determine the expression type of the target expression corresponding to the target handwriting; Based on the expression type of the target expression, determine the expression processing method corresponding to the target expression; The target expression is processed according to the expression processing method described above to obtain the expression solution result of the target expression; Based on the expression type of the target expression, the solution result of the expression is displayed.
15. The method according to claim 14, characterized in that, The expression type for determining the target expression corresponding to the target handwriting includes: The target expression is identified as a variable to be determined; if a variable to be determined exists in the target expression, the expression type of the target expression is determined as a variable to be determined. Alternatively, the target expression can be identified as a function expression; if a function expression exists in the target expression, the expression type of the target expression can be determined as a function expression. Alternatively, the target expression can be identified using vertical calculation formulas; if vertical calculation formulas exist in the target expression, the expression type of the target expression can be determined as a vertical calculation formula. Alternatively, if there are no expressions to be solved, function expressions, or vertical calculation expressions in the target expression, the expression type of the target expression is determined to be a preset expression type.
16. The method according to claim 15, characterized in that, The process of identifying the expression to be determined in the target expression includes: Determine whether a first preset symbol exists in the target expression, where the first preset symbol is a symbol corresponding to the solving action; if the first preset symbol exists in the target expression and the first preset symbol satisfies a preset condition, determine that there is an expression to be solved in the target expression; otherwise, determine that there is no expression to be solved in the target expression. The step of identifying the function expression of the target expression includes: Determine whether a second preset symbol and a third preset symbol exist in the target expression, wherein the second preset symbol is a function symbol and the third preset symbol is an equal sign; if the second preset symbol and the third preset symbol exist in the target expression, determine that a function expression exists in the target expression; otherwise, determine that a function expression does not exist in the target expression. The vertical calculation recognition of the target expression includes: Determine whether a fourth preset symbol exists in the target expression, wherein the fourth preset symbol is a vertical calculation symbol; if the fourth preset symbol exists in the target expression, determine that a vertical calculation expression exists in the target expression; otherwise, determine that a vertical calculation expression does not exist in the target expression.
17. The method according to claim 14, characterized in that, The expression type for determining the target expression corresponding to the target handwriting includes: The target expression is subjected to symbol recognition and position recognition to obtain the symbol recognition result and position recognition result of the target expression; Based on the symbol recognition result and / or the position recognition result, the expression type of the target expression is determined.
18. The method according to claim 17, characterized in that, Determining the expression type of the target expression based on the symbol recognition result and / or the position recognition result includes: When the symbol recognition result indicates that a first preset symbol exists in the target expression and the first preset symbol satisfies a preset condition, the expression type of the target expression is determined to be a formula to be solved, and the first preset symbol is the symbol corresponding to the solving action; Alternatively, if the symbol recognition result indicates that the target expression contains a second preset symbol and a third preset symbol, the expression type of the target expression is determined to be a function expression, the second preset symbol is a function symbol, and the third preset symbol is an equal sign; Alternatively, if the symbol recognition result of the target expression indicates that a fourth preset symbol exists in the target expression, the expression type of the target expression is determined to be a vertical calculation expression, and the fourth preset symbol is a vertical solution symbol.
19. The method according to any one of claims 14 to 18, characterized in that, The step of determining the expression processing method corresponding to the target expression based on the expression type of the target expression includes: When the expression type of the target expression is an expression to be solved, the expression processing method corresponding to the expression type of the target expression is determined to solve the expression to be solved. Alternatively, if the expression type of the target expression is a function expression, the expression processing method corresponding to the expression type of the target expression is determined to be function image generation; Alternatively, if the expression type of the target expression is a vertical calculation expression, the expression processing method corresponding to the expression type of the target expression is determined to be solving a vertical calculation expression.
20. The method according to claim 19, characterized in that, The step of processing the target expression according to the expression processing method to obtain the expression solution result of the target expression includes: When the expression processing method is to solve the expression to be solved, determine whether there are variables in the target expression; if there are no variables in the target expression, perform numerical or symbolic calculations on the target expression to obtain the expression solution result of the target expression; if there are variables in the target expression, perform variable solving on the target expression to obtain the expression solution result of the target expression; or, if there are variables in the target expression, perform variable solving on the target expression and substitute the variable solving result into the first target sub-expression in the target expression to obtain the expression solution result of the target expression. Alternatively, if the expression processing method is function graph generation, the function graph is drawn based on the target expression to obtain the expression solution result of the target expression; Alternatively, if the expression processing method is to solve a vertical calculation expression, the vertical calculation method is determined based on the operator above the fourth preset symbol in the target expression; the vertical calculation method is used to calculate at least two sub-expressions in the target expression to obtain the expression solution result of the target expression.
21. The method according to claim 20, characterized in that, When variables exist in the target expression, the target expression is evaluated to obtain the expression evaluation result, including: If there are variables in the target expression, for any subexpression in the target expression, the number of first subexpressions required to solve the variables in the subexpression is determined based on the number of variables in the subexpression, and the number of first subexpressions is the same as the number of variables in the subexpression; A reference subexpression is obtained from the target expression to determine the number of the second subexpression, where the number of the second subexpression is the number of the first subexpression minus 1. Based on the subexpression and the reference subexpression of the second subexpression, the variables in the subexpression are evaluated to obtain the evaluation results of the variables in the subexpression; Once all variables in the target expression have been solved, the variable solution results in the target expression are determined as the expression solution results of the target expression.
22. The method according to claim 20, characterized in that, The step of plotting the function graph based on the target expression to obtain the expression solution result of the target expression includes: Determine the range of values for the independent variable in the target expression; The range of values for the target independent variable is determined from the range of values for the independent variable, wherein the range of values for the target independent variable is smaller than the range of values for the independent variable; The independent variable is sampled within the range of values of the target independent variable to obtain the sampling results; Based on the sampling results of the independent variables, the function graph of the target expression is plotted to obtain the expression solution result of the target expression.
23. The method according to claim 19, characterized in that, The expression type based on the target expression displays the expression solution result, including: Based on the expression type of the target expression, determine the target display position of the expression solution result; The solution result of the expression is displayed at the target display location.
24. The method according to claim 23, characterized in that, Determining the target display location of the expression solution result based on the expression type of the target expression includes: When the expression type of the target expression is an expression to be solved, the first preset distance range of the first preset symbol in the target handwriting is determined as the target display position, and the first preset symbol is the symbol corresponding to the solving action; Alternatively, if the expression type of the target expression is a function expression, the second preset distance range of the target handwriting is determined as the target display position; Alternatively, if the expression type of the target expression is a vertical calculation expression, the third preset distance range of the fourth preset symbol in the target handwriting is determined as the target display position, and the fourth preset symbol is a vertical solving symbol.
25. The method according to claim 23, characterized in that, Displaying the solution result of the expression at the target display location includes: If the result of solving the expression is a function image, the function image is displayed at the target display position; Alternatively, if the result of solving the expression is not a function graph, handwriting generation is performed on the result of solving the expression based on the target handwriting to obtain the target result handwriting, and the target result handwriting is similar to the handwriting; the target result handwriting is displayed at the target display position.
26. The method according to claim 14, characterized in that, Before processing the target expression according to the expression processing method to obtain the expression solution result of the target expression, the method further includes: The target expression is simplified to obtain a simplified target expression, which is the polynomial form of the original target expression. The step of processing the target expression according to the expression processing method to obtain the expression solution result of the target expression includes: The simplified target expression is processed according to the expression processing method described above to obtain the expression solution result of the target expression.
27. The method according to claim 14, characterized in that, Before determining the expression type of the target expression corresponding to the target handwriting, the method further includes: The target handwriting is segmented to obtain at least one sub-handwriting, and one sub-handwriting corresponds to one sub-expression in the target expression; Character recognition is performed on the at least one sub-handwritten handwriting to obtain the target expression.
28. The method according to claim 27, characterized in that, The segmentation of the target handwritten handwriting to obtain at least one sub-handwritten handwriting includes: Based on the trajectory position and trajectory generation time of multiple local trajectories in the target handwriting, the multiple local trajectories are clustered to obtain at least one sub-handwriting, and one sub-handwriting includes multiple local trajectories. Alternatively, based on the location of multiple trajectory points and the time of their generation on the target handwriting, the multiple trajectory points can be clustered to obtain at least one sub-handwriting.
29. The method according to claim 27, characterized in that, The step of clustering the multiple local trajectories based on their positions and generation times in the target handwriting to obtain at least one sub-handwriting includes: For any two adjacent first and second local trajectories among the plurality of local trajectories, the local trajectory distance between the first and second local trajectories is determined based on the positional difference between their trajectory positions and the time difference between their trajectory generation times. If the local trajectory distance is less than or equal to a first distance threshold, the first and second local trajectories are assigned to the same sub-handwriting trajectory. If the local trajectory distance is greater than the first distance threshold, the first and second local trajectories are assigned to different sub-handwriting trajectories. The step of clustering the multiple trajectory points based on their positions and generation times on the target handwriting to obtain at least one sub-handwriting includes: For any two adjacent first and second trajectory points among the plurality of trajectory points, the trajectory point distance between the first and second trajectory points is determined based on the positional difference between their positions and the time difference between their generation times. If the trajectory point distance is less than or equal to a second distance threshold, the first and second trajectory points are assigned to the same sub-handwriting trajectory. If the trajectory point distance is greater than the second distance threshold, the first and second trajectory points are assigned to different sub-handwriting trajectories.
30. An interactive implementation device, characterized in that, The interactive implementation device includes one or more processors and one or more memories, wherein the one or more memories store at least one computer program, which is loaded and executed by the one or more processors to implement the expression processing method as described in any one of claims 1 to 29.
31. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores at least one computer program, which is loaded and executed by a processor to implement the method for processing the expression as described in any one of claims 1 to 29.