具体实施方式
在下文中将描述本发明的优选实施例。本发明的构成要件与在说明书或附图中描述的实施例之间的对应关系将示出如下。该说明是要确认在说明书或附图中描述的支持本发明的实施例。因此,即使存在在说明书或附图中描述的实施例,但是在这里未将其描述为与本发明的构成要件对应的实施例,也并不意味着该实施例与构成要件不对应。相反,即使当在此将一实施例描述为对应于构成要件,也并不意味着该实施例不对应于该构成要件之外的构成要件。
在下文中将参照附图来描述本发明的优选实施例。
图1是示出了应用了本发明实施例的便携式电话的结构的示例的框图。
例如,当用户通过使物体(如手指)靠近便携式电话1的显示屏(图1的示例中的输入-输出显示器22的显示屏)(使物体接触便携式电话1的显示屏或仅离开较短的距离)来执行输入时,例如,便携式电话1根据物体(如手指等)距离显示屏的高度来执行预定的处理。
例如,根据上述高度,便携式电话1以放大状态显示在显示屏上显示的软键盘的多个键的一部分,或者选择该部分键中的一个键并输入与该键对应的信息。
便携式电话1包括天线11、通信单元12、控制单元13、存储单元14和输入-输出面板15。
天线11将与来自基站(附图中未示出)的无线电波对应的信号提供给通信单元12,并将与从通信单元12提供的信号对应的无线电波辐射(发射)到基站。
例如,通信单元12通过经天线11将预定频率的信号发送到基站并从基站接收预定频率的信号来与基站进行无线电通信。
控制单元13例如包括微处理器、RAM(随机存取存储器)和ROM(只读存储器)。控制单元13通过将存储在存储单元14中的程序加载到RAM中并执行该程序来执行对便携式电话1等的每个部分的控制。
例如,控制单元13基于从输入-输出面板15提供的关于如上所述的输入部分的信息、关于目标的信息等,执行例如输入预定信息或控制输入-输出显示器22的显示的预定处理。
存储单元14例如由闪速存储器、硬盘等形成。存储单元14预先存储程序、数据等。
输入-输出面板15基于从控制单元13提供的显示数据,使图像显示在输入-输出显示器22上,即,例如进行软键盘等的OSD(在屏显示)。
输入-输出面板15还通过对与从输入-输出显示器22输出的接收光信号检测到的输入部分有关的信息进行预定处理,来产生将在后面描述的关于目标的信息等。输入-输出面板15将关于目标的信息等提供给控制单元13。
输入-输出面板15包括显示信号处理部21、输入-输出显示器22、接收光信号处理部23、图像处理部24和产生部25。
显示信号处理部21对从控制单元13提供的显示数据进行预定的处理,并将作为处理结果而获得的显示信号提供给输入-输出显示器22。
输入-输出显示器22根据从显示信号处理部21提供的显示信号在其显示屏上进行OSD显示等。
另外,输入-输出显示器22例如包括分布在其整个显示屏上的多个光学传感器22A。输入-输出显示器22接收与外部输入对应地入射的光,产生每帧的与接收光的量对应的接收光信号,然后将接收光信号提供给接收光信号处理部23。附带地,下面的描述将假定对外部输入对应地入射的光是例如在从输入-输出显示器22发射后被靠近显示屏的手指反射并返回的光。
例如,接收光信号处理部23对从输入-输出显示器22提供的接收光信号进行接收光信号处理,如放大、滤波处理等。由此,对于每个帧,接收光信号处理部23获得一图像,在该图像中,在手指等靠近输入-输出显示器22的显示屏的部分与没有任何东西靠近输入-输出显示器22的显示屏的部分之间的亮度不同。然后,接收光信号处理部23将该图像提供给图像处理部24。
图像处理部24对从接收光信号处理部23提供的每帧的图像进行图像处理,例如二值化、噪声去除、标定(labeling)等。图像处理部24由此将手指等靠近显示屏的部分(区域)检测作为输入部分。例如,图像处理部24将图像处理后的图像中的高亮度部分检测作为输入部分。然后,图像处理部24产生关于检测到的输入部分的信息,即,例如作为每帧的输入部分的预定特征量的点信息。图像处理部24将该点信息提供给产生部25。
例如,如图2所示,被作为点信息而计算出的可被采用作为输入部分的特征量是:作为图像处理后的图像中的输入部分的区域(例如,图中的阴影部分)(即,手指等靠近输入-输出显示器22的显示屏的区域)的代表点的坐标的代表坐标,所述代表点为该区域的中心、重心等;作为关于该区域的面积的信息的面积信息;以及表示该区域的范围的区域信息,诸如包围该区域的最小矩形的上端的坐标、下端的坐标、左端的坐标和右端的坐标。
产生部25根据从图像处理部24提供的点信息,针对每帧,产生关于目标和事件的信息。产生部25将该信息提供给控制单元13。
目标是例如在从例如使手指靠近输入-输出显示器22的显示屏到在手指靠近显示屏的同时移动手指,到停止使手指靠近显示屏的时段内对输入-输出显示器22的显示屏执行的一系列输入。
事件例如指目标的状态的变化,如目标的位置的变化、新目标的出现(创建)、目标的消失(删除)等。
顺带地,下面将参照图11等来描述关于目标和事件的信息的细节。
产生部25包括目标创建块31、事件创建块32和存储块33。
目标创建块31对从图像处理部24提供的每帧中的输入部分的点信息进行预定的处理,从而根据输入部分的时间或空间位置关系,针对每帧产生关于目标的信息。目标创建块31将关于目标的信息存储在存储块33中。顺带地,关于目标的信息例如为目标的位置信息等。
事件创建块32对从图像处理部24提供的每帧中的输入部分的点信息进行预定的处理,从而检测例如如上所述的目标的创建、删除等的事件。事件创建块32产生关于事件的信息,并对于每帧将关于事件的信息存储在存储块33中。顺带地,关于事件的信息例如为事件的起始时间、事件的类型等。
然后,事件创建块32从存储块33读取每帧的关于目标和事件的信息,并将该信息提供(输出)到控制单元13。
存储块33存储从目标创建块31提供的关于目标的信息和从事件创建块32提供的关于事件的信息。
图3示出了使图1中的便携式电话1执行各种处理的一组软件。
这个软件组包括执行接收光信号处理的软件、执行产生点信息的处理的软件、执行整合处理的软件、执行识别移动、手势等的处理的软件、执行输出处理的软件以及作为较高级应用的控制软件。
图3中的输入-输出显示器22的光学传感器22A接收从外部入射的光,并产生每帧的接收光信号。
在接收光信号处理的层中,对从输入-输出显示器22提供的每帧的接收光信号进行接收光信号处理,例如放大、滤波处理等。由此,获得对应于接收光信号的每帧的图像。
在比接收光信号处理高一级的点信息产生处理的层中,对通过接收光信号处理而获得的图像进行预定的图像处理,如二值化、噪声去除、标定等。由此,检测作为手指等靠近输入-输出显示器22的显示屏的部分的输入部分,然后针对每帧产生该输入部分的点信息。
在比点信息产生处理高一级的整合处理的层中,产生每帧的关于目标的信息,并从通过点信息产生处理获得的点信息中检测诸如目标创建或删除的事件,然后产生关于事件的信息。
在比整合处理高一级的识别处理的层中,通过从通过点信息产生处理获得的点信息中检测(识别)指示目标的状态改变的事件来识别移动、手势等,然后针对每帧产生关于事件的信息。
在比识别处理高一级的输出处理的层中,针对每帧输出通过整合处理和识别处理而产生的关于目标和事件的信息。
在作为比输出处理高一级的应用层的控制软件层中,根据通过输出处理输出的关于目标和事件的信息,创建预定的显示数据,然后将该显示数据提供给输入-输出显示器22,从而例如软键盘被显示在输入-输出显示器22的显示屏上。
接下来将描述通过便携式电话1检测诸如手指的靠近物体距离显示屏的高度。
利用这样一个事实,即,靠近显示屏的手指等的距离显示屏的高度越高,从手指等反射并被光学传感器22A接收的光的量越少,并且从接收光信号处理部23提供给图像处理部24的图像中手指等所靠近的输入部分的亮度值也会相应地降低,便携式电话1可以根据光学传感器22A接收的光的量来检测手指等的高度。
为了检测手指等距离显示屏的高度,例如不仅针对作为正常情况下的一个阈值执行由图像处理部24进行的检测输入部分的二值化处理,还针对多个阈值中的每个执行该二值化处理。
具体地讲,在图4的示例中,使用了接触阈值(图中的虚线)和非接触阈值(图中的实线),接触阈值用于检测手指等的接触,非接触阈值比接触阈值低,用于检测所谓的浮置状态,在浮置状态下,手指等不接触但是分开给定距离。
附带地,在图4中,纵坐标轴表示从接收光信号处理部23提供到图像处理部24的图像的亮度值,横坐标轴表示例如在显示屏上的水平方向上的位置x。附带地,后面将描述的图5也是这样的。
在图4的示例中,在图中与左侧手指接触的部分周围的区域被检测作为输入部分,并且检测到用于输入的左侧手指的接触,其中所述输入部分为显示屏上亮度值等于或高于接触阈值的部分。另外,在图中右侧手指靠近的部分周围的区域被检测作为输入部分,并且检测到用于输入的右侧手指的浮置状态,所述输入部分为显示屏上亮度值等于或高于非接触阈值并且低于接触阈值的部分。因此,当使用两个阈值时,两个高度(即,与接触状态对应的高度0和与浮置状态对应的预定正高度)被检测作为手指等的高度。
在图5的示例中,使用了接触阈值(图中的虚线)和三个非接触阈值#1至#3(图中的实线)。附带地,接触阈值>阈值#1>阈值#2>阈值#3。
在图5的示例中,例如,在图中以基本0高度接触的左侧手指周围的区域被检测作为输入部分,而该输入部分为显示屏上亮度值等于或高于接触阈值的部分,并且用于输入的左侧手指的高度被检测为高度0。此外,在图中以大约高度ha靠近的右侧手指周围的区域被检测作为输入部分,而该输入部分为显示屏上亮度值等于或高于非接触阈值#1且低于接触阈值的部分,并且例如,用于输入的右侧手指的高度被检测为高度ha。在图中以大约高度hb靠近的右侧手指周围的区域被检测作为输入部分,而该输入部分为显示屏上亮度值等于或高于非接触阈值#2且低于非接触阈值#1的部分,并且例如,用于输入的右侧手指的高度被检测为高度hb。在图中以大约高度hc靠近的右侧手指周围的区域被检测作为输入部分,而该输入部分为显示屏上亮度值等于或高于非接触阈值#3且低于非接触阈值#2的部分,并且例如,用于输入的右侧手指的高度被检测为高度hc。因此,当使用四个阈值时,检测到四个高度0、ha、hb和hc。
因此,通过增加二值化处理所使用的阈值的数目,能够增加检测的高度的数目,并提高了检测的高度的分辨率。
为了执行这种高度检测,图像处理部24利用每个阈值对提供给图像处理部24的每帧的图像进行二值化,然后对所得的二值图像进行图像处理,如噪声去除、标定等。由此,图像处理部24针对每个阈值检测输入部分,并对每个阈值产生输入部分的点信息。然后,图像处理部24最终从每个阈值的输入部分的点信息获得将被供给产生部25的每帧的输入部分的点信息,并将高度信息添加到点信息中。
例如,假定对二值化使用n个阈值,阈值按降序为第一阈值到第n阈值,并且对应于阈值检测高度h1至hn,则图像处理部24将针对第一阈值的输入部分的点信息与针对第二阈值的输入部分的点信息进行比较。当在针对第二阈值的输入部分附近存在针对第一阈值的输入部分时,图像处理部24将指示高度h2的高度信息添加到针对第二阈值的输入部分的点信息中,并将针对第二阈值的输入部分的点信息(添加了高度信息的点信息)设置为针对第一阈值的输入部分的点信息。当在针对第二阈值的输入部分的附近不存在针对第一阈值的输入部分时,图像处理部24将指示高度h2的高度信息作为针对第二阈值的输入部分的点信息进行添加。
然后,图像处理部24将针对第二阈值的输入部分的点信息与针对第三阈值的输入部分的点信息进行比较。当在针对第三阈值的输入部分的附近存在针对第二阈值的输入部分时,图像处理部24将针对第三阈值的输入部分的点信息设置为针对第二阈值的输入部分的点信息。当在针对第三阈值的输入部分的附近不存在针对第二阈值的输入部分时,图像处理部24将指示高度h3的高度信息添加到针对第三阈值的输入部分的点信息中。
相似地,图像处理部24将针对第k(3≤k≤n)阈值的输入部分的点信息与针对第(k+1)阈值的输入部分的点信息进行比较。当在针对第(k+1)阈值的输入部分附近存在针对第k阈值的输入部分时,图像处理部24将针对第(k+1)阈值的输入部分的点信息设置为针对第k阈值的输入部分的点信息。当在针对第(k+1)阈值的输入部分的附近不存在第k阈值的输入部分时,图像处理部24将指示高度h(k+1)的高度信息添加到针对第(k+1)阈值的输入部分。
然后,在针对第n阈值的输入部分的点信息经过上述处理之后,图像处理部24将针对第n阈值的输入部分的点信息(添加了高度信息的点信息)设置为这一帧的输入部分的点信息。图像处理部24最终将该点信息提供给产生部25。
另外,如上所述,便携式电话1将如靠近显示屏的手指的物体的一系列输入作为目标进行处理,因此,可以将手指等的高度作为目标的高度进行处理。
即,产生部25基于添加了高度信息的点信息,产生添加了高度信息的关于目标的信息。因此,添加了高度信息的关于目标和事件的信息被输出到控制单元13。
附带地,为了便于描述,在下面将参照图6至图14对高度信息没有被添加到从图像处理部24提供给产生部25的点信息的情况进行描述。
接下来将参照图6的流程图来描述图1中的产生部25进行的整合处理。
附带地,假定已经对第t帧之前的每帧执行了整合处理,并且存储块33至少存储第t帧的关于目标和事件的信息。
在步骤S1,例如,当从图像处理部24向目标创建块31提供了第(t+1)帧的输入部分的点信息时,目标创建块31从存储块33读取第t帧的关于目标的信息,并通过比较第t帧的目标的代表坐标和第(t+1)帧的输入部分的代表坐标来比较第t帧的目标和第(t+1)帧的输入部分的位置关系。
在步骤S2,目标创建块31确定在第t帧的目标中是否存在第(t+1)帧的输入部分位于其附近的目标。当在步骤S32确定在第t帧的目标中存在第(t+1)帧的输入部分位于其附近的目标时,在步骤S3,目标创建块31确定在该目标附近的输入部分是将被添加到作为目标的一系列输入中的最新输入的输入部分,并将在该目标附近的输入部分整合(合并)到该目标中。附带地,当在目标附近存在多个输入部分时,目标创建块31例如将所述多个输入部分中的最靠近目标的输入部分整合到目标中。
例如,在图9中,图9示出了如图7所示的第t帧的目标#1至#3被叠加到如图8所示的第(t+1)帧的输入部分#a至#d上的状态,输入部分#a和#b位于目标#1附近。因为与输入部分#a相比,输入部分#b更靠近目标#1,所以输入部分#b被整合到目标#1中。另外,输入部分#c和#d位于目标#3附近。由于与输入部分#c相比,输入部分#d更靠近目标#3,所以输入部分#d被整合到目标#3中。
附带地,为了便于描述,图7至图9中示出的帧设置有方格。在这种情况下,附近指的是例如在图中的两个方格距离内的范围。
返回参照图6,当在步骤S2确定在第t帧的目标中不存在第(t+1)帧的输入部分位于其附近的目标时,跳过步骤S3。
在步骤S4,目标创建块31确定在第t帧的目标中是否存在没有第(t+1)帧的输入部分位于其附近的目标。当在步骤S4确定在第t帧的目标中存在没有第(t+1)帧的输入部分位于其附近的目标时,在步骤S5,目标创建块31确定作为该目标的一系列输入结束,并删除该目标。
例如,在图9中,在目标#2附近不存在输入部分,因此,删除目标#2。
在步骤S6,事件创建块32创建指示目标已被删除的事件“删除”。
附带地,当在步骤S4确定在第t帧的目标中不存在没有第(t+1)帧的输入部分位于其附近的目标时,跳过步骤S5和S6。
在步骤S7,目标创建块31确定在第(t+1)帧的输入部分中是否存在剩余的没有被整合到第t帧的目标中的输入部分。当在步骤S7确定在第(t+1)帧的输入部分中存在剩余的没有被整合到第t帧的目标中的输入部分时,在步骤S8,目标创建块31确定剩余的没有被整合的输入部分是作为目标的一系列输入的第一个输入的输入部分,并创建新目标。
例如,在图9中,在输入部分#a至#d中剩余的没有被整合到目标中的输入部分#a和#c是作为目标的一系列输入的第一个输入的输入部分,并且新目标被创建。
在步骤S9,事件创建块32创建指示已经创建了目标的事件“创建”。
附带地,当在步骤S7确定在第(t+1)帧的输入部分中不存在剩余的没有被整合到第t帧的目标中的输入部分时,跳过步骤S8和S9。
然后,产生部25等待从图像处理部24提供的下一帧即第(t+2)帧的输入部分的点信息,并返回至步骤S1,以相似地执行从步骤S1往下的处理。
接下来将描述作为用于检测指示目标移动开始的事件“移动开始”和指示目标移动结束的事件“移动结束”的处理的移动识别处理。
将参照图10的流程图来描述由图1中的事件创建块32执行的移动识别处理。
附带地,例如,在时刻t+1完成对第(t+1)帧的输入部分的上述整合处理后,该移动识别处理和将在后面描述的其它识别处理开始。附带地,移动识别处理和其它识别处理彼此并行地执行,或者按预定的顺序依次执行。
在步骤S21,事件创建块32根据由目标创建块31执行的第t帧的目标和第(t+1)帧的输入部分的位置关系的比较结果,确定是否存在已经开始移动的目标。例如,事件创建块32通过确定在第(t+1)帧的输入部分位于其附近的第t帧的目标中是否存在这样的目标,该目标距输入部分的距离为预定距离或更远并且在第(t-1)帧或在第(t-1)帧之前没有为该目标创建事件“移动开始”,来确定是否存在已经开始移动的目标。当在步骤S21确定存在已经开始移动的目标时,在步骤S22,事件创建块32创建事件“移动开始”。
另一方面,当在步骤S21确定不存在已经开始移动的目标时,跳过步骤S22。
在步骤S23,事件创建块32例如根据由目标创建块31执行的第t帧的目标和第(t+1)帧的输入部分的位置关系的比较结果,确定是否存在已经结束移动的目标。例如,事件创建块32通过确定在第(t+1)帧的输入部分位于其附近的第t帧的目标中是否存在这样的目标,该目标距输入部分的距离为预定距离或更近并且在第(t-1)帧或在第(t-1)帧之前没有为该目标创建事件“移动结束”,来确定是否存在已经结束移动的目标。当在步骤S23确定存在已经结束移动的目标时,在步骤S24,事件创建块32创建事件“移动结束”。
另一方面,当在步骤S23确定不存在已经结束移动的目标时,跳过步骤S24。
然后,事件创建块32等待对下一帧即第(t+2)帧的输入部分的整合处理的完成,然后返回至步骤S21以相似地执行从步骤S21往下的处理。
接下来,将参照图11具体地描述在执行了上述的整合处理和移动识别处理之后从产生部25输出至控制单元13的关于目标和事件的信息。
假定在图11的示例中,用户例如使一个手指靠近输入-输出显示器22的显示屏,在保持手指靠近显示屏的同时移动该手指,然后停止使手指靠近显示屏。
图11的上部的图示出了在时刻n的第n帧至在时刻n+5的第(n+5)帧的输入部分(由图中的白色圆圈表示)。图11的下部的图示出了在第n帧至第(n+5)帧输出的关于目标和事件的信息。
在这个示例中,在时刻n用户例如使一个手指靠近输入-输出显示器22的显示屏,在保持手指靠近显示屏的同时在时刻n+2沿图11中从左到右的方向开始移动该手指,然后在时刻n+4停止移动,在时刻n+5使手指离开显示屏。
即,在时刻n用户使手指靠近显示屏,由此在第n帧出现新的输入部分#0,如图11的上部的图所示。
在这种情况下,对应于第n帧的输入部分#0,创建新目标#0。具体地讲,如图11的下部的图所示,创建新目标#0,所述新目标#0的目标ID是0,并且其目标属性中的位置信息等(下面将称作目标相关信息INFO)是输入部分#0的位置信息等。
附带地,目标的实体是存储目标属性并被在存储器等中确保的存储区域。
在第n帧,对应于新目标#0的创建而创建事件“创建”。具体地讲,在第n帧,如图11的下部的图所示,创建新事件#0,新事件#0具有的事件属性包括:事件ID,用于识别事件的信息;事件类型Type,表示事件的类型;识别信息tid,用于识别由该事件表示其状态的目标。在新事件#0中,事件ID为0;事件类型Type为“Create(创建)”,表示新事件的创建;识别信息tid为0,其为目标#0的目标ID。
由于事件具有作为事件属性之一的用于识别由该事件表示其状态的目标的识别信息tid,所以由该事件表示其状态的目标可以通过识别信息tid来识别。
附带地,事件的实体是存储事件属性并被在存储器等中确保的存储区域。
接下来,在第(n+1)帧,如图11的上部的图所示,输入部分#0原样存在而没有移动。
在这种情况下,第(n+1)帧中的输入部分#0位于第n帧的目标#0附近,因此被整合到目标#0中。结果,如图11的下部的图所示,第(n+1)帧的目标#0变成了第n帧的目标#0,该第n帧的目标#0的目标相关信息INFO被第(n+1)帧中的输入部分#0的位置信息等更新,即,变成这样的目标,该目标的目标ID保持为0,并且该目标具有第(n+1)帧中的输入部分#0的位置信息等,作为目标相关信息INFO。
在第(n+2)帧,如图11的上部的图所示,输入部分#0开始移动。
在这种情况下,第(n+2)帧中的输入部分#0位于第(n+1)帧的目标#0附近,因此被整合到目标#0中。结果,如图11的下部的图所示,第(n+2)帧的目标#0变成第(n+1)帧的目标#0,该第(n+1)帧的目标#0的目标相关信息INFO被第(n+2)帧中的输入部分#0的位置信息等更新,即,变成这样的目标,该目标的目标ID保持为0,并且该目标具有第(n+2)帧中的输入部分#0的位置信息等,作为目标相关信息INFO。
另外,在第(n+2)帧,与被整合到目标#0中的输入部分#0的移动开始因而目标#0的移动开始相对应,创建事件“移动开始”。具体地讲,在第(n+2)帧,如图11的下部的图所示,创建新的事件#1,该新的事件#1具有的事件属性包括:与已经创建的事件的事件ID不同的事件ID,例如为1;事件类型Type,为MoveStart(移动开始),表示目标的移动开始;和识别信息tid,为0,其为已经移动的目标#0的目标ID。
接下来,在第(n+3)帧,如图11的上部的图所示,输入部分#0处于移动过程中。
在这种情况下,第(n+3)帧中的输入部分#0位于第(n+2)帧的目标#0附近,因此被整合到目标#0中。结果,如图11的下部的图所示,第(n+3)帧的目标#0变成第(n+2)帧的目标#0,该第(n+2)帧的目标#0的目标相关信息INFO被第(n+3)帧中的输入部分#0的位置信息等更新,即,变成这样的目标,该目标的目标ID保持为0,并且该目标具有第(n+3)帧中的输入部分#0的位置信息等,作为目标相关信息INFO。
在第(n+4)帧中,如图11的上部的图所示,输入部分#0停止。
在这种情况下,第(n+4)帧中的输入部分#0位于第(n+3)帧的目标#0附近,因此被整合到目标#0中。结果,如图11的下部的图所示,第(n+4)帧的目标#0变成第(n+3)帧的目标#0,该第(n+3)帧的目标#0的目标相关信息INFO被第(n+4)帧中的输入部分#0的位置信息等更新,即,变成这样的目标,该目标的目标ID保持为0,并且该目标具有第(n+4)帧中的输入部分#0的位置信息等,作为目标相关信息INFO。
另外,在第(n+4)帧,与被整合到目标#0中的输入部分#0的移动结束因而目标#0的移动结束相对应,创建事件“移动结束”。具体地讲,在第(n+4)帧中,如图11的下部的图所示,创建新的事件#2,该新的事件#2具有的事件属性包括:与已经创建的事件的事件ID不同的事件ID,例如为2;事件类型Type,为MoveStop(移动停止),表示目标的移动结束;和识别信息tid,为0,其为已经结束了移动的目标#0的目标ID。
在时刻n+5,用户停止使手指保持在显示屏附近。因此,在第(n+5)帧,输入部分#0消失,如图11的上部的图所示。
在这种情况下,在第(n+5)帧,对应于输入部分#0的消失,删除目标#0。
另外,在第(n+5)帧,与输入部分#0的消失因而删除目标#0相对应,创建事件“删除”。具体地讲,在第(n+5)帧,如图11的下部的图所示,创建新的事件#3,该新的事件#3具有的事件属性包括:与已经创建的事件的事件ID不同的事件ID,例如为3;事件类型Type,为Delete(删除),表示目标的删除;和识别信息tid,为0,其为已删除的目标#0的目标ID。
将根据图12的示例进一步描述关于目标和事件的信息。
假定在图12的示例中,用户使一个手指靠近输入-输出显示器22的显示屏,在保持手指靠近显示屏的同时移动手指,之后停止使手指靠近显示屏,同时使另一个手指靠近输入-输出显示器22的显示屏,在保持该手指靠近显示屏的同时移动该手指,之后停止使该手指靠近显示屏。
图12的上部的图示出了第n帧至第(n+5)帧的输入部分(由图中的白色圆圈表示)。图12的下部的图示出了在第n帧至第(n+5)帧输出的关于目标和事件的信息。
在这个示例中,在时刻n用户例如使一个手指靠近输入-输出显示器22的显示屏,在保持手指靠近显示屏的同时在时刻n+2沿图12中从左到右的方向开始移动该手指,然后在时刻n+4停止移动,并在时刻n+5使手指停止保持在显示屏附近。
另外,在时刻n+1用户使另一手指靠近显示屏,在保持该手指靠近显示屏的同时在时刻n+2沿图12中从右到左的方向开始移动该手指,在时刻n+3停止移动,然后在时刻n+4停止使该手指保持在显示屏附近。
即,在时刻n用户使一个手指靠近显示屏,从而在第n帧出现新的输入部分#0,如图12的上部的图所示。
在这种情况下,如在图11的情况中,对应于第n帧的输入部分#0,创建新的目标#0。具体地讲,在第n帧,如图12的下部的图所示,创建新的目标#0,该新的目标#0具有的目标属性包括:为0的目标ID和作为目标相关信息INFO的第n帧的输入部分#0的位置信息等。
另外,在第n帧,如图12的情况,对应于新的目标#0的创建而创建事件“创建”。具体地讲,在第n帧,如图12的下部的图所示,创建新的事件#0,该新的事件#0具有的事件属性包括:事件ID,为0;事件类型Type,为“Create”;识别信息tid,为0,其为目标#0的目标ID。
接下来,在第(n+1)帧,如图12的上部的图所示,输入部分#0原样地存在而没有移动。
在这种情况下,第(n+1)帧中的输入部分#0位于第n帧的目标#0附近,因此被整合到目标#0中。结果,如图12的下部的图所示,第(n+1)帧的目标#0变成了第n帧的目标#0,该第n帧的目标#0的目标相关信息INFO被第(n+1)帧中的输入部分#0的位置信息等更新,即,变成这样的目标,该目标的目标ID保持为0,并且该目标具有第(n+1)帧中的输入部分#0的位置信息等,作为目标相关信息INFO。
另外,在时刻n+1,用户使另一手指靠近显示屏,因此在第(n+1)帧出现新的输入部分#1,如图12的上部的图所示。
在这种情况下,对应于第(n+1)帧的输入部分#1创建新的目标#1。具体地讲,在第(n+1)帧,如图12的下部的图所示,创建新的目标#1,该新的目标#1具有的目标属性包括:与已经创建的目标的目标ID不同的目标ID,为0;作为目标相关信息INFO的第(n+1)帧的输入部分#1的位置信息等。
另外,在第(n+1)帧,对应于新的目标1的创建而创建事件“创建”。具体地讲,在第(n+1)帧,如图12的下部的图所示,创建新的事件#1,该事件#1具有的事件属性包括:与已经创建的事件的事件ID不同的事件ID,为1;事件类型Tpye,为Create;识别信息tid,为1,其为目标#1的目标ID。
在第(n+2)帧,如图12的上部的图所示,输入部分#0和#1开始移动。
在这种情况下,第(n+2)帧中的输入部分#0位于第(n+1)帧的目标#0附近,因此被整合到目标#0中。结果,如图12的下部的图所示,位于第(n+2)帧的目标#0变成第(n+1)帧的目标#0,该第(n+1)帧的目标#0的目标相关信息INFO被第(n+2)帧中的输入部分#0的位置信息等更新,即,变成这样的目标,该目标的目标ID保持为0,并且该目标具有第(n+2)帧中的输入部分#0的位置信息等,作为目标相关信息INFO。
类似地,第(n+2)帧中的输入部分#1位于第(n+1)帧的目标#1附近,因此被整合到目标#1中。结果,如图12的下部的图所示,位于第(n+2)帧的目标#1变成第(n+1)帧的目标#1,该第(n+1)帧的目标#1的目标相关信息INFO被第(n+2)帧中的输入部分#1的位置信息等更新,即,变成这样的目标,该目标的目标ID保持为1,并且该目标具有第(n+2)帧中的输入部分#1的位置信息等,作为目标相关信息INFO。
另外,在第(n+2)帧,与被整合到目标#0中的输入部分#0的移动开始因而目标#0的移动开始相对应,创建事件“移动开始”。具体地讲,在第(n+2)帧,如图12的下部的图所示,创建新的事件#2,该事件#2具有的事件属性包括:与已经创建的事件的事件ID不同的事件ID,例如为2;事件类型Type,为MoveStart;和识别信息tid,为0,其为已经开始移动的目标#0的目标ID。
类似地,在第(n+2)帧,与被整合到目标#1中的输入部分#1的移动开始因而目标#1的移动开始相对应,创建事件“移动开始”。具体地讲,在第(n+2)帧,如图12的下部的图所示,创建新的事件#3,该事件#3具有的事件属性包括:与已经创建的事件的事件ID不同的事件ID,例如为3;事件类型Type,为MoveStart;和识别信息tid,为1,其为已经开始移动的目标#1的目标ID。
接下来,在第(n+3)帧,如图12的上部的图所示,输入部分#0处于移动过程中。
在这种情况下,第(n+3)帧中的输入部分#0位于第(n+2)帧的目标#0附近,因此被整合到目标#0中。结果,如图12的下部的图所示,第(n+3)帧的目标#0变成第(n+2)帧的目标#0,该第(n+2)帧的目标#0的目标相关信息INFO被第(n+3)帧中的输入部分#0的位置信息等更新,即,变成这样的目标,该目标的目标ID保持为0,并且该目标具有第(n+3)帧中的输入部分#0的位置信息等,作为目标相关信息INFO。
另外,在第(n+3)帧,输入部分#1停止。
在这种情况下,第(n+3)帧中的输入部分#1位于第(n+2)帧的目标#1附近,因此被整合到目标#1中。结果,如图12的下部的图所示,第(n+3)帧的目标#1变成第(n+2)帧的目标#1,该第(n+2)帧的目标#1的目标相关信息INFO被第(n+3)帧中的输入部分#1的位置信息等更新,即,变成这样的目标,该目标的目标ID保持为1,并且该目标具有第(n+3)帧中的输入部分#1的位置信息等,作为目标相关信息INFO。
另外,在第(n+3)帧,与被整合到目标#1中的输入部分#1的移动结束因而目标#1的移动结束相对应,创建事件“移动结束”。具体地讲,在第(n+3)帧中,如图12的下部的图所示,创建新的事件#4,该事件#4具有的事件属性包括:与已经创建的事件的事件ID不同的事件ID,例如为4;事件类型Type,为MoveStop;和识别信息tid,为1,其为已经结束移动的目标#1的目标ID。
接下来,在第(n+4)帧中,如图12的上部的图所示,输入部分#0停止。
在这种情况下,第(n+4)帧中的输入部分#0位于第(n+3)帧的目标#0附近,因此被整合到目标#0中。结果,如图12的下部的图所示,第(n+4)帧的目标#0变成第(n+3)帧的目标#0,该第(n+3)帧的目标#0的目标相关信息INFO被第(n+4)帧中的输入部分#0的位置信息等更新,即,变成这样的目标,该目标的目标ID保持为0,并且该目标具有第(n+4)帧中的输入部分#0的位置信息等,作为目标相关信息INFO。
在时刻n+4,用户停止使后来靠近的一个手指保持在显示屏附近。因此,在第(n+4)帧,输入部分#1消失,如图12的上部的图所示。
在这种情况下,在第(n+4)帧,删除目标#1。
另外,在第(n+4)帧,与被整合到目标#0中的输入部分#0的移动结束因而目标#0的移动结束相对应,创建事件“移动结束”。具体地讲,在第(n+4)帧中,如图12的下部的图所示,创建新的事件#5,该事件#5具有的事件属性包括:与已经创建的事件的事件ID不同的事件ID,例如为5;事件类型Type,为MoveStop;和识别信息tid,为0,其为已经结束移动的目标#0的目标ID。
另外,在第(n+4)帧,对应于输入部分#1的消失因而删除目标#1,创建事件“删除”。具体地讲,在第(n+4)帧,如图12的下部的图所示,创建新的事件#6,该事件#6具有的事件属性包括:与已经创建的事件的事件ID不同的事件ID,例如为6;事件类型Type,为Delete;和识别信息tid,为1,其为已删除的目标#1的目标ID。
在时刻n+5,用户停止使另一手指保持在显示屏附近。因此,在第(n+5)帧,输入部分#0消失,如图12的上部的图所示。
在这种情况下,在第(n+5)帧,删除目标#0。
另外,在第(n+5)帧,对应于输入部分#0的消失因而删除目标#0,创建事件“删除”。具体地讲,在第(n+5)帧,如图12的下部的图所示,创建新的事件#7,该事件#7具有的事件属性包括:与已经创建的事件的事件ID不同的事件ID,例如为7;事件类型Type,为Delete;和识别信息tid,为0,其为已删除的目标#0的目标ID。
如上所述,即使存在对多个点的输入时,输入-输出面板15也能够根据被执行外部输入的输入部分的时间或空间位置关系来产生表示一系列输入的关于目标的信息,以及产生并输出表示目标的状态变化的关于事件的信息。因此,可以容易地处理关于对多个点的输入的信息。
附带地,当执行整合处理和识别处理时,存储在存储块33中的事件的数量持续增加。因此,存储块33可根据预定的条件(例如,当特定的时间流逝时或当事件的数量超过预定数量时),存储的事件的信息执行删除处理或者所谓的垃圾收集。
另外,对于关于事件的信息,存储块33可根据预定的条件(例如,当特定的时间流逝时或当事件的数量超过预定数量时),对存储的目标的信息执行删除处理。
附带地,在上述的整合处理中,删除第t帧的目标中的不在第(t+1)帧的输入部分附近的目标。除此之外,第t帧的目标中的不在第(t+1)帧的输入部分附近的目标可继续在之后保留在几帧中,然后再被删除。然后,即使在用户偶然使手指从显示屏离开的情况下,例如,当用户立即使手指靠近显示屏时,这时与靠近显示屏的手指对应的输入部分可被整合到仍然保留的目标中。因此,能够防止由于这种操作错误而停止处理。
另外,在事件检测(识别)中进行了比较的第(t+1)帧的输入部分的所有点信息和从存储块33读取的第t帧的所有关于目标的信息被与这些信息中的高度信息所指示的高度无关地使用。除此之外,可通过例如仅使用其高度信息表示预定范围(如预定阈值以下的范围)内的高度的信息来设置限制。通过设置这种限制,能够减少事件检测的计算量。
接下来将描述识别处理的另一示例。
例如,假定用户使两个手指靠近显示屏,并在保持手指靠近显示屏的同时,做出一个手势,如移动两个手指从而以显示屏上的某点为圆心画圆。作为识别这种手势的示例,例如,可检测(识别)事件“旋转”,该事件表示由在手指的靠近状态开始时连接显示屏上两个手指分别靠近的点的线和在两个手指移动以画圆时连接显示屏上这两个手指分别靠近的点的线形成的角度(在下文中该角度被称作旋转角)的绝对值变为预定的阈值或更大。这种识别处理将被称作旋转识别处理。
接下来将参照图13的流程图来描述由事件创建块32执行的旋转识别处理。
在步骤S41,在目标创建块31执行的整合处理结束之后,事件创建块32将在整合处理中使用的输入部分的帧设置为正被处理的帧,并根据正被处理的帧的输入部分的点信息来确定正被处理的帧是否具有两个输入部分。当在步骤S41确定正被处理的帧具有两个输入部分时,在步骤S42,事件创建块32将两个输入部分的代表坐标存储在存储块33中作为开始帧的输入部分的代表坐标,其中所述开始帧为上述手势开始时的帧。
在步骤S43,在整合处理结束后,事件创建块32将在整合处理中使用的输入部分的帧设置为正被处理的帧,并根据正被处理的帧的输入部分的点信息来确定正被处理的帧是否具有两个输入部分。当在步骤S43确定正被处理的帧具有两个输入部分时,在步骤S44,事件创建块32根据这两个输入部分的代表坐标和存储在存储块33中的开始帧的输入部分的代表坐标来计算如上所述的旋转角的绝对值,并确定旋转角的绝对值是否为预定的阈值或更大。
具体地讲,例如,假定开始帧的两个输入部分是如图14的左图所示的输入部分A1和B1,并且正被处理的帧的两个输入部分是如图14的右图所示的输入部分A2和B2,则事件创建块32计算旋转角θ作为上述的旋转角,其中,旋转角θ是由连接正被处理的帧的两个输入部分A2和B2的线与连接开始帧的两个输入部分A1和B1的线形成的角。
附带地,假定开始帧的输入部分A1和B1的各自的代表坐标为(Xa1,Ya1)和(Xb1,Yb1),正被处理的帧的输入部分A2和B2的各自的代表坐标为(Xa2,Ya2)和(Xb2,Yb2),则由利用这些代表坐标的等式(1)来表示旋转角θ。
等式(1)
θ=atan2(yb1-ya1,xb1-xa1)-atan2(yb2-ya2,xb2-xa2)...(1)
附带地,等式(1)右侧的函数atan2(y,x)对于自变量x和y满足
并返回在
范围内的以弧度为单位的角度
附带地,当x>0且y=0时,atan2(y,x)=0。当x<0且y=0时,atan2(y,x)=π。当x=y=0时,atan2(y,x)未定义。当y<0时,-π<atan2(y,x)<0。当y>0时,0<atan2(y,x)<π。
当在步骤S44确定旋转角为预定的阈值或更大时,即,当在步骤S44确定旋转角θ的绝对值为预定的阈值或更大时,例如在步骤S45,事件创建块32创建事件“旋转”。然后,例如,事件创建块32从存储块33删除开始帧的代表坐标,并返回至步骤S43以类似地执行从步骤S43往下的处理。
另一方面,当在步骤S43确定正被处理的帧不具有两个输入部分时,在步骤S46,事件创建块32根据正被处理的帧的输入部分的点信息来确定正被处理的帧是否具有0个输入部分。当在步骤S46确定正被处理的帧具有0个输入部分时,事件创建块32确定上述手势暂时结束,并返回至步骤S41以类似地执行从步骤S41往下的处理。
当在步骤S46确定正被处理的帧不具有0个输入部分时,即,当正被处理的帧具有一个输入部分或三个或更多个输入部分时,事件创建块32返回至步骤S43,以类似地执行从步骤S43往下的处理。
如上所述,通过当上述的旋转角θ的绝对值为预定的阈值或更大时产生事件“旋转”,能够识别诸如移动两个手指从而以显示屏上的某点为圆心画圆的手势。然后,响应于事件“旋转”的产生,可以执行预定的处理,例如,将显示在显示屏上的图像等旋转一旋转角θ的处理。
已经描述了在移动和旋转识别处理中根据作为输入部分的点信息的代表坐标来创建事件的情况。除此之外,例如,可以根据作为输入部分的点信息的面积信息、区域信息等来创建事件。
例如,能够通过确定由与手指对应的输入部分的面积信息表示的面积是否为预定的阈值或更大而将手指用力按压输入-输出显示器22的显示屏识别为事件,并创建事件。
图15是从产生部25输出至控制单元13的添加了高度信息的关于目标和事件的信息的示例。
附带地,以XML(可扩展标识语言)格式来描述这个示例中的目标和事件信息。
在图15的目标和事件信息的上数第二行中,作为关于输出时间的时间信息的在目标和事件信息输出时的帧编号(frameNumber)、输出时的帧的目标的数量(numofTargets)和输出时的帧的事件的数量(numofEvents)被分别示出为22、2和1。
上数第四行示出了在输出时帧(该帧的帧编号为22)中存在的两个目标中的目标ID为0的目标的信息。类似地,上数第七行示出了在输出时帧(该帧的帧编号为22)中存在的两个目标中的目标ID为1的目标的信息。
具体地讲,上数第四行或第七行以下面从左开始的顺序示出了:目标ID(tid)、作为关于目标创建时间的时间信息的目标创建时的帧编号(ft)、目标的代表坐标中的x坐标(x)和目标的代表坐标中的y坐标(y)、高度信息(z)、目标的区域的面积(a)以及作为区域信息的包围目标的最小矩形的上端的坐标(rt)、下端的坐标(rb)、左端的坐标(rl)和右端的坐标(rr)。在上数第四行中,上述值为0、1、10、20、10、100、5、25、5和15,在上数第七行中,上述值为1、2、30、40、0、200、30、50、25和35。附带地,在这个示例中,目标创建时的帧编号(ft)、目标的代表坐标(x和y)、高度信息(z)、目标的区域的面积(a)以及坐标(rt,rb,rl和rr)为目标属性。
上数第十行至第十五行示出了在目标和事件信息输出时在帧(该帧的帧编号为22)中创建的一个事件的事件信息。附带地,当创建了多个事件时,例如,添加用于描述关于每个事件的事件信息的行。
具体地讲,上数第十行以下面的从左开始的顺序示出了:事件ID(eid)、作为关于事件创建时间的时间信息的在事件创建时的帧(输出时的帧)的编号(fn)、事件类型(type)、由该事件表示其状态的目标的数量(numofID)以及作为事件的附加信息的附加信息的条数(numofValue)。在上数第十行中,它们的值为1、22、Rotate、2和3。附带地,在这个示例中,事件创建时的帧的编号(fn)、事件类型(type)、目标的数量(numofID)和附加信息的条数(numofValue)为事件属性。
附带地,因此,在事件属性中包括事件创建时的帧的编号(fn)例如使得可以从新事件开始顺序地检索事件。结果,改善了事件的可检索性。
上数第十一行和第十二行示出了作为识别信息tid的目标的目标ID,其中目标的状态由该事件表示。在这个示例中,它的值为0和1。
上数第十三行至第十五行示出了附加信息。上数第十三行示出了作为附加信息(extra ex)的该事件“旋转”的旋转中心的x坐标。上数第十四行示出了作为附加信息(extra ex)的该事件“旋转”的旋转中心的y坐标。上数第十五行示出了作为附加信息(extra ex)的该事件“旋转”的旋转角θ。在这个示例中,它们的值分别为20、30和20。
接下来,参照图16A至图21,将描述在通过使手指等靠近输入-输出显示器22的显示屏来执行的输入中,利用关于靠近显示屏的手指等的距离显示屏的高度的高度信息由控制单元13执行的预定处理。
例如,当用户将手指定位于距离输入-输出显示器22的显示屏足够远的高度h1时,如图16A所示,便携式电话1在显示屏上显示软键盘,如图16D所示。然后,当用户使手指靠近显示屏至高度h2,该高度h2稍微靠近输入-输出显示器22的显示屏并小于高度h1时,如图16B所示,便携式电话1在显示屏上以放大状态显示在软键盘上的键中手指所靠近的预定键,如图16E所示。另外,当用户进一步使手指靠近显示屏至小于高度h2的高度h3时,如图16C所示,便携式电话1以被选状态显示以放大状态显示的键中手指所靠近的一个键(图16F中的阴影部分),如图16F所示,并输入对应于该键的信息。控制单元13执行的用于实现便携式电话1的这种操作的处理将被称作软键盘输入处理。
将参照图17的流程图来描述控制单元13执行的软键盘输入处理。
例如,当用户根据对输入-输出显示器22的显示屏的预定输入而给出利用软键盘开始输入的指令时,开始软键盘输入处理。
在步骤S61,控制单元13将预定的显示数据提供到输入-输出面板15,从而例如在输入-输出显示器22的显示屏上显示如图16D所示的由多个键形成的软键盘。附带地,软键盘的这种显示状态将被称作初始状态。
在步骤S62,当从输入-输出面板15向控制单元13提供了帧的目标和事件信息时,控制单元13根据包括在目标和事件信息中的目标的高度信息来确定是否存在位于高度h2或更低高度处的目标。当在步骤S62确定存在位于高度h2或更低高度处的目标时,在步骤S63,控制单元13将位于高度h2或更低高度处的目标设置为关注目标。
在步骤S64,控制单元13创建预定的显示数据,并将该显示数据提供到输入-输出面板15,以在输入-输出显示器22上显示软键盘,使关注目标附近的预定键处于放大状态。
因此,在输入-输出显示器22上显示了键“U”、键“I”、键“H”、键“J”、键“K”、键“N”和键“M”例如处于放大状态的软键盘,如图16E所示。
在步骤S65,当从输入-输出面板15向控制单元13提供了下一帧的目标和事件信息时,控制单元13根据包括在目标和事件信息中的关注目标的高度信息,确定关注目标是否位于高度h3或更低高度。当在步骤S65确定关注目标位于高度h3或更低高度时,在步骤S66,控制单元13创建预定的显示数据,并将该显示数据提供给输入-输出面板15,以在输入-输出显示器22上显示软键盘使关注目标附近的一个键处于被选状态,并输入对应于该键的信息。
因此,例如,在输入-输出显示器22上显示如图16F所示的软键盘,并输入对应于键(图中的“J”)的字符信息J。
然后该处理返回至步骤S61以类似地执行从步骤S61往下的处理。
当在步骤S65确定关注目标位于高于高度h3处时,在步骤S67,控制单元13根据包括在从输入-输出面板15提供的目标和事件信息中的关注目标的高度信息,确定关注目标是否位于高于高度h2处。当在步骤S67确定关注目标位于高于高度h2处时,假定临时取消了键的放大。然后该处理返回至步骤S61,以类似地执行从步骤S61往下的处理。因此,软键盘的显示返回至初始状态。
另一方面,当在步骤S67确定关注目标位于高度h2或更低高度时,处理返回至步骤S65,以类似地执行从步骤S65往下的处理。
附带地,当在步骤S62确定不存在位于高度h2或更低高度的目标时,该处理返回至步骤S62,以类似地执行从步骤S62往下的处理。
如上所述,对应于靠近显示屏的手指等的高度,便携式电话1例如以放大状态显示在显示屏上显示的软键盘上的靠近目标的预定键,并在以放大状态显示的预定键中选择靠近目标的一个键,然后输入与所述一个键对应的信息。因此,例如,用户可通过简单的输入操作输入期望的信息。
附带地,在本示例中,当目标位于高度h2或更低高度时,便携式电话1进行放大显示。除此之外,可设置针对目标的高度的多个阈值,可针对每个阈值执行高度确定处理,由此例如进行放大显示,从而使目标的高度越低,放大显示的对象的尺寸越大。对于将在后面描述的图20A至图20F和图21的示例中的放大显示也是这样的。
另外,在本示例中,当目标达到高度h2或更低高度,而且目标进一步达到高度h3或更低高度时,便携式电话1执行预定的处理。除此之外,当目标达到高度h2或更低高度,目标进一步达到高度h3或更低高度,之后目标的高度变得大于高度h3时,便携式电话1可执行预定的处理。对于将在后面描述的图18A至图18F和图19的示例以及图20A至图20F和图21的示例中的放大显示也是这样的。
接下来,例如,当用户将手指定位于距离输入-输出显示器22的显示屏足够远的高度h1时,如图18A所示,便携式电话1例如显示屏幕上没有任何显示的画面,如图18D所示。然后,当用户使手指靠近显示屏至稍微靠近显示屏的高度h2时,如图18B所示,便携式电话1在显示屏上在靠近显示屏的手指附近显示菜单项目,如图18E所示。另外,当用户进一步使手指靠近显示屏至高度h3时,如图18C所示,便携式电话1以被选状态显示在显示的菜单项目中手指所靠近的一个项目(图18F的阴影部分),如图18F所示,并根据该项目开始预定的处理。控制单元13进行的用于实现便携式电话1的这种操作的处理将被称作菜单项目选择处理。
将参照图19的流程图来描述控制单元13执行的菜单项目选择处理。
在步骤S81,当从输入-输出面板15向控制单元13提供了每帧的目标和事件信息时,控制单元13根据包括在目标和事件信息中的目标的高度信息,确定是否存在位于高度h2或更低高度的目标。当在步骤S81确定存在位于高度h2或更低高度的目标时,在步骤S82,控制单元13将位于高度h2或更低高度的目标设置为关注目标。
在步骤S83,控制单元13创建预定的显示数据,并将该显示数据提供到输入-输出面板15,以在显示屏上显示关注目标附近的菜单项目。
因此,例如,在输入-输出显示器22上显示如图18E所示的菜单项目。
在步骤S84,当从输入-输出面板15向控制单元13提供了下一帧的目标和事件信息时,控制单元13根据包括在目标和事件信息中的关注目标的高度信息,确定关注目标是否位于高度h3或更低高度。当在步骤S84确定关注目标位于高度h3或更低高度时,在步骤S85,控制单元13创建预定的显示数据,并将显示数据提供给输入-输出面板15,以在输入-输出显示器22上显示菜单项目使靠近关注目标的一个项目处于被选状态,并执行对应于处于被选状态的项目的预定处理。
因此,例如,在输入-输出显示器22上显示如图18F所示的菜单项目,例如,对应于处于被选状态的项目(图中的项目“编辑”),启动用于编辑显示在显示屏上的图像的应用。
然后该处理返回至步骤S81,以类似地执行从步骤S81往下的处理。
当在步骤S84确定关注目标位于高于高度h3处时,在步骤S86,控制单元13根据包括在从输入-输出面板15提供的目标和事件信息中的关注目标的高度信息,确定关注目标是否位于高于高度h2处。当在步骤S86确定关注目标位于高于高度h2处时,假定临时取消菜单项目的显示。然后该处理返回至步骤S81,以类似地执行从步骤S81往下的处理。因此,菜单项目停止被显示。
另一方面,当在步骤S86确定关注目标位于高度h2或更低高度时,处理返回至步骤S84,以类似地执行从步骤S84往下的处理。
附带地,当在步骤S81确定不存在位于高度h2或更低高度的目标时,该处理返回至步骤S81,以类似地执行从步骤S81往下的处理。
如上所述,对应于靠近显示屏的手指等的高度,便携式电话1在显示屏上在目标附近显示菜单项目,并在显示的菜单项目中选择一个选项,然后执行与该项目对应的预定处理。因此,例如,用户可通过简单的输入操作执行预定的处理。
接下来,例如,当用户将手指定位于距离输入-输出显示器22的显示屏足够远的高度h1时,如图20A所示,便携式电话1在显示屏上显示多个照片的照片列表,如图20D所示。然后,当用户使手指靠近显示屏至稍微靠近显示屏的高度h2时,如图20B所示,便携式电话1在显示屏上以放大状态显示照片列表中手指所靠近的预定照片,如图20E所示。另外,当用户进一步使手指靠近显示屏至高度h3时,如图20C所示,便携式电话1以被选状态显示以放大状态显示的照片中手指所靠近的一张照片(图20F中的阴影部分),如图20F所示,并对该照片执行预定的处理。控制单元13执行的用于实现便携式电话1的这种操作的处理将被称作照片选择处理。
将参照图21的流程图来描述控制单元13执行的照片选择处理。
例如,当用户根据对输入-输出显示器22的显示屏的预定输入而给出显示照片列表的指令时,开始照片选择处理。
在步骤S101,控制单元13将预定的显示数据提供到输入-输出面板15,从而例如在输入-输出显示器22的显示屏上显示如图20D所示的照片1至照片12的照片列表。附带地,照片列表的这种显示状态将被称作初始状态。
在步骤S102,当从输入-输出面板15向控制单元13提供了帧的目标和事件信息时,控制单元13根据包括在目标和事件信息中的目标的高度信息来确定是否存在位于高度h2或更低高度处的目标。当在步骤S102确定存在位于高度h2或更低高度处的目标时,在步骤S103,控制单元13将位于高度h2或更低高度处的目标设置为关注目标。
在步骤S104,控制单元13创建预定的显示数据,并将该显示数据提供到输入-输出面板15,以在输入-输出显示器22上显示照片列表使关注目标附近的预定照片处于放大状态。
因此,在输入-输出显示器22上显示例如照片6、照片7、照片10和照片11处于放大状态的照片列表,如图20E所示。
在步骤S105,当从输入-输出面板15向控制单元13提供了下一帧的目标和事件信息时,控制单元13根据包括在目标和事件信息中的关注目标的高度信息,确定关注目标是否位于高度h3或更低高度。当在步骤S105确定关注目标位于高度h3或更低高度时,在步骤S106,控制单元13创建预定的显示数据,并将显示数据提供给输入-输出面板15,以在输入-输出显示器22上以使靠近关注目标的一张照片处于被选状态的方式显示照片列表,并对该照片执行预定的处理。例如,控制单元13开始用于放大该照片并在整个显示屏上显示放大的照片的处理。
因此,在输入-输出显示器22上显示例如如图20F所示的照片7处于被选状态的照片列表,并且例如用于放大处于被选状态的照片7并在整个显示屏上显示放大的照片7的示例处理开始。
然后,该处理返回至步骤S101,以类似地执行从步骤S101往下的处理。
当在步骤S105确定关注目标位于高于高度h3处时,在步骤S107,控制单元13根据包括在从输入-输出面板15提供的目标和事件信息中的关注目标的高度信息,确定关注目标是否位于高于高度h2处。当在步骤S107确定关注目标位于高于高度h2处时,假定临时取消了照片的放大。然后该处理返回至步骤S101,以类似地执行从步骤S101往下的处理。因此,照片列表的显示返回至初始状态。
另一方面,当在步骤S107确定关注目标位于高度h2或更低高度时,处理返回至步骤S105,以类似地执行从步骤S105往下的处理。
附带地,当在步骤S102确定不存在位于高度h2或更低高度的目标时,该处理返回至步骤S102,以类似地执行从步骤S102往下的处理。
如上所述,对应于靠近显示屏的手指等的高度,便携式电话1以放大状态显示在显示屏上显示的照片列表中靠近目标的预定照片,并在以放大状态显示的预定照片中选择靠近目标的一张照片,然后对这张照片执行预定的处理,如放大等。因此,例如,用户可通过简单的输入操作执行预定的处理。
附带地,利用这样的事实,即,靠近显示屏的手指等的高度越高,光学传感器22A的接收到从手指等反射的光的光接收部分的面积就越小,以及从产生部25提供(输出)到控制单元13的目标信息中的面积信息表示的面积对应地减小,便携式电话1除了进行由添加到目标信息中的高度信息表示的高度的阈值确定之外,还可以进行由面积信息表示的面积的阈值确定。因此,例如,可更可靠地执行根据手指等的高度的处理。
图22是示出应用了本发明的便携式电话的另一实施例的结构的示例的框图。
在图22的便携式电话101中,通过将图1的输入-输出面板15中的产生部25移到控制单元13中来形成控制单元111。然而,在图22中,存储单元14被用作图1中的存储块33。因此,图22的便携式电话101可执行与图1中的便携式电话1相似的处理。
图23是示出应用了本发明的便携式电话的另一实施例的结构的示例的框图。
在图23的便携式电话201中,通过将图1的输入-输出面板15中的图像处理单元24和产生部25移到控制单元13中来形成控制单元211。然而,在图23中,存储单元14被用作图1中的存储块33。
如上所述的一系列处理不仅可以通过硬件也可以通过软件来执行。当这一系列处理要通过软件来执行时,构成软件的程序从程序记录介质被安装到包含在专门硬件中的计算机或例如可通过在其上安装各种程序来执行各种功能的通用个人计算机中。
图24是示出了通过程序执行上述一系列处理的计算机的硬件的结构的示例的框图。
在该计算机中,CPU 241、ROM 242和RAM 243通过总线244相互连接。
总线244还与输入-输出接口245连接。输入-输出接口245与由键盘、鼠标、麦克风等形成的输入单元246、由显示器、扬声器等形成的输出单元247、由硬盘、非易失性存储器等形成的存储单元248、由网络接口等形成的通信单元249、以及用于驱动可移动介质251(如磁盘、光盘、磁光盘、半导体存储器等)的驱动器250相连接。
在如上所述构造的计算机中,例如,CPU 241将存储在存储单元248中的程序经由输入-输出接口245和总线244加载到RAM 243中,然后执行该程序,从而执行上述一系列处理。
由计算机(CPU 241)执行的程序例如以被记录在可移动介质251上的状态被提供,可移动介质251是由磁盘(包括软盘)、光盘(包括CD-ROM(致密盘只读存储器)、DVD(数字多功能盘)等)、磁光盘、半导体存储器等形成的封装介质,或者经由诸如局域网、互联网、数字卫星广播等的有线或无限传输介质提供。
然后,通过将可移动介质251安装在驱动器250中,可经由输入-输出接口245将程序安装在存储单元248中。也可以经由有线或无线传输介质通过通信单元249来接收该程序,然后将该程序安装在存储单元248中。另外,可以预先将该程序安装在ROM 242或存储单元248中。
附带地,通过计算机执行的程序可按照本说明书中描述的顺序按时间顺序来执行处理,或者可并行执行处理或以必要的时序(如进行呼叫时)执行处理。
要注意的是,本发明的实施例不仅可以为上述的便携式电话1,例如还可以是TV(电视)接收器,在不脱离本发明的精神的情况下,可以做出各种改变。
本领域的技术人员应该理解,可根据设计要求和其它因素做出各种修改、组合、子组合和变更,只要它们在权利要求或其等同物的范围内即可。