Method of encoding code in circular structure and method of decoding thereof

KR1020260133431APending Publication Date: 2026-09-04THE CODDER CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
KR1020250026575
Authority / Receiving Office
KR · KR
Patent Type
Applications
Current Assignee / Owner
Filing Date
2025-02-28
Publication Date
2026-09-04

Smart Images

  • Figure PAT00001_ABST
    Figure PAT00001_ABST
Patent Text Reader

Abstract

A method for decoding a code of a circular structure executed in a code decoding device of a circular structure according to an embodiment of the present invention may include the steps of: receiving a circular structure that is cut off through a gap to have different lengths according to a bit structure; generating a plurality of auxiliary circles based on the circular structure and then dividing them to generate a plurality of sectors; and generating a square using the auxiliary circles on the plurality of sectors, and connecting each of the squares to restore the bit structure.
Need to check novelty before this filing date? Find Prior Art

Description

Technology Field

[0001] The present invention relates to a code encoding method and a code decoding method for a circular structure, and more specifically, to a code encoding method and a code decoding method for a circular structure that allows invisible codes to be inserted by creating gaps at specific intervals according to code values ​​based on a circular structure. Background Technology

[0003] In modern society, where the volume of digital content and data is increasing explosively, technologies for effectively protecting and managing information are becoming increasingly important. In particular, since content such as digital images, videos, audio, and text can be easily created, shared, and duplicated across various platforms, technical solutions for preventing illegal distribution, identifying sources, and authenticating data are essential.

[0004] In response to this need, digital watermarking, steganography, and hidden data embedding technologies have been developed for information protection and management. These technologies can perform various functions, such as verifying content ownership, authentication, and data tracking, by directly embedding information into digital content. However, existing technologies face limitations in the practical application process due to the following issues.

[0005] Existing data insertion methods have security vulnerabilities where the inserted information can be detected or removed relatively easily. For example, watermarks embedded in image pixels or audio frequency domains can be removed relatively simply using advanced analysis tools.

[0006] Furthermore, embedded information frequently affects the quality of the original content. For example, embedded data may degrade video quality or distort the audio quality. There is a lack of technical approaches that enable information insertion while maintaining the original quality of the content.

[0007] Furthermore, existing methods make it difficult to precisely control the spacing and location of inserted data. In particular, if the insertion locations are configured in a repetitive or predictable manner, an external attacker can analyze this in reverse and easily remove the inserted data. Therefore, data insertion methods must be more sophisticated and highly stealthy. The problem to be solved

[0009] The present invention aims to provide a code encoding method and a code decoding method for a circular structure that allows invisible codes to be inserted by creating gaps at specific intervals according to code values ​​based on a circular structure.

[0010] In addition, the present invention aims to provide a code encoding method and a code decoding method for a circular structure, such that the pattern inserted into the circular structure changes irregularly according to the code value, making it difficult for an external attacker attempting to analyze the inserted information to guess the pattern or perform reverse engineering.

[0012] The objects of the present invention are not limited to those mentioned above, and other unmentioned objects and advantages of the present invention may be understood from the following description and will be more clearly understood by the embodiments of the present invention. Furthermore, it will be readily apparent that the objects and advantages of the present invention can be realized by the means and combinations thereof set forth in the claims. means of solving the problem

[0014] A method for decoding a circular structure code executed in a circular structure code decoding device for achieving such purposes may include the steps of receiving a circular structure that is cut off through a gap to have different lengths according to a bit structure, generating a plurality of auxiliary circles based on the circular structure and then dividing them to generate a plurality of sectors, and generating a square using the auxiliary circles on the plurality of sectors, and connecting each of the squares to restore the bit structure.

[0015] In one embodiment, the code decoding method of a circular structure may further include a step of determining whether the type of circular structure is a standard circle or an ellipse, and a step of scaling the circular structure into a standard circle based on the determination result.

[0016] In one embodiment, the step of generating a plurality of auxiliary circles based on the circular structure and then dividing them to generate a plurality of sectors may include the step of generating a first auxiliary circle inside the circular structure and generating a second auxiliary circle outside the circular structure.

[0017] In one embodiment, the step of creating a plurality of auxiliary circles based on the circular structure and then dividing them to create a plurality of sectors may include the step of setting a reference diameter by connecting a point on the circumference of the second auxiliary circle from the center of the circular structure, and creating a plurality of sectors by dividing the circumference of the second auxiliary circle by a specific angle using the reference diameter as a central axis, and the step of creating a radial trapezoid by connecting a vertex corresponding to the first virtual circle and a vertex corresponding to the second virtual circle and then dividing it, and then scaling it into a standard trapezoid.

[0018] In one embodiment, the step of generating squares using each of the auxiliary circles on the plurality of sectors and restoring the bit structure by connecting each of the squares may include the step of determining a start position and an end position using the length of the dash between the gaps and the step of determining the dash between the start position and the end position as a decoding target.

[0019] In one embodiment, the step of generating squares using each of the auxiliary circles on the plurality of sectors and restoring the bit structure by connecting each of the squares may include the step of determining whether the bit value is 0 or 1 using the length of the dash between the gaps and then combining them to derive a code value.

[0020] In addition, a method for decoding a circular structure code executed in a circular structure code encoding device for achieving this purpose may include the steps of determining a bit structure composed of dashes of different lengths and gaps separating the dashes, and inserting the bit structure by adjusting the ratio of the dashes and gaps according to the circumference of the circular structure and then mapping it to the circumference of the circular structure.

[0021] In one embodiment, the bit structure may be composed of dashes and gaps of different lengths formed by connecting a specific number of standard length dashes according to a control bit, a data length type bit, a data bit, and a checksum. Effects of the invention

[0023] According to the present invention as described above, there is an advantage in that invisible codes can be inserted by creating gaps at specific intervals based on code values ​​according to a circular structure.

[0024] In addition, according to the present invention, since the pattern inserted into the circular structure changes irregularly depending on the code value, there is an advantage in that it makes it difficult for an external attacker attempting to analyze the inserted information to guess the pattern or perform reverse engineering. Brief explanation of the drawing

[0026] FIG. 1 is a flowchart illustrating an embodiment of a code encoding method for a circular structure according to the present invention. FIG. 2 is a flowchart illustrating an embodiment of a code decoding method in a circular structure according to the present invention. FIGS. 3 and FIGS. 4 are exemplary diagrams for explaining a code encoding method for a prototype structure according to the present invention. FIGS. 5 and 6 are exemplary diagrams illustrating a code decoding method for a prototype structure according to the present invention. Specific details for implementing the invention

[0027] The aforementioned objectives, signatures, and advantages are described in detail below with reference to the attached drawings, thereby enabling those skilled in the art to easily implement the technical concept of the present invention. In describing the present invention, detailed descriptions of known technologies related to the present invention are omitted if it is determined that such descriptions would unnecessarily obscure the essence of the invention. Hereinafter, preferred embodiments according to the present invention will be described in detail with reference to the attached drawings. In the drawings, the same reference numerals are used to indicate the same or similar components.

[0029] FIG. 1 is a flowchart illustrating an embodiment of a code encoding method for a circular structure according to the present invention.

[0030] Referring to FIG. 1, the code encoding device determines a bit structure consisting of gaps separating dashes of different lengths and dashes (step S110). At this time, the code value may be composed of gaps separating dashes of different lengths and dashes according to a control bit, a data length type bit, a data bit, and a checksum.

[0031] Control bits are information indicating the start and end of a bit structure, data length type bits are information indicating the length of the data, checksums are information for checking for errors in the data, and data bits are information about the code value.

[0032] At this time, the basic dash can be implemented with a specific length, and the basic dash can be connected by a specific number of times to be implemented as a dash of the first length, a dash of the second length, and a dash of the third length. At this time, the dash of the first length consists of 1 dash, the dash of the second length consists of 2 dashes, and the dash of the third length consists of 3 dashes.

[0033] For example, the control bit can be implemented with a dash of a first length. That is, the start position can be indicated by a dash of a first length, and the end position can be indicated by the dash of a first length being repeated twice through a gap. The data bit can be implemented with a dash of a second length or a third length.

[0034] The dash of the second length and the dash of the third length can indicate a bit value of 0 or 1. That is, if the dash of the second length indicates a bit value of 0, the dash of the third length can indicate a bit value of 1, and if the dash of the second length indicates a bit value of 1, the dash of the third length can indicate 0.

[0035] The code encoding device inserts the bit structure by adjusting the ratio of the dash and the gap according to the circumference of the circular structure and then mapping it to the circumference of the circular structure (step S120).

[0036] In one embodiment of step S120, the code encoding device may calculate the circumference of a circle based on the radius or diameter of the circular structure, proportionally adjust the lengths of the dashes and gaps to match the circumference of the circular structure, and then place the adjusted dashes and gaps along the circumference of the circle.

[0038] FIG. 2 is a flowchart illustrating an embodiment of a code decoding method in a circular structure according to the present invention.

[0039] Referring to FIG. 2, the code decoding device receives a circular structure with a code inserted, which is divided to have different lengths according to the bit structure (step S210).

[0040] Although not shown in FIG. 2, the code decoding device determines whether the type of circular structure is a standard circle or an ellipse. At this time, if the circular structure is an ellipse, it is scaled into a standard circle using a plurality of center points of the circular structure.

[0041] To this end, if the circular structure is an ellipse, the code decoding device searches for the center point of the ellipse's symmetry using the first axis and the second axis. In this case, the first axis is the long axis of the ellipse, which is a dash connecting the first center and the second center, and the second axis is the short axis of the ellipse, which is a dash passing through the center point and perpendicular to the first axis.

[0042] After that, the code decoding device calculates the distance between the first center and the second center using the radius of the first axis and the radius of the second axis, and calculates the first center and the second center based on the distance and the intersection point between the first axis and the second axis.

[0043] In one embodiment, the code decoding device can determine that the first center and the second center of the ellipse are on the x-axis because the ellipse is a horizontal ellipse when the first axis is in the x-axis direction.

[0044] In the above embodiment, the code decoding device can calculate the distance between the first center and the second center using the radius of the first axis and the radius of the second axis, and calculate the first center and the second center on the x-axis using the distance and the intersection point between the first axis and the second axis.

[0045] In another embodiment, the code decoding device can determine that the first center and the second center are on the y-axis because the ellipse is a vertical ellipse when the first axis is in the y-axis direction.

[0046] In the above embodiment, the code decoding device can calculate the distance between the first center and the second center using the radius of the first axis and the radius of the second axis, and calculate the first center and the second center on the y-axis using the distance and the intersection point between the first axis and the second axis.

[0047] As described above, the code decoding device scales to a standard circle by correcting the lengths of the first axis and the second axis so that they are equal when the lengths of the first axis and the second axis are different. At this time, each of the first axis and the second axis can be the x-axis or the y-axis.

[0048] In one embodiment, when the length of the x-axis is longer than the length of the y-axis, the code decoding device scales to a standard circle by multiplying the length of the x-axis by the length of the x-axis / the length of the b-axis so that the length of the x-axis is equal to the length of the y-axis.

[0049] In another embodiment, when the length of the y-axis is longer than the length of the x-axis, the code decoding device scales to a standard circle by multiplying the length of the y-axis by the length of the y-axis / the length of the x-axis so that the length of the x-axis is equal to the length of the y-axis.

[0050] Through the process described above, the length of the x-axis becomes equal to the length of the y-axis, and as a result, the ellipse is converted into a standard circle.

[0051] After that, the code decoding device generates a plurality of auxiliary circles based on a circular structure and then divides them to generate a plurality of sectors (step S220).

[0052] In one embodiment of step 220, the code decoding device may generate a first auxiliary circle on the inner side of the standard circle and a second auxiliary circle on the outer side of the standard circle based on the standard circle.

[0053] The code decoding device generates a square using a plurality of auxiliary circles on a sector (step S230).

[0054] In one embodiment of step S230, the code decoding device sets a reference diameter by connecting a point on the circumference of the second auxiliary circle from the center of the standard circle, and creates a plurality of sectors by dividing the circumference of the second auxiliary circle by a specific angle using the reference diameter as the central axis.

[0055] After that, the code decoding device creates a radial trapezoid by connecting the vertex corresponding to the first virtual circle and the vertex corresponding to the second virtual circle for each of the multiple sectors and then dividing them. At this time, the code decoding device can deform the radial trapezoid and scale it into a standard trapezoid.

[0056] The code decoding device decodes the bit structure using the break on the dash (step S240).

[0057] In one embodiment of step S240, the code decoding device may analyze the dashes and, if a break in the dashes exists, determine the start position and end position using the length of the dashes between the gaps. Then, the code decoding device determines the dashes between the start position and the end position as the decoding target.

[0058] For example, a code decoding device may determine that if the length of the dash between gaps is a first length, the corresponding discontinuity is a start position, and if the length of the dash between gaps is a repeating first length, the corresponding discontinuity is determined as an end start position.

[0059] After that, the code decoding device determines the dash between the start position and the end position as the decoding target, and determines whether the bit value is 0 or 1 using the length of the dash between the gaps for the dash of the decoding target, and then combines them to derive a code value.

[0061] FIGS. 3 and FIGS. 4 are exemplary diagrams for explaining a code encoding method for a prototype structure according to the present invention.

[0062] Referring to FIGS. 3 and 4, the code encoding device determines a bit structure consisting of gaps separating dashes of different lengths and dashes as in FIG. 3.

[0063] At this time, the code value may be composed of gaps separating dashes of different lengths and dashes according to the control bit (301), data length type bit (302), checksum (303), and data bit (304).

[0064] The control bit (301) is information indicating the start and end of the bit structure, the data length type bit (302) is information indicating the length of the data, the checksum (303) is information for checking for errors in the data, and the data bit (304) is information about the actual code value.

[0065] At this time, the basic dash can be implemented with a specific length, and the basic dash can be connected by a specific number of times to be implemented as a dash of the first length, a dash of the second length, and a dash of the third length. At this time, the dash of the first length consists of 1 dash, the dash of the second length consists of 2 dashes, and the dash of the third length consists of 3 dashes.

[0066] For example, the control bit (301) can be implemented with a dash of a first length. That is, the start position can be indicated by a dash of a first length, and the end position can be indicated by the dash of a first length being repeated twice through a gap. The data bit (304) can be implemented with a dash of a second length or a third length.

[0067] The dash of the second length and the dash of the third length can indicate a bit value of 0 or 1. That is, if the dash of the second length indicates a bit value of 0, the dash of the third length can indicate a bit value of 1, and if the dash of the second length indicates a bit value of 1, the dash of the third length can indicate 0.

[0068] After that, the code encoding device adjusts the ratio of the dash and gap according to the circumference of the circular structure and inserts a bit structure by mapping it to the circumference of the circular structure as shown in Fig. 4.

[0069] To this end, the code encoding device can calculate the circumference of a circle based on the radius or diameter of a circular structure, proportionally adjust the lengths of dashes and gaps to match the circumference of the circular structure, and then place the adjusted dashes and gaps along the circumference of the circle.

[0071] FIGS. 5 and 6 are exemplary diagrams illustrating a code decoding method for a prototype structure according to the present invention.

[0072] Referring to FIGS. 5 and 6, the code decoding device receives a circular structure into which a code is inserted by dividing it into different lengths according to the bit structure.

[0073] At this time, although not shown in FIG. 5, the code decoding device determines whether the type of circular structure is a standard circle or an ellipse. At this time, if the circular structure is an ellipse, it is scaled into a standard circle using a plurality of center points of the circular structure.

[0074] To this end, if the circular structure is an ellipse, the code decoding device searches for the center point of the ellipse's symmetry using the first axis and the second axis. In this case, the first axis is the long axis of the ellipse, which is a dash connecting the first center and the second center, and the second axis is the short axis of the ellipse, which is a dash passing through the center point and perpendicular to the first axis.

[0075] After that, the code decoding device calculates the distance between the first center and the second center using the radius of the first axis and the radius of the second axis, and calculates the first center and the second center based on the distance and the intersection point between the first axis and the second axis.

[0076] In one embodiment, the code decoding device can determine that the first center and the second center of the ellipse are on the x-axis because the ellipse is a horizontal ellipse when the first axis is in the x-axis direction.

[0077] In the above embodiment, the code decoding device can calculate the distance between the first center and the second center using the radius of the first axis and the radius of the second axis, and calculate the first center and the second center on the x-axis using the distance and the intersection point between the first axis and the second axis.

[0078] In another embodiment, the code decoding device can determine that the first center and the second center are on the y-axis because the ellipse is a vertical ellipse when the first axis is in the y-axis direction.

[0079] In the above embodiment, the code decoding device can calculate the distance between the first center and the second center using the radius of the first axis and the radius of the second axis, and calculate the first center and the second center on the y-axis using the distance and the intersection point between the first axis and the second axis.

[0080] As described above, the code decoding device scales to a standard circle by correcting the lengths of the first axis and the second axis so that they are equal when the lengths of the first axis and the second axis are different. At this time, each of the first axis and the second axis can be the x-axis or the y-axis.

[0081] In one embodiment, when the length of the x-axis is longer than the length of the y-axis, the code decoding device scales to a standard circle by multiplying the length of the x-axis by the length of the x-axis / the length of the b-axis so that the length of the x-axis is equal to the length of the y-axis.

[0082] In another embodiment, when the length of the y-axis is longer than the length of the x-axis, the code decoding device scales to a standard circle by multiplying the length of the y-axis by the length of the y-axis / the length of the x-axis so that the length of the x-axis is equal to the length of the y-axis.

[0083] Through the process described above, the length of the x-axis becomes equal to the length of the y-axis, and as a result, the ellipse is converted into a standard circle.

[0084] The code decoding device generates multiple auxiliary circles based on a circular structure, then divides them to generate multiple sectors.

[0085] As shown in reference number (a) of FIG. 5, the code decoding device can generate a first auxiliary circle on the inside of the standard circle and a second auxiliary circle on the outside of the standard circle based on the standard circle.

[0086] After that, as shown in reference number (b) of Fig. 5, the code decoding device generates a rectangle using a plurality of auxiliary circles on a sector.

[0087] In one embodiment, the code decoding device sets a reference diameter by connecting a point on the circumference of a second auxiliary circle from the center of a standard circle, and creates a plurality of sectors by dividing the circumference of the second auxiliary circle by a specific angle using the reference diameter as the central axis.

[0088] After that, as shown in reference number (c) of FIG. 6, the code decoding device connects the vertex corresponding to the first virtual circle and the vertex corresponding to the second virtual circle for each of the multiple sectors, and then divides them to generate a radial trapezoid as shown in reference number (d) of FIG. 6. At this time, the code decoding device can deform the radial trapezoid and scale it into a standard trapezoid.

[0089] Then, the code decoding device decodes the bit structure using the break on the dash.

[0090] In one embodiment, the code decoding device analyzes the dashes and, if a break in the dashes exists, uses the length of the dashes between the gaps to determine the start position and the end position. Then, the code decoding device determines the dashes between the start position and the end position as the decoding target.

[0091] For example, a code decoding device may determine that if the length of the dash between gaps is a first length, the corresponding discontinuity is a start position, and if the length of the dash between gaps is a repeating first length, the corresponding discontinuity is determined as an end start position.

[0092] After that, the code decoding device determines the dash between the start position and the end position as the decoding target, and determines whether the bit value is 0 or 1 using the length of the dash between the gaps for the dash of the decoding target, and then combines them to derive a code value.

[0094] Although the present invention has been described by the embodiments and drawings described above, the present invention is not limited to the above embodiments, and various modifications and variations are possible from this description by those skilled in the art to which the present invention pertains. Accordingly, the concept of the present invention should be understood only by the claims set forth below, and all equivalent or analogous variations thereof shall be considered to fall within the scope of the concept of the present invention.

Claims

Claim 1 A method for decoding a circular structure code executed in a circular structure code decoding device, characterized by comprising: a step of receiving a circular structure that is cut off through a gap to have different lengths according to a bit structure; a step of generating a plurality of auxiliary circles based on the circular structure and then dividing them to generate a plurality of sectors; and a step of generating a square using the auxiliary circles on the plurality of sectors and connecting each of the squares to restore the bit structure. Claim 2 A method for decoding a code of a circular structure according to claim 1, further comprising: a step of determining whether the type of circular structure is a standard circle or an ellipse; and a step of scaling the circular structure into a standard circle based on the determination result. Claim 3 A method for decoding a code of a circular structure according to claim 1, wherein the step of generating a plurality of auxiliary circles based on the circular structure and then dividing to generate a plurality of sectors includes the step of generating a first auxiliary circle on the inner side of the circular structure and generating a second auxiliary circle on the outer side of the circular structure. Claim 4 In claim 3, the step of generating a plurality of auxiliary circles based on the circular structure and then dividing them to generate a plurality of sectors comprises: a step of setting a reference diameter by connecting a point on the circumference of the second auxiliary circle from the center of the circular structure, and generating a plurality of sectors by dividing the circumference of the second auxiliary circle by a specific angle using the reference diameter as the central axis; and a step of generating a radial trapezoid by connecting a vertex corresponding to the first virtual circle and a vertex corresponding to the second virtual circle, then dividing it, and then scaling it into a standard trapezoid. Claim 5 A method for decoding a code of a circular structure according to claim 3, wherein the step of generating a square using each of the auxiliary circles on the plurality of sectors and restoring the bit structure by connecting each of the squares includes: a step of determining a start position and an end position using the length of the dash between the gaps; and a step of determining the dash between the start position and the end position as a decoding target. Claim 6 A circular structure code decoding method according to claim 1, wherein the step of generating a square using each of the plurality of auxiliary circles on the sector and restoring the bit structure by connecting each of the squares includes the step of determining whether the bit value is 0 or 1 using the length of the dash between the gaps and then combining them to derive a code value. Claim 7 A method for decoding a circular structure code executed in a circular structure code encoding device, comprising: a step of determining a bit structure composed of dashes of different lengths and gaps separating the dashes; and a step of inserting the bit structure by adjusting the ratio of the dashes and gaps according to the circumference of the circular structure and then mapping it to the circumference of the circular structure. Claim 8 A method for decoding a circular structure, wherein, in claim 6, the bit structure is composed of dashes and gaps of different lengths formed by connecting a specific number of standard length dashes according to a control bit, a data length type bit, a data bit, and a checksum.