使用移动终端看用户手掌的装置和方法

文档序号:6412768阅读:161来源:国知局
专利名称:使用移动终端看用户手掌的装置和方法
技术领域
本发明涉及用于读取手掌的装置和方法。更具体地说,本发明涉及用于使用移动终端读取用户手掌的装置和方法。
背景技术
许多人认为个人手掌线揭示在他们的未来和命运中究竟什么事情会发生或改变。一些线不是永久的以及会根据个人的努力或由于个人健康改变、环境改变或个人的运气改变而改变。
尽管主线的位置,诸如生命线、智慧线和感情线是永久的,但个人手掌上连接到主线的细微线或其他辅助线会随着时间消失或出现。手掌线也会产生许多人认为预测命运变化的新形状或标记。手掌线中的这些变化随时间或以规则间隔不定期发生。新线会出现以告诉人们在不久将来中的转折点。看手掌者认为除非命运有突然变化或将突然变化,否则手掌线将保持不变很长时间。手掌线多久改变一次对每个人是唯一的以及随职业改变。看手掌者认为从事于具有利润和亏损的波动的企业的人在他们的手掌线中比领薪水的人经历更频繁的变化。看手掌者认为他们能通过仔细地观察近年出现或消失的手掌线,预测他们命运的任何变化。看手掌被认为是深入了解一个人的特性、命运或未来,其被蒙上了神秘感。
通常,希望解释他们的手掌线的人拜访看手掌者或使用有关手掌术的书或通过Internet获得的信息试图看手掌。如果移动终端提供看手掌功能,它将是有趣的娱乐以便使用户以看手掌为乐,而与时间和地点无关。

发明内容
因此,本发明的目的是提供用于使用移动终端看手掌的方法。
为实现本发明的目的,提供一种用于使用移动终端,读取用户手掌的装置和方法。该装置和方法包括在手掌拍摄模式中拍摄用户的手掌;将所拍摄的手掌图象转换成灰度级图象;检测手掌图象中的边缘;从手掌抽取每条线的值;基于所抽取的值,获得手掌的每条线的长度和斜率;以及基于手掌的每条线的长度和斜率,输出手掌读取结果。
为实现本发明的另一目的,提供用于使用移动终端,读取手掌的装置和方法。该装置和方法包括当将移动终端改变成手掌拍摄模式时,显示手形框架;拍摄手形框架内的手掌;将所拍摄的手掌图象改变成灰度级图象;检测手掌图象中的边缘;测量手掌的生命线的长度和斜率;测量手掌的感情线的长度;测量手掌的智慧线的长度和斜率;以及基于所测量的手掌的线的长度和斜率,输出手掌读取结果。


本发明的上述和其他目的、特征和优点从下述结合附图的详细描述将更显而易见,其中图1是示例说明根据本发明的实施例,具有看手掌功能的移动终端的框图;图2A是示例说明使用根据本发明的实施例的移动终端,看手掌的过程的流程图;图2B是在图2A的手掌拍摄模式中所获得的原始图象的图;图3A是示例说明在图2A的看手掌过程中,将原始图象转换成灰度级图象的过程的流程图;图3B示例说明根据图3A的过程处理的图象;图4A是示例说明用于在图2A的看手掌过程中,对比度增强的过程的流程图;图4B是示例说明根据图4A的过程处理的图象的图;
图5A是示例说明用于在图2A的看手掌过程中,用于执行边缘检测的过程的流程图;图5B和5C是示例说明图5A的过程的图;图5D是示例说明当应用3×3遮光框(mask)时获得的图象的图;图5E是示例说明当应用5×5遮光框时获得的图象的图;图5F是示例说明根据图5A处理的图象的图;图6A是示例说明在图2A的看手掌过程中,用于移除图象噪声,诸如细微线的过程的流程图;图6B和6C是示例说明图6A的过程的图;图6D是示例说明在执行图6A的过程前的图象的图;图6E是示例说明根据图6A的过程处理的图象的图;图7A是示例说明用于在图2A的看手掌过程中,用于二进制化的过程的流程图;图7B是示例说明根据图7A的过程处理的图象的图;图8A是示例说明在图2A的看手掌过程中,用于形状处理的过程的流程图;图8B是示例说明图8A中的遮光框的图;图8C是示例说明根据图8A的过程处理的图象的图;图9是示例说明在图2A的看手掌过程中,用于抽取手掌上的线的过程的流程图;图10A是示例说明根据本发明的实施例,表示在图9中抽取生命线的值的过程的流程图;图10B和10C是用于解释图10A的过程的视图;图10D是示例说明用于抽取图10A中的生命线的移动的图;图10E是示例说明根据图10A的过程,所抽取的生命线的图象的图;图10F和10G是表示根据本发明的实施例,抽取图9A中的生命线的值的流程图;图10H至10K是示例说明图10F和10G的每个过程的图;图10L是示例说明用于在图10F和10G中抽取生命线的移动的图;图10M是示例说明根据图10F和10G的过程所抽取的生命线的图象的图;图11A是示例说明根据本发明的实施例,用于抽取感情线的值的过程的流程图;图11B是示例说明根据本发明的实施例,在图9中抽取感情线的值的过程的流程图;图11C是示例说明在手掌的原始图象中的感情线的图;图11D和11E是示例说明根据本发明的实施例抽取的感情线的图;图11F和11G是示例说明根据本发明的实施例抽取的感情线的图;图11H是示例说明在图11A和11B的过程中,用于抽取感情线的移动的图;图11I是示例说明根据图11A和11B的过程抽取的感情线的图象的图;图12A和12B是表示在图9中抽取的智慧线的值的流程图;图12C和12D是示例说明根据图12A和12B的过程抽取的智慧线的图;图12E是示例说明用于在图12A和12B的过程中,抽取智慧线的值的移动的图;图12F是示例说明根据图12A的过程所抽取的智慧线的图象的图;图13A是示例说明在图2A的读取手掌过程中,用于内插手掌线的过程的流程图;图13B是示例说明用于在图9中,存储手掌线的值的堆栈结构的图;图13C是示例说明根据图13A的过程获得的生命线的图象的图;图13D是示例说明根据图13A的过程获得的感情线的图象的图;以及图13E表示根据图13A的过程获得的智慧线的图象。
在图中,应理解到在所有图中,使用相同的标记。
具体实施例方式
在下文中,将参考附图,描述本发明的实施例。
在下述描述中,使用手掌上生命线、感情线和智慧线开始的示例性的手形框架、区域、遮光框型等等。然而,对本领域的技术人员来说仅提供这些示例性的描述和定义以便提高本发明的理解以及能通过各种改进执行本发明将是显而易见的。
在本发明的实施例的下述描述中,将说明具有照相机的移动终端。然而,本发明同样适用于没有照相机的通用移动终端。同时,根据本发明的实施例,为看手掌目的,能拍摄左手或右手。假定在本发明的实施例中拍摄的图象具有352×288像素的大小。在本发明的实施例中提供的“看手掌功能”是指解释用户手掌上的生命线、感情线和智慧线的功能,以及告知用户他们的命运,诸如婚姻前景、职业、个性和健康状态。
图1是示例说明根据本发明的实施例的移动终端的框图。
参考图1,射频(RF)部123执行无线通信功能。RF部123包括用于执行正发射的信号的频率的上变频和放大的RF发射机(未示出),以及用于通过低噪声放大正接收的信号以及执行该信号的频率的下变频的RF接收机(未示出)。数据处理部120包括用于编码和调制正发射的信号的发射机(未示出)以及用于解调和解码正接收的信号的接收机(未示出)。数据处理部120可以包括调制解调器和编解码器。编解码器包括用于处理分组数据的数据编解码器以及用于处理音频信号诸如语音信号的音频编解码器。音频处理部125再现从数据处理部120的音频编解码器输出的音频信号或将从麦克风生成的音频信号传送到数据处理部120的音频编解码器。
键输入部127具有用于输入数字和字符的键以及用于设置各种功能的功能键。根据本发明的实施例,键输入部127还包括用于实现看手掌功能的键。
根据本发明的实施例,存储器130可以包括程序存储器、数据存储器和用于存储手掌线的图象的图象存储器。根据本发明的实施例,程序存储器包括用于控制移动终端的通用功能的程序以及用于处理输出到显示部160的手掌图象的程序。数据存储器临时存储在实现上述程序期间生成的数据。同时,图象存储器存储手掌的数据。
控制部110控制移动终端的整体操作。控制部110可以包括数据处理部120。根据通过键输入部127输入的命令设置的模式,控制部110控制用于实现看手掌功能的操作。
照相机组件140用来形成图象数据。照相机组件140包括用于将所拍摄的光信号转换成电信号的照相机传感器,以及用于将由照相机传感器拍摄的模拟图象信号转换成数字数据的信号处理器。假定照相机传感器是电荷耦合器件(CCD)传感器,信号处理器能是数字信号处理器(DSP)。照相机传感器和信号处理器能集成为单个元件或分开为独立的元件。
图象处理部150生成用于显示从照相机组件140输出的图象信号的图像数据。图象处理部150按帧处理从照相机组件140输出的图象信号。同时,图象处理部150调整帧图象以便符合可在显示单元160上显示的特征,诸如大小和分辨率。图象处理部150包括图象编解码器,以及用预定方式压缩在显示单元160上显示的帧图象数据或将压缩的帧图象数据恢复成原始帧图象数据。
显示单元160显示从图象处理部150输出的图象数据或从控制部110输出的用户数据。同时,显示单元160显示在控制部110的控制下再现的移动图像。显示单元160能是液晶显示器(LCD),由LCD控制器、用于存储图象数据的存储器和LCD器件。当LCD是触摸屏时,它能用作输入部。
连接到外部通信设备的通信接口170控制将所拍摄的图象传送到外部设备或从外部设备接收所拍摄的图象。外部设备能是扫描仪、计算机、数码相机等等。通信接口170在控制部110的控制下,执行移动终端和外部设备间的通信接口。通信接口170输出所存储的图象数据或从外部设备接收图象数据。
参考图1,根据本发明的实施例的移动终端能拍摄手掌以便显示或传送所拍摄的手掌图象。照相机组件140内置在移动终端中或连接到移动终端的外部。换句话说,照相机组件140能是移动终端的内部或外部元件。照相机组件140能使用电荷耦合器件(CCD)传感器。CCD传感器将由照相机组件140拍摄的图象转换成电信号,然后,通过照相机组件140内的信号处理器,转换成数字图象数据。数字图象数据和同步信号被输出到图象处理部150。同步信号能是水平同步信号(Hsync)或垂直同步信号(Vsync)。
图2A是示例说明使用根据本发明的实施例的移动终端,看手掌的过程的流程图。
现在,将参考图1和2A详细地描述本发明的实施例。
参考图2A,用户能使用键输入部127选择“手掌”菜单同时移动终端处于菜单显示模式中。控制部110检测“手掌”菜单的选择以及显示包含在那个菜单中的项。如果用户从显示项选择“显示手掌”,控制部110将检测该选择并且将在显示部160上显示所存储的用于手掌的图象数据。如果用户从所显示的项选择“名人的手掌”,控制部110将检测该选择以及将在显示部160上显示名人手掌的图象数据。如果用户选择“拍摄手掌”,控制部110将在步骤201检测该选择以及将移动终端的当前模式改变成手掌拍摄模式。在手掌拍摄模式中,控制部110控制显示部160在步骤202显示手形框架。所显示的手形框架包括手掌上开始生命线、感情线和智慧线的区域。如果用户用放在在步骤202显示的手形框架上的一只手按压照相机键,控制部110将在步骤203检测该键输入,以及在步骤204,将存储所拍摄的手掌图象。图2B表示示例性的拍摄手掌图象。
在步骤300,将所拍摄的手掌图象转换成灰度级图象。图3A是示例说明将原始手掌图象转换成灰度级图象的过程的流程图。假定所拍摄的图象在大小方面是352×288像素,图3A中的“60≤x<300”是能转换成灰度级的图象数据的区域。将删除其余图象数据。
参考图3A,控制部110在步骤301读取所存储的图象数据,以及进入步骤302以便初始化上述图象数据区中的X和Y坐标。随后,控制部110浏览图象数据的整个区域(352×288像素)以及在步骤303,确定以像素的图象数据的特定位置上的X坐标是否处于60≤x<300的范围内。控制部110还确定包括在那个范围中的图象数据是否着色。如果图象数据是彩色的,控制部110将在步骤304检测此以及在步骤305,将16位彩色图象转换成8位灰度级图象。如本领域所公知的,亮度同相正交(luminance in-phase quadrature)(YIQ)是将亮度与红、绿、蓝(RGB)色空间分开的色空间。通过将RGB转换成YIQ,可以获得所需灰度级图象。
公式1Y=0.299R+0.587G+0.114BI=0.596R-0.275G-0.321BQ=0.212R-0.523G+0.311B
灰度=Rx0.299+Gx0.587+Bx0.114公式1是用于将RGB色空间转换成YIQ灰度级空间的算法。YIQ的Y分量是亮度,而I和Q分量是实际颜色信息。因此,当仅将Y值应用于RGB时,能获得灰度级图象。
如果图象数据的特定位置上的X坐标不包括在范围60≤x<300中,控制部110将在步骤303检测此以及将进入步骤306以便将不包括在那个范围中的图象数据的像素值转换成“0.”。
当执行步骤303至306时,控制部110确定X坐标是否对应于图象数据的水平端点。如果X坐标不是图象数据的水平端点,控制部110在步骤307将检测此以及将进入步骤308以便使X变量加1。然后,控制部110将重复步骤303至306。如果X坐标是图象数据的水平端点,控制部110将在步骤307检测此以及将确定在相同位置上的Y坐标是否是图象数据的垂直端点。如果Y坐标不是图象数据的垂直端点,控制部110将在步骤309检测此以及将进入步骤310以便使Y变量加1以及初始化X变量。然后,控制部110将再次重复步骤303至306。如果Y坐标是图象数据的垂直端点,控制部将在步骤309检测此以及将进入步骤312。在步骤305从彩色图象转换的灰度级图象以及具有在步骤306转换成“0”的像素值的图象均存储在存储器130中。图3B表示在步骤303至305,转换成灰度级的手掌图象。
在步骤400,处理转换成灰度级的图象数据以便具有增强的对比度。图4A是示例说明增强灰度级图象中的对比度的过程的流程图。在本发明的实施例中,使用直方图扩展算法(histogram stretchingalgorithm)来增强图象对比度。
参考图4A,在步骤401,控制部110读取在步骤304存储的手掌图象。控制部110在步骤402检测在手掌图象上的可变亮度值的分布。控制部110分别在步骤403和404获得最低亮度值和最高亮度值。在步骤405,基于最低和最高亮度值,产生查找表,控制部110进入步骤406以便计算能调整对比度扩展级的新像素值。使用公式2能获得新像素值。
公式2 控制部110在步骤407将在查找表计算的输出值指定为手掌图象数据,使图象数据中的深色更深以及使亮色更亮,从而增强图象对比度。控制部110在步骤408存储对比度增强的手掌图象。图4B表示具有经直方图扩展增强的对比度的手掌图象。
在步骤500,在对比度增强的手掌图象上执行边缘检测。图5A是示例说明在手掌图象上检测边缘的过程的流程图。参考图5A,控制部110在步骤501读取存储在存储器130中的手掌图象以及进入步骤502以便定义用于边缘检测的Prewitt遮光框。
图5B和5C分别表示3×3遮光框和5×5遮光框,其用来检测边缘。当将如图5B所示的3×3遮光框应用于源图象时,控制部110将源图象的像素值的3×3阵列(围绕中心像素的八个像素)乘以遮光框中的相应值以及将乘积合计成单个结果M,并在步骤503将其存储在存储器130中。随后,控制部110在步骤504用所存储的结果M代替中心像素值a5。在步骤505,将合成手掌图象存储在存储器130中。图5F表示具有使用Prewitt遮光框。图5E表示当应用5×5遮光框时获得的图象。从图5D和5E可以清楚地看出,在边缘检测中,5×5遮光框能比3×3遮光框降低图象噪声到更大的程度。因此,在检测手掌图象的边缘中,最好使用5×5遮光框。
在步骤500使用Prewitt遮光框边缘检测后,控制部110在步骤600执行过滤以便通过去除手掌图象上的细微线来增强图象和降低噪声。在本发明的实施例中,执行中值滤波以便降低图象中的噪声。图6a是示例说明在手掌图象上执行中值滤波的过程的流程图。参考图6A,控制部110在步骤601读取存储在存储器130中的手掌图象以及进入步骤602以便将图象划分成3×3块的九个像素。在步骤603,依次考虑在九个像素中的值后,控制部110在步骤604按数字升序排列像素值以及在步骤605,用框中所有像素的中值代替(3×3块中五个像素)的中心像素的值。图6B和6C表示中值滤波的例子。更具体地说,图6B(a)表示3×3块中的九个像素。按“2,2,2,2,4,4,4,5,10”的升序排列九个像素中的值。如图6B(b)所示,用所排列的像素值的中值“4”替换3×3块中中心像素的值。在该中值滤波中,移除为噪声分量的像素值“10”。图6C(a)表示3×3块中的九个像素。按“2,2,2,2,2,2,15,15,15”的升序排列九个像素中的值。如图6C(b)所示,用所排列的像素值的中值“4‘代替3×3块中的中心像素的值。图6B(a)和6C(a)表示具有边缘的像素。从图6B(b)和6C(b)可以清楚地看出,中值滤波器响应完全保护边缘。在步骤606,将通过中值滤波增强的手掌图象存储在存储器130中。图6D表示在应用中值滤波器前的手掌图象。图6E表示通过应用中值滤波器所增强的手掌图象。
为移除图象噪声和提高像素连接性,控制部110在步骤700执行二进制化。在本发明的实施例中,执行双阈值以便使手掌图象中的陡沿更陡以及使弱沿更弱。双阈值过程使用二个阈值去除手掌图象中的噪声和细微线。图7A是示例说明在手掌图象上执行双阈值的过程的流程图。参考图7A,控制部110在步骤701读取手掌图象以及在步骤702,分析在步骤400使用过的直方图以便抽取手掌图象的亮度值。在步骤703,控制部110设置两个阈值T1和T2以及进入步骤704以便将手掌图象的亮度值排序成0、1(T1)和2(T2)。在步骤705,将连接到像素“1”的像素“2”改变成具有值“1”后,在步骤706,控制部110将256灰度级图象转换成仅具有0和1的像素值的二进制图象。在步骤707,将二进制手掌图象存储在存储器130中。图7B表示二进制化成0和1的手掌图象。
在完成二进制化后,控制部110在步骤800执行形状处理以便进一步理解手掌图象的嵌入结构。本发明的实施例使用形态学操作以及更具体地说,使用用于形状处理的腐蚀操作(erosion operation)。腐蚀操作通过消除小图象目标特征,诸如目标和背景间的噪声尖峰,或通过扩展背景来降低图象中目标的大小。当使用腐蚀遮光框在二进制图象上执行腐蚀操作时,如图8B所示,从每个白色目标的外围去除一个像素层。图8A是示例说明在手掌图象上执行腐蚀操作的过程的流程图。参考图8A,控制部110在步骤801读取存储在存储器130中的手掌图象,并进入步骤802,以便将手掌图象划分成3×3像素。在步骤803,控制部110确定3×3像素值是否等于腐蚀遮光框中的值。如果3×3像素值等于腐蚀遮光框中的值,控制部110在步骤803检测此并进入步骤804以便用255(白色)的亮度值代替像素值。如果3×3像素值不等于腐蚀遮光框中的值,控制部110将在步骤803检测此并进入步骤805以便用0(黑色)亮度值代替像素值。由腐蚀操作处理过的手掌图象在步骤806存储在存储器130中。图8C表示由腐蚀操作处理过的手掌图象。
在形态学操作后,控制部110进入步骤900以便从手掌图象抽取生命线、感情线和智慧线。图9是表示抽取生命线、感情线和智慧线的过程的流程图。参考图9,控制部110在步骤901读取存储在存储器130中的手掌图象以及从手掌图象检测生命线、感情线和智慧线。
具体地说,控制部110在步骤902检测生命线以及进入步骤1000以便抽取生命线的值。
图10A是表示根据本发明的实施例,在图9中抽取生命线的过程的流程图。图10B和10C是用于说明图10A的过程的视图。图10D表示用于在图10A中抽取生命线的移动。图10E表示根据图10A抽取的生命线的图象。图10F和10G是示例说明根据本发明的实施例,在图9中抽取生命线的值的过程的流程图。图10H至10K是示例说明图10F和10G的每个过程的图。图10L示例说明用于抽取图10F的生命线的移动。图10M表示根据图10F和10G的过程抽取的生命线的图象。
在下文中,将参考图10A至10C,详细地描述根据本发明的实施例,抽取生命线的值的过程。控制部110检测生命线的起点。当在步骤202,在显示部160上显示手形框架时,在手形框架中表示生命线、感情线和智慧线开始的区域。生命线和智慧线以相同起点开始。在步骤902,如果不需要搜索生命线,过程进入图10A的1011,其中执行其他功能。为找出生命线的起点,控制部110进入步骤1001以及检测在包括在生命线开始的区域10中的白像素中的最大水平长度11。在步骤1002,控制部110将水平长度11(见图10C)的右端设置成第一点12。在步骤1003,控制部110设置垂直线的较下端,其从第一点12向下画到连接黑像素的底部白像素为起点13。如果起点13下的像素为白,控制部110将在步骤1005检测此以及将进入步骤1008以便将白像素的位置值存储在堆栈中。控制部110将重复步骤1004以便移向的在向下方向中另一像素。如果那个像素不为白,控制部110将在步骤1005检测此以及将进入步骤1006以便在右边的像素。
如果在右边的像素为白,控制部110将在步骤1007检测此以及在步骤1008将白像素的位置值存储在堆栈中。然后,控制部110重复步骤1004以便移向更低像素。如果步骤1006的右边的像素不为白,控制部110将在步骤1007检测此以及将返回到步骤1006以便移向右。图10D是用于说明在图10A中,在像素上的移动的视图,其从起点13开始。参考图10D,控制部110进入步骤1004以便向下移动(方向①)到起点13下面的像素。在步骤1005检测到起点13下的像素不为白时,控制部110进入步骤1006以便向右移动(方向②)。在步骤1007检测到右方向中的白像素时,控制部110在步骤1008中将白像素的位置值存储在堆栈中。随后,控制部110重复步骤1004以便向下移动(方向③)。控制部110在步骤1005检测到方向③中的白像素以及在步骤1008将白像素的位置值存储在堆栈中。控制部110再次重复步骤1004以便向下移动(方向④)。垂直位置值的移动和存储的上述步骤直到在预定多个像素,例如5个像素上的移动期间不再检测到白像素为止。如果不再检测到白像素,控制部110将在步骤1010检测此以及将终止抽取生命线的过程。图10E表示根据该过程抽取的生命线。
在下文中,将参考图10F至10M,详细地描述根据本发明的第二实施例,抽取生命线的值的过程。作为检测生命线的起点的第一步骤,控制部110进入步骤1021以及将如图10I所示的遮光框17应用于图10H中生命线下面的区域以便消除细微线。在步骤1021所使用的遮光框覆盖生命线下的区域。假定图象的整个大小为352×288像素,应用于生命线下的区域的遮光框17的X和Y值(像素)如下。
遮光框的Y值113至288遮光框的X值f(x)=-0.016x2+1.58X+175将由遮光框应用的像素均转换成值“0”(黑),从而生成具有消除细微线的图象,如图10J所示。
在应用遮光框17后,控制部110进入步骤1022以便指定位于面对生命线的遮光框17的边界上的像素16。假定像素16具有坐标(X,Y)=(70,130),其对应于遮光框17的Y轴的十分之一。在步骤1023,控制部110通过在每次增加时,按预定多个像素增加指定像素16的Y坐标,指定多个像素。假定按每5个像素增加Y坐标直到指定十二个像素为止。在指定十二个像素后,控制部110进入步骤1024以便存储白像素,通过增加十二个像素的X坐标,首先检测每个像素。如果十二个的任何一个存储白像素等等,任何当前像素Pn具有小于在前像素Pn-1或大于下面像素Pn+1的值(X坐标),控制部110将在步骤1031检测此以及将进入步骤1032以便检测该像素。鉴于生命线的基本模型,所存储的白像素应当具有逐渐增加的值。如果任何白像素具有小于在前一个或大于下一个的值,其不满足生命线的基本模型,因此被删除。因此,例如,假定在步骤1024存储的十二个白像素具有下述值(X坐标)80,85,82,100,120,130,150,140,155,160,170,165,在步骤1032删除三个白像素值“85”、“150”和“160”。该值“85”大于下一白像素的“82”。值“150”大于下一白像素“140”。同时,值“165”小于在前白像素的“170”。在删除三个白像素后,控制部110进入步骤1033以便将具有最大X坐标“170”的白像素设置成起点13。
在生命线的任何位置中能设置起点13。为抽取生命线的值,执行在(a)方向中的线检测和在(b)方向中的线检测的两个连续步骤,或反之亦然。在本发明的实施例中,假定在(b)方向中的检测进入在(a)方向中的检测。
控制部110进入步骤1034以便移向起点13下的像素。如果起点13下的像素为白,控制部110将在步骤1035检测此以及将进入步骤1038以便将白像素的位置值存储在堆栈中。控制部110将重复步骤1034以便在向下方向中移向另一像素。如果那个像素不为白,控制部110将在步骤1035检测此以及将进入步骤1036以便移向右边的像素。
如果右边的像素为白,控制部110将在步骤1037检测此以及在步骤1038,将白像素的位置值存储在堆栈中。然后控制部110重复步骤1034以便移向下面像素。如果步骤10369的右边的像素不是白,控制部110将在步骤1037检测此以及将返回到步骤1037以便向右移。垂直位置值的移动和存储步骤直到在多个像素,例如五个像素上移动期间,不再检测到白像素为止。如果不再检测到白像素,控制部110将在步骤1030检测此以及在步骤1040将移向起点13。
在步骤1041,控制部110从起点13移向左边的像素。如果左边的像素为白,控制部110将在步骤1042检测此以及将进入步骤1048,以便将白像素的位置值存储在堆栈中。控制部110将重复步骤1041以便移向左方向中的另一像素。如果那个像素不为白,控制部110将在步骤1044检测此以及将进入步骤1045以便移向向上方向中的像素。
如果向上像素为白,控制部110将在步骤1047检测此以及将在步骤1048将白像素的位置值存储在堆栈中。然后,控制部110将重复步骤1041以便移向左边的像素。
如果步骤1041的向上像素不为白,控制部110将在步骤1044检测此以及将返回到步骤1045以便向上移动。重复位置值的移动和存储步骤直到检测到手形框架的位置值为止。控制部110将在步骤1042或1046检测手形框架的位置值以及在步骤1043终止抽取生命线的过程。
图10J是用于通过在像素上,从起点13开始移动,抽取生命线的过程的视图。参考图10J,控制部110进入步骤1034以便向下移动(方向①)到起点13下的像素。在步骤1035检测到起点13下的像素不是白时,控制部110进入步骤1036以便向右移(方向②)。在步骤1037检测到右方向中的白像素时,控制部110在步骤1038将白像素的位置值存储在堆栈中。随后,控制部110重复步骤1034以便向下移(方向③)。控制部110在步骤1036检测在方向③中的白像素,以及在步骤1038将白像素的位置值存储在堆栈中。控制部110再次重复步骤1034以便向下移(方向④)。重复位置值的移动和存储的上述步骤直到在多个像素,例如5个像素上移动期间,不再检测到白像素为止。如果不再检测到白像素,那么控制部110将在步骤1030检测此以及将在步骤1040移动到起点13。
控制部110进入步骤1041以便从起点13移向左(方向(12))。在步骤1044检测方向(12)中的白像素时,控制部110进入步骤1048以便将白像素的位置值存储在堆栈中。控制部110重复步骤1041以便移向左方向(方向(13))中的另一像素。控制部在步骤1044检测到左边的像素不为白以及进入步骤1045以便向上移动(方向(14))。在步骤1047检测到方向(14)中的白像素时,控制部110在步骤1048将白像素的位置值存储在堆栈中。控制部110再次重复步骤1041以便向左移(方向(15))。重复位置值的移动和存储的步骤直到检测到手形框架的位置值为止。控制部110在步骤1042或1046检测手形框架的位置值以及终止抽取生命线过程。图10L表示由该过程抽取的生命线。
在下文中,将参考图11A至图11E、11H和11I,详细地说明根据本发明的实施例,抽取感情线的过程。在步骤903,确定是否需要分析感情线。如果回答为否,过程进入1114。如果回答为是,过程进入步骤1101。当显示手形框架时,控制部110进入步骤1101以便检测包括在感情线开始的区域20中的白像素的最大水平长度21。在步骤1102,控制部110将水平长度21的右端设置为第一点22(见图11D)。控制部110检测第一点22上的像素是否为白。如果第一点22上的像素不为白,控制部110将在步骤1103检测此以及将进入步骤1105以便将从第一点22向下画到接触黑像素的底部白像素的垂直线的下端设置为起点23。如果第一点22上的像素为白,如图11E所示,控制部110将在步骤1103检测此以及将进入步骤1104以便将第一点22设置为起点23。
在步骤1106,控制部110从起点23移向左边的像素。如果左边的像素为白,控制部110将在步骤1107检测此以及将进入步骤1110以便将白像素的位置值存储在堆栈中。控制部110将重复步骤1106以便移向左方向中的另一像素。如果那个像素不为白,控制部110将在步骤1107检测此以及将进入步骤1108以便向上移动。如果上面像素为白,控制部110将在步骤1109检测此以及将在步骤1110将白像素的位置值存储在堆栈中。然后,控制部110将重复步骤1106以便移向左边的像素。如果步骤1108的上面像素不为白,控制部110将在步骤1109检测此以及将返回步骤1108以便向上移动。
在下文中,将参考图11B、11C和11F至11I,详细地说明根据本发明的另一实施例,抽取感情线的过程。在步骤903,确定是否需要分析感情线。如果回答为否,过程进入步骤1114。如果回答为是,过程进入步骤1121。作为检测用于生命线的起点的第一步骤,控制部110进入步骤1121以及将遮光框24应用于感情线上的区域以便消除细微线。在步骤1121使用的遮光框覆盖感情线上的区域。假定图象的整个大小为352×288像素,遮光框24具有下述X和Y值(像素)的矩形区域。
遮光框的Y值0至84遮光框的X值199至308将由遮光框24应用的像素均转换成值“0”(黑),从而生成具有从图11C的源图象移除的细微线的如图11G所示的图象。
当应用遮光框24后,控制部110进入步骤1122以便指定位于面对感情线的遮光框24的边界上的像素25。假定像素25具有坐标(X,Y)=(300,85),其对应于遮光框24的X轴的十分之一。在步骤1123,控制部110通过对每个递减,按预定多个像素减小指定像素25的X坐标来指定多个像素。假定每10个像素减少X坐标直到指定10个像素为止。在指定十个像素后,控制部110进入步骤1124以便存储白像素,通过增加10个像素的Y坐标,首先检测每个白像素。假定在步骤1124存储的白像素具有下述值(Y坐标)100,83,92,88,99,103,105,98,90 and 101,具有最大值“105”的白像素设置为用于在步骤1125抽取感情线的起点23。
控制部110进入步骤1126以便从起点23移向左边的像素。如果左边的像素为白,控制部110将在步骤1127检测此以及将进入步骤1130,以便将白像素的位置值存储在堆栈中。控制部110将重复步骤1126以便移向右方向中的另一像素。如果左边的像素不为白,控制部110将在步骤1127检测此以及将进入步骤1128以便向上移动。如果上面像素为白,控制部110将在步骤1129此以及在步骤1130,将白像素的位置值存储在堆栈中。然后,控制部110将重复步骤1126以便移向左边的像素。如果步骤1128的上面像素不为白,控制部110将在步骤1129检测此,以及将进入步骤1132以便确定在重复移动期间,是否不再检测到白像素。如果不再检测到白像素,该过程终止。如果确定其他白像素,过程返回步骤1128以便向上移动。
图11H是用于说明从起点23开始,通过在像素上的移动抽取感情线的过程的视图。参考图11H,控制部110进入步骤1106以便从起点23移向左(方向①)。在步骤1107检测到方向①中的白像素时,控制部110进入步骤1110以便将白像素的位置值存储在堆栈中。控制部110重复步骤1106以便移向左方向(方向②)中的另一像素。控制部在步骤1107检测到左边的像素不为白并进入步骤1108以便向上移动(方向③)。在步骤1109检测到方向③中的白像素时,控制部110在步骤1110将白像素的位置值存储在堆栈中。控制部110再次重复步骤1106以便向左移(方向④)。重复位置值的移动和存储的步骤直到在多个像素,例如5个像素上的移动期间不再检测到白像素为止。如果不再检测到白像素,控制部110将在步骤1112检测此以及将终止抽取感情线的过程。图11I表示根据该过程抽取的感情线。
控制部110在步骤904检测终止抽取感情线的过程以及进入步骤1200以便抽取智慧线的值。图12A和12B是示例说明抽取智慧线的值的过程的流程图。图12C和12D是用于说明如何检测用于抽取智慧线的起点的视图。在步骤904,确定是否需要智慧线。如果回答为否,过程进入步骤1222。如果答案为是,过程进入步骤1201。参考图12A至12D,控制部110首先检测感情线的起点23,然后进入步骤1201以便从感情线的起点向左移动直到找到白像素为止。在步骤1202检测到左方向中的白像素时,控制部110进入步骤1203以便将白像素设置为第一点31。在步骤1204,控制部110将从起点31向下画向接触黑像素的底部白像素的垂直线的下端设置为起点32。起点32在250至270像素的范围内具有固定X坐标。起点32的Y坐标是感情线的起点23的Y坐标加上沿Y轴的预定多个像素(约20像素)的值。由于在智慧线的任何位置中能设置起点32,执行在(a)方向中检测和(b)方向中的智慧线的两个连续步骤,或反之亦然。在本发明的实施例中,假定首先在(a)方向中检测智慧线。
控制部110进入步骤1205以便从起点32移向左边的像素。如果左边的像素为白,控制部110将在步骤1207检测此以及将进入步骤1211以便将白像素的位置值存储在堆栈中。控制部110将重复步骤1205以便移向左方向中的另一像素。如果左边的像素不为白,控制部110将在步骤1207检测此以及将进入步骤1208以便移向向上方向中的像素。
如果上面像素为白,控制部110将在步骤1210检测此以及将在步骤1211将白像素的位置值存储在堆栈中。然后,控制部110将重复步骤1205以便移向左边的像素。
如果步骤1208的上面像素不为白,控制部110将在步骤1210检测此以及将返回步骤108以便向上移动。重复位置值的移动和存储的步骤直到检测到手形框架的位置值。控制部110在步骤1206或1209检测手形框架的位置值以及终止检测在(a)方向中的智慧线的过程。控制部110在步骤1213返回到起点32。
控制部110进入步骤1214以便从起点32移向在右边的像素。如果右边的像素为白,控制部110将在步骤1215检测此以及将进入步骤1218以便将白像素的位置值存储在堆栈中。控制部110将重复步骤1214以便移向右方向中的另一像素。如果右边的像素不为白,控制部110将在步骤1215检测此以及将进入步骤1216以便移向向下方向中的像素。
如果下面像素为白,控制部110将在步骤1217检测此以及在步骤1218,将白像素的位置值存储在堆栈中。然后,控制部110将重复步骤1214以便移向右边的像素。如果步骤1216的下面像素不为白,控制部110将在步骤1217检测此以及将进入步骤1220以便确定在重复移动期间,是否检测到任何白像素。如果不再检测到白像素,那么过程终止抽取智慧线的过程。如果确定其他白像素,过程返回步骤1216以便向下移动。重复白像素的移动和存储步骤直到在多个像素,例如5个像素上移动期间,不再检测到白像素为止。
图12E是用于说明通过从起点32开始,在像素上移动抽取智慧线的过程的视图。参考图12E,控制部110进入步骤1205以便从起点32向左移动(方向①)。在步骤1207检测到方向①中的白像素时,控制部110进入步骤1211以便将白像素的位置值存储在堆栈中。控制部110重复步骤1205以便移向左方向(方向②)中的另一像素。在步骤1207检测到方向②中的白像素时,控制部110进入步骤1211以便将白像素的位置值存储在堆栈中。控制部110重复步骤105以便移向左方向(方向③)中的另一像素。控制部在步骤1207检测到左边的像素也是白以及在步骤1211存储像素的位置值。控制部110重复步骤1205以便移向左方向(方向④)中的另一像素。控制部110在步骤1207检测到左边的像素不为白,并进入步骤1208以便向上移动(方向⑤)。控制部110在步骤1210检测到上面像素不是白并返回到步骤1208以便向上移动(方向⑥)。在步骤1210检测到方向⑦中的白像素时,控制部110在步骤1211将白像素的位置值存储在堆栈中。控制部110再次重复步骤1205以便向左移动(方向⑦)。重复位置值的移动和存储的步骤直到检测手形框架的位置值为止。控制部110在步骤1206或1209检测手形框架的位置值以及终止检测(a)方向中的智慧线的过程。控制部110在步骤1213返回到起点32。
控制部110进入步骤1214以便从起点32移向右(方向⑩)。在步骤1215检测到方向⑩中的白像素时,控制部110进入步骤1218以便将白像素的位置值存储在堆栈中。控制部110重复步骤1214以便移向右方向(方向(11))中的另一像素。控制部110在步骤1215检测到右边的像素不为白以及进入步骤1216以便移向向下方向(方向(12))中的像素。在步骤1217检测到方向(12)中的白像素时,控制部在步骤1218将白像素的位置值存储在堆栈中。控制部110重复步骤114以便向右移动(方向(13))。在步骤1215检测到方向(13)中的白像素时,控制部110在步骤1218将像素的位置值存储在堆栈中。控制部110再次重复步骤1214以便向右移动(方向(14))。重复位置值的移动和存储的步骤以便在多个像素上,例如5个像素上移动期间,不再检测到白像素为止。如果不再检测到白像素,控制部110将在步骤1220检测此以及将终止抽取智慧线的方法。图12F表示根据上述过程抽取的智慧线。
在抽取生命线、感情线和智慧线后,控制部110进入步骤1300以及执行内插以便获得手掌的每条线的长度和斜率。在本发明的优选实施例中,基于感情线的长度,以及生命线和智慧线的长度和斜率,输出手掌读取结果。同时,使用Lagrange多项式以便实现手掌线的内插。下面将详细地描述Lagrange内插。
通过“n+1”数据点(xi,yi)的度n的多项式定义如下
f(x)=a0+a1x+a2x2+...+anxn(1)由于多项式(1)通过所有数据点,获得公式(2)f(xi)=yi(I=0,1,...,n) (2)为构造多项式,使用n次Lagrange多项式Li(x)f(x)=L0(x)y0+L1(x)y1+...+Ln(x)yn(3a) 通过下述公式,给出满足上述条件的Lagrange多项式Li(x)-(x-x0)(x-x1)···(x-xi-1)(x-xi+1)···(x-xn)(xi-x0)(xi-x1)···(xi-xi-1)(xi-xi+1)···(xi-xn)=Πj=0j≠in[x-xixi-xj]---(4)]]>能用多项式(1)的形式表示内插多项式(3a)。由两个多项式(3a)和(3b)产生单个多项式(5)(a0+a1x+a2x2+···+anxn)(b0+b1x+b2x2+···+bmxm)]]>=(a0-b0)+(a0b1+a1b0)x+(a0b2+a1b1+a2b0)x2+···(···)xn+m---(5)]]>=Σi=0n+m(Σj=0iajbi-j)x2]]>图13A是示例说明用于获得手掌的生命线、感情线和智慧线的长度或斜率的内插过程的流程图。图13B表示存储生命线、感情线和智慧一的值的堆栈的结构。
参考图13A,控制部110进入步骤1301以便通过存储生命线的值的堆栈,查找生命线的起点和终点。如图13B所示,根据在堆栈中的“0”,寻址生命线的起点。生命线的终点是用堆栈指针SP表示的最后一个存储地址。控制部110在步骤1302,基于起点和终点,获得生命线的长度。随后,控制部110进入步骤1303以便确定为堆栈指针SP的一半的中点。在步骤1304,将Lagrange内插应用于生命线的三个点,从而在步骤1305产生二次方程式“f(x)=ax2+bx+c”。系数“a”表示斜率。控制部110在步骤1306将系数“a”存储在存储器130中。图13C表示通过内插抽取的生命线。
使用存储感情线的值的堆栈,获得感情线的长度。图13D表示通过内插抽取的感情线。使用存储智慧线的值的堆栈,也能获得智慧线的长度和斜率。图13E表示作为内插结果抽取的智慧线。
在步骤1300,获得感情线的长度,以及生命线和智慧线的长度和斜率后,控制部进入输出手掌读取的结果。
假定生命线具有在三个范围(低于120像素、120和160像素间以及160像素以上)的任何一个中的长度以及在三个范围(低于8°,8°和32°间以及高于32°)的任何一个中的斜率。还假定智慧线具有在三个范围(低于80像素、80和160像素间以及160像素以上)的任何一个中的长度以及在二个范围(低于1.845°和高于1.845°)的任何一个中的斜率。还假定感情线具有在四个范围(低于80像素、80和140像素间、140和200像素间以及200像素以上)的任何一个中的长度。
假定生命线具有170像素长度以及36°斜率,智慧线具有150像素长度以及1.820°斜率,以及感情线具有160像素长度,控制部110在步骤1300获得这些数据以及进入在显示部160上显示下述手掌读取结果[感情]你在所有行为中均早熟、精力充沛和主动。经历多次浪漫后,你具有许多爱人和孩子。你可以从商业的不同领域开始。即使在困难中,你尽最大努力来克服困难,而不会悲观。
你对数字思考快速、机智过人、精明和精通。你是天才的商人以及可以对数字想法做出精确判断。你是真正的耍手腕的商人以及将你的企业经营得很好。尽管特别期望在商业或法律专业方面获得巨大成功,你将被认为是在每个领域中都是卓越且富有天才的人。你非常机智地应对突然不期望的事件并能胜任完成实际商业。
你真诚、令人愉快的且聪明。维持很多爱和很多友谊,你尽自己所能帮助你的朋友。你讨厌失去。你保守且尊敬长辈和先辈。你可能在一些方面很自私。你敏感且具有艺术天份。作为热心人,照顾亲近的同事,你总是被人围绕。你具有大量同性,而不是异性的熟人。
作为沉默寡言的人,你很有吸引力。由于你太警惕而不能表达你的意愿,你可以难以获得爱,如果你是女人,你过分拘谨。具有许可事情的意愿和大量的梦想,你可能将时间花费在想象上。你通常温柔和沉着。然而,根据环境,你能是坦率的人或正派和谦虚的小姐。你的最大的弱点你在思考和行动方面太慢。如果你是男人,你看起来绅士且将你的意愿隐藏在心中。有时,你需要表达你的意愿且按你的本来面目准确地表现你自己。作为两面派可不太好。在任何情况下,你都非常有吸引力。
在步骤204和300,控制部100可以执行步骤500以及900至1300。另外,步骤500,700和900至1300可以在步骤204和300之后。
如果在抽取手掌线的过程期间接收到呼入信号,控制部110将检测该信号以及将移动终端的当前模式改变成呼入模式。在终止呼入模式后,控制部110将恢复抽取手掌线的过程。
尽管为示例目的,已经描述了本发明的实施例,本领域的技术人员将意识到在不背离在附加权利要求书中公开的本发明的精神和范围,包括其等效的整个范围的情况下,各种改进、增加和取代是可能的。
本发明提供有趣的娱乐以便使用户以通过移动终端看手相为乐,而与时间和地点无关。
权利要求
1.一种用于使用移动终端,通过抽取手掌的生命线、感情线和智慧线,读取用户手掌的方法,包括步骤当移动终端处于手掌拍摄模式时,拍摄用户的手掌;将所拍摄的手掌图象转换成灰度级图象;检测手掌图象中的边缘;从手掌抽取每条线的值;基于所抽取的值,获得手掌的每条线的长度和斜率;以及基于手掌的每条线的长度和斜率,输出手掌读取结果。
2.如权利要求1所述的方法,其中,在所述手掌拍摄模式中,显示手形框架。
3.如权利要求2所述的方法,其中,所述手形框架包括生命线、智慧线开始以及感情线开始的区域。
4.如权利要求1所述的方法,其中,所述将所拍摄的手掌图象转换成灰度级图象的步骤包括读取所拍摄的手掌图象;消除所读取的手掌图象的左右边的预定区域;以及将排除所消除的区域的手掌图象转换成灰度级图象。
5.如权利要求1所述的方法,进一步包括在将所拍摄的图象转换成灰度级后,增强图象对比度的步骤。
6.如权利要求1所述的方法,进一步包括步骤去除手掌图象中的细微线;二进制化手掌图象;以及处理形状以便增强手掌图象。
7.如权利要求1所述的方法,其中,所述抽取手掌的每条线的值的步骤包括抽取生命线的值;抽取感情线的值;以及抽取智慧线的值。
8.如权利要求7所述的方法,其中,抽取生命线的值包括检测在包括在手形框架的生命线开始区域中生命线的起点;移向起点下的像素;当起点下的值为白时,存储白像素的位置值以及移向向下方向中的下面像素;当下面像素不为白时,移向右边的像素;当右边的像素为白时,存储白像素的位置值以及向下移动;当右边的像素不为白时,再次向右移;以及当在预定数量的像素上移动期间,未再检测到白像素时,终止抽取生命线的值。
9.如权利要求7所述的方法,其中,抽取生命线的值包括将遮光框应用于手掌图象的预定区域以便去除细微线;通过在每次增加时,使指定像素的Y坐标增加预定多个像素,指定面对生命线的遮光框的边界上的像素以及选择多个像素;存储通过增加选定的多个像素的X坐标首先检测到的白像素;删除任何所存储的具有小于在前像素或大于下一像素的值的白像素;将具有最大X坐标的未删除的白像素设置为起点;移向起点下的像素;当起点下的像素为白时,存储白像素的位置值以及移向向下方向中的下面像素;当下面像素不为白时,移向右边的像素;当右边的像素为白时,存储白像素的位置值以及向下移动;当右边的像素不为白时,再次向右移;当在预定数量的像素上移动期间,未再检测到白像素时,移向起点;从起点起,移向左边的像素;当左边的像素为白时,存储白像素的位置值以及再次向左移;当左边的像素不为白时,移向上面像素;当上面像素为白时,存储白像素的位置值以及向左移;当上面像素不为白时,再次向上移;以及当在移动期间,检测到手形框架的位置值时,终止抽取生命线的值。
10.如权利要求7所述的方法,其中,抽取生命线的值包括将遮光框应用于手掌图象的预定区域以便去除细微线;通过在每次增加时,使指定像素的Y坐标增加预定多个像素,指定面对生命线的遮光框的边界上的像素以及选择多个像素;存储通过增加选定的多个像素的X坐标首先检测到的白像素;删除任何所存储的具有小于在前像素或大于下一像素的值的白像素;将具有最大X坐标的未删除的白像素设置为起点;从起点移向左边的像素;当左边的像素为白时,存储白像素的位置值以及再次向左移;当左边的像素不为白时,移向上面像素;当上面像素为白时,存储白像素的位置值以及向左移;当上面像素不为白时,再次向上移;当在移动期间检测到手形框架的位置值时,移向起点;移向起点下的像素;当起点下的像素为白时,存储白像素的位置值以及移向向下方向中的下面像素;当下面像素不为白时,移向右边的像素;当右边的像素为白时,存储白像素的位置值以及向下移动;当右边的像素不为白时,再次向右移;以及当在预定数量的像素上移动期间,未再检测到白像素时,终止抽取生命线的值。
11.如权利要求9所述的方法,其中,应用遮光框以便去除细微线的所述预定区域是生命线下的区域。
12.如权利要求10所述的方法,其中,应用遮光框以便去除细微线的所述预定区域是生命线下的区域。
13.如权利要求8所述的方法,其中,所述每个白像素的位置值存储在堆栈中。
14.如权利要求10所述的方法,其中,所述每个白像素的位置值存储在堆栈中。
15.如权利要求7所述的方法,其中,抽取感情线的值包括将遮光框应用于手掌图象的预定区域以便去除细微线;通过在每次减小时,使指定像素的X坐标减小预定多个像素,指定面对感情线的遮光框的边界上的像素以及选择多个像素;存储通过增加所选定的多个像素的Y坐标首先检测的白像素;将所存储的具有最大X坐标的白像素的一个设置成起点;从起点移向左边的像素;当左边的像素为白时,存储白像素的位置值以及再次向左移;当左边的像素不为白时,移向上面像素;当上面像素为白时,存储白像素的位置值以及向左移;当上面像素不为白时,再次向上移;以及当在预定数量的像素上移动期间,未再检测到白像素时,终止抽取感情线的值。
16.如权利要求15所述的方法,其中,在包括在手形框架的感情线开始区域内设置所述感情线的起点。
17.如权利要求15所述的方法,其中,所述每个白像素的位置值存储在堆栈中。
18.如权利要求7所述的方法,其中,抽取智慧线的值包括从感情线的起点向左移直到检测到白像素为止;将在左方向中检测到的第一白像素设置成智慧线的起点;从起点移向左边的像素;当左边的像素为白时,存储白像素的位置值以及再次向左移;当左边的像素不为白时,移向上面像素;当上面像素为白时,存储白像素的位置值以及向左移;当上面像素不为白时,再次向上移;当在移动期间,检测到手形框架的位置值时,移向起点;从起点移向右边的像素;当右边的像素为白时,存储白像素的位置值以及再次向右移;当右边的像素不为白时,移向向下方向中的下面像素;当下面像素为白时,存储白像素的位置值以及向右移;当下面像素不为白时,再次向下移;以及当在预定数量的像素上移动期间,未再检测到白像素时,终止抽取智慧线的值。
19.如权利要求18所述的方法,其中,抽取智慧线的值包括从起点移向右边的像素;当右边的像素为白时,存储白像素的位置值以及再次向右移;当右边的像素不为白时,移向向下方向中的下面像素;当下面像素为白时,存储白像素的位置值以及向右移;当下面像素不为白时,再次向下移;当在多个预定像素上移动期间,未再检测到白像素时,移向起点;从起点移向左边的像素;当左边的像素为白时,存储白像素的位置值以及再次向左移;当左边的像素不为白时,移向上面像素;当上面像素为白时,存储白像素的位置值以及向左移;当上面像素不为白时,再次向上移;以及当在移动期间,检测到手形框架的位置值时,终止抽取智慧线的值。
20.如权利要求18所述的方法,其中,所述每个白像素的位置值存储在堆栈中。
21.如权利要求1所述的方法,其中,所述获得手掌的每条线的长度和斜率的步骤包括通过存储线的值的堆栈,找出线的起点、中点和终点;基于起点和终点,获得线的长度;以及基于起点、中点和终点,获得线的斜率。
22.如权利要求1所述的方法,其中,所述输出手掌读取结果的步骤包括基于所获得的生命线的长度和斜率,输出生命线的解释结果;基于所获得的感情线的长度,输出感情线的解释结果;以及基于所获得的智慧线的长度和斜率,获得智慧线的解释结果。
23.一种用于使用移动终端,通过抽取手掌上的生命线、感情线和智慧线,读取手掌的方法,包括步骤当将移动终端改变成手掌拍摄模式时,显示手形框架;拍摄手形框架内的手掌;将所拍摄的手掌图象改变成灰度级图象;检测手掌图象中的边缘;获得手掌的生命线的长度和斜率;获得手掌的感情线的长度;获得手掌的智慧线的长度和斜率;以及基于所获得的手掌的线的长度和斜率,输出手掌读取结果。
24.如权利要求23所述的方法,其中,所述获得生命线的长度和斜率的步骤包括将遮光框应用于手掌图象的预定区域以便去除细微线;通过在每次增加时,使指定像素的Y坐标增加预定多个像素,指定面对生命线的遮光框的边界上的像素以及选择多个像素;存储通过增加选定的多个像素的X坐标首先检测到的白像素;删除任何所存储的具有小于在前像素或大于下一像素的值的白像素;将具有最大X坐标的未删除的白像素设置为起点;移向起点下的像素;当起点下的像素为白时,存储白像素的位置值以及移向向下方向中的下面像素;当下面像素不为白时,移向右边的像素;当右边的像素为白时,存储白像素的位置值以及向下移动;当右边的像素不为白时,再次向右移;当在预定数量的像素上移动期间,未再检测到白像素时,移向起点;从起点起,移向左边的像素;当左边的像素为白时,存储白像素的位置值以及再次向左移;当左边的像素不为白时,移向上面像素;当上面像素为白时,存储白像素的位置值以及向左移;当上面像素不为白时,再次向上移;当在移动期间,检测到手形框架的位置值时,终止抽取生命线的值;通过存储生命线的值的堆栈,获得生命线的起点、中点和终点;基于起点和终点,获得生命线的长度;以及基于起点、中点和终点,获得生命线的斜率。
25.如权利要求23所述的方法,其中,所述获得感情线的长度的步骤包括通过在每次减小时,使指定像素的X坐标减小预定多个像素,指定面对感情线的遮光框的边界上的像素以及选择多个像素;存储通过增加所选定的多个像素的Y坐标首先检测的白像素;将所存储的具有最大X坐标的白像素的一个设置成起点;从起点移向左边的像素;当左边的像素为白时,存储白像素的位置值以及再次向左移;当左边的像素不为白时,移向上面像素;当上面像素为白时,存储白像素的位置值以及向左移;当上面像素不为白时,再次向上移;当在预定数量的像素上移动期间,未再检测到白像素时,终止抽取感情线的值;通过存储感情线的值的堆栈,获得感情线的起点和终点;以及基于起点和终点,获得感情线的长度。
26.如权利要求23所述的方法,其中,所述获得智慧线的长度和斜率的步骤包括从感情线的起点向左移直到检测到白像素为止;将在左方向中检测到的第一白像素设置成智慧线的起点;从起点移向左边的像素;当左边的像素为白时,存储白像素的位置值以及再次向左移;当左边的像素不为白时,移向上面像素;当上面像素为白时,存储白像素的位置值以及向左移;当上面像素不为白时,再次向上移;当在移动期间,检测到手形框架的位置值时,移向起点;从起点移向右边的像素;当右边的像素为白时,存储白像素的位置值以及再次向右移;当右边的像素不为白时,移向向下方向中的下面像素;当下面像素为白时,存储白像素的位置值以及向右移;当下面像素不为白时,再次向下移;当在预定数量的像素上移动期间,未再检测到白像素时,终止抽取智慧线的值;通过存储智慧线的值的堆栈,获得智慧线的起点、中点和终点;基于起点和终点,获得智慧线的长度;以及基于起点、中点和终点,获得智慧线的斜率。
27.一种用于使用移动终端,通过从手掌抽取生命线、感情线和智慧线,读取用户手掌的装置,该装置包括用来拍摄用户手掌的照相机;用来显示有关用户手掌的信息的显示屏;用来存储用于操作手掌读取功能的程序的存储器;控制器,用来当移动终端处于手掌拍摄模式时,控制移动终端拍摄用户手掌,将所拍摄的手掌图象转换成灰度级图象,检测手掌图象中的边缘,从手掌抽取每条线的值;基于所抽取的值,获得手掌的每条线的长度和斜率,以及基于手掌的每条线的长度和斜率,输出手掌读取结果。
28.如权利要求27所述的装置,其中,在所述手掌拍摄模式中显示手形框架。
29.如权利要求28所述的装置,其中,所述手形框架包括生命线、智慧线开始以及感情线开始的区域。
30.如权利要求27所述的装置,其中,控制器进一步用来读取所拍摄的手掌图象,消除所读取的手掌图象的左右边的预定区域,以及将排除了所消除的区域的手掌图象转换成灰度级图象。
31.如权利要求27所述的装置,其中,控制器地进一步用来在将所拍摄的图象转换成灰度级后,增强图象对比度。
32.如权利要求27所述的装置,其中,控制器进一步用来去除手掌图象中的细微线,二进制化手掌图象,以及处理形状以便增强手掌图象。
33.如权利要求27所述的装置,其中,控制器进一步用来抽取生命线的值,抽取感情线的值,以及抽取智慧线的值。
全文摘要
一种用于使用移动终端,通过抽取手掌的生命线、感情线和智慧线,读取用户手掌的装置和方法。该装置和方法包括当移动终端处于手掌拍摄模式时,拍摄用户的手掌以及将所拍摄的手掌图象转换成灰度级图象。该装置和方法进一步包括检测手掌图象中的边缘,从手掌抽取每条线的值,基于所抽取的值,获得手掌的每条线的长度和斜率,以及基于手掌的每条线的长度和斜率,输出手掌读取结果。
文档编号G06K9/00GK1577381SQ20041005563
公开日2005年2月9日 申请日期2004年7月30日 优先权日2003年7月30日
发明者金淳镇, 裴镕大, 金镕洙, 金恃焕, 金熙载, 崔载旭, 金泳锡, 李劲润, 允恩河 申请人:三星电子株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1