The present disclosure relates to an input device, an input method, and a non-transitory recording medium.
A so-called hand-gesture input device that performs an input by determining an instruction from a user based on a user's hand motion is known. Patent Literatures 1, 2 and 3 disclose, for example, an apparatus that recognizes a user's gesture based on a user's hand motion picked up by a camera, and controls an apparatus based on the recognized user's gesture.
Patent Literature 1: Unexamined Japanese Patent Application Kokai Publication No. 2002-083302
Patent Literature 2: Unexamined Japanese Patent Application Kokai Publication No. 2009-230460
Patent Literature 3: Unexamined Japanese Patent Application Kokai Publication No. 2011-186730
A problem with conventional hand-gesture input devices is that recognition errors frequently occur such that a motion of putting back a hand to an original position after performing a gesture of moving the hand to the left is, for example, falsely recognized as a gesture of moving the hand to the right, and a circle drawing gesture is falsely recognized as gestures of a hand that is moving upward, downward, leftward, and rightward. Thus, there is a problem of recurring discrepancies between a user's intended gesture and a recognized gesture by the apparatus.
The present disclosure has been made in view of the aforementioned problems, and an objective of the present disclosure is to provide an input device, an input method, and a non-transitory recording medium accurately recognizable of a user's gesture as intended by the user.
In accordance with a first aspect of the present disclosure, there is provided an input device comprising:
image acquiring means that acquires a picked-up image of an object moving in accordance with a user's intent;
movement trajectory extracting means that extracts, from trajectories of the object, a plurality of successive movement trajectories corresponding to movement patterns stored in advance;
relative information acquiring means that acquires relative information representing relative relationships among the plurality of movement trajectories; and
input determining means that determines an input given to a apparatus based on the relative information.
In accordance with a second aspect of the present disclosure, there is provided an input method comprising:
an image acquisition step for acquiring a picked-up image of an object moving in accordance with a user's intent;
a movement trajectory extraction step for extracting, from trajectories of the object, a plurality of successive movement trajectories corresponding to movement patterns stored in advance;
a relative information acquisition step for acquiring relative information representing relative relationships among the plurality of movement trajectories; and
an input determining step for determining a user input given to an apparatus based on the relative information.
In accordance with a third aspect of the present disclosure there is provided a non-transitory recording medium having stored therein a program for causing a computer to realize:
an image acquiring function of acquiring a picked-up image of an object moving in accordance with a user's intent;
a movement trajectory extraction function of extracting, from trajectories of the object, a plurality of successive movement trajectories corresponding to movement patterns stored in advance;
a relative information acquiring function of acquiring relative information representing relative relationships among the plurality of movement trajectories; and
an input determination function of determining a user input given to an apparatus based on the relative information.
According to the present disclosure, an input device, an input method, and a non-transitory recording medium accurately recognizable of a user's gesture can be provided.
Hereinafter, an input device according to an embodiment of the present disclosure will be described with reference to figures.
An input device 100 of this embodiment comprises a function that determines input operation (for example, a control instruction, a command, and the like to an apparatus by a user) given by the user to the apparatus based on a user's hand motion picked up by a camera. The input device 100 is, for example, a personal computer as illustrated in
The operator 110 comprises an input device such as a keyboard. The operator 110 receives an instruction and the like to initiate receiving of an input that is based on a user's gesture, and transmits the instruction to the controller 150, which will be discussed later.
The display 120 comprises a display device such as a liquid crystal display. The display 120 displays an image as controlled by the controller 150.
The imager 130 comprises a camera that utilizes an imaging device, such as a Charge Coupled Device (CCD) image sensor, or a Complementary Metal Oxide Semiconductor (CMOS) image sensor. The imager 130 is, for example, provided at the upper center of the display 120 as shown in
The image memory 140 comprises a video memory constituted by a Random Access Memory (RAM) or the like. The image memory 140 stores image data transmitted from the imager 130. The image memory 140 transfers the stored image data to the controller 150 according to control by the controller 150.
The controller 150 comprises a processing device such as a processor. The controller 150 operates in accordance with a program stored in an unillustrated Read Only Memory (ROM) or a RAM, and executes various operations including an “input process” which will be discussed later. The controller 150 operates in accordance with the “input process”, thereby serving as an image acquirer 151, a movement trajectory extractor 152, a relative information acquirer 153, and an input determiner 154 as shown in
The memory 160 comprises a data readable/writable memory device, such as a Dynamic Random Access Memory (DRAM), a Static Random Access Memory (SRAM), a flash memory, and a hard disk. The memory 160 stores feature data of a shape of a human hand that is utilized as a reference to detect a range of the human hand from the image. In addition, the memory 160 stores data, such as a “movement-pattern information table” and a “command table”.
The “movement-pattern information table” is information for determining to which one of a plurality of movement patterns stored in advance a sequence of user's hand motions corresponds. Hereinafter, a sequence of user's hand motions, such as a continuous motion of user's hand within a predetermined time period (for example, 10 seconds) will be referred to as a “trajectory”. A trajectory that corresponds to any one of the plurality of movement patterns stored in advance will be herein referred to as a “movement trajectory”. The “movement pattern information” contains information in which “identification information” is associated with “feature data” as shown in
The “identification information” is information for identifying the movement pattern of user's hand. Identification information is information for making the movement pattern of the user's hand associated with a specific notation, such as “rotating (clockwise)” when the clockwise circle is indicated by the user's hand movement as shown in
The “feature data” is information for specifying a movement pattern of the user's hand. The feature data contains, for example, feature quantity data that is obtained by extracting and storing features of a predetermined motion indicated by the user's hand. The controller 150 determines whether or not the trajectory of the user's hand corresponds to any one of the movement patterns by checking the trajectory of user's hand with the feature data.
The “command table” is information for determining whether or not the user's gesture corresponds to any one of a plurality of apparatus commands. The command table contains information in which “combination information” is associated with “control command” as shown in
The “combination information” is information for determining an instruction intended by the user's gesture. The combination information is information that contains combinations of the plurality of user's hand movement patterns, and includes combined information of “identification information” and “relative information”.
The “relative information” is information representing relative relationships of the plurality of movement trajectories extracted from the user's hand trajectory. The relative relationships of plurality of movement trajectories mean, for example, differences in coverage occupied by a movement trajectory, and differences in positions of movement trajectories. The relative information includes “relative coverage information”, “relative position information”, and the like.
The “relative coverage information” is information that represents relative differences in the coverages occupied by the plurality of movement trajectories, and the relative coverage information represents, for example, the size of the coverage occupied by the other movement trajectory with reference to a movement trajectory among the plurality of movement trajectories. Assuming that, for example, two movement trajectories indicating features represented by the feature data are detected from the trajectories of user's hand as shown in
The “relative position information” is information representing relative positional relationships of the plurality of movement trajectories, and the relative position information represents, for example, the direction and/or coordinates of the other movement trajectory with reference to a movement trajectory among the plurality of movement trajectories. Assuming that, for example, two movement trajectories having features represented by the feature data are detected from the trajectories of the user's hand as shown in
The “control command” is control information for controlling an apparatus. The “control command” is, for example, the control information, such as playback, pause, fast forward, skip, set, cancel, and volume adjustment that are input to an application software like a music player software, or an operating system, and the like. The controller 150 determines to which one of the aforementioned pieces of “combination information” the user's gesture corresponds, and inputs the control command associated with the determined combination information to the application software and the like.
Next, an operation of the input device 100 employing such a structure will be described.
The controller 150 instructs, upon receiving a process initiation instruction from the operator 110, the imager 130 to initiate the image-pickup. The imager 130 sequentially transmits, having received the instruction to initiate the image-pickup, the picked-up images to the image memory 140. In addition, the controller 150 executes, upon receiving the process initiation instruction from the operator 110, application software, such as music player software, and initiates the “input process” for inputting the control command to the application software. Hereinafter, the “input process” will be described with reference to a flowchart illustrated in
An image acquirer 151 of the controller 150 acquires, from the image memory 140, the image data of the latest predetermined time period (for example, 10 seconds) at which the images of the human hand are picked up (for example, a plurality of image data shown in
Returning to the flow in
Returning to the flow in
The movement trajectory extractor 152 extracts the trajectory of a human hand by utilizing the specified centroid coordinates (step S104). For example, the movement trajectory extractor 152 transcribes the plurality of specified centroid coordinates on the same coordinate plane, and links the plurality of transcribed centroid coordinates in chronological order, thereby extracting the trajectory of the human hand as is shown in, for example,
Returning to the flow in
Returning to the flow in
Returning to the flow in
The movement trajectory extractor 152 determines whether or not there is a temporally-successive movement trajectory among the plurality of extracted movement trajectories (step S108). As is shown in
Returning to the flow in
Returning to the flow in
Returning to the flow in
Returning to the flow in
Upon completion of the inputting of the control command, the process returns to the step S101 and again, the controller 150 repeats the processes from the step S101 to the step S112.
By executing the input process through the aforementioned approach, the controller 150 constitutes image acquiring means, movement trajectory extracting means, relative information acquiring means, and input determining means. In addition, the image acquiring means may include the imager 130.
According to this embodiment, the control command is determined based on the relative relationships among the plurality of movement trajectories. Therefore, the user's gesture is accurately recognized as intended by the user. For example, the conventional hand-gesture input devices determine the user's gesture by checking the movement trajectory of the user's hand with the movement pattern. In this case, recognition errors of gestures frequently occur due to variable nature of size and shape of the movement trajectories indicated by the user for each user. In this regard, the input device 100 of this embodiment recognizes the trajectories of user's hand as the succession of plurality of movement trajectories instead of a unified movement trajectory, and determines the control command based on presumably less varied relative relationships of these movement trajectories. Hence, the input device 100 is capable of reducing the recognition errors of user's gestures.
In addition, it is inevitable that the shapes of the movement patterns to be recognized by the hand-gesture input devices to become complicated if an attempt is made to increase the number of commands recognizable by the hand-gesture input devices. The more complicated the shapes are, the more recognition errors take place, resulting in a decrease of the recognition accuracy of the hand-gesture input devices. However, the input device 100 of this embodiment recognizes the trajectories of the user's hand as the succession of the plurality of movement trajectories, not as the unified movement trajectory. That is, the input device 100 recognizes a sequence of user's hand motions as the succession of the plurality of movement trajectories having a simple shape. Hence, each movement pattern that needs to be recognized by the input device 100 is more simplified compared to that of the conventional hand-gesture input devices, thereby reducing the occurrence of gesture recognition errors as a consequence.
Note that the foregoing description of the embodiment provides merely an example, and various modifications and applications can be made.
For example, the relative information utilized by the input device 100 for determining the control command is not limited to the relative position information and/or the relative coverage information, and such relative information may be the “relative movement quantity information” representing, for example, relative differences in movement quantity among the plurality of movement trajectories. Assuming that, for example, the input device 100 has extracted the movement trajectory 1 having a movement quantity L1 and the movement trajectory 2 having a movement quantity L2, the relative movement quantity information is, in this case, a movement quantity L2/L1 of the movement trajectory 2 with reference to the movement quantity of the movement trajectory 1 as shown in
In addition, the relative information utilized by the input device 100 for determining the control command may be the “relative movement speed information” representing relative differences in movement speed among the plurality of movement trajectories. Assuming that, for example, the input device 100 has extracted the movement trajectory 1 traveling a distance L1 in an amount of time T1 that is, movement speed S1 (=L1/T1), and the movement trajectory 2 traveling a distance L2 in an amount of time T2 that is, movement speed S2 (=L2/T2), in this case, the relative movement speed information is a movement speed S2/S1 of the movement trajectory 2 with reference to the movement speed of the movement trajectory 1 as shown in
Still further, the memory 160 may store a plurality of command tables. For example, the combination information of Record 1 shown in
In the aforementioned embodiment, the control command is determined based on the combination information in the command table containing both of the relative information and the identification information, but the input device 100 may determine the user input by utilizing additional information on the number of consecutive occurrence of the movement trajectories that are determined as the same movement pattern. Assuming that, for example, four clockwise movement trajectories (hereinafter, denoted by numbers 1 to 4, in the order of occurrence) are extracted as shown in
Further, the input device 100 may determine the user input based on not only the movement patterns determined as the same but also the number of consecutive occurrence of the movement trajectories that have been determined as having substantially coincident coverages occupied by those movement trajectories (for example, the movement trajectories having the areas and positions that fall into certain threshold values). In the example case in
In the aforementioned embodiment, the “combination information” is obtained by combining at least one of the pieces of relative position information or the relative coverage information with the identification information, but constituent elements to the combination information are not limited to the relative position information, the relative coverage information, and the identification information. For example, one or more pieces of information selected from the relative position information, the relative coverage information, the relative movement quantity information, and the relative movement speed information may be combined with the identification information to create the combination information. Alternatively, without using the identification information, one or more pieces of information selected from, for example, the relative position information, the relative coverage information, the relative movement quantity information, and the relative movement speed information that is, the relative information may be distinctively utilized as the constituent element. In addition, the combination information may be obtained by combining the relative information with other information (for example, the number of successive occurrences of the same movement pattern).
In the step S108, whether the two movement trajectories are temporally successive or not is determined based on whether or not coordinates of the end point and coordinates of the initial point of the two movement trajectories are coincident with each other, but the scheme for determining the consecutiveness of the movement trajectories is not limited to the aforementioned approach. For example, as shown in
Further, in the step S109, the range of the minimum rectangular enclosing the movement trajectory is specified as the coverage that is occupied by the movement trajectory, but the coverage is not limited to the range of the minimum rectangular enclosing the movement trajectory. For example, the relative information acquirer 153 may specify an range of a predetermined shape (for example, a circle or an oval) enclosing the movement trajectory as the coverage, and as long as the movement trajectory has a loop shape as shown in
Still further, in the step S105, the movement pattern of movement trajectory is identified by checking the extracted movement trajectory with the feature data in the movement-pattern information table, but various conventional techniques are applicable to the procedure of extracting the movement trajectory and the procedure of checking with the feature data. For example, a best-fit straight line (a regression line) may be obtained using the centroid coordinate data acquired in the step S103 to calculate a degree of similarity between the hand movement trajectory and the approximate straight line, and the hand moving motion having the degree of similarity that is equal to or greater than a certain threshold value may be determined as a straight-line moving motion. In addition, a circularity of the hand movement trajectory may be obtained to determine the hand moving motion having the circularity that is equal to or greater than a certain threshold value as a rotating motion.
Yet further, in the step S102, the range of the minimum rectangular enclosing the human hand is detected as the hand range, but the hand range is not limited to the range of minimum rectangular enclosing the human hand. For example, the relative information acquirer 153 may detect a range of a predetermined shape (for example, a circle or an oval) enclosing the movement trajectory as the hand range, or may detect a shape of hand literally as the hand range.
Moreover, in the step S104, the trajectory of the centroid position of the hand range is extracted as the movement trajectory of hand, but the movement trajectory is not limited to the trajectory of the centroid position. For example, the movement trajectory extractor 152 may extract a trajectory of an upstanding fingertip (for example, an index finger) of a human hand as the movement trajectory of the user's hand.
Furthermore, the gestures recognized by the input device 100 are not limited to the motions of the user's hand (that is, a hand gesture), and such gesturers may be a motion of an object (including a user's body part) that is moved according to the user's intent. For example, the input device 100 may be structured so as to recognize respective motions of a user's head, a foot, eyeballs (the pupil or the iris), fingers and/or toes of hands and feet as the user's gestures. Alternatively, the input device 100 may be structured so as to recognize a motion of an object held and moved by the user's hand as the user's gesture. For example, the input device 100 may be structured in such a way that, as the user moves a pointer having a spherical object or a light source attached to the tip thereof, the input device 100 records pattern data of the trajectories of the spherical object or the light source, and recognizes the motion of the spherical object or the light source located on the tip of the pointer moved by the user.
Additionally, in the aforementioned embodiment, the direction of the center position of the coverage that is occupied by the other movement trajectories relative to the center position of the coverage occupied by the one movement trajectory, and the center position coordinates of the other movement trajectories with reference to the center position of the one movement trajectory are exemplified as the relative position information, but the relative position information may be a distance between two movement trajectories, or may be, for example, an angle of the center position of the other movement trajectory relative to the center position of the one movement trajectory as shown in
When a distance between two movement trajectories is taken as the relative position information, such distance may be, for example as shown in
In addition, for example as shown in
Yet further, in the aforementioned embodiment, the input determiner 154 is structured so as to input the determined control command to the application software, but the software to which the control command is input is not limited to the application software. The input determiner 154 may input the determined control command to, for example, an operating system. In addition, the input determiner 154 may be structured so as to input the determined command to a device other than the input device 100 via a communication line or wirelessly.
Furthermore, in the aforementioned embodiment, the personal computer is described as an example of the input device 100, but the input device 100 is not limited to the personal computer, and other types of electrical apparatus including a function of determining the user input may be employed. For example, the input device 100 may be a television, a recorder, a game console, a fixed-line telephone, a mobile phone, a smartphone, a tablet terminal, and a Personal Digital Assistant (PDA).
The input device 100 of the embodiment may be accomplished by utilizing a specialized system, or by utilizing a normal computer system. For example, the input device 100 may be structured by having a program for executing the aforementioned operations to be stored in a computer readable recording medium and distributed, and by installing the program on a computer to execute the aforementioned processes. In addition, the program for executing the aforementioned operations may be stored in a disk device of a server device over a network such as the Internet so that the program is, for example, downloadable to a computer. Further, the aforementioned functions may be accomplished by an OS in cooperation with application software. In this case, portions other than the OS may be stored in a medium and be distributed, and such portions may be, for example, downloaded to a computer.
An example recording medium applicable for recording the aforementioned program is a USB memory, a flexible disk, a Compact Disc (CD), a Digital Versatile Disc (DVD), a Blu-ray (registered trademark) disk, a Magneto-Optical Disk (MO), a Secure Digital (SD) memory card, a Memory Stick (registered trademark), or other computer readable recording mediums, such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, and a magnetic tape.
Modifications and variations can be made without departing from broader spirit and scope of the present disclosure. It should be noted that the above embodiment is meant only to be illustrative of the embodiment and is not intended to be limiting the scope of the present disclosure. Accordingly, the scope of the present disclosure should not be determined by the embodiment illustrated, but by the appended claims. It is therefore the intention that the present disclosure be interpreted to include various modifications that are made within the scope of the claims and their equivalents.
The aforementioned embodiment in whole or in part can be described as supplementary notes below, but the present disclosure is not limited to such supplementary notes.
(Supplementary Note 1)
An input device comprising:
image acquiring means that acquires a picked-up image of an object moving in accordance with a user's intent;
movement trajectory extracting means that extracts, from trajectories of the object, a plurality of successive movement trajectories corresponding to movement patterns stored in advance;
relative information acquiring means that acquires relative information representing relative relationships among the plurality of movement trajectories; and
input determining means that determines a user input given to an apparatus based on the relative information.
(Supplementary Note 2)
The input device according to Supplementary Note 1, in which:
the movement trajectory extracting means acquires identification information representing to which one of a plurality of the movement patterns stored in advance each of the plurality of movement trajectories corresponds; and
the input determining means determines the user input based on the identification information and the relative information.
(Supplementary Note 3)
The input device according to Supplementary Note 2, in which the input determining means:
acquires a number of consecutive occurrences of a movement trajectory that corresponds to a same movement pattern; and
determines the user input based on the number of consecutive occurrences, the identification information, and the relative information.
(Supplementary Note 4)
The input device according to Supplementary Note 2, further comprising:
a memory that stores, in an associated manner, combination information of relative information to be acquired with identification information to be acquired, and control information for controlling an apparatus,
in which the input determining means determines to which one of a plurality of the pieces of combination information stored in the memory the relative information acquired by the relative information acquiring means and the identification information acquired by the movement trajectory extracting means correspond, and determines that the control information in association with the determined combination information is the user input.
(Supplementary Note 5)
The input device according to any one of Supplementary Notes 1 to 4, in which the relative information contains at least one of following information: relative position information representing a relationship of a relative position of the plurality of movement trajectories; relative coverage information representing a relative size difference of an occupied coverage; relative movement quantity information representing a relative movement quantity difference; or relative movement speed information representing a relative movement speed difference.
(Supplementary Note 6)
The input device according to Supplementary Note 5, in which:
the movement trajectory extracting means extracts, from trajectories indicated by the object, two successive movement trajectories each corresponding to the movement patterns stored in advance;
the relative information contains the relative position information; and
the relative information acquiring means acquires a direction of one movement trajectory with reference to a position of another movement trajectory in the two successive movement trajectories as the relative position information.
(Supplementary Note 7)
The input device according to Supplementary Note 5, in which:
the movement trajectory extracting means extracts, from trajectories indicated by the object, two successive movement trajectories each corresponding to the movement patterns stored in advance;
the relative information contains the relative coverage information; and
the relative information acquiring means acquires an areal ratio of the respective coverages occupied by the two successive movement trajectories as the relative coverage information.
(Supplementary Note 8)
The input device according to Supplementary Note 5, in which:
the movement trajectory extracting means extracts, from trajectories indicated by the object, two successive movement trajectories each corresponding to the movement patterns stored in advance;
the relative information contains the relative movement quantity information; and
the relative information acquiring means acquires a movement quantity of one movement trajectory with reference to a movement quantity of another movement trajectory in the two successive movement trajectories as the relative movement quantity information.
(Supplementary Note 9)
The input device according to Supplementary Note 5, in which:
the movement trajectory extracting means extracts, from trajectories indicated by the object, two successive movement trajectories each corresponding to the movement patterns stored in advance;
the relative information contains the relative movement speed information; and
the relative information acquiring means acquires a movement speed of one movement trajectory with reference to a movement quantity of another movement trajectory in the two successive movement trajectories.
(Supplementary Note 10)
The input device according to any one of Supplementary Notes 1 to 9, in which the object is a human hand.
(Supplementary Note 11)
An input method comprising:
an image acquisition step for acquiring a picked-up image of an object moving in accordance with a user's intent;
a movement trajectory extraction step for extracting, from trajectories of the object, a plurality of successive movement trajectories corresponding to movement patterns stored in advance;
a relative information acquisition step for acquiring relative information representing a relative relationships among the plurality of movement trajectories; and
an input determining step for determining a user input given to an apparatus based on the relative information.
(Supplementary Note 12)
A non-transitory recording medium having stored therein a program for causing a computer to realize:
an image acquiring function of acquiring a picked-up image of an object moving in accordance with a user's intent;
a movement trajectory extraction function of extracting, from trajectories of the object, a plurality of successive movement trajectories corresponding to movement patterns stored in advance;
a relative information acquiring function of acquiring relative information representing a relative relationships among the plurality of movement trajectories; and
an input determination function of determining a user input given to an apparatus based on the relative information.
The present application claims the benefit of Priority based on Japanese Patent Application No. 2012-181222 filed on Aug. 17, 2012. The entire specification, claims, and figures of Japanese Patent Application No. 2012-181222 are herein incorporated in this specification by reference.
Number | Date | Country | Kind |
---|---|---|---|
2012-181222 | Aug 2012 | JP | national |
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/JP2013/071925 | 8/14/2013 | WO | 00 |