Electronic device for changing style of handwritten content and method thereof

The electronic device addresses the challenge of changing writing content style by removing noise segments and transforming font styles, enhancing the clarity and readability of handwritten text through its processing and display capabilities.

WO2025089606A1PCT designated stage expired Publication Date: 2025-05-01SAMSUNG ELECTRONICS CO LTD
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
PCT/KR2024/013358
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2023-11-14
Filing Date
2024-09-04
Publication Date
2025-05-01

AI Technical Summary

Technical Problem

Existing electronic devices struggle to effectively change the style of writing content, such as penmanship, by removing noise segments like serifs and transforming the font style, which affects the clarity and readability of handwritten text.

Method used

An electronic device equipped with a processor and a display, capable of detecting external objects dragged on the screen, executes functions to remove noise segments from strokes and change the font style using a model, such as an artificial neural network, to improve the visibility and readability of the writing content.

Benefits of technology

The device enhances the accuracy of writing recognition and improves the visibility and readability of the transformed writing content by effectively removing noise segments and changing the font style, resulting in clearer and more legible text.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure KR2024013358_01052025_PF_FP_ABST
    Figure KR2024013358_01052025_PF_FP_ABST
Patent Text Reader

Abstract

A processor of an electronic device according to an embodiment may display, in a display, a stroke representing a path, along which an external object is dragged, on the display on the basis of the detection of the external object dragged on the display. The processor may execute a function for removing a noise segment, which is detected by using a plurality of points included in the stroke, from the stroke in response to the noise segment of the stroke. The processor may change the shape of at least one of a plurality of strokes by using a model for changing the penmanship of one or more characters represented by the plurality of strokes including the stroke from which the noise segment has been removed.
Need to check novelty before this filing date? Find Prior Art

Description

Electronic device and method for changing the style of handwritten content

[0001] The present disclosure relates to an electronic device and method for changing the style (e.g., penmanship) of handwritten content.

[0002] Electronic devices are being developed that extract text from handwriting represented by strokes drawn by a user. For example, a user may draw strokes representing handwriting by touching the display of the electronic device with a finger, moving a stylus pen, or moving a pointing device (e.g., a mouse) connected to the electronic device. From these strokes, the electronic device can identify characters, such as alphabets. Based on the identification of one or more characters, the electronic device can identify text containing the one or more characters.

[0003] The above information may be provided as background art to aid in understanding the present disclosure. No claim or determination is made as to whether any of the above-described matters constitute prior art related to the present disclosure.

[0004] According to one embodiment, an electronic device may include a display, a memory including one or more storage media and storing instructions, and at least one processor including a processing circuit. The instructions, when individually or collectively executed by the at least one processor, may cause the electronic device to display, within the display, a stroke representing a path on the display along which an external object is dragged, based on detecting an external object being dragged on the display. The instructions, when individually or collectively executed by the at least one processor, may cause the electronic device to perform a function for removing a noise segment from a stroke, in response to a noise segment of the stroke detected using a plurality of points included in the stroke. The instructions, when individually or collectively executed by the at least one processor, may cause the electronic device to change the shape of at least one of the plurality of strokes using a model for changing the penmanship of one or more characters represented by the plurality of strokes including the stroke from which the noise segment has been removed.

[0005] In one embodiment, a method of an electronic device including a display and a processor is provided. The method may include an operation of displaying, within the display, a stroke representing a path along which the external object is dragged, based on detection of an external object being dragged on the display. The method may include an operation of executing a function for removing a noise segment from the stroke, in response to a noise segment of the stroke detected using a plurality of points included in the stroke. The method may include an operation of changing a shape of at least one of the plurality of strokes using a model for changing a font of one or more characters represented by the plurality of strokes including the stroke from which the noise segment has been removed.

[0006] In one embodiment, an electronic device may include a display and a processor. The processor may be configured to identify an input representing a drawing of a plurality of first strokes based on detecting an external object being dragged on the display. The processor may be configured to execute a preprocessing function to reduce a serif formed on at least one end of the plurality of first strokes. The processor may be configured to display a plurality of second strokes, corresponding to the plurality of first strokes modified by the preprocessing function, and having a second font different from a first font of the plurality of first strokes, within the display.

[0007] In one embodiment, a method of an electronic device including a display and a processor is provided. The method may include an operation of identifying an input representing a drawing of a plurality of first strokes based on detecting an external object being dragged on the display. The method may include an operation of executing a preprocessing function for reducing a serif formed on at least one end of the plurality of first strokes. The method may include an operation of displaying a plurality of second strokes on the display, the second strokes corresponding to the plurality of first strokes modified by the preprocessing function and having a second font different from a first font of the plurality of first strokes.

[0008] FIG. 1 illustrates an exemplary operation of an electronic device that changes the shape of at least one of a plurality of strokes included in handwritten content.

[0009] FIG. 2 illustrates an exemplary block diagram of an electronic device according to one embodiment.

[0010] FIG. 3 illustrates an exemplary flowchart for explaining the operation of an electronic device according to one embodiment.

[0011] FIG. 4 illustrates an exemplary operation of an electronic device for displaying a stroke comprising a plurality of interconnected points.

[0012] FIGS. 5A and 5B illustrate exemplary flowcharts for explaining the operation of an electronic device according to one embodiment.

[0013] Figures 6a and 6b illustrate exemplary operations of an electronic device in relation to a noise segment (e.g., a serif) included in a stroke.

[0014] FIG. 7 illustrates an exemplary structure of a font change model included in an electronic device according to one embodiment.

[0015] FIG. 8 illustrates an exemplary flowchart for explaining the operation of an electronic device related to a font change model.

[0016] FIG. 9 illustrates an exemplary flowchart for explaining the operation of an electronic device for optimizing handwritten content to be transmitted to an external electronic device using a font change model.

[0017] FIG. 10 illustrates an exemplary flowchart for explaining the operation of an electronic device related to a font change model.

[0018] FIG. 11 illustrates an exemplary flowchart for explaining the operation of an electronic device related to a font change model.

[0019] FIG. 12 illustrates an exemplary flowchart for explaining the operation of an electronic device related to a font change model.

[0020] FIG. 13 is a block diagram of an electronic device within a network environment according to various embodiments.

[0021] Hereinafter, various embodiments of this document are described with reference to the attached drawings.

[0022] FIG. 1 illustrates an exemplary operation of an electronic device (101) for changing the shape of at least one of a plurality of strokes included in handwritten content. In one embodiment, the electronic device (101) may be referred to as a terminal (or user terminal) in terms of being owned by a user. The terminal may include, for example, a personal computer (PC) such as a laptop or desktop. The terminal may include, for example, a smartphone, a smartpad, and / or a tablet PC. The terminal may include a smart accessory such as a smartwatch and / or a head-mounted device (HMD).

[0023] Referring to FIG. 1, an exemplary screen displayed on a display (110) of an electronic device (101) is illustrated. Hereinafter, a screen may refer to a user interface (UI) displayed within at least a portion of the display (110). The screen may include, for example, Windows of a Windows operating system and / or an activity of an Android operating system. The embodiment is not limited thereto, and the screen may be formed in an external space by light output from the electronic device (101) to the external space. For example, the screen may be formed on a plane onto which the light is projected within the external space. For example, the screen may be displayed three-dimensionally in the form of a hologram within the external space. The screen displayed on the display (110), as exemplarily illustrated in FIG. 1, may be displayed by an electronic device (101) executing a software application (hereinafter, “handwriting application”) for managing handwriting content.

[0024] Hereinafter, handwritten content may include writings (e.g., handwriting and / or hand-drawing) that are digitized information stored in the electronic device (101). The embodiment is not limited thereto, and the handwritten content may further include text, images, video, audio, or any combination thereof. The handwritten content may include at least one stroke generated by a user's action to write a letter and / or draw a picture. The action may include an action of dragging a finger on the display (110) and / or contacting a stylus pen on the display (110).

[0025] Hereinafter, a stroke may mean a route, path, or trajectory of an external object (e.g., a user's fingertip and / or a stylus pen) that has come into contact with the display (110). For example, a character "+" drawn on the display (110) using a stylus pen may include a first stroke, which is a vertical path of the stylus pen that has come into contact with the display (110), and a second stroke, which is a horizontal path of the stylus pen that has come into contact with the display (110).

[0026] According to one embodiment, the electronic device (101) may display, within the display (110), strokes representing a path on the display (110) along which the external object is dragged based on detecting an external object being dragged on the display (110). When the external object is repeatedly brought into contact with the display (110), the electronic device (101) may display strokes corresponding to the paths of the repeatedly brought into contact with the external object on the display (110).

[0027] Referring to FIG. 1, an exemplary screen displayed by an electronic device (101) that receives handwritten content including one or more strokes is illustrated. The screen displayed within a display (110) may include a visual object (121) indicating a title of the handwritten content. Within the display (110), the electronic device (101) may display an area (122) for receiving an input indicating a drawing of one or more strokes. The area (122) may be referred to as a body area of ​​the handwritten content. The electronic device (101) may display at least a portion of the handwritten content within the area (122). The electronic device (101) may display executable objects related to editing the handwritten content within an area (123) of the display (110). In one embodiment, the area (123) may be referred to as a toolbar. The electronic device (101) may display executable objects (e.g., a home button, a back button, and / or an application switching button) for switching software applications running on the display (110) within an area (124) of the display (110). The area (124) may be referred to as a navigation bar. An exemplary hardware configuration included in the electronic device (101) for displaying the screen of FIG. 1 is described with reference to FIG. 2.

[0028] In one embodiment, the electronic device (101) that detects an external object in contact with the area (122) may visualize a stroke representing a path along which the external object is dragged. Referring to FIG. 1, an exemplary state in which a plurality of strokes (130) are displayed within the area (122) is illustrated. The plurality of strokes (130) may represent a combination of a plurality of characters (e.g., text such as "reduce serif for clear notes"). According to one embodiment, the electronic device (101) may perform an operation to change the penmanship of characters represented by the plurality of strokes (130). A penmanship is a feature included in handwriting, and may be distinguished by a method of drawing a stroke, a thickness of a stroke, and / or an appearance, shape, and / or dimensions (e.g., width, height, aspect ratio, and / or size) of a character represented by at least one stroke. A font may be related to a user's stroke drawing habits and / or style. A font may be referred to as a style. A font may differ from the font (e.g., typeface) of digitized text represented by binary codes according to an encoding standard such as Unicode (or ASCII (American Standard Code for Information Interchange)).

[0029] Referring to FIG. 1, when receiving a user input for drawing a plurality of strokes (130) through a display (110), the electronic device (101) can change the font of text expressed by the plurality of strokes (130). For example, in order to improve clarity, readability, and / or visibility of the text, the electronic device (101) can change at least one of the plurality of strokes (130). For example, the electronic device (101) can change the shape, size, position, and / or length of at least one of the plurality of strokes (130), or remove a segment of at least one of the plurality of strokes (130).

[0030] In one embodiment, because the display (110) comprises a material different from paper, an external object (e.g., a finger and / or a stylus pen) in contact with the display (110) may move differently than an external object on the paper. For example, because the display (110) has a different coefficient of friction than the paper, a stylus pen in contact with the display (110) may slide relatively more easily than a stylus pen in contact with the paper. Because of the characteristics of the display (110) described above, a plurality of strokes (130) drawn within the display (110) by tracking the motion of the stylus pen in contact with the display (110) may include one or more noise segments.

[0031] Referring to FIG. 1, among a plurality of strokes (130), a stroke (132) representing the alphabet "r" is exemplarily illustrated. An unintended motion (e.g., skidding) of the stylus pen on the display (110) may cause the generation of a noise segment (134) within the stroke (132). The noise segment (134) generated at one end (e.g., a beginning point and / or a terminal point) of the stroke (132) is exemplarily illustrated, but the embodiment is not limited thereto. The noise segment (134) may refer to a portion of the stroke (132) that interferes with the recognition of a character corresponding to the stroke (e.g., the alphabet "r") or causes the recognition of a character different from the character. The noise segment (134) may include a curved portion of a stroke (132), such as a serif. Referring to FIG. 1, a noise segment (134) having a spiral shape may correspond to a portion of a stroke (132) that is generated by the slippage of the stylus pen and does not match the shape of the alphabet "r".

[0032] According to one embodiment, an electronic device (101) may execute a function for removing a noise segment (134) (e.g., a serif) included in a stroke (132). The electronic device (101) may execute the function for each of a plurality of strokes (130). Referring to FIG. 1, a plurality of strokes (140) are exemplarily illustrated as a result of removing noise segments (e.g., a noise segment (134)) included in a plurality of strokes (130) based on the execution of the function. Referring to a stroke (142) as a result of removing a noise segment (134) included in a stroke (132) based on the execution of the function, a portion (144) of the stroke (142) corresponding to the noise segment (134) may not include a curved portion such as a serif. The electronic device (101) that executes the above function can obtain or display a plurality of strokes (140) having improved visibility based on the removal of the noise segment (134).

[0033] According to one embodiment, the electronic device (101) can change the font of one or more characters represented by a plurality of strokes (140) including a stroke (142) from which a noise segment (134) has been removed. For example, the electronic device (101) can change the shape of at least one of the plurality of strokes (140) to change the font represented by the plurality of strokes (140) to a designated font (e.g., a professional font) having at least one of aesthetic characteristics, visibility, and / or readability. To change the font of the one or more characters, a model such as an artificial neural network (or neural network) can be used. An exemplary operation of the electronic device (101) for changing the shape of at least one of the plurality of strokes (140) using the model is described with reference to FIG. 3.

[0034] Referring to FIG. 1, a plurality of strokes (150) are exemplarily illustrated as a result of changing the shape of at least one of the plurality of strokes (140) according to a change in the font. An electronic device (101) that displays a plurality of strokes (130) corresponding to a user input received through an area (122) may generate or display a plurality of strokes (140) from the plurality of strokes (130) based on the search and / or removal of a noise segment. An electronic device (101) that generated a plurality of strokes (140) may generate or display a plurality of strokes (150) from the plurality of strokes (140) based on the change in the font. The electronic device (101) may generate a stroke (142) from a stroke (132) corresponding to the alphabet "r" based on the removal of a noise segment (134). The electronic device (101) can generate a stroke (152) from the stroke (142) based on a change in the font. For example, the operation of the electronic device (101) for changing the font may include a two-step process including a first operation for removing a noise segment and a second operation for changing the font. The first operation of the electronic device (101) for removing a noise segment (134) is described with reference to FIGS. 3 to 5A and / or 5B, and FIGS. 6A and / or 6B. The second operation of the electronic device (101) for changing the font is described with reference to FIGS. 7 to 12.

[0035] As described above, according to one embodiment, the electronic device (101) may execute a function to remove or reduce noise segments (e.g., noise segments (134)) included in the plurality of strokes (130) in order to change the font of text expressed by the plurality of strokes (130). Using the plurality of strokes (140) obtained by executing the function, the electronic device (101) may execute a function to change the font. By removing the noise segments, the electronic device (101) may improve the accuracy of changing the font and / or handwriting recognition. For example, the plurality of strokes (150) generated based on the change of the font may not include the noise segments (134) included in the plurality of strokes (130) that were initially identified through a user input. As the noise segment (134) is removed, the electronic device (101) can display a plurality of strokes (150) with improved visibility and / or readability.

[0036] Hereinafter, with reference to FIG. 2, hardware configurations and one or more programs included in an electronic device (101) to perform the two-stage process described above are exemplarily described.

[0037] FIG. 2 illustrates an exemplary block diagram of an electronic device (101) according to one embodiment. The electronic device (101) of FIG. 1 may include the hardware configuration of the electronic device (101) exemplarily illustrated in FIG. 2.

[0038] Referring to FIG. 2, according to one embodiment, an electronic device (101) may include at least one of a processor (210), a memory (215), a display (110), and a communication circuit (220). The processor (210), the memory (215), the display (110), and the communication circuit (220) may be electrically and / or operably coupled with each other by an electronic component such as a communication bus (202). Hereinafter, operably coupled hardware components may mean that a direct connection or an indirect connection is established between the hardware components, either wired or wireless, such that a second hardware component is controlled by a first hardware component among the hardware components. Although illustrated based on different blocks, the embodiment is not limited thereto, and some of the hardware components of FIG. 2 (e.g., at least a portion of the processor (210), the memory (215), and the communication circuit (220)) may be included in a single integrated circuit such as a system on a chip (SoC). The type and / or number of hardware components included in the electronic device (101) is not limited to those illustrated in FIG. 2. For example, the electronic device (101) may include only some of the hardware components illustrated in FIG. 2.

[0039] According to one embodiment, the processor (210) of the electronic device (101) may include hardware components for processing data based on one or more instructions. The hardware components for processing data may include, for example, an arithmetic and logic unit (ALU), a floating point unit (FPU), a field programmable gate array (FPGA), a central processing unit (CPU), and / or an application processor (AP). The number of processors (210) may be one or more. For example, the first processor (210) may have a multi-core processor structure such as a dual core, a quad core, a hexa core, or an octa core.

[0040] According to one embodiment, the memory (215) of the electronic device (101) may include hardware components for storing data and / or instructions input to or output from the processor (210). The memory (215) may include, for example, volatile memory such as random-access memory (RAM) and / or non-volatile memory such as read-only memory (ROM). The volatile memory may include, for example, at least one of dynamic RAM (DRAM), static RAM (SRAM), cache RAM, and pseudo SRAM (PSRAM). The non-volatile memory may include, for example, at least one of programmable ROM (PROM), erasable PROM (EPROM), electrically erasable PROM (EEPROM), flash memory, hard disk, compact disc, solid state drive (SSD), and embedded multimedia card (eMMC).

[0041] According to one embodiment, a display (110) of an electronic device (101) may output visualized information (e.g., a screen exemplarily illustrated in FIG. 1) to a user. For example, the display (110) may be configured to visualize information provided by a graphic processing unit (GPU) and / or a processor (210). The display (110) may include a liquid crystal display (LCD), a plasma display panel (PDP), and / or light emitting diodes (LEDs). The LEDs may include organic LEDs (OLEDs). The display (110) may include a flat panel display (FPD) and / or electronic paper. The embodiment is not limited thereto, and the display (110) may have an at least partially curved shape or a deformable shape. A display (110) having a deformable shape may be referred to as a flexible display.

[0042] According to one embodiment, the display (110) of the electronic device (101) may include a sensor (e.g., a touch sensor panel (TSP)) for detecting an external object (e.g., a user's finger) on the display (110). For example, based on the TSP, the electronic device (101) may detect an external object that is in contact with the display (110) or floating on the display (110). In response to detecting the external object, the electronic device (101) may execute a function associated with a specific visual object among visual objects displayed within the display (110) that corresponds to a location of the external object on the display (110).

[0043] According to one embodiment, the display (110) of the electronic device (101) may include a panel (e.g., a digitizer) for detecting a stylus pen. The stylus pen adjacent to the display (110) may include a circuit that is activated by a magnetic field (or an electric field) formed by the panel. Using the circuit, the stylus pen may transmit a signal for detecting a position of the stylus pen on the display (110). Using the signal, the processor (210) may calculate or determine a position of the stylus pen floating on the display (110) and / or in contact with the display (110).

[0044] According to one embodiment, the communication circuit (220) of the electronic device (101) may include hardware for supporting transmission and / or reception of electrical signals between the electronic device (101) and an external electronic device (e.g., a server (250)). The communication circuit (220) may include, for example, at least one of a modem (MODEM), an antenna, and an optical / electronic (O / E) converter. The communication circuit (220) may support transmission and / or reception of electrical signals based on various types of protocols, such as Ethernet, a local area network (LAN), a wide area network (WAN), wireless fidelity (WiFi), near field communication (NFC), Bluetooth, Bluetooth low energy (BLE), ZigBee, long term evolution (LTE), fifth generation (5G) new radio (NR), sixth generation (6G), and / or above-6G.

[0045] As an example for detecting a stylus pen, a panel within the display (110) referred to as a digitizer is exemplified, but the embodiment is not limited thereto. For example, the electronic device (101) can wirelessly receive a signal (e.g., a beacon signal) indicating the position of the stylus pen from the stylus pen through the communication circuit (220). Using the signal, the processor (210) can detect the position of the stylus pen projected onto the display (110). The electronic device (101) can receive the signal from the stylus pen paired with the electronic device (101) based on a wireless communication protocol such as BLE.

[0046] Although not illustrated, the electronic device (101) may include output means for outputting information in a form other than a visualized form. For example, the electronic device (101) may include a speaker for outputting an acoustic signal. For example, the electronic device (101) may include a motor for providing haptic feedback based on vibration.

[0047] Referring to FIG. 2, a server (250) connected to an electronic device (101) via a communication circuit (220) is illustrated. The server (250) may include at least one of a processor (260), a memory (265), and a communication circuit (270). The processor (260), the memory (265), and the communication circuit (270) may be electrically and / or operatively connected to each other by electronic components such as a communication bus (252). The processor (260), the memory (265), and the communication circuit (270) of the server (250) may perform functions substantially the same as or similar to those of the processor (210), the memory (215), and the communication circuit (220) included in the electronic device (101). Among the descriptions of the processor (260), memory (265), and communication circuit (270) of the server (250), descriptions that overlap with those of the processor (210), memory (215), and communication circuit (220) included in the electronic device (101) may be omitted.

[0048] Referring to FIG. 2, within the memory (215), one or more instructions (or commands) indicating operations and / or actions to be performed by the processor (210) on data may be stored. A set of one or more instructions may be referred to as firmware, an operating system, a process, a routine, a sub-routine, and / or a software application (hereinafter, “application”). Similarly, within the memory (265) of the server (250), one or more instructions indicating operations and / or actions to be performed by the processor (260) on data may be stored. The processor (210) of the electronic device (101) and / or the processor (260) of the server (250) may perform at least one of the operations described with reference to FIGS. 3 to 12 when a set of a plurality of instructions distributed in the form of an operating system, firmware, driver, and / or application is executed.

[0049] Hereinafter, the fact that an application is installed in an electronic device (101) and / or a server (250) may mean that one or more instructions provided in the form of an application are stored in a memory (215) of the electronic device (101) and / or a memory (265) of the server (250), and that the one or more applications are stored in a format executable by a processor (210) of the electronic device (101) and / or a processor (260) of the server (250) (e.g., a file having an extension specified by an operating system of the electronic device (101) and / or the server (250).

[0050] Referring to FIG. 2, a server application (280) is illustrated as an exemplary application installed in the memory (265) of the server (250). The processor (260) executing the server application (280) controls the communication circuit (270) to establish or disconnect a communication link with one or more user terminals (e.g., electronic device (101)). Through the communication link, the processor (260) can obtain information related to handwritten content transmitted from the electronic device (101).

[0051] Referring to FIG. 2, a handwriting application (230) is illustrated as an exemplary application installed in the memory (215) of the electronic device (101). The handwriting application (230) may be installed in the memory (215) to perform functions for creating, modifying, and / or deleting handwriting content. The processor (210) executing the handwriting application (230) may track the motion of an external object (e.g., a user's finger and / or a stylus pen) in contact with the display (110) and detect or identify one or more strokes (e.g., a plurality of strokes (130) of FIG. 1) represented by the motion. The processor (210) may display a screen provided from the handwriting application (230) and including an area (e.g., area (122) of FIG. 1) in which the one or more strokes can be detected.

[0052] Referring to FIG. 2, the handwriting application (230) may include a function and / or subroutine for modifying at least one stroke included in the handwriting content. Referring to FIG. 2, instances (e.g., a noise corrector (232) and / or a font converter (234)) within the handwriting application (230) for executing the function are illustrated. An instance (or process) may mean a unit of one or more operations performed by a processor (210) executing a program such as the handwriting application (230).

[0053] In one embodiment, the processor (210) executing the noise compensator (232) may analyze one or more strokes indicated by a user input to detect or remove noise segments such as serifs (e.g., noise segment (134) of FIG. 1). By executing the noise compensator (232), the processor (210) may extract or generate feature information associated with the one or more strokes. The feature information is exemplarily described with reference to FIG. 4. The processor (210) executing the noise compensator (232) may use the feature information to detect or determine a noise segment within a stroke corresponding to the feature information. The processor (210) executing the noise compensator (232) may remove or change the detected noise segment from the stroke. The noise compensator (232) may be executed to perform the first operation of a two-stage process for changing a font.

[0054] In one embodiment, the processor (210) executing the font converter (234) may at least partially change (e.g., transform) the shape of one or more strokes (e.g., one or more strokes indicated by the user input and / or one or more strokes generated based on the execution of the noise compensator (232). For example, the processor (210) executing the font converter (234) may perform computations related to the font change model (236) to combine different fonts or to generate one or more strokes having a specific font applied. Based on the execution of the font converter (234), the processor (210) may change the font of a plurality of strokes indicated by the user input. Based on the change in font, the processor (210) may generate or display aesthetic strokes.

[0055] Referring to FIG. 1, a font change model (236) may be provided as at least a part of a handwriting application (230). A model including the font change model (236) may include hardware (e.g., a neural processing unit (NPU) and / or GPU), software, or any combination thereof that simulates intellectual activities (e.g., cognition, learning, reasoning, and / or creation) of living organisms including humans. The model may include an artificial neural network, which is a mathematical model of neural activity for the intellectual activity. In order to drive the font change model (236), interconnections of neurons (and / or perceptrons), which are units of neural activity, and / or weights assigned to the interconnections may be stored in a memory (215).

[0056] In one embodiment, the font change model (236) may include information for simulating the neural activity using a topology such as a convolutional neural network (CNN), a recurrent neural network (RNN), and / or a feedforward neural network (FFN). The embodiment is not limited thereto, and the font change model (236) may include a generative model having a structure based on a transformer, such as a bidirectional encoder representations from transformers (BERT) and / or a generative pre-trained transformer (GPT). Using the font change model (236), the processor (210) of the electronic device (101) may change a plurality of strokes included in the handwritten content. For example, the font change model (236) may be trained such that only the font represented by the plurality of strokes is changed while maintaining an association between the plurality of strokes and at least one character.

[0057] In one embodiment, the electronic device (101) can obtain information related to the operation and / or update of the font change model (236) from a server (250) connected via a communication circuit (220). To provide the information, the processor (260) of the server (250) can execute a server application (280). The server application (280) can include a font change model (282) corresponding to the font change model (236). The processor (260) of the server (250) can obtain information for changing or updating a font change model (e.g., a font change model (236)) stored in a plurality of user terminals including the electronic device (101) using the font change model (282). For example, the font change model (282) stored in the server (250) can correspond to the font change model (236) stored in the electronic device (101). The embodiment is not limited thereto, and the font change model (282) may be a base model (e.g., a teacher model of knowledge distillation) used for training the font change model (236).

[0058] For example, the processor (260) of the server (250) may perform training of a font change model (282) based on a massive amount of handwritten content. Using the font change model (282) including parameters (e.g., weights) tuned based on the training, the processor (260) of the server (250) may perform an operation to update the font change model (236) of the electronic device (101). For example, the processor (260) may train the font change model (282) such that the font and / or style of the handwritten content is changed between various fonts and / or styles.

[0059] In one embodiment, handwritten content of experts specializing in one or more fonts may be used to train the font change model (282). The embodiment is not limited thereto, and handwritten content collected from famous people and / or ordinary people may be used to train the font change model (282). The handwritten content may include strokes expressing natural language sentences including various alphabets and / or characters, such as pangram text. The embodiment is not limited thereto, and the processor (260) of the server (250) may communicate with a user terminal (e.g., electronic device (101)) connected via a communication circuit (270) to obtain handwritten content for training the font change model (282). In order to obtain the above handwriting content, the processor (260) can obtain the handwriting content managed by the handwriting application (230) from the handwriting application (230) executed by the processor (210) of the electronic device (101).

[0060] Referring to FIG. 2, in one embodiment where a font change model (282) stored in a server (250) is trained, the processor (260) may transmit information related to the font change model (282) (e.g., weights and / or a sequence of calculations specified for driving the font change model (282)) to an electronic device (101) connected via a communication circuit (270). For example, the processor (260) of the server (250) may transmit the information for updating the font change model (236) installed in the electronic device (101).

[0061] In one embodiment, the processor (210) of the electronic device (101) that has received information related to the font change model (282) can use the information to tune (e.g., fine-tune) the font change model (236). The font change model (236) may include all of the parameters related to the font change model (282) stored in the server (250). The embodiment is not limited thereto, and the font change model (236) may include only a portion of the parameters related to the font change model (282) based on an algorithm such as quantization and / or pruning. A font change model (282) having a greater number of layers and / or parameters than the font change model (236) may be used for training the font change model (236) based on knowledge distillation. The font change model (282) can act as a teacher model for training the font change model (236). An exemplary structure of the font change model (236) managed by the server (250) and / or the electronic device (101) is described with reference to FIG. 7.

[0062] Although an embodiment has been described in which the font change model (236) of the electronic device (101) is managed or updated based on the font change model (282) included in the server (250), the embodiment is not limited thereto. For example, the processor (210) of the electronic device (101) may perform training and / or tuning (e.g., fine-tuning) on ​​the font change model (236) stored in the memory (215). The processor (210) may receive, as a base model, information representing at least a portion of the font change model (282) from the server (250). Using the received information, the processor (210) may initialize the font change model (236). The processor (210) may additionally train the initialized font change model (236) using one or more handwritten contents acquired from a user of the electronic device (101). Additional training of the font change model (236) based on the processor (210) may be performed based on available resources of the electronic device (101) including the processor (210) (e.g., capacity of the memory (215) and / or performance of the processor (210). In one embodiment where the font change model (236) of the electronic device (101) includes the font change model (282) of the server (250) as a base model, the font change model (236) may further include at least one layer coupled to the base model.

[0063] As described above, according to one embodiment, the electronic device (101) may include a handwriting application (230) and / or a font change model (236) for changing the font of handwriting content. Hereinafter, with reference to FIG. 3, exemplary operations performed by the processor (210) of the electronic device (101) executing the handwriting application (230) will be described.

[0064] FIG. 3 illustrates an exemplary flowchart for explaining the operation of an electronic device according to one embodiment. The operations described with reference to FIG. 3 may be performed by the electronic device (101) of FIGS. 1 and 2 and / or the processor (210) of FIG. 2.

[0065] Referring to FIG. 3, in operation (310), a processor of an electronic device according to one embodiment may display, within the display, at least one first stroke representing a path of an external object being dragged on the display (e.g., display (110) of FIGS. 1 and / or 2). The external object of operation (310) may include a finger and / or a stylus pen in contact with the display for handwriting input. The plurality of strokes (130) of FIG. 1 may be an example of at least one first stroke of operation (310).

[0066] Referring to FIG. 3, within operation (310), the processor may identify an input indicating a drawing of at least one first stroke based on detecting an external object being dragged on the display. In response to the input, the processor may display the at least one first stroke within the display. The processor may store information related to the at least one first stroke within the memory. The information stored by the processor is described with reference to FIG. 4. While displaying the at least one first stroke based on the input, the processor may perform other operations (320, 330, 340) of FIG. 3. The processor may perform the other operations (320, 330, 340) based on whether a designated option for automatically changing a font is activated. The designated option may be changed by a user input identified through a software application for changing setting values ​​of the electronic device (101), such as a settings application.

[0067] Referring to FIG. 3, in operation (320), a processor of an electronic device according to an embodiment may execute a function for removing at least one noise segment (e.g., noise segment (134) of FIG. 1) included in at least one first stroke. The processor may execute a noise compensator (232) of FIG. 2 to perform operation (320). The function of operation (320) may include a preprocessing function for reducing a serif formed at one end of the at least one first stroke. Based on the execution of the preprocessing function, the processor may remove one or more points representing a serif from among points representing the at least one first stroke. Based on the preprocessing function, a portion corresponding to a noise segment within the at least one first stroke may be cropped. Based on the execution of the function of operation (320), a portion corresponding to a noise segment within the at least one first stroke may be straightened into a straight line.

[0068] Referring to FIG. 3, in operation (330), according to an embodiment, a processor of an electronic device may obtain at least one second stroke corresponding to at least one first stroke from which at least one noise segment has been removed, and having a second font different from the first font of the at least one first stroke. The processor may perform operation (330) by executing the font converter (234) of FIG. 2. The first font of operation (330) may be a font of one or more characters represented by the at least one first stroke, and may be a font of a user who drew the at least one first stroke on the display. The second font of operation (330) may be a font supported by the handwriting application (230) and / or the font change model (236) of FIG. 2, and may be a specialized, expert font for fonts.

[0069] Referring to FIG. 3, in operation (340), the processor of the electronic device according to one embodiment may display at least one second stroke of operation (340) within the display. For example, the processor may display at least one second stroke, which corresponds to at least one first stroke changed by the preprocessing function and has a second font different from the first font of the at least one first stroke, within the display. The processor may replace at least one first stroke displayed within the display based on operation (310) with at least one second stroke of operation (340). Based on the replacement, the processor may provide a user experience such as correcting the at least one first stroke drawn by the user.

[0070] Hereinafter, with reference to FIG. 4, an exemplary operation of an electronic device displaying at least one first stroke of an operation (310) is described.

[0071] FIG. 4 illustrates an exemplary operation of an electronic device (101) that displays a stroke (132) including a plurality of interconnected points. The electronic device (101) of FIG. 1, FIG. 2 and / or the processor (210) of FIG. 2 may perform the operation of the electronic device (101) described with reference to FIG. 4.

[0072] Referring to FIG. 4, an exemplary state of an electronic device (101) displaying a plurality of strokes (130) in response to an input received through an area (122) of a display (110) is illustrated. When the input is detected through a stylus pen in contact with the display (110), the electronic device (101) may perform sampling of the position of the stylus pen in contact with the display (110). Based on the sampling, the electronic device (101) may obtain one or more coordinate values ​​representing the position.

[0073] For example, while receiving an input to display a stroke (132) representing the alphabet “r”, the electronic device (101) may detect or identify positions of the stylus pen (e.g., points p1 to p10) at different timings based on the sampling. For example, when the stylus pen in contact with point p1 moves along the stroke (132), the electronic device (101) may detect the stroke (132) representing the path of the stylus pen in contact on the display (110) based on the connection of points p1 to p10 identified based on the sampling.

[0074] In one embodiment, the electronic device (101) may store information corresponding to the stroke (132) in a memory (e.g., memory (215) of FIG. 2). The information corresponding to the stroke (132) may be used to visualize the stroke (132) in the display (110). The information corresponding to the stroke (132) may include coordinate values ​​of points p1 to p10 identified based on sampling, the order and / or timings of the points. The order may be expressed by numerical values ​​(e.g., index values) uniquely assigned to each of the points.

[0075] Referring to FIG. 4, within a state where a stroke (132) expressed by connecting 10 points (e.g., points p1 to p10) is displayed, the electronic device (101) can display a plurality of strokes (130) by connecting other points. The electronic device (101) can change the position of at least one of the 10 points or remove it to change the font (e.g., the font of the alphabet “r”) expressed by the stroke (132). To change the font, the electronic device (101) can perform a two-stage process including a preprocessing operation of removing a noise segment. Based on the removal of the noise segment, at least one of the 10 points included in the stroke (132) can be deleted.

[0076] The electronic device (101) can detect a noise segment, such as a serif, using a plurality of points arranged on a plurality of strokes (130). Referring to FIG. 4, using ten points arranged on a stroke (132), the processor can extract or identify a noise segment within the stroke (132). The noise segment can include a portion of the stroke (132) where the angle and / or direction changes abruptly. The electronic device (101) can detect an inflection point and / or a local extreme point among the points included in the stroke (132). Based on the inflection point and / or the local extreme point, the electronic device (101) can detect or remove a noise segment.

[0077] In one embodiment, the operation of the electronic device (101) to detect and / or remove noise segments may be automatically performed based on a setting value associated with the plurality of strokes (130). For example, the electronic device (101) may perform the operation of detecting and / or removing noise segments from the plurality of strokes (130) while a designated mode, such as a font correction mode (or stroke correction mode), is activated. The electronic device (101) may display a visual object on the display (110) for activating and / or deactivating the designated mode. The designated mode may be activated or deactivated based on the setting value. For example, if, based on an input related to a visual object (410), the electronic device (101) replaces a plurality of strokes (130) with text including one or more characters (e.g., text including characters expressed using binary code), the electronic device (101) may not change the plurality of strokes (130) and / or remove noise segments included in the plurality of strokes (130). In the above example, the electronic device (101) may receive an input indicating whether to execute a function for changing a font of the plurality of strokes (130) through another visual object different from the visual object (410). In response to an input related to the other visual object, the electronic device (101) may execute the function for changing the font of the plurality of strokes (130), or may activate the specified mode by changing the setting value.

[0078] Hereinafter, exemplary operations of the electronic device (101) performed to remove noise segments are described with reference to FIGS. 5a, 5b, 6a and / or 6b.

[0079] FIGS. 5A and 5B illustrate exemplary flowcharts for explaining the operation of an electronic device according to one embodiment. The operations described with reference to FIGS. 5A and / or 5B may be performed by the electronic device (101) of FIGS. 1 and 2 and / or the processor (210) of FIG. 2.

[0080] Referring to FIG. 5A, in operation (510), a processor of an electronic device according to an embodiment may determine parameters for detecting a noise segment, such as a serif. Operation (510) may be performed in a state in which handwritten content including a plurality of strokes is received, such as the exemplary states of FIGS. 1 to 4 . Due to the nature of handwriting drawn in various sizes depending on the case, the electronic device (101) may perform operation (510) at a timing in which one or more strokes are detected, or at a timing in which a character (or figure) represented by the one or more strokes is detected.

[0081] In one embodiment, the parameters that the electronic device (101) determines by performing the operation (510) may include a reference length. The reference length may include the spacing (or height) of lines of characters represented by strokes drawn in a specific direction (e.g., the horizontal direction, the vertical direction, or another direction different from the direction of the display (110) of FIG. 1). The parameters of the operation (510) may include numerical values ​​(e.g., elements of an angle and / or a unit vector) indicating the direction of the lines. The reference length may include an average length of the strokes (or a maximum length, a minimum length, and / or a median of the lengths of the strokes). A value obtained by applying a specified ratio to the reference length may be determined as a threshold length. The threshold length may be included in the parameters of the operation (510) and may be used to distinguish characters represented by the strokes.

[0082] Referring to FIG. 5A, in operation (520), a processor of an electronic device according to an embodiment may calculate directions of points forming a plurality of strokes of handwritten content. The points of operation (520) may correspond to coordinate values ​​sampled from the location of an external object contacted on the display while detecting an external object being dragged to draw a specific stroke, such as points p1 to p10 of FIG. 4. The points of operation (520) may be sequentially connected to form a stroke.

[0083] The direction of the movement (520) may include the directions of each of the points included in the stroke. Referring to FIG. 5B, points (e.g., points p1 to p10) included in the stroke (132) are exemplarily illustrated. Within the exemplary stroke (132) of FIG. 5B, the direction of a specific point (e.g., point p7) determined based on the movement (520) may be represented by an angle (Θ) (theta) between a first line (521) connecting a start point of the stroke (132) and the specific point, and a second line (522) connecting the specific point, the end point, and the specific point. The angle (Θ) may be referred to as an angle and / or an angle change amount of point p7. For example, if a stroke is drawn vertically in a specific direction, the directions of the points included in the stroke may all be 0°. For example, if a stroke is drawn in the shape of a "U", the direction of points included in the stroke can increase up to 180º. The embodiment is not limited thereto, and for example, the direction may include the direction of a line connecting a specific point and another point connected to the specific point (e.g., a next point connected to the specific point along the direction of movement of the stroke). Within the example, the direction may correspond to a vector that includes as an element the difference between the coordinate value of the specific point and the coordinate value of the other point, and / or an angle of the vector (e.g., an azimuth angle). For example, the direction of a specific point may correspond to the direction of a tangent of a stroke determined on the specific point. The direction of a specific point may correspond to the direction of a line connecting two points adjacent to the specific point. For example, within the exemplary stroke (132) of FIG. 5b, the direction of point p7 may be the direction of the tangent line to point p7, or the direction of the line connecting points p6 and p8 adjacent to point p7.

[0084] Referring to FIG. 5A, in operation (530), a processor of an electronic device according to an embodiment may determine candidate local extreme points among points using the amount of change in directions of operation (520). The amount of change may include an angular difference in the directions of each of the points and / or a difference in the angles of each of the points. The processor may group two or more adjacent points among points included in a specific stroke. The processor may determine one of the grouped points as a representative point of the group. Among the grouped points, the amount of change in direction at the representative point may be the largest. The representative point may be referred to as a candidate local extreme point of operation (530). When a plurality of points included in a stroke are grouped into different groups, the processor may extract candidate local extreme points of each of the groups. The processor may determine, using the candidate local extreme points, whether each of the groups corresponds to a noise segment.

[0085] Referring to FIG. 5A, in operation (540), according to an embodiment, a processor of an electronic device may determine, from among the candidate poles of operation (530), a pole that is located at one end of a stroke and has an angle that changes beyond a threshold angle. Noise segments, such as serifs, may occur at both ends of a stroke, as exemplified with reference to FIGS. 1 and / or 4 . Taking into consideration locations on the stroke where noise segments frequently exist, the processor may extract, from among the groups of points, groups that are located at both ends of the stroke. For example, from among the groups of points, groups that are spaced apart from the ends of the stroke may not be determined as not corresponding to a noise segment. Using the amount of change in direction at the candidate pole of the extracted groups, the processor may determine the candidate pole as a pole. For the pole determined based on operation (540), the processor may additionally perform an operation of determining whether the group of points including the pole corresponds to a noise segment. For example, in one embodiment, the processor may additionally perform the operation of determining whether a group of points including a candidate pole positioned at one end of a stroke corresponds to a noise segment if the candidate pole has a direction that changes by more than a threshold angle.

[0086] Referring to FIG. 5A, in operation (550), a processor of an electronic device according to an embodiment may identify a model for determining a noise segment. The model of operation (550) is a model provided for driving the noise compensator (232) of FIG. 2, and may be trained to receive as input the coordinate values ​​of the poles and / or points within a group corresponding to the poles determined based on operation (540), and to provide as output information indicating whether the group and / or the poles correspond to a noise segment. If the model is not included in the electronic device, or if the model is not identified (550-No), the processor may perform operation (560). Operation (560) may be related to a rule for detecting a noise segment. If the model is identified (550-Yes), the processor may perform operation (570). Operation (570) may be performed using the model for detecting a noise segment.

[0087] Referring to FIG. 5A, in operation (560), a processor of an electronic device according to an embodiment may determine whether a pole determined based on operation (540) is included in a noise segment using a condition (or rule) associated with the noise segment. The condition may be set to determine whether points included in the pole and / or the group corresponding to the pole correspond to a boundary point of the noise segment. The condition may be related to an amount of change in direction at the pole. For example, if the direction at the pole changes by exceeding a threshold angle, the processor may determine that the pole and / or the group corresponding to the pole corresponds to a noise segment.

[0088] In one embodiment, the condition of the operation (560) may be related to an intensity (e.g., pressure of a stylus pen) associated with a pole and / or a thickness of a portion of a stroke corresponding to the pole. For example, a weaker pressure applied to the stylus pen may increase the probability of the stylus pen slipping. The processor may determine that the pole and / or the group corresponding to the pole corresponds to a noise segment if the intensity associated with the pole is less than a specified intensity. For example, the processor may determine whether the pole and / or the group corresponds to a noise segment based on distances between points of the pole and / or the group corresponding to the pole. The processor may determine whether the pole and / or the group corresponds to a noise segment based on an aspect ratio and / or a shape of points included in the group corresponding to the pole.

[0089] The conditions of the operation (560) used to determine a noise segment can be set based on thresholds of angle, intensity, distance, and / or aspect ratio. The thresholds can be adaptively adjusted based on the parameters determined based on the operation (510). For example, the threshold angle compared to the change in the direction of the poles can change depending on the length of the stroke. For example, the threshold distance compared to the distance between poles can increase or decrease depending on the length of the stroke. In the above example, the threshold distance can decrease as the length of the stroke becomes shorter. Using the rule-based operation (560), the processor can determine whether a group located at one end of the stroke and / or at least one point included in the group (e.g., a point including a pole) corresponds to a noise segment.

[0090] Referring to FIG. 5A, in operation (570), a processor of an electronic device according to an embodiment may determine a probability that a determined pole corresponds to or is included in a noise segment. The probability may be obtained using a model trained to calculate and / or determine a probability that a point, such as a pole, matches a boundary point of a noise segment. The model may receive as input coordinate values ​​of a point (e.g., a pole, or at least one point included in a stroke). The embodiment is not limited thereto, and the model may receive as input at least one of a direction of a point, distances between points, angles of points, a density of points, and / or parameters of operation (510).

[0091] Referring to FIG. 5A, in operation (580), the processor of the electronic device according to one embodiment may determine whether the determined pole is included in a noise segment. Based on the result of performing operation (560) and / or operation (570), the processor may determine whether the pole of operation (540) and / or the group including the pole corresponds to a noise segment. For example, if the condition of operation (560) is not satisfied, or the probability of operation (570) is less than a specified threshold, the pole may not be included in the noise segment. For example, if the condition of operation (560) is satisfied, or the probability of operation (570) is greater than or equal to the specified threshold, the pole may be determined to be included in the noise segment. If a pole that is not included in the noise segment is identified (580-No), the processor may perform operation (530) for a group different from the group including the pole of operation (520). If a pole included in a noise segment is identified (580-yes), the processor may perform an action (590).

[0092] Referring to FIG. 5A, in operation (590), a processor of an electronic device according to an embodiment may remove a portion of a stroke from an end of a stroke where a pole is placed to a pole. If it is determined that the pole corresponds to a noise segment, the processor may remove a segment of the stroke (e.g., a noise segment) corresponding to the pole and a group of points including the pole from the stroke. Since the pole is included in the group of points placed at one end of the stroke, the length of the stroke may be reduced based on operation (590). Since one end of the stroke is removed, the length of the stroke may be reduced, but the stroke may not be truncated.

[0093] As described above, according to one embodiment, an electronic device can identify at least one noise segment from a plurality of strokes included in handwritten content. The electronic device, having identified at least one noise segment, can remove or reduce the at least one noise segment from the plurality of strokes. Since the noise segment is removed, the electronic device can improve the legibility of one or more characters represented by the plurality of strokes. Hereinafter, one or more programs included in the electronic device to perform the operation of FIG. 5A will be described with reference to FIG. 6A and / or FIG. 6B.

[0094] Figures 6a and 6b illustrate exemplary operations of an electronic device (101) related to a noise segment (e.g., serif) included in a stroke (132). The electronic device (101) of Figures 1 and 2 and / or the processor (210) of Figure 2 may perform the operations of the electronic device (101) described with reference to Figures 6a and / or 6b. The operations of the electronic device (101) described with reference to Figures 6a and / or 6b may be related to at least one of the operations of Figures 3 and / or 5a (e.g., operation (320) of Figure 3).

[0095] Referring to FIG. 6A, sub-routines included in a noise compensator (232) installed in an electronic device (101) are illustrated based on different blocks. The sub-routines included in the noise compensator (232) can be divided into a stroke analyzer (610), a noise detector (620), and a stroke compensator (630) according to their functions. Based on the execution of the stroke analyzer (610), the electronic device (101) can obtain information related to a stroke (132) included in handwritten content. The information can include a direction (e.g., direction d1 to direction d10), an angle, a distance, and / or an intensity of a point (e.g., point p1 to point p10) included in the stroke (132).

[0096] In one embodiment, by executing the stroke analyzer (610), the electronic device (101) may perform operations (510, 520) of FIG. 5A. For example, if point p1 of the stroke (132) is a starting point and point p10 is an ending point, the electronic device (101) may determine the angle of point p2 as the angle between a first line connecting points p1 and p2 and a second line connecting points p2 and p10. If the angle of point p2 is different by a threshold angle from at least one of the angles of other points connected to point p2 (e.g., point p1 and / or point p3), the electronic device (101) may determine point p2 as an extreme point of a group including point p2 and the other points (e.g., a group including point p1 corresponding to one end of the stroke (132).

[0097] In one embodiment, the electronic device (101) may execute a noise detector (620) to detect or extract at least one point corresponding to a noise segment from among a plurality of points included in the stroke (132). Information acquired based on the stroke analyzer (610) may be used to detect at least one point corresponding to the noise segment. For example, the processor may use at least one of an angle or a distance between a first point corresponding to an end of the stroke (132) and a second point among the plurality of points to determine whether a segment of the stroke separated by the first point and the second point corresponds to the noise segment. By executing the noise detector (620), the electronic device (101) may perform at least one of operations (530, 540, 550, 560, 570) of FIG. 5A.

[0098] For example, for a group of points p1, p2, and p3, including point p2 as an extremum, the electronic device (101) may execute the noise detector (620) to determine whether the group and / or point p2 is associated with a noise segment. If the amount of change in angle at point p2 exceeds a threshold, the electronic device (101) may determine the group corresponding to point p2 as a noise segment and / or a serif.

[0099] In one embodiment, by executing the stroke corrector (630), the electronic device (101) may perform the operation (590) of FIG. 5A. For example, in a case where the group corresponding to point p2 is determined to be a noise segment and / or a serif, the electronic device (101) may remove points included in the group including point p2. Referring to FIG. 6A, the stroke (142) after points p1 to p3 are removed may not include a noise segment (e.g., a serif) formed around point p2.

[0100] As described above with reference to FIG. 6A, the electronic device (101) may determine a segment of the stroke (132) including a portion of the stroke (132) as a noise segment based on whether the segment corresponds to a serif. The segment determined as a noise segment may be removed from the stroke (132) or may be segmented. Since the noise segment within the stroke (132) is removed based on the stroke corrector (630), the electronic device (101) may remove elements that interfere with a change in the font and / or recognition of a character (e.g., “r”) corresponding to the stroke (132). Since the noise segment is removed from the stroke (132), the electronic device (101) may change the state of the stroke (132) to a state suitable for a change in the font.

[0101] The noise detector (620) of Fig. 6a may include a sub-routine for checking the condition of the operation (560) of Fig. 5a. The embodiment is not limited thereto, and the noise detector (620) may include a model for performing the operation (570) of Fig. 5a. Referring to Fig. 6b, an embodiment of an electronic device (101) that executes a noise compensator (232) using a model is illustrated. The noise compensator (232) installed in the electronic device (101) may include a stroke compensation model (640). With the stroke compensation model (640), the electronic device (101) may directly input information related to at least one of the points included in the stroke (132).

[0102] In one embodiment, using the stroke correction model (640) into which the information is input, the electronic device (101) can detect a noise segment (e.g., a serif) within the stroke (132). For example, from the stroke correction model (640), the electronic device (101) can obtain probabilities that each of the points included in the stroke (132) corresponds to a noise segment. By removing points (e.g., point p1 and / or point p2) having a probability exceeding a specified threshold, the electronic device (101) can generate or obtain a stroke (142) from which the noise segment has been removed. Although the operation of the electronic device (101) to remove the detected noise segment and / or the points included in the noise segment (e.g., point p1 to point p2 in the exemplary case of FIG. 6B ) has been described, the embodiment is not limited thereto. For example, the electronic device (101) can obtain coordinate values ​​of points (e.g., points p3 to p10) included in the stroke (142) from the stroke correction model (640). Based on the obtained coordinate values, the electronic device (101) can identify the stroke (142) from which the noise segment has been removed.

[0103] In one embodiment, the stroke compensation model (640) may be trained based on a pair of input data (e.g., stroke (132)) and output data (e.g., stroke (142)) of the noise compensator (232) of FIG. 6A. The pair may be referred to as ground truth data associated with the stroke compensation model (640).

[0104] As described above, the electronic device (101) can remove or reduce serif and / or noise segments included in the stroke (132) using rules and / or models (e.g., stroke correction model (640)). For handwritten content including a stroke (142) from which noise segments have been removed, the electronic device (101) can perform an operation to change the font. Hereinafter, exemplary operations of the electronic device (101) performed to change the font will be described with reference to FIGS. 7 to 12 .

[0105] FIG. 7 illustrates an exemplary structure of a font change model (236) included in an electronic device (101) according to one embodiment. The electronic device (101) of FIG. 1, FIG. 2 and / or the processor (210) of FIG. 2 may perform the operation of the electronic device (101) described with reference to FIG. 7. The operation of the electronic device (101) described with reference to FIG. 7 may be related to at least one of the operations of FIG. 3 and / or FIG. 5A (e.g., operation (330) of FIG. 3).

[0106] In one embodiment, the electronic device (101) may input strokes (140) included in handwritten content using a font change model (236). Using the font change model (236) in which the strokes (140) are input, the electronic device (101) may obtain or generate strokes (150) having a second font that is different from the first font of the strokes (140). The second font may be selected from one or more designated fonts supported by the font change model (236), or may be a combination of fonts supported by the font change model (236). The font of the strokes (150) may be set to improve at least one of the visibility, readability, and / or aesthetics of one or more characters expressed by the strokes (140). A user of the electronic device (101) may select one of a plurality of fonts supported by the font change model (236), as described with reference to FIGS. 8 to 12 , or may determine a ratio of the plurality of fonts. The fonts supported by the font change model (236) may include fonts of other users (e.g., professionals and / or artists) different from the user of the electronic device (101). The fonts supported by the font change model (236) may include the font of the user of the electronic device (101), represented by strokes (140).

[0107] Referring to FIG. 7, operations performed by the font change model (236) are illustrated as being divided into different blocks. The font change model (236) may include an encoder (710) including a sequential connection of a plurality of layers having progressively decreasing dimensions, and a decoder (730) including a sequential connection of a plurality of layers having progressively increasing dimensions. The encoder (710) and the decoder (730) may have a structure of a neural network referred to as a transformer.

[0108] For the font change model (236) trained to change the font, the electronic device (101) can input information related to strokes (140) from which noise segments have been removed. Training of the font change model (236) can be performed by a server connected to the electronic device (101), as described above with reference to FIG. 2, or can be performed directly by the electronic device (101). The information can be input into a specific layer of the encoder (710) of the font change model (236) (e.g., a layer having the largest dimension among the layers included in the encoder (710). The information can include coordinate values ​​of points included in the strokes (140) and / or data for distinguishing each of the strokes (140) (e.g., identifiers assigned to each of the strokes (140) and / or points).

[0109] Referring to FIG. 7, using the encoder (710) into which the information is input, the electronic device (101) can obtain or generate a latent vector (720). The latent vector (720) is implicit information and may include numerical values ​​related to features of information input to the encoder (710) (e.g., strokes (140) from which noise segments such as serifs have been removed) based on a reduced dimension. The entire set of latent vectors that can be output by the encoder (710) may be referred to as a latency space. The latent vector (720) may be referred to as feature information of the information input to the encoder (710) and / or strokes (140) corresponding to the information. Using the decoder (730) of the font change model (236), the electronic device (101) can perform calculations to generate or obtain strokes (150) from the latency vector (720). For example, the decoder (730) can include a trained neural network to generate strokes (150) from the latency vector (720).

[0110] In one embodiment, the font change model (236) may include a style vector generator (740) connected to at least one layer within the encoder (710). The style vector generator (740) may include a model in which multiple layers are combined. For example, the style vector generator (740) may include a styling layer (741) connected to the encoder (710), a preference layer (743) connected to the styling layer (741) to obtain a first style vector (yi) generated from the styling layer (741), and a normalization layer (744) connected to the preference layer (743) to obtain a preference vector (ri) generated from the preference layer (743). The second style vector (si) (745) generated from the normalization layer (744) may have a specified length. By combining the second style vector (745) with the latent vector (720) provided to the decoder (730), the electronic device (101) can generate or display strokes (150) having a font corresponding to the second style vector (745).

[0111] In one embodiment, the font change model (236) may be trained based on handwritten content (e.g., handwriting) to which multiple fonts are applied. Using the font change model (236), the electronic device (101) may obtain strokes (150) in which the shape of at least one of the strokes (140) is changed. The shapes of the strokes (140) may be changed to have a font associated with the second style vector (745) while maintaining the legibility of one or more characters corresponding to the strokes (140).

[0112] Referring to FIG. 7, based on the connection between the encoder (710) and the styling layer (741), the latency vector (720) determined by the encoder (710) and / or information included in the encoder (710) may be provided to the styling layer (741). The styling layer (741) may include one or more hidden layers in addition to the layer connected to the encoder (710). Using the styling layer (741), the electronic device (101) may generate or calculate a first style vector (yi) to be used for generating a second style vector (745). In the preference layer (743), the first style vector (yi) and the preference vector (pi) generated by the preference vector generator (742) may be combined with each other. The preference vector generator (742) may be a sub-routine of the font change model (236) configured to generate and / or output a preference vector (pi) based on a user's preference (or a setting value input by the user) related to a font. The electronic device (101) may input preference information (e.g., preference vector (pi)) indicating at least one font to be used for changing the shape of strokes (140) into the font change model (236) using the preference vector generator (742).

[0113] In the preference layer (743), the first style vector (yi) and the preference vector (pi) can be combined based on a multiplication operation. For example, based on point-wise multiplication, the electronic device (101) can generate or obtain a preference vector (ri) to be provided to the normalization layer (744) (e.g., ri = yi Х pi). The electronic device (101) can perform normalization on the preference vector (ri) input to the normalization layer (744) to generate or obtain a second style vector (745). The normalization can be performed based on an algorithm that adjusts the sum of the element values ​​of the second style vector (745) to 1, such as softmax.

[0114] In one embodiment, the electronic device (101) can combine preference information, such as a second style vector (745), with a latency vector (720) obtained from the encoder (710) and input to the decoder (730). The second style vector (745) and the latency vector (720) can be combined in various ways. For example, the electronic device (101) can combine the second style vector (745) with the latency vector (720) based on the point-by-point multiplication described above. For example, the electronic device (101) can combine the second style vector (745) with the latency vector (720) based on an addition operation. For example, the electronic device (101) can obtain or generate a combination of the latency vector (720) and the second style vector (745) based on a concatenation of the latency vector (720) and the second style vector (745). The combination based on the concatenation can have a vector form in which m elements of the latency vector (720) are followed by n elements of the second style vector (745).

[0115] In one embodiment, the electronic device (101) can generate or obtain strokes (150) having a changed font using a decoder (730) that inputs a combination of a latency vector (720) and a second style vector (745) within a font change model (236). The strokes (150) can have a font represented by the second style vector (745) and can display one or more characters represented by the strokes (140) represented by the latency vector (720). By changing only the font included in the strokes (140), the electronic device (101) can improve the visibility, readability, and / or aesthetics of the strokes (140) without distorting the information included in the strokes (140).

[0116] In one embodiment, a user of the electronic device (101) can change the font of strokes (140) using preference information of the preference vector generator (742). For example, the user can select one of the designated fonts supported by the font change model (236), mix the designated fonts to create a new font to be applied to the strokes (140), or mix the user's font represented by the strokes (140) and the designated fonts to create a new font to be applied to the strokes (140). The electronic device (101) can input strokes (140) with noise segments, such as serifs, removed, rather than strokes directly received from the user (e.g., strokes (130) of FIG. 1 ), into the font change model (236), and can generate or display strokes (150) with minimized noise segments. For example, the electronic device (101) can provide higher quality handwritten content to the user.

[0117] Hereinafter, with reference to FIGS. 8 to 12, an exemplary operation of an electronic device (101) based on the driving of a font change model (236) is described.

[0118] FIG. 8 illustrates an exemplary flowchart for explaining the operation of an electronic device related to a font change model (e.g., the font change model (236) of FIG. 2 and / or FIG. 7). The operation described with reference to FIG. 8 may be performed by the electronic device (101) of FIG. 1 and FIG. 2 and / or the processor (210) of FIG. 2. The operation of FIG. 8 may be related to at least one of the operations described with reference to FIG. 3 and / or FIG. 5A.

[0119] Referring to FIG. 8, in operation (810), according to an embodiment, a processor of an electronic device may determine a style vector to be applied to a font change model by using weights corresponding to each of the fonts supported by the font change model. The style vector of operation (810) may include the second style vector (745) of FIG. 7. The weights of operation (810) may be individually set for each of the fonts in order to apply only one of the fonts supported by the font change model to the handwritten content, or to apply a combination of the fonts. The weights of operation (810) may be referred to as preference information used in generating a preference vector (pi) of a preference vector generator (742) of FIG. 7.

[0120] Referring to FIG. 8, in operation (820), according to an embodiment, a processor of an electronic device may obtain second handwritten content having a font represented by the style vector of operation (810) by using a font change model input with a first handwritten content including a style vector determined based on operation (810) and a plurality of strokes. The font change model of operation (820) may include the font change model (236) of FIG. 2 and / or FIG. 7. The first handwritten content of operation (820) may include strokes from which noise segments have been removed, such as the strokes (140) of FIG. 7. The second handwritten content of operation (820) may include the strokes (150) of FIG. 7.

[0121] Referring to FIG. 8, in operation (830), according to one embodiment, a processor of an electronic device may provide second handwritten content as a result of changing a font of first handwritten content. For example, the processor may display at least a portion of the second handwritten content within a display (e.g., display (110) of FIGS. 1 and / or 2). If a user sets a weight for a specific font among the fonts of operation (810) to a maximum value (e.g., 100%) and sets weights of other fonts to minimum values ​​(e.g., 0%), the second handwritten content provided based on operation (830) may include a plurality of strokes that visualize one or more characters expressed by the first handwritten content in the specific font. In the example, a preference vector (pi) generated by a preference vector generator (742) of FIG. 7 may include the weights exemplified above. The embodiment is not limited thereto, and the processor may determine a preference vector (pi) by combining style vectors representing each of the designated fonts supported by the font change model based on the weights exemplified above.

[0122] For example, if the user sets at least two weights among the weights corresponding to the fonts supported by the font change model to values ​​different from the minimum value, the second handwritten content provided based on the operation (830) may include one or more characters expressed based on a combination of fonts corresponding to the at least two weights.

[0123] For example, if the user sets all of the weights corresponding to the fonts supported by the font change model to the minimum value (e.g., 0%), the second handwritten content provided based on operation (830) may have the font of the first handwritten content of operation (820). For example, if all of the weights are set to the minimum value, the processor may determine whether to maintain the font of one or more characters represented by the first handwritten content.

[0124] The operation of providing the second handwritten content of operation (830) may include not only the operation of displaying the second handwritten content within the display, but also the operation of transmitting the second handwritten content to an external electronic device different from the electronic device via a network. Below, with reference to FIG. 9, the operation of the electronic device for changing the handwritten content using a font suitable for the network is described.

[0125] FIG. 9 illustrates an exemplary flowchart for explaining the operation of an electronic device for optimizing handwritten content to be transmitted to an external electronic device using a font change model (e.g., the font change model (236) of FIG. 2 and / or FIG. 7). The operation described with reference to FIG. 9 may be performed by the electronic device (101) of FIGS. 1 and 2 and / or the processor (210) of FIG. 2. The operation of FIG. 9 may be related to at least one of the operations described with reference to FIG. 3, FIG. 5A, and / or FIG. 8.

[0126] Referring to FIG. 9, in operation (910), according to one embodiment, a processor of an electronic device may detect an event for transmitting first handwritten content including a plurality of strokes to an external electronic device. The first handwritten content may include a plurality of strokes directly obtained from a user, or may include a plurality of strokes from which noise segments, such as serifs, have been removed. The event of operation (910) may be detected in response to an input for sharing and / or storing the first handwritten content.

[0127] Referring to FIG. 9, in operation 920, according to an embodiment, a processor of an electronic device may generate a style vector corresponding to a designated font that can store handwritten content in a minimum size among fonts supported by a font change model. The designated font of operation 920 may be designed to express at least one character using a relatively small number of points. For example, as a character expressed by the font includes more straight strokes, the number of points required to express a straight stroke (e.g., at least 2) is smaller than the number of points required to express a curved stroke, and thus the number of points that must be included in handwritten content based on the font may be reduced. For example, the number of points that must be stored to express strokes included in the handwritten content may be reduced. The embodiment is not limited thereto, and the designated font of operation 920 may be designed to efficiently compress (or encode) and / or transmit information included in the handwritten content.

[0128] The style vector of the action (920) may be generated to select the specified font of the action (920) from among the fonts supported by the font change model. The weight corresponding to the specified font of the action (920) may be set to the maximum value, and the weight of another font different from the specified font may be set to the minimum value. Based on the weights, the electronic device (101) may obtain or calculate the preference vector (pi) and / or the second style vector (745) of FIG. 7.

[0129] Referring to FIG. 9, in operation (930), according to one embodiment, a processor of an electronic device may obtain second handwritten content having a specified font by using a font change model input with a style vector determined based on operation (920) and a first handwritten content including a plurality of strokes. The processor may perform operation (930) of FIG. 9 similarly to operation (820) of FIG. 8.

[0130] Referring to FIG. 9, in operation (940), according to an embodiment, a processor of an electronic device may transmit a signal related to the acquired second handwritten content to an external electronic device. Operation (940) of FIG. 9 may be related to operation (830) of FIG. 8. The processor may transmit information for displaying the second handwritten content (e.g., coordinate values ​​of points positioned on one or more strokes included in the second handwritten content) to the external electronic device. Since the second handwritten content includes one or more characters expressed according to a specified font of operation (920) (e.g., one or more characters expressed by the first handwritten content), the second handwritten content may express the one or more characters in a smaller capacity than the first handwritten content.

[0131] FIG. 10 illustrates an exemplary flowchart for explaining the operation of an electronic device related to a font change model (e.g., the font change model (236) of FIG. 2 and / or FIG. 7). The operation described with reference to FIG. 10 may be performed by the electronic device (101) of FIG. 1 and FIG. 2 and / or the processor (210) of FIG. 2. The operation of FIG. 10 may be related to at least one of the operations described with reference to FIG. 3, FIG. 5A, FIG. 8, and / or FIG. 9.

[0132] Referring to FIG. 10 , in operation (1010), according to an embodiment, a processor of an electronic device may obtain a first style vector representing a first font of the first handwritten content from a style vector generator of a font change model into which first handwritten content obtained from a user is input. The first handwritten content of operation (1010) may include a plurality of strokes from which noise segments such as serifs are removed, such as strokes (140) of FIG. 7 . The style vector generator of operation (1010) may include the style vector generator (740) of FIG. 7 . In an embodiment, the processor may obtain the first style vector of operation (1010) from a styling layer (e.g., styling layer (741) of FIG. 7 ) connected to an encoder (e.g., encoder (710) of FIG. 7 ) of a font change model into which a plurality of strokes of the first handwritten content are input. The first style vector of the action (1010) may include a second style vector (745) output from the style vector generator (740) while a plurality of strokes of the first handwritten content are input to the font change model, and a preferred vector (pi) (e.g., a vector with all elements set to 1) is generated indicating that no vector is selected by the preferred vector generator (742).

[0133] Referring to FIG. 10 , in operation 1020, a processor of an electronic device according to an embodiment may identify a second style vector similar to the first style vector of operation 1010, among style vectors corresponding to each of the fonts supported by the font change model. The processor may calculate similarities of the first style vector to the style vectors corresponding to each of the fonts supported by the font change model using an algorithm for calculating a distance between vectors, such as a Euclidean distance. The processor may determine, among the style vectors corresponding to each of the fonts, the style vector corresponding to the minimum similarity as the second style vector of operation 1020. For example, the second style vector of operation 1020 may be mapped to a font that is most similar to the first font of the first handwritten content, among the fonts supported by the font change model.

[0134] Referring to FIG. 10, in operation (1030), according to one embodiment, a processor of an electronic device may obtain second handwritten content having a second font represented by the second style vector by using a font change model in which a second style vector and first handwritten content are input. For example, the processor may combine the second style vector of operation (1040) with the latency vector (720) of FIG. 7. The processor may input the latency vector combined with the second style vector into a decoder of the font change model (e.g., decoder (730) of FIG. 7) to obtain the second handwritten content.

[0135] Referring to FIG. 10, in operation (1040), according to one embodiment, a processor of an electronic device may provide second handwritten content as a result of changing a font of first handwritten content. Operation (1040) of FIG. 10 may be performed similarly to operation (830) of FIG. 8. For example, the processor may provide second handwritten content having a second font similar to a first font of the first handwritten content (e.g., a font of a user who input the first handwritten content) among fonts supported by a font change model.

[0136] FIG. 11 illustrates an exemplary flowchart for explaining the operation of an electronic device related to a font change model (e.g., the font change model (236) of FIG. 2 and / or FIG. 7). The operation described with reference to FIG. 11 may be performed by the electronic device (101) of FIGS. 1 and 2 and / or the processor (210) of FIG. 2. The operation of FIG. 11 may be related to at least one of the operations described with reference to FIGS. 3, 5A, 8 to 10.

[0137] Referring to FIG. 11, in operation (1110), according to one embodiment, a processor of an electronic device may obtain a first style vector representing a first font of the first handwritten content from a style vector generator of a font change model in which the first handwritten content obtained from a user is input. Operation (1110) of FIG. 11 may be performed similarly to operation (1010) of FIG. 10.

[0138] Referring to FIG. 11, in operation (1120), according to one embodiment, a processor of an electronic device may identify a second style vector similar to a first style vector among style vectors corresponding to each of the fonts supported by the font change model. Operation (1120) of FIG. 11 may be performed similarly to operation (1020) of FIG. 10.

[0139] Referring to FIG. 11, in operation (1130), according to an embodiment, a processor of an electronic device may obtain a third style vector in which a first style vector and a second style vector are combined at a specific ratio. The third style vector may correspond to a new font in which fonts corresponding to the first and second style vectors of operation (1110) are combined. The ratio of operation (1130) may refer to a ratio between weights to be applied to each of the first and second style vectors. For example, elements of the third style vector of operation (1130) may be a sum (e.g., a weighted sum) of elements of the first style vector and elements of the second style vector to which each of the weights is applied. The ratio of operation (1130) may be determined using a numerical value that is adjustable by a user input.

[0140] Referring to FIG. 11, in operation (1140), according to one embodiment, a processor of an electronic device may obtain second handwritten content having a font represented by the third style vector by using a font change model into which a third style vector and first handwritten content are input. Operation (1140) of FIG. 11 may be performed similarly to operation (1030) of FIG. 10. The processor may input, as a decoder of the font change model, a combination of a latency vector obtained from an encoder into which the first handwritten content is input and the third style vector of operation (1130). Using the decoder into which the combination is input, the processor may obtain the second handwritten content.

[0141] Referring to FIG. 11, in operation (1150), according to one embodiment, a processor of an electronic device may provide second handwritten content as a result of changing a font of first handwritten content. Operation (1150) of FIG. 11 may be performed similarly to operation (1040) of FIG. 10. The processor may provide or display second handwritten content having a new font that combines a first font of the first handwritten content (e.g., a font of a user who input the first handwritten content) and a second font similar to the first font among fonts supported by a font change model, using a third style vector.

[0142] FIG. 12 illustrates an exemplary flowchart for explaining the operation of an electronic device related to a font change model (e.g., the font change model (236) of FIG. 2 and / or FIG. 7). The operation described with reference to FIG. 12 may be performed by the electronic device (101) of FIG. 1 and FIG. 2 and / or the processor (210) of FIG. 2. The operation of FIG. 12 may be related to at least one of the operations described with reference to FIG. 3, FIG. 5A, FIG. 8 to FIG. 11.

[0143] Referring to FIG. 12, in operation (1210), according to one embodiment, a processor of an electronic device may obtain a first style vector representing a first font of the first handwritten content from a style vector generator of a font change model in which the first handwritten content obtained from a user is input. Operation (1210) of FIG. 12 may be performed similarly to operation (1010) of FIG. 10 and / or operation (1110) of FIG. 11.

[0144] Referring to FIG. 12, in operation (1220), according to an embodiment, a processor of an electronic device may determine similarities between second style vectors corresponding to each of second fonts supported by a font change model and a first style vector. The similarities of operation (1220) may be Euclidean distances of each of the second style vectors to the first style vector, as described with reference to operation (1020) of FIG. 10. The similarities may represent similarities of each of the second fonts to the first font.

[0145] Referring to FIG. 12, in operation (1230), according to an embodiment, the processor of the electronic device may combine second style vectors based on the similarities determined based on operation (1220) to generate a third style vector corresponding to a third font that is a combination of all of the first and second fonts. Since the second style vectors are combined based on the similarities of operation (1220), the third font represented by the third style vector may include elements similar to the first font as a new font that is a combination of the second fonts.

[0146] Referring to FIG. 12, in operation (1240), according to an embodiment, a processor of an electronic device may obtain second handwritten content having a third font by using a third style vector and a font change model in which the first handwritten content is input. Operation (1240) of FIG. 12 may be performed similarly to operation (820) of FIG. 8, operation (930) of FIG. 9, operation (1030) of FIG. 10, and / or operation (1140) of FIG. 11. The processor may input a combination of a latency vector obtained from an encoder of the font change model in which the first handwritten content is input and the third style vector of operation (1230) into a decoder of the font change model. The processor may obtain information related to one or more strokes included in the second handwritten content from the decoder.

[0147] Referring to FIG. 12, in operation (1250), according to one embodiment, a processor of an electronic device may provide second handwritten content as a result of changing a font of first handwritten content. Operation (1250) of FIG. 12 may be performed similarly to operation (1040) of FIG. 10 and / or operation (1150) of FIG. 11 and / or operation (830) of FIG. 8. The processor may provide or display second handwritten content having a new font that combines second fonts supported by a font change model using the third style vector of operation (1230). The second fonts may be combined based on similarities with a first font of the first handwritten content (e.g., a font of a user who input the first handwritten content). By utilizing a combination of fonts, the processor can generate or provide handwritten content having characteristics of both the font of the user of the electronic device and a specialized font (e.g., a font of an expert and / or celebrity) used in training the font change model. For example, the second handwritten content provided by performing operation (1250) may have characteristics of the font of the user of the electronic device, as well as characteristics of the font of another user (e.g., a font expert).

[0148] FIG. 13 is a block diagram of an electronic device (1301) within a network environment (1300). Referring to FIG. 13, in the network environment (1300), the electronic device (1301) may communicate with the electronic device (1302) via a first network (1398) (e.g., a short-range wireless communication network), or may communicate with at least one of the electronic device (1304) or the server (1308) via a second network (1399) (e.g., a long-range wireless communication network). In one embodiment, the electronic device (1301) may communicate with the electronic device (1304) via the server (1308). According to one embodiment, the electronic device (1301) may include a processor (1320), a memory (1330), an input module (1350), an audio output module (1355), a display module (1360), an audio module (1370), a sensor module (1376), an interface (1377), a connection terminal (1378), a haptic module (1379), a camera module (1380), a power management module (1388), a battery (1389), a communication module (1390), a subscriber identification module (1396), or an antenna module (1397). In some embodiments, the electronic device (1301) may omit at least one of these components (e.g., the connection terminal (1378)), or may have one or more other components added. In some embodiments, some of these components (e.g., sensor module (1376), camera module (1380), or antenna module (1397)) may be integrated into a single component (e.g., display module (1360)).

[0149] The processor (1320) may, for example, execute software (e.g., a program (1340)) to control at least one other component (e.g., a hardware or software component) of the electronic device (1301) connected to the processor (1320) and perform various data processing or operations. According to one embodiment, as at least a part of the data processing or operations, the processor (1320) may store commands or data received from other components (e.g., a sensor module (1376) or a communication module (1390)) in a volatile memory (1332), process the commands or data stored in the volatile memory (1332), and store result data in a non-volatile memory (1334). According to one embodiment, the processor (1320) may include a main processor (1321) (e.g., a central processing unit or an application processor) or an auxiliary processor (1323) (e.g., a graphics processing unit, a neural processing unit (NPU), an image signal processor, a sensor hub processor, or a communication processor) that can operate independently or together with the main processor (1321). For example, when the electronic device (1301) includes the main processor (1321) and the auxiliary processor (1323), the auxiliary processor (1323) may be configured to use less power than the main processor (1321) or to be specialized for a given function. The auxiliary processor (1323) may be implemented separately from the main processor (1321) or as a part thereof.

[0150] The auxiliary processor (1323) may control at least a portion of functions or states associated with at least one component (e.g., the display module (1360), the sensor module (1376), or the communication module (1390)) of the electronic device (1301), for example, on behalf of the main processor (1321) while the main processor (1321) is in an inactive (e.g., sleep) state, or together with the main processor (1321) while the main processor (1321) is in an active (e.g., application execution) state. In one embodiment, the auxiliary processor (1323) (e.g., an image signal processor or a communication processor) may be implemented as a part of another functionally related component (e.g., a camera module (1380) or a communication module (1390)). In one embodiment, the auxiliary processor (1323) (e.g., a neural network processing unit) may include a hardware structure specialized for processing artificial intelligence models. The artificial intelligence models may be generated through machine learning. This learning can be performed, for example, on the electronic device (1301) itself where the artificial intelligence model is executed, or can be performed through a separate server (e.g., server (1308)). The learning algorithm can include, for example, supervised learning, unsupervised learning, semi-supervised learning, or reinforcement learning, but is not limited to the examples described above. The artificial intelligence model can include multiple artificial neural network layers.The artificial neural network may be one of a deep neural network (DNN), a convolutional neural network (CNN), a recurrent neural network (RNN), a restricted Boltzmann machine (RBM), a deep belief network (DBN), a bidirectional recurrent deep neural network (BRDNN), a deep Q-network, or a combination of two or more of the above, but is not limited to the examples described above. In addition to, or alternatively to, a hardware structure, an artificial intelligence model may include a software structure.

[0151] The memory (1330) can store various data used by at least one component (e.g., the processor (1320) or the sensor module (1376)) of the electronic device (1301). The data can include, for example, software (e.g., the program (1340)) and input data or output data for commands related thereto. The memory (1330) can include volatile memory (1332) or non-volatile memory (1334).

[0152] The program (1340) may be stored as software in memory (1330) and may include, for example, an operating system (1342), middleware (1344), or an application (1346).

[0153] The input module (1350) can receive commands or data to be used in a component of the electronic device (1301) (e.g., a processor (1320)) from an external source (e.g., a user) of the electronic device (1301). The input module (1350) can include, for example, a microphone, a mouse, a keyboard, a key (e.g., a button), or a digital pen (e.g., a stylus pen).

[0154] The audio output module (1355) can output audio signals to the outside of the electronic device (1301). The audio output module (1355) can include, for example, a speaker or a receiver. The speaker can be used for general purposes, such as multimedia playback or recording playback. The receiver can be used to receive incoming calls. In one embodiment, the receiver can be implemented separately from the speaker or as part of the speaker.

[0155] The display module (1360) can visually provide information to an external party (e.g., a user) of the electronic device (1301). The display module (1360) may include, for example, a display, a holographic device, or a projector and a control circuit for controlling the device. In one embodiment, the display module (1360) may include a touch sensor configured to detect a touch, or a pressure sensor configured to measure the intensity of a force generated by the touch.

[0156] The audio module (1370) can convert sound into an electrical signal, or vice versa. According to one embodiment, the audio module (1370) can acquire sound through the input module (1350), output sound through the sound output module (1355), or an external electronic device (e.g., electronic device (1302)) (e.g., speaker or headphone) directly or wirelessly connected to the electronic device (1301).

[0157] The sensor module (1376) can detect the operating status (e.g., power or temperature) of the electronic device (1301) or the external environmental status (e.g., user status) and generate an electrical signal or data value corresponding to the detected status. According to one embodiment, the sensor module (1376) can include, for example, a gesture sensor, a gyro sensor, a barometric pressure sensor, a magnetic sensor, an acceleration sensor, a grip sensor, a proximity sensor, a color sensor, an IR (infrared) sensor, a biometric sensor, a temperature sensor, a humidity sensor, or an illuminance sensor.

[0158] The interface (1377) may support one or more designated protocols that may be used to directly or wirelessly connect the electronic device (1301) with an external electronic device (e.g., the electronic device (1302)). In one embodiment, the interface (1377) may include, for example, a high definition multimedia interface (HDMI), a universal serial bus (USB) interface, an SD card interface, or an audio interface.

[0159] The connection terminal (1378) may include a connector through which the electronic device (1301) may be physically connected to an external electronic device (e.g., the electronic device (1302)). In one embodiment, the connection terminal (1378) may include, for example, an HDMI connector, a USB connector, an SD card connector, or an audio connector (e.g., a headphone connector).

[0160] The haptic module (1379) can convert electrical signals into mechanical stimuli (e.g., vibration or movement) or electrical stimuli that a user can perceive through tactile or kinesthetic sensations. In one embodiment, the haptic module (1379) may include, for example, a motor, a piezoelectric element, or an electrical stimulation device.

[0161] The camera module (1380) can capture still images and videos. In one embodiment, the camera module (1380) may include one or more lenses, image sensors, image signal processors, or flashes.

[0162] The power management module (1388) can manage the power supplied to the electronic device (1301). According to one embodiment, the power management module (1388) can be implemented as, for example, at least a part of a power management integrated circuit (PMIC).

[0163] A battery (1389) may power at least one component of the electronic device (1301). In one embodiment, the battery (1389) may include, for example, a non-rechargeable primary battery, a rechargeable secondary battery, or a fuel cell.

[0164] The communication module (1390) may support the establishment of a direct (e.g., wired) communication channel or a wireless communication channel between the electronic device (1301) and an external electronic device (e.g., electronic device (1302), electronic device (1304), or server (1308)), and the performance of communication through the established communication channel. The communication module (1390) may operate independently from the processor (1320) (e.g., application processor) and may include one or more communication processors that support direct (e.g., wired) communication or wireless communication. According to one embodiment, the communication module (1390) may include a wireless communication module (1392) (e.g., a cellular communication module, a short-range wireless communication module, or a global navigation satellite system (GNSS) communication module) or a wired communication module (1394) (e.g., a local area network (LAN) communication module, or a power line communication module). Any of these communication modules may communicate with an external electronic device (1304) via a first network (1398) (e.g., a short-range communication network such as Bluetooth, wireless fidelity (WiFi) direct, or infrared data association (IrDA)) or a second network (1399) (e.g., a long-range communication network such as a legacy cellular network, a 5G network, a next-generation communication network, the Internet, or a computer network (e.g., a local area network or a wide area network)). These various types of communication modules may be integrated into a single component (e.g., a single chip) or implemented as multiple separate components (e.g., multiple chips). The wireless communication module (1392) may use subscriber information (e.g., an international mobile subscriber identity (IMSI)) stored in the subscriber identification module (1396) to verify or authenticate the electronic device (1301) within a communication network such as the first network (1398) or the second network (1399).

[0165] The wireless communication module (1392) can support 5G networks and next-generation communication technologies following the 4G network, such as NR access technology (new radio access technology). The NR access technology can support high-speed transmission of high-capacity data (eMBB (enhanced mobile broadband)), minimization of terminal power and connection of multiple terminals (mMTC (massive machine type communications)), or high reliability and low latency communications (URLLC (ultra-reliable and low-latency communications)). The wireless communication module (1392) can support, for example, a high-frequency band (e.g., mmWave band) to achieve a high data transmission rate. The wireless communication module (1392) may support various technologies for securing performance in high-frequency bands, such as beamforming, massive multiple-input and multiple-output (MIMO), full dimensional MIMO (FD-MIMO), array antenna, analog beam-forming, or large scale antenna. The wireless communication module (1392) may support various requirements specified in the electronic device (1301), an external electronic device (e.g., the electronic device (1304)), or a network system (e.g., the second network (1399)). According to one embodiment, the wireless communication module (1392) may support a peak data rate (e.g., 20 Gbps or more) for eMBB implementation, a loss coverage (e.g., 164 dB or less) for mMTC implementation, or a U-plane latency (e.g., 0.5 ms or less for downlink (DL) and uplink (UL), or 1 ms or less for round trip) for URLLC implementation.

[0166] The antenna module (1397) can transmit or receive signals or power to or from an external device (e.g., an external electronic device). In one embodiment, the antenna module (1397) may include an antenna including a radiator formed of a conductor or a conductive pattern formed on a substrate (e.g., a PCB). In one embodiment, the antenna module (1397) may include a plurality of antennas (e.g., an array antenna). In this case, at least one antenna suitable for a communication method used in a communication network, such as the first network (1398) or the second network (1399), may be selected from the plurality of antennas by, for example, the communication module (1390). A signal or power may be transmitted or received between the communication module (1390) and an external electronic device via the at least one selected antenna. In some embodiments, in addition to the radiator, another component (e.g., a radio frequency integrated circuit (RFIC)) may be additionally formed as a part of the antenna module (1397).

[0167] According to various embodiments, the antenna module (1397) may form a mmWave antenna module. In one embodiment, the mmWave antenna module may include a printed circuit board, an RFIC disposed on or adjacent a first side (e.g., a bottom side) of the printed circuit board and capable of supporting a designated high frequency band (e.g., a mmWave band), and a plurality of antennas (e.g., an array antenna) disposed on or adjacent a second side (e.g., a top side or a side side) of the printed circuit board and capable of transmitting or receiving signals in the designated high frequency band.

[0168] At least some of the above components can be interconnected and exchange signals (e.g., commands or data) with each other via a communication method between peripheral devices (e.g., a bus, GPIO (general purpose input and output), SPI (serial peripheral interface), or MIPI (mobile industry processor interface)).

[0169] According to one embodiment, commands or data may be transmitted or received between the electronic device (1301) and an external electronic device (1304) via a server (1308) connected to a second network (1399). Each of the external electronic devices (1302 or 1304) may be the same or a different type of device as the electronic device (1301). According to one embodiment, all or part of the operations executed in the electronic device (1301) may be executed in one or more of the external electronic devices (1302, 1304, or 1308). For example, when the electronic device (1301) is to perform a certain function or service automatically or in response to a request from a user or another device, the electronic device (1301) may, instead of or in addition to executing the function or service itself, request one or more external electronic devices to perform the function or at least a part of the service. One or more external electronic devices that receive the request may execute at least a portion of the requested function or service, or an additional function or service related to the request, and transmit the result of the execution to the electronic device (1301). The electronic device (1301) may process the result as is or additionally and provide it as at least a portion of a response to the request. For this purpose, cloud computing, distributed computing, mobile edge computing (MEC), or client-server computing technology may be used, for example. The electronic device (1301) may provide an ultra-low latency service by using distributed computing or mobile edge computing, for example. In another embodiment, the external electronic device (1304) may include an Internet of Things (IoT) device. The server (1308) may be an intelligent server utilizing machine learning and / or a neural network.According to one embodiment, an external electronic device (1304) or server (1308) may be included within the second network (1399). The electronic device (1301) may be applied to intelligent services (e.g., smart homes, smart cities, smart cars, or healthcare) based on 5G communication technology and IoT-related technology.

[0170] Electronic devices according to the various embodiments disclosed in this document may take various forms. Electronic devices may include, for example, portable communication devices (e.g., smartphones), computer devices, portable multimedia devices, portable medical devices, cameras, wearable devices, or home appliances. Electronic devices according to the embodiments of this document are not limited to the aforementioned devices.

[0171] The various embodiments of this document and the terminology used therein are not intended to limit the technical features described in this document to specific embodiments, but should be understood to include various modifications, equivalents, or substitutes of the embodiments. In connection with the description of the drawings, similar reference numerals may be used for similar or related components. The singular form of a noun corresponding to an item may include one or more of the items, unless the context clearly indicates otherwise. In this document, each of the phrases "A or B", "at least one of A and B", "at least one of A or B", "A, B, or C", "at least one of A, B, and C", and "at least one of A, B, or C" can include any one of the items listed together in the corresponding phrase among those phrases, or all possible combinations thereof. Terms such as "first," "second," or "first" or "second" may be used merely to distinguish one component from another, and do not limit the components in any other respect (e.g., importance or order). When a component (e.g., a first component) is referred to as "coupled" or "connected" to another (e.g., a second component), with or without the terms "functionally" or "communicatively," it means that the component can be connected to the other component directly (e.g., wired), wirelessly, or through a third component.

[0172] The term "module" used in various embodiments of this document may include a unit implemented in hardware, software, or firmware, and may be used interchangeably with terms such as logic, logic block, component, or circuit. A module may be an integral component, or a minimum unit or part of such a component that performs one or more functions. For example, according to one embodiment, a module may be implemented in the form of an application-specific integrated circuit (ASIC).

[0173] Various embodiments of the present document may be implemented as software (e.g., a program (1340)) including one or more instructions stored in a storage medium (e.g., an internal memory (1336) or an external memory (1338)) readable by a machine (e.g., an electronic device (1301)). For example, a processor (e.g., a processor (1320)) of the machine (e.g., an electronic device (1301)) may call at least one instruction among the one or more instructions stored from the storage medium and execute it. This enables the machine to operate to perform at least one function according to the at least one called instruction. The one or more instructions may include code generated by a compiler or code executable by an interpreter. The machine-readable storage medium may be provided in the form of a non-transitory storage medium. Here, 'non-transitory' simply means that the storage medium is a tangible device and does not contain signals (e.g., electromagnetic waves), and the term does not distinguish between cases where data is stored semi-permanently or temporarily on the storage medium.

[0174] According to one embodiment, the method according to various embodiments disclosed in this document may be provided as included in a computer program product. The computer program product may be traded as a commodity between a seller and a buyer. The computer program product may be distributed in the form of a machine-readable storage medium (e.g., compact disc read-only memory (CD-ROM)), or may be distributed online (e.g., downloaded or uploaded) via an application store (e.g., Play Store™) or directly between two user devices (e.g., smart phones). In the case of online distribution, at least a portion of the computer program product may be temporarily stored or temporarily generated in a machine-readable storage medium, such as the memory of a manufacturer's server, an application store's server, or an intermediary server.

[0175] According to various embodiments, each component (e.g., a module or a program) of the above-described components may include one or more entities, and some of the entities may be separated and arranged in other components. According to various embodiments, one or more components or operations of the aforementioned components may be omitted, or one or more other components or operations may be added. Alternatively or additionally, a plurality of components (e.g., a module or a program) may be integrated into a single component. In this case, the integrated component may perform one or more functions of each of the plurality of components identically or similarly to those performed by the corresponding component among the plurality of components prior to integration. According to various embodiments, the operations performed by a module, program, or other component may be executed sequentially, in parallel, iteratively, or heuristically, or one or more of the operations may be executed in a different order, omitted, or one or more other operations may be added. The electronic device (1301) of FIG. 13 may be an example of the electronic device (101) of FIG. 1.

[0176] In one embodiment, in order to change the font of characters represented by a plurality of strokes included in handwritten content, a method of changing the shape of the plurality of strokes may be required. As described above, according to one embodiment, an electronic device (e.g., the electronic device 101 of FIG. 1 and / or the electronic device 1301 of FIG. 13) may include a display (e.g., the display 110 of FIG. 1 and / or FIG. 2) and a processor (e.g., the processor 210 of FIG. 2). The processor may be configured to display, within the display, a stroke (e.g., the stroke 132 of FIG. 1) representing a path on the display along which the external object is dragged, based on detecting an external object being dragged on the display. The processor may be configured to, in response to a noise segment of the stroke (e.g., noise segment (134)) detected using a plurality of points included in the stroke, execute a function for removing the noise segment from the stroke. The processor may be configured to, using a model (e.g., a font change model (236) of FIG. 2) for changing the penmanship of one or more characters represented by the plurality of strokes (e.g., the plurality of strokes (140) of FIG. 4) including the stroke from which the noise segment has been removed (e.g., the stroke (142) of FIG. 1), change the shape of at least one of the plurality of strokes. In one embodiment, the electronic device may remove the noise segment of the strokes included in the handwritten content before changing the font of the handwritten content.

[0177] For example, the processor may be configured to change the shape of at least one of the plurality of strokes using the model trained based on handwriting having a plurality of fonts applied.

[0178] For example, the processor may be configured to change the shape by inputting preference information indicating at least one font to be used for changing the shape among the plurality of fonts into the model.

[0179] For example, the processor may be configured to combine the preference information into a latent vector obtained from an encoder within the model and input to a decoder within the model.

[0180] For example, the processor may be configured to change the shape using the preference information indicating a combination of the plurality of fonts based on weights corresponding to each of the plurality of fonts.

[0181] For example, the processor may be configured to determine whether to maintain the font of the one or more characters using a weight corresponding to the font of the one or more characters indicated by the preference information.

[0182] For example, the processor may be configured to determine whether a segment of the stroke separated by the first point and the second point corresponds to the noise segment by using at least one of an angle or a distance between a first point corresponding to an end of the stroke and a second point among the plurality of points.

[0183] For example, the processor may be configured to determine the segment of the stroke as the noise segment based on whether the segment of the stroke, including a portion of the stroke, corresponds to a serif.

[0184] For example, the processor may be configured to calculate a probability that each of the plurality of points matches a boundary point of the noise segment using a second model different from the first model for changing the font.

[0185] For example, the processor may be configured to display, within the display, a first visual object for replacing the plurality of strokes with text including the one or more characters and a second visual object for changing the font of the one or more characters represented by the plurality of strokes. The processor may be configured to, in response to input related to the second visual object, change the shape using the model.

[0186] According to one embodiment of the present invention, a method of an electronic device including a display and a processor is provided. The method may include an operation of displaying, within the display, a stroke representing a path along which the external object is dragged, based on detecting an external object being dragged on the display (e.g., operation (310) of FIG. 3 ). The method may include an operation of executing, in response to a noise segment of the stroke detected using a plurality of points included in the stroke, a function for removing the noise segment from the stroke (e.g., operation (320) of FIG. 3 ). The method may include an operation of changing a shape of at least one of the plurality of strokes using a model for changing a font of one or more characters represented by the plurality of strokes including the stroke from which the noise segment has been removed (e.g., operation (330) of FIG. 3 ).

[0187] For example, the changing action may include an action of changing the shape of at least one of the plurality of strokes using the model trained based on handwriting to which a plurality of fonts have been applied.

[0188] For example, the above changing operation may include an operation of changing the shape by inputting preference information indicating at least one font to be used for changing the shape among the plurality of fonts into the model.

[0189] For example, the changing operation may include combining the preference information into a latent vector obtained from an encoder within the model and input to a decoder within the model.

[0190] For example, the changing operation may include an operation of changing the shape using the preference information indicating a combination of the plurality of fonts based on weights corresponding to each of the plurality of fonts.

[0191] For example, the changing operation may include an operation of determining whether to maintain the font of the one or more characters by using a weight corresponding to the font of the one or more characters indicated by the preference information.

[0192] For example, the executing operation may include an operation of determining whether a segment of the stroke divided by the first point and the second point corresponds to the noise segment by using at least one of an angle or distance between a first point corresponding to one end of the stroke and a second point among the plurality of points, among the plurality of points.

[0193] For example, the executing operation may include an operation of determining the segment of the stroke as the noise segment based on whether the segment of the stroke, including a portion of the stroke, corresponds to a serif.

[0194] For example, the executing operation may include an operation of calculating a probability that each of the plurality of points matches a boundary point of the noise segment using a second model different from the first model for changing the font.

[0195] For example, the method may include an action of displaying, within the display, a first visual object for replacing the plurality of strokes with text including the one or more characters and a second visual object for changing the font of the one or more characters represented by the plurality of strokes. The changing action may include an action of changing the shape using the model in response to an input related to the second visual object.

[0196] According to one embodiment, an electronic device as described above may include a display and a processor. The processor may be configured to identify an input representing a drawing of a plurality of first strokes based on detecting an external object being dragged on the display. The processor may be configured to execute a preprocessing function to reduce a serif formed on at least one end of the plurality of first strokes. The processor may be configured to display a plurality of second strokes in the display, the second strokes corresponding to the plurality of first strokes modified by the preprocessing function and having a second font different from a first font of the plurality of first strokes.

[0197] For example, the processor may be configured to obtain the plurality of second strokes using a model trained based on handwriting to which a plurality of fonts including the second font have been applied.

[0198] For example, the processor may be configured to detect the serif using at least one of the angles or distances between points included in the plurality of first strokes.

[0199] For example, the processor may be configured to remove one or more points representing the serif from among the points based on execution of the preprocessing function.

[0200] In one embodiment, as described above, a method of an electronic device including a display and a processor is provided. The method may include an operation of identifying an input representing a drawing of a plurality of first strokes based on detecting an external object being dragged on the display. The method may include an operation of executing a preprocessing function for reducing a serif formed on at least one end of the plurality of first strokes. The method may include an operation of displaying a plurality of second strokes in the display, the second strokes corresponding to the plurality of first strokes modified by the preprocessing function and having a second font different from a first font of the plurality of first strokes.

[0201] For example, the indicated action may include an action of obtaining the plurality of second strokes using a model trained based on handwriting to which a plurality of fonts including the second font are applied.

[0202] For example, the executing action may include detecting the serif using at least one of the angles or distances between points included in the plurality of first strokes.

[0203] For example, the above-described executing action may include an action of removing one or more points representing the serif among the above-described points.

[0204] The devices described above may be implemented as hardware components, software components, and / or a combination of hardware components and software components. For example, the devices and components described in the embodiments may be implemented using one or more general-purpose computers or special-purpose computers, such as a processor, a controller, an arithmetic logic unit (ALU), a digital signal processor, a microcomputer, a field programmable gate array (FPGA), a programmable logic unit (PLU), a microprocessor, or any other device capable of executing instructions and responding to them. The processing device may execute an operating system (OS) and one or more software applications running on the operating system. The processing device may also access, store, manipulate, process, and generate data in response to the execution of the software. For ease of understanding, the processing device is sometimes described as being used alone; however, one of ordinary skill in the art will recognize that the processing device may include multiple processing elements and / or multiple types of processing elements. For example, a processing unit may include multiple processors, or a processor and a controller. Other processing configurations, such as parallel processors, are also possible.

[0205] Software may include a computer program, code, instructions, or a combination of one or more of these, which may configure a processing device to perform a desired operation or may independently or collectively command the processing device. The software and / or data may be embodied in any type of machine, component, physical device, computer storage medium, or device for interpretation by the processing device or for providing instructions or data to the processing device. The software may also be distributed over networked computer systems and stored or executed in a distributed manner. The software and data may be stored on one or more computer-readable recording media.

[0206] The method according to the embodiment may be implemented in the form of program commands that can be executed through various computer means and recorded on a computer-readable medium. In this case, the medium may be one that continuously stores a computer-executable program or one that temporarily stores it for execution or download. In addition, the medium may be various recording means or storage means in the form of a single or multiple hardware combinations, and is not limited to a medium directly connected to a computer system, but may also be distributed over a network. Examples of the medium may include magnetic media such as hard disks, floppy disks, and magnetic tapes, optical recording media such as CD-ROMs and DVDs, magneto-optical media such as floptical disks, and those configured to store program commands, including ROM, RAM, and flash memory. In addition, examples of other media may include recording media or storage media managed by app stores that distribute applications, sites that supply or distribute various software, servers, etc.

[0207] Although the embodiments described above have been described by way of limited examples and drawings, those skilled in the art will appreciate that various modifications and variations can be made based on the above teachings. For example, appropriate results can still be achieved even if the described techniques are performed in a different order than described, and / or components of the described systems, structures, devices, circuits, etc. are combined or combined in a different manner than described, or are replaced or substituted with other components or equivalents.

[0208] Therefore, other implementations, other embodiments, and equivalents to the claims also fall within the scope of the claims described below.

Claims

1. In an electronic device (101; 1301), display (110); A memory comprising one or more storage media and storing instructions; and At least one processor (210) comprising a processing circuit, The above instructions, when individually or collectively executed by the at least one processor, cause the electronic device to: Based on detecting an external object being dragged on the display, a stroke (132) representing a path on the display along which the external object is dragged is displayed within the display; In response to a noise segment (134) of the stroke detected using a plurality of points included in the stroke, executing a function for removing the noise segment from the stroke; and A model (236) for changing the penmanship of one or more characters represented by a plurality of strokes (140) including the stroke (142) from which the noise segment has been removed, thereby causing the shape of at least one of the plurality of strokes to be changed. Electronic devices.

2. In claim 1, the instructions, when individually or collectively executed by the at least one processor, cause the electronic device to: Using the model trained on handwriting having multiple fonts applied, causing at least one of the multiple strokes to change their shape, Electronic devices.

3. In claims 1 and 2, the instructions, when individually or collectively executed by the at least one processor, cause the electronic device to: By inputting preference information indicating at least one font to be used for changing the shape among the plurality of fonts into the model, causing the shape to be changed, Electronic devices.

4. In claims 1 to 3, the instructions, when individually or collectively executed by the at least one processor, cause the electronic device to: causing the preference information to be combined with a latent vector, which is obtained from an encoder within the model and is input to a decoder within the model. Electronic devices.

5. In claims 1 to 4, the instructions, when individually or collectively executed by the at least one processor, cause the electronic device to: Using the preference information representing a combination of the plurality of fonts based on weights corresponding to each of the plurality of fonts, causing the shape to be changed, Electronic devices.

6. In claims 1 to 5, the instructions, when individually or collectively executed by the at least one processor, cause the electronic device to: Causing to determine whether to maintain the font of said one or more characters by using the weight corresponding to the font of said one or more characters indicated by said preference information. Electronic devices.

7. In claims 1 to 6, the instructions, when individually or collectively executed by the at least one processor, cause the electronic device to: Causing to determine whether a segment of the stroke separated by the first point and the second point corresponds to the noise segment by using at least one of an angle or a distance between a first point corresponding to an end of the stroke and a second point among the plurality of points, among the plurality of points; Electronic devices.

8. In claims 1 to 7, the instructions, when individually or collectively executed by the at least one processor, cause the electronic device to: Causing said segment of said stroke to be determined as said noise segment based on whether said segment of said stroke, which includes a part of said stroke, corresponds to a serif. Electronic devices.

9. In claims 1 to 8, the instructions, when individually or collectively executed by the at least one processor, cause the electronic device to: Using a second model different from the first model for changing the font, causing each of the plurality of points to calculate a probability that it matches a boundary point of the noise segment. Electronic devices.

10. In claims 1 to 9, the instructions, when individually or collectively executed by the at least one processor, cause the electronic device to: Displaying within the display a first visual object for replacing the plurality of strokes with text including the one or more characters and a second visual object for changing the font of the one or more characters represented by the plurality of strokes; In response to input related to said second visual object, causing said shape to be changed using said model, Electronic devices.

11. A method of an electronic device including a display and a processor, An operation (310) of displaying within the display a stroke representing a path along which the external object is dragged on the display based on detecting an external object being dragged on the display; An operation (320) for executing a function for removing a noise segment from a stroke in response to a noise segment of the stroke detected using a plurality of points included in the stroke; and An operation (330) for changing the shape of at least one of the plurality of strokes, using a model for changing the font of one or more characters represented by the plurality of strokes including the stroke from which the noise segment has been removed. method.

12. In claim 11, the changing operation is: An operation of changing the shape of at least one of the plurality of strokes, using the model trained based on handwriting to which a plurality of fonts have been applied. method.

13. In claims 11 to 12, the changing operation comprises: An operation of changing the shape by inputting preference information indicating at least one font to be used for changing the shape among the plurality of fonts into the model, method.

14. In claims 11 to 13, the changing operation comprises: An operation of combining the preference information into a latency vector obtained from an encoder within the model and input to a decoder within the model, method.

15. In claims 11 to 14, the changing operation comprises: An operation of changing the shape by using the preference information representing a combination of the plurality of fonts based on weights corresponding to each of the plurality of fonts, method.

Citation Information

Patent Citations

  • Apparatus and method of personal font generation

    KR1020090082710A

  • Automatic capsule coffee machine

    KR1020220147739A

  • handwriting input apparatus and control method thereof

    KR102075424B1

  • Digital Handwriting Synthesis

    US20210279457A1

  • Preserving Document Design Using Font Synthesis

    US20220172498A1