System and method for recognizing robot position and direction based on floor pattern code string

KR103022470B1Active Publication Date: 2026-09-21KOREA INST OF ROBOT & CONVERGENCE
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
KR1020240013190
Authority / Receiving Office
KR · KR
Patent Type
Patents
Current Assignee / Owner
Filing Date
2024-01-29
Publication Date
2026-09-21
Estimated Expiration
2044-01-29

Smart Images

  • Figure 112024011217923-PAT00001_ABST
    Figure 112024011217923-PAT00001_ABST
Patent Text Reader

Abstract

A robot position and direction recognition system based on a floor pattern code sequence according to one embodiment of the present invention relates to a system for recognizing the position and direction of a robot using a floor pattern captured by a camera mounted on a robot traveling in a predetermined space. The system may include: a map acquisition unit that obtains a code block map generated by extracting a unit pattern from a floor pattern of a predetermined space and assigning a predetermined identification code to the unit pattern; a driving image acquisition unit that obtains a driving image of a floor pattern captured by the camera; a driving unit pattern extraction unit that extracts a driving unit pattern from a floor pattern included in the driving image; a code sequence generation unit that generates a floor pattern code sequence by identifying a predetermined driving identification code corresponding to the driving unit pattern; and a calculation unit that calculates the position and direction of the robot by comparing the floor pattern code sequence with the identification code of the code block map.
Need to check novelty before this filing date? Find Prior Art

Description

Technology Field

[0001] The present invention relates to a floor pattern code sequence-based robot position and direction recognition system and method, and more specifically, to a floor pattern code sequence-based robot position and direction recognition system that recognizes the position and direction of a robot using a floor pattern captured by a camera mounted on a robot traveling in a predetermined space. Background Technology

[0003] With the development of information and communication technology, robotics technology, autonomous driving technology, and computer technology, various autonomous robots are being developed and commercialized, such as cleaning robots used in homes, service robots used in restaurants and hospitals, and mobile robots used for logistics transport in industrial sites.

[0004] Furthermore, in the automotive sector, fully autonomous vehicles are expected to emerge in the near future, and in the aviation sector, the development of unmanned drones is also proceeding very actively.

[0005] Various types of autonomous robots like these are equipped with various sensors to recognize the robot's location or to set the optimal movement path to recognize and avoid surrounding obstacles.

[0006] To this end, sensors mounted on autonomous robots include GPS sensors, ultrasonic sensors, infrared sensors, laser sensors, LiDAR sensors, and camera sensors.

[0007] As such, information regarding the robot's movement environment is primarily acquired using distance sensors (LiDAR, laser, ultrasound, infrared, etc.) attached to the robot, or through image processing using vision sensors such as cameras.

[0008] In addition, autonomous robots are primarily equipped with motor encoders, infrared and ultrasonic sensors, and are configured to recognize the robot's own position and the presence of obstacles by relying on odometer information.

[0009] Meanwhile, conventional map creation methods using LiDAR-based SLAM cannot include various information about the environment because they determine movable areas, non-movable areas, and unexplored areas based on results recognized by sensors and draw them on a grid map.

[0010] Therefore, there is a problem where errors occur in determining the position or direction of autonomous robots in spaces without feature points or in spaces such as long corridors.

[0011] On the other hand, in the case of maps fused with image information, the image information contains too much data, which increases the map data size and creates a problem where a large amount of computation is required during the image comparison process when recognizing the robot's position or direction.

[0012] Meanwhile, Korean registered patent No. 10-2555708 B1 (July 11, 2023) discloses a position recognition and driving control method for a tile grid tracking autonomous driving robot, but it is limited only to a method of controlling driving through the detection of tile edges. The problem to be solved

[0014] The present invention aims to solve the above-mentioned problems by providing a floor pattern code sequence-based robot position and direction recognition system and method for reducing the computational load of driving environment information in a space containing floor tiles and wall tiles with repetitive patterns.

[0016] The problems that the present invention aims to solve are not limited to those described above, and problems not mentioned will be clearly understood by those skilled in the art from this specification and the attached drawings. means of solving the problem

[0018] A robot position and direction recognition system based on a floor pattern code sequence according to one embodiment of the present invention relates to a system for recognizing the position and direction of a robot using a floor pattern captured by a camera mounted on a robot traveling in a predetermined space. The system may include: a map acquisition unit that obtains a code block map generated by extracting a unit pattern from a floor pattern of a predetermined space and assigning a predetermined identification code to the unit pattern; a driving image acquisition unit that obtains a driving image of a floor pattern captured by the camera; a driving unit pattern extraction unit that extracts a driving unit pattern from a floor pattern included in the driving image; a code sequence generation unit that generates a floor pattern code sequence by identifying a predetermined driving identification code corresponding to the driving unit pattern; and a calculation unit that calculates the position and direction of the robot by comparing the floor pattern code sequence with the identification code of the code block map. Effects of the invention

[0020] According to a floor pattern code sequence-based robot position and direction recognition system according to one embodiment of the present invention, in a space with floor tiles and wall tiles having repetitive patterns, there is an advantage of being able to quickly determine the position and direction of a robot by reducing the amount of computation of driving environment information by using a code pre-set in the pattern.

[0022] The effects of the present invention are not limited to the effects described above, and unmentioned effects will be clearly understood by those skilled in the art from this specification and the accompanying drawings. Brief explanation of the drawing

[0024] FIG. 1 is a schematic diagram of the floor pattern recognition-based code block map generation system and the floor pattern code sequence-based robot position and direction recognition system of the present invention. FIG. 2 is a schematic example diagram for explaining the pattern of the floor, which is the subject of the captured image of the floor pattern recognition-based code block map generation system of the present invention. FIG. 3 is a schematic example diagram illustrating the code assignment unit of the floor pattern recognition-based code block map generation system of the present invention. FIG. 4 is a schematic example of a code block map generated by the map generation unit of the floor pattern recognition-based code block map generation system of the present invention. FIG. 5 is a schematic example diagram illustrating the function of the map generation unit of the floor pattern recognition-based code block map generation system of the present invention. FIG. 6 is a schematic example diagram illustrating the pattern of another floor, which is the subject of the captured image of the floor pattern recognition-based code block map generation system of the present invention. FIG. 7 is a schematic example diagram for explaining the code assignment unit of the floor pattern recognition-based code block map generation system of the present invention based on the floor pattern according to FIG. 6. FIG. 8 is a schematic example of a code block map generated by a map generation unit of the floor pattern recognition-based code block map generation system of the present invention based on the floor pattern according to FIG. 6. FIG. 9 is a schematic flowchart of the floor pattern recognition-based code block map generation method of the present invention. FIG. 10 is a schematic example diagram illustrating the driving image acquisition unit and the driving unit pattern extraction unit of the floor pattern code sequence-based robot position and direction recognition system of the present invention. FIGS. 11 and 12 are schematic example diagrams for explaining the code sequence generation unit of the floor pattern code sequence-based robot position and direction recognition system of the present invention. FIG. 13 is a schematic example diagram illustrating the output unit of the floor pattern code sequence-based robot position and direction recognition system of the present invention. FIG. 14 is another schematic example diagram illustrating the driving image acquisition unit and driving unit pattern extraction unit of the floor pattern code sequence-based robot position and direction recognition system of the present invention. FIG. 15 is another schematic example diagram illustrating a code sequence generation unit of a floor pattern code sequence-based robot position and direction recognition system of the present invention. FIG. 16 is a schematic flowchart of the floor pattern code sequence-based robot position and orientation recognition method of the present invention. Specific details for implementing the invention

[0025] Specific embodiments of the present invention will be described in detail below with reference to the drawings. However, the concept of the present invention is not limited to the presented embodiments. Those skilled in the art who understand the concept of the present invention may easily propose other inventions that are inferior or other embodiments included within the scope of the concept of the present invention by adding, changing, or deleting other components within the same scope of the concept, and such are also to be considered to be included within the scope of the concept of the present invention.

[0027] A robot position and direction recognition system based on a floor pattern code sequence according to one embodiment of the present invention relates to a system for recognizing the position and direction of a robot using a floor pattern captured by a camera mounted on a robot traveling in a predetermined space. The system may include: a map acquisition unit that obtains a code block map generated by extracting a unit pattern from a floor pattern of a predetermined space and assigning a predetermined identification code to the unit pattern; a driving image acquisition unit that obtains a driving image of a floor pattern captured by the camera; a driving unit pattern extraction unit that extracts a driving unit pattern from a floor pattern included in the driving image; a code sequence generation unit that generates a floor pattern code sequence by identifying a predetermined driving identification code corresponding to the driving unit pattern; and a calculation unit that calculates the position and direction of the robot by comparing the floor pattern code sequence with the identification code of the code block map.

[0028] Additionally, if the floor pattern code sequence and the identification code of the code block map do not match, the calculation unit can generate a corrected floor pattern code sequence by correcting the driving identification code with a predetermined rotation value, and calculate the position and direction of the robot by comparing the corrected floor pattern code sequence with the identification code of the code block map.

[0029] In addition, if the floor pattern code sequence and the identification code of the code block map do not match, the calculation unit can generate a rotation code block map by correcting the identification code of the code block map with a predetermined rotation value, and calculate the position and direction of the robot by comparing the floor pattern code sequence and the identification code of the rotation code block map.

[0030] Additionally, the code sequence generation unit may change the number of driving identification codes included in the floor pattern code sequence according to at least one of the type and number of identification codes included in the code block map.

[0031] A method for recognizing a robot's position and direction based on a floor pattern code sequence according to another embodiment of the present invention relates to a method for recognizing the position and direction of a robot using a floor pattern captured by a camera mounted on a robot traveling in a predetermined space, and may include: a step in which a map acquisition unit extracts a unit pattern from a floor pattern of a predetermined space and acquires a code block map generated by assigning a predetermined identification code to the unit pattern; a step in which a driving image acquisition unit acquires a driving image of a floor pattern captured by the camera; a step in which a driving unit pattern extraction unit extracts a driving unit pattern from a floor pattern included in the driving image; a step in which a code sequence generation unit identifies a predetermined driving identification code corresponding to the driving unit pattern and generates a floor pattern code sequence; and a step in which a calculation unit calculates the position and direction of the robot by comparing the floor pattern code sequence with the identification code of the code block map.

[0032] Additionally, in the step of calculating the position and direction of the robot, if the floor pattern code sequence and the identification code of the code block map do not match, the driving identification code is corrected by a predetermined rotation value to generate a corrected floor pattern code sequence, and the position and direction of the robot can be calculated by comparing the corrected floor pattern code sequence with the identification code of the code block map.

[0033] Additionally, in the step of calculating the position and direction of the robot, if the identification code of the floor pattern code sequence and the identification code of the code block map do not match, the identification code of the code block map is corrected by a predetermined rotation value to generate a rotation code block map, and the position and direction of the robot can be calculated by comparing the floor pattern code sequence and the identification code of the rotation code block map.

[0034] Additionally, the step of generating the floor pattern code sequence may change the number of driving identification codes included in the floor pattern code sequence according to at least one of the type and number of identification codes included in the code block map.

[0036] Components with the same function within the scope of the same concept appearing in the drawings of each embodiment are described using the same reference numeral.

[0038] Figure 1 is a schematic diagram of the floor pattern recognition-based code block map generation system and the floor pattern code sequence-based robot position and direction recognition system of the present invention.

[0039] FIG. 2 is a schematic example diagram for explaining the pattern of the floor, which is the subject of the captured image of the floor pattern recognition-based code block map generation system of the present invention.

[0040] FIG. 3 is a schematic example diagram illustrating the code assignment unit of the floor pattern recognition-based code block map generation system of the present invention.

[0041] FIG. 4 is a schematic example of a code block map generated by the map generation unit of the floor pattern recognition-based code block map generation system of the present invention.

[0042] FIG. 5 is a schematic example diagram illustrating the function of the map generation unit of the floor pattern recognition-based code block map generation system of the present invention.

[0043] FIG. 6 is a schematic example diagram illustrating the pattern of another floor, which is the subject of the captured image of the floor pattern recognition-based code block map generation system of the present invention.

[0044] FIG. 7 is a schematic example diagram for explaining the code assignment unit of the floor pattern recognition-based code block map generation system of the present invention based on the floor pattern according to FIG. 6.

[0045] FIG. 8 is a schematic example of a code block map generated by the map generation unit of the floor pattern recognition-based code block map generation system of the present invention based on the floor pattern according to FIG. 6.

[0046] FIG. 9 is a schematic flowchart of the floor pattern recognition-based code block map generation method of the present invention.

[0047] FIG. 10 is a schematic example diagram illustrating the driving image acquisition unit and driving unit pattern extraction unit of the floor pattern code sequence-based robot position and direction recognition system of the present invention.

[0048] FIGS. 11 and 12 are schematic examples illustrating the code sequence generation unit of the floor pattern code sequence-based robot position and direction recognition system of the present invention.

[0049] FIG. 13 is a schematic example diagram illustrating the output unit of the floor pattern code sequence-based robot position and direction recognition system of the present invention.

[0050] FIG. 14 is another schematic example diagram illustrating the driving image acquisition unit and driving unit pattern extraction unit of the floor pattern code sequence-based robot position and direction recognition system of the present invention.

[0051] FIG. 15 is another schematic example diagram illustrating the code sequence generation unit of the floor pattern code sequence-based robot position and direction recognition system of the present invention.

[0052] FIG. 16 is a schematic flowchart of the floor pattern code sequence-based robot position and orientation recognition method of the present invention.

[0054] In order to express the technical concept of the present invention more clearly, the attached drawings have simplified or omitted parts that are less related to the technical concept of the present invention or that can be easily derived by those skilled in the art.

[0056] Throughout the specification, when a part is described as being "connected" to another part, this includes not only cases where they are "directly connected" but also cases where they are "indirectly connected" with other elements interposed between them. Furthermore, when a part is described as "including" a component, this means that, unless specifically stated otherwise, it does not exclude other components but rather allows for the inclusion of additional components; it should be understood that this does not preclude the existence or addition of one or more other features, numbers, steps, actions, components, parts, or combinations thereof.

[0057] In this specification, the term "part" includes a unit realized by hardware, a unit realized by software, and a unit realized using both. Additionally, one unit may be realized using two or more hardware, and two or more units may be realized by one hardware.

[0058] Some of the operations or functions described in this specification as being performed by a terminal or device may instead be performed by a server connected to said terminal or device. Likewise, some of the operations or functions described as being performed by a server may also be performed by a terminal or device connected to said server.

[0060] First, before describing the floor pattern code sequence-based robot position and direction recognition system of the present invention and the floor pattern code sequence-based robot position and direction recognition method implemented by said system, I will describe in detail another floor pattern recognition-based code block map generation system and method of the present invention with reference to FIGS. 1 to 9.

[0062] 1. Regarding a floor pattern recognition-based code block map generation system and method

[0063] I will describe in detail a floor pattern recognition-based code block map generation system (10) according to one embodiment of the present invention and a floor pattern recognition-based code block map generation method implemented by said system (10).

[0064] The above system (10) may be primarily characterized by generating a code block map (M) used by the robot (A) to recognize its position, direction, etc., by utilizing the pattern of the floor on which the robot (A) travels.

[0065] For example, as illustrated in FIG. 1, the system (10) may include an image acquisition unit (100), a unit pattern extraction unit (200), a code assignment unit (300), and a map generation unit (400), which will be described in more detail below.

[0066] In addition, the above system (10) may further include a communication unit that communicates with other devices such as a robot (A), an input unit that receives a predetermined calculation formula / command, etc. from an administrator, a display unit that displays predetermined information / data, and a memory unit that stores predetermined information / data, although not shown in the drawing.

[0067] Meanwhile, the above system (10) can obtain a captured image taken by the camera (C) by communicating with a robot (A) that is equipped with a camera (C) and travels in a predetermined space.

[0068] Below, the system (10) will be explained in more detail with reference to FIGS. 2 to 8.

[0069] The above system (10) may include an image acquisition unit (100) that acquires the captured image of the floor taken from the camera (C).

[0070] For example, FIG. 2 is an example of the above-mentioned captured image (E), and the subject of the above-mentioned captured image (E) may include a plurality of tiles (a total of 16 tiles arranged in 4 rows and 4 columns) that are pre-installed in a predetermined space where the robot (A) travels, and as one type of tile is installed in multiple directions, each tile has a different pattern (pattern, shape, etc.) when viewed from one direction.

[0071] The above-mentioned captured image (E) may be an image of the floor on which the robot (A) travels, but it is not limited thereto, and it is obvious that it may also be an image of a wall or a ceiling. However, for the convenience of explanation below, it will be assumed that the above-mentioned captured image (E) is an image of the floor.

[0072] Here, the image acquisition unit (100) can acquire the captured image (E) taken by the camera (C) from the camera (C) via a wired / wireless method, a removable memory device, etc.

[0073] Meanwhile, the above system (10) may further include a unit pattern extraction unit (200) that extracts a unit pattern from a floor pattern included in the above-described image (E).

[0074] To explain this in more detail, the unit pattern extraction unit (200) can extract one tile (P1) from a plurality of tiles that are subjects included in the captured image (E), and can extract a pattern (meaning a unit pattern) displayed on the extracted tile (P1).

[0075] That is, the unit pattern extraction unit (200) can recognize the boundary line (border) for each tile among the plurality of tiles that are subjects of the captured image (E), distinguish each tile distinguished by the boundary line, and recognize / extract the unit pattern included in each tile.

[0076] Here, the unit pattern extraction unit (200) can select / extract any one of a plurality of tiles distinguished by a boundary line, and can extract the unit pattern (P1), which is a pattern displayed on one extracted tile (for example, extracting the pattern for the tile in row 1, column 1, which is the topmost and leftmost tile in FIG. 2).

[0077] Meanwhile, the above system (10) may further include a code assignment unit (300) that assigns a predetermined identification code to the unit pattern extracted by the unit pattern extraction unit (200).

[0078] To explain this in more detail, the code assignment unit (300) may be configured to match and assign a predetermined identification code to the unit pattern extracted by the unit pattern extraction unit (200) so that it can be distinguished from other patterns.

[0079] For example, as illustrated in FIG. 3(a), the code assignment unit (300) can assign "1" as the identification code (I1) to the unit pattern (P1) for the tile in row 1 and column 1 in FIG. 2.

[0080] Here, the code assignment unit (300) generates a rotational unit pattern by rotating the unit pattern by a predetermined angle and can assign a rotational identification code to the rotational unit pattern.

[0081] To explain this in more detail, the code assignment unit (300) can generate the rotational unit pattern, which is a pattern that differs from the unit pattern due to rotation, by rotating the unit pattern extracted by the unit pattern extraction unit (200) at a predetermined angle, and can assign the rotational identification code to each of the rotational unit patterns.

[0082] For example, as illustrated in FIG. 3(b), the code assignment unit (300) can rotate the unit pattern (P1) illustrated in FIG. 3(a) 90 degrees clockwise, and as the unit pattern (P1) is rotated 90 degrees, it can generate the rotation unit pattern (P2) of the 90-degree rotation that has a pattern different from the unit pattern (P1), and can assign "2" as the rotation identification code (I2) to the rotation unit pattern (P2) of the 90-degree rotation.

[0083] Additionally, as illustrated in FIG. 3(c), the code assignment unit (300) can rotate the unit pattern (P1) illustrated in FIG. 3(a) 180 degrees clockwise, and as the unit pattern (P1) is rotated 180 degrees, it can generate the rotational unit pattern (P3) of the 180-degree rotation that has a pattern different from the unit pattern (P1), and can assign "3" as the rotation identification code (I3) to the rotational unit pattern (P3) of the 180-degree rotation.

[0084] Likewise, as illustrated in FIG. 3(d), the code assignment unit (300) can rotate the unit pattern (P1) illustrated in FIG. 3(a) clockwise by 270 degrees, and as the unit pattern (P1) is rotated by 270 degrees, it can generate the rotational unit pattern (P4) of the 270-degree rotation that has a pattern different from the unit pattern (P1), and can assign "4" as the rotation identification code (I4) to the rotational unit pattern (P4) of the 270-degree rotation.

[0085] Here, the rotation identification code may include information about the angle at which the rotation unit pattern is rotated based on the unit pattern.

[0086] That is, the code assignment unit (300) assigns the identification code (I2) "2" to the rotational unit pattern (P2) which is rotated 90 degrees from the unit pattern (P1) to which the identification code (I1) "1" has been assigned, so that the rotational identification code "2" may be a code that includes arbitrary information of a pattern (P2) different from the unit pattern (P1) of the identification code "1", and additionally includes arbitrary information of a pattern (P2) which is rotated 90 degrees from the unit pattern (P1) of the identification code "1".

[0087] Likewise, the code assignment unit (300) assigns the identification code (I3) "3" to the rotational unit pattern (P3) which is rotated 180 degrees from the unit pattern (P1) to which the identification code "1" is assigned, so that the rotational identification code "3" may be a code that includes arbitrary information of a pattern (P3) different from the unit pattern (P1) of the identification code "1", and additionally includes arbitrary information of a pattern (P3) which is rotated 180 degrees from the unit pattern (P1) of the identification code "1".

[0088] Additionally, the code assignment unit (300) assigns the identification code (I4) "4" to the rotational unit pattern (P4) which is rotated 270 degrees from the unit pattern (P1) to which the identification code (I1) "1" has been assigned, so that the rotational identification code "4" may be a code that includes arbitrary information of a pattern (P4) different from the unit pattern (P1) of the identification code "1", and additionally includes arbitrary information of a pattern (P4) which is rotated 270 degrees from the unit pattern (P1) of the identification code "4".

[0089] Here, the angle and number of rotations at which the code assignment unit (300) rotates the unit pattern can be determined by the shape formed by the boundary line (border) of one tile extracted by the unit pattern extraction unit (200) and the angle formed between the borders.

[0090] That is, the code assignment unit (300) can generate a total of three rotational unit patterns by rotating the unit pattern by 90 degrees, 180 degrees, and 270 degrees respectively when the border of one tile is rectangular, and can generate a total of five rotational unit patterns by rotating the unit pattern by 60 degrees, 120 degrees, 180 degrees, 240 degrees, and 300 degrees respectively when the border of one tile is hexagonal.

[0091] Meanwhile, the system (10) may further include a map generation unit (400) that forms a block (B) corresponding to the unit pattern and generates a code block map (M) by matching the identification code to the block (B) corresponding to the unit pattern.

[0092] To explain this in detail, the map generation unit (400) may be configured to define and generate a map of the floor as a code block map (M) composed of codes by matching the identification code assigned by the code assignment unit (300) to the pattern of the floor on which the robot (A) travels, thereby coding the pattern of the floor.

[0093] For example, the map generation unit (400) can form a block (B) corresponding to the unit pattern in the captured image (E) of FIG. 2. Here, the block (B) refers to an area corresponding to the boundary line of each of the plurality of tiles shown in FIG. 2, and can form a total of 16 blocks (B) of 4 rows and 4 columns.

[0094] Afterwards, the map generation unit (400) can assign the identification code and the rotation identification code to the blocks (B) having the same pattern for each of the unit pattern and the rotation unit pattern for a total of 16 blocks (B).

[0095] That is, as illustrated in FIG. 4, the map generation unit (400) can assign the identification code (I1) "1" to a block (B) that has the same pattern as the unit pattern (P1) among a total of 16 blocks (B).

[0096] Additionally, the map generation unit (400) can assign the rotation identification code (I2) "2" to a block (B) that has the same pattern as the rotation unit pattern (P2) of 90 degrees rotation among a total of 16 blocks (B), assign the rotation identification code (I3) "3" to a block (B) that has the same pattern as the rotation unit pattern (P3) of 180 degrees rotation, and assign the rotation identification code (I4) "4" to a block (B) that has the same pattern as the rotation unit pattern (P4) of 270 degrees rotation.

[0097] As a result, as shown in FIG. 4, the map generation unit (400) can form 16 blocks (B) each assigned the identification code and the rotation identification code to each of the plurality of tiles that are subjects of the captured image (E) shown in FIG. 2, and through this process, the code block map (M) for the floor on which the robot (A) travels can be generated.

[0098] Here, for example, the code block map (M) may include information in which the image of the unit pattern corresponding to the identification code assigned to the block (B) and the identification code are matched with each other, and likewise may include information in which the image of the rotation unit pattern corresponding to the rotation identification code and the rotation identification code are matched with each other.

[0099] Meanwhile, the map generation unit (400) can further generate a rotated code block map (M1) by rotating the code block map (M) at a predetermined angle.

[0100] To explain this in more detail, as illustrated in FIG. 5(a), the map generation unit (400) can generate the code block map (M) by assigning the identification code and the rotation identification code to each of the plurality of tiles that are subjects of the captured image (E) illustrated in FIG. 2 described above, and the code block map (M) may be a map of the captured image (E) that was captured by the robot (A) moving from bottom to top (indicated by an arrow) in a predetermined space.

[0101] Here, as illustrated in FIG. 5(b), the robot (A) can generate the captured image (E) through the camera (C) while moving from left to right (indicated by the arrow) in the same predetermined space. The map generation unit (400) can easily generate the rotated code block map (M1) from the code block map (M) by not creating a new code block map (M) for the captured image (E) while moving from left to right, but by rotating the code block map (M) for the captured image (E) while moving from bottom to top (indicated by the arrow) 90 degrees counterclockwise (rotating 270 degrees clockwise), and by changing the identification code and the rotation identification code assigned to the code block map (M) to correspond to the rotation angle and assigning a code to each block (B).

[0103] Below, the system (10) will be described in more detail with reference to FIGS. 6 to 8.

[0104] For example, FIG. 6 is another example of the above-mentioned captured image (E), and the subject of the above-mentioned captured image (E) may include a plurality of tiles (a total of 16 tiles arranged in 4 rows and 4 columns) that are pre-installed in another predetermined space where the robot (A) travels, and illustrates that three types of tiles are installed in various directions.

[0105] Here, the unit pattern extraction unit (200) can extract one of the plurality of unit patterns of the floor included in the captured image (E) (e.g., the unit pattern (P1) in row 1, column 1), as previously explained with reference to FIGS. 2 to 4; the code assignment unit (300) can assign the identification code (I1) and the rotation identification code (I2, I3, I4) to each of the unit pattern (P1) in row 1, column 1 and the rotation unit pattern (P2, P3, P4) generated by rotating it; and as shown in FIG. 8, the map generation unit (400) can generate the code block map (M) by assigning the code "1, 2, 3, 4" to the plurality of blocks (B).

[0106] Here, in the floor pattern of FIG. 6, the unit pattern extraction unit (200) can extract at least one of the unit patterns (e.g., the unit pattern of row 4, column 4 (PA)) among the blocks (B) (tiles having a pattern different from the unit pattern of row 1, column 1 and the rotation unit pattern therefrom) that are not assigned the code "1, 2, 3, 4", and as shown in FIG. 7(a), the code assignment unit (300) can generate a rotation unit pattern by rotating the unit pattern of row 4, column 4 (PA) by a predetermined angle.

[0107] Here, the code assignment unit (300) can determine whether the unit pattern (PA) of 4 rows and 4 columns and the rotation unit pattern generated by rotating it have the same pattern, and if the unit pattern (PA) and the rotation unit pattern are the same, the identification code (IA) may be assigned only to the unit pattern (PA), and the rotation identification code for the rotation unit pattern may not be assigned.

[0108] As a result, for the above unit pattern (PA) of 4 rows and 4 columns, only the above identification code (IA) "A" is assigned, and the above rotation identification code may not be assigned.

[0109] Afterwards, as shown in FIG. 8, the map generation unit (400) can generate the code block map (M) by assigning the identification code (IA) "A" to the block (B) of 2 rows and 2 columns that has the same pattern as the unit pattern (PA) of 4 rows and 4 columns.

[0110] Likewise, in the floor pattern of FIG. 6, the unit pattern extraction unit (200) can extract at least one of the unit patterns (e.g., the unit pattern of the 4th row and 1st column (Pa)) among the blocks (B) (tiles having a unit pattern of the 1st row and 1st column and a rotational unit pattern different from the one thereto and a unit pattern of the 4th row and 4th column that are not assigned the code “1, 2, 3, 4, A”, and as shown in FIG. 7(b), the code assignment unit (300) can generate rotational unit patterns (Pb, Pc, Pd) by rotating the unit pattern of the 4th row and 1st column (Pa) by a predetermined angle.

[0111] Here, the code assignment unit (300) can determine whether the unit pattern (Pa) in 4 rows and 1 column and the rotational unit pattern (Pb, Pc, Pd) generated by rotating it have the same pattern, and if the unit pattern (Pa) and the plurality of rotational unit patterns (Pb, Pc, Pd) are not the same, it can assign the identification code (Ia) to the unit pattern (Pa) and also assign the rotational identification code (Ib, Ic, Id) to the rotational unit patterns (Pb, Pc, Pd).

[0112] As a result, the identification code (Ia) "a" can be assigned to the unit pattern (Pa) in row 4, column 1, and the rotation identification codes (Ib, Ic, Id) "b, c, d" can be assigned to the rotation unit patterns (Pb, Pc, Pd), respectively.

[0113] Afterwards, as shown in FIG. 8, the map generation unit (400) can assign a code "a" to the block (B) in the 3rd row and 2nd column, a pattern identical to the unit pattern (Pa) in the 4th row and 1st column, assign a code "b" to the block (B) in the 2nd row and 4th column, and assign a code "c" to the block (B) in the 4th row and 2nd column, thereby generating the code block map (M).

[0114] Thus, the system (10) has the advantage of being able to greatly reduce the amount of information in the code block map (M) and greatly reduce the amount of computation for the autonomous robot (A) using the code block map (M) by encoding the pattern of the tiles in a space with floor tiles and wall tiles that have repetitive patterns and generating a simplified code block map (M).

[0116] Meanwhile, below, with reference to FIG. 9, a method for generating a floor pattern recognition-based code block map according to another embodiment of the present invention will be described in detail.

[0117] For example, the above method may be a method implemented by the system (10).

[0118] For example, the above method relates to a floor pattern recognition-based code block map generation method that generates a code block map (M) using a floor pattern on which a robot (A) travels, and may include the steps of: the image acquisition unit (100) acquiring the captured image of the floor from the camera (C) (S100); the unit pattern extraction unit (200) extracting the unit pattern from the floor pattern included in the captured image (E) (S200); the code assignment unit (300) assigning a predetermined identification code to the unit pattern (S300); and the map generation unit (400) forming the block (B) corresponding to the unit pattern and matching the identification code to the block (B) corresponding to the unit pattern to generate the code block map (S400).

[0119] Here, the step of assigning the identification code (S300) generates the rotation unit pattern by rotating the unit pattern by a predetermined angle, and may assign the rotation identification code to the rotation unit pattern, and the rotation identification code may include information about the angle at which the rotation unit pattern is rotated relative to the unit pattern.

[0120] Additionally, the step of assigning the identification code (S300) may not assign a rotation identification code for the rotation unit pattern if the unit pattern and the rotation unit pattern are the same.

[0121] Additionally, the step (S400) of generating the code block map may form a block (B) corresponding to the rotation unit pattern and generate the code block map (M) by matching the rotation identification code to the block (B) corresponding to the rotation unit pattern.

[0122] In addition, the present invention may include a computer-readable recording medium on which a program for executing the above method on a computer is recorded.

[0124] 2. Regarding a floor pattern code sequence-based robot position and orientation recognition system and method

[0125] Hereinafter, with reference to FIGS. 1 and FIGS. 10 to 16, a floor pattern code sequence-based robot position and direction recognition system and method according to an embodiment of the present invention will be described.

[0126] Technical ideas that overlap with the floor pattern recognition-based code block map generation system (10) and method described above, or that can be easily derived by those skilled in the art, will be omitted or briefly explained.

[0127] In addition, below, the identification code and the rotation identification code constituting the code block map (M), which were named while describing the floor pattern recognition-based code block map generation system (10), will both be described as "identification codes."

[0128] For example, the above system may be characterized by calculating the current position and driving direction of the robot (A) using a driving video (F) captured through a camera (C) mounted on the robot (A) to monitor the operating status of the robot (A) in real time, and may include the robot (A).

[0129] For example, as illustrated in FIG. 1, the robot (A) may be equipped with a control unit (A100) that controls the driving and operation of the camera (C) and the robot (A), a map acquisition unit (A200) to be described in detail below, a driving image acquisition unit (A300), a driving unit pattern extraction unit (A400), a code sequence generation unit (A500), and a calculation unit (A600).

[0130] The above robot (A) can transmit and receive certain information / data with the floor pattern recognition-based code block map generation system (10) described above.

[0131] For example, the system may include a map acquisition unit (A200) that extracts a unit pattern from a floor pattern of a predetermined space and obtains a generated code block map (M) by assigning a predetermined identification code to the unit pattern.

[0132] That is, the map acquisition unit (A200) can acquire the code block map (M) from the floor pattern recognition-based code block map generation system (10) described above.

[0133] Meanwhile, the system may further include a driving image acquisition unit (A300) that acquires a driving image (F) of a floor pattern captured by the camera (C).

[0134] The above driving video (F) may refer to an image captured by the camera (C) mounted on the robot (A) for which position and direction calculation is required.

[0135] The above driving video acquisition unit (A300) can acquire the driving video (F) in real time from the camera (C).

[0136] FIG. 10 is a schematic example diagram for explaining the driving video (F). As shown in FIG. 10(a), the robot (A) can drive in a predetermined space in the direction of the arrow (direction from bottom to top), and at the same time, the driving video (F) of the floor being driven on can be captured through the camera (C).

[0137] FIG. 10(b) is an example of the driving image (F) obtained through the camera (C), and the pattern of the floor indicated by the arrow in FIG. 10(a) may be included as a subject of the driving image (F).

[0138] As a result, the driving image acquisition unit (A300) can acquire the driving image (F) shown in FIG. 10(b) from the camera (C).

[0139] Meanwhile, the above system may further include a driving unit pattern extraction unit (A400) that extracts a driving unit pattern from a floor pattern included in the driving image (F).

[0140] To explain this in more detail, the driving unit pattern extraction unit (A400) can detect boundary lines in a plurality of tiles that are subjects of the driving image (F) and extract the driving unit pattern, which is a pattern for one tile.

[0141] As a result, referring to FIG. 10(b), the driving unit pattern extraction unit (A400) can sequentially extract the driving unit pattern corresponding to F1, the driving unit pattern corresponding to F2, the driving unit pattern corresponding to F3, and the driving unit pattern corresponding to F4 in chronological order according to the driving image (F).

[0142] Meanwhile, the driving unit pattern extraction unit (A400) can extract the driving unit pattern for a tile that includes all boundary lines (for example, a tile with boundary lines in all four directions in FIG. 10(b)) when a plurality of tiles are included as subjects in the driving image (F).

[0143] Meanwhile, the system may further include a code sequence generation unit (A500) that generates a floor pattern code sequence by identifying a predetermined driving identification code corresponding to the driving unit pattern.

[0144] To explain this in more detail, the code sequence generation unit (A500) may be configured to generate the floor pattern code sequence in which the driving identification codes are combined by assigning a predetermined driving identification code to each of the plurality of driving unit patterns.

[0145] For example, the code sequence generation unit (A500) can compare the driving unit pattern of F1 extracted in FIG. 10(b) with a plurality of unit patterns (P1, P2, P3, P4) included in the code block map (M) as shown in FIG. 11, and can assign the driving identification code (G1) of "1", which is identical to the identification code I1 assigned to the unit pattern (P1) that is identical or most similar to the plurality of unit patterns (P1, P2, P3, P4), to the driving unit pattern of F1.

[0146] Likewise, the code sequence generation unit (A500) can compare the driving unit patterns of F2 and F3 extracted in FIG. 10(b) with a plurality of unit patterns (P1, P2, P3, P4) included in the code block map (M), and can assign the driving identification code (G4) of "4", which is identical to the identification code I4 assigned to the unit pattern (P4) that is identical or most similar to the plurality of unit patterns (P1, P2, P3, P4), to the driving unit patterns of F2 and F3.

[0147] In addition, similarly, the code sequence generation unit (A500) can compare the driving unit pattern of F4 extracted in FIG. 10(b) with a plurality of unit patterns (P1, P2, P3, P4) included in the code block map (M), and can assign the driving identification code (G3) of "3", which is identical to I3, assigned to the unit pattern (P3) that is identical or most similar to the plurality of unit patterns (P1, P2, P3, P4), to the driving unit pattern of F4.

[0148] As a result, as illustrated in FIG. 12, the code sequence generation unit (A500) can assign the driving identification codes "1", "4", "4", and "3" to each of the driving unit patterns for F1, F2, F3, and F4 extracted in FIG. 10(b), and can finally generate the floor pattern code sequence having the order "1, 4, 4, 3".

[0149] Meanwhile, the system may include a calculation unit (A600) that calculates the position and direction of the robot (A) by comparing the floor pattern code sequence and the identification code of the code block map (M).

[0150] To explain this in more detail, the calculation unit (A600) is configured to calculate the position and direction of the robot (A). For example, by comparing the floor pattern code sequence of "1, 4, 4, 3" with the identification code of each of the blocks (B) included in the code block map (M), the area having the identification code in the same order as the floor pattern code sequence on the code block map (M) can be calculated, thereby calculating the position and direction of the robot (A) on the code block map (M).

[0151] FIG. 13 illustrates an example in which the calculation unit (A600) calculates an identification code corresponding to the floor pattern code sequence of "1, 4, 4, 3" on the code block map (M). The calculation unit (A600) can recognize a combination of identification codes identical to the floor pattern code sequence of "1, 4, 4, 3" from a plurality of identification codes in the horizontal and vertical directions included in the code block map (M), and as a result, the robot (A) can calculate that it moves in the direction of the arrow indicated in FIG. 13.

[0152] Meanwhile, FIG. 14(a) illustrates, as an example, that the robot (A) moves from left to right rather than moving from bottom to top as in FIG. 10(a), and the camera (C) of the robot (A) moving in the direction of the arrow in FIG. 14(a) can capture the driving image (F) as in FIG. 14(b).

[0153] In this case, the driving unit pattern extraction unit (A400) can sequentially extract the driving unit patterns of F1, F2, F3, and F4 in the same manner as described above, and as shown in FIG. 15, the code sequence generation unit (A500) can generate the driving identification code (G2) of "2" for the driving unit pattern of F1, generate the driving identification code (G4) of "4" for the driving unit pattern of F2, generate the driving identification code (G3) of "3" for the driving unit pattern of F3, and generate the driving identification code (G3) of "3" for the driving unit pattern of F4, thereby generating the floor pattern code sequence of "2, 4, 3, 3".

[0154] Accordingly, the above calculation unit (A600) can find the floor pattern code sequence of "2, 4, 3, 3" in the code block map (M) to calculate the position and direction of the robot (A).

[0155] However, as illustrated in FIG. 13, the code block map (M) does not have the identification number having "2, 4, 3, 3" in the direction from bottom to top, from top to bottom, from left to right, and from right to left (horizontal and vertical directions), so as a result, the floor pattern code sequence and the identification code of the code block map (M) may not match.

[0156] In this case, for example, if the floor pattern code sequence and the identification code of the code block map (M) do not match, the above calculation unit (A600) can generate a corrected floor pattern code sequence by correcting the driving identification code with a predetermined rotation value, and calculate the position and direction of the robot (A) by comparing the corrected floor pattern code sequence with the identification code of the code block map (M).

[0157] To explain this in more detail, the calculation unit (A600) can generate the corrected floor pattern code sequence of "3, 1, 4, 4" by adding +1 to each of the driving identification codes forming the floor pattern code sequence of "2, 4, 3, 3" by rotating them 90 degrees clockwise, the corrected floor pattern code sequence of "4, 2, 1, 1" by adding +2 to the driving identification codes by rotating them 180 degrees clockwise, and the corrected floor pattern code sequence of "1, 3, 2, 2" by adding +3 to the driving identification codes by rotating them 270 degrees clockwise.

[0158] Here, the calculation unit (A600) can compare the generated correction floor pattern code sequence with the identification code of the code block map (M), and based on the code block map (M) shown in FIG. 13, the robot (A) can calculate that it is moving in the left-to-right direction of the 3rd row of the code block map (M) that matches "3, 1, 4, 4", which is obtained by adding +1 to the rotation value obtained by rotating the driving identification code 90 degrees clockwise.

[0159] Meanwhile, in another method, if the identification code of the floor pattern code sequence and the identification code of the code block map (M) do not match, the calculation unit (A600) may generate a rotation code block map (M) by correcting the identification code of the code block map (M) with a predetermined rotation value, and calculate the position and direction of the robot (A) by comparing the identification code of the floor pattern code sequence and the rotation code block map (M).

[0160] To explain this in more detail, as described with reference to FIG. 5(b), the calculation unit (A600) can generate the rotated code block map (M) by adding +1 to each rotation value in which the identification code constituting the code block map (M) shown in FIG. 13 is rotated 90 degrees clockwise, the rotated code block map (M) can be generated by adding +2 to each rotation value in which the identification code is rotated 180 degrees clockwise, and the rotated code block map (M) can be generated by adding +3 to each rotation value in which the identification code is rotated 270 degrees clockwise.

[0161] Here, the calculation unit (A600) can compare the identification code of the generated rotation code block map with the floor pattern code sequence of "2, 4, 3, 3", and as shown in FIG. 5(b), the robot (A) can calculate that it is moving in the left-to-right direction of the 3rd row of the code block map (M) that matches the identification code of "2, 4, 3, 3" which is obtained by rotating the code block map (M) 270 degrees clockwise (rotated 90 degrees counterclockwise).

[0162] In this way, the system can calculate the position and direction of the robot (A) very quickly and easily by comparing the code block map (M) containing the pre-made identification code with the floor pattern code sequence generated after encoding the floor pattern in the captured image acquired in real time.

[0163] Meanwhile, previously, the code sequence generation unit (A500) was exemplified as generating the floor pattern code sequence in which four driving identification codes are combined, but the number is not limited to four.

[0164] To explain this in more detail, the code sequence generation unit (A500) can change the number of driving identification codes included in the floor pattern code sequence according to at least one of the types and number of identification codes included in the code block map (M).

[0165] For example, the code sequence generation unit (A500) can change and set the number of driving identification codes included in the optimized floor pattern code sequence depending on whether there are many types of identification codes formed in the horizontal and vertical directions of the code block map (M) (e.g., types of the minimum number of combinations that result in a unique case in a code sequence formed by combining 1, 2, 3, 4, a, b, c, d, etc. in the horizontal and vertical directions) and whether there are many numbers (e.g., the total number of rows and columns forming the code block map (M)).

[0166] Meanwhile, the above calculation unit (A600) can accurately calculate the driving direction of the robot (A) (the degree of tilt of the driving relative to the tile) through the tilt of the boundary line of the tile in the driving image (F), and furthermore, it is obvious that it can also calculate the driving distance, speed, etc. through the number of tiles, the size of the tiles, etc.

[0168] Meanwhile, the present invention may further include a method for recognizing the position and direction of a robot (A) based on a floor pattern code sequence.

[0169] For example, the above method relates to a method for recognizing the position and direction of a robot (A) using a floor pattern captured by a camera (C) mounted on a robot (A) traveling in a predetermined space, and may be a method implemented by a floor pattern code sequence-based robot (A) position and direction recognition system described above.

[0170] For example, as illustrated in FIG. 16, the method relates to a method for recognizing the position and direction of a robot (A) by using a floor pattern captured through a camera (C) mounted on the robot (A) traveling in a predetermined space, wherein the map acquisition unit (A200) extracts the unit pattern from the floor pattern of the predetermined space and obtains a code block map (M) generated by assigning a predetermined identification code to the unit pattern (S100); the driving image acquisition unit (A300) obtains a driving image (F) of the floor pattern captured by the camera (C) (S200); the driving unit pattern extraction unit (A400) extracts a driving unit pattern from the floor pattern included in the driving image (F) (S300); the code sequence generation unit (A500) identifies a predetermined driving identification code corresponding to the driving unit pattern and generates a floor pattern code sequence (S400); and the calculation unit (A600) [relates] the floor pattern code sequence and the code block map (M). It may include a step (S500) of calculating the position and direction of the robot (A) by comparing identification codes.

[0171] Additionally, in the step (S500) of calculating the position and direction of the robot (A), if the floor pattern code sequence and the identification code of the code block map (M) do not match, the driving identification code is corrected by a predetermined rotation value to generate a corrected floor pattern code sequence, and the position and direction of the robot (A) can be calculated by comparing the corrected floor pattern code sequence with the identification code of the code block map (M).

[0172] Additionally, in the step (S500) of calculating the position and direction of the robot (A), if the identification code of the floor pattern code sequence and the identification code of the code block map (M) do not match, the identification code of the code block map (M) is corrected by a predetermined rotation value to generate a rotation code block map (M), and the position and direction of the robot (A) can be calculated by comparing the identification code of the floor pattern code sequence and the rotation code block map (M).

[0173] Additionally, the step (S400) of generating the floor pattern code sequence may change the number of driving identification codes included in the floor pattern code sequence according to at least one of the type and number of identification codes included in the code block map (M).

[0174] In addition, the present invention may further include a computer-readable recording medium having a program recorded thereon for executing the floor pattern code sequence-based robot (A) position and direction recognition method on a computer.

[0176] Although the structure and features of the present invention have been described above based on embodiments according to the present invention, the present invention is not limited thereto, and it is obvious to those skilled in the art that various changes or modifications can be made within the spirit and scope of the present invention; therefore, it is noted that such changes or modifications fall within the scope of the appended claims. Explanation of the symbols

[0178] A100: Control unit A200: Map Acquisition Unit A300: Driving Video Acquisition Unit A400: Driving unit pattern extraction unit A500: Code string generation unit A600: Output section

Claims

Claim 1 delete Claim 2 A floor pattern code sequence-based robot position and direction recognition system that recognizes the position and direction of a robot using a floor pattern captured by a camera mounted on a robot traveling in a predetermined space, comprising: a map acquisition unit that obtains a code block map generated by extracting a unit pattern from a floor pattern of a predetermined space and assigning a predetermined identification code to the unit pattern; a driving image acquisition unit that obtains a driving image of a floor pattern captured by the camera; a driving unit pattern extraction unit that extracts a driving unit pattern from a floor pattern included in the driving image; and a code sequence generation unit that generates a floor pattern code sequence by identifying a predetermined driving identification code corresponding to the driving unit pattern. A floor pattern code sequence-based robot position and direction recognition system comprising: a calculation unit that calculates the position and direction of the robot by comparing the floor pattern code sequence and the identification code of the code block map; wherein, if the floor pattern code sequence and the identification code of the code block map do not match, the calculation unit generates a corrected floor pattern code sequence by correcting the driving identification code with a predetermined rotation value, and calculates the position and direction of the robot by comparing the corrected floor pattern code sequence and the identification code of the code block map. Claim 3 A floor pattern code sequence-based robot position and direction recognition system that recognizes the position and direction of a robot using a floor pattern captured by a camera mounted on a robot traveling in a predetermined space, comprising: a map acquisition unit that obtains a code block map generated by extracting a unit pattern from a floor pattern of a predetermined space and assigning a predetermined identification code to the unit pattern; a driving image acquisition unit that obtains a driving image of a floor pattern captured by the camera; a driving unit pattern extraction unit that extracts a driving unit pattern from a floor pattern included in the driving image; and a code sequence generation unit that generates a floor pattern code sequence by identifying a predetermined driving identification code corresponding to the driving unit pattern. A floor pattern code sequence-based robot position and direction recognition system comprising: a calculation unit that calculates the position and direction of the robot by comparing the floor pattern code sequence and the identification code of the code block map; wherein, if the floor pattern code sequence and the identification code of the code block map do not match, the calculation unit generates a rotation code block map by correcting the identification code of the code block map with a predetermined rotation value, and calculates the position and direction of the robot by comparing the floor pattern code sequence and the identification code of the rotation code block map. Claim 4 A floor pattern code sequence-based robot position and direction recognition system that recognizes the position and direction of a robot using a floor pattern captured by a camera mounted on a robot traveling in a predetermined space, comprising: a map acquisition unit that obtains a code block map generated by extracting a unit pattern from a floor pattern of a predetermined space and assigning a predetermined identification code to the unit pattern; a driving image acquisition unit that obtains a driving image of a floor pattern captured by the camera; a driving unit pattern extraction unit that extracts a driving unit pattern from a floor pattern included in the driving image; a code sequence generation unit that generates a floor pattern code sequence by identifying a predetermined driving identification code corresponding to the driving unit pattern; and a calculation unit that calculates the position and direction of the robot by comparing the floor pattern code sequence with the identification code of the code block map; wherein the code sequence generation unit changes the number of driving identification codes included in the floor pattern code sequence according to at least one of the type and number of identification codes included in the code block map. Claim 5 delete Claim 6 A floor pattern code sequence-based robot position and direction recognition method for recognizing the position and direction of a robot using a floor pattern captured by a camera mounted on a robot traveling in a predetermined space, comprising: a map acquisition unit extracting a unit pattern from a floor pattern of a predetermined space and acquiring a generated code block map by assigning a predetermined identification code to the unit pattern; a driving image acquisition unit acquiring a driving image of a floor pattern captured by the camera; a driving unit pattern extraction unit extracting a driving unit pattern from a floor pattern included in the driving image; and a code sequence generation unit identifying a predetermined driving identification code corresponding to the driving unit pattern and generating a floor pattern code sequence. A method for recognizing robot position and direction based on a floor pattern code sequence, comprising: a step of calculating the position and direction of the robot by comparing the floor pattern code sequence with the identification code of the code block map; wherein the step of calculating the position and direction of the robot comprises, if the floor pattern code sequence and the identification code of the code block map do not match, correcting the driving identification code with a predetermined rotation value to generate a corrected floor pattern code sequence, and calculating the position and direction of the robot by comparing the corrected floor pattern code sequence with the identification code of the code block map. Claim 7 A floor pattern code sequence-based robot position and direction recognition method for recognizing the position and direction of a robot using a floor pattern captured by a camera mounted on a robot traveling in a predetermined space, comprising: a map acquisition unit extracting a unit pattern from a floor pattern of a predetermined space and acquiring a generated code block map by assigning a predetermined identification code to the unit pattern; a driving image acquisition unit acquiring a driving image of a floor pattern captured by the camera; a driving unit pattern extraction unit extracting a driving unit pattern from a floor pattern included in the driving image; and a code sequence generation unit identifying a predetermined driving identification code corresponding to the driving unit pattern and generating a floor pattern code sequence. A floor pattern code sequence-based robot position and direction recognition method comprising: a step of calculating the position and direction of the robot by comparing the floor pattern code sequence and the identification code of the code block map; wherein the step of calculating the position and direction of the robot comprises, if the floor pattern code sequence and the identification code of the code block map do not match, correcting the identification code of the code block map with a predetermined rotation value to generate a rotation code block map, and calculating the position and direction of the robot by comparing the floor pattern code sequence and the identification code of the rotation code block map. Claim 8 A floor pattern code sequence-based robot position and direction recognition method that recognizes the position and direction of a robot using a floor pattern captured by a camera mounted on a robot traveling in a predetermined space, comprising: a map acquisition unit that extracts a unit pattern from a floor pattern of a predetermined space and obtains a code block map generated by assigning a predetermined identification code to the unit pattern; a driving image acquisition unit that obtains a driving image of a floor pattern captured by the camera; a driving unit pattern extraction unit that extracts a driving unit pattern from a floor pattern included in the driving image; a code sequence generation unit that generates a floor pattern code sequence by identifying a predetermined driving identification code corresponding to the driving unit pattern; and a calculation unit that calculates the position and direction of the robot by comparing the floor pattern code sequence with the identification code of the code block map; wherein the step of generating the floor pattern code sequence involves changing the number of driving identification codes included in the floor pattern code sequence according to at least one of the type and number of identification codes included in the code block map. Claim 9 A computer-readable recording medium having a program recorded thereon for executing the method described in any one of paragraphs 6 through 8 on a computer.

Citation Information

Patent Citations

  • Apparatus and method for environment recognition of indoor moving robot in a elevator and recording medium storing program for executing the same, and computer program stored in recording medium for executing the same

    KR102194426B1