Calligraphy practicing content recommendation method and device, cloud server and readable storage medium
Through cloud servers, personalized writing practice content is recommended based on user historical practice data, which solves the problems of low efficiency in calligraphy practice and inability to targeted practice in the existing technology, and achieves the effect of improving writing practice efficiency and interest.
Patent Information
- Application Number
- CN202311102032.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2023-08-29
- Publication Date
- 2025-02-28
AI Technical Summary
The existing calligraphy practice methods are inefficient. The fixed content and order of calligraphy practices make it boring for practitioners to effectively discover and practice their shortcomings in targeted practice.
The cloud server provides personalized recommendation methods for word practice content. According to the user's historical practice data, the word practice content containing different parts is determined and sent to the terminal device, so that users can practice for different parts.
It improves the efficiency and interest of calligraphy practice, and meets the needs of different users through personalized calligraphy practice content, helping users to discover and improve their shortcomings more effectively.
Smart Images

Figure CN119537674A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of intelligent calligraphy technology, and in particular to a method, device, cloud server and readable storage medium for recommending calligraphy practice content. Background Art
[0002] The existing calligraphy practice method is mainly to copy the paper copybooks uniformly formulated by experts. The practice content in the paper copybooks is the same and the practice order is generally strokes, radicals and characters. The fixed practice content and the single practice order can easily make the practitioners feel boring and reduce their interest in practicing calligraphy. In addition, after the practitioners complete the copying of the paper copybooks, they cannot accurately find their own shortcomings due to their limited level. Although professional teachers can correct the differences between the strokes or radicals of the copied characters and the standard characters, the fixed practice content makes it impossible for the practitioners to consolidate or practice in a targeted manner based on the different parts, resulting in low practice efficiency. Summary of the invention
[0003] The present application provides a method, device, cloud server and readable storage medium for recommending calligraphy practice content, which to a certain extent solves the technical problem of low efficiency of existing calligraphy practice methods.
[0004] In order to achieve the above objectives, this application adopts the following technical solutions:
[0005] In a first aspect, the present application provides a method for recommending calligraphy practice content, which is applied to a cloud server, and the method includes: receiving a calligraphy practice content recommendation request from a user sent by a terminal device; in response to the calligraphy practice content recommendation request, determining a pre-stored marked data set of the user, the marked data set including at least one difference part between at least one standard character that the user has practiced and a corresponding copied character; determining calligraphy practice content from a pre-stored standard character database based on the marked data set, the calligraphy practice content including at least one difference part; and sending the calligraphy practice content to the terminal device.
[0006] Based on the method for recommending calligraphy practice content provided by the present application, the cloud server can recommend calligraphy practice content containing the difference parts to the user based on the difference parts between the copied characters and the corresponding standard characters in the user's historical practice process, so that the user can conduct targeted practice on the difference parts, wherein the difference parts are not limited to the strokes and radicals in the characters, and can be any area in the characters, such as a partial area in the strokes or radicals or the interval area between two adjacent radicals. At the same time, based on this method, the cloud server can recommend personalized calligraphy practice content to different users based on the pre-stored labeled data sets of different users, meet the differentiated needs of different users when practicing calligraphy, and effectively improve the efficiency of users' calligraphy practice.
[0007] In one possible implementation, the content of the calligraphy practice is the standard characters to be copied; according to the marked data set, the content of the calligraphy practice is determined from a pre-stored standard character database, including: determining a candidate character set from the standard character database, the candidate character set including multiple candidate standard characters, each candidate standard character is different from the standard character practiced most recently by the user, and each candidate standard character includes the difference between the standard character practiced most recently by the user and the corresponding copying character; determining the standard character to be copied from the candidate character set.
[0008] Based on this method, when users are practicing writing single words, the cloud server can recommend standard words to be copied for the users to practice next time based on the different parts of the users' most recent practice. The standard words to be copied not only include the different parts of the users' most recent practice, allowing users to consolidate their practice on the different parts and improve the writing effect, but the standard words to be copied are different from the standard words the users practiced most recently, which can avoid users getting bored due to repeatedly practicing the same words and enhance their interest in writing.
[0009] In a possible implementation, determining the standard character to be copied from the candidate character set includes: determining a recommendation value for each candidate standard character; and determining a candidate standard character with the largest recommendation value in the candidate character set as the standard character to be copied.
[0010] In this way, the recommendation value of each candidate standard character can be determined according to the similarity between each candidate standard character and each difference part in the marked data set. That is, the more different difference parts in the marked data set are contained in the candidate standard character, the greater the recommendation value of the candidate standard character. This allows users to consolidate the deficiencies in the historical calligraphy practice process when practicing the standard character to be copied.
[0011] In a possible implementation, after sending the calligraphy practice content to the terminal device, the method further includes: receiving a first batch of modification requests sent by the terminal device, the first batch of modification requests including a first copying image of the user, the first copying image including a first copying character corresponding to the standard character to be copied; detecting the difference between the first copying character and the standard character to be copied according to the first batch of modification requests; and updating the marked data set according to the difference between the first copying character and the standard character to be copied.
[0012] In a possible implementation, the method further includes: marking an area in the first copy image where the difference between the first copy character and the standard character to be copied is located to obtain a first marked image; and sending the first marked image to a terminal device.
[0013] Based on this method, the cloud server can quickly and accurately detect the difference between the user's first copy and the standard character to be copied according to the image comparison algorithm, and annotate the area where the difference is located on the user's first copy image and then feed it back to the terminal device, so that the user can timely view the deficiencies in the first copy on the terminal device. At the same time, the cloud server can include the difference detected each time into the user's marked data set, so as to recommend new standard characters to be copied to the user based on the updated marked data set in the future.
[0014] In a possible implementation, after sending the calligraphy practice content to the terminal device, the method further includes: receiving a second copying image of the user sent by the terminal device, the second copying image including a first copying character corresponding to the standard character to be copied and a difference between the first copying character and the standard character to be copied; and updating the marked data set according to the difference between the first copying character and the standard character to be copied.
[0015] Based on this method, after the user completes practicing calligraphy, the user himself or the instructor can manually mark the difference between the user's first copied character and the standard character to be copied, and send the second copied image marked with the difference to the cloud server through the terminal device, so that the cloud server can include the difference in the second copied image into the user's marked data set after identifying the difference, and recommend new standard characters to be copied to the user based on the updated marked data set.
[0016] In one possible implementation, the content for practicing calligraphy is a text to be copied; based on a marked data set, the content for practicing calligraphy is determined from a pre-stored standard character database, including: determining from the standard character database at least one candidate standard character that the user has not practiced, each candidate standard character including at least one difference part in the marked data set; and generating the text to be copied based on at least one candidate standard character.
[0017] Based on this method, the cloud server can use the text generation algorithm to prepare personalized text copybooks for users based on all the difference parts in the marked data set. The characters in the text to be copied contain one or more difference parts in the marked data set. The text to be copied can maximize the use of the difference parts between all the standard characters that the user has practiced in the marked data and the corresponding copying characters. Compared with the existing calligraphy practice texts uniformly formulated by experts, the text to be copied generated based on this method is more in line with the user's weaknesses, allowing users to maximize the targeted practice of the difference parts in historical calligraphy practice, thereby improving the diversity of calligraphy practice content and calligraphy practice effects.
[0018] In one possible implementation, determining at least one candidate standard word that the user has not practiced from a standard word database includes: determining a candidate word set corresponding to each difference part from the standard word database, each candidate word set including at least one candidate standard word that the user has not practiced and has a corresponding difference part.
[0019] In a possible implementation, the text to be copied includes: at least one candidate standard character in each candidate character set, or at least one candidate standard character in each candidate character set and at least one standard character that the user has practiced.
[0020] In a possible implementation, after sending the calligraphy practice content to the terminal device, the method also includes: receiving a second correction request sent by the terminal device, the second correction request includes a third copying image of the user, the third copying image includes copying characters corresponding to the standard characters in the text to be copied; according to the second correction request, detecting the difference between the standard characters in the text to be copied and the corresponding copying characters; and updating the marked data set according to the difference between the standard characters in the text to be copied and the corresponding copying characters.
[0021] In a possible implementation, the method further includes: marking an area where the difference between the copied character and the corresponding standard character in the third copied image is located to obtain a second marked image; and sending the second marked image to a terminal device.
[0022] Based on this method, after receiving the second correction request, the cloud server can quickly and accurately detect the difference between the standard characters in the text to be copied and the corresponding copied characters based on the image comparison algorithm, and mark the area where each difference is located on the user's third copied image and then feed it back to the terminal device, so that the user can promptly check the deficiencies in the copied characters on the terminal device. At the same time, the cloud server can include the difference in the third copied image into the user's marked data set, so as to recommend new texts to be copied to the user based on the updated marked data set in the future.
[0023] In a possible implementation, after sending the calligraphy practice content to the terminal device, the method further includes: receiving a fourth copying image of the user sent by the terminal device, the fourth copying image including the difference between the copying character corresponding to the standard character in the text to be copied and the corresponding standard character; and updating the marked data set according to the difference between the copying character corresponding to the standard character in the text to be copied and the corresponding standard character.
[0024] Based on this method, after the user completes the practice of copying the text, the user himself or the instructor can manually mark the differences between the user's copied characters and the standard characters in the text to be copied, and send the fourth copy image marked with the difference parts to the cloud server through the terminal device, so that after the cloud server identifies one or more difference parts in the fourth copy image, it will include all the difference parts in the user's marked data set, and subsequently recommend new texts to be copied to the user based on the updated marked data set.
[0025] In a second aspect, the present application provides a device for recommending calligraphy practice content, the device comprising: at least one module, the at least one module being used to implement the calligraphy practice content recommendation method in any possible implementation manner of the first aspect.
[0026] In a third aspect, the present application provides a cloud server, comprising: a processor, the processor being used to run a computer program stored in a memory to implement the method for recommending calligraphy practice content in any possible implementation manner of the first aspect.
[0027] In a fourth aspect, the present application provides a computer-readable storage medium, which stores a computer program. When the computer program is executed by a processor, the method for recommending calligraphy practice content in any possible implementation of the first aspect is implemented.
[0028] In a fifth aspect, the present application provides a computer program product. When the computer program product is run on an electronic device, the electronic device executes the method for recommending calligraphy practice content in any possible implementation of the first aspect.
[0029] The technical effects of the second to fifth aspects provided in the present application can refer to the technical effects of the various possible implementation methods of the first aspect mentioned above, and will not be repeated here. BRIEF DESCRIPTION OF THE DRAWINGS
[0030] Figure 1 A schematic diagram of the structure of an electronic device provided in an embodiment of the present application.
[0031] Figure 2 A schematic diagram of the software structure of an electronic device provided in an embodiment of the present application.
[0032] Figure 3 A schematic diagram of the structure of a computing device provided in an embodiment of the present application.
[0033] Figure 4 A flowchart of a method for recommending calligraphy practice content provided in an embodiment of the present application.
[0034] Figure 5 A schematic diagram of a process for determining a standard character to be copied based on a marked data set provided in an embodiment of the present application.
[0035] Figure 6 A flowchart of a method for a cloud server to determine a standard character to be copied provided in an embodiment of the present application.
[0036] Figure 7 Another flowchart for determining a standard character to be copied based on a marked data set is provided in an embodiment of the present application.
[0037] Figure 8 Another flowchart for determining a standard character to be copied based on a marked data set is provided in an embodiment of the present application.
[0038] Fig. 9 Another flowchart for determining a standard character to be copied based on a marked data set is provided in an embodiment of the present application.
[0039] Fig.10 A flow chart of a method for updating a user's labeled data set provided in an embodiment of the present application.
[0040] Fig.11 A flowchart of another method for updating a user's labeled data set provided in an embodiment of the present application.
[0041] Fig.12 A flowchart of a method for a cloud server to determine a text to be copied provided in an embodiment of the present application.
[0042] Fig.13 A schematic diagram of a process for determining a text to be copied based on a labeled data set provided in an embodiment of the present application.
[0043] Fig.14 A flowchart of another method for updating a user's labeled data set provided in an embodiment of the present application.
[0044] Fig.15 A flowchart of another method for updating a user's labeled data set provided in an embodiment of the present application.
[0045] Fig.16 Another flowchart for determining a text to be copied based on a labeled data set is provided in an embodiment of the present application.
[0046] Fig.17 A schematic block diagram of a device for recommending calligraphy practice content provided in an embodiment of the present application. DETAILED DESCRIPTION
[0047] The technical solutions in the embodiments of the present application are described below in conjunction with the drawings and related embodiments in the embodiments of the present application. Among them, in the description of the embodiments of the present application, the terms used in the following embodiments are only for the purpose of describing specific embodiments, and are not intended to be used as limitations on the present application. As used in the specification and the appended claims of the present application, the singular expressions "a", "said", "above", "the" and "this" are intended to also include expressions such as "one or more", unless there is a clear indication to the contrary in the context. It should also be understood that in the following embodiments of the present application, "at least one", "one or more" refer to one or more (including two). The term "and / or" is used to describe the association relationship of associated objects, indicating that three relationships can exist; for example, A and / or B can represent: A exists alone, A and B exist at the same time, and B exists alone, where A and B can be singular or plural. The character " / " generally indicates that the associated objects before and after are in a "or" relationship.
[0048] References to "one embodiment" or "some embodiments" etc. described in this specification mean that one or more embodiments of the present application include specific features, structures or characteristics described in conjunction with the embodiment. Thus, the statements "in one embodiment", "in some embodiments", "in some other embodiments", "in some other embodiments", etc. that appear in different places in this specification do not necessarily refer to the same embodiment, but mean "one or more but not all embodiments", unless otherwise specifically emphasized in other ways. The terms "including", "comprising", "having" and their variations all mean "including but not limited to", unless otherwise specifically emphasized in other ways. The term "connection" includes direct connection and indirect connection, unless otherwise specified. "First" and "second" are used for descriptive purposes only and cannot be understood as indicating or implying relative importance or implicitly indicating the number of technical features indicated.
[0049] In the embodiments of the present application, the words "exemplarily" or "for example" are used to indicate examples, illustrations or explanations. Any embodiment or design described as "exemplarily" or "for example" in the embodiments of the present application should not be interpreted as being more preferred or more advantageous than other embodiments or designs. Specifically, the use of words such as "exemplarily" or "for example" is intended to present related concepts in a specific way.
[0050] The steps involved in the method for recommending calligraphy practice content provided in the embodiments of the present application are only examples, and not all steps are steps that must be performed, or not all information or content in the message is mandatory, and can be increased or decreased as needed during use. In the embodiments of the present application, the same step or steps or messages with the same function can be referenced and learned from each other in different embodiments.
[0051] The existing method of practicing calligraphy is mainly to copy paper copybooks uniformly formulated by experts. The practice content in paper copybooks is generally arranged in the order of strokes, radicals and characters. The fixed practice order can easily make the practitioner feel boring and reduce learning interest. In addition, everyone's practice style is different, and the fixed practice order is not suitable for every practitioner, and the practice effect is limited. In addition, after the practitioner completes the copying of the paper copybook, he may not be able to accurately find his own shortcomings due to his limited level. Although the practitioner can correct the differences in strokes and radicals in the copied characters through professional teachers, not every practitioner can afford the high cost of tutoring.
[0052] An existing intelligent calligraphy practice method is that the terminal device scans the user's handwriting, obtains the user's copying words and the corresponding template words, and extracts the font features of the copying words and the template words from multiple dimensions such as strokes, radicals, and structures, and then determines the similarity between the copying words and the template words through the extracted features, and scores the user's copying words based on the similarity, but the user cannot accurately and intuitively determine the deficiencies in the copying words, and conduct targeted practice based on the deficiencies, and the calligraphy practice effect is poor. Another existing intelligent calligraphy practice method is that the terminal device compromises the features of the copying words and the features of the template words extracted, and generates a new font with the same text but the font is between the copying words and the template words, so that the user's font after continuous practice is closer to the template font. Although this calligraphy practice method can recommend new practice fonts for users, the text of the new practice font is the text that the user has practiced, and the calligraphy practice content is single. In this intelligent calligraphy practice method, users need to repeatedly practice the text that they have practiced, and cannot accurately and intuitively perceive the deficiencies in the copying words, which makes users easily feel tired and the calligraphy practice efficiency is low.
[0053] In order to solve the above problems, the embodiments of the present application provide a method, device, cloud server and readable storage medium for recommending calligraphy practice content. The cloud server can determine the practice content containing at least one difference part from the standard character database based on the difference part between the standard characters practiced by the users and the corresponding copied characters, and send the practice content to the terminal device, so that the users can perform targeted practice on the difference part based on the recommended calligraphy practice content. The difference parts between the standard characters practiced by different users and the corresponding copied characters are different, and the corresponding recommended calligraphy practice contents are also different. Based on the method provided in the present application, personalized calligraphy practice content can be recommended to users to meet the calligraphy practice needs of different users, thereby effectively improving the calligraphy practice efficiency of users.
[0054] In the embodiment of the present application, the terminal device may be a mobile phone, a tablet computer, a laptop computer, an ultra-mobile personal computer (UMPC), a netbook, a personal digital assistant (PDA), a desktop computer or other electronic device. The embodiment of the present application does not impose any restrictions on the specific type of the terminal device.
[0055] The following first introduces the terminal device involved in the embodiment of the present application. Figure 1 , Figure 1 A schematic diagram of the structure of an electronic device 100 is shown. The terminal device involved in the embodiment of the present application can be Figure 1 The electronic device 100 shown is implemented.
[0056] The electronic device 100 may include a processor 110, an external memory interface 120, an internal memory 131, a universal serial bus (USB) interface 130, a charging management module 140, a power management module 141, a battery 142, an antenna 1, an antenna 2, a mobile communication module 150, a wireless communication module 160, an audio module 170, a speaker 170A, a receiver 170B, a microphone 170C, an earphone interface 170D, a sensor module 180, a button 190, a motor 191, an indicator 192, a camera 193, a display screen 194, and a subscriber identification module (SIM) card interface 195, etc. The sensor module 180 may include a pressure sensor 180A, a gyroscope sensor 180B, an air pressure sensor 180C, a magnetic sensor 180D, an acceleration sensor 180E, a distance sensor 180F, a proximity light sensor 180G, a fingerprint sensor 180H, a temperature sensor 180J, a touch sensor 180K, an ambient light sensor 180L, a bone conduction sensor 180M, etc.
[0057] It is to be understood that the structure illustrated in the embodiment of the present application does not constitute a specific limitation on the electronic device 100. In other embodiments of the present application, the electronic device 100 may include more or fewer components than shown in the figure, or combine some components, or split some components, or arrange the components differently. The components shown in the figure may be implemented in hardware, software, or a combination of software and hardware.
[0058] For example, when the electronic device 100 is a mobile phone or a tablet computer, it may include all the components shown in the figure, or may include only some of the components shown in the figure.
[0059] The processor 110 may include one or more processing units, for example: the processor 110 may include an application processor (application processor, AP), a modem processor, a graphics processor (graphics processing unit, GPU), an image signal processor (image signal processor, ISP), a controller, a memory, a video codec, a digital signal processor (digital signal processor, DSP), a baseband processor, and / or a neural-network processing unit (neural-network processing unit, NPU), etc. Among them, different processing units can be independent devices or integrated in one or more processors. Among them, the controller can be the nerve center and command center of the electronic device 100. The controller can generate an operation control signal according to the instruction opcode and the timing signal to complete the control of fetching and executing instructions.
[0060] The processor 110 may also be provided with a memory for storing instructions and data. In some embodiments, the memory in the processor 110 is a cache memory. The memory may store instructions or data that the processor 110 has just used or cyclically used. If the processor 110 needs to use the instruction or data again, it may be directly called from the memory. This avoids repeated access, reduces the waiting time of the processor 110, and thus improves the efficiency of the system.
[0061] In some embodiments, the processor 110 may include one or more interfaces. The interface may include an inter-integrated circuit (I2C) interface, an inter-integrated circuit sound (I2S) interface, a pulse code modulation (PCM) interface, a universal asynchronous receiver / transmitter (UART) interface, a mobile industry processor interface (MIPI), a general-purpose input / output (GPIO) interface, a subscriber identity module (SIM) interface, and / or a universal serial bus (USB) interface, etc.
[0062] The I2C interface is a bidirectional synchronous serial bus, including a serial data line (SDA) and a serial clock line (SCL). In some embodiments, the processor 110 may include multiple groups of I2C buses. The processor 110 may be coupled to the touch sensor 180K, the charger, the flash, the camera 193, etc. through different I2C bus interfaces. For example: the processor 110 may be coupled to the touch sensor 180K through the I2C interface, so that the processor 110 communicates with the touch sensor 180K through the I1C bus interface to realize the touch function of the electronic device 100.
[0063] The I1S interface can be used for audio communication. In some embodiments, the processor 110 can include multiple I2S buses. The processor 110 can be coupled to the audio module 170 via the I1S bus to achieve communication between the processor 110 and the audio module 170. In some embodiments, the audio module 170 can transmit audio signals to the wireless communication module 160 via the I1S interface.
[0064] The PCM interface can also be used for audio communication, sampling, quantizing and encoding analog signals. In some embodiments, the audio module 170 and the wireless communication module 160 can be coupled via a PCM bus interface.
[0065] In some embodiments, the audio module 170 may also transmit audio signals to the wireless communication module 160 via the PCM interface. Both the I2S interface and the PCM interface may be used for audio communication.
[0066] The UART interface is a universal serial data bus used for asynchronous communication. The bus can be a bidirectional communication bus. It converts the data to be transmitted between parallel communication and parallel communication.
[0067] In some embodiments, the UART interface is generally used to connect the processor 110 and the wireless communication module 160. For example, the processor 110 communicates with the Bluetooth module in the wireless communication module 160 through the UART interface to implement the Bluetooth function. In some embodiments, the audio module 170 can transmit audio signals to the wireless communication module 160 through the UART interface to implement the function of playing music through a Bluetooth headset.
[0068] The MIPI interface can be used to connect the processor 110 with peripheral devices such as the display screen 194 and the camera 193. The MIPI interface includes a camera serial interface (CSI), a display serial interface (DSI), etc. In some embodiments, the processor 110 and the camera 193 communicate via the CSI interface to implement the shooting function of the electronic device 100. The processor 110 and the display screen 194 communicate via the DSI interface to implement the display function of the electronic device 100.
[0069] The GPIO interface can be configured by software. The GPIO interface can be configured as a control signal or as a data signal. In some embodiments, the GPIO interface can be used to connect the processor 110 with the camera 193, the display 194, the wireless communication module 160, the audio module 170, the sensor module 180, etc. The GPIO interface can also be configured as an I2C interface, an I2S interface, a UART interface, a MIPI interface, etc.
[0070] The USB interface 130 is an interface that complies with the USB standard specification, and specifically can be a Mini USB interface, a Micro USB interface, a USB Type C interface, etc. The USB interface 130 can be used to connect a charger to charge the electronic device 100, and can also be used to transfer data between the electronic device 100 and a peripheral device. It can also be used to connect headphones to play audio through the headphones. The interface can also be used to connect other electronic devices, such as AR devices, etc.
[0071] It is understandable that the interface connection relationship between the modules illustrated in the embodiment of the present application is only a schematic illustration and does not constitute a structural limitation on the electronic device 100. In other embodiments of the present application, the electronic device 100 may also adopt different interface connection methods in the above embodiments, or a combination of multiple interface connection methods.
[0072] The charging management module 140 is used to receive charging input from a charger. The charger may be a wireless charger or a wired charger. In some wired charging embodiments, the charging management module 140 may receive charging input from a wired charger through the USB interface 130. In some wireless charging embodiments, the charging management module 140 may receive wireless charging input through a wireless charging coil of the electronic device 100. While the charging management module 140 is charging the battery 142, it may also power the electronic device through the power management module 141.
[0073] The power management module 141 is used to connect the battery 142, the charging management module 140 and the processor 110. The power management module 141 receives input from the battery 142 and / or the charging management module 140, and supplies power to the processor 110, the internal memory 131, the external memory interface 120, the display screen 194, the camera 193, and the wireless communication module 160. The power management module 141 can also be used to monitor parameters such as battery capacity, battery cycle number, and battery health status (leakage, impedance).
[0074] In some other embodiments, the power management module 141 may also be disposed in the processor 110. In some other embodiments, the power management module 141 and the charging management module 140 may also be disposed in the same device.
[0075] The wireless communication function of the electronic device 100 can be implemented through the antenna 1, the antenna 2, the mobile communication module 150, the wireless communication module 160, the modem processor and the baseband processor.
[0076] Antenna 1 and antenna 2 are used to transmit and receive electromagnetic wave signals. Each antenna in electronic device 100 can be used to cover a single or multiple communication frequency bands. Different antennas can also be reused to improve the utilization of antennas. For example, antenna 1 can be reused as a diversity antenna for a wireless local area network. In some other embodiments, the antenna can be used in combination with a tuning switch.
[0077] The mobile communication module 150 can provide solutions for wireless communications including 2G / 3G / 4G / 5G, etc., applied to the electronic device 100. The mobile communication module 150 may include at least one filter, a switch, a power amplifier, a low noise amplifier (LNA), etc. The mobile communication module 150 can receive electromagnetic waves from the antenna 1, and filter, amplify, etc. the received electromagnetic waves, and transmit them to the modulation and demodulation processor for demodulation. The mobile communication module 150 can also amplify the signal modulated by the modulation and demodulation processor, and convert it into electromagnetic waves for radiation through the antenna 1.
[0078] In some embodiments, at least some functional modules of the mobile communication module 150 may be disposed in the processor 110. In some embodiments, at least some functional modules of the mobile communication module 150 may be disposed in the same device as at least some modules of the processor 110.
[0079] The modem processor may include a modulator and a demodulator. Among them, the modulator is used to modulate the low-frequency baseband signal to be sent into a medium-high frequency signal. The demodulator is used to demodulate the received electromagnetic wave signal into a low-frequency baseband signal. The demodulator then transmits the demodulated low-frequency baseband signal to the baseband processor for processing. After the low-frequency baseband signal is processed by the baseband processor, it is passed to the application processor. The application processor outputs a sound signal through an audio device (not limited to a speaker 170A, a receiver 170B, etc.), or displays an image or video through a display screen 194. In some embodiments, the modem processor may be an independent device. In other embodiments, the modem processor may be independent of the processor 110 and be set in the same device as the mobile communication module 150 or other functional modules.
[0080] The wireless communication module 160 can provide wireless communication solutions including wireless local area networks (WLAN) (such as wireless fidelity (Wi-Fi) networks), bluetooth (BT), global navigation satellite system (GNSS), frequency modulation (FM), near field communication (NFC), infrared (IR), etc., which are applied to the electronic device 100. The wireless communication module 160 can be one or more devices integrating at least one communication processing module. The wireless communication module 160 receives electromagnetic waves via the antenna 2, modulates the frequency of the electromagnetic wave signal and performs filtering, and sends the processed signal to the processor 110. The wireless communication module 160 can also receive the signal to be sent from the processor 110, modulate the frequency of it, amplify it, and convert it into electromagnetic waves for radiation through the antenna 2.
[0081] In some embodiments, the antenna 1 of the electronic device 100 is coupled to the mobile communication module 150, and the antenna 2 is coupled to the wireless communication module 160, so that the electronic device 100 can communicate with the network and other devices through wireless communication technology. The wireless communication technology may include global system for mobile communications (GSM), general packet radio service (GPRS), code division multiple access (CDMA), wideband code division multiple access (WCDMA), time-division code division multiple access (TD-SCDMA), long term evolution (LTE), BT, GNSS, WLAN, NFC, FM, and / or IR technology, etc. GNSS may include the global positioning system (GPS), the global navigation satellite system (GLONASS), the Beidou navigation satellite system (BDS), the quasi-zenith satellite system (QZSS) and / or the satellite based augmentation system (SBAS).
[0082] The electronic device 100 implements the display function through a GPU, a display screen 194, and an application processor. The GPU is a microprocessor for image processing, which connects the display screen 194 and the application processor. The GPU is used to perform mathematical and geometric calculations for graphics rendering. The processor 110 may include one or more GPUs that execute program instructions to generate or change display information.
[0083] The display screen 194 is used to display images, videos, etc. For example, the first lighting diagram and the second lighting diagram in the embodiment of the present application. The display screen 194 includes a display panel. The display panel can be a liquid crystal display (LCD), an organic light-emitting diode (OLED), an active-matrix organic light-emitting diode or an active-matrix organic light-emitting diode (AMOLED), a flexible light-emitting diode (FLED), Miniled, MicroLed, Micro-oLed, a quantum dot light emitting diode (QLED), etc. In some embodiments, the electronic device 100 may include 1 or N display screens 194, where N is a positive integer greater than 1.
[0084] The electronic device 100 can realize the shooting function through ISP, camera 193, video codec, GPU, display screen 194 and application processor.
[0085] ISP is used to process the data fed back by camera 193. For example, when taking a photo, the shutter is opened, and the light is transmitted to the camera photosensitive element through the lens. The light signal is converted into an electrical signal, and the camera photosensitive element transmits the electrical signal to ISP for processing and converts it into an image visible to the naked eye. ISP can also perform algorithm optimization on the noise, brightness, and skin color of the image. ISP can also optimize the exposure, color temperature and other parameters of the shooting scene. In some embodiments, ISP can be set in camera 193.
[0086] Camera 193 is used to capture still images or videos. The object generates an optical image through the lens and is projected onto the photosensitive element. The focal length of the lens can be used to indicate the field of view of the camera. The smaller the focal length of the lens, the larger the field of view of the lens. The photosensitive element can be a charge coupled device (CCD) or a complementary metal-oxide-semiconductor (CMOS) phototransistor. The photosensitive element converts the light signal into an electrical signal, and then passes the electrical signal to the ISP for conversion into a digital image signal. The ISP outputs the digital image signal to the DSP for processing. The DSP converts the digital image signal into an image signal in standard RGB, YUV and other formats.
[0087] In the present application, the electronic device 100 may include cameras 193 with 2 or more focal lengths.
[0088] The digital signal processor is used to process digital signals, and can process not only digital image signals but also other digital signals. For example, when the electronic device 100 is selecting a frequency point, the digital signal processor is used to perform Fourier transform on the frequency point energy.
[0089] Video codecs are used to compress or decompress digital videos. The electronic device 100 may support one or more video codecs. Thus, the electronic device 100 may play or record videos in a variety of coding formats, such as Moving Picture Experts Group (MPEG) 1, MPEG1, MPEG3, MPEG4, etc.
[0090] NPU is a neural network (NN) computing processor. By drawing on the structure of biological neural networks, such as the transmission mode between neurons in the human brain, it can quickly process input information and can also continuously self-learn. Through NPU, applications such as intelligent cognition of electronic device 100 can be realized, such as image recognition, face recognition, voice recognition, text understanding, etc.
[0091] In an embodiment of the present application, the NPU or other processors may be used to perform operations such as analyzing and processing images in a video stored in the electronic device 100 .
[0092] The external memory interface 120 can be used to connect an external memory card, such as a Micro SD card, to expand the storage capacity of the electronic device 100. The external memory card communicates with the processor 110 through the external memory interface 120 to implement a data storage function, such as storing music, video and other files in the external memory card.
[0093] The internal memory 131 can be used to store computer executable program codes, and the executable program codes include instructions. The processor 110 executes various functional applications and data processing of the electronic device 100 by running the instructions stored in the internal memory 131. The internal memory 131 may include a program storage area and a data storage area. Among them, the program storage area can store an operating system, an application required for at least one function (such as a sound playback function, an image playback function, etc.). The data storage area can store data created during the use of the electronic device 100 (such as audio data, a phone book, etc.).
[0094] In addition, the internal memory 131 may include a high-speed random access memory and may also include a non-volatile memory, such as at least one disk storage device, a flash memory device, a universal flash storage (UFS), etc.
[0095] The electronic device 100 can implement audio functions through the audio module 170, the speaker 170A, the receiver 170B, the microphone 170C, the headphone jack 170D, and the application processor.
[0096] The audio module 170 is used to convert digital audio signals into analog audio signals for output, and is also used to convert analog audio inputs into digital audio signals. The audio module 170 can also be used to encode and decode audio signals. In some embodiments, the audio module 170 can be arranged in the processor 110, or some functional modules of the audio module 170 can be arranged in the processor 110.
[0097] The speaker 170A, also called a "speaker", is used to convert audio electrical signals into sound signals. The electronic device 100 can listen to music or listen to hands-free calls through the speaker 170A. For example, the speaker can play the comparison analysis results provided in the embodiment of the present application.
[0098] The receiver 170B, also called a "earpiece", is used to convert audio electrical signals into sound signals. When the electronic device 100 receives a call or voice message, the voice can be received by placing the receiver 170B close to the human ear.
[0099] Microphone 170C, also called "microphone" or "microphone", is used to convert sound signals into electrical signals. When making a call or sending a voice message, the user can speak by putting their mouth close to microphone 170C to input the sound signal into microphone 170C. The electronic device 100 can be provided with at least one microphone 170C. In other embodiments, the electronic device 100 can be provided with two microphones 170C, which can not only collect sound signals but also realize noise reduction function. In other embodiments, the electronic device 100 can also be provided with three, four or more microphones 170C to collect sound signals, reduce noise, identify the sound source, realize directional recording function, etc.
[0100] The earphone interface 170D is used to connect a wired earphone and can be a USB interface 130 or a 3.5 mm open mobile terminal platform (OMTP) standard interface or a cellular telecommunications industry association of the USA (CTIA) standard interface.
[0101] The pressure sensor 180A is used to sense the pressure signal and can convert the pressure signal into an electrical signal. In some embodiments, the pressure sensor 180A can be set on the display screen 194. There are many types of pressure sensors 180A, such as resistive pressure sensors, inductive pressure sensors, capacitive pressure sensors, etc. A capacitive pressure sensor can be a parallel plate including at least two conductive materials. When a force acts on the pressure sensor 180A, the capacitance between the electrodes changes. The electronic device 100 determines the intensity of the pressure based on the change in capacitance. When a touch operation acts on the display screen 194, the electronic device 100 detects the intensity of the touch operation based on the pressure sensor 180A. The electronic device 100 can also calculate the position of the touch based on the detection signal of the pressure sensor 180A. In some embodiments, touch operations acting on the same touch position but with different touch operation intensities can correspond to different operation instructions.
[0102] The gyro sensor 180B can be used to determine the motion posture of the electronic device 100. In some embodiments, the angular velocity of the electronic device 100 around three axes (i.e., x, y, and z axes) can be determined by the gyro sensor 180B. The gyro sensor 180B can be used for anti-shake shooting. For example, when the shutter is pressed, the gyro sensor 180B detects the angle of the electronic device 100 shaking, calculates the distance that the lens module needs to compensate based on the angle, and allows the lens to offset the shaking of the electronic device 100 through reverse movement to achieve anti-shake. The gyro sensor 180B can also be used for navigation and somatosensory game scenes.
[0103] The air pressure sensor 180C is used to measure air pressure. In some embodiments, the electronic device 100 calculates the altitude through the air pressure value measured by the air pressure sensor 180C to assist positioning and navigation.
[0104] The magnetic sensor 180D includes a Hall sensor. The electronic device 100 can use the magnetic sensor 180D to detect the opening and closing of the flip leather case. In some embodiments, when the electronic device 100 is a flip phone, the electronic device 100 can detect the opening and closing of the flip cover according to the magnetic sensor 180D. Then, according to the detected opening and closing state of the leather case or the opening and closing state of the flip cover, the flip cover can be automatically unlocked.
[0105] The acceleration sensor 180E can detect the magnitude of the acceleration of the electronic device 100 in all directions (generally three axes). When the electronic device 100 is stationary, the magnitude and direction of gravity can be detected. It can also be used to identify the posture of the electronic device and is applied to applications such as horizontal and vertical screen switching and pedometers.
[0106] The distance sensor 180F is used to measure the distance. The electronic device 100 can measure the distance by infrared or laser. In some embodiments, when shooting a scene, the electronic device 100 can use the distance sensor 180F to measure the distance to achieve fast focusing.
[0107] The proximity light sensor 180G may include, for example, a light emitting diode (LED) and a light detector, such as a photodiode. The light emitting diode may be an infrared light emitting diode. The electronic device 100 emits infrared light outward through the light emitting diode. The electronic device 100 uses a photodiode to detect infrared reflected light from nearby objects. When sufficient reflected light is detected, it can be determined that there is an object near the electronic device 100. When insufficient reflected light is detected, the electronic device 100 can determine that there is no object near the electronic device 100. The electronic device 100 can use the proximity light sensor 180G to detect that the user holds the electronic device 100 close to the ear to talk, so as to automatically turn off the screen to save power. The proximity light sensor 180G can also be used in leather case mode and pocket mode to automatically unlock and lock the screen.
[0108] The ambient light sensor 180L is used to sense the ambient light brightness. The electronic device 100 can adaptively adjust the brightness of the display screen 194 according to the perceived ambient light brightness. The ambient light sensor 180L can also be used to automatically adjust the white balance when taking pictures. The ambient light sensor 180L can also cooperate with the proximity light sensor 180G to detect whether the electronic device 100 is in a pocket to prevent accidental touches.
[0109] The fingerprint sensor 180H is used to collect fingerprints. The electronic device 100 can use the collected fingerprint characteristics to implement fingerprint unlocking, access application locks, fingerprint photography, fingerprint call answering, etc.
[0110] The temperature sensor 180J is used to detect temperature. In some embodiments, the electronic device 100 uses the temperature detected by the temperature sensor 180J to execute a temperature processing strategy. For example, when the temperature reported by the temperature sensor 180J exceeds a threshold, the electronic device 100 reduces the performance of a processor located near the temperature sensor 180J to reduce power consumption and implement thermal protection. In other embodiments, when the temperature is lower than another threshold, the electronic device 100 heats the battery 142 to avoid abnormal shutdown of the electronic device 100 due to low temperature. In other embodiments, when the temperature is lower than another threshold, the electronic device 100 performs a boost on the output voltage of the battery 142 to avoid abnormal shutdown caused by low temperature.
[0111] The touch sensor 180K is also called a "touch panel". The touch sensor 180K can be set on the display screen 194, and the touch sensor 180K and the display screen 194 form a touch screen, also called a "touch screen". The touch sensor 180K is used to detect touch operations acting on or near it. The touch sensor can pass the detected touch operation to the application processor to determine the type of touch event. Visual output related to the touch operation can be provided through the display screen 194. In other embodiments, the touch sensor 180K can also be set on the surface of the electronic device 100, which is different from the position of the display screen 194.
[0112] The bone conduction sensor 180M can obtain vibration signals. In some embodiments, the bone conduction sensor 180M can obtain vibration signals of vibrating bones of the human body. The bone conduction sensor 180M can also contact the human body's pulse to receive blood pressure beating signals.
[0113] In some embodiments, the bone conduction sensor 180M can also be set in the earphone to form a bone conduction earphone. The audio module 170 can parse the voice signal based on the vibration signal of the vocal bone obtained by the bone conduction sensor 180M to realize the voice function. The application processor can parse the heart rate information based on the blood pressure beat signal obtained by the bone conduction sensor 180M to realize the heart rate detection function.
[0114] The key 190 includes a power key, a volume key, etc. The key 190 may be a mechanical key or a touch key. The electronic device 100 may receive key input and generate key signal input related to user settings and function control of the electronic device 100.
[0115] Motor 191 can generate vibration prompts. Motor 191 can be used for incoming call vibration prompts, and can also be used for touch vibration feedback. For example, touch operations acting on different applications (such as taking pictures, audio playback, etc.) can correspond to different vibration feedback effects. For touch operations acting on different areas of the display screen 194, motor 191 can also correspond to different vibration feedback effects. Different application scenarios (for example: time reminders, receiving messages, alarm clocks, games, etc.) can also correspond to different vibration feedback effects. The touch vibration feedback effect can also support customization.
[0116] Indicator 192 may be an indicator light, which may be used to indicate charging status, power changes, messages, missed calls, notifications, etc.
[0117] The SIM card interface 195 is used to connect a SIM card. The SIM card can be connected to and separated from the electronic device 100 by inserting it into the SIM card interface 195 or pulling it out from the SIM card interface 195. The electronic device 100 can support 1 or N SIM card interfaces, where N is a positive integer greater than 1. The SIM card interface 195 can support Nano SIM cards, Micro SIM cards, SIM cards, and the like. Multiple cards can be inserted into the same SIM card interface 195 at the same time. The types of the multiple cards can be the same or different. The SIM card interface 195 can also be compatible with different types of SIM cards. The SIM card interface 195 can also be compatible with external memory cards. The electronic device 100 interacts with the network through the SIM card to implement functions such as calls and data communications. In some embodiments, the electronic device 100 uses an eSIM, i.e., an embedded SIM card. The eSIM card can be embedded in the electronic device 100 and cannot be separated from the electronic device 100.
[0118] See also Figure 2 , which is a schematic diagram of the software structure of the electronic device of the embodiment of the present application. The operating system in the electronic device may be an Android system, a Microsoft Windows system (Windows), an Apple mobile operating system (iOS) or a Harmony OS, etc. Here, the operating system of the electronic device is taken as an example for explanation.
[0119] In some embodiments, the Hongmeng system can be divided into four layers, including the kernel layer, the system service layer, the framework layer, and the application layer, and the layers communicate with each other through software interfaces.
[0120] like Figure 2 As shown in the figure, the kernel layer includes the kernel abstract layer (KAL) and the driver subsystem. KAL includes multiple kernels, such as the Linux kernel of the Linux system and the LiteOS kernel of the lightweight IoT system. The driver subsystem can include the hardware driver framework (HDF). The hardware driver framework can provide unified peripheral access capabilities and a driver development and management framework. The kernel layer of multiple kernels can select the corresponding kernel for processing according to the needs of the system.
[0121] The system service layer is the core capability set of the Hongmeng system, and provides services to applications through the framework layer. This layer may include the system basic capability subsystem set, the basic software service subsystem set, the enhanced software service subsystem set, and the hardware service subsystem set.
[0122] The system basic capability subsystem set provides basic capabilities for the operation, scheduling, migration and other operations of distributed applications on devices of the Hongmeng system. It may include subsystems such as distributed soft bus, distributed data management, distributed task scheduling, Ark multi-language runtime, public basic library, multi-mode input, graphics, security, artificial intelligence (AI), user program framework, etc. Among them, the Ark multi-language runtime provides C or C++ or JavaScript (JS) multi-language runtime and basic system class libraries, and can also provide runtime for Java programs statically compiled using the Ark compiler (that is, the part developed in Java language in the application or framework layer).
[0123] The basic software service subsystem set provides public and general software services for the Hongmeng system, including event notification, telephone, multimedia, Design For X (DFX), MSDP&DV and other subsystems.
[0124] The enhanced software service subsystem set provides the Hongmeng system with differentiated capability-enhanced software services for different devices, including smart screen proprietary services, wearable proprietary services, and Internet of Things (IoT) proprietary service subsystems.
[0125] The hardware service subsystem set provides hardware services for the Hongmeng system, including location services, biometric recognition, wearable proprietary hardware services, IoT proprietary hardware services and other subsystems.
[0126] The framework layer provides multi-language user program frameworks and capability frameworks in Java, C, C++, JS, and other languages for Hongmeng system application development, two user interface (UI) frameworks (including the JavaUI framework for Java language and the JS UI framework for JS language), and multi-language framework application programming interfaces (APIs) open to various software and hardware services. Depending on the degree of componentization of the system, the APIs supported by Hongmeng system devices will also vary.
[0127] The application layer includes system applications and third-party applications (or extended applications). System applications may include applications installed by default on electronic devices such as the desktop, control bar, settings, and phone. Extended applications can be non-essential applications developed and designed by the manufacturer of the electronic device, such as electronic device managers, device migration, notes, weather, and other applications. Third-party non-system applications can be developed by other manufacturers, but can run applications in the Hongmeng system, such as games, navigation, social or shopping applications.
[0128] Provides the ability to run background tasks and unified data access abstraction. PA mainly provides support for FA, such as providing computing power as a background service, or providing data access capabilities as a data warehouse. Applications developed based on FA or PA can implement specific business functions, support cross-device scheduling and distribution, and provide users with a consistent and efficient application experience.
[0129] Multiple electronic devices running the Hongmeng system can achieve hardware mutual assistance and resource sharing through distributed soft bus, distributed device virtualization, distributed data management and distributed task scheduling.
[0130] The cloud server involved in the embodiments of the present application may be a computing device such as an ultra-mobile personal computer (UMPC). Figure 3 , Figure 3 A schematic diagram of the structure of a computing device is shown. The cloud server involved in the embodiment of the present application can be Figure 3 The computing device 300 shown is implemented.
[0131] like Figure 3 As shown, the computing device 300 may include at least one processor 301, a communication bus 302, a memory 303, and at least one communication interface 304. It should be noted that: Figure 3 The device structure shown does not constitute a limitation on the computing device 300. The computing device 300 may include more or fewer components than shown, or combine certain components, or arrange the components differently, which is not limited in the present embodiment. Figure 3 The components of the computing device 300 are described in detail:
[0132] The processor 301 is the control center of the computing device 300, which can be a processor or a general term for multiple processing elements. For example, the processor 301 can be a general-purpose central processing unit (CPU), or an application-specific integrated circuit (ASIC), or one or more integrated circuits used to control the execution of the program of the present application, such as: one or more microprocessors (digital signal processor, DSP), or, one or more field programmable gate arrays (field programmable gate array, FPGA). The processor 301 can execute various functions of the computing device 300 by running or executing software programs stored in the memory 303, and calling data stored in the memory 303. For example, Figures 4 to 14 In the embodiment shown, the actions of the cloud server can be executed by calling the data in the memory through the processor of the corresponding device.
[0133] As an embodiment, the processor 301 may include one or more CPUs, such as Figure 3 CPU0 and CPU1 are shown in the figure.
[0134] As an example, the computing device 300 may include multiple processors, such as Figure 3 301 and processor 305 shown in FIG. Each of these processors may be a single-CPU processor or a multi-CPU processor. A processor herein may refer to one or more devices, circuits, and / or processing cores for processing data (e.g., computer program instructions).
[0135] The communication bus 302 may include a path to transmit information between the above components. The communication bus 302 may be an industry standard architecture (ISA) bus, a peripheral component interconnect (PCI) bus, or an extended industry standard architecture (EISA) bus. The bus may be divided into an address bus, a data bus, a control bus, etc. For ease of representation, Figure 3 Only one thick line is used in the diagram, but this does not mean that there is only one bus or only one type of bus.
[0136] The memory 303 may be a read-only memory (ROM) or other types of static storage devices that can store static information and instructions, a random access memory (RAM) or other types of dynamic storage devices that can store information and instructions, or an electrically erasable programmable read-only memory (EEPROM), a compact disc read-only memory (CD-ROM) or other optical disc storage, optical disc storage (including compressed optical disc, laser disc, optical disc, digital versatile disc, Blu-ray disc, etc.), a magnetic disk storage medium or other magnetic storage device, or any other medium that can be used to carry or store the desired program code in the form of an instruction or data structure and can be accessed by a computer, but is not limited thereto. The memory 303 may exist independently and be connected to the processor 301 via the communication bus 302. The memory 303 may also be integrated with the processor 301. Among them, the memory 303 is used to store the software program that executes the solution provided in the embodiment of the present application, and is controlled and executed by the processor 301.
[0137] The communication interface 304 is used to communicate with other devices or communication networks, such as Ethernet, RAN, wireless local area networks (WLAN), etc. The communication interface 304 may include a receiving unit to implement a receiving function, and a sending unit to implement a sending function.
[0138] As an embodiment, the computing device 300 may further include an output device 306 and an input device 307. The output device 306 communicates with the processor 301 and may display information in a variety of ways. For example, the output device 306 may be a liquid crystal display (LCD), a light emitting diode (LED) display device, a cathode ray tube (CRT) display device, or a projector. The input device 307 communicates with the processor 301 and may receive input in a variety of ways. For example, the input device 307 may be a mouse, a keyboard, a touch screen device, or a sensor device.
[0139] The computing device 300 may be a general computing device or a special computing device, for example, a desktop computer, a portable computer, a network server, etc., which is not limited in the present embodiment of the application.
[0140] The following will provide an exemplary description of the method for recommending calligraphy practice content provided in the embodiment of the present application in combination with the accompanying drawings and specific application scenarios.
[0141] In one possible implementation, see Figure 4 The flowchart of a method for recommending calligraphy practice content shown mainly involves a process in which a cloud server recommends personalized calligraphy practice content to a user based on a calligraphy practice content recommendation request from the user sent by a terminal device. The method includes steps S410 to S440, and each step is described in detail below.
[0142] S410, the terminal device sends a user's calligraphy practice content recommendation request to the cloud server.
[0143] In one embodiment, a calligraphy practice software is installed on the terminal device, and the user can log in to the calligraphy practice software to practice calligraphy after registering with information such as a user name, password, and mobile phone number. A control for triggering a calligraphy practice content recommendation request can be displayed on the terminal device, and after the terminal device detects the user's triggering operation on the control, the user's calligraphy practice content recommendation request can be sent to the cloud server.
[0144] In an embodiment of the present application, the calligraphy practice content may be a single word, and accordingly, the user's calligraphy practice content recommendation request may be a single word recommendation request. The calligraphy practice content may also be text, and accordingly, the user's calligraphy practice content recommendation request may be a copybook recommendation request. The first control and / or the second control may be displayed on the display interface of the terminal device. If a user trigger operation on the first control is detected, a single word recommendation request is sent to the cloud server; if a user trigger operation on the second control is detected, a copybook recommendation request is sent to the cloud server.
[0145] In a possible implementation, the calligraphy practice content recommendation request may include a user ID of the user, which is used to indicate the user's identity information so that the cloud server can subsequently recommend corresponding practice content based on the user's identity information. For example, the identity information may include but is not limited to user name, mobile phone number, and other information.
[0146] Furthermore, the calligraphy practice content recommendation request may also include information such as the user's pre-practiced font, age, and grade. The user's pre-practiced font may be regular script, running script, official script, or other types of fonts; the grade may be elementary, intermediate, or advanced levels of calligraphy practice. The higher the grade, the more strokes and radicals in the recommended characters, and the more complex the characters.
[0147] S420, the cloud server determines a pre-stored marked data set of the user in response to the user's request for recommendation of calligraphy practice content, where the marked data set includes at least one difference part between at least one standard character that the user has practiced and a corresponding copy character.
[0148] The cloud server pre-stores a labeled data set corresponding to the user ID of each registered user. After receiving the user's calligraphy practice content recommendation request sent by the terminal device, the cloud server can determine the labeled data set corresponding to the user ID in the calligraphy practice content recommendation request from the pre-stored multiple labeled data sets based on the calligraphy practice content recommendation request.
[0149] In one example, the user's marked data set may include all the differences in the user's historical calligraphy practice process. Exemplarily, the marked data set includes at least one difference between one or more standard characters and the corresponding copy characters that the user has practiced from the first time to the most recent time using the calligraphy practice software.
[0150] In another example, the user's marked data set may include some of the difference parts of the user's historical calligraphy practice process. For example, the user's marked data set may include at least one difference part between one or more standard characters that the user has practiced within a preset time and the corresponding copy characters, wherein the preset time may be the most recent day, the most recent week, the most recent month, or any other time interval that is less than the user's first use of the calligraphy practice software to the most recent time. Alternatively, the user's marked data set may include at least one difference part between a preset number of standard characters that the user has practiced and the corresponding copy characters, wherein the preset number may be one or more. Further, in order to allow the difference parts in the marked data set to better feedback the user's deficiencies in the recent period, the preset number may be the number of standard characters that have been practiced within the preset time and have difference parts with the corresponding copy characters.
[0151] In one embodiment, the marked data set stored in the cloud server may include one or more different standard character marked images, each of which includes a standard character that the user has practiced and at least one marked area, and each marked area in the standard character marked image is used to indicate a difference between the standard character in the standard character marked image and the corresponding user's copied character. The difference is any local area in the standard character, including but not limited to the strokes, radicals, and partial areas of any stroke or radical in the standard character.
[0152] The marked area in the standard word mark image is the area after the difference part is marked with the mark graphic. After the cloud server determines the user's mark data set, it can determine the location of the difference part by identifying the mark graphic in each standard word mark image in the mark data set. Exemplarily, the shape of the mark graphic can be an ellipse, a circle, a square, a rectangle or other irregular shapes.
[0153] S430, the cloud server determines the calligraphy practice content from the pre-stored standard character database according to the marked data set, and the calligraphy practice content includes at least one difference part.
[0154] In one embodiment, the cloud server may pre-store standard character databases corresponding to a plurality of different types of fonts, each of which includes a plurality of different standard characters containing corresponding fonts, wherein the plurality of different types of fonts may include but are not limited to regular script, official script, running script, etc. The cloud server may first determine the standard character database corresponding to the font pre-practiced by the user in the user identifier according to the calligraphy practice content recommendation request, and then determine the calligraphy practice content from the standard character database according to the marked data set, wherein the standard characters in the calligraphy practice content include one or more difference parts in the marked data set.
[0155] S440, the cloud server sends the calligraphy practice content to the terminal device.
[0156] After the cloud server sends the standard characters in the calligraphy practice content to the terminal device, the terminal device can display the calligraphy practice content on the display interface for the user to practice. Since the standard characters in the calligraphy practice content are determined based on the labeled data set generated by the copied characters in the user's historical calligraphy practice process, and the standard characters in the calligraphy practice content include the different parts of the user's historical calligraphy practice, the user can consolidate the different parts to meet the user's own calligraphy practice needs, which can effectively improve the user's calligraphy practice efficiency.
[0157] In the above step S430, for the calligraphy practice content recommendation request corresponding to different calligraphy practice contents, the cloud server can use different methods to recommend the corresponding calligraphy practice contents to the user. The following describes in detail the recommendation method of the cloud server for different calligraphy practice contents through different embodiments.
[0158] Embodiment 1: The calligraphy practice content is the standard characters to be copied, and the corresponding calligraphy practice content recommendation request is a single-character recommendation request.
[0159] In one possible implementation, in a scenario where a user uses a calligraphy practice software for the first time, when the cloud server receives a single word recommendation request sent by the user for the first time through a terminal device, the cloud server may not have pre-stored a labeled data set of the user; or in an application scenario where the user has used the calligraphy practice software for practice, since there is no deviation between the standard characters practiced by the user and the corresponding copied characters, the pre-stored labeled data set of the user does not contain any difference between the standard characters practiced by the user and the corresponding copied characters. In this case, the cloud server can determine a standard character from the pre-stored standard character database corresponding to the font pre-practiced by the user as the standard character to be copied for the user's first practice based on the age and / or grade in the user identifier.
[0160] Exemplarily, the standard character database may include standard character sub-datasets corresponding to each age and / or school stage, and the standard character to be copied recommended by the cloud server for the user may be the standard character with the most recommended times in the standard character sub-dataset corresponding to the user's age and / or school stage.
[0161] In another possible implementation, in the scenario where the user uses the calligraphy practice software for non-first time calligraphy practice, the marked dataset of the user pre-stored in the cloud server may only include one or more different parts between the standard character and the corresponding copied character of the user's most recent practice, and the candidate character set determined from the standard character database based on the marked dataset only includes one candidate standard character that has one or more different parts between the standard character of the user's most recent practice and the corresponding copied character and that the user has not practiced. Then, determine this candidate standard character as the standard character to be copied.
[0162] Exemplarily, as Figure 5 shown, assume that after the user uses the calligraphy practice software to complete the first single-character practice and then sends a calligraphy content recommendation request to the cloud server again through the terminal device. The marked data of the user pre-stored in the cloud server only includes the standard character marked image corresponding to the standard character "瞢" of the user's most recent practice. By detecting the marked area in the standard character marked image and comparing the different parts in the marked area with the standard characters that the user has not practiced in the standard character database, a corresponding candidate character set can be determined from the standard character database, and the candidate character set only contains one candidate standard character "懵". The candidate standard character "懵" is different from the standard character "瞢" of the user's most recent practice and includes the different parts between the standard character "瞢" and the corresponding copied character. Then, send this candidate standard character to the terminal device for the user to practice as the standard character to be copied.
[0163] In another possible implementation, in the scenario where the user uses the calligraphy practice software for non-first time calligraphy practice, there may be one or more different parts in the marked dataset of the user pre-stored in the cloud server. Refer to Figure 6 the schematic flowchart of a method for the cloud server to determine the standard character to be copied shown in it. Step S430 may specifically be implemented by steps S610 to S620.
[0164] S610, determine a candidate character set from the standard character database. The candidate character set includes multiple candidate standard characters. Each candidate standard character is different from the standard character of the user's most recent practice, and each candidate standard character includes the different parts between the standard character of the user's most recent practice and the corresponding copied character.
[0165] It should be noted that the user's marked data set may only include one or more difference parts between a standard character practiced by the user most recently and the corresponding copied character, and may also include one or more difference parts between one or more standard characters practiced by the user other than the standard character practiced by the user most recently and the corresponding copied character.
[0166] In this implementation, the cloud server can determine one or more difference parts between the standard character practiced most recently and the corresponding copied character from the user's marked data set, and then retrieve one or more candidate standard characters that the user has not practiced and contain the difference parts of the standard character practiced most recently from the standard character database. In other words, the candidate standard characters in the candidate character set determined based on this method all contain the difference parts between the standard character practiced most recently and the corresponding copied character.
[0167] S620, determining the standard character to be copied from the candidate character set.
[0168] Specifically, if the candidate character set includes at least two candidate standard characters, the recommended value of each candidate standard character in the candidate character set is determined, and then the candidate standard character with the largest recommended value in the candidate character set is determined as the standard character to be copied. Furthermore, if two or more candidate standard characters in the candidate character set have the same recommended value and the largest recommended value, any one of the two or more candidate standard characters is used as the standard character to be copied.
[0169] The recommended value of each candidate standard word is related to the number of different difference parts in the labeled data set contained in the candidate standard word. The more different difference parts in the labeled data set contained in the candidate standard word, the greater the recommended value of the candidate standard word. As an example but not a limitation, for each candidate standard word, the similarity between each candidate standard word and each difference part in the labeled data set can be determined by a similarity detection method such as a similarity detection model, and then the recommended value of each candidate standard word is determined according to the similarity value.
[0170] As an example but not a limitation, assume that the user's marking data includes standard word marking images corresponding to ten standard words with different parts that the user has practiced recently. Figure 7The following is a schematic diagram of the process for determining the standard character to be copied based on a marked dataset. If the user's marked dataset only includes the standard character marked image corresponding to the standard character "集" in the user's most recent practice, by detecting the marked area in the standard character marked image, it can be determined that the different part between the standard character "集" and the user's copied character is the radical "木". Then, a candidate character set that the user has not practiced and contains the different part "木" can be determined from the standard character database. The candidate character set includes the candidate standard characters "桨" and "梁". If the recommended values of the candidate standard characters "桨" and "梁" are the same and both are 0.9, then either of the two candidate standard characters can be used as the standard character to be copied. For example, the candidate standard character "梁" can be used as the standard character to be copied and sent to the terminal device for the user to practice.
[0171] For example, refer to Figure 8 The following is a schematic diagram of the process for determining the standard character to be copied based on a marked dataset. If the user's marked dataset only includes the standard character marked image corresponding to the standard character "集" in the user's most recent practice, and the standard character marked image includes two marked areas. The first different part in the first marked area is the radical "木", and the second different part in the second marked area is a partial area of the radical "隹". Then, according to the two marked areas, candidate sub-datasets corresponding one-to-one to the two different parts can be determined from the standard character database. One candidate sub-dataset includes the candidate standard characters "桨" and "梁" that the user has not practiced, and both the candidate standard characters "桨" and "梁" include the first different part. Another candidate sub-dataset includes the candidate standard characters "椎", "王", and "住" that the user has not practiced, and the candidate standard characters "椎", "王", and "住" all include the second different part. If the recommended value of the candidate standard character "椎" is determined to be 0.9, the recommended value of the candidate standard character "王" is 0.85, the recommended value of the candidate standard character "住" is 0.83, the recommended value of the candidate standard character "桨" is 0.85, and the recommended value of the candidate standard character "住" is 0.85 through the similarity detection method, then the candidate standard character "椎" corresponding to the maximum recommended value in the candidate character set can be used as the standard character to be copied and sent to the terminal device for the user to practice.
[0172] Another example, refer to Fig. 9The following is a schematic diagram of the process for determining the standard characters to be traced based on a marked dataset. If the user's marked dataset includes not only the standard character marked image corresponding to the standard character "dian" in the user's most recent practice, but also the standard character marked images corresponding to the standard characters "ji" and "lin" in the user's historical practice. After receiving the user's request for calligraphy practice content, the cloud server detects the marked areas in the three standard character marked images respectively, and can determine that the different part between the standard character "ji" and the corresponding traced character is the radical "mu", the different part between the standard character "lin" and the corresponding traced character is a partial area in the radical "mu", and the different part between the standard character "dian" and the corresponding traced character is a partial area in the radical "zhen". According to the different part corresponding to the standard character "dian" in the most recent practice, a candidate character set that the user has not practiced and contains the different part in the standard character "dian" can be determined from the standard character database. If the candidate character set includes four candidate standard characters "ju", "zhen", "zhen", and "ju", then the similarity between each candidate standard character and the different part corresponding to the standard character "ji", the different part corresponding to the standard character "lin", and the different part corresponding to the standard character "dian" can be determined through a similarity detection method, and the recommended value of each candidate standard character can be determined according to the sum of the similarities. As Fig. 9 shown, if the recommended value of the candidate standard character "ju" is determined to be 0.9, the recommended value of the candidate standard character "zhen" is 0.88, the recommended value of the candidate standard character "zhen" is 0.85, and the recommended value of the candidate standard character "ju" is 0.95, then the candidate standard character "ju" corresponding to the maximum recommended value in the candidate character set can be sent to the terminal device for the user to practice. The candidate standard character "ju" contains both the different part corresponding to the standard character "dian" in the most recent practice and the different part corresponding to the practiced standard character "lin", and is different from the standard character "dian" in the most recent practice. The other three candidate standard characters in the marked dataset only contain the different part corresponding to the standard character "dian" in the most recent practice.
[0173] Based on the calligraphy practice content recommendation methods provided by the above different implementation methods, the cloud server can recommend the standard characters to be traced for the user's next practice based on the different part corresponding to the standard character in the user's most recent practice. The candidate standard characters contain the different part corresponding to the standard character in the user's most recent practice, or contain both the different part corresponding to the standard character in the most recent practice and the different parts corresponding to the other practiced standard characters, so that the user can conduct targeted practice on the different parts to improve the calligraphy practice effect, and the standard characters to be traced are different from the standard character in the user's most recent practice, avoiding the user's boredom caused by repeated practice of the same character and enhancing the user's interest in calligraphy practice.
[0174] In the first embodiment, each time the cloud server sends the standard character to be copied to the terminal device, the user can copy the standard character to be copied. Subsequently, the cloud server can update the pre-stored user's marked data set based on the difference between the obtained standard character to be copied and the corresponding user's copied character. This can be achieved in the following ways.
[0175] Method 1
[0176] The cloud server can update the pre-stored user's marked data set based on the difference between the standard character to be copied and the character copied by the user detected by itself. Fig.10 The method flow chart of updating the user's marked data set shown in , can adopt the following steps S1010 to S1030 to implement the first method.
[0177] S1010, the cloud server receives a first batch of modification requests sent by the terminal device, the first batch of modification requests including a first copying image of the user, the first copying image including a first copying character corresponding to the standard character to be copied.
[0178] In one example, a third control may be displayed in the display interface of the calligraphy practice software installed on the terminal device. After the user completes copying the standard character to be copied displayed on the terminal device, the third control may be triggered. After detecting the user's triggering operation on the third control, the terminal device may obtain the user's first copying image and send the first batch of modification requests containing the first copying image to the cloud server, so that the cloud server can detect the difference between the standard character to be copied and the first copying character in the first copying image.
[0179] Among them, based on the different copying methods of the user for copying the standard characters, the terminal device can obtain the user's first copying image in different ways.
[0180] In one example, if a user directly copies a standard character to be copied displayed on a display interface of a terminal device using a touch device such as a stylus, the terminal device can generate a corresponding first copy character through a sliding operation of the touch device on the display interface, and generate a corresponding first copy image based on the first copy character.
[0181] In another example, if the user prints the standard characters to be copied on paper and copies the standard characters to be copied on the paper, the first copying image of the user obtained by the terminal device may be an image uploaded by the user after taking a picture of the first copying character by a camera, or may be an image containing the first copying character obtained after the terminal device controls the camera to take a picture of the area where the paper is located after detecting that the user triggers the third control. The camera may be a camera installed in the terminal device or a camera connected to the terminal device by wire or wirelessly.
[0182] Optionally, the first copied character in the image captured by the camera may be affected by the shooting angle, distance, etc. and may have problems such as distortion and blur. Therefore, the first copied image sent by the terminal device to the cloud server may be an image that has been corrected for the image uploaded by the user or the image captured by the camera.
[0183] S1020, the cloud server detects the difference between the first copied character and the standard character to be copied based on the first batch of modification requests.
[0184] As an example but not limitation, the cloud server can determine the difference between the first copied character in the first copied image and the standard character to be copied in the template image based on an image comparison algorithm by detecting the image area where there is a difference between the first copied image and the template image containing the standard character to be copied.
[0185] S1030, the cloud server updates the marked data set according to the difference between the first copied character and the standard character to be copied.
[0186] It should be noted that the standard characters are clearer and more standardized than the users' copied characters, and the cloud server's recognition of the marked difference parts in the standard characters and the feature extraction results are more accurate than the recognition of the marked difference parts in the copied characters and the feature extraction results. Based on this, the images stored in the marked data set are generally standard character marked images containing the standard characters copied by the users and the difference parts in the standard characters, so as to accurately screen out the candidate standard characters and the standard characters to be copied based on the difference parts corresponding to the standard characters.
[0187] Therefore, the cloud server can mark the area where the difference between the first copied character and the standard character to be copied in the template image containing the standard character to be copied is located according to the detected difference part and the preset marking pattern, obtain the standard character marking image corresponding to the standard character to be copied, and store the standard character marking image in the user's marking data set to update the user's marking data set.
[0188] Furthermore, in order to enable users to promptly check the deficiencies in their own copied characters on the terminal device, the cloud server can mark the difference area between the first copied character and the standard character to be copied in the first copied image through a marking graphic to obtain a first marked image, and send the first marked image to the terminal device for display.
[0189] Method 2
[0190] The cloud server can update the pre-stored user's marked data set based on the manually detected differences between the standard character to be copied and the user's copied character. Fig.11 A flow chart of a method for updating a user's marked data set is shown in , and the following steps S1110 to S1120 can be used to implement the second method.
[0191] S1110, the cloud server receives a second copying image of the user sent by the terminal device, the second copying image includes a first copying character corresponding to the standard character to be copied and a difference between the first copying character and the standard character to be copied.
[0192] In one example, a fourth control may be displayed in the display interface of the calligraphy practice software installed on the terminal device. After the user completes copying the standard character to be copied displayed on the display interface of the terminal device, the fourth control may be triggered, so that the user, a professional teacher or other person may mark the difference between the first copied character and the standard character to be copied through a marking graphic on the terminal device. After detecting that the user has completed the marking operation, the terminal device may send a second copying image containing the first copied character and the difference between the first copied character and the standard character to be copied marked to the cloud server.
[0193] In another example, if the user copies the standard characters to be copied on paper, then after the user completes the paper copying, the user can first use a shooting device to shoot the first copied character, and upload the shot first copying image to the terminal device, and then based on the method in the above example, the user himself, a professional teacher or other people can mark the difference between the first copied character and the standard character to be copied in the first copying image through a marking graphic on the terminal device; or after the user completes the paper copying, the user himself, a professional teacher or other people can mark the difference between the first copied character and the standard character to be copied through a marking graphic on the paper, and then the user uses a shooting device to shoot the first copied character with the marked difference to obtain a second copying image, and send the second copying image to the cloud server through the terminal device.
[0194] S1120, the cloud server updates the marked data set according to the difference between the first copied character and the standard character to be copied.
[0195] It should be noted that the standard characters are clearer and more standardized than the characters copied by the user, and the cloud server's recognition of the marked difference parts in the standard characters and the feature extraction results are more accurate than the recognition of the marked difference parts in the copied characters and the feature extraction results. Therefore, the images stored in the marked data set are generally standard character marked images containing the standard characters copied by the user and the difference parts in the standard characters, so as to accurately screen out candidate standard characters and standard characters to be copied based on the difference parts corresponding to the standard characters.
[0196] In the second method, the cloud server receives a second copy image containing manually marked difference parts. The cloud server can determine the area where the difference parts are located in the template image containing the standard character to be copied based on the area where the marked difference parts in the second copy image are located, and mark the area where the difference parts between the standard character to be copied and the corresponding first copy character in the template image are located through a marking graphic, so as to obtain a standard character marked image including the standard character to be copied and the difference parts between the first copy character and the standard character to be copied, and at the same time store the standard character marked image in the user's marked data set to update the user's marked data set.
[0197] Embodiment 2: the calligraphy practice content is a text to be copied, and the corresponding calligraphy practice content recommendation request is a copybook recommendation request.
[0198] In a possible implementation, in a scenario where a user uses the calligraphy practice software for the first time, when the cloud server receives the first copybook recommendation request sent by the user through the terminal device, the user's marked data set may not be pre-stored in the cloud server; or in an application scenario where the user has used the calligraphy practice software, the pre-stored user's marked data set does not contain the difference between the standard characters that the user has practiced and the corresponding copy characters, then the cloud server can filter out multiple candidate standard characters from the pre-stored standard character database corresponding to the font that the user has practiced according to the age and / or grade in the user identifier, and generate a text to be copied containing multiple candidate standard characters through a text generation method, wherein the multiple candidate standard characters that are filtered out are standard characters in the standard character sub-database corresponding to the user's age and / or grade, and the number of times recommended is greater than a preset number. Alternatively, the cloud server can use any text that has been practiced by other users of the same age and / or grade as the user as the text to be copied.
[0199] In another possible implementation, in a scenario where the user is not practicing calligraphy for the first time using the calligraphy practice software, the cloud server pre-stores a user's marked data set, and the user's marked data set includes one or more difference parts between each standard character in one or more standard characters that the user has practiced and the corresponding copy character, then refer to Fig.12A flow chart of a method for a cloud server to determine a text to be copied is shown in , and step S430 can specifically determine the text to be copied by steps S1210 to S1220.
[0200] S1210, determining at least one candidate standard word that the user has not practiced from the standard word database, each candidate standard word includes at least one difference part in the marked data set.
[0201] Specifically, the cloud server can first determine a candidate character set corresponding to each difference part in the user's marked data set from the standard character database, and each candidate character set includes one or more candidate standard characters that the user has not practiced and has corresponding difference parts, that is, all candidate standard characters in the same candidate character set have the same difference parts.
[0202] S1220, generating a text to be copied based on at least one candidate standard character.
[0203] In one example, the cloud server can process the candidate character sets corresponding to all difference parts according to the text generation algorithm to generate the text to be copied, so that the text to be copied includes all the candidate standard characters or most of the candidate standard characters in all the candidate character sets, so as to use as many candidate standard characters in all the candidate character sets as possible.
[0204] In another example, the cloud server can process the candidate character sets corresponding to all difference parts and the standard characters that the user has practiced according to the text generation algorithm to generate the text to be copied, so that the text to be copied includes not only all the candidate standard characters or most of the candidate standard characters in all the candidate character sets, but also one or more standard characters that the user has practiced.
[0205] Further, based on the above two examples, in order to enable the user to consolidate all the differences in the historical practice process as much as possible, the generated text to be copied can include at least one candidate standard character in each candidate character set. The embodiment of the present application does not limit the number of characters in the text to be copied.
[0206] By way of example and not limitation, see Fig.13The schematic diagram of a process for determining the text to be copied based on a labeled dataset is shown. Assume that the user's labeled dataset includes the standard character labeled images corresponding to the two standard characters "集" and "颠" that the user has practiced. Among them, in the standard character labeled image corresponding to the standard character "集", there are two labeled areas. The first different part in the first labeled area is a partial area in the radical "隹". The cloud server determines from the standard character database the first candidate character set corresponding to the first different part, which includes three candidate standard characters "椎", "王", and "住" that the user has not practiced; the different part in the second labeled area is the radical "木". The cloud server determines from the standard character database the second candidate character set corresponding to the second different part, which includes two candidate standard characters "桨" and "梁" that the user has not practiced. The different part in the labeled area of the standard character labeled image corresponding to the standard character "颠" is a partial area in the radical "真". The cloud server determines from the standard character database the third candidate character set corresponding to this different part, which includes four candidate standard characters "具", "真", "镇", and "椇" that the user has not practiced.
[0207] As Fig.13 shown, the cloud server can generate a personalized text to be copied, "The little prince asked Xiaoliang to go to the market to buy a paddle, and he went to the town cheerfully", according to the candidate standard characters corresponding to all the different parts in the labeled dataset and the standard characters that the user has practiced in the labeled dataset. The text to be copied includes the candidate standard character "王" in the first candidate character set, the candidate standard characters "梁" and "桨" in the second candidate character set, the candidate standard character "镇" in the third candidate character set, and the standard character "颠" that the user has practiced in the labeled dataset.
[0208] Based on the method of the text to be copied in the above embodiment, the cloud server can formulate a personalized text to be copied calligraphy copybook for the user based on all the different parts in the user's labeled dataset. The characters in the text to be copied contain one or more different parts in the labeled data. The text to be copied can make the best use of the different parts between all the standard characters that the user has practiced in the labeled dataset and the corresponding copied characters. When the user copies the calligraphy copybook corresponding to the text to be copied, it is possible to specifically practice all the different parts in the historical calligraphy practice as much as possible, improving the diversity of the calligraphy practice content and the calligraphy practice effect.
[0209] In the second embodiment, after the cloud server sends the text to be copied to the terminal device each time, the user can copy the text to be copied. Subsequently, the cloud server can update the pre-stored user's labeled dataset based on the different parts between the standard characters in the text to be copied and the corresponding copied characters of the user. Specifically, it can be implemented in the following several ways.
[0210] Method 1
[0211] The cloud server can update the pre-stored user's marked data set based on the difference between at least one standard character in the text to be copied and the corresponding copy character detected by itself. Fig.14 A flow chart of a method for updating a user's marked data set shown in , can be implemented using steps S1410 to S1430.
[0212] S1410, the cloud server receives a second correction request sent by the terminal device, the second correction request includes a third copying image of the user, and the third copying image includes copying characters corresponding to the standard characters in the text to be copied.
[0213] In one example, in the display interface of the calligraphy practice software installed on the terminal device, a fifth control may be displayed for triggering the terminal device to send the acquired third copying image of the user to the cloud server for automatic detection. After the user completes the practice of the text to be copied displayed on the terminal device, the fifth control may be triggered, and the terminal device may send the second correction request to the cloud server, so that the cloud server can detect the difference between each copying character of the user in the third copying image and the corresponding standard character in the text to be copied.
[0214] Among them, the terminal device can obtain the user's third copying image based on different copying methods of the user, such as a method of copying a copybook on paper or using a touch device such as a stylus to directly copy the text to be copied displayed on the display interface of the terminal device. The specific copying method of the user and the specific implementation method of the terminal device obtaining the corresponding third copying image containing the user's copied characters based on different copying methods can refer to the relevant description of the terminal device obtaining the first copying image in the above step S1010, which will not be repeated here.
[0215] S1420, the cloud server detects the difference between the standard characters in the text to be copied and the corresponding copied characters according to the second correction request.
[0216] As an example but not limitation, the cloud server can detect the difference between each copied character in the third copied image and the corresponding standard character based on an image comparison algorithm.
[0217] S1430, the cloud server updates the marked data set according to the difference between the standard characters in the text to be copied and the corresponding copied characters.
[0218] The cloud server can mark the area where the difference parts are located in the template image containing the standard characters based on the detected difference parts between each copied character and the corresponding standard character and the preset marking graphics, obtain the standard character marking image corresponding to each standard character with different parts in the text to be copied, and include all of them into the user's marking data set to update the user's marking data set.
[0219] Furthermore, in order to enable users to promptly check the deficiencies in their own copied characters on the terminal device, the cloud server can mark the area where the differences between the copied characters in the third copied image and the corresponding standard characters are located on the third copied image to obtain a second marked image, and send the second marked image to the terminal device for display.
[0220] Method 2
[0221] The cloud server can update the pre-stored user's marked data set based on the difference between at least one standard character in the text to be copied and the corresponding copy character detected manually. Fig.15 A flow chart of a method for updating a user's marked data set shown in , can be implemented using steps S1510 to S1520.
[0222] S1510, the cloud server receives a fourth copying image of the user sent by the terminal device, and the fourth copying image includes the difference between the copying character corresponding to the standard character in the text to be copied and the corresponding standard character.
[0223] In one example, in the display interface of the calligraphy practice software installed on the terminal device, a sixth control for manually detecting the user's copy text corresponding to the text to be copied can be displayed. After the user completes the practice of the text to be copied on the terminal device, the sixth control can be triggered so that the user, a professional teacher or other person can mark the difference between the user's copy text and the corresponding standard character in the copy text through a marking graphic on the terminal device. After detecting that the user has completed the marking operation, the terminal device can send a fourth copy image containing the copy text and the difference between the copy text and the standard character to be copied to the cloud server.
[0224] In another example, if the user copies a text to be copied on paper, then after the user completes the paper copying, the user can first use a camera to photograph the copied text, and upload the third copying image containing only the copied characters to the terminal device, and then based on the method in the previous example, the user himself, a professional teacher or other people can mark the differences between the copied characters in the image and the corresponding standard characters in the third copying image on the terminal device through marking graphics; or after the user completes the paper copying, the user himself, a professional teacher or other people can mark the differences between each copied character in the copied text and the corresponding standard characters in the text to be copied through marking graphics on paper, and then the user uses a camera to photograph the copied text with the marked differences to obtain a fourth copying image, and then send the fourth copying image to the cloud server through the terminal device.
[0225] It should be noted that the user can mark the copy text after completing the practice of the entire text to be copied, and the third copy image and the fourth copy image can include the copy characters that correspond one-to-one to all the standard characters in the text to be copied. The user can also mark some of the standard characters in the text to be copied after completing the practice, and the third copy image and the fourth copy image can include the copy characters that correspond one-to-one to some of the standard characters in the text to be copied.
[0226] S1520, the cloud server updates the marked data set according to the difference between the copied characters corresponding to the standard characters in the text to be copied and the corresponding standard characters.
[0227] Specifically, the cloud server can determine the area where the difference part corresponding to each standard character is located in the template image containing the standard character based on the area where the marked difference part in the fourth copied image is located, and mark the area where the difference part between the standard character in the template image and the corresponding copied character is located through a marking graphic to obtain a standard character marked image corresponding to each standard character, and at the same time store the standard character marked image in the user's marked data set to update the user's marked data set.
[0228] It should also be noted that when the cloud server generates the text to be traced according to the user's calligraphy copybook recommendation request, the standard characters that the user has practiced in the marked dataset used by the cloud server can be the standard characters of the parts where there are differences between the user's traced characters and the corresponding characters during single-character practice, or the standard characters of the parts where there are differences between the user's traced characters and the corresponding characters during the user's most recent calligraphy copybook practice. That is to say, after receiving the calligraphy copybook recommendation request sent by the terminal device, the cloud server can not only generate the text to be traced based on the different parts corresponding to one or more single standard characters that the user has practiced, but also generate a new text to be traced based on the different parts corresponding to the standard characters in the calligraphy copybook that the user practiced most recently. The content of the new text to be traced is different from the content of the text to be traced in historical practice, which can avoid the boredom of the user when repeatedly practicing the same calligraphy copybook.
[0229] For example, assume that the calligraphy copybook that the user practiced most recently is Fig.13 the text to be traced shown in. If after the user completes the practice of the text to be traced shown in Fig.13 and then sends a calligraphy copybook recommendation request to the cloud server again, and the cloud server detects that there are different parts between the standard characters "让 (ràng)", "集 (jí)", "桨 (jiǎng)" and "屁 (pì)" in the text to be traced that the user practiced most recently and the corresponding traced characters of the user respectively, then it can determine the text to be traced for this practice based on the marked dataset containing the different parts between the standard characters "让 (ràng)", "集 (jí)", "桨 (jiǎng)" and "屁 (pì)" and the corresponding traced characters of the user respectively.
[0230] Exemplarily, refer to Fig.16The following is a schematic diagram of the process for determining the text to be copied based on a labeled dataset. The difference between the standard character "让" in the labeled dataset and the corresponding copied character is the radical "讠". The cloud server determines from the standard character database the first candidate character set that the user has not practiced and contains the difference part "讠", which includes candidate standard characters "谁", "说", and "访". The difference between the standard character "集" in the labeled dataset and the corresponding copied character is the radical "隹". The cloud server determines from the standard character database the second candidate character set that the user has not practiced and contains the difference part "隹", which includes candidate standard characters "焦", "谁", and "雅". The difference between the standard character "桨" in the labeled dataset and the corresponding copied character is the radical "木". The cloud server determines from the standard character database the third candidate character set that the user has not practiced and contains the difference part "木", which includes candidate standard characters "柴", "采", and "宋". The difference between the standard character "屁" in the labeled dataset and the corresponding copied character is the radical "比". The cloud server determines from the standard character database the fourth candidate character set that the user has not practiced and contains the difference part "比", which includes candidate standard characters "毕", "批", and "昆". Based on the four candidate character sets and the four standard characters that the user has practiced in the labeled dataset, the cloud server generates the text to be copied recommended this time, "毕姥爷让谁去砍柴", through a text generation algorithm. The text to be copied includes one candidate standard character from each candidate character set.
[0231] Based on the method for recommending the text to be copied provided in Embodiment 2, the cloud server can make the most of the difference parts between all the standard characters that the user has practiced and the corresponding copied characters in the labeled dataset, and use a text generation algorithm to formulate a personalized text to be copied字帖 for the user. The characters in the text to be copied contain one or more difference parts in the user's historical practice process. After the user completes the practice of the text to be copied, the differences between the user's copied characters and the standard characters in the text to be copied can be marked through manual detection methods or automatic detection methods of the cloud server, and displayed on the terminal device for the user to view their own deficiencies. In addition, the user's labeled dataset will be updated with each practice of the user. Therefore, the content of the text to be copied generated by the cloud server each time is different from the content of the字帖 that the user has practiced, meeting the calligraphy practice needs of different users at different practice stages, avoiding the boredom caused by repeatedly practicing the same content字帖, and improving the user's calligraphy practice effect.
[0232] The above describes the method embodiments provided by the present application. The following will describe the device embodiments provided by the present application. It should be understood that the description of the device embodiments corresponds to the description of the method embodiments. Therefore, the content that is not described in detail can be referred to the above method embodiments. For the sake of brevity, it will not be repeated here.
[0233] Fig.17 is a schematic block diagram of a calligraphy practice content recommendation device provided in an embodiment of the present application, which can be deployed on the cloud server in the aforementioned embodiment. Fig.17 As shown, the calligraphy practice content recommendation device 1700 may include a processing unit 1710 and a communication unit 1720. The processing unit 1710 may implement corresponding processing functions. The communication unit 1720 may implement corresponding communication functions, and the communication unit 1720 may also be referred to as a communication interface or a transceiver unit. Optionally, the calligraphy practice content recommendation device 1700 may also include a storage unit, which may be used to store instructions and / or data, and the processing unit 1710 may read the instructions and / or data in the storage unit, so that the device implements the aforementioned method embodiment.
[0234] Specifically, the processing unit 1710 is used to respond to the user's calligraphy practice content recommendation request sent by the terminal device, determine a pre-stored user's marked data set, the marked data set includes at least one difference part between at least one standard character that the user has practiced and the corresponding copy character; determine the calligraphy practice content from the pre-stored standard character database according to the marked data set, the calligraphy practice content includes at least one difference part; and send the calligraphy practice content to the terminal device. The communication unit 1720 is used to send the calligraphy practice content to the terminal device.
[0235] Optionally, the content of the calligraphy practice is standard characters to be copied; the processing unit 1710 is specifically used to: determine a candidate character set from a standard character database, the candidate character set includes multiple candidate standard characters, each candidate standard character is different from the standard character practiced most recently by the user, and each candidate standard character includes the difference between the standard character practiced most recently by the user and the corresponding copying character; determine the standard character to be copied from the candidate character set.
[0236] Optionally, the processing unit 1710 determines the standard character to be copied from the candidate character set, specifically including: determining a recommendation value for each candidate standard character; and determining a candidate standard character with the largest recommendation value in the candidate character set as the standard character to be copied.
[0237] Optionally, the communication unit 1720 is further used to: receive a first batch of modification requests sent by the terminal device, the first batch of modification requests including a first copying image of the user, the first copying image including a first copying character corresponding to the standard character to be copied. The processing unit 1710 is further used to: detect the difference between the first copying character and the standard character to be copied according to the first batch of modification requests; and update the marked data set according to the difference between the first copying character and the standard character to be copied.
[0238] Optionally, the processing unit 1710 is further configured to mark the area where the difference between the first copied character and the standard character to be copied is located in the first copied image to obtain a first marked image. The communication unit 1720 is further configured to send the first marked image to a terminal device.
[0239] Optionally, the communication unit 1720 is further configured to: receive a second copy image of a user sent by a terminal device, the second copy image including a first copy character corresponding to the standard character to be copied and a difference between the first copy character and the standard character to be copied. The processing unit 1710 is further configured to: update the marked data set according to the difference between the first copy character and the standard character to be copied.
[0240] Optionally, the calligraphy practice content is a text to be copied; the processing unit 1710 is specifically used to: determine at least one candidate standard character that the user has not practiced from the standard character database, each candidate standard character includes at least one difference part in the marked data set; generate the text to be copied based on the at least one candidate standard character.
[0241] Optionally, determining at least one candidate standard word that the user has not practiced from the standard word database includes: determining a candidate word set corresponding to each difference part from the standard word database, each candidate word set including at least one candidate standard word that the user has not practiced and has a corresponding difference part.
[0242] Optionally, the text to be copied includes: at least one candidate standard character in each candidate character set, or at least one candidate standard character in each candidate character set and at least one standard character that the user has practiced.
[0243] Optionally, the communication unit 1720 is further used to: receive a second correction request sent by the terminal device, the second correction request includes a third copying image of the user, and the third copying image includes a copying character corresponding to the standard character in the text to be copied. The processing unit 1710 is also used to: detect the difference between the standard character in the text to be copied and the corresponding copying character according to the second correction request; and update the marked data set according to the difference between the standard character in the text to be copied and the corresponding copying character.
[0244] Optionally, the processing unit 1710 is further configured to mark the region where the difference between the copied character and the corresponding standard character in the third copied image is located to obtain a second marked image. The communication unit 1720 is further configured to send the second marked image to a terminal device.
[0245] Optionally, the communication unit 1720 is further used to: receive a fourth copying image of the user sent by the terminal device, the fourth copying image including the difference between the copying character corresponding to the standard character in the text to be copied and the corresponding standard character. The processing unit 1710 is further used to: update the marked data set according to the difference between the copying character corresponding to the standard character in the text to be copied and the corresponding standard character.
[0246] It should be understood that the description of the device embodiment can refer to the relevant description of the above-mentioned embodiments of the method for recommending calligraphy content. Its implementation principle and technical effect are similar to those of the above-mentioned method embodiment, and will not be repeated here.
[0247] It should be understood that the "unit" in the calligraphy practice content recommendation device 1700 can be implemented by hardware, can be implemented by software, and can also be implemented by hardware executing the corresponding software. For example, the "unit" can refer to an application specific integrated circuit (ASIC), an electronic circuit, a processor (such as a shared processor, a proprietary processor or a group processor, etc.) and a memory for executing one or more software or firmware programs, a combined logic circuit and / or other suitable components that support the described functions. For another example, the communication unit 1720 can be replaced by a transceiver transceiver circuit (for example, it can include a receiving circuit and a transmitting circuit), and the processing unit 1710 can be replaced by a processor or a processing circuit.
[0248] Based on the methods provided in the above embodiments, the embodiments of the present application also provide the following contents:
[0249] An embodiment of the present application provides a computer program product, which includes a program. When the program is executed by an electronic device, the electronic device implements the advertisement delivery method shown in the above embodiments.
[0250] An embodiment of the present application provides a computer-readable storage medium, which stores a computer program. When the computer program is executed by a processor, the advertising delivery method shown in the above embodiments is implemented.
[0251] An embodiment of the present application provides a chip, which includes a memory and a processor. The processor executes a computer program stored in the memory to control the above-mentioned electronic device to execute the advertising delivery method shown in the above-mentioned embodiments.
[0252] It should be understood that the processor mentioned in the embodiments of the present application may be a central processing unit (CPU), or other general-purpose processors, digital signal processors (DSP), application specific integrated circuits (ASIC), field programmable gate arrays (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. A general-purpose processor may be a microprocessor or the processor may also be any conventional processor, etc.
[0253] It should also be understood that the memory mentioned in the embodiments of the present application may be a volatile memory or a non-volatile memory, or may include both volatile and non-volatile memories. Among them, the non-volatile memory may be a read-only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), or a flash memory. The volatile memory may be a random access memory (RAM), which is used as an external cache. By way of example and not limitation, many forms of RAM are available, such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double data rate synchronous dynamic random access memory (doubledatarate SDRAM, DDR SDRAM), enhanced synchronous dynamic random access memory (enhanced SDRAM, ESDRAM), synchronous link dynamic random access memory (synchlink DRAM, SLDRAM), and direct rambus RAM (DR RAM).
[0254] Those skilled in the art can clearly understand that, for the convenience and simplicity of description, only the division of the above-mentioned functional units and modules is used as an example for illustration. In practical applications, the above-mentioned function allocation can be completed by different functional units and modules as needed, that is, the internal structure of the device can be divided into different functional units or modules to complete all or part of the functions described above. The functional units and modules in the embodiments can be integrated in a processing unit, or each unit can exist physically separately, or two or more units can be integrated in one unit. The above-mentioned integrated unit can be implemented in the form of hardware or in the form of software functional units. In addition, the specific names of the functional units and modules are only for the convenience of distinguishing each other, and are not used to limit the scope of protection of this application. In the above embodiments, the description of each embodiment has its own emphasis. For the part that is not described or recorded in detail in a certain embodiment, refer to the relevant description of other embodiments.
[0255] Those of ordinary skill in the art will appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of this application.
[0256] In the embodiments provided in the present application, it should be understood that the disclosed devices and methods can be implemented in other ways. For example, the system embodiments described above are only schematic. For example, the division of the modules or units is only a logical function division. There may be other division methods in actual implementation, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be an indirect coupling or communication connection through some interfaces, devices or units, which can be electrical, mechanical or other forms.
[0257] The units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.
[0258] In addition, each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit. The above-mentioned integrated unit may be implemented in the form of hardware or in the form of software functional units.
[0259] If the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the present application implements all or part of the processes in the above-mentioned embodiment method, which can be completed by instructing the relevant hardware through a computer program, and the computer program can be stored in a computer-readable storage medium, and the computer program can implement the steps of the above-mentioned various method embodiments when executed by the processor. Among them, the computer program includes computer program code, and the computer program code can be in source code form, object code form, executable file or some intermediate form. The computer-readable medium may at least include: any entity or device capable of carrying the computer program code to a large-screen device, a recording medium, a computer memory, a read-only memory (ROM, Read-Only Memory), a random access memory (RAM, Random Access Memory), an electric carrier signal, a telecommunication signal, and a software distribution medium. For example, a USB flash drive, a mobile hard disk, a magnetic disk or an optical disk. In some jurisdictions, according to legislation and patent practice, computer-readable media cannot be electric carrier signals and telecommunication signals.
[0260] Finally, it should be noted that the above is only a specific implementation of the present application, but the protection scope of the present application is not limited thereto. Any changes or substitutions within the technical scope disclosed in the present application should be included in the protection scope of the present application. Therefore, the protection scope of the present application should be based on the protection scope of the claims.
Claims
1. A method for recommending calligraphy practice content, characterized in that: Applied to a cloud server, the method includes: Receiving a user's calligraphy practice content recommendation request sent by a terminal device; In response to the character practice content recommendation request, determining a pre-stored user's marked data set, the marked data set including at least one difference part between at least one standard character practiced by the user and a corresponding copy character; Determining the calligraphy practice content from a pre-stored standard character database according to the marked data set, wherein the calligraphy practice content includes at least one of the difference parts; The calligraphy practice content is sent to the terminal device.
2. The method according to claim 1, characterized in that The content of the calligraphy practice is the standard characters to be copied; Determining the calligraphy practice content from a pre-stored standard character database according to the marked data set includes: Determine a candidate character set from the standard character database, the candidate character set including a plurality of candidate standard characters, each of the candidate standard characters is different from the standard character most recently practiced by the user, and each of the candidate standard characters includes a difference between the standard character most recently practiced by the user and a corresponding copy character; The standard character to be copied is determined from the candidate character set.
3. The method according to claim 2, characterized in that The step of determining the standard character to be copied from the candidate character set comprises: Determining a recommended value for each of the candidate standard words; A candidate standard character with the largest recommendation value in the candidate character set is determined as the standard character to be copied.
4. The method according to claim 2 or 3, characterized in that: After sending the calligraphy practice content to the terminal device, the method further includes: Receiving a first batch of modification requests sent by the terminal device, the first batch of modification requests including a first copying image of a user, the first copying image including a first copying character corresponding to the standard character to be copied; According to the first batch of modification requests, detecting the difference between the first copy character and the standard character to be copied; The marked data set is updated according to the difference between the first copied character and the standard character to be copied.
5. The method according to claim 4, characterized in that The method further comprises: Marking the area where the difference between the first copied character and the standard character to be copied is located in the first copied image to obtain a first marked image; The first marked image is sent to the terminal device.
6. The method according to claim 2 or 3, characterized in that: After sending the calligraphy practice content to the terminal device, the method further includes: Receiving a second copying image of a user sent by the terminal device, wherein the second copying image includes a first copying character corresponding to the standard character to be copied and a difference between the first copying character and the standard character to be copied; The marked data set is updated according to the difference between the first copied character and the standard character to be copied.
7. The method according to claim 1, characterized in that The content of calligraphy practice is the text to be copied; Determining the content of the calligraphy practice from a pre-stored standard character database according to the marked data set includes: Determine at least one candidate standard word that the user has not practiced from the standard word database, each of the candidate standard words includes at least one of the difference parts in the marked data set; The text to be copied is generated according to the at least one candidate standard character.
8. The method according to claim 7, characterized in that The determining at least one candidate standard word that the user has not practiced from the standard word database comprises: A candidate word set corresponding to each of the difference parts is determined from the standard word database, each of the candidate word sets including at least one candidate standard word that has not been practiced by the user and has a corresponding difference part.
9. The method according to claim 8, characterized in that The text to be copied includes: at least one of the candidate standard characters in each of the candidate character sets, or at least one of the candidate standard characters in each of the candidate character sets and at least one standard character that the user has practiced.
10. The method according to any one of claims 7 to 9, characterized in that After sending the calligraphy practice content to the terminal device, the method further includes: receiving a second correction request sent by the terminal device, wherein the second correction request includes a third copying image of a user, and the third copying image includes a copying character corresponding to the standard character in the text to be copied; According to the second correction request, detecting the difference between the standard characters in the text to be copied and the corresponding copied characters; The marked data set is updated according to the difference between the standard characters in the text to be copied and the corresponding copied characters.
11. The method according to claim 10, characterized in that The method further comprises: Marking the area where the difference between the copied character and the corresponding standard character in the third copied image is located to obtain a second marked image; The second marked image is sent to the terminal device.
12. The method according to any one of claims 7 to 9, characterized in that After sending the calligraphy practice content to the terminal device, the method further includes: Receiving a fourth copying image of the user sent by the terminal device, wherein the fourth copying image includes a difference between the copying character corresponding to the standard character in the text to be copied and the corresponding standard character; The marked data set is updated according to the difference between the copied characters corresponding to the standard characters in the text to be copied and the corresponding standard characters.
13. A device for recommending calligraphy practice content, characterized in that: include: At least one module, wherein the at least one module is used to implement the method according to any one of claims 1 to 12.
14. A cloud server, characterized in that: include: A processor, wherein the processor is configured to run a computer program stored in a memory to implement the method according to any one of claims 1 to 12.
15. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the method according to any one of claims 1 to 12 is implemented.