This application is based upon and claims the benefit of priority of the prior Japanese Patent Application No. 2014-058949, filed on Mar. 20, 2014, the entire contents of which are incorporated herein by reference.
The embodiments discussed herein are related to a link-device selecting apparatus, a link-device selecting method, and a link-device selecting program.
Attention has been paid to a technique for controlling, in a linked manner, a plurality of gadgets corresponding to a network and, in particular, a technique for performing such control according to the positions and postures of a device and user (a person who is using the device).
A device manager may manage a device controlling program for controlling a device equipped in, for example, a finance-related store. An instruction that includes an identifier of the device is provided from a business application to a device manager, and the device manager assigns the instruction to the device controlling program. An information processing apparatus is known wherein, when first and second devices are present, pieces of position information of the individual devices are associated with each other and are stored as connection-target management information, position information of an operator is detected, and an instruction is transmitted to the device having position information indicating a closer position.
A management system for information input-output apparatuses such as personal computers is known that is used to prevent an apparatus distant from an operator from being selected in the selecting of an information input-output apparatus on a network. As such a management system, a system is known that detects a physical transfer of an apparatus and that, when a predetermined transfer distance is exceeded, changes a setting of position information and displays a setting change message.
A communication function controlling apparatus is known that, upon receipt of a control request from an external apparatus, performs integrated control of a plurality of network apparatuses and media apparatuses. As such a controlling apparatus, a controller is known wherein a destination of an operator and an apparatus equipped at the destination are registered in advance, and user information is identified at the destination of the user so as to communicate with the registered apparatus (e.g., Japanese Laid-open Patent Publication Nos. 2007-79921, 10-177533, and 9-114759).
In the case of the apparatuses above, position information of an operator is used, and devices are operated in a linked manner when it is determined that the operator is located at a predetermined position.
However, for example, in controlling the opening and closing of a door in accordance with only the position of an operator, depending on the operator or the direction of the opening/closing of the door, the door could possibly hit the operator while it is opening. Use of user position information alone leads to problems wherein it is difficult to automatically select a device that is to be linked to an operation of an operator (hereinafter referred to as a “link-target device”), e.g., a problem wherein devices having the same function are located at positions at the same distance from the operator.
According to one aspect of an embodiment, a link-device selecting apparatus includes an evaluation value calculating unit and a selecting unit. The evaluation value calculating unit calculates evaluation values of a plurality of second devices using first information, second information, and importance levels. First information is information on the position and orientation of an operator of the first device. Second information is information on the positions and orientations of the plurality of second devices. The importance levels include an importance level of the position of a second device and an importance level of the orientation of the second device, both given in accordance with a function of the second device. The selecting unit selects a device to be linked to the first device from the plurality of second devices using the evaluation values.
The object and advantages of the invention will be realized and attained by means of the elements and combinations particularly pointed out in the claims.
It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory and are not restrictive of the invention, as claimed.
With reference to the drawings, the following will describe a link-device selecting apparatus, link-device selecting method, and link-device selecting program in accordance with embodiments.
As described above, in some scenes, it is difficult to automatically determine a device that should not be linked to a link device that uses position information alone.
Attention is paid to only a link between an operator and one device, and hence, in some cases, a device to be linked to cannot be automatically determined in a complicated case where a device to be used is selected in accordance with relationships between a plurality of users and a plurality of devices.
Accordingly, the following advantages can be achieved.
Descriptions will be given of a link-device selecting apparatus, link-device selecting method, and link-device selecting program capable of:
The definitions of terms are as follows.
An “operator” may be a person who operates one or more devices. In the presentation scene depicted in
A “user” may be a person who is not an operator and enjoys an advantage of one or more devices. In the presentation scene depicted in
A “link-base device” may be a device that makes a request for another device to be linked thereto. In the presentation scene depicted in
A “link-target device” may be operated at a request from a link-base device. In the presentation scene depicted in
A “distance” may be a linear distance between a link-target-device candidate and a link-base device, user, or operator.
According to the definitions above, a distance la between the operator E and the link-target device 20 is
l
a=√{square root over ((xa−x′)2+(ya−y′)2+(za−z′)2)}{square root over ((xa−x′)2+(ya−y′)2+(za−z′)2)}{square root over ((xa−x′)2+(ya−y′)2+(za−z′)2)}.
A distance lm between the link-base device 21 and the link-target device 20 is
l
m=√{square root over ((xm−x′)2+(ym−y′)2+(zm−z′)2)}{square root over ((xm−x′)2+(ym−y′)2+(zm−z′)2)}{square root over ((xm−x′)2+(ym−y′)2+(zm−z′)2)}.
A distance lu between the user D and the link-target device 20 is
l
u=√{square root over ((xu−x′)2+(yu−y′)2+(zu−z′)2)}{square root over ((xu−x′)2+(yu−y′)2+(zu−z′)2)}{square root over ((xu−x′)2+(yu−y′)2+(zu−z′)2)}.
In regard to “posture”, the posture of the operator E or the user D may be the orientation of the line of sight, or may be the orientation of the front of the body. The posture may simply be referred to as an “orientation”. When the link-target device 20 or the link-base device 21 includes an output device having directivity, e.g., a display or speaker, the posture thereof may be the orientation of the directivity. In the case of, for example, a display, the normal direction of a screen may be a posture (orientation) .
An “evaluation value” may be determined using all or some of a distance, a posture match level, and importance levels for the distance and the posture match level. For example, a longer distance may lead to a lower evaluation value. In accordance with a function of a device, the evaluation value may monotonically increase or decrease in proportion to closeness.
A “posture match level” may be an angle formed by the front direction of a link-base device (or the front direction of the user's or operator's body) and a linear line from a link-target-device candidate to the link-base device, user, or operator, or may be an angle formed by the front direction of the link-target device and a linear line from the link-target-device candidate to the link-base device, user, or operator.
In the situation depicted in
θmm, θuu, or θaa generally indicates an angle formed by a line segment from the link-base device, user, or operator to a link-target-device candidate and a half line extending in the front direction of the link-base device or the front direction of the user's body or the operator's body. θmi, θui, or θai indicates an angle formed by a line segment extending from the link-base device, user, or operator and a half line extending in the front direction of a link-target device. The six angles, θmm, θuu, θaa, θmi, θui, and θai, will hereinafter be referred to as “posture match level”.
An evaluation value based on a posture match level may be expressed using an evaluation function maximized at, for example, |θmm|+|θmi|=0, and a state in which the link-base device and a link-target device face each other maybe judged to be a state suitable to establish a link. Alternatively, the evaluation value may be expressed using a function maximized at |θuu−θui|=π[rad], and a state in which the user and a link-target device face the same direction may be judged to be a state suitable to establish a link.
Importance levels for distance and posture match level may be determined in advance, written to a file such as an evaluation table, and stored in a database.
The “evaluation value” is obtained by assigning a current distance l and posture match level e, both based on the arrangement of the operator, user, link-base device, and link-target device, to an evaluation function formula fi.
Let f indicate the evaluation formula; i, a link-target candidate device; u, a user; n, the total number of users; a, an operator; m, the number of link-base devices; lui, . . . , lum, distances between a user and link-base devices; lm, the distance between a link-target candidate device and a link-base device; la, the distance between an operator and a link-target candidate device; θuul, . . . , θuum, θmm, θmi, θaa, and θai, posture match levels; αi,l and αi,θ, importance levels for the distance and posture match level relative to a link-target candidate device. In this case, the evaluation formula f may be expressed as follows:
Of course, the evaluation formula may be expressed in a different manner.
When a plurality of operators or users are present, some or all of a representative value, an average value, and data on all of the operators or users maybe used in a technique for using the distances or posture match levels of the operators or users as arguments of the evaluation formula.
The “importance level” may be the influence that, according to a function of a used device, a distance and/or a posture match level exert on calculation of an evaluation value in a case where a check list is created that is related to, for example, the presence/absence of a screen display function, sound reproduction function, and illumination function of the used device. An importance level a for the distance and an importance level θfor the posture match level may satisfy the following formula:
αl+αθ=1
The “evaluation value” is calculated by assigning a distance and posture match level obtained from the current positions and postures of an operator, user, link-base device, and link-target-device candidate and importance levels for the distance and the posture match level to the evaluation formula. A device candidate with the highest evaluation value or a device with an evaluation value equal to or higher than a threshold may be selected from all of the candidates as a link-target device.
With reference to
As depicted in
In the example depicted in
The camera 46 may be used to obtain a position and a posture. Such devices may function as link-target devices operated in response to an instruction from the smartphone 43, i.e., a link-base device for assist in the presentation made by the operator F. Desks 51, 52, 53, 54, 55, and 56 and an air conditioner 57, all unrelated to the presentation, are also present. In such an environment, the operator F may make a presentation by showing an image stored in the smartphone 43 on a large screen, e.g., the display 1(41) or 2(42).
The link-device selecting apparatus automatically selects devices for use in the presentation. The devices may include the smartphone 43, the display 1(41), the display 2(42), the speaker 1(44), the speaker 2(45), the camera 46, the four illuminating apparatuses, i.e., the illuminating apparatuses 1(47), 2(48), 3(49), and 4(50), and the air conditioner 57.
The position coordinates of the operator F may be (xa, ya, za) , and the posture of the operator F may be (θxz
An acceleration sensor, gyro sensor, or geomagnetic sensor installed in a camera or device provided within the room may be used to sense the positions and postures of the operator F and the user G and the positions and postures of devices such as the displays 1(41) and 2(42). The operator F may be identified using a device identifier (device ID) of, for example, the smartphone (information device) 43. The user G may carry an information device such as a smartphone so that the user G can be identified using a device ID.
The environment-installation camera 46, i.e., a camera for obtaining a position and a posture, uses an AR marker attached to a device so as to recognize the position and posture of a device such as the display 1(41) or 2(42), and outputs, to a distance calculating unit 311 and posture-match-level calculating unit 332 of the calculating unit 33, information for determining the position of the operator F or user G or the orientation of the body using a musculoskeletal model. The distance calculating unit 311 and posture-match-level calculating unit 332 of the calculating unit 33 may use an image captured by the environment-installation camera 46 so as to determine the position and posture of a device such as the display 1 (41) or 2 (42), the position of the operator F or user G, and the orientation of the body.
In the example depicted in
In the example depicted in
As described above, the camera 46 or another element may function as the sensor 32 depicted in
To obtain a position and a posture according to an AR marker, the database (DB) creating unit 34 may use, for example, QPToolkit ®.
In the example depicted in
In a case where the device is fixed within the room and thus does not change the posture, the database (DB) creating unit 34 may continuously use the position and posture information of the device established when the device was installed in the room.
The operator F and the user G may be identified by recognizing the device IDs of smartphones they carry.
The device database (DB) 31, the calculating unit 33, and the database (DB) creating unit 34 may be combined to form a link-device selecting apparatus. However, the device database (DB) 31 and the database (DB) creating unit 34 may be external apparatuses, and the calculating unit 33 alone may form the link-device selecting apparatus. The following descriptions are based on a condition in which the link-device selecting apparatus includes the device database (DB) 31, the calculating unit 33, and the database (DB) creating unit 34.
The information device 30 operated by the operator F includes an application executing unit 301 and a position and posture information extracting unit 302. The operator F may input a start instruction to the information device 30. The information device 30 is operated as a link-base device.
The application executing unit 301 executes an application that causes a link-target device to perform a predetermined operation. For example, the application maybe an application for causing a display to display an image, or maybe an application for causing a speaker to reproduce sounds. Alternatively, the application may be an application for operating a nearby movable body (e.g., a door).
The position and posture information extracting unit 302 extracts the position and posture of the information device 30. The position and posture information extracting unit 302 may include an image pickup apparatus such as a camera, and an analyzing unit that extracts the position and posture of the information device 30 from an image obtained by the image pickup apparatus, or may include a sensor capable of simultaneously detecting a position and a posture.
The device database (DB) 31 is created by the database (DB) creating unit 34, and may store a device list 311, an evaluation table 312, and an evaluation formula 313. The database (DB) creating unit 34 may create, for example, the device list 311 and the evaluation table 312 according to information obtained by the sensor 32 and may store these lists in the device database (DB) 31. The database (DB) creating unit 34 may create the evaluation formula 313 through learning based on, for example, data on a past event. Alternatively, the evaluation formula 313 may be input from outside, or a formula input via the information device 30 may be stored as the evaluation formula 313 in the device database (DB) 31.
The device list 311 depicted in
The device list 311 may be obtained by listing all devices within a room for each function in an advance preparation for device linking. For each individual function, the device list 311 may indicate a check result as to whether the devices have the function. For example, the device list 311 may be manually created in advance. Device identification information such as device IDs may be incorporated into the devices so that the device list 311 can be automatically updated over a network.
The evaluation table 312 describes a distance importance level α and a posture-match-level importance level a for each device function.
The database (DB) creating unit 34 causes the evaluation table 312 depicted in
The database (DB) creating unit 34 refers to the evaluation table 312 so as to calculate a distance importance level αl and a posture-match-level importance level αθ for each device.
In one possible example, the database (DB) creating unit 34 calculates a distance importance level αl for the smartphone 43 using the following formula.
The database (DB) creating unit 34 calculates a posture-match-level importance level αθ for the smartphone 43 using the following formula.
That is, the importance level a may be an average weight of contribution of a function of the device within the device list to an importance level.
Similarly, an evaluation value calculating unit 333 of the calculating unit 33 calculates αl=0.3 as a distance importance level αl for the displays 1(41) and 2(42), and αθ=0.7 as a posture-match-level importance level αθ therefor. The evaluation value calculating unit 333 of the calculating unit 33 calculates αl=0.5 as a distance importance level αl for the speakers 1(44) and 2(45), and αθ=0.5 as a posture-match-level importance level αθ therefor. The evaluation value calculating unit 333 of the calculating unit 33 calculates αl=0.5 as a distance importance level αl for the speakers 1(44) and 2(45), and αθ=0.5 as a posture-match-level importance level αθtherefor. The evaluation value calculating unit 333 of the calculating unit 33 calculates αl=0.5 as a distance importance level αl for the air conditioner 57, and αθ=0.5 as a posture-match-level importance level αθ therefor.
Subsequently, the database (DB) creating unit 34 manually extracts a function needed in an application executed by the smartphone 43 (e.g., an application for support in a presentation), or automatically extracts such a function from information incorporated into a device. The database (DB) creating unit 34 groups devices listed in the device list 311 as link-target candidates for each needed function. A designer creates an evaluation formula for each group in consideration of a desirable position and posture for use of each function.
In the example depicted in
The evaluation value calculating unit 333 of the calculating unit 33 creates a selection evaluation formula f from device candidates, as link-target devices, having the functions of screen displaying, sound reproduction, and lighting for each of the functions of screen displaying, sound reproduction, and lighting. In one possible example, in
A priority level may be assigned to each group. A link-base device may have a priority level of 0, and a link-target device may have a priority level of 1 or greater. Higher priority may be given to a device with a priority level of a lower value. Priority levels may, of course, be set in any manner. In the example of
After an evaluation function is initially given, a value in the function may be automatically updated to an optimum value using a technique such as machine learning. An order in which link-target devices are determined in the executing of an application may be determined by assigning a priority level to each group. Link-target devices are determined starting from the device with a priority level of the lowest value, and, in the determining of a link-target device with a priority level n, a link-target device determined at a priority level (n-1) is used as a link-base device.
The evaluation value calculating unit 333 of the calculating unit 33 refers to the evaluation formula 313 from the device DB 31 so as to calculate an evaluation value for each device.
As the distance from a link-target display to both an operator and a user becomes shorter, screen display is easily viewable. Descriptions can be more simply given of a situation in which a display and a user face each other, and the display faces a direction that is identical with a direction in which the operator faces while giving a presentation. In consideration of these facts, the database (DB) creating unit 34 may set in advance an evaluation formula related to the screen displaying function.
For example, the database (DB) creating unit 34 may set a desirable position and posture for use of each function, and, in accordance with the setting, may create an evaluation formula using a distance, a posture match level, and an importance level.
The evaluation formula f may be expressed as indicated below, where i indicates a link-target candidate device; u, a user; n, the total number of users; a, an operator; m, a link-base device; lul, . . . , lum, lm, and la, distances; θuul, . . . , θuum, θmm, θni, θaa, and θai posture-match levels; αi,l and αi,θ, importance levels of distances and posture match levels.
In the example depicted in
When the operator F actually starts a presentation, the application executing unit 301 selects, in accordance with an application to be executed, a group of link-target-device candidates for which position and posture information is to be obtained. The position and posture information obtaining unit 302 obtains, via the sensor 32, real-time position and posture information of the link-target-device candidates, the operator F, the user G, and a link-base device such as the smartphone 43. A distance calculating unit 331 calculates distances 1 to the operator F, the user G, a link-base device such as the smartphone 43, and link-target-device candidates such as the display 1(41) the display 2(42) the speaker 1(44), and the speaker 2(45). The posture-match-level calculating unit 332 calculates posture match levels θ. In addition, the evaluation value calculating unit 333 substitutes the calculated values in an evaluation formula together with importance levels α of the link-target-device candidates, thereby calculating evaluation values.
Assume that, in the situation depicted in
The following will simply describe which of the display 1(41) or the display 2(42) is to be selected as a link-target device from among the devices indicated in “LINK-TARGET-DEVICE CANDIDATES FOR SCREEN DISPLAYING” depicted in
The database (DB) creating unit 34 may calculate a distance importance level αl and posture-match-level importance level αθ for each of the displays 1(41) and 2(42), and distance importance level αl=0.3 and posture-match-level importance level αθ=0.7 may be satisfied.
Using the values above, the evaluation value calculating unit 333 of the calculating unit 33 calculates evaluation values fdisplay1 and fdisplay2 for the display 1 (link-target device) (41) and the display 2 (link-target device) (42). For example, the evaluation values fdisplay1 and fdisplay2 for the display 1 (link-target device) (41) and the display 2 (link-target device) (42) may be calculated as follows.
Consequently, the display 1, which has the higher evaluation value, may be selected as a link-target device.
According to evaluation values obtained in a similar way, the evaluation value calculating unit 333 of the calculating unit 33 selects the speaker 1(44) or 2(45) as a link-target device from among the devices indicated in “LINK-TARGET-DEVICE CANDIDATES FOR SOUND REPRODUCTION” depicted in
A selecting unit 334 of the calculating unit 33 refers to the evaluation values so as to make a determination to select a link-target device.
When fdislplay1>fdisplay2 as in the case of the example above, the display 1 is selected as a link-target device and is output.
As in the case of selecting the display 1 as a link-target device, for a sound-reproduction-oriented or lighting-oriented link-target device with a priority level of 2, the evaluation value calculating unit 333 of the calculating unit 33 sets the display 1, i.e., a screen displaying function with a priority level of 1, as a link-base device, and calculates an evaluation value. Using the calculation result, the selecting unit 334 of the calculating unit 33 selects the speaker 1 and the illumination apparatus 2 as link-target devices; the speaker 1 reproduces sounds, and the illumination apparatus 2 is turned off.
As described above, the link-device selecting apparatus includes the evaluation value calculating unit 333 and the selecting unit 334.
The evaluation value calculating unit 333 may calculate evaluation values of a plurality of second devices (link-target devices) 41, 42, 44, 45, 47, 48, 49, 50, and 57 using first information related to the position and orientation of the operator (operator F) of the first device (link-base device) 30 or 43, second information related to the positions and orientations of the plurality of second devices (link-target devices) 41, 42, 44, 45, 47, 48, 49, 50, and 57, and the importance levels of the positions and orientations of the plurality of second devices (link-target devices) 41, 42, 44, 45, 47, 48, 49, 50, and 57, the importance levels being assigned in accordance with functions of the second devices 41, 42, 44, 45, 47, 48, 49, 50, and 57.
Using the evaluation values, the selecting unit 334 may select a device to be linked to the first devices 30 and 43 from the plurality of second devices 41, 42, 44, 45, 47, 48, 49, 50, and 57.
The link-device selecting apparatus may further include the posture-match-level calculating unit 332.
The posture-match-level calculating unit 332 may calculate first posture match levels obtained from angles formed by the orientations of the second devices 41, 42, 44, 45, 47, 48, 49, 50, and 57 with the orientations of the first devices 30 and 43, and may calculate second posture match levels obtained from angles formed by the orientations of the second devices 41, 42, 44, 45, 47, 48, 49, 50, and 57 with the orientation of the operator (operator F). In this case, the evaluation value calculating unit 333 may calculate the evaluation value using at least one of first and second distances.
The link-device selecting apparatus may further include the distance calculating unit 331.
The distance calculating unit 331 may calculate at least one type of distances from among first distances from the second devices 41, 42, 44, 45, 47, 48, 49, 50, and 57 to the first devices 30 and 43 and second distances from the second devices 41, 42, 44, 45, 47, 48, 49, 50, and 57 to the operator (operator F). The evaluation value calculating unit 333 may calculate an evaluation value using at least one of the first distance or the second distance.
The evaluation value calculating unit 333 of the link-device selecting apparatus may further calculate evaluation values of the second devices 41, 42, 44, 45, 47, 48, 49, 50, and 57 using at least one of third information related to the positions and orientations of the first devices 30 and 43 or fourth information related to the position and orientation of the user G of the second devices 41, 42, 44, 45, 47, 48, 49, 50, and 57.
The link-device selecting apparatus may further include the posture-match-level calculating unit 332, which calculates third posture match levels obtained from angles formed by the orientations of the second devices 41, 42, 44, 45, 47, 48, 49, 50, and 57 with the orientation of the user G. The evaluation value calculating unit 333 may calculate an evaluation value using the third posture match level.
The evaluation value calculating unit 333 may select the second devices 41, 42, 44, 45, 47, 48, 49, 50, and 57 in accordance with a function needed to execute an application implemented in the first devices 30 and 43, and may calculate evaluation values of the selected second devices 41, 42, 44, 45, 47, 48, 49, 50, and 57.
In addition, using priority levels assigned to individual functions needed to execute an application, the selecting unit 334 may select the second devices 41, 42, 44, 45, 47, 48, 49, 50, and 57 to be linked to the first devices 30 and 43.
Using the aforementioned configuration, the link-device selecting apparatus achieves the advantages of:
A computer 100 includes a Central Processing Unit (CPU) 102, a Read Only Memory (ROM) 104, and a Random Access Memory (RAM) 106. The computer 100 further includes a hard disk apparatus 108, an input apparatus 110, a display apparatus 112, an interface apparatus 114, and a recording medium driving apparatus 116. These elements are connected to each other by a bus line 118 and may exchange various types of data with each other under the management of the CPU 102.
The Central Processing Unit (CPU) 102 is a processor for controlling operations of the entirety of the computer 100, and functions as a control processing unit of the computer 100.
The Read Only Memory (ROM) 104 is a read-only semiconductor memory in which a predetermined basic control program is recorded in advance. The CPU 102 reads and executes the basic control program during starting of the computer 100 so that operations of elements of the computer 100 can be controlled.
The Random Access Memory (RAM) 106 is a semiconductor memory used as a work storage space as appropriate when the CPU 102 executes various control programs. Data can be written to, and can be read from, the Random Access Memory (RAM) 106 on an as-needed basis.
The hard disk apparatus 108 is a storage apparatus that stores various control programs to be executed by the CPU 102 and various types of data. The CPU 102 may read and execute a predetermined control program stored in the hard disk apparatus 108 so as to perform various control processes that will be described hereinafter.
The input apparatus 110 is, for example, a mouse apparatus or keyboard apparatus. When a user of an information processing apparatus operates the input apparatus 110, the input apparatus 110 obtains an input of various types of information associated with the operation, and transmits the input information to the CPU 102.
The display apparatus 112 is, for example, a liquid crystal display, and displays various texts and images in accordance with display data transmitted from the CPU 102.
The interface apparatus 114 manages exchange of various types of information with various devices connected to the computer 100.
The recording medium driving apparatus 116 reads various control programs and data recorded in a portable recording medium 120. The CPU 102 may read a predetermined control program from the portable recording medium 120 via the recording medium driving apparatus 116, and may execute the program so as to perform various control processes that will be described hereinafter. The portable recording medium 120 may be a non-transitory computer-readable recording medium, e.g., a flash memory provided with a USB (Universal Serial Bus)-standard connector, a CD-ROM (Compact Disc Read Only Memory), or a DVD-ROM (Digital Versatile Disc Read Only Memory).
In one possible example, to configure a link-device selecting apparatus using the computer 100, a control program (link-device selecting program) is created for causing the CPU 102 to perform processes that would be performed by the aforementioned processing units. The created control program is stored in the hard disk apparatus 108 or the portable recording medium 120 in advance. A predetermined instruction is given to the CPU 102, and the CPU 102 reads and executes the control program (link-device selecting program) . In this way, the CPU 102 provides functions of the link-device selecting apparatus.
The following will describe the flow of a link-device selecting process with reference to
In a case where the link-device selecting apparatus is the computer 100, i.e., a general-purpose computer such as that depicted in
The first and second advance preparation processes may be performed before the operator of the link-device selecting apparatus inputs data to the apparatus.
When the first advance preparation process starts, in S100, the database (DB) creating unit 34 uses, for example, information obtained by the sensor 32 so as to create a device list of all installed devices, and stores the device list in the device database (DB) 31 as the device list 311.
In S102, the database (DB) creating unit 34 creates an evaluation table in which a distance and posture match level for each function and weights for evaluation formulae are set, and stores the evaluation table in the evaluation table 312 of the device database (DB) 31.
In S104, the application executing unit 301 of the smartphone 30 extracts a function held by each device from the device list 311. In this step, for each device in the device list depicted in
In S106, the database (DB) creating unit 34 sums distance and posture match levels of extracted functions and weights relative to an evaluation formula, and calculates importance levels of the devices.
For example, the database (DB) creating unit 34 may calculate a distance importance level αl for the smartphone 43 and a posture-match-level importance level αθ for the smartphone 43 using the following formulae.
When the process of this step ends, the first advance preparation process ends.
When the second advance preparation process starts, in S200, according to information from the application executing unit 301 of the smartphone 30, the database (DB) creating unit 34 extracts a function needed for an application to be executed. In
In S202, the database (DB) creating unit 34 sets a desirable position and posture for use of each function. When the process of this step ends, the flow shifts to S204.
In S204, in accordance with the position and posture set in S202, the database (DB) creating unit 34 creates an evaluation formula using a distance, a posture match level, and an importance level. When the process of this step ends, the second advance preparation process ends.
When the process starts, the application executing unit 301 of the smartphone 30 obtains in S300 information on start of a device operation performed by an operator F. For example, information on input from the user (operator) F for activating a specific application may be obtained. When the process of this step ends, the flow shifts to S302.
In S302, the evaluation value calculating unit 333 of the calculating unit 33 specifies a link-target-device candidate by referring to a list of functions that need to be linked to. In the example depicted in
In S304, the distance calculating unit 331 and the posture-match-level calculating unit 332 obtain position and posture information obtained by the sensor 32 and the position and posture information obtaining unit 302 of the smartphone 30(43), i.e., position and posture information of the user (operator), link-base device (e.g., the smartphone 30), and link-target devices (e.g., the displays 1(41) and 2(42), the speakers 1(44) and 2(45), the camera 46, the four illumination apparatuses 1(47), 2(48), 3(49), and 4(50), and the air conditioner 57). When the process of this step ends, the flow shifts to S306.
In S306, the distance calculating unit 331 and the posture-match-level calculating unit 332 calculate a distance between a link-base device and a link-target-device candidate, and a posture match level therebetween. In the example of
In S308, the distance calculating unit 331 and the posture-match-level calculating unit 332 calculate a distance between a user G and a link-target-device candidate, and a posture match level therebetween. In the example of
In S310, the distance calculating unit 331 and the posture-match-level calculating unit 332 calculate a distance between the operator and a link-target-device candidate, and a posture match level therebetween. In the example of
An order in which the processes of S306-S310 are performed is not limited to the order indicated by the example of
In S312, the evaluation value calculating unit 333 assigns a distance, a posture match level, and an importance level to an evaluation value stored in the device DB 31 as the evaluation formula 313, and calculates an evaluation value for each link-target-device candidate.
The evaluation formula f may be
where i indicates a link-target candidate device; u, a user; n, the total number of users; a, an operator; m, a link-base device; lul, . . . , lum, lm, and la distances; θuul, . . . , θuum, θmm, θmi, θaa, and θai, posture-match levels; αi,l and αi,θ, importance levels of distances and posture match levels. When the process of this step ends, the flow shifts to S314.
In S314, the selecting unit 334 selects a link-target-device candidate with a high evaluation value as an actual link-target device. In the example depicted in
In S316, the selecting unit 334 determines whether all link devices with a preferably function have been selected. When the result indicates a determination of “yes”, i.e., when all link devices with a preferably function have already been selected, the flow shifts to S318. When the result indicates a determination of “no”, i.e., when not every device with a preferably function has been selected, the flow returns to S304.
In S318, the application executing unit 301 determines whether a device operation performed by the operator F has been finished. When the result indicates a determination of “yes”, i.e., when the device operation performed by the operator F has been finished, the flow ends. When the result indicates a determination of “no”, i.e., when the device operation performed by the operator F has not been finished, the flow returns to S304.
Performing the aforementioned processes may provide the advantages that (T1) a link device that cannot be determined according to only position information of an operator is automatically selected using posture information; (T2) a link device can be automatically selected according to an evaluation value that is set in accordance with information on the relative positions and postures between a plurality of operators and a plurality of devices; (E1) a link-target device that cannot be determined according to only position information of an operator can be automatically selected; (E2) in a case where an operator is linked to a plurality of devices, even when, for example, a link device cannot be selected in accordance with only the distance between the operator and two devices, a link-target device can be automatically selected according to information on the positions and postures of the operator and link-base device.
All examples and conditional language recited herein are intended for pedagogical purposes to aid the reader in understanding the invention and the concepts contributed by the inventor to furthering the art, and are to be construed as being without limitation to such specifically recited examples and conditions, nor does the organization of such examples in the specification relate to a depicting of the superiority and inferiority of the invention. Although the embodiments of the present invention have been described in detail, it should be understood that the various changes, substitutions, and alterations could be made hereto without departing from the spirit and scope of the invention.
Number | Date | Country | Kind |
---|---|---|---|
2014-058949 | Mar 2014 | JP | national |