我正在创建一个登录应用程序,其中我的密码将是图像的像素。让我更具体一些,我有3个分类:动物、汽车和婴儿,每个分类都包含它们的图像。现在用户可以从这些分类中选择图片,并选择图像的任何部分并设置密码(例如,在动物中,我选择了狮子的眼睛作为第一个密码),就像我可以选择尽可能多的密码一样。现在如何实施这种方法?可以给我一些想法或任何源代码,以便我可以实现这个想法。
我正在创建一个登录应用程序,其中我的密码将是图像的像素。让我更具体一些,我有3个分类:动物、汽车和婴儿,每个分类都包含它们的图像。现在用户可以从这些分类中选择图片,并选择图像的任何部分并设置密码(例如,在动物中,我选择了狮子的眼睛作为第一个密码),就像我可以选择尽可能多的密码一样。现在如何实施这种方法?可以给我一些想法或任何源代码,以便我可以实现这个想法。
当用户触摸部分时,接受touchPrecision的用户输入 - 可以是Coarse(粗)、Fine(细)或Super-fine(超细) - 这是用户设置。
注册密码时存储以下内容:
(这假设用户选择了三个图像 - 每个类别中的一个,并单击每个类别中的图像部分)
现在在登录时 - 对于每个触摸,请确保选择了正确的类别和图像 - 当用户触摸图像的某个部分时,请确保用户的触摸位置与之前存储的部分足够接近。 "足够接近" 的公差取决于touchPrecision。例如,假设将Coarse设置为60,Fine设置为30,super-fine设置为10。如果touchPrecision为Fine,则登录时用户输入的触摸位置必须在此圆的中心的30%半径范围内 - 假设该圆位于x11 y11处。
我估计,在Android上实现此算法的alpha版本需要10-16小时。
您可以通过抓取直方图使其更复杂....