WO2024085712A1 - Method and device for producing virtual reality 3d curve network using bimanual interaction - Google Patents

Method and device for producing virtual reality 3d curve network using bimanual interaction Download PDF

Info

Publication number
WO2024085712A1
WO2024085712A1 PCT/KR2023/016349 KR2023016349W WO2024085712A1 WO 2024085712 A1 WO2024085712 A1 WO 2024085712A1 KR 2023016349 W KR2023016349 W KR 2023016349W WO 2024085712 A1 WO2024085712 A1 WO 2024085712A1
Authority
WO
WIPO (PCT)
Prior art keywords
line
gesture
vertex
hand
user
Prior art date
Application number
PCT/KR2023/016349
Other languages
French (fr)
Korean (ko)
Inventor
배석형
이상현
진태규
이준협
Original Assignee
한국과학기술원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from KR1020230139638A external-priority patent/KR20240055674A/en
Application filed by 한국과학기술원 filed Critical 한국과학기술원
Publication of WO2024085712A1 publication Critical patent/WO2024085712A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer

Definitions

  • This disclosure relates to a method and device for producing a virtual reality 3D curved network using two-handed interaction.
  • This patent is research conducted with support from KAIST's large-scale convergence research center operation project.
  • Virtual reality allows users to see objects directly at actual size, which is useful for 3D content creation.
  • the method of freely drawing 3D curves in the air is widely used due to its excellent expressiveness.
  • this method has low precision, it is difficult to draw precise curves.
  • This disclosure proposes a new method for generating 3D curves in virtual reality with high expressiveness and precision.
  • This disclosure provides a method and device for intuitively creating a 3D curved network using two-handed interaction in virtual reality.
  • a method of creating a virtual reality 3D curved network using two-handed interaction of an electronic device includes detecting a gesture of at least one hand of a user in space, and forming a plurality of lines according to the gesture in the space. and creating a 3D curved network, where each line is defined by two vertices, wherein the gesture is a pinch gesture with two fingers and a pinch gesture with five fingers. It can be based on the grab gesture.
  • an electronic device for creating a virtual reality 3D curved network using two-handed interaction detects a gesture of at least one hand of a user in space through a camera module, a display module, and the camera module, and displays the display.
  • a processor configured to create, via a module, a 3D curved network in the space in accordance with the gesture, consisting of a plurality of lines, each line defined between two vertices, wherein the gesture is performed using two fingers. It can be based on a pinch gesture and a grab gesture with five fingers.
  • a user can intuitively create a 3D curved network using two-handed interaction in virtual reality through an electronic device.
  • the electronic device allows the user to easily create and modify lines by directly viewing them at actual sizes in virtual reality through gestures with both hands. Therefore, 3D curved networks can be created with high expressiveness and precision in virtual reality.
  • FIG. 1 is a block diagram illustrating an electronic device according to various embodiments.
  • Figure 2 is an example diagram for explaining operation characteristics of an electronic device according to various embodiments.
  • 3 and 4 are conceptual diagrams for explaining gestures used in electronic devices according to various embodiments.
  • FIGS. 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, and 16 are diagrams of electronic devices according to various embodiments of the present invention. These are example diagrams to explain two-hand interaction based on the gesture of 4.
  • FIG. 17 is a flowchart illustrating a method of operating an electronic device according to various embodiments.
  • the dominant hand may represent the hand that the user primarily uses among both hands
  • the non-dominant hand may represent the hand that the user does not primarily use among both hands.
  • the dominant hand may be the right hand and the non-dominant hand may be the left hand.
  • the dominant hand may be the left hand
  • the non-dominant hand may be the right hand.
  • FIG. 1 is a block diagram illustrating an electronic device 100 according to various embodiments.
  • FIG. 2 is an example diagram for explaining operation characteristics of the electronic device 100 according to various embodiments.
  • an electronic device 100 may be provided for creating a virtual reality 3D curved network using two-handed interaction.
  • the electronic device 100 may be implemented as a near-eye display (NED) device that can be worn on the user's face or head.
  • the near-eye display device may include at least one of smart glasses or a head mounted display (HMD) device.
  • HMD head mounted display
  • the electronic device 100 includes at least one of a camera module 110, a communication module 120, an input module 320, a display module 140, an audio module 150, a memory 160, or a processor 170. It can be included. In some embodiments, at least one of the components of the electronic device 100 may be omitted, and at least one other component may be added to the electronic device 100. In some embodiments, at least two of the components of the electronic device 100 may be implemented as one integrated circuit.
  • the camera module 110 can capture images. At this time, when the electronic device 100 is implemented as a near-eye display device, the camera module 110 can capture a front image of the user wearing the electronic device 100.
  • the camera module 110 may include at least one lens, at least one image sensor, at least one image signal processor, and at least one flash.
  • the communication module 120 may perform communication with an external device (not shown) in the electronic device 100.
  • the communication module 120 may establish a communication channel between the electronic device 100 and an external device and perform communication with the external device through the communication channel.
  • the communication module 120 may include at least one of a wired communication module or a wireless communication module.
  • the wireless communication module may communicate with an external device through at least one of a long-distance communication network or a local area communication network.
  • the input module 130 may input a signal to be used in at least one component of the electronic device 100.
  • the input module 130 may be configured to detect a signal directly input by the user or to generate a signal by detecting changes in the surroundings.
  • the input module 130 may include at least one of a microphone, at least one physical button, or a touch pad.
  • the touch pad may be configured to detect contact by the user's hand, that is, a touch, and generate a touch signal in response.
  • the touch pad may include at least one of a touch circuitry configured to detect a touch or a sensor circuit configured to measure the intensity of force generated by the touch.
  • the display module 140 may visually output information to the outside of the electronic device 100.
  • the display module 140 may be configured to display visual content.
  • the display module 140 may be placed in front of the eyes of the user wearing the electronic device 100.
  • the display module 140 may have a different display method depending on the type of electronic device 100. For example, when the electronic device 100 is an optical see-through type, at least a portion of the display module 140 is made of a transparent or translucent material, and the user can view the actual environment through the display module 140. You can see it for yourself. In this case, as the display module 140 displays the visual content, the user can view the real environment and the visual content together.
  • the user can view images of the actual environment captured through the first camera module 111 through the display module 140.
  • the display module 140 displays the visual content
  • the user can view the image of the real environment and the visual content together.
  • the audio module 150 can output information audibly to the outside of the electronic device 100.
  • the audio module 150 may include at least one of a speaker or a receiver.
  • the memory 160 may store various data used by at least one component of the electronic device 100.
  • the memory 160 may include at least one of volatile memory and non-volatile memory.
  • Data may include at least one program and input or output data related thereto.
  • the program may be stored in the memory 160 as software including at least one command, and may include at least one of an operating system, middleware, or an application.
  • the processor 170 may execute a program in the memory 160 to control at least one component of the electronic device 100. Through this, the processor 170 can process data or perform calculations. At this time, the processor 170 may execute instructions stored in the memory 160.
  • the electronic device 100 can create a virtual reality 3D curved network using the user's two-handed interaction. Specifically, while the user is wearing the electronic device 100, the electronic device 100 may create a virtual 3D curved network according to a gesture of at least one hand of the user in space. At this time, the 3D curved network consists of a plurality of lines, and each line can be defined between two vertices. Here, each line may be a straight line or a curved line.
  • the electronic device 100 can create a 3D curved network for automobile design, as shown in FIG. 2 .
  • FIGS. 3 and 4 are conceptual diagrams for explaining gestures used in the electronic device 100 according to various embodiments.
  • gestures may be based on pinch gestures and grab gestures.
  • a pinch gesture can be formed by two fingers of one hand, and a grab gesture can be formed by five fingers of one hand. Based on this, gestures can include loose-pinch gestures, tight-pinch gestures, loose-grab gestures, and tight-grab gestures. there is.
  • two fingers may be spaced apart from each other in a loose-pinch gesture
  • two fingers may be spaced apart from each other in a tight-pinch gesture.
  • the dog's fingers may be pressed together.
  • the user can make a loose-pinch gesture, such as holding a small virtual ball between two fingers in space, and a tight-pinch gesture, such as holding an even smaller virtual ball between two fingers in space.
  • the electronic device 100 displays a cursor corresponding to the vertex and at least one control point adjacent to the cursor. You can.
  • the cursor can impose restrictions on the position of the corresponding vertex.
  • the cursor may be in the shape of a sphere.
  • the electronic device 100 may enable modification of the position of the vertex.
  • At least some of the five fingers may be spaced apart from each other in the loose-grab gesture, and as shown in (d) of FIG. 3, in the tight-grab gesture.
  • a gesture five fingers may be pressed against each other.
  • the user can make a loose-grab gesture between five fingers in space, such as holding a small cylinder within the grasp, and a tight-grab gesture in space, such as holding a much smaller cylinder within the grasp. You can take it.
  • the electronic device 100 displays a cursor corresponding to the vertex and at least one control point adjacent to the cursor. can do.
  • the cursor can impose restrictions on the position and normal of the corresponding vertex.
  • the cursor may be in the shape of a cylinder.
  • the electronic device 100 may enable modification of the position and normal of the vertex.
  • FIGS. 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, and 16 are diagrams of the electronic device 100 according to various embodiments. These are illustrations to explain two-hand interaction based on the gestures of Figures 3 and 4.
  • the electronic device 100 can generate a straight line in space. Specifically, as shown in (a) of FIG. 5, the electronic device 100 can detect a tight-pinch gesture for each of the user's two hands. In this case, the electronic device 100 may generate vertices at the positions of both hands and create straight lines connecting the vertices. In some embodiments, the electronic device 100 generates a straight line only when the distance between the two hands is less than or equal to a predetermined distance, and when the distance between the hands exceeds the predetermined distance, the electronic device 100 generates a straight line. -You can also ignore the pinch gesture. Additionally, as shown in (b) of FIG.
  • the electronic device 100 may extend the corresponding straight line by moving vertices to the positions of both hands. At this time, as shown in (c) of FIG. 5, when the tight-pinch gesture is released, the electronic device 100 can maintain the corresponding straight line in space.
  • the electronic device 100 can generate a curve in space. Specifically, as shown in (a) of FIG. 6, the electronic device 100 can detect a tight-grab gesture at each of the vertices on a straight line for both hands of the user. In this case, as shown in (b) of FIG. 6, as the directions of both hands are switched, the electronic device 100 may bend a straight line to create a curve. At this time, as shown in (c) of FIG. 6, when the tight-grab gesture is released, the electronic device 100 can maintain the corresponding curve in space.
  • the electronic device 100 can remove lines from space. Specifically, as shown in (a) of FIG. 7 , the electronic device 100 may detect a tight-grab gesture at each vertex on a line for both hands of the user. In this case, as shown in (b) of FIG. 7, the gap between both hands is reduced to a predetermined distance or less, and when the corresponding tight-grab gesture is released as shown in (c) of FIG. 7, the electronic device (100) can remove the line from space.
  • Figure 7 shows an example in which curves are removed, but similarly, straight lines will also be removed.
  • the electronic device 100 can change lines in space. Specifically, as shown in (a) of FIG. 8, the electronic device 100 may detect a tight-pinch gesture at one vertex on a line for one hand of the user. In this case, as shown in (b) of FIG. 8, as the hand moves, the electronic device 100 may move the corresponding vertex. Here, the electronic device 100 can change the corresponding line while maintaining the normal line at the corresponding vertex. In other words, the line is connected to another vertex, so it can change as the vertex moves. At this time, as shown in (c) of FIG. 8, when the tight-pinch gesture is released, the electronic device 100 can maintain the corresponding line.
  • Figure 8 shows an example in which a curve is changed, but similarly, a straight line will also be changed.
  • the electronic device 100 can change lines in space. Specifically, as shown in (a) of FIG. 9 , the electronic device 100 may detect a tight-grab gesture at one vertex on a line for one hand of the user. In this case, as shown in (b) of FIG. 9, as the hand moves, the electronic device 100 may move the corresponding vertex. Here, the electronic device 100 can change the corresponding line along with the normal line at the corresponding vertex. In other words, the line is connected to another vertex, so it can change as the vertex moves. At this time, as shown in (c) of FIG. 9, when the tight-grab gesture is released, the electronic device 100 can maintain the corresponding line.
  • Figure 9 shows an example in which a curve is changed, but similarly, a straight line will also be changed.
  • the electronic device 100 can connect lines in space. Specifically, as shown in (a) of FIG. 10, the electronic device 100 may detect a tight-pinch gesture at one vertex on a line for one hand of the user. Through this, the electronic device 100 can move the corresponding vertex as the hand moves. Here, the electronic device 100 can change the corresponding line while maintaining the normal line at the corresponding vertex. And, as shown in (b) of FIG. 10, when the corresponding vertex is moved to another vertex on another line, the electronic device 100 may merge the corresponding vertex with the other vertex and connect the corresponding line to the other line. At this time, as shown in (c) of FIG. 10, when the tight-pinch gesture is released, the electronic device 100 can maintain the corresponding line.
  • Figure 10 shows an example in which curves are connected, but similarly, curves and straight lines may be connected, or straight lines may be connected.
  • the electronic device 100 can divide one line into two lines in space. Specifically, as shown in (a) of FIG. 11, the electronic device 100 can detect a tight-pinch gesture within a line for one hand of the user. In this case, as shown in (b) of FIG. 11, the electronic device 100 may generate a vertex at the position of the hand on the line. As a result, the line can be divided into two lines with the vertex in between. At this time, as shown in (c) of FIG. 11, when the tight-pinch gesture is released, the electronic device 100 can maintain the corresponding lines.
  • Figure 11 shows an example in which one curve is divided into two curves, but similarly, one straight line will be divided into two straight lines.
  • the electronic device 100 can rearrange lines in space. Specifically, as shown in (a) of FIG. 12, the electronic device 100 can detect a tight-grab gesture within a line for one hand of the user. In this case, as shown in (b) of FIG. 12, the electronic device 100 may move the line as the hand moves, or rotate the line as the hand rotates. Here, the line can be moved or rotated without deformation. If the line in question forms a closed figure with at least one other line, the electronic device 100 can move or rotate the entire figure without deformation as the hand moves. At this time, as shown in (c) of FIG. 12, when the tight-grab gesture is released, the electronic device 100 can maintain the corresponding line.
  • the electronic device 100 can separate a line from a vertex in space. Specifically, as shown in (a) of FIG. 13, the electronic device 100 detects a loose-pinch gesture at one vertex for one hand of the user (e.g., the non-dominant hand (NDH)), For the user's other hand (e.g., dominant hand (DH)), a tight-grab gesture can be detected on a line connected to that vertex. In this case, as shown in (b) of FIG. 13, as the other hand moves, the electronic device 100 may separate the corresponding line from the corresponding vertex. Here, as the other hand moves, the line will also move, and the electronic device 100 may create a new vertex at the exposed end of the line. At this time, as shown in (c) of FIG. 13, when the loose-pinch gesture and the tight-grab gesture are released, the electronic device 100 can maintain the corresponding line.
  • a loose-pinch gesture at one vertex for one hand of the user
  • DH dominant hand
  • the electronic device 100 can separate a vertex from a line in space. Specifically, as shown in (a) of FIG. 14, the electronic device 100 detects a loose-grab gesture in one line for one hand of the user (e.g., non-dominant hand (NDH)), For the user's other hand (e.g. the dominant hand (DH)), tight-pinch gestures can be detected at the vertices connected to that line. In this case, as shown in (b) of FIG. 14, as the other hand moves, the electronic device 100 may separate the corresponding vertex from the corresponding line. Here, as the other hand moves, the corresponding vertex will also move, and the electronic device 100 may create a new vertex at the exposed end of the line.
  • NDH non-dominant hand
  • DH dominant hand
  • the electronic device 100 can change the line connected to the vertex based on the vertex in space. Specifically, as shown in (a) of FIG. 15 , the electronic device 100 may detect a loose-pinch gesture at the vertex for one hand (eg, non-dominant hand (NDH)) of the user. In this case, the electronic device 100 may display a cursor indicating the position of the vertex and at least one control point adjacent to the cursor. Then, as shown in (b) of FIG. 15, the electronic device 100 may detect a tight-pinch gesture at the control point for the user's other hand (eg, dominant hand (DH)). In this case, as shown in (c) of FIG.
  • NDH non-dominant hand
  • the electronic device 100 may change the line connected to the vertex as the other hand moves.
  • the electronic device 100 may maintain the position of the vertex and change the normal line at the vertex to correspond to the virtual line connecting the vertex and the control point.
  • the electronic device 100 can maintain the corresponding vertex and the corresponding line.
  • the electronic device 100 can change the line connected to the vertex based on the vertex in space. Specifically, as shown in (a) of FIG. 16, the electronic device 100 may detect a loose-grab gesture at the vertex for one hand (eg, non-dominant hand (NDH)) of the user. In this case, the electronic device 100 may display a cursor indicating the position and normal of the vertex and at least one control point adjacent to the cursor. Then, as shown in (b) of FIG. 16, the electronic device 100 may detect a tight-pinch gesture at the control point for the user's other hand (eg, dominant hand (DH)). In this case, as shown in (c) of FIG.
  • NDH non-dominant hand
  • the electronic device 100 may change the line connected to the vertex as the other hand moves.
  • the electronic device 100 can maintain the normal line at the vertex.
  • the electronic device 100 can maintain the corresponding vertex and the corresponding line.
  • the electronic device 100 can create a virtual reality 3D curved network using the user's two-handed interaction.
  • the electronic device 100 may create a virtual 3D curved network based on at least one hand gesture of the user on the computer.
  • Gestures are based on pinch gestures and grab gestures and may include loose-pinch gestures, tight-pinch gestures, loose-grab gestures, and tight-grab gestures. That is, the electronic device 100 can create a 3D curved network in space by creating and modifying lines according to a gesture of at least one hand of the user.
  • FIG. 17 is a flowchart illustrating a method of operating the electronic device 100 according to various embodiments.
  • the electronic device 100 may detect at least one hand gesture of the user in space in step 210. Specifically, while the user is wearing the electronic device 100, the processor 170 may detect at least one hand gesture of the user on the computer. At this time, when the electronic device 100 is implemented as a near-eye display device, the processor 170 captures an image in front of the user through the camera module 110 and monitors at least one hand of the user within the image. You can. Here, when at least one hand of the user makes a predetermined gesture, the processor 170 may detect it. As described with reference to Figures 3 and 4, gestures are based on pinch gestures and grab gestures and may include loose-pinch gestures, tight-pinch gestures, loose-grab gestures, and tight-grab gestures. .
  • the electronic device 100 may create a virtual 3D curved network according to at least one hand gesture of the user in space. Specifically, as described with reference to FIGS. 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, and 16, the processor 170 ) can create a new line or modify a created line according to a gesture of at least one hand of the user.
  • each line can be defined to connect two vertices, and each line can be a straight line or a curve. If the operation of the electronic device 100 to create the 3D curved network does not end in step 230, the electronic device 100 may repeatedly perform steps 210 and 220 to continuously create the 3D curved network. Through this, the 3D curved network can be composed of multiple lines.
  • a user can intuitively create a 3D curved network using two-handed interaction in virtual reality through the electronic device 100.
  • the electronic device 100 allows the user to easily create and modify lines by directly viewing them in real size in virtual reality through gestures with both hands. Therefore, 3D curved networks can be created with high expressiveness and precision in virtual reality.
  • the present disclosure provides a method and device for producing a virtual reality 3D curved network using two-handed interaction.
  • a method of creating a virtual reality 3D curved network using two-handed interaction of an electronic device 100 includes detecting a gesture of at least one hand of a user in space (step 210), and generating a plurality of gestures according to the gesture in space. It may include a step (step 220) of creating a 3D curved network composed of lines, where each line is defined between two vertices.
  • the gesture may be based on a pinch gesture with two fingers and a grab gesture with five fingers.
  • the gesture may include a loose-pinch gesture with two fingers spaced apart from each other, a tight-pinch gesture with two fingers pressed against each other, and at least some of the five fingers spaced apart from each other. It may include a loose-grab gesture and a tight-grab gesture in which five fingers are pressed against each other.
  • the step of creating a 3D curve network is to generate vertices at the positions of both hands when a tight-pinch gesture is detected for each of the user's two hands and create a straight line connecting the vertices. It may include the step of (see FIG. 5).
  • creating a 3D curved network may include extending a straight line while moving vertices to the positions of the hands as the spacing between the hands increases (see FIG. 5 ).
  • the step of creating a 3D curve network is to create a curve by bending the straight line as the directions of both hands are switched when a tight-grab gesture is detected at each of the vertices on the straight line for both hands of the user. It may include a generating step (see FIG. 6).
  • the step of creating a 3D curved network is that when a tight-grab gesture is detected at each of the vertices on the line for both hands of the user, the gap between the two hands is reduced to a predetermined distance or less.
  • a step of removing the line may be included (see FIG. 7).
  • the step of creating a 3D curved network includes, when a tight-pinch gesture is detected at one vertex on a line for one hand of the user, moving the vertex as one hand moves to create a vertex. It may include a step of changing the line while maintaining the normal line (see FIG. 8).
  • the step of creating a 3D curve network includes, when a tight-grab gesture is detected at one vertex on a line for one hand of the user, moving the vertex as one hand moves to create a vertex. It may include a step of changing the line along with the normal line (see FIG. 9).
  • creating a 3D curved network may include connecting a line to another line while merging the vertex to another vertex if the vertex is moved to another vertex on another line. (See Figure 10).
  • the step of creating a 3D curve network includes, when a tight-pinch gesture is detected within a line for one hand of the user, creating a vertex at the position of one hand on the line, thereby creating a line. It may include dividing into two straight lines or two curves (see FIG. 11).
  • creating the 3D curved network may include moving the line as one hand moves when a tight-grab gesture is detected within the line for one hand of the user. (see Figure 12).
  • creating the 3D curved network may include rotating the line as one hand rotates when a tight-grab gesture is detected within the line for one hand of the user. (see Figure 12).
  • creating a 3D curved network includes detecting a loose-pinch gesture at one vertex for one hand of the user, and a tight-pinch gesture at a line connecting the vertices for the other hand of the user.
  • a grab is detected, the step of separating the connected line from the vertex while moving the connected line as the other hand moves (see FIG. 13).
  • creating a 3D curved network includes detecting a loose-grab gesture in one line for one hand of the user and a tight-grab gesture at a vertex connected to the line for the other hand of the user.
  • a pinch gesture is detected, the step of separating the connected vertices from the line while moving the connected vertices as the other hand moves (see FIG. 14).
  • creating a 3D curved network includes, when a loose-pinch gesture is detected at a vertex for one hand of the user, a cursor indicating the position of the vertex and at least one control point adjacent to the cursor. displaying, and when a tight-pinch gesture is detected at the control point for the user's other hand, the normal at the vertex changes correspondingly to the virtual line connecting the vertex and the control point as the other hand moves. It may include the step of changing the connected line (see FIG. 15).
  • creating a 3D curved network includes, when a loose-grab gesture is detected at a vertex for one hand of the user, a cursor indicating the position and normal of the vertex and at least one adjacent to the cursor. displaying a control point, and when a tight-pinch gesture is detected at the control point for the user's other hand, changing the line connected to the vertex while maintaining the normal at the vertex as the other hand moves. There is (see Figure 16).
  • the electronic device 100 for creating a virtual reality 3D curved network using two-handed interaction uses the camera module 110, the display module 140, and the camera module 110 to capture at least the user's image in space.
  • a processor configured to detect a gesture of a hand and, through the display module 140, create a 3D curved network consisting of a plurality of lines according to the gesture in space, where each line is defined between two vertices. It can be included.
  • the system described above may be implemented with hardware components, software components, and/or a combination of hardware components and software components.
  • the systems and components described in the embodiments include a processor, a controller, an arithmetic logic unit (ALU), a digital signal processor, a microcomputer, a field programmable gate array (FPGA), and a programmable logic unit (PLU).
  • ALU arithmetic logic unit
  • FPGA field programmable gate array
  • PLU programmable logic unit
  • It may be implemented using one or more general-purpose or special-purpose computers, such as a logic unit, microprocessor, or any other device capable of executing and responding to instructions.
  • the processing device may execute an operating system (OS) and one or more software applications running on the operating system. Additionally, a processing device may access, store, manipulate, process, and generate data in response to the execution of software.
  • OS operating system
  • a processing device may access, store, manipulate, process, and generate data in response to the execution of software.
  • a single processing device may be described as being used; however, those skilled in the art will understand that a processing device includes multiple processing elements and/or multiple types of processing elements. It can be seen that it may include.
  • a processing device may include multiple processors or one processor and one controller. Additionally, other processing configurations, such as parallel processors, are possible.
  • Software may include a computer program, code, instructions, or a combination of one or more of these, which may configure a processing unit to operate as desired, or may be processed independently or collectively. You can command the device.
  • the software and/or data may be embodied in any type of machine, component, physical device, computer storage medium or device for the purpose of being interpreted by or providing instructions or data to the processing device. there is.
  • Software may be distributed over networked computer systems and stored or executed in a distributed manner.
  • Software and data may be stored on one or more computer-readable recording media.
  • Methods according to various embodiments may be implemented in the form of program instructions that can be executed through various computer means and recorded on a computer-readable medium.
  • the medium may continuously store a computer-executable program, or temporarily store it for execution or download.
  • the medium may be a variety of recording or storage means in the form of a single or several pieces of hardware combined. It is not limited to a medium directly connected to a computer system and may be distributed over a network. Examples of media include magnetic media such as hard disks, floppy disks, and magnetic tapes, optical recording media such as CD-ROMs and DVDs, magneto-optical media such as floptical disks, And there may be something configured to store program instructions, including ROM, RAM, flash memory, etc. Additionally, examples of other media include recording or storage media managed by app stores that distribute applications, sites or servers that supply or distribute various other software, etc.
  • a component e.g. a first
  • another component e.g. a second
  • the component is connected to the other component. It may be connected directly to a component or may be connected through another component (e.g., a third component).
  • module used in this document includes a unit comprised of hardware, software, or firmware, and may be used interchangeably with terms such as logic, logic block, component, or circuit, for example.
  • a module may be an integrated part, a minimum unit that performs one or more functions, or a part thereof.
  • a module may be comprised of an application-specific integrated circuit (ASIC).
  • ASIC application-specific integrated circuit
  • each component (eg, module or program) of the described components may include a single entity or a plurality of entities.
  • one or more of the components or steps described above may be omitted, or one or more other components or steps may be added.
  • multiple components eg, modules or programs
  • the integrated component may perform one or more functions of each component of the plurality of components identically or similarly to those performed by the corresponding component of the plurality of components prior to integration.
  • steps performed by a module, program, or other component may be executed sequentially, in parallel, iteratively, or heuristically, or one or more of the steps may be executed in a different order, omitted, or , or one or more other steps may be added.

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

The present invention relates to a method and device for producing a virtual reality 3D curve network using bimanual interaction, wherein a gesture made by at least one hand of a user is detected in space and a 3D curve network composed of a plurality of lines each defined by two vertexes is produced. The gesture may be based on a pinch gesture made by two fingers and a grab gesture made by five fingers.

Description

양손 인터랙션을 이용한 가상현실 3D 곡선 네트워크 제작 방법 및 장치Method and device for producing a virtual reality 3D curved network using two-handed interaction
본 개시는 양손 인터랙션을 이용한 가상현실 3D 곡선 네트워크 제작 방법 및 장치에 관한 것이다. This disclosure relates to a method and device for producing a virtual reality 3D curved network using two-handed interaction.
본 특허는 KAIST 대규모 융합연구소 운영사업의 지원을 받아 수행된 연구이다.This patent is research conducted with support from KAIST's large-scale convergence research center operation project.
가상현실(virtual reality; VR)은 사용자가 객체들을 실제 크기들로 직접 볼 수 있게 하며, 이는 3D 콘텐트 제작에 유용하다. 그러한 몰입형 환경에서는, 3D 곡선들을 공중에 자유롭게 그리는 방식이 그 뛰어난 표현력으로 인해 널리 사용되고 있다. 그러나, 이 방식은 정밀도가 낮기 때문에 정교한 곡선들을 그리는 데 어려움이 있다. Virtual reality (VR) allows users to see objects directly at actual size, which is useful for 3D content creation. In such immersive environments, the method of freely drawing 3D curves in the air is widely used due to its excellent expressiveness. However, because this method has low precision, it is difficult to draw precise curves.
본 개시는 높은 표현력과 정밀도로 가상현실에서 3D 곡선들을 생성하는 새로운 방식을 제안한다. This disclosure proposes a new method for generating 3D curves in virtual reality with high expressiveness and precision.
본 개시는 가상현실에서 양손 인터랙션를 이용하여 직관적으로 3D 곡선 네트워크를 제작하는 방법 및 장치를 제공한다. This disclosure provides a method and device for intuitively creating a 3D curved network using two-handed interaction in virtual reality.
본 개시에 따르면, 전자 장치의 양손 인터랙션을 이용한 가상현실 3D 곡선 네트워크 제작 방법은, 공간 상에서 사용자의 적어도 하나의 손의 제스처를 감지하는 단계, 및 상기 공간 상에서 상기 제스처에 따라 복수의 선(line)들로 이루어지고, 각 선이 두 개의 정점(vertex)들로 정의되는 3D 곡선 네트워크를 제작하는 단계를 포함하고, 상기 제스처는 두 개의 손가락들에 의한 핀치(pinch) 제스처 및 다섯 개의 손가락들에 의한 그랩(grab) 제스처를 기반으로 할 수 있다.According to the present disclosure, a method of creating a virtual reality 3D curved network using two-handed interaction of an electronic device includes detecting a gesture of at least one hand of a user in space, and forming a plurality of lines according to the gesture in the space. and creating a 3D curved network, where each line is defined by two vertices, wherein the gesture is a pinch gesture with two fingers and a pinch gesture with five fingers. It can be based on the grab gesture.
본 개시에 따르면, 양손 인터랙션을 이용한 가상현실 3D 곡선 네트워크 제작을 위한 전자 장치는, 카메라 모듈, 표시 모듈, 및 상기 카메라 모듈을 통해, 공간 상에서 사용자의 적어도 하나의 손의 제스처를 감지하고, 상기 표시 모듈을 통해, 상기 공간 상에서 상기 제스처에 따라 복수의 선들로 이루어지고, 각 선이 두 개의 정점들 사이에서 정의되는 3D 곡선 네트워크를 제작하도록 구성되는 프로세서 포함하고, 상기 제스처는 두 개의 손가락들에 의한 핀치 제스처 및 다섯 개의 손가락들에 의한 그랩 제스처를 기반으로 할 수 있다. According to the present disclosure, an electronic device for creating a virtual reality 3D curved network using two-handed interaction detects a gesture of at least one hand of a user in space through a camera module, a display module, and the camera module, and displays the display. A processor configured to create, via a module, a 3D curved network in the space in accordance with the gesture, consisting of a plurality of lines, each line defined between two vertices, wherein the gesture is performed using two fingers. It can be based on a pinch gesture and a grab gesture with five fingers.
본 개시에 따르면, 사용자가 전자 장치를 통해 가상현실에서 양손 인터랙션을 이용하여 직관적으로 3D 곡선 네트워크를 제작할 수 있다. 구체적으로, 전자 장치는 사용자가 양손의 제스처를 통해 가상현실에서 실제 크기들로 선들을 직접 보면서 용이하게 생성 및 수정할 수 있게 한다. 따라서, 가상현실에서 3D 곡선 네트워크가 높은 표현력과 정밀도로 생성될 수 있다. According to the present disclosure, a user can intuitively create a 3D curved network using two-handed interaction in virtual reality through an electronic device. Specifically, the electronic device allows the user to easily create and modify lines by directly viewing them at actual sizes in virtual reality through gestures with both hands. Therefore, 3D curved networks can be created with high expressiveness and precision in virtual reality.
도 1은 다양한 실시예들에 따른 전자 장치를 도시하는 블록도이다. 1 is a block diagram illustrating an electronic device according to various embodiments.
도 2는 다양한 실시예들에 따른 전자 장치의 동작 특징을 설명하기 위한 예시도이다.Figure 2 is an example diagram for explaining operation characteristics of an electronic device according to various embodiments.
도 3 및 도 4는 다양한 실시예들에 따른 전자 장치에서 이용하는 제스처를 설명하기 위한 개념도이다.3 and 4 are conceptual diagrams for explaining gestures used in electronic devices according to various embodiments.
도 5, 도 6, 도 7, 도 8, 도 9, 도 10, 도 11, 도 12, 도 13, 도 14, 도 15, 및 도 16은 다양한 실시예들에 따른 전자 장치의 도 3 및 도 4의 제스처를 기반으로 하는 양손 인터랙션을 설명하기 위한 예시도들이다.FIGS. 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, and 16 are diagrams of electronic devices according to various embodiments of the present invention. These are example diagrams to explain two-hand interaction based on the gesture of 4.
도 17은 다양한 실시예들에 따른 전자 장치의 동작 방법을 도시하는 순서도이다.FIG. 17 is a flowchart illustrating a method of operating an electronic device according to various embodiments.
이하, 본 개시의 다양한 실시예들이 첨부된 도면을 참조하여 설명된다. Hereinafter, various embodiments of the present disclosure are described with reference to the attached drawings.
이하에서, 지배적인 손(dominant hand; DH)은 양손 중에서 사용자가 주로 사용하는 손을 나타내고, 비지배적인 손(non-dominant hand; NDH)은 양손 중에서 사용자가 주로 사용하지 않는 손을 나타낼 수 있다. 예를 들어, 사용자가 오른손잡이인 경우, 지배적인 손은 오른손이고, 비지배적인 손은 왼손일 수 있다. 한편, 사용자가 왼손잡이인 경우, 지배적인 손은 왼손이고, 비지배적인 손은 오른손일 수 있다.Hereinafter, the dominant hand (DH) may represent the hand that the user primarily uses among both hands, and the non-dominant hand (NDH) may represent the hand that the user does not primarily use among both hands. . For example, if the user is right-handed, the dominant hand may be the right hand and the non-dominant hand may be the left hand. Meanwhile, if the user is left-handed, the dominant hand may be the left hand, and the non-dominant hand may be the right hand.
도 1은 다양한 실시예들에 따른 전자 장치(100)를 도시하는 블록도이다. 도 2는 다양한 실시예들에 따른 전자 장치(100)의 동작 특징을 설명하기 위한 예시도이다. FIG. 1 is a block diagram illustrating an electronic device 100 according to various embodiments. FIG. 2 is an example diagram for explaining operation characteristics of the electronic device 100 according to various embodiments.
도 1을 참조하면, 양손 인터랙션을 이용한 가상현실 3D 곡선 네트워크를 제작하기 위한 전자 장치(100)가 제공될 수 있다. 이 때, 전자 장치(100)는 사용자의 얼굴 또는 머리에 착용 가능한 근안 디스플레이(near-eye display; NED) 장치로 구현될 수 있다. 예를 들면, 근안 디스플레이 장치는 스마트 안경(smart glasses) 또는 헤드 마운트 디스플레이(head mount display; HMD) 장치 중 적어도 하나를 포함할 수 있다. Referring to FIG. 1, an electronic device 100 may be provided for creating a virtual reality 3D curved network using two-handed interaction. At this time, the electronic device 100 may be implemented as a near-eye display (NED) device that can be worn on the user's face or head. For example, the near-eye display device may include at least one of smart glasses or a head mounted display (HMD) device.
전자 장치(100)는 카메라 모듈(110), 통신 모듈(120), 입력 모듈(320), 표시 모듈(140), 오디오 모듈(150), 메모리(160), 또는 프로세서(170) 중 적어도 하나를 포함할 수 있다. 어떤 실시예들에서, 전자 장치(100)의 구성 요소들 중 적어도 하나가 생략될 수 있으며, 전자 장치(100)에 적어도 하나의 다른 구성 요소가 추가될 수 있다. 어떤 실시예들에서, 전자 장치(100)의 구성 요소들 중 적어도 두 개가 하나의 통합된 회로로 구현될 수 있다. The electronic device 100 includes at least one of a camera module 110, a communication module 120, an input module 320, a display module 140, an audio module 150, a memory 160, or a processor 170. It can be included. In some embodiments, at least one of the components of the electronic device 100 may be omitted, and at least one other component may be added to the electronic device 100. In some embodiments, at least two of the components of the electronic device 100 may be implemented as one integrated circuit.
카메라 모듈(110)은 영상을 촬영할 수 있다. 이 때, 전자 장치(100)가 근안 디스플레이 장치로 구현되는 경우, 카메라 모듈(110)은 전자 장치(100)를 착용한 사용자에 대해 전방의 영상을 촬영할 수 있다. 예를 들면, 카메라 모듈(110)은 적어도 하나의 렌즈, 적어도 하나의 이미지 센서, 적어도 하나의 이미지 시그널 프로세서, 및 적어도 하나의 플래시를 포함할 수 있다.The camera module 110 can capture images. At this time, when the electronic device 100 is implemented as a near-eye display device, the camera module 110 can capture a front image of the user wearing the electronic device 100. For example, the camera module 110 may include at least one lens, at least one image sensor, at least one image signal processor, and at least one flash.
통신 모듈(120)은 전자 장치(100)에서 외부 장치(도시되지 않음)와 통신을 수행할 수 있다. 통신 모듈(120)은 전자 장치(100)와 외부 장치 간 통신 채널을 수립하고, 통신 채널을 통하여, 외부 장치와 통신을 수행할 수 있다. 통신 모듈(120)은 유선 통신 모듈 또는 무선 통신 모듈 중 적어도 어느 하나를 포함할 수 있다. 예를 들면, 무선 통신 모듈은 원거리 통신망 또는 근거리 통신망 중 적어도 어느 하나를 통하여 외부 장치와 통신을 수행할 수 있다. The communication module 120 may perform communication with an external device (not shown) in the electronic device 100. The communication module 120 may establish a communication channel between the electronic device 100 and an external device and perform communication with the external device through the communication channel. The communication module 120 may include at least one of a wired communication module or a wireless communication module. For example, the wireless communication module may communicate with an external device through at least one of a long-distance communication network or a local area communication network.
입력 모듈(130)은 전자 장치(100)의 적어도 하나의 구성 요소에 사용될 신호를 입력할 수 있다. 입력 모듈(130)은, 사용자에 의해 직접적으로 입력되는 신호를 검출하거나, 주변의 변화를 감지하여 신호를 발생하도록 구성될 수 있다. 예를 들면, 입력 모듈(130)은 마이크로폰(microphone), 적어도 하나의 물리 버튼(button), 또는 터치 패드 중 적어도 하나를 포함할 수 있다. 터치 패드는 사용자의 손에 의한 접촉, 즉 터치를 감지하고, 이에 대응하여 터치 신호를 발생하도록 구성될 수 있다. 여기서, 터치 패드는 터치를 감지하도록 설정된 터치 회로(touch circuitry)나 터치에 의해 발생되는 힘의 세기를 측정하도록 설정된 센서 회로 중 적어도 하나를 포함할 수 있다. The input module 130 may input a signal to be used in at least one component of the electronic device 100. The input module 130 may be configured to detect a signal directly input by the user or to generate a signal by detecting changes in the surroundings. For example, the input module 130 may include at least one of a microphone, at least one physical button, or a touch pad. The touch pad may be configured to detect contact by the user's hand, that is, a touch, and generate a touch signal in response. Here, the touch pad may include at least one of a touch circuitry configured to detect a touch or a sensor circuit configured to measure the intensity of force generated by the touch.
표시 모듈(140)은 전자 장치(100)의 외부로 정보를 시각적으로 출력할 수 있다. 구체적으로, 표시 모듈(140)은 시각 콘텐츠를 표시하도록 구성될 수 있다. 이 때, 전자 장치(100)가 근안 디스플레이 장치로 구현되는 경우, 표시 모듈(140)은 전자 장치(100)를 착용한 사용자의 눈 앞에 배치될 수 있다. 표시 모듈(140)은 전자 장치(100)의 종류에 따라 표시되는 방식이 다를 수 있다. 일 예로, 전자 장치(100)가 광학식 투과형(optical see-through)인 경우, 표시 모듈(140)의 적어도 일부는 투명하거나 반투명한 재질로 구성되고, 사용자는 표시 모듈(140)을 통하여 실제 환경을 직접 볼 수 있다. 이러한 경우, 표시 모듈(140)이 시각 콘텐츠를 표시함에 따라, 사용자는 실제 환경과 시각 콘텐츠를 함께 볼 수 있다. 다른 예로, 전자 장치(100)가 비디오 투과형(video see-through)인 경우, 사용자는 표시 모듈(140)을 통하여 제 1 카메라 모듈(111)을 통해 촬영되는 실제 환경의 영상을 볼 수 있다. 이러한 경우, 표시 모듈(140)이 시각 콘텐츠를 표시함에 따라, 사용자는 실제 환경의 영상과 시각 콘텐츠를 함께 볼 수 있다. The display module 140 may visually output information to the outside of the electronic device 100. Specifically, the display module 140 may be configured to display visual content. At this time, when the electronic device 100 is implemented as a near-eye display device, the display module 140 may be placed in front of the eyes of the user wearing the electronic device 100. The display module 140 may have a different display method depending on the type of electronic device 100. For example, when the electronic device 100 is an optical see-through type, at least a portion of the display module 140 is made of a transparent or translucent material, and the user can view the actual environment through the display module 140. You can see it for yourself. In this case, as the display module 140 displays the visual content, the user can view the real environment and the visual content together. As another example, if the electronic device 100 is a video see-through type, the user can view images of the actual environment captured through the first camera module 111 through the display module 140. In this case, as the display module 140 displays the visual content, the user can view the image of the real environment and the visual content together.
오디오 모듈(150)은 전자 장치(100)의 외부로 정보를 청각적으로 출력할 수 있다. 예를 들면, 오디오 모듈(150)은 스피커 또는 리시버 중 적어도 하나를 포함할 수 있다.The audio module 150 can output information audibly to the outside of the electronic device 100. For example, the audio module 150 may include at least one of a speaker or a receiver.
메모리(160)는 전자 장치(100)의 적어도 하나의 구성 요소에 의해 사용되는 다양한 데이터를 저장할 수 있다. 예를 들면, 메모리(160)는 휘발성 메모리 또는 비휘발성 메모리 중 적어도 하나를 포함할 수 있다. 데이터는 적어도 하나의 프로그램 및 이와 관련된 입력 데이터 또는 출력 데이터를 포함할 수 있다. 프로그램은 메모리(160)에 적어도 하나의 명령을 포함하는 소프트웨어로서 저장될 수 있으며, 운영 체제, 미들 웨어 또는 어플리케이션 중 적어도 하나를 포함할 수 있다. The memory 160 may store various data used by at least one component of the electronic device 100. For example, the memory 160 may include at least one of volatile memory and non-volatile memory. Data may include at least one program and input or output data related thereto. The program may be stored in the memory 160 as software including at least one command, and may include at least one of an operating system, middleware, or an application.
프로세서(170)는 메모리(160)의 프로그램을 실행하여, 전자 장치(100)의 적어도 하나의 구성 요소를 제어할 수 있다. 이를 통해, 프로세서(170)는 데이터 처리 또는 연산을 수행할 수 있다. 이 때, 프로세서(170)는 메모리(160)에 저장된 명령을 실행할 수 있다. The processor 170 may execute a program in the memory 160 to control at least one component of the electronic device 100. Through this, the processor 170 can process data or perform calculations. At this time, the processor 170 may execute instructions stored in the memory 160.
다양한 실시예들에 따르면, 전자 장치(100)는 사용자의 양손 인터랙션을 이용하여 가상현실 3D 곡선 네트워크를 제작할 수 있다. 구체적으로, 사용자가 전자 장치(100)를 착용한 동안, 전자 장치(100)는 공간 상에서 사용자의 적어도 하나의 손의 제스처에 따라 가상의 3D 곡선 네트워크를 제작할 수 있다. 이 때, 3D 곡선 네트워크는 복수의 선들로 이루어지고, 각 선은 두 개의 정점들 사이에서 정의될 수 있다. 여기서, 각 선은 직선(straight line) 또는 곡선(curved line)일 수 있다. 예를 들어, 전자 장치(100)는, 도 2에 도시된 바와 같이, 자동차 설계를 위한 3D 곡선 네트워크를 제작할 수 있다. According to various embodiments, the electronic device 100 can create a virtual reality 3D curved network using the user's two-handed interaction. Specifically, while the user is wearing the electronic device 100, the electronic device 100 may create a virtual 3D curved network according to a gesture of at least one hand of the user in space. At this time, the 3D curved network consists of a plurality of lines, and each line can be defined between two vertices. Here, each line may be a straight line or a curved line. For example, the electronic device 100 can create a 3D curved network for automobile design, as shown in FIG. 2 .
도 3 및 도 4는 다양한 실시예들에 따른 전자 장치(100)에서 이용하는 제스처를 설명하기 위한 개념도들이다. FIGS. 3 and 4 are conceptual diagrams for explaining gestures used in the electronic device 100 according to various embodiments.
도 3을 참조하면, 제스처는 핀치 제스처 및 그랩 제스처를 기반으로 할 수 있다. 핀치 제스처는 한 손의 두 개의 손가락들에 의해 형성되고, 그랩 제스처는 한 손의 다섯 개의 손가락들에 의해 형성될 수 있다. 이를 기반으로, 제스처는 루즈-핀치(loose-pinch) 제스처, 타이트-핀치(tight-pinch) 제스처, 루즈-그랩(loose-grab) 제스처, 및 타이트-그랩(tight-grab) 제스처를 포함할 수 있다. Referring to Figure 3, gestures may be based on pinch gestures and grab gestures. A pinch gesture can be formed by two fingers of one hand, and a grab gesture can be formed by five fingers of one hand. Based on this, gestures can include loose-pinch gestures, tight-pinch gestures, loose-grab gestures, and tight-grab gestures. there is.
구체적으로, 도 3의 (a)에 도시된 바와 같이, 루즈-핀치 제스처에서는 두 개의 손가락들이 서로로부터 이격되어 있을 수 있고, 도 3의 (b)에 도시된 바와 같이, 타이트-핀치 제스처에서는 두 개의 손가락들이 서로에 밀착되어 있을 수 있다. 사용자는 공간 상에서 두 개의 손가락들 사이에 작은 가상의 공을 집고 있는 것과 같은 루즈-핀치 제스처를 취할 수 있으며, 공간 상에서 두 개의 손가락들 사이에 훨씬 더 작은 가상의 공을 집고 있는 것과 같은 타이트-핀치 제스처를 취할 수 있다. 도 4의 (a)에 도시된 바와 같이, 사용자가 하나의 정점에서 루즈-핀치 제스처를 취하는 경우, 전자 장치(100)는 해당 정점에 대응하여 커서와 커서에 인접한 적어도 하나의 제어 포인트를 표시할 수 있다. 이 때, 커서는 해당 정점의 위치에 대해 제약을 가할 수 있다. 여기서, 커서는 구의 형태일 수 있다. 한편, 도 4의 (b)에 도시된 바와 같이, 사용자가 하나의 정점에서 타이트-핀치 제스처를 취하는 경우, 전자 장치(100)는 해당 정점의 위치에 대해 수정 가능하게 할 수 있다. Specifically, as shown in (a) of FIG. 3, two fingers may be spaced apart from each other in a loose-pinch gesture, and as shown in (b) of FIG. 3, two fingers may be spaced apart from each other in a tight-pinch gesture. The dog's fingers may be pressed together. The user can make a loose-pinch gesture, such as holding a small virtual ball between two fingers in space, and a tight-pinch gesture, such as holding an even smaller virtual ball between two fingers in space. You can make gestures. As shown in (a) of FIG. 4, when the user makes a loose-pinch gesture at one vertex, the electronic device 100 displays a cursor corresponding to the vertex and at least one control point adjacent to the cursor. You can. At this time, the cursor can impose restrictions on the position of the corresponding vertex. Here, the cursor may be in the shape of a sphere. Meanwhile, as shown in (b) of FIG. 4, when the user makes a tight-pinch gesture at one vertex, the electronic device 100 may enable modification of the position of the vertex.
한편, 도 3의 (c)에 도시된 바와 같이, 루즈-그랩 제스처에서는 다섯 개의 손가락들 중 적어도 일부가 서로로부터 이격되어 있을 수 있고, 도 3의 (d)에 도시된 바와 같이, 타이트-그랩 제스처에서는 다섯 개의 손가락들이 서로에 밀착되어 있을 수 있다. 여기서, 사용자는 공간 상에서 다섯 개의 손가락들 사이, 즉, 손아귀 내에 작은 원기둥을 쥐고 있는 것과 같은 루즈-그랩 제스처를 취할 수 있으며, 공간 상에서 손아귀 내에 훨씬 더 작은 원기둥을 쥐고 있는 것과 같은 타이트-그랩 제스처를 취할 수 있다. 도 4의 (c)에 도시된 바와 같이, 사용자가 하나의 정점에서 루즈-그랩 제스처를 취하는 경우, 전자 장치(100)는 해당 정점에 대응하여 커서와 커서에 인접한 적어도 하나의 제어 포힌트를 표시할 수 있다. 이 때, 커서는 해당 정점의 위치 및 법선에 대해 제약을 가할 수 있다. 여기서, 커서는 원기둥의 형태일 수 있다. 한편, 도 4의 (d)에 도시된 바와 같이, 사용자가 하나의 정점에서 타이트-그랩 제스처를 취하는 경우, 전자 장치(100)는 해당 정점의 위치와 법선에 대해 수정 가능하게 할 수 있다. Meanwhile, as shown in (c) of FIG. 3, at least some of the five fingers may be spaced apart from each other in the loose-grab gesture, and as shown in (d) of FIG. 3, in the tight-grab gesture. In a gesture, five fingers may be pressed against each other. Here, the user can make a loose-grab gesture between five fingers in space, such as holding a small cylinder within the grasp, and a tight-grab gesture in space, such as holding a much smaller cylinder within the grasp. You can take it. As shown in (c) of FIG. 4, when the user makes a loose-grab gesture at one vertex, the electronic device 100 displays a cursor corresponding to the vertex and at least one control point adjacent to the cursor. can do. At this time, the cursor can impose restrictions on the position and normal of the corresponding vertex. Here, the cursor may be in the shape of a cylinder. Meanwhile, as shown in (d) of FIG. 4, when the user makes a tight-grab gesture at one vertex, the electronic device 100 may enable modification of the position and normal of the vertex.
도 5, 도 6, 도 7, 도 8, 도 9, 도 10, 도 11, 도 12, 도 13, 도 14, 도 15, 및 도 16은 다양한 실시예들에 따른 전자 장치(100)의 도 3 및 도 4의 제스처를 기반으로 하는 양손 인터랙션을 설명하기 위한 예시도들이다. FIGS. 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, and 16 are diagrams of the electronic device 100 according to various embodiments. These are illustrations to explain two-hand interaction based on the gestures of Figures 3 and 4.
도 5를 참조하면, 전자 장치(100)는 공간 상에 직선을 생성할 수 있다. 구체적으로, 도 5의 (a)에 도시된 바와 같이, 전자 장치(100)는 사용자의 양손 각각에 대해 타이트-핀치 제스처를 감지할 수 있다. 이러한 경우, 전자 장치(100)는 양손의 위치들에 정점들을 생성하고, 정점들을 연결하는 직선을 생성할 수 있다. 일부 실시예들에서는, 양손 사이의 간격이 미리 정해진 간격 이하인 경우에만, 전자 장치(100)가 직선을 생성하고, 양손 사이의 간각이 미리 정해진 간격을 초과하는 경우에는, 전자 장치(100)가 타이트-핀치 제스처를 무시할 수도 있다. 추가적으로, 도 5의 (b)에 도시된 바와 같이, 양손 사이의 간격이 증가되면, 전자 장치(100)는 양손의 위치들로 정점들을 이동시키면서 해당 직선을 연장시킬 수 있다. 이 때, 도 5의 (c)에 도시된 바와 같이, 해당 타이트-핀치 제스처가 해제되면, 전자 장치(100)는 공간 상에서 해당 직선을 유지할 수 있다. Referring to FIG. 5, the electronic device 100 can generate a straight line in space. Specifically, as shown in (a) of FIG. 5, the electronic device 100 can detect a tight-pinch gesture for each of the user's two hands. In this case, the electronic device 100 may generate vertices at the positions of both hands and create straight lines connecting the vertices. In some embodiments, the electronic device 100 generates a straight line only when the distance between the two hands is less than or equal to a predetermined distance, and when the distance between the hands exceeds the predetermined distance, the electronic device 100 generates a straight line. -You can also ignore the pinch gesture. Additionally, as shown in (b) of FIG. 5 , when the distance between both hands increases, the electronic device 100 may extend the corresponding straight line by moving vertices to the positions of both hands. At this time, as shown in (c) of FIG. 5, when the tight-pinch gesture is released, the electronic device 100 can maintain the corresponding straight line in space.
도 6을 참조하면, 전자 장치(100)는 공간 상에 곡선을 생성할 수 있다. 구체적으로, 도 6의 (a)에 도시된 바와 같이, 전자 장치(100)는 사용자의 양손에 대해 직선 상의 정점들 각각에서 타이트-그랩 제스처를 감지할 수 있다. 이러한 경우, 도 6의 (b)에 도시된 바와 같이, 양손들의 방향들이 전환됨에 따라, 전자 장치(100)는 직선을 구부려서 곡선을 생성할 수 있다. 이 때, 도 6의 (c)에 도시된 바와 같이, 해당 타이트-그랩 제스처가 해제되면, 전자 장치(100)는 공간 상에서 해당 곡선을 유지할 수 있다. Referring to FIG. 6, the electronic device 100 can generate a curve in space. Specifically, as shown in (a) of FIG. 6, the electronic device 100 can detect a tight-grab gesture at each of the vertices on a straight line for both hands of the user. In this case, as shown in (b) of FIG. 6, as the directions of both hands are switched, the electronic device 100 may bend a straight line to create a curve. At this time, as shown in (c) of FIG. 6, when the tight-grab gesture is released, the electronic device 100 can maintain the corresponding curve in space.
도 7을 참조하면, 전자 장치(100)는 공간 상에서 선을 제거할 수 있다. 구체적으로, 도 7의 (a)에 도시된 바와 같이, 전자 장치(100)는 사용자의 양손에 대해 선 상의 정점들 각각에서 타이트-그랩 제스처를 감지할 수 있다. 이러한 경우, 도 7의 (b)에 도시된 바와 같이, 양손 사이의 간격이 미리 정해진 간격 이하로 감소되고, 도 7의 (c)에 도시된 바와 같이 해당 타이트-그랩 제스처가 해제되면, 전자 장치(100)는 공간 상에서 해당 선을 제거할 수 있다. 도 7에서는 곡선이 제거되는 예가 도시되어 있지만, 이와 유사하게 직선도 제거될 것이다. Referring to FIG. 7, the electronic device 100 can remove lines from space. Specifically, as shown in (a) of FIG. 7 , the electronic device 100 may detect a tight-grab gesture at each vertex on a line for both hands of the user. In this case, as shown in (b) of FIG. 7, the gap between both hands is reduced to a predetermined distance or less, and when the corresponding tight-grab gesture is released as shown in (c) of FIG. 7, the electronic device (100) can remove the line from space. Figure 7 shows an example in which curves are removed, but similarly, straight lines will also be removed.
도 8을 참조하면, 전자 장치(100)는 공간 상에서 선을 변경시킬 수 있다. 구체적으로, 도 8의 (a)에 도시된 바와 같이, 전자 장치(100)는 사용자의 한 손에 대해 선 상의 하나의 정점에서 타이트-핀치 제스처를 감지할 수 있다. 이러한 경우, 도 8의 (b)에 도시된 바와 같이, 해당 손이 이동함에 따라, 전자 장치(100)는 해당 정점을 이동시킬 수 있다. 여기서, 전자 장치(100)는 해당 정점에서의 법선을 유지하면서, 해당 선을 변경시킬 수 있다. 즉, 해당 선은 다른 정점에 연결되어 있으므로, 해당 정점이 이동됨에 따라 변경될 수 있다. 이 때, 도 8의 (c)에 도시된 바와 같이, 해당 타이트-핀치 제스처가 해제되면, 전자 장치(100)는 해당 선을 유지할 수 있다. 도 8에서는 곡선이 변경되는 예가 도시되어 있지만, 이와 유사하게 직선도 변경될 것이다. Referring to FIG. 8, the electronic device 100 can change lines in space. Specifically, as shown in (a) of FIG. 8, the electronic device 100 may detect a tight-pinch gesture at one vertex on a line for one hand of the user. In this case, as shown in (b) of FIG. 8, as the hand moves, the electronic device 100 may move the corresponding vertex. Here, the electronic device 100 can change the corresponding line while maintaining the normal line at the corresponding vertex. In other words, the line is connected to another vertex, so it can change as the vertex moves. At this time, as shown in (c) of FIG. 8, when the tight-pinch gesture is released, the electronic device 100 can maintain the corresponding line. Figure 8 shows an example in which a curve is changed, but similarly, a straight line will also be changed.
도 9를 참조하면, 전자 장치(100)는 공간 상에서 선을 변경시킬 수 있다. 구체적으로, 도 9의 (a)에 도시된 바와 같이, 전자 장치(100)는 사용자의 한 손에 대해 선 상의 하나의 정점에서 타이트-그랩 제스처를 감지할 수 있다. 이러한 경우, 도 9의 (b)에 도시된 바와 같이, 해당 손이 이동함에 따라, 전자 장치(100)는 해당 정점을 이동시킬 수 있다. 여기서, 전자 장치(100)는 해당 정점에서의 법선과 함께, 해당 선을 변경시킬 수 있다. 즉, 해당 선은 다른 정점에 연결되어 있으므로, 해당 정점이 이동됨에 따라 변경될 수 있다. 이 때, 도 9의 (c)에 도시된 바와 같이, 해당 타이트-그랩 제스처가 해제되면, 전자 장치(100)는 해당 선을 유지할 수 있다. 도 9에서는 곡선이 변경되는 예가 도시되어 있지만, 이와 유사하게 직선도 변경될 것이다. Referring to FIG. 9, the electronic device 100 can change lines in space. Specifically, as shown in (a) of FIG. 9 , the electronic device 100 may detect a tight-grab gesture at one vertex on a line for one hand of the user. In this case, as shown in (b) of FIG. 9, as the hand moves, the electronic device 100 may move the corresponding vertex. Here, the electronic device 100 can change the corresponding line along with the normal line at the corresponding vertex. In other words, the line is connected to another vertex, so it can change as the vertex moves. At this time, as shown in (c) of FIG. 9, when the tight-grab gesture is released, the electronic device 100 can maintain the corresponding line. Figure 9 shows an example in which a curve is changed, but similarly, a straight line will also be changed.
도 10을 참조하면, 전자 장치(100)는 공간 상에서 선들을 연결할 수 있다. 구체적으로, 도 10의 (a)에 도시된 바와 같이, 전자 장치(100)는 사용자의 한 손에 대해 선 상의 하나의 정점에서 타이트-핀치 제스처를 감지할 수 있다. 이를 통해, 전자 장치(100)는 해당 손이 이동함에 따라, 전자 장치(100)는 해당 정점을 이동시킬 수 있다. 여기서, 전자 장치(100)는 해당 정점에서의 법선을 유지하면서, 해당 선을 변경시킬 수 있다. 그리고, 도 10의 (b)에 도시된 바와 같이, 해당 정점이 다른 선 상의 다른 정점으로 이동되면, 전자 장치(100)는 해당 정점을 다른 정점에 병합하면서 해당 선을 다른 선에 연결할 수 있다. 이 때, 도 10의 (c)에 도시된 바와 같이, 해당 타이트-핀치 제스처가 해제되면, 전자 장치(100)는 해당 선을 유지할 수 있다. 도 10에서는 곡선들이 연결되는 예가 도시되어 있지만, 이와 유사하게 곡선과 직선이 연결되거나, 직선들이 연결될 것이다. Referring to FIG. 10, the electronic device 100 can connect lines in space. Specifically, as shown in (a) of FIG. 10, the electronic device 100 may detect a tight-pinch gesture at one vertex on a line for one hand of the user. Through this, the electronic device 100 can move the corresponding vertex as the hand moves. Here, the electronic device 100 can change the corresponding line while maintaining the normal line at the corresponding vertex. And, as shown in (b) of FIG. 10, when the corresponding vertex is moved to another vertex on another line, the electronic device 100 may merge the corresponding vertex with the other vertex and connect the corresponding line to the other line. At this time, as shown in (c) of FIG. 10, when the tight-pinch gesture is released, the electronic device 100 can maintain the corresponding line. Figure 10 shows an example in which curves are connected, but similarly, curves and straight lines may be connected, or straight lines may be connected.
도 11을 참조하면, 전자 장치(100)는 공간 상에서 하나의 선을 두 개의 선들로 구분할 수 있다. 구체적으로, 도 11의 (a)에 도시된 바와 같이, 전자 장치(100)는 사용자의 한 손에 대해 선 내에서 타이트-핀치 제스처를 감지할 수 있다. 이러한 경우, 도 11의 (b)에 도시된 바와 같이, 전자 장치(100)는 해당 선 상에서 해당 손의 위치에 정점을 생성할 수 있다. 이로써, 해당 선은 해당 정점을 사이에 두고 두 개의 선들로 구분될 수 있다. 이 때, 도 11의 (c)에 도시된 바와 같이, 해당 타이트-핀치 제스처가 해제되면, 전자 장치(100)는 해당 선들을 유지할 수 있다. 도 11에서는 하나의 곡선이 두 개의 곡선들로 구분되는 예가 도시되어 있지만, 이와 유사하게 하나의 직선이 두 개의 직선들로 구분될 것이다. Referring to FIG. 11, the electronic device 100 can divide one line into two lines in space. Specifically, as shown in (a) of FIG. 11, the electronic device 100 can detect a tight-pinch gesture within a line for one hand of the user. In this case, as shown in (b) of FIG. 11, the electronic device 100 may generate a vertex at the position of the hand on the line. As a result, the line can be divided into two lines with the vertex in between. At this time, as shown in (c) of FIG. 11, when the tight-pinch gesture is released, the electronic device 100 can maintain the corresponding lines. Figure 11 shows an example in which one curve is divided into two curves, but similarly, one straight line will be divided into two straight lines.
도 12를 참조하면, 전자 장치(100)는 공간 상에서 선을 재배치시킬 수 있다. 구체적으로, 도 12의 (a)에 도시된 바와 같이, 전자 장치(100)는 사용자의 한 손에 대해 선 내에서 타이트-그랩 제스처를 감지할 수 있다. 이러한 경우, 도 12의 (b)에 도시된 바와 같이, 전자 장치(100)는 해당 손이 이동함에 따라, 해당 선을 이동시키거나, 해당 손이 회전함에 따라, 해당 선을 회전시킬 수 있다. 여기서, 해당 선은 변형 없이 이동되거나 회전될 수 있다. 해당 선이 적어도 하나의 다른 선과 함께 폐쇄된 도형을 이루고 있는 경우, 전자 장치(100)는 해당 손이 이동함에 따라 도형 전체를 변형 없이 이동시키거나 회전시킬 수 있다. 이 때, 도 12의 (c)에 도시된 바와 같이, 해당 타이트-그랩 제스처가 해제되면, 전자 장치(100)는 해당 선을 유지할 수 있다. Referring to FIG. 12, the electronic device 100 can rearrange lines in space. Specifically, as shown in (a) of FIG. 12, the electronic device 100 can detect a tight-grab gesture within a line for one hand of the user. In this case, as shown in (b) of FIG. 12, the electronic device 100 may move the line as the hand moves, or rotate the line as the hand rotates. Here, the line can be moved or rotated without deformation. If the line in question forms a closed figure with at least one other line, the electronic device 100 can move or rotate the entire figure without deformation as the hand moves. At this time, as shown in (c) of FIG. 12, when the tight-grab gesture is released, the electronic device 100 can maintain the corresponding line.
도 13을 참조하면, 전자 장치(100)는 공간 상에서 정점으로부터 선을 분리시킬 수 있다. 구체적으로, 도 13의 (a)에 도시된 바와 같이, 전자 장치(100)는 사용자의 한 손(예: 비지배적인 손(NDH))에 대해 하나의 정점에서 루즈-핀치 제스처를 감지하고, 사용자의 다른 손(예: 지배적인 손(DH))에 대해 해당 정점에 연결된 선에서 타이트-그랩 제스처를 감지할 수 있다. 이러한 경우, 도 13의 (b)에 도시된 바와 같이, 다른 손이 이동함에 따라, 전자 장치(100)는 해당 정점으로부터 해당 선을 분리시킬 수 있다. 여기서, 다른 손이 이동됨에 따라 해당 선도 이동될 것이며, 전자 장치(100)는 해당 선의 노출된 단부에 새로운 정점을 생성할 수 있다. 이 때, 도 13의 (c)에 도시된 바와 같이, 해당 루즈-핀치 제스처와 해당 타이트-그랩 제스처가 해제되면, 전자 장치(100)는 해당 선을 유지할 수 있다. Referring to FIG. 13, the electronic device 100 can separate a line from a vertex in space. Specifically, as shown in (a) of FIG. 13, the electronic device 100 detects a loose-pinch gesture at one vertex for one hand of the user (e.g., the non-dominant hand (NDH)), For the user's other hand (e.g., dominant hand (DH)), a tight-grab gesture can be detected on a line connected to that vertex. In this case, as shown in (b) of FIG. 13, as the other hand moves, the electronic device 100 may separate the corresponding line from the corresponding vertex. Here, as the other hand moves, the line will also move, and the electronic device 100 may create a new vertex at the exposed end of the line. At this time, as shown in (c) of FIG. 13, when the loose-pinch gesture and the tight-grab gesture are released, the electronic device 100 can maintain the corresponding line.
도 14를 참조하면, 전자 장치(100)는 공간 상에서 선으로부터 정점을 분리시킬 수 있다. 구체적으로, 도 14의 (a)에 도시된 바와 같이, 전자 장치(100)는 사용자의 한 손(예: 비지배적인 손(NDH))에 대해 하나의 선에서 루즈-그랩 제스처를 감지하고, 사용자의 다른 손(예: 지배적인 손(DH))에 대해 해당 선에 연결된 정점에서 타이트-핀치 제스처를 감지할 수 있다. 이러한 경우, 도 14의 (b)에 도시된 바와 같이, 다른 손이 이동함에 따라, 전자 장치(100)는 해당 선으로부터 해당 정점을 분리시킬 수 있다. 여기서, 다른 손이 이동됨에 따라 해당 정점도 이동될 것이며, 전자 장치(100)는 해당 선의 노출된 단부에 새로운 정점을 생성할 수 있다. 그리고, 해당 정점에 적어도 하나의 다른 선이 연결되어 있으면, 해당 정점과 함께, 다른 선도 이동될 것이다. 이 때, 도 14의 (c)에 도시된 바와 같이, 해당 루즈-그랩 제스처와 해당 타이트-핀치 제스처가 해제되면, 전자 장치(100)는 해당 정점을 유지할 수 있다. Referring to FIG. 14, the electronic device 100 can separate a vertex from a line in space. Specifically, as shown in (a) of FIG. 14, the electronic device 100 detects a loose-grab gesture in one line for one hand of the user (e.g., non-dominant hand (NDH)), For the user's other hand (e.g. the dominant hand (DH)), tight-pinch gestures can be detected at the vertices connected to that line. In this case, as shown in (b) of FIG. 14, as the other hand moves, the electronic device 100 may separate the corresponding vertex from the corresponding line. Here, as the other hand moves, the corresponding vertex will also move, and the electronic device 100 may create a new vertex at the exposed end of the line. And, if at least one other line is connected to that vertex, the other line will be moved along with that vertex. At this time, as shown in (c) of FIG. 14, when the loose-grab gesture and the tight-pinch gesture are released, the electronic device 100 can maintain the corresponding vertex.
도 15를 참조하면, 전자 장치(100)는 공간 상에서 정점을 기준으로 정점에 연결된 선을 변경시킬 수 있다. 구체적으로, 도 15의 (a)에 도시된 바와 같이, 전자 장치(100)는 사용자의 한 손(예: 비지배적인 손(NDH))에 대해 정점에서 루즈-핀치 제스처를 감지할 수 있다. 이러한 경우, 전자 장치(100)는 정점의 위치를 나타내는 커서와 커서에 인접한 적어도 하나의 제어 포인트를 표시할 수 있다. 그런 다음, 도 15의 (b)에 도시된 바와 같이, 전자 장치(100)는 사용자의 다른 손(예: 지배적인 손(DH))에 대해 제어 포인트에서 타이트-핀치 제스처를 감지할 수 있다. 이러한 경우, 도 15의 (c)에 도시된 바와 같이, 전자 장치(100)는 다른 손이 이동함에 따라, 정점에 연결된 선을 변경시킬 수 있다. 여기서, 전자 장치(100)는 정점의 위치를 유지하면서, 정점에서의 법선을 정점과 제어 포인트를 연결하는 가상 선에 대응하여 변경할 수 있다. 이 때, 도시되지는 않았으나, 해당 루즈-핀치 제스처와 해당 타이트-핀치 제스처가 해제되면, 전자 장치(100)는 해당 정점과 해당 선을 유지할 수 있다.Referring to FIG. 15, the electronic device 100 can change the line connected to the vertex based on the vertex in space. Specifically, as shown in (a) of FIG. 15 , the electronic device 100 may detect a loose-pinch gesture at the vertex for one hand (eg, non-dominant hand (NDH)) of the user. In this case, the electronic device 100 may display a cursor indicating the position of the vertex and at least one control point adjacent to the cursor. Then, as shown in (b) of FIG. 15, the electronic device 100 may detect a tight-pinch gesture at the control point for the user's other hand (eg, dominant hand (DH)). In this case, as shown in (c) of FIG. 15, the electronic device 100 may change the line connected to the vertex as the other hand moves. Here, the electronic device 100 may maintain the position of the vertex and change the normal line at the vertex to correspond to the virtual line connecting the vertex and the control point. At this time, although not shown, when the loose-pinch gesture and the tight-pinch gesture are released, the electronic device 100 can maintain the corresponding vertex and the corresponding line.
도 16을 참조하면, 전자 장치(100)는 공간 상에서 정점을 기준으로 정점에 연결된 선을 변경시킬 수 있다. 구체적으로, 도 16의 (a)에 도시된 바와 같이, 전자 장치(100)는 사용자의 한 손(예: 비지배적인 손(NDH))에 대해 정점에서 루즈-그랩 제스처를 감지할 수 있다. 이러한 경우, 전자 장치(100)는 정점의 위치 및 법선을 나타내는 커서와 커서에 인접한 적어도 하나의 제어 포인트를 표시할 수 있다. 그런 다음, 도 16의 (b)에 도시된 바와 같이, 전자 장치(100)는 사용자의 다른 손(예: 지배적인 손(DH))에 대해 제어 포인트에서 타이트-핀치 제스처를 감지할 수 있다. 이러한 경우, 도 16의 (c)에 도시된 바와 같이, 전자 장치(100)는 다른 손이 이동함에 따라, 정점에 연결된 선을 변경시킬 수 있다. 여기서, 전자 장치(100)는 정점에서의 법선을 유지할 수 있다. 이 때, 도시되지는 않았으나, 해당 루즈-그랩 제스처와 해당 타이트-핀치 제스처가 해제되면, 전자 장치(100)는 해당 정점과 해당 선을 유지할 수 있다. Referring to FIG. 16, the electronic device 100 can change the line connected to the vertex based on the vertex in space. Specifically, as shown in (a) of FIG. 16, the electronic device 100 may detect a loose-grab gesture at the vertex for one hand (eg, non-dominant hand (NDH)) of the user. In this case, the electronic device 100 may display a cursor indicating the position and normal of the vertex and at least one control point adjacent to the cursor. Then, as shown in (b) of FIG. 16, the electronic device 100 may detect a tight-pinch gesture at the control point for the user's other hand (eg, dominant hand (DH)). In this case, as shown in (c) of FIG. 16, the electronic device 100 may change the line connected to the vertex as the other hand moves. Here, the electronic device 100 can maintain the normal line at the vertex. At this time, although not shown, when the loose-grab gesture and the tight-pinch gesture are released, the electronic device 100 can maintain the corresponding vertex and the corresponding line.
이와 같이, 전자 장치(100)는 사용자의 양손 인터랙션을 이용하여 가상현실 3D 곡선 네트워크를 제작할 수 있다. 구체적으로, 사용자가 전자 장치(100)를 착용한 동안, 전자 장치(100)는 공산 상에서 사용자의 적어도 하나의 손의 제스처에 따라 가상의 3D 곡선 네트워크를 제작할 수 있다. 제스처는 핀치 제스처 및 그랩 제스처를 기반으로 하며, 루즈-핀치 제스처, 타이트-핀치 제스처, 루즈-그랩 제스처, 및 타이트-그랩 제스처를 포함할 수 있다. 즉, 전자 장치(100)는 사용자의 적어도 하나의 손의 제스처에 따라 선들을 생성 및 수정함으로써, 공간 상에 3D 곡선 네트워크를 제작할 수 있다. In this way, the electronic device 100 can create a virtual reality 3D curved network using the user's two-handed interaction. Specifically, while the user is wearing the electronic device 100, the electronic device 100 may create a virtual 3D curved network based on at least one hand gesture of the user on the computer. Gestures are based on pinch gestures and grab gestures and may include loose-pinch gestures, tight-pinch gestures, loose-grab gestures, and tight-grab gestures. That is, the electronic device 100 can create a 3D curved network in space by creating and modifying lines according to a gesture of at least one hand of the user.
도 17은 다양한 실시예들에 따른 전자 장치(100)의 동작 방법을 도시하는 순서도이다. FIG. 17 is a flowchart illustrating a method of operating the electronic device 100 according to various embodiments.
도 17을 참조하면, 전자 장치(100)는 210 단계에서 공간 상에서 사용자의 적어도 하나의 손의 제스처를 감지할 수 있다. 구체적으로, 사용자가 전자 장치(100)를 착용한 동안, 프로세서(170)는 공산 상에서 사용자의 적어도 하나의 손의 제스처를 감지할 수 있다. 이 때, 전자 장치(100)가 근안 디스플레이 장치로 구현되는 경우, 프로세서(170)는 카메라 모듈(110)을 통해 사용자의 전방의 영상을 촬영하면서, 영상 내에서 사용자의 적어도 하나의 손을 모니터링할 수 있다. 여기서, 사용자의 적어도 하나의 손이 미리 정해진 제스처를 취하는 경우, 프로세서(170)가 이를 검출할 수 있다. 도 3 및 도 4을 참조하여 설명된 바와 같이, 제스처는 핀치 제스처 및 그랩 제스처를 기반으로 하며, 루즈-핀치 제스처, 타이트-핀치 제스처, 루즈-그랩 제스처, 및 타이트-그랩 제스처를 포함할 수 있다.Referring to FIG. 17, the electronic device 100 may detect at least one hand gesture of the user in space in step 210. Specifically, while the user is wearing the electronic device 100, the processor 170 may detect at least one hand gesture of the user on the computer. At this time, when the electronic device 100 is implemented as a near-eye display device, the processor 170 captures an image in front of the user through the camera module 110 and monitors at least one hand of the user within the image. You can. Here, when at least one hand of the user makes a predetermined gesture, the processor 170 may detect it. As described with reference to Figures 3 and 4, gestures are based on pinch gestures and grab gestures and may include loose-pinch gestures, tight-pinch gestures, loose-grab gestures, and tight-grab gestures. .
다음으로, 전자 장치(100)는 220 단계에서 공간 상에서 사용자의 적어도 하나의 손의 제스처에 따라 가상의 3D 곡선 네트워크를 제작할 수 있다. 구체적으로, 도 5, 도 6, 도 7, 도 8, 도 9, 도 10, 도 11, 도 12, 도 13, 도 14, 도 15, 및 도 16을 참조하여 설명된 바와 같이, 프로세서(170)는 사용자의 적어도 하나의 손의 제스처에 따라 새로운 선을 생성하거나, 생성된 선을 수정할 수 있다. 여기서, 각 선은 두 개의 정점들을 연결하도록 정의될 수 있으며, 각 선은 직선 또는 곡선일 수 있다. 230 단계에서 3D 곡선 네트워크를 제작하기 위한 전자 장치(100)의 동작이 종료되지 않으면, 전자 장치(100)는 210 단계와 220 단계를 반복적으로 수행하여 계속적으로 3D 곡선 네트워크를 제작할 수 있다. 이를 통해, 3D 곡선 네트워크는 복수의 선들로 이루어질 수 있다. Next, in step 220, the electronic device 100 may create a virtual 3D curved network according to at least one hand gesture of the user in space. Specifically, as described with reference to FIGS. 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, and 16, the processor 170 ) can create a new line or modify a created line according to a gesture of at least one hand of the user. Here, each line can be defined to connect two vertices, and each line can be a straight line or a curve. If the operation of the electronic device 100 to create the 3D curved network does not end in step 230, the electronic device 100 may repeatedly perform steps 210 and 220 to continuously create the 3D curved network. Through this, the 3D curved network can be composed of multiple lines.
본 개시에 따르면, 사용자가 전자 장치(100)를 통해 가상현실에서 양손 인터랙션을 이용하여 직관적으로 3D 곡선 네트워크를 제작할 수 있다. 구체적으로, 전자 장치(100)는 사용자가 양손의 제스처를 통해 가상현실에서 실제 크기들로 선들을 직접 보면서 용이하게 생성 및 수정할 수 있게 한다. 따라서, 가상현실에서 3D 곡선 네트워크가 높은 표현력과 정밀도로 생성될 수 있다.According to the present disclosure, a user can intuitively create a 3D curved network using two-handed interaction in virtual reality through the electronic device 100. Specifically, the electronic device 100 allows the user to easily create and modify lines by directly viewing them in real size in virtual reality through gestures with both hands. Therefore, 3D curved networks can be created with high expressiveness and precision in virtual reality.
요컨대, 본 개시는 양손 인터랙션을 이용한 가상현실 3D 곡선 네트워크 제작 방법 및 장치를 제공한다. In short, the present disclosure provides a method and device for producing a virtual reality 3D curved network using two-handed interaction.
본 개시에 따르면, 전자 장치(100)의 양손 인터랙션을 이용한 가상현실 3D 곡선 네트워크 제작 방법은, 공간 상에서 사용자의 적어도 하나의 손의 제스처를 감지하는 단계(210 단계), 및 공간 상에서 제스처에 따라 복수의 선들로 이루어지고, 각 선이 두 개의 정점들 사이에서 정의되는 3D 곡선 네트워크를 제작하는 단계(220 단계)를 포함할 수 있다.According to the present disclosure, a method of creating a virtual reality 3D curved network using two-handed interaction of an electronic device 100 includes detecting a gesture of at least one hand of a user in space (step 210), and generating a plurality of gestures according to the gesture in space. It may include a step (step 220) of creating a 3D curved network composed of lines, where each line is defined between two vertices.
다양한 실시예들에서, 제스처는 두 개의 손가락들에 의한 핀치 제스처 및 다섯 개의 손가락들에 의한 그랩 제스처를 기반으로 할 수 있다.In various embodiments, the gesture may be based on a pinch gesture with two fingers and a grab gesture with five fingers.
다양한 실시예들에서, 제스처는, 두 개의 손가락들이 서로로부터 이격되어 있는 루즈-핀치 제스처, 두 개의 손가락들이 서로에 밀착되어 있는 타이트-핀치 제스처, 다섯 개의 손가락들 중 적어도 일부가 서로로부터 이격되어 있는 루즈-그랩 제스처, 및 다섯 개의 손가락들이 서로에 밀착되어 있는 타이트-그랩 제스처를 포함할 수 있다.In various embodiments, the gesture may include a loose-pinch gesture with two fingers spaced apart from each other, a tight-pinch gesture with two fingers pressed against each other, and at least some of the five fingers spaced apart from each other. It may include a loose-grab gesture and a tight-grab gesture in which five fingers are pressed against each other.
다양한 실시예들에서, 3D 곡선 네트워크를 제작하는 단계(220 단계)는, 사용자의 양손 각각에 대해 타이트-핀치 제스처가 감지되면, 양손의 위치들에 정점들을 생성하고, 정점들을 연결하는 직선을 생성하는 단계를 포함할 수 있다(도 5 참조). In various embodiments, the step of creating a 3D curve network (step 220) is to generate vertices at the positions of both hands when a tight-pinch gesture is detected for each of the user's two hands and create a straight line connecting the vertices. It may include the step of (see FIG. 5).
다양한 실시예들에서, 3D 곡선 네트워크를 제작하는 단계(220 단계)는, 양손 사이의 간격이 증가되면, 양손의 위치들로 정점들을 이동시키면서 직선을 연장시키는 단계를 포함할 수 있다(도 5 참조).In various embodiments, creating a 3D curved network (step 220) may include extending a straight line while moving vertices to the positions of the hands as the spacing between the hands increases (see FIG. 5 ).
다양한 실시예들에서, 3D 곡선 네트워크를 제작하는 단계(220 단계)는, 사용자의 양손에 대해 직선 상의 정점들 각각에서 타이트-그랩 제스처가 감지되면, 양손의 방향들이 전환됨에 따라 직선을 구부려서 곡선을 생성하는 단계를 포함할 수 있다(도 6 참조). In various embodiments, the step of creating a 3D curve network (step 220) is to create a curve by bending the straight line as the directions of both hands are switched when a tight-grab gesture is detected at each of the vertices on the straight line for both hands of the user. It may include a generating step (see FIG. 6).
다양한 실시예들에서, 3D 곡선 네트워크를 제작하는 단계(220 단계)는, 사용자의 양손에 대해 선 상의 정점들 각각에서 타이트-그랩 제스처가 감지되면, 양손 사이의 간격이 미리 정해진 간격 이하로 감소됨에 따라 선을 제거하는 단계를 포함할 수 있다(도 7 참조).In various embodiments, the step of creating a 3D curved network (step 220) is that when a tight-grab gesture is detected at each of the vertices on the line for both hands of the user, the gap between the two hands is reduced to a predetermined distance or less. A step of removing the line may be included (see FIG. 7).
다양한 실시예들에서, 3D 곡선 네트워크를 제작하는 단계(220 단계)는, 사용자의 한 손에 대해 선 상의 하나의 정점에서 타이트-핀치 제스처가 감지되면, 한 손이 이동함에 따라 정점을 이동시켜 정점에서의 법선을 유지하면서 선을 변경시키는 단계를 포함할 수 있다(도 8 참조).In various embodiments, the step of creating a 3D curved network (step 220) includes, when a tight-pinch gesture is detected at one vertex on a line for one hand of the user, moving the vertex as one hand moves to create a vertex. It may include a step of changing the line while maintaining the normal line (see FIG. 8).
다양한 실시예들에서, 3D 곡선 네트워크를 제작하는 단계(220 단계)는, 사용자의 한 손에 대해 선 상의 하나의 정점에서 타이트-그랩 제스처가 감지되면, 한 손이 이동함에 따라 정점을 이동시켜 정점에서의 법선과 함께 선을 변경시키는 단계를 포함할 수 있다(도 9 참조).In various embodiments, the step of creating a 3D curve network (step 220) includes, when a tight-grab gesture is detected at one vertex on a line for one hand of the user, moving the vertex as one hand moves to create a vertex. It may include a step of changing the line along with the normal line (see FIG. 9).
다양한 실시예들에서, 3D 곡선 네트워크를 제작하는 단계(220 단계)는, 정점이 다른 선 상의 다른 정점으로 이동되면, 정점을 다른 정점에 병합하면서 선을 다른 선에 연결하는 단계를 포함할 수 있다(도 10 참조).In various embodiments, creating a 3D curved network (step 220) may include connecting a line to another line while merging the vertex to another vertex if the vertex is moved to another vertex on another line. (See Figure 10).
다양한 실시예들에서, 3D 곡선 네트워크를 제작하는 단계(220 단계)는, 사용자의 한 손에 대해 선 내에서 타이트-핀치 제스처가 감지되면, 선 상에서 한 손의 위치에 정점을 생성하여, 선을 두 개의 직선들 또는 두 개의 곡선들로 구분하는 단계를 포함할 수 있다(도 11 참조).In various embodiments, the step of creating a 3D curve network (step 220) includes, when a tight-pinch gesture is detected within a line for one hand of the user, creating a vertex at the position of one hand on the line, thereby creating a line. It may include dividing into two straight lines or two curves (see FIG. 11).
다양한 실시예들에서, 3D 곡선 네트워크를 제작하는 단계(220 단계)는, 사용자의 한 손에 대해 선 내에서 타이트-그랩 제스처가 감지되면, 한 손이 이동함에 따라 선을 이동시키는 단계를 포함할 수 있다(도 12 참조).In various embodiments, creating the 3D curved network (step 220) may include moving the line as one hand moves when a tight-grab gesture is detected within the line for one hand of the user. (see Figure 12).
다양한 실시예들에서, 3D 곡선 네트워크를 제작하는 단계(220 단계)는, 사용자의 한 손에 대해 선 내에서 타이트-그랩 제스처가 감지되면, 한 손이 회전함에 따라 선을 회전시키는 단계를 포함할 수 있다(도 12 참조).In various embodiments, creating the 3D curved network (step 220) may include rotating the line as one hand rotates when a tight-grab gesture is detected within the line for one hand of the user. (see Figure 12).
다양한 실시예들에서, 3D 곡선 네트워크를 제작하는 단계(220 단계)는, 사용자의 한 손에 대해 하나의 정점에서 루즈-핀치 제스처가 감지되고, 사용자의 다른 손에 대해 정점에 연결된 선에서 타이트-그랩이 감지되면, 다른 손이 이동함에 따라 연결된 선을 이동시키면서 정점으로부터 연결된 선을 분리시키는 단계를 포함할 수 있다(도 13 참조).In various embodiments, creating a 3D curved network (step 220) includes detecting a loose-pinch gesture at one vertex for one hand of the user, and a tight-pinch gesture at a line connecting the vertices for the other hand of the user. When a grab is detected, the step of separating the connected line from the vertex while moving the connected line as the other hand moves (see FIG. 13).
다양한 실시예들에서, 3D 곡선 네트워크를 제작하는 단계(220 단계)는, 사용자의 한 손에 대해 하나의 선에서 루즈-그랩 제스처가 감지되고, 사용자의 다른 손에 대해 선에 연결된 정점에서 타이트-핀치 제스처가 감지되면, 다른 손이 이동함에 따라 연결된 정점을 이동시키면서 선으로부터 연결된 정점을 분리시키는 단계를 포함할 수 있다(도 14 참조). In various embodiments, creating a 3D curved network (step 220) includes detecting a loose-grab gesture in one line for one hand of the user and a tight-grab gesture at a vertex connected to the line for the other hand of the user. When a pinch gesture is detected, the step of separating the connected vertices from the line while moving the connected vertices as the other hand moves (see FIG. 14).
다양한 실시예들에서, 3D 곡선 네트워크를 제작하는 단계(220 단계)는, 사용자의 한 손에 대해 정점에서 루즈-핀치 제스처가 감지되면, 정점의 위치를 나타내는 커서와 커서에 인접한 적어도 하나의 제어 포인트를 표시하는 단계, 및 사용자의 다른 손에 대해 제어 포인트에서 타이트-핀치 제스처가 감지되면, 다른 손이 이동함에 따라 정점에서의 법선을 정점과 제어 포인트를 연결하는 가상 선에 대응하여 변경하면서 정점에 연결된 선을 변경시키는 단계를 포함할 수 있다(도 15 참조). In various embodiments, creating a 3D curved network (step 220) includes, when a loose-pinch gesture is detected at a vertex for one hand of the user, a cursor indicating the position of the vertex and at least one control point adjacent to the cursor. displaying, and when a tight-pinch gesture is detected at the control point for the user's other hand, the normal at the vertex changes correspondingly to the virtual line connecting the vertex and the control point as the other hand moves. It may include the step of changing the connected line (see FIG. 15).
다양한 실시예들에서, 3D 곡선 네트워크를 제작하는 단계(220 단계)는, 사용자의 한 손에 대해 정점에서 루즈-그랩 제스처가 감지되면, 정점의 위치 및 법선을 나타내는 커서와 커서에 인접한 적어도 하나의 제어 포인트를 표시하는 단계, 및 사용자의 다른 손에 대해 제어 포인트에서 타이트-핀치 제스처가 감지되면, 다른 손이 이동함에 따라 정점에서의 법선을 유지하면서 정점에 연결된 선을 변경시키는 단계를 포함할 수 있다(도 16 참조).In various embodiments, creating a 3D curved network (step 220) includes, when a loose-grab gesture is detected at a vertex for one hand of the user, a cursor indicating the position and normal of the vertex and at least one adjacent to the cursor. displaying a control point, and when a tight-pinch gesture is detected at the control point for the user's other hand, changing the line connected to the vertex while maintaining the normal at the vertex as the other hand moves. There is (see Figure 16).
본 개시에 따르면, 양손 인터랙션을 이용한 가상현실 3D 곡선 네트워크 제작을 위한 전자 장치(100)는, 카메라 모듈(110), 표시 모듈(140), 및 카메라 모듈(110)을 통해, 공간 상에서 사용자의 적어도 하나의 손의 제스처를 감지하고, 표시 모듈(140)을 통해, 공간 상에서 제스처에 따라 복수의 선들로 이루어지고, 각 선이 두 개의 정점들 사이에서 정의되는 3D 곡선 네트워크를 제작하도록 구성되는 프로세서를 포함할 수 있다.According to the present disclosure, the electronic device 100 for creating a virtual reality 3D curved network using two-handed interaction, uses the camera module 110, the display module 140, and the camera module 110 to capture at least the user's image in space. A processor configured to detect a gesture of a hand and, through the display module 140, create a 3D curved network consisting of a plurality of lines according to the gesture in space, where each line is defined between two vertices. It can be included.
이상에서 설명된 시스템은 하드웨어 구성 요소, 소프트웨어 구성 요소, 및/또는 하드웨어 구성 요소 및 소프트웨어 구성 요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 시스템 및 구성 요소는, 프로세서, 컨트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 어플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 컨트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.The system described above may be implemented with hardware components, software components, and/or a combination of hardware components and software components. For example, the systems and components described in the embodiments include a processor, a controller, an arithmetic logic unit (ALU), a digital signal processor, a microcomputer, a field programmable gate array (FPGA), and a programmable logic unit (PLU). It may be implemented using one or more general-purpose or special-purpose computers, such as a logic unit, microprocessor, or any other device capable of executing and responding to instructions. The processing device may execute an operating system (OS) and one or more software applications running on the operating system. Additionally, a processing device may access, store, manipulate, process, and generate data in response to the execution of software. For ease of understanding, a single processing device may be described as being used; however, those skilled in the art will understand that a processing device includes multiple processing elements and/or multiple types of processing elements. It can be seen that it may include. For example, a processing device may include multiple processors or one processor and one controller. Additionally, other processing configurations, such as parallel processors, are possible.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성 요소(component), 물리적 장치, 컴퓨터 저장 매체 또는 장치에 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.Software may include a computer program, code, instructions, or a combination of one or more of these, which may configure a processing unit to operate as desired, or may be processed independently or collectively. You can command the device. The software and/or data may be embodied in any type of machine, component, physical device, computer storage medium or device for the purpose of being interpreted by or providing instructions or data to the processing device. there is. Software may be distributed over networked computer systems and stored or executed in a distributed manner. Software and data may be stored on one or more computer-readable recording media.
다양한 실시예들에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터-판독 가능 매체에 기록될 수 있다. 이 때, 매체는 컴퓨터로 실행 가능한 프로그램을 계속 저장하거나, 실행 또는 다운로드를 위해 임시 저장하는 것일 수도 있다. 그리고, 매체는 단일 또는 수 개의 하드웨어가 결합된 형태의 다양한 기록수단 또는 저장수단일 수 있는데, 어떤 컴퓨터 시스템에 직접 접속되는 매체에 한정되지 않고, 네트워크 상에 분산 존재하는 것일 수도 있다. 매체의 예시로는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM 및 DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical medium), 및 ROM, RAM, 플래시 메모리 등을 포함하여 프로그램 명령어가 저장되도록 구성된 것이 있을 수 있다. 또한, 다른 매체의 예시로, 어플리케이션을 유통하는 앱 스토어나 기타 다양한 소프트웨어를 공급 내지 유통하는 사이트, 서버 등에서 관리하는 기록매체 내지 저장매체도 들 수 있다.Methods according to various embodiments may be implemented in the form of program instructions that can be executed through various computer means and recorded on a computer-readable medium. At this time, the medium may continuously store a computer-executable program, or temporarily store it for execution or download. In addition, the medium may be a variety of recording or storage means in the form of a single or several pieces of hardware combined. It is not limited to a medium directly connected to a computer system and may be distributed over a network. Examples of media include magnetic media such as hard disks, floppy disks, and magnetic tapes, optical recording media such as CD-ROMs and DVDs, magneto-optical media such as floptical disks, And there may be something configured to store program instructions, including ROM, RAM, flash memory, etc. Additionally, examples of other media include recording or storage media managed by app stores that distribute applications, sites or servers that supply or distribute various other software, etc.
본 문서의 다양한 실시예들 및 이에 사용된 용어들은 본 문서에 기재된 기술을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 해당 실시 예의 다양한 변경, 균등물, 및/또는 대체물을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 구성 요소에 대해서는 유사한 참조 부호가 사용될 수 있다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함할 수 있다. 본 문서에서, "A 또는 B", "A 및/또는 B 중 적어도 하나", "A, B 또는 C" 또는 "A, B 및/또는 C 중 적어도 하나" 등의 표현은 함께 나열된 항목들의 모든 가능한 조합을 포함할 수 있다. "제 1", "제 2", "첫째" 또는 "둘째" 등의 표현들은 해당 구성 요소들을, 순서 또는 중요도에 상관없이 수식할 수 있고, 한 구성 요소를 다른 구성 요소와 구분하기 위해 사용될 뿐 해당 구성 요소들을 한정하지 않는다. 어떤(예: 제 1) 구성 요소가 다른(예: 제 2) 구성 요소에 "(기능적으로 또는 통신적으로) 연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 상기 어떤 구성 요소가 상기 다른 구성 요소에 직접적으로 연결되거나, 다른 구성 요소(예: 제 3 구성 요소)를 통하여 연결될 수 있다.The various embodiments of this document and the terms used herein are not intended to limit the technology described in this document to a specific embodiment, and should be understood to include various changes, equivalents, and/or replacements of the embodiments. In connection with the description of the drawings, similar reference numerals may be used for similar components. Singular expressions may include plural expressions, unless the context clearly indicates otherwise. In this document, expressions such as “A or B”, “at least one of A and/or B”, “A, B or C” or “at least one of A, B and/or C” refer to all of the items listed together. Possible combinations may be included. Expressions such as "first", "second", "first" or "second" can modify the corresponding components regardless of order or importance, and are only used to distinguish one component from another. It does not limit the components. When a component (e.g. a first) component is said to be "connected (functionally or communicatively)" or "connected" to another (e.g. a second) component, it means that the component is connected to the other component. It may be connected directly to a component or may be connected through another component (e.g., a third component).
본 문서에서 사용된 용어 "모듈"은 하드웨어, 소프트웨어 또는 펌웨어로 구성된 유닛을 포함하며, 예를 들면, 로직, 논리 블록, 부품, 또는 회로 등의 용어와 상호 호환적으로 사용될 수 있다. 모듈은, 일체로 구성된 부품 또는 하나 또는 그 이상의 기능을 수행하는 최소 단위 또는 그 일부가 될 수 있다. 예를 들면, 모듈은 ASIC(application-specific integrated circuit)으로 구성될 수 있다. The term “module” used in this document includes a unit comprised of hardware, software, or firmware, and may be used interchangeably with terms such as logic, logic block, component, or circuit, for example. A module may be an integrated part, a minimum unit that performs one or more functions, or a part thereof. For example, a module may be comprised of an application-specific integrated circuit (ASIC).
다양한 실시예들에 따르면, 기술한 구성 요소들의 각각의 구성 요소(예: 모듈 또는 프로그램)는 단수 또는 복수의 개체를 포함할 수 있다. 다양한 실시예들에 따르면, 전술한 해당 구성 요소들 중 하나 이상의 구성 요소들 또는 단계들이 생략되거나, 또는 하나 이상의 다른 구성 요소들 또는 단계들이 추가될 수 있다. 대체적으로 또는 추가적으로, 복수의 구성 요소들(예: 모듈 또는 프로그램)은 하나의 구성 요소로 통합될 수 있다. 이런 경우, 통합된 구성 요소는 복수의 구성 요소들 각각의 구성 요소의 하나 이상의 기능들을 통합 이전에 복수의 구성 요소들 중 해당 구성 요소에 의해 수행되는 것과 동일 또는 유사하게 수행할 수 있다. 다양한 실시예들에 따르면, 모듈, 프로그램 또는 다른 구성 요소에 의해 수행되는 단계들은 순차적으로, 병렬적으로, 반복적으로, 또는 휴리스틱하게 실행되거나, 단계들 중 하나 이상이 다른 순서로 실행되거나, 생략되거나, 또는 하나 이상의 다른 단계들이 추가될 수 있다. According to various embodiments, each component (eg, module or program) of the described components may include a single entity or a plurality of entities. According to various embodiments, one or more of the components or steps described above may be omitted, or one or more other components or steps may be added. Alternatively or additionally, multiple components (eg, modules or programs) may be integrated into a single component. In this case, the integrated component may perform one or more functions of each component of the plurality of components identically or similarly to those performed by the corresponding component of the plurality of components prior to integration. According to various embodiments, steps performed by a module, program, or other component may be executed sequentially, in parallel, iteratively, or heuristically, or one or more of the steps may be executed in a different order, omitted, or , or one or more other steps may be added.

Claims (13)

  1. 전자 장치의 양손 인터랙션을 이용한 가상현실 3D 곡선 네트워크 제작 방법에 있어서, In a method of creating a virtual reality 3D curved network using two-handed interaction of an electronic device,
    공간 상에서 사용자의 적어도 하나의 손의 제스처를 감지하는 단계; 및detecting a gesture of at least one hand of a user in space; and
    상기 공간 상에서 상기 제스처에 따라 복수의 선들로 이루어지고, 각 선이 두 개의 정점들 사이에서 정의되는 3D 곡선 네트워크를 제작하는 단계Creating a 3D curved network consisting of a plurality of lines according to the gesture in the space, where each line is defined between two vertices.
    를 포함하고, Including,
    상기 제스처는 두 개의 손가락들에 의한 핀치 제스처 및 다섯 개의 손가락들에 의한 그랩 제스처를 기반으로 하는,The gesture is based on a pinch gesture with two fingers and a grab gesture with five fingers,
    방법.method.
  2. 제 1 항에 있어서, According to claim 1,
    상기 제스처는, The gesture is,
    상기 두 개의 손가락들이 서로로부터 이격되어 있는 루즈-핀치 제스처, A loose-pinch gesture in which the two fingers are spaced apart from each other,
    상기 두 개의 손가락들이 서로에 밀착되어 있는 타이트-핀치 제스처,A tight-pinch gesture in which the two fingers are pressed against each other,
    상기 다섯 개의 손가락들 중 적어도 일부가 서로로부터 이격되어 있는 루즈-그랩 제스처, 및A loose-grab gesture in which at least some of the five fingers are spaced apart from each other, and
    상기 다섯 개의 손가락들이 서로에 밀착되어 있는 타이트-그랩 제스처Tight-grab gesture with the five fingers pressed against each other
    를 포함하는,Including,
    방법. method.
  3. 제 2 항에 있어서, According to claim 2,
    상기 3D 곡선 네트워크를 제작하는 단계는,The step of producing the 3D curved network is,
    상기 사용자의 양손 각각에 대해 상기 타이트-핀치 제스처가 감지되면, 상기 양손의 위치들에 정점들을 생성하고, 상기 정점들을 연결하는 직선을 생성하는 단계; 또는When the tight-pinch gesture is detected for each of the user's two hands, generating vertices at the positions of the two hands and creating a straight line connecting the vertices; or
    상기 양손 사이의 간격이 증가되면, 상기 양손의 위치들로 상기 정점들을 이동시키면서 상기 직선을 연장시키는 단계When the gap between the hands increases, extending the straight line while moving the vertices to the positions of the hands.
    중 적어도 하나를 포함하는,Containing at least one of
    방법.method.
  4. 제 2 항에 있어서, According to claim 2,
    상기 3D 곡선 네트워크를 제작하는 단계는,The step of producing the 3D curved network is,
    상기 사용자의 양손에 대해 직선 상의 정점들 각각에서 상기 타이트-그랩 제스처가 감지되면, 상기 양손의 방향들이 전환됨에 따라 상기 직선을 구부려서 곡선을 생성하는 단계When the tight-grab gesture is detected at each of the vertices on a straight line for both hands of the user, bending the straight line to create a curve as the directions of both hands are switched.
    를 포함하는,Including,
    방법. method.
  5. 제 2 항에 있어서,According to claim 2,
    상기 3D 곡선 네트워크를 제작하는 단계는,The step of producing the 3D curved network is,
    상기 사용자의 양손에 대해 선 상의 정점들 각각에서 상기 타이트-그랩 제스처가 감지되면, 상기 양손 사이의 간격이 미리 정해진 간격 이하로 감소됨에 따라 상기 선을 제거하는 단계When the tight-grab gesture is detected at each of the vertices on the line for both hands of the user, removing the line as the gap between the hands is reduced to a predetermined distance or less.
    를 포함하는,Including,
    방법.method.
  6. 제 2 항에 있어서,According to claim 2,
    상기 3D 곡선 네트워크를 제작하는 단계는,The step of producing the 3D curved network is,
    상기 사용자의 한 손에 대해 선 상의 하나의 정점에서 상기 타이트-핀치 제스처가 감지되면, 상기 한 손이 이동함에 따라 상기 정점을 이동시켜 상기 정점에서의 법선을 유지하면서 상기 선을 변경시키는 단계; 또는When the tight-pinch gesture is detected at one vertex on a line for one hand of the user, changing the line while maintaining the normal at the vertex by moving the vertex as the one hand moves; or
    상기 정점이 다른 선 상의 다른 정점으로 이동되면, 상기 정점을 상기 다른 정점에 병합하면서 상기 선을 상기 다른 선에 연결하는 단계 When the vertex is moved to another vertex on another line, merging the vertex with the other vertex and connecting the line to the other line.
    중 적어도 하나를 포함하는,Containing at least one of
    방법.method.
  7. 제 2 항에 있어서,According to claim 2,
    상기 3D 곡선 네트워크를 제작하는 단계는,The step of producing the 3D curved network is,
    상기 사용자의 한 손에 대해 선 상의 하나의 정점에서 상기 타이트-그랩 제스처가 감지되면, 상기 한 손이 이동함에 따라 상기 정점을 이동시켜 상기 정점에서의 법선과 함께 상기 선을 변경시키는 단계; When the tight-grab gesture is detected at a vertex on a line with respect to one hand of the user, moving the vertex as the one hand moves to change the line along with the normal at the vertex;
    상기 사용자의 한 손에 대해 선 내에서 상기 타이트-그랩 제스처가 감지되면, 상기 한 손이 이동함에 따라 상기 선을 이동시키는 단계; 또는When the tight-grab gesture is detected within a line for one hand of the user, moving the line as the one hand moves; or
    상기 사용자의 한 손에 대해 선 내에서 상기 타이트-그랩 제스처가 감지되면, 상기 한 손이 회전함에 따라 상기 선을 회전시키는 단계When the tight-grab gesture is detected within a line for one hand of the user, rotating the line as the one hand rotates.
    중 적어도 하나를 포함하는,Containing at least one of
    방법.method.
  8. 제 2 항에 있어서,According to claim 2,
    상기 3D 곡선 네트워크를 제작하는 단계는,The step of producing the 3D curved network is,
    상기 사용자의 한 손에 대해 선 내에서 상기 타이트-핀치 제스처가 감지되면, 상기 선 상에서 상기 한 손의 위치에 정점을 생성하여, 상기 선을 두 개의 직선들 또는 두 개의 곡선들로 구분하는 단계When the tight-pinch gesture is detected within a line for one hand of the user, dividing the line into two straight lines or two curves by creating a vertex at the position of the one hand on the line.
    를 포함하는,Including,
    방법.method.
  9. 제 2 항에 있어서,According to claim 2,
    상기 사용자의 한 손에 대해 하나의 정점에서 상기 루즈-핀치 제스처가 감지되고, 상기 사용자의 다른 손에 대해 상기 정점에 연결된 선에서 상기 타이트-그랩이 감지되면, 상기 다른 손이 이동함에 따라 상기 연결된 선을 이동시키면서 상기 정점으로부터 상기 연결된 선을 분리시키는 단계; 또는When the loose-pinch gesture is detected at one vertex for one hand of the user, and the tight-grab is detected at a line connected to the vertex for the other hand of the user, as the other hand moves, the connected separating the connected line from the vertex while moving the line; or
    상기 사용자의 한 손에 대해 하나의 선에서 상기 루즈-그랩 제스처가 감지되고, 상기 사용자의 다른 손에 대해 상기 선에 연결된 정점에서 상기 타이트-핀치 제스처가 감지되면, 상기 다른 손이 이동함에 따라 상기 연결된 정점을 이동시키면서 상기 선으로부터 상기 연결된 정점을 분리시키는 단계If the loose-grab gesture is detected in one line for one hand of the user, and the tight-pinch gesture is detected at a vertex connected to the line for the other hand of the user, as the other hand moves, the separating the connected vertices from the line while moving the connected vertices
    중 적어도 하나를 포함하는, Containing at least one of
    방법.method.
  10. 제 2 항에 있어서,According to claim 2,
    상기 3D 곡선 네트워크를 제작하는 단계는,The step of producing the 3D curved network is,
    상기 사용자의 한 손에 대해 정점에서 상기 루즈-핀치 제스처가 감지되면, 상기 정점의 위치를 나타내는 커서와 상기 커서에 인접한 적어도 하나의 제어 포인트를 표시하는 단계; 및When the loose-pinch gesture is detected at a vertex for one hand of the user, displaying a cursor indicating the position of the vertex and at least one control point adjacent to the cursor; and
    상기 사용자의 다른 손에 대해 상기 제어 포인트에서 상기 타이트-핀치 제스처가 감지되면, 상기 다른 손이 이동함에 따라 상기 정점에서의 법선을 상기 정점과 상기 제어 포인트를 연결하는 가상 선에 대응하여 변경하면서 상기 정점에 연결된 선을 변경시키는 단계When the tight-pinch gesture is detected at the control point for the user's other hand, the normal at the vertex changes as the other hand moves corresponding to the virtual line connecting the vertex and the control point. Steps to change the line connected to the vertex
    를 포함하는,Including,
    방법.method.
  11. 제 2 항에 있어서, According to claim 2,
    상기 사용자의 한 손에 대해 정점에서 상기 루즈-그랩 제스처가 감지되면, 상기 정점의 위치 및 법선을 나타내는 커서와 상기 커서에 인접한 적어도 하나의 제어 포인트를 표시하는 단계; 및When the loose-grab gesture is detected at a vertex for one hand of the user, displaying a cursor indicating the position and normal of the vertex and at least one control point adjacent to the cursor; and
    상기 사용자의 다른 손에 대해 상기 제어 포인트에서 상기 타이트-핀치 제스처가 감지되면, 상기 다른 손이 이동함에 따라 상기 정점에서의 법선을 유지하면서 상기 정점에 연결된 선을 변경시키는 단계When the tight-pinch gesture is detected at the control point for the user's other hand, changing a line connected to the vertex while maintaining the normal at the vertex as the other hand moves.
    를 포함하는,Including,
    방법.method.
  12. 양손 인터랙션을 이용한 가상현실 3D 곡선 네트워크 제작을 위한 전자 장치에 있어서,In an electronic device for creating a virtual reality 3D curved network using two-handed interaction,
    카메라 모듈; camera module;
    표시 모듈; 및display module; and
    상기 카메라 모듈을 통해, 공간 상에서 사용자의 적어도 하나의 손의 제스처를 감지하고, 상기 표시 모듈을 통해, 상기 공간 상에서 상기 제스처에 따라 복수의 선들로 이루어지고, 각 선이 두 개의 정점들 사이에서 정의되는 3D 곡선 네트워크를 제작하도록 구성되는 프로세서Through the camera module, a gesture of at least one hand of the user is detected in space, and through the display module, a plurality of lines are formed according to the gesture in the space, where each line is defined between two vertices. A processor configured to produce a 3D curved network
    를 포함하고, Including,
    상기 제스처는 두 개의 손가락들에 의한 핀치 제스처 및 다섯 개의 손가락들에 의한 그랩 제스처를 기반으로 하는,The gesture is based on a pinch gesture with two fingers and a grab gesture with five fingers,
    전자 장치.Electronic devices.
  13. 양손 인터랙션을 이용한 가상현실 3D 곡선 네트워크 제작 방법을 전자 장치에서 실행시키기 위해 비-일시적인 컴퓨터 판독 가능한 기록 매체에 저장된 컴퓨터 프로그램에 있어서,A computer program stored in a non-transitory computer-readable recording medium for executing a method of creating a virtual reality 3D curved network using two-handed interaction on an electronic device, comprising:
    상기 방법은,The above method is,
    공간 상에서 사용자의 적어도 하나의 손의 제스처를 감지하는 단계; 및detecting a gesture of at least one hand of a user in space; and
    상기 공간 상에서 상기 제스처에 따라 복수의 선들로 이루어지고, 각 선이 두 개의 정점들 사이에서 정의되는 3D 곡선 네트워크를 제작하는 단계Creating a 3D curved network consisting of a plurality of lines according to the gesture in the space, where each line is defined between two vertices.
    를 포함하고, Including,
    상기 제스처는 두 개의 손가락들에 의한 핀치 제스처 및 다섯 개의 손가락들에 의한 그랩 제스처를 기반으로 하는,The gesture is based on a pinch gesture with two fingers and a grab gesture with five fingers,
    컴퓨터 프로그램.computer program.
PCT/KR2023/016349 2022-10-20 2023-10-20 Method and device for producing virtual reality 3d curve network using bimanual interaction WO2024085712A1 (en)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
KR20220135312 2022-10-20
KR10-2022-0135312 2022-10-20
KR10-2023-0139638 2023-10-18
KR1020230139638A KR20240055674A (en) 2022-10-20 2023-10-18 Method and device for authoring virtual reality 3d curved network using two-handed interaction

Publications (1)

Publication Number Publication Date
WO2024085712A1 true WO2024085712A1 (en) 2024-04-25

Family

ID=90738163

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2023/016349 WO2024085712A1 (en) 2022-10-20 2023-10-20 Method and device for producing virtual reality 3d curve network using bimanual interaction

Country Status (1)

Country Link
WO (1) WO2024085712A1 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160099267A (en) * 2015-02-12 2016-08-22 연세대학교 산학협력단 Apparatus and Method for authoring 3D animation contents
US20200004403A1 (en) * 2013-11-15 2020-01-02 Ultrahaptics IP Two Limited Interaction strength using virtual objects for machine control
US20210165923A1 (en) * 2017-12-06 2021-06-03 Goggle Collective Ltd. Three dimensional drawing tool and method

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200004403A1 (en) * 2013-11-15 2020-01-02 Ultrahaptics IP Two Limited Interaction strength using virtual objects for machine control
KR20160099267A (en) * 2015-02-12 2016-08-22 연세대학교 산학협력단 Apparatus and Method for authoring 3D animation contents
US20210165923A1 (en) * 2017-12-06 2021-06-03 Goggle Collective Ltd. Three dimensional drawing tool and method

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
ARORA RAHUL ARORAR@DGP.TORONTO.EDU; KAZI RUBAIAT HABIB RUBAIAT.HABIB@GMAIL.COM; KAUFMAN DANNY M. KAUFMAN@ADOBE.COM; LI WILMOT WILM: "MagicalHands Mid-Air Hand Gestures for Animating in VR", USER INTERFACE SOFTWARE AND TECHNOLOGY, ACM, 17 October 2019 (2019-10-17) - 23 October 2019 (2019-10-23), 2 Penn Plaza, Suite 701New YorkNY10121-0701USA , pages 463 - 477, XP058450735, ISBN: 978-1-4503-6816-2, DOI: 10.1145/3332165.3347942 *
JIANG YING YINGJIANG@CONNECT.HKU.HK; ZHANG CONGYI CYZH@HKU.HK; FU HONGBO HONGBOFU@CITYU.EDU.HK; CANNAVò ALBERTO ALBERTO.CANNA: "HandPainter - 3D Sketching in VR with Hand-based Physical Proxy", PROCEEDINGS OF THE 2021 CHI CONFERENCE ON HUMAN FACTORS IN COMPUTING SYSTEMS, ACMPUB27, NEW YORK, NY, USA, 6 May 2021 (2021-05-06) - 13 May 2021 (2021-05-13), New York, NY, USA , pages 1 - 13, XP058514562, ISBN: 978-1-4503-8096-6, DOI: 10.1145/3411764.3445302 *

Similar Documents

Publication Publication Date Title
WO2015122565A1 (en) Display system for displaying augmented reality image and control method for the same
WO2015030303A1 (en) Portable device displaying augmented reality image and method of controlling therefor
WO2018070754A1 (en) System and method to prevent boundary artifacts
WO2018151449A1 (en) Electronic device and methods for determining orientation of the device
WO2012033345A1 (en) Motion control touch screen method and apparatus
WO2015099293A1 (en) Device and method for displaying user interface of virtual input device based on motion recognition
WO2012030194A1 (en) Method and apparatus for interfacing
EP2668555A2 (en) Terminal having touch screen and method for identifying touch event therein
WO2013162236A1 (en) Transparent display virtual touch apparatus not displaying pointer
WO2020017890A1 (en) System and method for 3d association of detected objects
WO2016080596A1 (en) Method and system for providing prototyping tool, and non-transitory computer-readable recording medium
WO2019078632A1 (en) 3d window management method using projective geometry in augmented reality and virtual reality
WO2014069901A1 (en) Input apparatus and input controlling method thereof cross-reference to related applications
WO2023059087A1 (en) Augmented reality interaction method and apparatus
WO2016080557A1 (en) Wearable device and control method therefor
WO2014126331A1 (en) Display apparatus and control method thereof
WO2024085712A1 (en) Method and device for producing virtual reality 3d curve network using bimanual interaction
WO2018076454A1 (en) Data processing method and related device thereof
WO2021230568A1 (en) Electronic device for providing augmented reality service and operating method thereof
EP3635672A1 (en) Augmented reality advertisements on objects
WO2023033469A1 (en) Method for 3d-cropping medical image and device therefor
WO2024085701A1 (en) Method and device for driving sketched vehicle
WO2022030933A1 (en) Electronic device, and method for processing writing input thereof
WO2021153961A1 (en) Image input system using virtual reality and image data generation method using same
KR20240055674A (en) Method and device for authoring virtual reality 3d curved network using two-handed interaction

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: 23880287

Country of ref document: EP

Kind code of ref document: A1