WO2023146118A1 - Hci를 통해 태그를 획득하고 물체에 대한 명령을 수행하는 방법 및 전자 장치 - Google Patents
Hci를 통해 태그를 획득하고 물체에 대한 명령을 수행하는 방법 및 전자 장치 Download PDFInfo
- Publication number
- WO2023146118A1 WO2023146118A1 PCT/KR2022/019693 KR2022019693W WO2023146118A1 WO 2023146118 A1 WO2023146118 A1 WO 2023146118A1 KR 2022019693 W KR2022019693 W KR 2022019693W WO 2023146118 A1 WO2023146118 A1 WO 2023146118A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- target object
- tag
- visual
- user
- electronic device
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/20—Movements or behaviour, e.g. gesture recognition
Definitions
- the present disclosure relates to a method for performing an interaction with a user by an electronic device through human-computer interaction (HCI) and an application thereof. Specifically, the present disclosure relates to a method and apparatus for performing an operation corresponding to a signal input from a user using a tag and a visual descriptor of an object acquired through HCI.
- HCI human-computer interaction
- HCI human-computer interaction
- An image-based HCI method consists of obtaining an image through a camera, receiving and processing a user's command as an input signal. This HCI method can interact with a computer by recognizing a user's gesture or using a smart tag for an object.
- Embodiments of the present disclosure are intended to solve the above-mentioned problems and / or disadvantages and provide the following advantages. Accordingly, the present disclosure provides a method and apparatus for detecting motion of a user manipulating an object using a video camera device and executing a command for an object using a tag and a visual descriptor of the object acquired through HCI. The purpose.
- object information may be obtained from a motion of a user manipulating the target object, and an object tag may be obtained for an object within the same category through a user input signal, and an operation corresponding to a command may be performed.
- a visual scripter for a target object and a method and electronic device for obtaining a tag of the target object may be provided.
- a method of performing an operation through interaction with a user by an electronic device may acquire a plurality of images including a target object.
- a method of performing an operation may detect a user's motion of manipulating a target object based on a plurality of images.
- a method of performing an operation may obtain a visual descriptor of a target object including visual information for identifying the target object.
- a method of performing an operation may acquire a tag of a target object by receiving information related to the target object by marking the target object, and in response to receiving an input signal corresponding to the tag, based on a visual descriptor. and performing an operation corresponding to the input signal with respect to the target object.
- the visual descriptor may be acquired in response to a user's motion being detected within a field of view where a plurality of images are acquired.
- the tag of the target object may include information on at least one of a user of the target object, a purpose of the target object, a frequency of use of the target object, an appearance of the target object, or a user's preference for the target object.
- the visual descriptor may further include grasping information for providing movement of the target object.
- performing the input signal may include identifying a target object based on visual information included in the visual descriptor, and providing movement of the target object based on gripping information.
- the visual descriptor is a 3D model of the target object, a point cloud of all or part of the target object, a texture of all or part of the target object, a descriptor specific to visual characteristics of the target object, the geometry of the target object It may include information indicating at least one of a structure or an appearance of a target object.
- the electronic device may display the target object using at least one light source based on the visual descriptor.
- the electronic device may display the target object using at least one AR projection based on the visual descriptor.
- the method may include determining a position and size of an angle of view, and detecting a motion of a user manipulating a target object based on the angle of view.
- the method of storing visual descriptors and tags further includes storing the visual descriptors in a database, storing tags of objects in the database, and storing links between the visual descriptors and tags in the database. can do.
- an electronic device for interacting with a user includes a camera module; a memory in which at least one or more instructions are stored; and at least one processor that executes one or more instructions stored in a memory, wherein the processor controls a camera module to acquire a plurality of images including a target object, and controls a user's operation of the target object in the plurality of images.
- the processor controls a camera module to acquire a plurality of images including a target object, and controls a user's operation of the target object in the plurality of images.
- Obtaining a tag of the target object by receiving information related to the target object by detecting motion, obtaining a visual descriptor of the target object including visual information for identifying the target object, and marking the target object;
- an operation corresponding to the input signal may be performed based on the visual descriptor.
- the computer program product may include a computer-readable recording medium storing a program including instructions that, when executed by at least one processor, enables the at least one processor to control.
- the processor may perform an operation of acquiring a plurality of images including the target object, an operation of detecting a motion of a user manipulating the target object based on the plurality of images, and visual information for identifying the target object. obtaining a visual descriptor of a target object; An operation of obtaining a tag of a target object by receiving information related to the target object by marking the target object, and inputting a target object based on a visual descriptor in response to receiving an input signal corresponding to the tag. An operation corresponding to the signal may be performed.
- an operation corresponding to a user's command may be performed using a tag of an object and a visual descriptor instead of a unique name of the target object.
- FIG. 1 is a diagram for explaining a method of acquiring a visual descriptor of a target object and a tag of the target object according to an exemplary embodiment.
- FIG. 2 is a flowchart illustrating a method of performing an operation corresponding to an input signal based on a tag and a visual descriptor obtained from a target object according to an exemplary embodiment.
- FIG. 3 is a flowchart illustrating a method of performing an operation corresponding to an input signal based on a tag and a visual descriptor obtained from a target object according to an exemplary embodiment.
- FIG. 4 is a diagram for explaining an operation for obtaining a visual descriptor and a tag by an electronic device according to an exemplary embodiment.
- FIG. 5 is a block configuration diagram of an electronic device according to an embodiment.
- FIG. 6 is a block configuration diagram of an electronic device according to an embodiment.
- FIG. 7 is a diagram for explaining a process of detecting a motion of a user manipulating a target object and obtaining a visual descriptor of the target object by an electronic device according to an exemplary embodiment.
- FIG. 8 is a diagram for explaining a process of obtaining a visual descriptor by an electronic device according to an exemplary embodiment.
- FIG. 9 is a diagram for explaining a method of manipulating a target object by an electronic device based on gripping information according to an exemplary embodiment
- FIG. 10 is a diagram for explaining a geometric structure that is a visual descriptor of a target object according to an exemplary embodiment.
- FIG. 11 is a diagram for explaining a point cloud that is a visual descriptor of a target object according to an exemplary embodiment.
- FIG. 12 is a diagram for explaining an operation of receiving an input signal corresponding to a tag of a target object and executing a command based on a visual descriptor according to an exemplary embodiment
- FIG. 13 is a diagram for explaining a method of marking a target object according to an exemplary embodiment.
- FIG. 14 is a diagram for explaining a method of marking a target object according to an exemplary embodiment.
- 15 is a diagram for explaining utilization of a visual descriptor according to an embodiment.
- 16 is a diagram for explaining augmented reality using a visual descriptor according to an exemplary embodiment.
- 17 is a diagram for explaining augmented reality using a visual descriptor according to an exemplary embodiment.
- one component when one component is referred to as “connected” or “connected” to another component, the one component may be directly connected or directly connected to the other component, but in particular Unless otherwise described, it should be understood that they may be connected or connected via another component in the middle. In addition, it includes not only the case of being “directly connected” or “physically connected” but also the case of being “electrically connected” with another element interposed therebetween.
- the terms “transmit”, “receive” and “communicate” include both direct and indirect communication. Which part of this disclosure as a whole
- components expressed as ' ⁇ unit (unit)', 'module', etc. are two or more components combined into one component, or one component is divided into two or more for each function. may be differentiated into These functions may be implemented in hardware or software, or a combination of hardware and software.
- each of the components to be described below may additionally perform some or all of the functions of other components in addition to its own main function, and some of the main functions of each component may be different from other components. Of course, it may be performed exclusively by a component.
- 'a plurality of images' may mean a still image or a plurality of continuous still images (or frames) of a moving picture or video.
- 'visual information' may refer to a 3D model of an object, a point cloud of the whole or a part of the object, the texture of the object, the geometric structure of the object, or the appearance such as color or size.
- 'visual descriptors' include 2D scale-invariant feature transform (SIFT), 2D speeded up robust feature (SURF), and 2D-oriented fast rotational briefing (2D oriented fast and rotated brief (ORB), 3D point cloud, 3D mesh, signed distance function (SDF), feature vector, 3D primitive or 3D voxel ) can mean.
- SIFT scale-invariant feature transform
- SURF speeded up robust feature
- ORB 2D-oriented fast rotational briefing
- 3D point cloud 3D mesh
- signed distance function SDF
- feature vector 3D primitive or 3D voxel
- a 'field of view' is a range in which an object can be observed, and may mean a range in which a camera can photograph a target object.
- 'grasping information' may refer to a part of a user's body contacting an object when an object is picked up, lifted, or moved.
- a 'tag' may mean a keyword or classification assigned to an object as flexible contextual information.
- a 'point cloud' is a set of points belonging to a coordinate system
- a 3D point cloud may mean a set of points representing the surface of an object expressed in x, y, and z coordinates in a 3D coordinate system.
- FIG. 1 is a diagram for explaining a method of obtaining a visual descriptor of a target object and a tag of a target object according to an exemplary embodiment.
- a method of obtaining a visual descriptor and a tag of a target object may include an electronic device 120 .
- FIG. 1 illustrates a process of obtaining (110) a visual descriptor of a target object 130 and a tag 150 of the target object through interaction between an electronic device 120 and a user 140 according to an embodiment. are doing
- the electronic device 120 may be implemented in various forms.
- the electronic device 120 in the present disclosure includes a robot, AR glasses, MR glasses, XR glasses, digital cameras, laptop computers, tablet PCs, electronic book terminals, digital broadcasting terminals, personal digital assistants (PDAs), Assistants), portable multimedia players (PMPs), smart phones, etc., but are not limited thereto.
- the electronic device 120 described in this specification may be a wearable device worn by a user.
- Wearable devices include accessory-type devices (eg watches, rings, wrist bands, ankle bands, necklaces, glasses, contact lenses), head-mounted-devices (HMDs), and textile or clothing integrated devices (eg, electronic clothing), a body-attachable device (eg, skin pad), or a bio-implantable device (eg, implantable circuit), but is not limited thereto.
- accessory-type devices eg watches, rings, wrist bands, ankle bands, necklaces, glasses, contact lenses
- HMDs head-mounted-devices
- textile or clothing integrated devices eg, electronic clothing
- a body-attachable device eg, skin pad
- a bio-implantable device eg, implantable circuit
- the electronic device 120 may include a camera module (not shown) for obtaining a plurality of images including the target object.
- the electronic device 120 detects the motion of the target object 130 and the user 140 manipulating the target object 130 from a plurality of images obtained through the camera module, and uses a visual descriptor of the target object and an input unit (not shown) to target the target object 130.
- An object tag and an input signal may be obtained (110).
- the electronic device 120 may obtain a visual descriptor including visual information of the target object and grasping information of the target object from a user's motion of manipulating the target object.
- An example of the user motion may include, but is not limited to, an operation of picking up, holding, or moving a target object by lifting it.
- the visual descriptor of the target object may include visual information for distinguishing and sensing the target object from other objects in the image.
- a 3D model of the target object, a point cloud of all or part of the target object, a texture of the whole or part of the target object, the geometry of the target object, or the appearance of the target object, such as color, size, pattern, etc. can include
- the visual descriptor may include grasping information for performing an operation corresponding to an input signal.
- the target object's geometric structure, center of gravity, and a contact point between the target object and the user's hand may be included. An embodiment of how to obtain the visual descriptor and its specific type will be described in detail with reference to FIGS. 7-11 below.
- the tag 150 of the target object is different even if it is an object belonging to one category, when a user command is executed, the target object is compared to other objects in the same category. can be used to differentiate.
- the tag of the target object is distinguished from the name of a general object (eg, cup, watch, mouse, etc.). Examples of the tag of the target object include information about one or more of the subject using the target object, the purpose of the target object, the appearance of the target object (shape, texture, color, etc.), the user's frequency of the target object, and preferences. can be, but is not limited thereto.
- a process in which the electronic device 120 identifies a target object, obtains a visual descriptor of the target object and a tag of the target object, and performs an input signal corresponding to the tag will be described in detail with reference to FIGS. 2 and 3 .
- FIG. 2 is a flowchart illustrating a method of performing an operation corresponding to an input signal based on a tag and a visual descriptor obtained from a target object according to an exemplary embodiment.
- step S210 the electronic device 120 may acquire a plurality of images including the target object.
- the electronic device 120 may acquire a plurality of images including a target object within a predetermined field of view.
- the electronic device 120 may adjust the position and size of an angle of view (FoV) in which an image that may include a target object is included.
- the position and size of the angle of view may be adjusted based on the front portion of the electronic device 120 to which the camera module is attached.
- the size of the angle of view may be adjusted in one of horizontally, vertically, and diagonally, but is not limited thereto.
- the position of the angle of view can be changed using the center point of resizing.
- step S220 the electronic device 120 detects the user's motion of manipulating the target object from the acquired plurality of images.
- the motion of the user may include, but is not limited to, an action of grabbing, picking up, or lifting and moving the target object.
- a visual descriptor of the target object is obtained.
- the visual descriptor may mean any kind of data representing visual or spatial information of a target object.
- the visual descriptor may include visual information for distinguishing the target object from other objects included in the plurality of images, and may include grasping information for executing a command on the target object.
- the visual descriptor may include one of a 3D model of the target object, a point cloud of all or part of the target object, a texture of all or part of the target object, and a geometric structure or appearance of the target object, as shown in FIG. 7 . It is explained in detail below.
- step S240 the electronic device 120 obtains a tag of the target object by displaying the target object.
- acquiring a tag of the target object by displaying the target object informs that a visual descriptor of the target object has been obtained, displays the target object to be tagged, and displays the tag information of the target object to the user. is an operation to obtain
- marking of the target object may use at least one light source using a beam pointer.
- a method of shooting a target object using a light source or shooting a light source along an outline may be included.
- a method for visually displaying such as a bounding box, a mesh, a texturized object, or a pointer may be included.
- a method of allowing a user to recognize a target object using a projector may be included, but a method of displaying the target object is not limited thereto.
- a method of displaying the target object is not limited thereto.
- it may include a method of physically pointing at a target object using a robot arm. Specific examples and embodiments will be described in detail below in FIG. 13 .
- the tag of the target object is for executing a user's command for the target object, and may be performed through voice, text, touch, virtual or actual button manipulation, etc., but is not limited thereto.
- a tag of a target object is different from a unique name of an object, and may include a tag related to a user or a purpose of the object. For example, information on the subject using the target object, the purpose of the target object, the appearance of the target object (shape, texture, color, etc.), the user's frequency of use of the target object, and preferences may be included, but is not limited thereto. don't
- the electronic device 120 performs an operation corresponding to the input signal.
- the input signal for the target object may include, but is not limited to, moving the target object to a specific point or a user or a pinching operation.
- the electronic device 120 receives an input signal corresponding to a tag, and based on visual information included in a visual descriptor, the target object among a plurality of objects. Identify and, based on the grasping information, provide movement of the target object.
- the input signal corresponding to the tag of the target object may be made through voice, text, touch, button manipulation, etc., but is not limited thereto.
- FIG. 3 is a flowchart illustrating a method of performing an operation corresponding to an input signal based on a tag and a visual descriptor obtained from a target object according to an exemplary embodiment.
- FIG. 3 Detailed descriptions of steps overlapping those of FIG. 2 are omitted for brevity.
- step S310 the electronic device 120 acquires a plurality of images including the target object.
- step S320 if the user's motion for manipulating the target object is detected within the field of view (FoV), the next operation is performed.
- a visual descriptor of the target object is acquired.
- the visual descriptor for the target object may include visual information for distinguishing the target object from other objects included in a plurality of images, and may include grasping information for moving the target object.
- grasping information for moving the target object there is.
- a 3D model of the target object a point cloud of all or part of the target object, the texture of all or part of the target object, the geometry, appearance, center of gravity of the target object, or the contact of the user's body with the target object. It may include one of information about a point, which will be described in detail below in FIG. 7 .
- step S340 it is determined whether the visual descriptor for the target object is stored in the electronic device 120.
- visual descriptors for target objects may be stored in a database.
- step S350 the electronic device 120 marks the target object to the user.
- displaying a target object to a user informs that a visual descriptor of the target object has been acquired, displays a target object to be tagged to the user, and receives tag information about the target object from the user. step for
- the electronic device 120 obtains a tag of the displayed target object.
- the tag of the target object is to execute a user's command thereafter, which may be input through voice, text, touch, button manipulation, and the like.
- a tag of a target object is distinguished from a unique name of an object, and may include a tag related to a user or a purpose of the object.
- the tag of the target object may include information about the user of the target object, the purpose of the target object, the appearance of the target object (shape, texture, color, etc.), the user's frequency of use of the target object, and preferences. Yes, but not limited thereto.
- step S370 when the tag of the target object is obtained, the electronic device 120 stores the tag of the target object together with the visual descriptor, and uses it for the operation of the electronic device 120 thereafter.
- the method of storing the tag of the target object together with the visual descriptor first stores the visual descriptor of the target object in a database, and when the tag of the target object is obtained, stores the tag of the target object in the database. .
- the link between the visual descriptor of the target object and the tag of the target object is stored in the database. An operation corresponding to an input signal to the target object may be performed using the stored link.
- the step of acquiring a plurality of images using the electronic device 120 is performed.
- FIG. 4 is a diagram for explaining an operation for obtaining a visual descriptor and a tag by an electronic device according to an exemplary embodiment.
- a plurality of images may be acquired using the electronic device 120 (410).
- a plurality of images may be obtained through an RGB or RGBD camera module.
- the electronic device 120 detects the motion of the user manipulating the target object (420), obtains a visual descriptor for the target object (430), or searches for a stored visual descriptor (440).
- the user's motion for manipulating the target object may include an action of picking up, holding, or moving the target object.
- the visual descriptor for the target object may include visual information for identifying the target object and grasping information for executing a command on the target object.
- the visual descriptor of the target object may be stored in a database.
- the electronic device 120 displays the target object to the user based on the visual descriptor database 450 (460).
- displaying the target object is an operation for notifying that a visual descriptor of the target object has been acquired, displaying the target object to a user, and acquiring tag information of the target object.
- marking of the target object may use at least one light source using a beam pointer.
- a method of shooting a target object using a beam pointer or shooting a light source along an outline of the target object may be included.
- a method for visually displaying such as a bounding box, a mesh, a texturized object, or a pointer may be included.
- a method of allowing a user to recognize a target object using a projector may be included, but a method of displaying the target object is not limited thereto.
- a method of displaying the target object is not limited thereto.
- it may include a method of physically pointing at a target object using a robot arm. Specific examples and embodiments are examined in detail below in FIG. 13 .
- the electronic device 120 may obtain a tag of an object through human-computer interaction.
- the tag of the target object is to execute a user's command thereafter, and may be performed through voice, text, touch, button manipulation, etc., but is not limited thereto.
- a tag of a target object is distinguished from a unique name of an object, and may include a tag related to a user or a purpose of the object. For example, information on the subject using the target object, the purpose of the target object, the appearance (shape, texture, color, etc.) of the target object, the user's frequency of use of the target object, and preferences may be included, but is not limited thereto. does not
- the electronic device 120 may perform various operations through interaction with the user based on the visual descriptor and the tag of the object (470).
- the electronic device 120 may receive an input signal corresponding to a tag of a target object and perform the input signal based on a visual descriptor.
- performing the input signal may include moving the target object to a designated location, bringing the target object to the user, or picking up the target object.
- FIG. 5 is a configuration diagram illustrating an electronic device according to an exemplary embodiment.
- an operation of obtaining a visual descriptor and a tag of a target object and executing a command may be performed by the electronic device 120 .
- the electronic device 120 may include a camera module 510, a memory 520, and a processor 530. However, not all illustrated components are essential components.
- the electronic device 120 may be implemented with more components than those illustrated, or the electronic device 120 may be implemented with fewer components.
- the camera module 510 may acquire a plurality of images including the target object and detect the target object and a motion of a user manipulating the target object.
- the user's motion detected by the camera module may be an action of picking up, grabbing, or moving an object, and may include an action of manipulating an object using a hand.
- the camera module 510 may be implemented with a plurality of cameras.
- the camera module 510 adjusts the length of at least one of a horizontal axis, a vertical axis, or a diagonal direction based on the center of the front portion of the electronic device 120.
- the size of the angle of view (FoV) for obtaining a plurality of images may be determined, and the position of the angle of view (FoV) may be determined based on the central point of size adjustment.
- the memory 520 may store program commands or codes executed by the processor 530, and input/output data (eg, a plurality of images, visual descriptors, object tags, and input signals corresponding to the tags). can also be saved.
- input/output data eg, a plurality of images, visual descriptors, object tags, and input signals corresponding to the tags.
- memory 520 may be implemented as a plurality of memories.
- the memory 520 may be a flash memory type, a hard disk type, a multimedia card micro type, a card type memory (eg SD or XD memory, etc.), RAM (RAM, Random Access Memory) SRAM (Static Random Access Memory), ROM (Read-Only Memory), EEPROM (Electrically Erasable Programmable Read-Only Memory), PROM (Programmable Read-Only Memory), magnetic memory, magnetic disk , an optical disk, and at least one type of storage medium.
- RAM Random Access Memory
- SRAM Static Random Access Memory
- ROM Read-Only Memory
- EEPROM Electrical Erasable Programmable Read-Only Memory
- PROM Programmable Read-Only Memory
- magnetic memory magnetic disk , an optical disk, and at least one type of storage medium.
- the processor 530 typically controls the overall operation of the electronic device 120 .
- the processor 530 may determine an angle of view (FoV) of the camera module 510 by executing instructions stored in the memory 520 and may detect motion of a user manipulating a target object. there is.
- the processor 530 may acquire and store a visual descriptor of the target object and a tag of the target object, receive an input signal corresponding to the tag, and perform an operation corresponding thereto.
- processor 530 may be implemented with a plurality of processors.
- FIG. 6 is a configuration diagram illustrating an electronic device according to an exemplary embodiment.
- the electronic device 120 includes an output unit 640, an input unit 650, and a driving unit 660 in addition to the components of the electronic device 120 shown in FIG. ) may be included.
- the camera module 610, memory 620, and processor 630 may perform operations corresponding to the camera module 510, memory 520, and processor 530 of FIG. omit explanation.
- the output unit 640 performs an operation for marking a target object to the user.
- the electronic device 120 may display a target object using at least one light source using a beam pointer. A method of shooting a target object using a beam pointer or shooting a light source along the outline of the target object may be included.
- the electronic device 120 creates a bounding box around an object, displays a target object through a mesh, or The target object may be displayed to the user through a visual effect, such as displaying a different texture on the target object.
- the method of displaying the target object to the user through the output unit 640 by the electronic device 120 is not limited thereto, and may include various methods of attracting the user's attention and enabling recognition of the object in the 3D space.
- the electronic device 120 is a robot
- a target object may be physically displayed using the robot's hand. Specific examples and embodiments are examined in detail below in FIG. 13 .
- the output unit 640 may include, but is not limited to, a beam pointer, an AR, XR, MR glass display, an AR projector, a robot arm, and the like, corresponding to a method of displaying a target object.
- the input unit 650 performs an operation of receiving information about a target object from a user or receiving an input signal corresponding to a tag of a target object in order to obtain a tag of the target object.
- the user's input may include voice input, text input, touch input, input through a real or virtual button, etc., but is not limited thereto.
- the input unit 650 may include, but is not limited to, a microphone, a keyboard, a touch screen, and buttons in response to a user's input method.
- the driver 660 When the electronic device 120 receives an input signal corresponding to an object tag through the input unit 650, the driver 660 performs an operation corresponding to the input signal.
- the driving unit 660 may use electric power, magnetic force, air pressure, and the like, but is not limited thereto, and may perform linear motion and rotational motion.
- the electronic device 120 may control the driving unit 660 to move through a wheel or the like, and pick up or lift the target object through linear motion and rotational motion to move it. there is.
- FIG. 7 is a diagram for describing a process in which the electronic device 120 detects a motion of a user manipulating a target object and obtains a visual descriptor of the target object, according to an exemplary embodiment.
- the electronic device 120 may detect a motion of a user manipulating a target object within an angle of view (FoV).
- a user's motion for manipulating the target object may have various embodiments depending on the shape or use of the target object.
- a user's motion for manipulating an object may include the following examples, but is not limited thereto.
- the user manipulates the object by holding the part of the container containing the contents, not the entrance through which the contents of the object come out.
- the embodiment 720 supporting the rear part of the object and performing the function of the object through the front part eg, mobile phone, tablet PC, etc.
- it is generally operated with a part of the user's body in contact with the rear part and the side part.
- a part of the user's body may come into contact with the outer surface of the object rather than the part containing the contents and be manipulated.
- the object itself is thin or the part in contact with the user is thin (eg, pencil, straw, hose, etc.)
- the ratio of the area of the object to the part in contact with the user is large, and the contact between the target object and the user Contact surfaces may overlap.
- the user's body may contact the entire outer surface of the object to manipulate the object.
- the electronic device 120 may detect (760) a motion of a user manipulating the target object and obtain (770) a visual descriptor of the target object.
- a visual descriptor of an object may be a 3D model, and may be represented as a target object and a body part of a user manipulating the target object. For example, when a motion of a user manipulating a cylindrical object is detected (760), the electronic device 120 acquires a 3D model of the cylindrical shape of the object and the user's hand manipulating the object from the image. can (770).
- the electronic device 120 may separate and recognize the shape of the user's hand and the external shape of the target object from the acquired 3D model (780), and determine the geometric structure of the object and the point where the user's hand contacts to manipulate the object ( point) can be obtained (790).
- FIG. 8 is a diagram for explaining a process of acquiring a visual descriptor of a target object by the electronic device 120 according to an exemplary embodiment through specific embodiments.
- the visual descriptor may include a 3D model of the target object, a point cloud of the target object, a geometric structure of the target object, a point at which a part of the user's body contacts the target object, and the like. there is.
- the electronic device 120 may obtain a visual descriptor of the target object.
- the electronic device 120 detects the shape characteristics of the object through the RGB stream from the plurality of acquired images, and the electronic device 120 through the depth stream using the time of flight. ) and an image obtained by analyzing the distance between the target object (810). For example, when detecting the user's hand manipulating the cup, the electronic device 120 finds the shape characteristics of the target object, the cup, and the user's hand manipulating the cup through the RGB stream, and through the depth stream. A distance from the electronic device 120 may be analyzed.
- the electronic device 120 may separate the background, the target object, and the body of the user manipulating the target object from the analyzed image through a segmentation stream (820). In an embodiment, the electronic device 120 may obtain a descriptor of a target object from a plurality of separated images (830). In one embodiment, the descriptor of the target object is a previous stage of the visual descriptor and may include a dynamic point cloud. For example, the electronic device 120 may separate the target object, the cup, the user's hand, and the background image after analyzing the RGB stream and the depth stream of the user's hand manipulating the cup. there is.
- the visual descriptor of the target object means a state in which several motions of a user manipulating the target object are captured from a plurality of images and downsampled to the descriptor through an RGB stream and a separate stream.
- down-sampling of the descriptor of the target object may include generating a dynamic sparse point cloud through down-sampling the point cloud.
- the electronic device 120 may acquire dynamic sparse point cloud information and grip information of the target object by down-sampling the descriptor of the object (840).
- the point cloud of the target object is expressed through points through a 3D scanner in a three-dimensional coordinate system.
- the electronic device 120 may perform down-sampling on an object descriptor of a cup as a target object. Through down-sampling, it is possible to obtain a visual descriptor including dynamic sparse point cloud information and gripping information of the cup.
- a point cloud adjusted in the forward direction using an object and gripping information may be obtained through rotation in the x, y, and z-axis directions from the visual descriptor obtained through downsampling (850).
- the geometric structure of the object and gripping information for manipulating the object may be obtained from the obtained information (860).
- visual descriptors including a cylinder, a center of gravity, and a point of a hand contacting the cup may be obtained.
- FIG. 9 is a diagram for explaining a method of manipulating a target object by the electronic device 120 based on a visual descriptor according to an exemplary embodiment.
- the electronic device 120 may perform an operation 920 of grabbing a target object.
- the visual descriptor may include visual information for identifying the target object and grasping information for executing a command corresponding to the target object.
- the gripping information of the target object may include, for example, a geometric structure of the target object, a center of gravity, a contact point between the target object and the user's hand, etc., but is not limited thereto.
- the grasping information on the target object may include a part 910 that the user's hand contacts, and based on the grasping information, the electronic device 120 performs an operation to lift or pick up the target object. can be performed (920).
- a method of manipulating the target object by the electronic device 120 may have various embodiments depending on the shape of the electronic device 120 or the shape of the target object.
- an embodiment 930 in which the contact portion between the electronic device 120 and the object has two points and the grip portion does not have joints and operates through left and right pressure.
- an embodiment 940 in which the contact portion between the electronic device and the object has three points and joints are present in the gripping portion to manipulate the object.
- an embodiment 950 in which a part executing a command in an electronic device has a shape similar to a shape of a human hand may exist.
- the target object when the center of gravity of the target object is located in the center (960), when the center of gravity is tilted in one direction due to a handle or the like attached to the target object (970), the target object There may be a case 980 where it is appropriate to use the edge for manipulation, but is not limited thereto.
- the target object's visual descriptor includes the target object's geometry.
- a degree of similarity between the actual labeling 1010 and the predicted labeling 1030 may be ascertained.
- the actual labeling 1010 of the target object may be represented as an operating part (A), a gripping part (B), a supporting part or a charging part (C).
- the geometric structure 1020 according to labeling may be separated from the image and obtained.
- the predicted labeling 1030 of the target object may be represented by the operation unit D and the gripping unit E, and the geometric structure 1040 according to the predicted labeling may be separated and obtained.
- a similarity metric between the geometric structure 1020 based on actual labeling and the geometric structure 1040 based on predicted labeling may be obtained.
- Vertex distance shows the relationship between centers of mass of geometric primitives. represents the degree of similarity between the features of the geometric prototype, is the balancing constant.
- Equation (1) a vertex distance to each vertex and similarity between features based on the center of mass of the actual labeling 1010 and the predicted labeling 1030 may be obtained, and the geometric structure of the target object may be stored in a database. .
- FIG. 11 is a diagram for explaining a point cloud that is a visual descriptor of a target object according to an exemplary embodiment.
- the visual descriptor of the target object may include a point cloud of the target object.
- a similarity between a template point cloud 1110 and a registered point cloud 1120 may be obtained.
- ErrT is the normalized translation error, Means the distance between the farthest points among vertices of the target object.
- a coordinate axis 1130 is created by combining the coordinate axes on which the sample point cloud 1110 and the obtained point cloud 1120 are drawn.
- the center of the point cloud coordinates may be adjusted by the distance 1140 between the centers of the axes to obtain a graph 1150 having the same center. Find ErrR from the concentric graph 1150.
- ErrR is the normalized rotation error
- the angle difference for each of the x, y, and z axes can be obtained using
- a point cloud of a target object may be stored in a database using the similarity between the sample point cloud 1010 and the acquired point cloud 1120 through Equation (2) using ErrR and ErrT.
- FIG. 12 is a diagram for explaining an operation of receiving an input signal corresponding to a tag of a target object and executing a command based on a visual descriptor according to an exemplary embodiment
- the electronic device 120 may obtain a tag of the target object 1260 from the user 1250 .
- the tag of the target object is information about one or more of a subject using the target object, a purpose of the target object, an appearance (shape, texture, color, etc.) of the target object, a user's frequency of the target object, and a preference. Information may be included, but is not limited thereto.
- the electronic device 120 may store the tag of the target object and the visual descriptor of the target object in a database (1220). In one embodiment, the electronic device 120 stores the visual descriptor of the target object and the tag of the target object in a database. Thereafter, the electronic device 120 may store a link between the visual descriptor of the target object and the tag of the target object in a database and use it to perform an operation on an input signal corresponding to the tag of the target object.
- the electronic device 120 may receive 1230 an input signal corresponding to a tag of a target object from the user 1250 .
- an input signal corresponding to a tag of a target object may include, but is not limited to, an operation of picking up, holding, or moving the target object.
- the input signal corresponding to the tag of the target object may be made through voice, text, touch, button manipulation, etc., but is not limited thereto.
- the electronic device 120 may receive an input signal corresponding to a tag of a target object through an input unit (eg, a microphone, a touch screen, a button, etc.).
- the electronic device 120 may perform an operation corresponding to the input signal with respect to the target object (1240).
- the operation corresponding to the input signal may include an operation of picking up the target object, holding it, or moving it to a specific point or moving it to the user.
- a method of displaying a target object is a method of visually displaying a target object, such as a bounding box, a mesh, a texturized object, or a pointer when a user uses AR glass, XR glass, or MR glass. It may include a way to display it.
- the electronic device 120 displays a target object to receive information related to the target object and obtain a tag of the target object by displaying the target object.
- the geometric structure of may be displayed on the display (1320).
- the electronic device 120 may display holding information in addition to the geometric structure of the target object based on the visual descriptor 1330 including holding information in addition to the geometric structure of the target object (1340). ).
- the display of the geometry or holding information of the target object may be adjusted according to the movement of the target object.
- FIG. 14 is a diagram for explaining a method of marking a target object according to an exemplary embodiment.
- the electronic device 120 determines a part of the target object that is in contact with a user and a part that does not contact, or an operation of the target object, based on a visual descriptor.
- a part and a non-actuating part may be distinguished and displayed in different colors.
- the geometric structure included in the visual descriptor may include a geometric circular shape (eg, a cylinder, a rectangular hexagon, a sphere, a cone, etc.).
- a method 1510 of displaying a target object using a conventional bounding box is implemented in the form of a rectangular box enclosing the entire target object.
- the method 1520 of displaying a target object through a bounding box using a visual descriptor of the target object may consider the geometric structure of the target object.
- the target object display method 1520 according to an embodiment of the present invention is based on a visual descriptor, can only be accurately displayed.
- the appearance of the target object is a combination of a cylinder and a sphere
- a rectangular bounding box enclosing both the cylinder and the sphere by identifying the target object displayed using
- the shapes of the cylinder 1530 and the sphere 1540 are accurately displayed based on the visual descriptor including the geometric structure of the target object, and other parts other than the target object are bounding boxes. box) may not be included.
- a target object when the appearance of a target object is identified based on a visual descriptor and the target object is utilized in a virtual space through AR, XR, or MR, accurate graphic synthesis or sophisticated manipulation of the target object is possible.
- 16 is a diagram for explaining augmented reality using a visual descriptor according to an exemplary embodiment.
- augmented reality when a user wears AR, MR, or XR glasses, augmented reality may be implemented based on a visual descriptor of a target object.
- a visual descriptor of the target object when a visual descriptor of the target object is acquired, an additional graphic work may be performed on the target object through execution of an application or command (operation 1610).
- augmented reality after obtaining a visual descriptor for a toy, augmented reality may be implemented. Based on the visual descriptor that accurately includes the appearance information of the toy, it is possible to synthesize a rain cloud on top of the toy and an arrow on the side of the toy.
- 17 is a diagram for explaining augmented reality using a visual descriptor according to an exemplary embodiment.
- a real object when information on a target object is obtained based on a visual descriptor of the target object (1710), a real object may be added to virtual reality (AR) (1720).
- AR virtual reality
- MR may be implemented through interaction, such as adding a real object to virtual reality and manipulating the object.
- a visual descriptor including the geometrical prototype (cylindrical and spherical) of a vase as a target object and the external appearance (color, pattern, texture) of the target object may be obtained. Based on the acquired visual descriptor, the vase can be synthesized and manipulated at a desired location in augmented reality.
- the above-described embodiments of the present disclosure may be written as programs or instructions that can be executed on a computer, and the written programs or instructions may be stored in a storage medium.
- the method according to the various disclosed embodiments may be included and provided in a computer program product.
- Computer program products may be traded between sellers and buyers as commodities.
- a computer program product is distributed in the form of a device-readable storage medium (e.g. compact disc read only memory (CD-ROM)), or through an application store (e.g. Play StoreTM) or on two user devices (e.g. It can be distributed (eg downloaded or uploaded) online, directly between smartphones.
- a part of a computer program product eg, a downloadable app
- a device-readable storage medium such as a memory of a manufacturer's server, an application store server, or a relay server. It can be temporarily stored or created temporarily.
- the device-readable storage medium may be provided in the form of a non-transitory storage medium.
- 'non-temporary storage medium' only means that it is a tangible device and does not contain signals (e.g., electromagnetic waves), and this term refers to the case where data is stored semi-permanently in the storage medium and temporary It does not discriminate if it is saved as .
- a 'non-temporary storage medium' may include a buffer in which data is temporarily stored.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Computer Graphics (AREA)
- Health & Medical Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Health & Medical Sciences (AREA)
- Psychiatry (AREA)
- Social Psychology (AREA)
- Multimedia (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
본 개시의 일 실시예에 따르면, HCI를 통해 획득한 타겟 물체의 시각적 디스크립터와 태그를 이용하여 타겟 물체에 대한 사용자의 명령을 수행하는 방법이 제공된다. 방법은, 타겟 물체가 포함된 복수개의 이미지를 획득하고, 복수개의 이미지에 기초하여 타겟 물체를 조작하는 사용자의 모션을 감지하고, 타겟 물체를 식별하기 위한 시각 정보를 포함하는 타겟 물체의 시각적 디스크립터를 획득하고, 타겟 물체를 표시(mark)함으로써, 타겟 물체와 관련된 정보를 입력 받아 타겟 물체의 태그를 획득하고, 태그에 대응하는 입력 신호의 수신에 대한 응답으로, 시각적 디스크립터에 기초하여, 타겟 물체에 대해 입력 신호에 대응하는 동작을 수행하할 수 있다.
Description
본 개시는 사람과 컴퓨터 간 상호작용(HCI)을 통해 전자 장치가 사용자와의 상호작용을 하는 수행하는 방법 및 그 응용에 관련된 것이다. 구체적으로, 본 개시는 HCI를 통해 획득한 물체의 시각적 디스크립터와 태그를 이용하여 사용자로부터 입력 받은 신호에 대응하는 동작을 수행하는 방법 및 장치에 관한 것이다.
컴퓨팅 기술 아래에서, 스마트폰, 태블릿, 로봇, IoT를 기반으로 한 가전제품, 모바일 장비, 웨어러블 디바이스, AR/MR을 이용하는 디바이스 등의 등장으로 사람과 컴퓨터 간 상호작용(HCI) 방법은 상용화 되었다.
일상 속에서 HCI를 이용해 사용자에게 보조 역할을 수행하는 전자기기 및 서비스에 대한 수요의 증가에 따라, 다양한 형태의 로봇과 서비스가 제공되고 있다. 사용자에게 또는 특정 지점으로 물체를 이동시키거나, 사용자의 질문에 응답하여 물체에 대한 정보를 제공해주는 등의 서비스가 존재한다. 영상 기반의 HCI 방법은, 카메라를 통해 영상을 획득하고, 사용자의 명령을 입력 신호로 받고 처리하는 과정으로 구성된다. 이러한 HCI 방법은 사용자의 제스처를 인식하거나, 물체에 대한 스마트 태그(smart tag) 등을 이용하여 컴퓨터와 인터랙션(interaction) 할 수 있다.
한편, 현재 대부분의 HCI 방법을 이용한 서비스에서는, 물체에 대한 정보를 획득하기 위해 고른 배경 앞에서 물체를 인식시키거나, 정보를 수동으로 입력하여, 등록된 정보가 존재하는 물체에 대해서만 서비스를 제공할 수 있다는 한계가 존재한다. 또한, 동일 카테고리 내의 물체에 대해서는 구체적인 분류가 어렵다는 한계가 존재한다.
위의 내용은 본 개시의 이해를 돕기 위한 배경 정보로 제공되는 것이다. 본 개시와 관련하여 상기 내용 중 어느 것이 선행기술로 적용될 수 있는지에 대한 결정 또는 주장은 개시되지 않았다.
본 개시의 실시예들은 상술한 문제점 및/또는 단점을 해결하고 후술되는 장점들을 제공하기 위함이다. 따라서, 본 개시는 영상 카메라 장치를 이용하여 물체를 조작하는 사용자의 모션을 감지하고, HCI를 통해 획득한 물체의 시각적 디스크립터와 태그를 이용하여 물체에 대한 명령을 수행하는 방법 및 장치를 제공하는 것을 목적으로 한다.
구체적으로, 타겟 물체를 조작하는 사용자의 모션으로부터 물체에 대한 정보를 획득하고, 동일 카테고리 내의 물체에 대해서는 사용자의 입력 신호를 통해 물체의 태그를 획득하여 명령에 대응하는 동작을 수행할 수 있다.
일 실시예서, 타겟 물체에 대한 시각적 스크립터와 타겟 물체의 태그를 획득하는 방법 및 전자장치가 제공될 수 있다.
추가적인 실시예들은 하기 설명에서 부분적으로 설명될 것이고, 부분적으로는 설명으로부터 명백하거나 제시된 실시예의 실시에 의해 학습될 수 있다.
일 실시예에서, 전자장치가 사용자와의 상호 작용을 통해 동작을 수행하는 방법은, 타겟 물체가 포함된 복수개의 이미지를 획득할 수 있다. 동작을 수행하는 방법은 복수개의 이미지에 기초하여 타겟 물체를 조작하는 사용자의 모션을 감지할 수 있다. 동작을 수행하는 방법은, 타겟 물체를 식별하기 위한 시각적 정보를 포함하는 타겟 물체의 시각적 디스크립터를 획득할 수 있다. 동작을 수행하는 방법은 타겟 물체를 표시(mark)함으로써, 타겟 물체와 관련된 정보를 입력 받아 타겟 물체의 태그를 획득할 수 있고, 태그에 대응하는 입력 신호의 수신에 대한 응답으로, 시각적 디스크립터에 기초하여, 타겟 물체에 대해 입력 신호에 대응하는 동작을 수행하는 단계를 포함할 수 있다.
일 실시예에서, 시각적 디스크립터는, 사용자의 모션이 복수개의 이미지가 획득되는 화각(Field of View) 내에서 감지되는 것에 응답하여 획득될 수 있다.
일 실시예에서, 타겟 물체의 태그는 타겟 물체의 사용 주체, 타겟 물체의 용도, 타겟 물체의 사용 빈도, 타겟 물체의 외관, 또는 타겟 물체에 대한 사용자의 선호도 중 적어도 하나 이상에 대한 정보를 포함할 수 있다.
일 실시예에서, 시각적 디스크립터는, 타겟 물체의 이동을 제공하기 위한 파지(grasping) 정보를 더 포함할 수 있다.
일 실시예에서, 입력 신호를 수행하는 단계는, 시각적 디스크립터에 포함된 시각적 정보에 기초하여, 타겟 물체를 식별하고, 파지 정보에 기초하여, 타겟 물체의 이동을 제공하는 단계를 포함할 수 있다.
일 실시예에서, 시각적 디스크립터는 타겟 물체의 3D 모델, 타겟 물체의 전체 또는 부분의 점구름(point cloud), 타겟 물체의 전체 또는 부분의 질감, 타겟 물체의 시각적 특성에 국한된 디스크립터, 타겟 물체의 기하학적 구조 또는 타겟 물체의 외관 중 적어도 하나를 나타내는 정보를 포함할 수 있다.
일 실시예에서, 전자 장치는, 시각적 디스크립터에 기초하여, 적어도 하나의 광원을 이용하여 타겟 물체를 표시할 수 있다.
일 실시예에서, 전자 장치는, 시각적 디스크립터에 기초하여, 적어도 하나의 AR 프로젝션을 이용하여 타겟 물체를 표시할 수 있다.
일 실시예에서, 화각의 위치와 크기를 결정하고, 화각에 기초하여, 타겟 물체를 조작하는 사용자의 모션을 감지하는 단계를 포함할 수 있다.
일 실시예에서, 시각적 디스크립터와 태그를 저장하는 방법은, 시각적 디스크립터를 데이터 베이스에 저장하고, 물체의 태그를 데이터 베이스에 저장하고, 시각적 디스크립터와 태그 간의 링크를 데이터 베이스에 저장하는 단계를 더 포함할 수 있다.
일 실시예에서, 사용자와 상호작용하기 위한 전자 장치에 있어서, 카메라 모듈; 적어도 하나 이상의 인스트럭션이 저장된 메모리; 및 메모리에 저장된 적어도 하나 이상의 인스트럭션을 실행하는 적어도 하나의 프로세서를 포함하고, 프로세서는, 타겟 물체가 포함된 복수개의 이미지를 획득하도록 카메라 모듈을 제어하고, 복수개의 이미지에서 타겟 물체를 조작하는 사용자의 모션을 감지하고, 타겟 물체를 식별하기 위한 시각적 정보를 포함하는 타겟 물체의 시각적 디스크립터를 획득하고, 타겟 물체를 표시(mark)함으로써, 타겟 물체와 관련된 정보를 입력 받아 타겟 물체의 태그를 획득하고, 태그에 대응하는 입력 신호를 수신에 대한 응답으로, 시각적 디스크립터에 기초하여, 입력 신호에 대응하는 동작을 수행할 수 있다.
일 실시예에서, 컴퓨터 프로그램 제품은, 적어도 하나의 프로세서에 의해 실행될 때, 적어도 하나의 프로세서가 제어할 수 있도록 하는 지시를 포함하는 프로그램을 저장한 컴퓨터에서 판독 가능한 기록 매체를 포함할 수 있다. 프로세서는 타겟 물체가 포함된 복수개의 이미지를 획득하는 동작을 수행할 수 있고, 복수개의 이미지에 기초하여 타겟 물체를 조작하는 사용자의 모션을 감지하는 동작, 타겟 물체를 식별하기 위한 시각적 정보를 포함하는 타겟 물체의 시각적 디스크립터를 획득하는 동작; 타겟 물체를 표시(mark)함으로써, 타겟 물체와 관련된 정보를 입력 받아 타겟 물체의 태그를 획득하는 동작, 태그에 대응하는 입력 신호의 수신에 대한 응답으로, 시각적 디스크립터에 기초하여, 타겟 물체에 대해 입력 신호에 대응하는 동작을 수행할 수 있다.
본 개시에 따르면, 타겟 물체의 고유 명칭이 아닌 물체의 태그와 시각적 디스크립터를 활용하여, 사용자의 명령에 대응하는 동작을 수행할 수 있다.
본 개시의 다른 실시예, 장점 및 특징은 첨부된 도면들과 함께 본 개시의 다양한 실시예들을 개시하는 하기의 상세한 설명을 통해 당업자에게 명백할 것이다.
본 개시의 특정 실시예들의 다른 측면, 특징 및 이점들은 첨부된 도면들과 함께 다음의 설명을 통해 더욱 명확히 이해될 수 있다:
도 1은 일 실시예에 따른 타겟 물체의 시각적 디스크립터와 타겟 물체의 태그를 획득하는 방법을 설명하기 위한 도면이다.
도 2는 일 실시예에 따른 타겟 물체로부터 획득한 시각적 디스크립터와 태그를 기초로 하여 입력 신호에 대응하는 동작을 수행하는 방법을 설명하기 위한 순서도이다.
도 3은 일 실시예에 따른 타겟 물체로부터 획득한 시각적 디스크립터와 태그를 기초로 하여 입력 신호에 대응하는 동작을 수행하는 방법을 설명하기 위한 순서도이다.
도 4는 일 실시예에 따른 전자 장치가 시각적 디스크립터와 태그를 획득하기 위한 동작을 설명하기 위한 도면이다.
도 5는 일 실시예에 따른 전자장치의 블록 구성도이다.
도 6은 일 실시예에 따른 전자장치의 블록 구성도이다.
도 7은 일 실시예에 따른 전자 장치가 타겟 물체를 조작하는 사용자의 모션을 감지하고, 타겟 물체의 시각적 디스크립터를 획득하는 과정을 설명하기 위한 도면이다.
도 8은 일 실시예에 따른 전자 장치가 시각적 디스크립터를 획득하는 과정을 설명하기 위한 도면이다.
도 9는 일 실시예에 따른 파지 정보에 기초하여, 전자 장치가 타겟 물체를 조작하는 방법을 설명하기 위한 도면이다.
도 10은 일 실시예에 따른 타겟 물체의 시각적 디스크립터인 기하학적 구조를 설명하기 위한 도면이다.
도 11은 일 실시예에 따른 타겟 물체의 시각적 디스크립터인 점구름(point cloud)을 설명하기 위한 도면이다.
도 12는 일 실시예에 따른 시각적 디스크립터에 기초하여, 타겟 물체의 태그에 대응하는 입력 신호를 수신하고, 명령을 수행하는 동작을 설명하기 위한 도면이다.
도 13은 일 실시예에 따른 타겟 물체를 표시(mark)하는 방법을 설명하기 위한 도면이다.
도 14는 일 실시예에 따른 타겟 물체를 표시(mark)하는 방법을 설명하기 위한 도면이다.
도 15는 일 실시예에 따른 시각적 디스크립터의 활용성을 설명하기 위한 도면이다.
도 16은 일 실시예에 따른 시각적 디스크립터를 활용한 증강 현실을 설명하기 위한 도면이다.
도 17은 일 실시예에 따른 시각적 디스크립터를 활용한 증강 현실을 설명하기 위한 도면이다.
도면 전반에 걸쳐 동일하거나 유사한 요소, 특징 및 구조를 설명하기 위해 동일한 참조 번호가 사용될 수 있다.
첨부된 도면들을 참조하여 다음 설명은 청구항 및 균등 범위에 의해 정의되는 본 개시의 다양한 실시예들에 대한 포괄적인 이해를 돕기 위해 제공된다. 이해를 돕기 위해 다양한 구체적인 세부사항을 포함하지만, 이는 예시적인 것으로 간주된다. 따라서, 당업자라면 본 명세서에 기재된 다양한 실시예들의 다양한 변경 및 수정이 본 개시의 범위 및 취지를 벗어나지 않고 이루어질 수 있음을 인식할 것이다. 또한, 명확성 및 간결성을 위해 알려진 기능 및 구조에 대한 설명은 생략할 수 있다.
다음의 설명 및 청구항에서 사용되는 용어 및 단어는 서지적 의미에 한정되는 것이 아니라, 발명자가 본 개시에 대한 명확하고 일관된 이해를 가능하게 하기 위해 사용하는 것에 불과하다. 따라서, 본 발명의 다양한 실시예들에 대한 아래 설명은 단지 예시적인 목적으로 제공되며, 첨부된 청구항 및 균등 범위에서 정의된 본 개시를 제한하는 목적으로 제공되지 않는다는 것은 당업자들에게 명백할 것이다.
본 개시는 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고, 이를 상세한 설명을 통해 상세히 설명하고자 한다. 그러나, 이는 본 개시의 실시 형태에 대해 한정하려는 것이 아니며, 본 개시는 여러 실시예들의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
실시예를 설명함에 있어서, 관련된 공지 기술에 대한 구체적인 설명이 본 개시의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 명세서의 설명 과정에서 이용되는 숫자(예를 들어, 제1, 제2 등)는 하나의 구성요소를 다른 구성요소와 구분하기 위한 식별기호에 불과하다.
본 개시의 실시예들에서 사용되는 용어는 본 개시의 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어들을 선택하였으나, 이는 당 분야에 종사하는 기술자의 의도 또는 판례, 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 실시예의 설명 부분에서 상세히 그 의미를 기재할 것이다. 따라서 본 명세서에서 사용되는 용어는 단순한 용어의 명칭이 아닌, 그 용어가 가지는 의미와 본 개시의 전반에 걸친 내용을 토대로 정의되어야 한다.
본 개시의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어질 수 있다. 본 개시의 하나의 청구항 카테고리(claim category)에서(예를 들어, 방법 청구항에서) 언급된 다양한 특징(feature)들은 다른 청구항 카테고리에서도(예를 들어, 시스템 청구항에서도) 청구될 수 있다. 또한, 본 개시의 일 실시예는 첨부된 청구범위에 명시된 특징들의 조합뿐만 아니라 청구범위 내의 개별 특징들의 다양한 조합들 또한 포함될 수 있다. 본 개시의 범위는 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 개시의 범위에 포함되는 것으로 해석되어야 한다.
또한, 본 개시에서, 일 구성요소가 다른 구성요소와 "연결된다" 거나 "접속된다" 등으로 언급된 때에는, 상기 일 구성요소가 상기 다른 구성요소와 직접 연결되거나 또는 직접 접속될 수도 있지만, 특별히 반대되는 기재가 존재하지 않는 이상, 중간에 또 다른 구성요소를 매개하여 연결되거나 또는 접속될 수도 있다고 이해되어야 할 것이다. 또한, "직접적으로 연결" 또는 "물리적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. 본 개시에서, "송신(transmit)", "수신(receive)" 및 "통신(communicate)" 이라는 용어들은 직접 통신 및 간접 통신을 모두 포함한다. 본 개시 전체에서 어떤 부분이 어떤
구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있음을 의미한다.
또한, 본 개시에서 '~부(유닛)', '모듈' 등으로 표현되는 구성요소는 2개 이상의 구성요소가 하나의 구성요소로 합쳐지거나 또는 하나의 구성요소가 보다 세분화된 기능별로 2개 이상으로 분화될 수도 있다. 이러한 기능은 하드웨어 또는 소프트웨어로 구현되거나 하드웨어와 소프트웨어의 결합으로 구현될 수 있다. 또한, 이하에서 설명할 구성요소 각각은 자신이 담당하는 주기능 이외에도 다른 구성요소가 담당하는 기능 중 일부 또는 전부의 기능을 추가적으로 수행할 수도 있으며, 구성요소 각각이 담당하는 주기능 중 일부 기능이 다른 구성요소에 의해 전담되어 수행될 수도 있음은 물론이다.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함할 수 있다. 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 용어들은 본 명세서에 기재된 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가질 수 있다.
본 개시 전체에서, 특별히 반대되는 기재가 없는 한 "또는(or)"은 포괄적(inclusive)이며 배타적(exclusive)이지 않다. 따라서, 명백히 달리 표시되거나 문맥상 달리 표시되지 않는 한, "A 또는 B"는 "A, B, 또는 둘 모두"를 나타낼 수 있다. 본 개시에서, "~중 적어도 하나" 또는 "하나 이상의 ~"라는 문구는, 열거된 항목들 중 하나 이상의 항목들의 서로 다른 조합이 사용될 수도 있고, 열거된 항목들 중 임의의 하나의 항목만이 필요한 경우를 의미할 수도 있다. 예를 들어, "A, B, 및 C 중 적어도 하나"는 다음의 조합들 중 임의의 것을 포함할 수 있다: A, B, C, A 및 B, A 및 C, B 및 C, 또는 A 및 B 및 C.
본 개시에서 사용되는 용어에 대해 간략히 설명하고, 본 발명의 일 실시예에 대해 구체적으로 설명하기로 한다.
본 개시에서, '복수개의 이미지'는 동영상 또는 비디오의 정지영상, 복수의 연속된 정지영상(또는 프레임)을 의미할 수 있다.
또한, 본 개시에서 '시각적 정보'는 물체의 3D 모델, 물체의 전체 또는 부분의 점구름(point cloud), 물체의 질감, 물체의 기하학적 구조, 또는 색상, 크기 등 외관을 의미할 수 있다.
또한, 본 개시에서 '시각적 디스크립터'는 2D 스케일 불면 기능 변환(2D scale-invariant feature transform(SIFT)), 2D 강력한 기능 향상(2D speeded up robust feature(SURF)), 2D 지향의 빠른 회전식 브리핑(2D oriented fast and rotated brief(ORB)), 3D 점구름, 3D 메시(mesh), 부호화 거리 함수(signed distance function(SDF)), 특성 벡터(feature vector), 3D 원시(3D primitive) 또는 3D 화소(voxel)를 의미할 수 있다.
또한, 본 개시에서 '화각(Field of View)'는 물체를 관찰할 수 있는 범위로, 카메라가 타겟 물체를 촬영할 수 있는 범위를 의미할 수 있다.
또한, 본 개시에서 '파지(grasping) 정보'는 물체를 집거나, 들어올리거나, 이동시키는 경우 물체에 사용자의 신체가 접촉하는 부위를 의미할 수 있다.
또한, 본 개시에서 '태그'는 유연한 맥락적 정보로 어떤 물체에 부여된 키워드 또는 분류를 의미할 수 있다.
또한, 본 개시에서 '점구름'은 좌표계에 속한 점들의 집합으로, 3D 점구름은 3차원 좌표계에서 물체의 표면을 나타내는 점들의 집합을 x, y, z 좌표로 표현한 것을 의미할 수 있다.
도 1은 일 실시예에 따른 타겟 물체의 시각적 디스크립터(visual descriptor)와 타겟 물체의 태그를 획득하는 방법을 설명하기 위한 도면이다.
도 1을 참조하면, 일 실시예에 따른 타겟 물체에 대한 시각적 디스크립터와 태그를 획득하는 방법은 전자장치(120)를 포함할 수 있다. 도 1은 일 실시예에 따른 전자장치(120)와 사용자(140) 간의 상호작용을 통해, 타겟 물체(130)에 대한 시각적 디스크립터와 타겟 물체의 태그(150)를 획득(110)하는 과정을 도시하고 있다.
일 실시예에서, 전자장치(120)는 다양한 형태로 구현될 수 있다. 예를 들어, 본 개시에서의 전자장치(120)는 로봇, AR 글래스, MR 글래스, XR 글래스, 디지털 카메라, 노트북 컴퓨터(laptop computer), 태블릿 PC, 전자북 단말기, 디지털방송용 단말기, PDA(Personal Digital Assistants), PMP(Portable Multimedia Player), 스마트 폰(smart phone) 등이 될 수 있으나, 이에 한정되는 것은 아니다. 본 명세서에서 기술되는 전자장치(120)는 사용자에 의해 착용될 수 있는 장치(wearable device)일 수 있다. 웨어러블 디바이스는 액세서리 형 장치(예컨대, 시계, 반지, 팔목 밴드, 발목 밴드, 목걸이, 안경, 콘택트 렌즈), 머리 착용형 장치(head-mounted-device(HMD)), 직물 또는 의류 일체형 장치(예: 전자 의복), 신체 부착형 장치(예컨대, 스킨 패드(skin pad)), 또는 생체 이식형 장치(예: implantable circuit) 중 적어도 하나를 포함할 수 있으나, 이에 한정되는 것은 아니다. 이하, 설명의 편의를 위해 일부 실시예에서, 전자장치(120)는 로봇인 경우를 예로 들어 설명하기로 한다.
일 실시예에서, 전자장치(120)는 타겟 물체가 포함된 복수개의 이미지를 획득하기 위한 카메라 모듈(도시되지 않음)을 포함할 수 있다. 전자장치(120)는 카메라 모듈을 통해 획득한 복수개의 이미지에서 타겟 물체(130)와 이를 조작하는 사용자(140)의 모션을 감지하고, 타겟 물체의 시각적 디스크립터와 입력부(도시되지 않음)를 통해 타겟 물체의 태그 및 입력 신호를 획득할 수 있다(110).
일 실시예에서, 전자장치(120)는 타겟 물체를 조작하는 사용자의 모션으로부터 타겟 물체의 시각적 정보와 타겟 물체의 파지(grasping) 정보를 포함하는 시각적 디스크립터를 획득할 수 있다. 사용자 모션의 예시로는, 타겟 물체를 집는 동작, 잡는 동작 또는 들어서 이동시키는 동작을 포함할 수 있으나, 이에 한정되지 않는다.
일 실시예에서, 타겟 물체의 시각적 디스크립터는, 타겟 물체를 이미지 내의 다른 물체들과 구별하여 감지하기 위한 시각적 정보를 포함할 수 있다. 예를 들어, 타겟 물체의 3D 모델, 타겟 물체의 전체 또는 부분의 점구름(point cloud), 타겟 물체의 전체 또는 부분의 질감, 타겟 물체의 기하학적 구조, 또는 색상, 크기, 무늬 등 타겟 물체의 외관을 포함할 수 있다. 시각적 디스크립터는 입력 신호에 대응하는 동작을 수행하기 위한 파지(grasping) 정보를 포함할 수 있다. 예를 들어, 타겟 물체의 기하학적 구조, 무게중심, 타겟 물체와 사용자의 손 등이 접촉하는 지점(point) 등을 포함할 수 있다. 시각적 디스크립터를 어떤 방식으로 획득하는지와 그 구체적인 종류에 대한 실시예에 대해서는 이하 도7-11을 참조하여 상세히 설명한다.
일 실시예에서, 타겟 물체의 태그(150)는, 하나의 카테고리에 속하는 물체라도 물체의 용도나 사용하는 주체 등이 다르기 때문에, 이후 사용자의 명령 수행 시, 타겟 물체를 같은 카테고리 내 다른 물체들과 구분하기 위해 사용될 수 있다. 타겟 물체의 태그는 일반적인 물체의 명칭(예를 들어, 컵, 시계, 마우스 등)과는 구별되는 것이다. 타겟 물체의 태그의 예시로는, 타겟 물체를 사용하는 주체, 타겟 물체의 용도, 타겟 물체의 외관(형태, 질감, 색상 등) 타겟 물체에 대한 사용자의 빈도수, 선호도 중 하나 이상에 대한 정보가 포함될 수 있고, 이에 한정되지는 않는다.
전자장치(120)가 타겟 물체를 식별하고, 이로부터 타겟 물체의 시각적 디스크립터와 타겟 물체의 태그를 획득, 태그에 대응하는 입력 신호를 수행하는 과정은 도2 및 도3을 참조하여 상세히 설명한다.
도 2는 일 실시예에 따른 타겟 물체로부터 획득한 시각적 디스크립터와 태그를 기초로 하여 입력 신호에 대응하는 동작을 수행하는 방법을 설명하기 위한 순서도이다.
단계 S210에서, 전자장치(120)는, 타겟 물체가 포함된 복수개의 이미지를 획득할 수 있다.
일 실시예에서, 전자장치(120)는, 정해진 화각(Filed of View) 내에서 타겟 물체가 포함된 복수개의 이미지를 획득할 수 있다.
일 실시예에서, 전자장치(120)는 타겟 물체가 포함될 수 있는 이미지가 담기는 화각(FoV)의 위치와 크기를 조절할 수 있다. 일 실시예에 따른 화각(FoV)의 조절 방법은, 카메라 모듈이 달린 전자장치(120)의 전면부를 기준으로 화각의 위치와 크기를 조절할 수 있다. 화각의 크기는 수평축(horizontally), 수직축(vertically), 대각 방향(diagonally)중 한 방향으로 크기를 조정할 수 있으나, 이에 한정되지 않는다. 또한, 화각의 위치는 크기 조정의 중심점을 이용해 변경할 수 있다.
단계 S220에서, 전자장치(120)는 획득한 복수개의 이미지에서 타겟 물체를 조작하는 사용자의 모션을 감지한다. 일 실시예에서, 사용자의 모션은 타겟 물체를 잡는 동작, 집는 동작, 또는 들어서 이동시키는 동작을 포함할 수 있으나, 이에 한정되지 않는다.
단계 S230에서, 타겟 물체의 시각적 디스크립터를 획득한다. 일 실시예에서, 시각적 디스크립터는 타겟 물체의 시각적 또는 공간적 정보를 나타내는 모든 종류의 데이터를 의미할 수 있다. 일 실시예에서, 시각적 디스크립터는, 타겟 물체를 복수개의 이미지 내에 포함된 다른 물체들과 구별하기 위한 시각적 정보를 포함할 수 있고, 타겟 물체에 대한 명령을 수행하기 위한 파지(grasping) 정보를 포함할 수 있다. 예를 들어, 시각적 디스크립터는 타겟 물체의 3D 모델, 타겟 물체의 전체 또는 부분의 점구름, 타겟 물체의 전체 또는 부분의 질감, 타겟 물체의 기하학적 구조 또는 외관 중 하나를 포함할 수 있고 이에 대해서는 도 7이하에서 상세히 설명한다.
단계 S240에서, 전자장치(120)는 타겟 물체를 표시함으로써, 타겟 물체의 태그를 획득한다. 일 실시예에서, 타겟 물체를 표시함으로써, 타겟 물체의 태그를 획득한다는 것은, 타겟 물체에 대한 시각적 디스크립터를 획득하였음을 알려주고, 태그의 대상이 되는 타겟 물체를 사용자에게 표시하여, 타겟 물체의 태그 정보를 획득하는 동작이다. 일 실시예에서, 타겟 물체에 대한 표시는 빔 포인터를 이용한 적어도 하나의 광원을 이용할 수 있다. 광원을 이용해 타겟 물체를 쏘거나, 외형을 따라 광원을 쏘는 등의 방법을 포함할 수 있다. 사용자가 AR, XR, 또는 MR 글래스를 사용하는 경우에는, 경계 박스(bounding box), 그물망(mesh), 텍스처화(texturized object), 포인터 등 시각적으로 표시할 수 있는 방법을 포함할 수 있다. AR 프로젝션의 경우에는, 프로젝터를 이용하여 사용자가 타겟 물체를 인식할 수 있게 하는 방법을 포함할 수 있으며, 타겟 물체를 표시하는 방법은 이에 한정되지 않는다. 예를 들어, 로봇 팔을 이용하여 물리적으로 타겟 물체를 가리키는 방법을 포함할 수 있다. 구체적인 예시와 실시예는 도 13이하에서 상세히 설명한다.
일 실시예에서, 타겟 물체의 태그는, 타겟 물체에 대한 사용자의 명령을 실행하기 위한 것으로 음성, 텍스트, 터치, 가상 또는 실제 버튼 조작 등을 통해 이뤄질 수 있으며, 이에 한정되지 않는다. 본 개시에서, 타겟 물체의 태그는 물체 고유의 명칭과는 구별되는 것으로, 사용자와 관련되거나 물체의 용도와 관련된 것이 포함될 수 있다. 예를 들어, 타겟 물체를 사용하는 주체, 타겟 물체의 용도, 타겟 물체의 외관(형태, 질감, 색상 등), 타겟 물체에 대한 사용자의 사용 빈도수, 선호도 등에 대한 정보가 포함될 수 있고 이에 한정되지는 않는다.
단계 S250에서, 전자장치(120)는, 입력 신호에 대응하는 동작을 수행한다. 일 실시예에서, 타겟 물체에 대한 입력 신호는, 타겟 물체를 특정 지점 또는 사용자에게 이동시키거나, 집는 동작 등이 포함될 수 있고, 이에 한정되지 않는다. 일 실시예에서, 타겟 물체에 대한 명령을 수행하기 위해서, 전자장치(120)는, 태그에 대응하는 입력 신호를 수신하고, 시각적 디스크립터에 포함된 시각적 정보에 기초하여, 복수개의 물체들 중 타겟 물체를 식별하고, 파지(grasping) 정보에 기초하여, 타겟 물체의 이동을 제공한다. 타겟 물체의 태그에 대응하는 입력 신호는, 음성, 텍스트, 터치, 버튼 조작 등을 통해 이뤄질 수 있으며, 이에 한정되지 않는다.
도 3은 일 실시예에 따른 타겟 물체로부터 획득한 시각적 디스크립터와 태그를 기초로 하여 입력 신호에 대응하는 동작을 수행하는 방법을 설명하기 위한 순서도이다.
이하 도 3에서는 일 실시예에 따른 타겟 물체로부터 획득한 시각적 디스크립터와 태그를 기초로 하여 명령을 수행하는 방법을 보다 상세히 설명한다. 도 2와 중복되는 단계에 대해선 설명의 간략을 위해 상세한 설명은 생략한다.
단계 S310에서, 전자장치(120)는, 타겟 물체가 포함된 복수개의 이미지를 획득한다.
단계 S320에서, 타겟 물체를 조작하는 사용자의 모션이 화각(FoV) 내에서 감지되면, 다음 동작을 수행한다.
단계 S330에서, 타겟 물체의 시각적 디스크립터를 획득한다. 일 실시예에서, 타겟 물체에 대한 시각적 디스크립터는 타겟 물체를 복수개의 이미지 내에 포함된 다른 물체와 구별하기 위한 시각적 정보를 포함할 수 있고, 타겟 물체의 이동을 위한 파지(grasping) 정보를 포함할 수 있다. 예를 들어, 타겟 물체의 3D 모델, 타겟 물체의 전체 또는 부분의 점구름, 타겟 물체의 전체 또는 부분의 질감, 타겟 물체의 기하학적 구조, 외관, 무게중심, 또는 타겟 물체에 사용자의 신체가 접촉하는 지점(point)에 대한 정보 중 하나를 포함할 수 있고 이에 대해서는 도7 이하에서 상세히 설명한다.
단계 S340에서 타겟 물체에 대한 시각적 디스크립터가 전자 장치(120)에 저장된 상태인지 판단한다. 일 실시예에서, 타겟 물체에 대한 시각적 디스크립터는 데이터 베이스에 저장될 수 있다.
단계 S350에서, 전자장치(120)는 사용자에게 타겟 물체를 표시(mark)한다. 일 실시예에서, 사용자에게 타겟 물체를 표시한다는 것은, 타겟 물체에 대한 시각적 디스크립터를 획득하였음을 알려주고, 태그의 대상이 되는 타겟 물체를 사용자에게 표시하여, 사용자로부터 타겟 물체에 대한 태그 정보를 입력 받기 위한 단계이다.
단계 S360에서, 전자장치(120)는 표시된 타겟 물체의 태그를 획득한다. 일 실시예에서, 타겟 물체의 태그는, 이후 사용자의 명령을 실행하기 위한 것으로 이는 음성, 텍스트, 터치, 버튼 조작 등을 통해 입력될 수 있다. 본 개시에서, 타겟 물체의 태그는 물체 고유의 명칭과 구별되는 것으로, 사용자와 관련되거나 물체의 용도와 관련된 것이 포함될 수 있다. 예를 들어, 타겟 물체의 태그는 타겟 물체를 사용하는 주체, 타겟 물체의 용도, 타겟 물체의 외관(형태, 질감, 색상 등), 타겟 물체에 대한 사용자의 사용 빈도수, 선호도 등에 대한 정보가 포함될 수 있고, 이에 한정되지는 않는다.
단계 S370에서, 전자장치(120)는, 타겟 물체의 태그가 획득되면, 타겟 물체의 태그를 시각적 디스크립터와 함께 저장하여, 이후 전자장치(120)의 동작에 이용한다. 일 실시예에서, 타겟 물체의 태그를 시각적 디스크립터와 함께 저장하는 방법은, 타겟 물체의 시각적 디스크립터를 데이터 베이스에 먼저 저장하고, 타겟 물체의 태그가 획득되면, 타겟 물체의 태그를 데이터 베이스에 저장한다. 추가로 타겟 물체의 시각적 디스크립터와 타겟 물체의 태그 간의 링크를 데이터 베이스에 저장한다. 저장된 링크를 이용하여 타겟 물체에 대한 입력 신호에 대응하는 동작을 수행할 수 있다.
일 실시예에서, 타겟 물체를 조작하는 사용자의 모션이 화각 내에서 감지되지 않는 경우에는, 전자장치(120)에 타겟 물체의 시각적 디스크립터가 저장되어 있는지 확인한다. 타겟 물체의 시각적 디스크립터가 저장되어 있지 않거나 새로이 획득하지 못한 경우에는, 전자장치(120)를 이용하여 복수개의 이미지 획득하는 단계를 수행한다.
도 4는 일 실시예에 따른 전자 장치가 시각적 디스크립터와 태그를 획득하기 위한 동작을 설명하기 위한 도면이다.
도 4를 참조하면, 전자 장치(120)를 이용하여 복수개의 이미지를 획득할 수 있다(410). 일 실시예에서, 복수개의 이미지는 RGB, RGBD 카메라 모듈을 통해 획득될 수 있다.
복수개의 이미지에서, 전자 장치(120)는 타겟 물체를 조작하는 사용자의 모션을 감지하고(420), 타겟 물체에 대한 시각적 디스크립터를 획득(430)하거나, 저장된 시각적 디스크립터가 있는지 찾는 동작(440)을 수행한다. 일 실시예에서, 타겟 물체를 조작하는 사용자의 모션은, 타겟 물체를 집는 동작, 잡는 동작, 또는 이동시키는 동작을 포함할 수 있다. 일 실시예에서, 타겟 물체에 대한 시각적 디스크립터는, 타겟 물체를 식별하기 위한 시각적 정보, 타겟 물체에 대한 명령을 수행하기 위한 파지(grasping) 정보를 포함할 수 있다. 일 실시예에서, 타겟 물체의 시각적 디스크립터는 데이터 베이스에 저장될 수 있다.
전자 장치(120)는 시각적 디스크립터 데이터베이스(450)에 기초하여, 사용자에게 타겟 물체를 표시한다(460). 일 실시예에서, 타겟 물체를 표시하는 것은, 타겟 물체에 대한 시각적 디스크립터를 획득하였음을 알려주고, 타겟 물체를 사용자에게 표시하여, 타겟 물체의 태그 정보를 획득하기 위한 동작이다. 일 실시예에서, 타겟 물체에 대한 표시는 빔 포인터를 이용한 적어도 하나의 광원을 이용할 수 있다. 빔 포인터를 이용해 타겟 물체를 쏘거나, 타겟 물체의 외형을 따라 광원을 쏘는 등의 방법을 포함할 수 있다. 사용자가 AR, XR, 또는 MR 글래스를 사용하는 경우에는, 경계 박스(bounding box), 그물망(mesh), 텍스처화(texturized object), 포인터 등 시각적으로 표시할 수 있는 방법을 포함할 수 있다. AR 프로젝션의 경우에는, 프로젝터를 이용하여 사용자가 타겟 물체를 인식할 수 있게 하는 방법을 포함할 수 있으며, 타겟 물체를 표시하는 방법은 이에 한정되지 않는다. 예를 들어, 로봇 팔을 이용하여 물리적으로 타겟 물체를 가리키는 방법을 포함할 수 있다. 구체적인 예시와 실시예는 도 13 이하에서 자세히 살펴본다.
전자 장치(120)는, 인간과 컴퓨터 간 상호작용(Human Computer Interaction)을 통하여, 물체의 태그를 획득할 수 있다. 일 실시예에서, 타겟 물체의 태그는, 이후 사용자의 명령을 실행하기 위한 것으로 음성, 텍스트, 터치, 버튼 조작 등을 통해 이뤄질 수 있으며, 이에 한정되지 않는다. 본 개시에서, 타겟 물체의 태그는 물체 고유의 명칭과 구별되는 것으로, 사용자와 관련되거나 물체의 용도와 관련된 것이 포함될 수 있다. 예를 들어, 타겟 물체를 사용하는 주체, 타겟 물체의 용도, 타겟 물체의 외관(형태, 질감, 색상 등), 타겟 물체에 대한 사용자의 사용 빈도수, 선호도 등에 대한 정보가 포함될 수 있고, 이에 한정되지는 않는다.
전자 장치(120)는, 시각적 디스크립터와 물체의 태그에 기초하여, 사용자와의 상호작용을 통해 여러가지 동작들을 수행할 수 있다(470). 일 실시예에서, 전자 장치(120)는 타겟 물체의 태그에 대응하는 입력 신호를 입력 받고, 시각적 디스크립터에 기초하여, 입력 신호를 수행할 수 있다. 예를 들어, 입력 신호를 수행하는 것은, 타겟 물체를 지정된 위치로 이동시키거나, 사용자에게 가져오는 동작, 또는 타겟 물체를 집는 동작 등을 포함할 수 있다.
도 5는 일 실시예에 따른 전자 장치를 설명하기 위한 구성도이다.
도 5를 참조하면, 시각적 디스크립터와 타겟 물체의 태그를 획득, 명령을 수행하는 동작은 전자장치(120)에 의해 수행될 수 있다. 일 실시예에 따른 전자장치(120)는, 카메라 모듈(510), 메모리(520), 프로세서(530)를 포함할 수 있다. 그러나 도시된 구성요소 모두가 필수구성요소인 것은 아니다. 전자 장치(120)는 도시된 구성요소보다 많은 구성요소에 의해 구현될 수도 있고, 그보다 적은 구성요소에 의해서도 전자장치(120)는 구현될 수 있다.
카메라 모듈(510)은 타겟 물체가 포함된 복수개의 이미지를 획득하고 타겟 물체와 타겟 물체를 조작하는 사용자의 모션을 감지할 수 있다. 카메라 모듈이 감지하는 사용자의 모션은 일 실시예에 따르면, 물체를 집는 동작, 잡는 동작, 또는 이동시키는 동작이 될 수 있으며, 손을 이용하여 물체를 조작하는 동작이 포함될 수 있다. 일 실시예에서, 카메라 모듈(510)은 복수개의 카메라들로 구현될 수 있다.
일 실시예에서, 카메라 모듈(510)은 전자 장치(120)의 전면부 방향의 중심을 기준으로 하여, 수평축(horizontally), 수직축(vertically), 또는 대각 방향(diagonally) 중 적어도 하나의 길이를 조정하여 복수개의 이미지를 획득하는 화각(FoV)의 크기를 결정할 수 있고, 크기 조정의 중심점을 기준으로 화각(FoV)의 위치를 결정할 수 있다.
메모리(520)는, 프로세서(530)에서 실행되는 프로그램 명령 또는 코드를 저장할 수도 있고, 입/출력되는 데이터들(예컨대, 복수개의 이미지, 시각적 디스크립터, 물체의 태그, 태그에 대응하는 입력 신호)을 저장할 수도 있다. 일 실시예에서, 메모리(520)는 복수개의 메모리들로 구현될 수 있다.
메모리(520)는 플래시 메모리 타입(flash memory type), 하드디스크 타입(hard disk type), 멀티미디어 카드 마이크로 타입(multimedia card micro type), 카드 타입의 메모리(예를 들어 SD 또는 XD 메모리 등), 램(RAM, Random Access Memory) SRAM(Static Random Access Memory), 롬(ROM, Read-Only Memory), EEPROM(Electrically Erasable Programmable Read-Only Memory), PROM(Programmable Read-Only Memory), 자기 메모리, 자기 디스크, 광디스크 중 적어도 하나의 타입의 저장매체를 포함할 수 있다.
프로세서(530)는, 통상적으로 전자장치(120)의 전반적인 동작을 제어한다. 예를 들어, 프로세서(530)는 메모리(520)에 저장된 인스트럭션(instruction)들을 실행함으로써, 카메라 모듈(510)의 화각(FoV)을 결정할 수 있고, 타겟 물체를 조작하는 사용자의 모션을 감지할 수 있다. 또한, 프로세서(530)는 타겟 물체의 시각적 디스크립터와 타겟 물체의 태그를 획득하고 저장할 수 있으며, 태그에 대응하는 입력 신호를 수신하고, 이에 대응하는 동작을 수행할 수 있다. 일 실시예에서, 프로세서(530)는 복수개의 프로세서들로 구현될 수 있다.
도 6은 일 실시예에 따른 전자 장치를 설명하기 위한 구성도이다.
도 6에서 도시한 바와 같이, 일 실시예에 따른 전자장치(120)는, 도 5에 도시된 전자장치(120)의 구성 요소들 이외에 추가적으로 출력부(640), 입력부(650), 구동부(660)를 포함할 수 있다.
이하 상기 구성요소들에 대해 차례로 살펴본다.
카메라 모듈(610), 메모리(620), 프로세서(630)는 도 5의 카메라 모듈(510), 메모리(520), 프로세서(530)에 대응하는 동작을 수행할 수 있으므로, 설명의 간략을 위해 상세한 설명은 생략한다.
출력부(640)는, 사용자에게 타겟 물체를 표시(mark)해주기 위한 동작을 수행한다. 일 실시예에서, 전자 장치(120)는 빔 포인터를 이용한 적어도 하나의 광원을 이용해 타겟 물체를 표시할 수 있다. 빔 포인터를 이용해 타겟 물체를 쏘거나, 타겟 물체의 외형을 따라 광원을 쏘는 방법 등을 포함할 수 있다. 일 실시예에서, 사용자가 AR/MR/XR 글래스를 사용하는 경우, 전자 장치(120)는 물체의 주변에 경계 박스(bounding box)를 만들거나, 그물망(mesh)을 통해 타겟 물체를 표시하거나, 타겟 물체에 다른 질감을 표시하는 등 시각적인 효과를 통해 사용자에게 타겟 물체를 표시할 수 있다. 전자 장치(120)가 출력부(640)를 통해 사용자에게 타겟 물체를 표시해주는 방법은 이에 한정되지 않고, 3차원 공간에서 사용자의 주의를 끌어 물체에 대한 인식을 할 수 있게 하는 다양한 방법을 포함할 수 있다. 예를 들어, 전자장치(120)가 로봇인 경우, 로봇의 손을 통해 물리적으로 타겟 물체를 표시할 수 있다. 구체적인 예시와 실시예는 도 13 이하에서 자세히 살펴본다.
일 실시예에서 출력부(640)는, 타겟 물체를 표시하는 방법에 대응하여, 빔 포인터, AR, XR, MR 글래스의 디스플레이, AR 프로젝터, 로봇 팔 등이 포함될 수 있으나, 이에 한정되는 것은 아니다.
입력부(650)는, 타겟 물체의 태그를 획득하기 위해 사용자로부터 타겟 물체에 대한 정보를 입력 받거나, 타겟 물체의 태그에 대응하는 입력 신호를 수신하는 동작을 수행한다. 사용자의 입력은 음성 입력, 텍스트 입력, 터치 입력, 실제 또는 가상의 버튼을 통한 입력 등을 포함할 수 있으나, 이에 한정되는 것은 아니다. 일 실시예에서, 입력부(650)는, 사용자의 입력 방법에 대응하여, 마이크, 키보드, 터치스크린, 버튼 등을 포함할 수 있으나, 이에 한정되는 것은 아니다.
구동부(660)는, 전자 장치(120)가 입력부(650)를 통해, 물체의 태그에 대응하는 입력 신호를 수신하는 경우, 입력 신호에 대응하는 동작을 수행한다. 구동부(660)는 전동력, 자기력, 공기압력 등을 이용할 수 있고, 이에 한정되는 것은 아니며, 직선 운동과 회전 운동을 수행할 수 있다. 예를 들어, 타겟 물체의 이동을 명령한 경우, 전자 장치(120)는 구동부(660)를 제어하여 바퀴 등을 통해 이동하고, 직선 운동과 회전 운동을 통해 타겟 물체를 집거나 들어올려 이동시킬 수 있다.
도 7은 일 실시예에 따른 전자 장치(120)가 타겟 물체를 조작하는 사용자의 모션을 감지하고, 타겟 물체의 시각적 디스크립터를 획득하는 과정을 설명하기 위한 도면이다.
도 7을 참조하면, 일 실시예에서, 전자 장치(120)는 타겟 물체를 조작하는 사용자의 모션을 화각(FoV) 내에서 감지할 수 있다. 타겟 물체를 조작하는 사용자의 모션은 타겟 물체의 모양이나 용도에 따라 다양한 실시예가 존재할 수 있다. 물체를 조작하는 사용자의 모션은 다음과 같은 예시를 포함할 수 있으나, 이에 한정되지 않는다.
물체 안에 들어 있는 내용물을 이용하는(예컨대, 소스 통, 본드, 물감 등) 실시예(710)의 경우, 사용자는 물체의 내용물이 나오는 입구가 아닌 내용물이 담기는 통 부분을 잡고 물체를 조작한다. 물체의 후면부를 지지하고, 전면부를 통해 물체의 기능을 수행하는(예컨대, 핸드폰, 태블릿 PC 등) 실시예(720)의 경우, 일반적으로 후면부와 측면부에 사용자의 신체 일부가 접촉된 상태로 조작될 수 있다. 물체 안에 다른 내용물을 담아서 이용하는(예컨대, 컵, 병, 필통 등) 실시예(730)의 경우, 내용물을 담는 부분이 아닌 물체의 외부 표면에 사용자의 신체 일부가 접촉하여 조작될 수 있다. 물체 자체가 얇거나 사용자가 접촉하는 부분이 얇은(예컨대, 연필, 빨대, 호스 등) 실시예(740)의 경우, 물체의 면적 대비 사용자가 접촉하는 부분이 차지하는 비율이 크고, 타겟 물체와 사용자의 접촉 면이 겹칠 수 있다. 물체를 손 전반을 이용하여 움켜쥐는(예컨대, 물병, 캔, 병, 등) 실시예(750)의 경우, 물체 외부 표면 전반에 사용자의 신체가 접촉하여 물체를 조작할 수 있다.
일 실시예에서, 전자 장치(120)는 타겟 물체를 조작하는 사용자의 모션을 감지(760)하고, 타겟 물체의 시각적 디스크립터를 획득(770)할 수 있다. 일 실시예에 따르면, 물체의 시각적 디스크립터는, 3D 모델이 될 수 있고, 타겟 물체와 타겟 물체를 조작하는 사용자의 신체 일부로 나타날 수 있다. 예를 들어, 원기둥 모양의 물체를 조작하는 사용자의 모션이 감지되는 경우(760), 전자 장치(120)는 물체의 외부 형태인 원기둥 모양과 이를 조작하는 사용자의 손의 3D 모델을 이미지로부터 획득할 수 있다(770). 전자 장치(120)는 획득된 3D 모델로부터 사용자의 손 모양과 타겟 물체의 외부 형태를 분리하여 인식할 수 있고(780), 물체의 기하학적 구조와 물체를 조작하기 위해 사용자의 손이 접촉한 지점(point)에 대한 파지 정보를 얻을 수 있다(790).
도 8은 일 실시예에 따른 전자 장치(120)가 타겟 물체의 시각적 디스크립터를 획득하는 과정을 구체적인 실시예를 통해 설명하기 위한 도면이다.
도 8에 따르면, 시각적 디스크립터는, 타겟 물체의 3D 모델, 타겟 물체의 점구름(point cloud), 타겟 물체의 기하학적 구조, 타겟 물체에 사용자의 신체 일부가 접촉하는 지점(point) 등을 포함할 수 있다. 전자 장치(120)에 의해 획득된 복수개의 이미지에서, 타겟 물체를 조작하는 사용자의 모션이 감지된 경우, 전자 장치(120)는 타겟 물체의 시각적 디스크립터를 획득할 수 있다.
일 실시예에서, 전자 장치(120)는 획득한 복수개의 이미지로부터 RGB 스트림을 통해 물체의 모양 특성을 검출하고, 전파 시간(Time of Flight)을 이용한 깊이 스트림(Depth Stream)을 통해 전자 장치(120)와 타겟 물체 간의 거리를 분석한 이미지를 획득할 수 있다(810). 예를 들어, 컵을 조작하는 사용자의 손을 감지한 경우, 전자 장치(120)는 타겟 물체인 컵과, 컵을 조작하는 사용자의 손의 모양 특성을 RGB 스트림을 통해 알아내고, 깊이 스트림을 통해 전자 장치(120)로부터의 거리를 분석할 수 있다.
일 실시예에서, 전자 장치(120)는 분리 스트림(Segmentation Stream)을 통해, 분석된 이미지로부터 배경, 타겟 물체, 타겟 물체를 조작하는 사용자의 신체를 분리할 수 있다(820). 일 실시예에서, 전자 장치(120)는 분리된 복수의 이미지로부터 타겟 물체의 디스크립터를 획득할 수 있다(830). 일 실시예에서, 타겟 물체의 디스크립터는 시각적 디스크립터의 전 단계로, 동적 점구름(dynamic point cloud)를 포함할 수 있다. 예를 들어, 전자 장치(120)는 컵을 조작하는 사용자의 손에 대한 RGB 스트림과 깊이 스트림을 통한 분석이 끝난 후, 타겟 물체인 컵과 컵을 조작하는 사용자의 손, 배경 이미지를 분리할 수 있다.
일 실시예에서, 타겟 물체의 시각적 디스크립터는 복수의 이미지로부터, 타겟 물체를 조작하고 있는 사용자의 여러 모션을 캡처하고, RGB 스트림과 분리 스트림을 거친 디스크립터에 다운 샘플링을 한 상태를 의미한다. 일 실시예에서, 타겟 물체에 대한 디스크립터에 대한 다운 샘플링은, 점구름의 다운 샘플링을 통해, 동적 희소 점구름(dynamic sparse point cloud)을 생성하는 것을 포함할 수 있다.
일 실시예에서, 전자 장치(120)는 물체의 디스크립터에 대해 다운 샘플링을 수행함으로써 타겟 물체의 동적 희소 점구름(dynamic sparse point cloud) 정보와 파지 정보를 획득할 수 있다(840). 일 실시예에서, 타겟 물체의 점구름은 3차원 좌표계에서 3D 스캐너를 통해 타겟 물체의 외관을 점들을 통해 표현한 것이다. 예를 들어, 전자 장치(120)는 타겟 물체인 컵에 대한 물체의 디스크립터에 대해 다운 샘플링을 수행할 수 있다. 다운 샘플링을 통해 컵의 동적 희소 점구름 정보와 파지 정보를 포함하는 시각적 디스크립터를 획득할 수 있다.
일 실시예에서, 다운샘플링을 통해 획득한 시각적 디스크립터로부터, x, y, z축 방향의 회전을 통해 물체를 사용하는 정방향으로 조정한 점구름과 파지 정보를 획득할 수 있다(850). 획득된 정보로부터 물체의 기하학적 구조와, 물체의 조작을 위한 파지 정보를 획득할 수 있다(860). 예를 들어, 컵의 기하학적 원형인 원기둥과 무게중심, 컵에 접촉한 손의 지점 등을 포함한 시각적 디스크립터를 획득할 수 있다.
도 9는 일 실시예에 따른 시각적 디스크립터에 기초하여, 전자 장치(120)가 타겟 물체를 조작하는 방법을 설명하기 위한 도면이다.
도 9를 참조하면, 일 실시예에서, 시각적 디스크립터(910)에 기초하여, 전자 장치(120)가 타겟 물체를 잡는 동작(920)을 수행할 수 있다. 일 실시예에서, 시각적 디스크립터는 타겟 물체를 식별하기 위한 시각적 정보와, 타겟 물체에 대응하는 명령을 수행하기 위한 파지(grasping) 정보를 포함할 수 있다. 타겟 물체의 파지 정보는, 예를 들어 타겟 물체의 기하학적 구조, 무게 중심, 타겟 물체와 사용자의 손 등이 접촉하는 지점 등을 포함할 수 있고, 이에 한정되지 않는다.
일 실시예에서, 타겟 물체에 대한 파지(grasping) 정보는 사용자의 손이 접촉한 부분(910)을 포함할 수 있고, 파지 정보에 기초하여, 전자 장치(120)는 타겟 물체를 들어올리거나 집는 동작을 수행할 수 있다(920). 전자 장치(120)가 타겟 물체를 조작하는 방법에는 전자 장치(120)의 형태 또는 타겟 물체의 형태에 따라 다양한 실시예가 존재할 수 있다.
예를 들어, 전자 장치(120)와 물체가 접촉하는 부분이 두 지점이고, 파지 부분에 관절이 존재하지 않고 좌우 압력을 통해 동작하는 실시예(930)가 존재할 수 있다. 또는, 전자 장치와 물체가 접촉하는 부분이 세 지점이고, 파지 부분에 관절이 존재하여 물체를 조작하는 실시예(940)가 존재할 수 있다. 다른 예시로, 전자 장치에서 명령을 수행하는 부분이 사람의 손 모양과 유사한 형태를 지닌 실시예(950)가 존재할 수 있다.
타겟 물체의 형태에 따른 타겟 물체를 조작하는 방법에는, 타겟 물체의 무게 중심이 중앙부에 위치하는 경우(960), 타겟 물체에 손잡이 등이 달려 무게 중심이 한 방향으로 쏠린 경우(970), 타겟 물체의 조작을 위해 가장자리를 이용하는 것이 적절한 경우(980) 등이 존재할 수 있고, 이에 한정되지 않는다.
도 10은 일 실시예에 따른 타겟 물체의 시각적 디스크립터인 기하학적 구조를 설명하기 위한 도면이다. 일 실시예에서, 타겟 물체의 시각적 디스크립터는 타겟 물체의 기하학적 구조를 포함한다.
일 실시예에서, 실제 라벨링(1010)과 예측된 라벨링(1030) 간의 유사도를 확인할 수 있다. 일 실시예에서, 타겟 물체의 실제 라벨링(1010)을 동작부(A), 파지부(B), 받침부 또는 충전부(C)로 나타낼 수 있다. 이미지로부터 라벨링에 따른 기하학적 구조(1020)를 분리하여 획득할 수 있다. 일 실시예에서, 타겟 물체의 예측된 라벨링(1030)을 동작부(D)와 파지부(E)로 나타내고, 예측 라벨링에 따른 기하학적 구조(1040)를 분리하여 획득할 수 있다.
일 실시예에서, 실제 라벨링을 기초로 한 기하학적 구조(1020)와 예측 라벨링을 기초로 한 기하학적 구조(1040) 간의 유사도 메트릭(Similarity Metric)을 구할 수 있다.
와 는 꼭지점이 n개인 다른 그래프에 속하는 좌표이다. 꼭지점 수를 동일하게 n개로 설정하고, 정점 거리(Vertex Distance)를 구할 수 있다. 정점 거리는 기하학적 원형의 질량 중심 사이의 관계를 보여준다. 는 기하학적 원형의 특징들 간 유사도를 나타내고, 는 균형상수(balancing constant)이다. 식 (1)을 이용하여, 실제 라벨링(1010)과 예측 라벨링(1030)의 질량 중심을 기준으로 각 꼭지점까지의 정점 거리와 특징들 간 유사도를 구해, 타겟 물체의 기하학적 구조를 데이터베이스에 저장할 수 있다.
도 11은 일 실시예에 따른 타겟 물체의 시각적 디스크립터인 점구름(point cloud)을 설명하기 위한 도면이다. 일 실시예에서, 타겟 물체의 시각적 디스크립터는 타겟 물체의 점구름(point cloud)을 포함할 수 있다.
도 11을 참조하면, 일 실시예에서, 견본 점구름(Template point cloud)(1110)과 획득한 점구름(Registered point cloud)(1120) 간 유사도를 구할 수 있다.
ErrT는 정규화된 번역 오류(normalized translation error)로, 는 타겟 물체의 꼭지점 중 가장 먼 지점 간의 거리를 의미한다. ErrT를 구하기 위해, 견본 점구름(1110)과 획득한 점구름(1120)이 그려지는 좌표축을 합친 좌표축(1130)을 생성한다. 생성된 좌표축(1130)에서 축의 중심 사이 거리(1140)만큼 점구름 좌표의 중심을 조정하여 중심이 일치하는 그래프(1150)를 획득할 수 있다. 중심이 일치하는 그래프(1150)로부터 ErrR을 구한다. ErrR은 정규화된 회전 오류(normalized rotation error)로, x, y, z 축 각각에 대한 각도 차이 를 이용하여 구할 수 있다. ErrR 과 ErrT를 이용하여 식 (2)를 통해 견본 점구름(1010)과 획득한 점구름(1120)간의 유사도를 이용해 타겟 물체의 점구름(point cloud)을 데이터베이스에 저장할 수 있다.
도 12는 일 실시예에 따른 시각적 디스크립터에 기초하여, 타겟 물체의 태그에 대응하는 입력 신호를 수신하고, 명령을 수행하는 동작을 설명하기 위한 도면이다.
일 실시예에서, 전자 장치(120)는 사용자(1250)로부터 타겟 물체(1260)의 태그를 획득할 수 있다. 일 실시예에서, 타겟 물체의 태그는, 타겟 물체를 사용하는 주체, 타겟 물체의 용도, 타겟 물체의 외관(형태, 질감, 색상 등), 타겟 물체에 대한 사용자의 빈도수, 선호도 중 하나 이상에 대한 정보가 포함될 수 있고, 이에 한정되지 않는다.
일 실시예에서, 전자 장치(120)는 타겟 물체의 태그와 타겟 물체의 시각적 디스크립터를 데이터베이스에 저장할 수 있다(1220). 일 실시예에서, 전자 장치(120)는 타겟 물체의 시각적 디스크립터와 타겟 물체의 태그를 데이터 베이스에 저장한다. 이 후, 전자 장치(120)는 타겟 물체의 시각적 디스크립터와 타겟 물체의 태그 간 링크를 데이터베이스에 저장하여, 타겟 물체의 태그에 대응하는 입력신호에 대한 동작을 수행하는데 이용할 수 있다.
일 실시예에서, 전자 장치(120)는 사용자(1250)로부터, 타겟 물체의 태그에 대응하는 입력 신호를 수신(1230)할 수 있다. 일 실시예에서, 타겟 물체의 태그에 대응하는 입력 신호는, 타겟 물체를 집는 동작, 잡는 동작 또는 이동시키는 동작이 포함될 수 있고, 이에 한정되지 않는다. 일 실시예에서, 타겟 물체의 태그에 대응하는 입력 신호는, 음성, 텍스트, 터치, 버튼 조작 등을 통해 이뤄질 수 있으며, 이에 한정되지 않는다. 일 실시예에서, 전자 장치(120)는 입력부(예컨대, 마이크, 터치스크린, 버튼 등)를 통해 타겟 물체의 태그에 대응하는 입력 신호를 수신할 수 있다.
일 실시예에서, 전자 장치(120)는 타겟 물체에 대해 입력 신호에 대응하는 동작을 수행할 수 있다(1240). 일 실시예에서, 입력 신호에 대응하는 동작은, 타겟 물체를 집는 동작, 잡는 동작, 특정 지점으로 이동시키거나 사용자에게 이동시키는 동작을 포함할 수 있다.
도 13은 일 실시예에 따른 타겟 물체를 표시(mark)하는 방법을 설명하기 위한 도면이다. 일 실시예에서, 타겟 물체를 표시하는 방법은, AR 글래스, XR글래스, MR 글래스를 사용자가 이용하는 경우, 경계 박스(bounding box), 그물망(mesh), 텍스처화(texturized object), 포인터 등 시각적으로 표시할 수 있는 방법을 포함할 수 있다.
도 13을 참조하면, 전자 장치(120)는 사용자가 AR, XR, MR 글래스 등을 착용한 경우, 타겟 물체를 표시함으로써, 타겟 물체와 관련된 정보를 입력 받아 타겟 물체의 태그를 획득하기 위해서 타겟 물체의 기하학적 구조를 디스플레이에 표시할 수 있다(1320). 일 실시예에서, 전자 장치(120)는 타겟 물체의 기하학적 구조에 추가로 파지 정보를 포함하는 시각적 디스크립터(1330)에 기초하여, 타겟 물체의 기하학적 구조에 더해 파지 정보를 함께 표시할 수 있다(1340).
일 실시예에서, AR, XR, MR 글래스를 착용한 사용자가 움직이거나, 타겟 물체를 쥔 손을 움직이는 경우에는, 타겟 물체의 기하학적 구조 또는 파지 정보의 표시가 타겟 물체의 움직임에 따라 조정될 수 있다.
14는 일 실시예에 따른 타겟 물체를 표시(mark)하는 방법을 설명하기 위한 도면이다.
도 14를 참조하면, 일 실시예에 따른 타겟 물체를 표시하는 동작에서, 전자 장치(120)는 시각적 디스크립터에 기초하여, 타겟 물체에서 사용자와 접촉하는 부분과 접촉하지 않는 부분, 또는 타겟 물체의 동작부와 비동작부 등을 구별하여, 다른 색상으로 표시할 수 있다. 일 실시예에서, 시각적 디스크립터에 포함되는 기하학적 구조는, 기하학적 원형을 포함할 수 있다(예컨대, 원기둥, 직육각형, 구, 원뿔 등).
도 15는 일 실시예에 따른 시각적 디스크립터의 활용성을 설명하기 위한 도면이다. 종래 경계 박스(bounding box)를 이용하여 타겟 물체를 표시해주는 방법(1510)은, 타겟 물체 전체를 감싸는 직육각형의 박스 형태로 구현된다.
일 실시예에서, 타겟 물체의 시각적 디스크립터를 활용하여 경계 박스(bounding box)를 통해 타겟 물체를 표시해주는 방법(1520)은, 타겟 물체의 기하학적 구조를 고려할 수 있다. 타겟 물체 전체를 감싸는 직육각형의 표시방법의 경우, 타겟 물체 외의 다른 배경 부분까지 포함시키는 한계가 있는 바, 본원의 일 실시예에 따른 타겟 물체 표시 방법(1520)은 시각적 디스크립터에 기초하여, 타겟 물체만을 정확히 표시할 수 있다.
일 실시예에서, 타겟 물체의 외관이 원기둥과 구가 합쳐진 모양인 경우, 종래의 타겟 물체 표시 방법(1510)에서는, 타겟 물체를 식별하여 원기둥과 구를 모두 감싸는 직육각형의 경계 박스(bounding box)를 이용하여 표시한다. 본원의 타겟 물체 표시 방법 (1520)에서는, 타겟 물체의 기하학적 구조를 포함하는 시각적 디스크립터에 기초하여, 원기둥(1530)과 구(1540) 모양을 정확하게 표시하여, 타겟 물체 외에 다른 부분은 경계 박스(bounding box)내에 포함되지 않도록 할 수 있다.
일 실시예에서, 시각적 디스크립터에 기초하여, 타겟 물체의 외관을 파악하여 AR, XR, MR을 통해 타겟 물체를 가상 공간에서 활용하는 경우, 정확한 그래픽의 합성이나 정교한 타겟 물체의 조작이 가능하다.
도 16은 일 실시예에 따른 시각적 디스크립터를 활용한 증강 현실을 설명하기 위한 도면이다.
도 16을 참조하면, 일 실시예에서, 사용자가 AR, MR, XR 글래스를 착용하는 경우, 타겟 물체의 시각적 디스크립터에 기초하여, 증강 현실(Augmented reality)을 구현할 수 있다. 일 실시예에서, 타겟 물체에 대한 시각적 디스크립터가 획득된 경우, 어플리케이션 또는 명령어의 실행 등을 통해 타겟 물체에 추가적인 그래픽 작업을 수행할 수 있다(1610). 일 실시예에서, 장난감에 대한 시각적 디스크립터를 획득한 후, 증강 현실을 구현할 수 있다. 장난감의 외형 정보를 정확하게 포함하는 시각적 디스크립터에 기초하여, 장난감의 위엔 비구름을, 측면엔 화살표를 합성할 수 있다.
17은 일 실시예에 따른 시각적 디스크립터를 활용한 증강 현실을 설명하기 위한 도면이다.
도 17을 참조하면, 타겟 물체에 대한 시각적 디스크립터에 기초하여, 타겟 물체에 대한 정보를 획득한 경우(1710), 실제 물체를 가상 현실(AR)에 추가할 수 있다(1720). 일 실시예에서, 실제 물체를 가상 현실에 추가하여, 물체를 조작하는 등의 상호작용을 통해 MR을 구현할 수 있다. 예를 들어, 타겟 물체인 화병의 기하학적 원형(원기둥과 구 모양), 타겟 물체의 외형(색상, 무늬, 질감) 등을 포함하는 시각적 디스크립터를 획득할 수 있다. 획득한 시각적 디스크립터에 기초하여, 증강 현실에서 화병을 원하는 장소에 합성하고, 조작할 수 있다.
한편, 상술한 본 개시의 실시예들은 컴퓨터에서 실행될 수 있는 프로그램 또는 인스트럭션으로 작성 가능하고, 작성된 프로그램 또는 인스트럭션은 저장매체에 저장될 수 있다.
일 실시예에서, 개시된 다양한 실시예들에 따른 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다. 컴퓨터 프로그램 제품은 기기로 읽을 수 있는 저장 매체(예: compact disc read only memory (CD-ROM))의 형태로 배포되거나, 또는 어플리케이션 스토어(예: 플레이 스토어TM)를 통해 또는 두개의 사용자 장치들(예: 스마트폰들) 간에 직접, 온라인으로 배포(예: 다운로드 또는 업로드)될 수 있다. 온라인 배포의 경우에, 컴퓨터 프로그램 제품(예: 다운로더블 앱(downloadable app))의 적어도 일부는 제조사의 서버, 어플리케이션 스토어의 서버, 또는 중계 서버의 메모리와 같은 기기로 읽을 수 있는 저장 매체에 적어도 일시 저장되거나, 임시적으로 생성될 수 있다.
이상, 본 개시의 기술적 사상을 바람직한 실시예를 들어 상세하게 설명하였으나, 본 개시의 기술적 사상은 상기 실시예들에 한정되지 않고, 본 개시의 기술적 사상의 범위 내에서 당 분야에서 통상의 지식을 가진 자에 의하여 여러 가지 변형 및 변경이 가능하다.
기기로 읽을 수 있는 저장매체는, 비일시적(non-transitory) 저장매체의 형태로 제공될 수 있다. 여기서, ‘비일시적 저장매체'는 실재(tangible)하는 장치이고, 신호(signal)(예: 전자기파)를 포함하지 않는다는 것을 의미할 뿐이며, 이 용어는 데이터가 저장매체에 반영구적으로 저장되는 경우와 임시적으로 저장되는 경우를 구분하지 않는다. 예로, '비일시적 저장매체'는 데이터가 임시적으로 저장되는 버퍼를 포함할 수 있다.
본 개시는 다양한 실시예들을 참조하여 도시되고 설명되어 있지만, 첨부된 청구항들 및 균등 범위에 의해 정의되는 본 개시의 범위를 벗어나지 않고, 본 개시의 범위 안에서 다양한 형태 및 세부사항의 변경이 이루어질 수 있다는 것은 당업자들에 의해 이해될 수 있다.
Claims (15)
- 전자장치가 사용자와의 상호 작용을 통해 동작을 수행하는 방법에 있어서,타겟 물체가 포함된 복수개의 이미지를 획득하는 단계;상기 복수개의 이미지에 기초하여 상기 타겟 물체를 조작하는 상기 사용자의 모션을 감지하는 단계;상기 타겟 물체를 식별하기 위한 시각적 정보를 포함하는 상기 타겟 물체의 시각적 디스크립터를 획득하는 단계;상기 타겟 물체를 표시(Mark)함으로써, 상기 타겟 물체와 관련된 정보를 입력 받아 상기 타겟 물체의 태그를 획득하는 단계;상기 태그에 대응하는 입력 신호의 수신에 대한 응답으로, 상기 시각적 디스크립터에 기초하여, 상기 타겟 물체에 대해 상기 입력 신호에 대응하는 동작을 수행하는 단계; 를 포함하는 방법.
- 제1 항에 있어서,상기 타겟 물체의 태그는,상기 타겟 물체의 사용 주체, 상기 타겟 물체의 용도, 상기 타겟 물체의 사용 빈도, 상기 타겟 물체의 외관, 또는 상기 타겟 물체에 대한 사용자의 선호도 중 적어도 하나에 대한 정보를 포함하는, 방법.
- 전술한 청구항 중 어느 한 항에 있어서,상기 시각적 디스크립터는 상기 타겟 물체의 이동을 제공하기 위한 파지(grasping) 정보를 더 포함하는, 방법.
- 전술한 청구항 중 어느 한 항에 있어서, 상기 입력 신호에 대응하는 동작을 수행하는 단계는,상기 시각적 디스크립터에 포함된 시각적 정보에 기초하여, 상기 타겟 물체를 식별하는 단계; 및상기 파지(grasping) 정보에 기초하여, 상기 타겟 물체의 이동을 제공하는 단계; 를 포함하는, 방법.
- 전술한 청구항 중 어느 한 항에 있어서,상기 시각적 디스크립터는 상기 타겟 물체의 3D 모델, 상기 타겟 물체의 전체 또는 부분의 점구름(point cloud), 상기 타겟 물체의 전체 또는 부분 질감, 상기 타겟 물체의 시각적 특성에 국한된 디스크립터, 상기 타겟 물체의 기하학적 구조 또는 상기 타겟 물체의 외관 중 적어도 하나를 나타내는 정보를 포함하는, 방법.
- 전술한 청구항 중 어느 한 항에 있어서,상기 물체의 태그를 획득하는 단계는,상기 시각적 디스크립터에 기초하여, 적어도 하나의 광원을 이용해 상기 타겟 물체를 표시하는 단계; 를 포함하는 방법.
- 전술한 청구항 중 어느 한 항에 있어서,상기 태그를 획득하는 단계는,상기 시각적 디스크립터에 기초하여, 적어도 하나의 AR 프로젝션을 이용해 상기 타겟 물체를 표시하는 단계; 를 포함하는 방법.
- 전술한 청구항 중 어느 한 항에 있어서,상기 시각적 디스크립터를 데이터 베이스에 저장하는 단계;상기 태그를 상기 데이터 베이스에 저장하는 단계; 및상기 시각적 디스크립터와 태그 간의 링크를 상기 데이터 베이스에 저장하는 단계; 를 더 포함하는 방법.
- 사용자와의 상호 작용을 통해 동작을 수행하는 전자 장치에 있어서,카메라 모듈;적어도 하나 이상의 인스트럭션이 저장된 메모리; 및상기 메모리에 저장된 적어도 하나 이상의 인스트럭션을 실행하는 적어도 하나의 프로세서; 를 포함하며,상기 적어도 하나의 프로세서는,타겟 물체가 포함된 복수개의 이미지를 획득하도록 상기 카메라 모듈을 제어하고,상기 복수개의 이미지에서 상기 타겟 물체를 조작하는 상기 사용자의 모션을 감지하고,상기 타겟 물체를 식별하기 위한 시각적 정보를 포함하는 상기 타겟 물체의 시각적 디스크립터를 획득하고,상기 타겟 물체를 표시(mark)함으로써, 상기 타겟 물체와 관련된 정보를 입력 받아 상기 타겟 물체의 태그를 획득하고,상기 태그에 대응하는 입력 신호의 수신에 대한 응답으로, 상기 시각적 디스크립터에 기초하여, 상기 타겟 물체에 대해 상기 입력 신호에 대응하는 동작을 수행하는, 전자 장치.
- 제9 항에 있어서,상기 타겟 물체의 태그는,상기 타겟 물체의 사용 주체, 상기 타겟 물체의 용도, 상기 타겟 물체의 사용 빈도, 상기 타겟 물체의 외관, 또는 상기 타겟 물체에 대한 사용자의 선호도 중 적어도 하나에 대한 정보를 포함하는 것을 특징으로 하는, 전자 장치.
- 전술한 청구항 중 어느 한 항에 있어서,상기 시각적 디스크립터는 상기 타겟 물체의 이동을 제공하기 위한 파지(grasping) 정보를 더 포함하는, 전자 장치.
- 전술한 청구항 중 어느 한 항에 있어서, 상기 프로세서는,상기 시각적 디스크립터에 포함된 시각적 정보에 기초하여, 상기 타겟 물체를 식별하고,상기 파지(grasping) 정보에 기초하여, 상기 타겟 물체의 이동을 제공하는, 전자 장치.
- 전술한 청구항 중 어느 한 항에 있어서,상기 시각적 디스크립터는 상기 타겟 물체의 3D 모델, 상기 타겟 물체의 전체 또는 부분의 점구름(point cloud), 상기 타겟 물체의 전체 또는 부분 질감, 상기 타겟 물체의 시각적 특성에 국한된 디스크립터, 상기 타겟 물체의 기하학적 구조 또는 상기 타겟 물체의 외관 중 적어도 하나를 나타내는 정보를 포함하는, 전자 장치.
- 전술한 청구항 중 어느 한 항에 있어서, 상기 프로세서는상기 시각적 디스크립터에 기초하여, 적어도 하나의 광원 또는 적어도 하나의 AR 프로젝션 중 적어도 하나를 이용해 상기 타겟 물체를 표시하는, 전자 장치.
- 제1항 내지 제8항 중 어느 한 항의 방법을 컴퓨터에서 수행하기 위한 프로그램이 기록된 컴퓨터로 읽을 수 있는 기록매체.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US18/077,746 US20230237820A1 (en) | 2022-01-25 | 2022-12-08 | Method and electronic device for obtaining tag through human computer interaction and performing command on object |
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2022-0011063 | 2022-01-25 | ||
KR20220011063 | 2022-01-25 | ||
KR1020220076377A KR20230114678A (ko) | 2022-01-25 | 2022-06-22 | Hci를 통해 태그를 획득하고 물체에 대한 명령을 수행하는 방법 및 전자 장치 |
KR10-2022-0076377 | 2022-06-22 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US18/077,746 Continuation US20230237820A1 (en) | 2022-01-25 | 2022-12-08 | Method and electronic device for obtaining tag through human computer interaction and performing command on object |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2023146118A1 true WO2023146118A1 (ko) | 2023-08-03 |
Family
ID=87472238
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/KR2022/019693 WO2023146118A1 (ko) | 2022-01-25 | 2022-12-06 | Hci를 통해 태그를 획득하고 물체에 대한 명령을 수행하는 방법 및 전자 장치 |
Country Status (1)
Country | Link |
---|---|
WO (1) | WO2023146118A1 (ko) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050004710A1 (en) * | 2002-03-06 | 2005-01-06 | Hideki Shimomura | Learning equipment and learning method, and robot apparatus |
JP3951235B2 (ja) * | 2003-02-19 | 2007-08-01 | ソニー株式会社 | 学習装置及び学習方法並びにロボット装置 |
KR101100240B1 (ko) * | 2010-05-13 | 2011-12-28 | 한국과학기술연구원 | 멀티모달 상호작용을 이용한 로봇의 물체 학습 시스템 및 방법 |
JP2017090277A (ja) * | 2015-11-11 | 2017-05-25 | 国立大学法人九州大学 | 把持情報取得装置、ロボット教示装置及びロボット制御装置、並びに把持情報取得方法、ロボット教示方法及びロボット制御方法 |
WO2019146199A1 (ja) * | 2018-01-23 | 2019-08-01 | ソニー株式会社 | 情報処理装置、及び情報処理方法 |
-
2022
- 2022-12-06 WO PCT/KR2022/019693 patent/WO2023146118A1/ko unknown
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050004710A1 (en) * | 2002-03-06 | 2005-01-06 | Hideki Shimomura | Learning equipment and learning method, and robot apparatus |
JP3951235B2 (ja) * | 2003-02-19 | 2007-08-01 | ソニー株式会社 | 学習装置及び学習方法並びにロボット装置 |
KR101100240B1 (ko) * | 2010-05-13 | 2011-12-28 | 한국과학기술연구원 | 멀티모달 상호작용을 이용한 로봇의 물체 학습 시스템 및 방법 |
JP2017090277A (ja) * | 2015-11-11 | 2017-05-25 | 国立大学法人九州大学 | 把持情報取得装置、ロボット教示装置及びロボット制御装置、並びに把持情報取得方法、ロボット教示方法及びロボット制御方法 |
WO2019146199A1 (ja) * | 2018-01-23 | 2019-08-01 | ソニー株式会社 | 情報処理装置、及び情報処理方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2020050636A1 (ko) | 사용자 의도 기반 제스처 인식 방법 및 장치 | |
WO2016028097A1 (en) | Wearable device | |
WO2019164092A1 (ko) | 디스플레이를 통해 표시된 제 1 콘텐트에 대해 제 2 콘텐트를 외부 객체의 움직임에 따라 제공하기 위한 전자 장치 및 그의 동작 방법 | |
WO2021020814A1 (en) | Electronic device for providing avatar and operating method thereof | |
WO2019194455A1 (en) | Apparatus and method for recognizing object in image | |
WO2020130281A1 (en) | Electronic device and method for providing avatar based on emotion state of user | |
WO2020256325A1 (en) | Electronic device and method for providing function by using corneal image in electronic device | |
WO2021045552A1 (en) | Electronic device for image synthesis and operating method thereof | |
WO2020159302A1 (ko) | 증강 현실 환경에서 다양한 기능을 수행하는 전자 장치 및 그 동작 방법 | |
WO2022035027A1 (ko) | 모션 신호와 마우스 신호를 사용하여 호스트 장치를 제어하기 위한 전자 장치 | |
WO2022103080A1 (en) | Method and apparatus for online fitting | |
WO2022080869A1 (ko) | 이미지를 이용한 3차원 지도의 업데이트 방법 및 이를 지원하는 전자 장치 | |
WO2016126083A1 (ko) | 주변 상황 정보를 통지하기 위한 방법, 전자 장치 및 저장 매체 | |
WO2020171588A1 (en) | Electronic device and object measurement method thereof | |
WO2021221436A1 (ko) | 카메라를 이용하여 공간의 깊이를 획득하는 디바이스 및 방법 | |
WO2023146118A1 (ko) | Hci를 통해 태그를 획득하고 물체에 대한 명령을 수행하는 방법 및 전자 장치 | |
EP3776158A1 (en) | Electronic device and system for generating object | |
WO2021149938A1 (en) | Electronic device and method for controlling robot | |
WO2020122513A1 (ko) | 2차원 이미지 처리 방법 및 이 방법을 실행하는 디바이스 | |
EP3635672A1 (en) | Augmented reality advertisements on objects | |
EP3973514A1 (en) | Electronic device and method for generating augmented reality object | |
WO2019124728A1 (ko) | 객체를 식별하기 위한 장치 및 방법 | |
WO2020091182A1 (ko) | 증강 현실을 이용한 영상 데이터를 제공하는 전자 장치 및 그 제어 방법 | |
WO2021261619A1 (ko) | 영상에서 평면을 검출하는 전자 장치 및 그 동작 방법 | |
WO2020175760A1 (en) | Electronic device and content generation method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 22924371 Country of ref document: EP Kind code of ref document: A1 |