支持移动终端的时间空间关联的个性化定制图片管理方法与流程

文档序号:11234210阅读:411来源:国知局
支持移动终端的时间空间关联的个性化定制图片管理方法与流程

本发明涉及互联网移动终端软件应用领域,特别是支持移动终端的时间空间关联的个性化定制图片管理方法。



背景技术:

随着互联网和移动终端技术高速发展,移动终端已经拥有了强大的处理能力,移动终端正在从简单的通话工具变为一个综合信息处理平台,这也给移动终端增加了更加宽广的发展空间。

移动终端是指可以在移动中使用的计算机设备,广义的讲包括手机、笔记本、平板电脑等设备。移动终端作为简单通信设备伴随移动通信发展已有几十年的历史。自2007年开始,智能化引发了移动终端基因突变,从根本上改变了终端作为移动网络末梢的传统定位。移动智能终端引发的颠覆性变革揭开了移动互联网产业发展的序幕,开启了一个新的技术产业周期。随着移动智能终端的持续发展,其影响力将比肩收音机、电视和互联网(pc),成为人类历史上第4个渗透广泛、普及迅速、影响巨大、深入至人类社会生活方方面面的终端产品。

今天的移动终端不仅可以通话、拍照、听音乐、玩游戏,而且可以实现包括定位、信息处理、条码扫描、ic卡扫描等丰富的功能,移动终端已经深深地融入我们的经济和社会生活中,正在极大改变人们的日常生活方式。

另一方面,因为人们的生活水平和消费水平的提高,越来越多的人选择外出旅行来从忙碌的工作中得到休息、开拓自己的视野。在旅行的过程中,平板、手机等移动终端设备因其携带方便、价格相对低廉、操作简单等特点被广泛地用来在旅旅行过程中拍摄图片。移动终端容量和电量的扩大使得终端在旅行过程中拍摄的图片数量越来越庞大,这就使得在旅行结束管理这些图片花费的时间开销更大。考虑到移动终端本身往往具有一定的计算能力,使得本地智能化自动化管理旅行图片成为了可能。

目前有许多针对移动终端图片管理的方法已经取得了一些成果。中国专利《照片管理方法和装置及移动终端》,申请号:cn201510346832.3,授权公告号cn104933146a公开了一种用于移动终端的照片管理方法。该方法包括:根据预设的标签,获取拍摄的照片对应的标签,为所述照片添加标签,按照所述标签存储所述照片。该方法的目的是可以按照照片的标签对照片进行管理,存储方式比较丰富,而且在这样的存储方式下,查找照片时可以根据标签来实现照片的快速、准确查找,照片查找效率非常高。

然而上述图片管理方法并没有引入图片位置和拍摄时间等信息,将图片的空间和时间关联起来进行自动化管理。但是对于目前生活水平日益提高的现状,越来越多的人经常选择出去旅行,而这些隐藏信息往往具有特别重要的意义。



技术实现要素:

发明目的:本发明针对移动终端的图片管理,结合图片拍摄位置信息和时间信息,提出一种时空关联的个性化定制的图片管理方法,方便人们在查看图片的同时能方便地查看图片的拍摄时间和位置等信息。

本发明针对现有技术的不足,提供一种支持移动终端的时间空间关联的个性化定制图片管理方法。

为了解决上述技术问题,本发明公开了支持移动终端的时间空间关联的个性化定制图片管理方法,包括以下步骤:

步骤1,在旅行开始之前,用户点击移动终端,确定旅行的开始时间,在完成旅行时确定旅行结束时间;

步骤2,遍历移动终端上的本地相册文件夹,根据步骤1中的时间范围找出拍摄时间在此期间的图片;

步骤3,对步骤2中的所有图片计算其geohash编码值并保存到本地缓存;

步骤4,根据所有图片的geohash编码值确定地图初始缩放比例,初始化地图以及图片簇在地图上的标记,用户点击图片簇可以查看图片簇中的图片;

步骤5,根据用户对地图的缩放手势确定每次操作完成时geohash编码前缀长度;

步骤6,将当前图片簇的geohash编码前缀长度与步骤5新生成的geohash编码前缀长度进行对比,如果前者更大,则需要对某些图片簇进行聚集,如果后者更大,则需要遍历每个图片簇并对某些图片簇进行分裂;如果两者长度相等,则图片簇不发生变化。对于新生成的图片簇,需要更新其显示的时间信息;

步骤7,将用户操作结果于移动终端的地图界面进行更新显示结果,包括图片簇在地图上的标记、图片簇时间信息显示和图片簇间“箭头”标记的添加,用户点击图片簇可以查看图片簇中的图片。

本发明步骤2中,用户在开始旅行时,需要在移动终端上确定旅行开始时间,记为time_start,同时在旅行结束时,也需要在移动终端上确定旅行结束时间,记为time_end。在旅行结束后,需要根据图片拍摄时间提取出在旅行期间拍摄的图片。遍历移动终端上的本地文件夹,对每一个图片文件,提取它的拍摄时间time_taken,如果满足条件:time_start≤time_taken≤time_end,表示该图片是此期间拍摄的,则将该图片记录下来。然后可以得到在旅行期间拍摄的图片集合p={p1,p2,…,pn},其中n为在此期间拍摄的图片的个数,n取值为自然数,用time_takent表示第t个图片pt的拍摄时间,(1≤t≤n)。

本发明步骤3中,采用了base32编码长度为9的geohash编码,该编码方式将二维的经纬度转换成字符串,且使用0-9、b-z(去掉a,i,l,o)这32个字母进行base32编码。当编码长度为9时,理论上能够达到最大定位精度在2米左右。对于一个geohash编码,同样可以解码得到编码前近似的经纬度。

本发明中,对于集合p={p1,p2,…,pn}中的每个图片pt(1≤t≤n),可以提取其拍摄位置的经度lngt和纬度latt,计算出geohash编码值geoht,并保存到移动终端的缓存中,可以直接访问,避免重复计算。

本发明中,在移动终端的地图上会显示若干图片簇,每个图片簇是若干张图片的集合。步骤4中,所有图片簇的集合记为c={c1,c2,…,cm},定义集合c保存所有的图片簇,图片簇刚开始只有一个,即所有图片保存在同一个图片簇中,后来这个图片簇会发生聚集或分裂,记图片簇的个数为m,也即m最开始为1。c1表示第一个图片簇,其中第i个图片簇表示为其中表示第i个图片簇ci中第j个图片,1≤j≤ni,ni表示图片簇ci中图片个数,1≤i≤m,m取值为自然数,且ci具有四个属性值{geoleni,timei,geoh_commoni,time_firsti},其中,geoleni表示ci的geohash编码前缀长度、timei表示ci显示的时间信息、geoh_commoni表示ci的geohash编码、time_firsti表示ci中最早拍摄的图片的时间;

本发明步骤4中,在用户查看该旅行相册时,需要首先对移动终端的地图进行初始化。此时所有图片保存在同一个图片簇中,即c={c1},c1={p1,p2,...,pn},且

其中geolen1表示c1的geohash编码前缀长度,geoh_common1表示c1的geohash编码,time_first1表示c1的最早拍摄的图片的时间。

本发明步骤4中,需要计算出图片簇c1对应的需要显示的时间信息time1。如果c1仅有一张图片或者多张图片但是拍摄时间完全相同,则将time1根据图片的拍摄时间设置成格式为“xx时xx分xx秒”。否则,根据c1中所有图片最具体的相同拍摄时间(最具体的相同拍摄时间指同一个图片簇中所有图片最细粒度的相同拍摄时间,通过移动终端获取)分6种不同情况:

(1)最具体的相同拍摄时间为“年”,则将time1设置成格式为“xx年”,

(2)最具体的相同拍摄时间为“月”,则将time1设置成格式为“xx年xx月”,

(3)最具体的相同拍摄时间为“日”,则将time1设置成格式为“xx年xx月xx日”,

(4)最具体的相同拍摄时间为“时”,则将time1设置成格式为“xx月xx日xx时”,

(5)最具体的相同拍摄时间为“分”,则将time1设置成格式为“xx日xx时xx分”,

(6)其它,则将time1设置为空字符串。

本发明步骤4中,设定移动终端地图放大级别为1到k共k种(考虑常见地图放大级别都大于10,故设置k≥10),且数字增加代表地图放大。初始化时需要在地图上标记图片簇c1,并在图片簇上方显示c1的时间属性time1。初始化时,将地图放大级别设置为1,并在地图上geohash编码为geoh_common1处标记图片簇c1,同时在标记上方显示c1的时间属性time1。

本发明步骤5中,在初始化之后,由于用户可能会对移动终端的地图进行放大或缩小操作,这就使得原始图片簇会进行分裂或聚集。记用户操作结束后地图放大级别为d,1≤d≤k,则通过如下公式计算出新的图片簇的geohash编码前缀长度geolen_new:

其中k为地图放大级别。

本发明步骤6中,当用户对地图的缩放操作结束时,图片簇集合为c={c1,c2,...,cm},此时将集合c中每一个图片簇的geohash编码前缀长度与步骤5得到的geohash编码前缀长度进行对比,需要先根据geolen_new与geolen的大小,对图片簇进行聚集或分裂,存在三种情况:

(1)geolen_new小于geolen,此时对任意图片簇ci(1≤i≤m),将geoh_commoni具有geolen_new长度相同前缀的图片簇合并成一个新图片簇,并删除掉合并之前的若干个图片簇,且更新新图片簇的geohash编码前缀长度geolen为geolen_new,更新新图片簇geohash编码geoh_common为所有图片geohash编码的最长公共前缀;

(2)geolen_new大于geolen,此时对每个图片簇对ci中的任意图片的geohash编码值将具有相同geolen_new长度前缀的的图片保存到同一个图片簇中,如果形成多个图片簇,原图片簇分裂成多个新的图片簇,最后对每个图片簇,更新新图片簇的geohash编码前缀长度geolen为geolen_new,更新新图片簇geohash编码geoh_connon为所有图片geohash编码的最长公共前缀;

(3)geolen_new等于geolen,任意图片簇ci(1≤i≤m)不发生任何变化。

本发明步骤6中,当由于用户操作产生了新的图片簇时,需要更新每个新图片簇的显示的时间信息time。如果图片簇仅有一张图片或者多张图片但是拍摄时间完全相同,则将time根据图片的拍摄时间设置成格式为“xx时xx分xx秒”。否则,根据图片簇中所有图片最具体的相同拍摄时间分6种不同情况:

(1)最具体的相同拍摄时间为“年”,则将time设置成格式为“xx年”,

(2)最具体的相同拍摄时间为“月”,则将time设置成格式为“xx年xx月”,

(3)最具体的相同拍摄时间为“日”,则将time设置成格式为“xx年xx月xx日”,

(4)最具体的相同拍摄时间为“时”,则将time设置成格式为“xx月xx日xx时”,

(5)最具体的相同拍摄时间为“分”,则将time设置成格式为“xx日xx时xx分”,

(6)其它,则将time设置为空字符串。

本发明步骤7中,当用户对地图缩放操作结束,需要在终端的地图上对图片簇进行显示。将地图设置为放大级别d,并在地图上标记所有图片簇ci(1≤i≤m)标记位置的geohash编码为geoh_commoni,同时在标记上方显示ci的时间属性timei。

本发明中步骤7中,对于不同图片簇,每个图片簇代表了在不同地点拍摄的图片,因此图片簇之间存在时间上的先后关系,据此本发明在图片簇之间添加“箭头”标记。此时所有图片簇为c={c1,c2,…,cm},找出任意图片簇中最早拍摄的图片的时间time_firsti(1≤i≤m),计算公式为:

其中表示簇ci中第j张图片的拍摄时间,ni为簇ci中图片的个数,然后按照图片簇ci中最早拍摄的图片的时间time_firsti从小到大对图片簇排序,根据排好的顺序在地图上对应的图片簇之间添加从前者指向后者的“箭头”标记。

本发明中,点击图片簇可以查看图片簇中记录的图片。同时,用户可以个性化定制是否需要显示图片簇的时间信息和“箭头”标记。

本发明中的思想为:首先根据用户确定的旅行开始时间和结束时间在移动终端的文件管理器中找出在旅行期间拍摄的图片;然后对每个图片计算出geohash编码值保存到缓存中避免重复计算;接着初始化移动终端地图及图片簇的显示;最后根据用户对移动终端地图的缩放操作确定当前geohash编码前缀长度,对图片簇进行分裂或聚集,再计算新图片簇标记上方显示的时间信息,并添加代表图片簇先后顺序的“箭头”标记。点击图片簇可以查看图片簇中的图片。

与现有技术相比,本发明的有益效果体现在:

(1)引入图片位置和拍摄时间等信息,将图片的空间和时间关联起来进行自动化管理,方便人们在查看图片的同时能方便的查看图片的拍摄时间和位置等信息。

(2)包含了图片之间拍摄的时间先后关系,能够帮助用户回忆游旅行游玩的经历。

(3)图片簇的时间信息的显示会尽量保证最大的粒度,用户能够查看更具体的时间信息。

(4)用户可以个性化定制是否显示图片簇的时间信息和“箭头”标记。

附图说明

下面结合附图和具体实施方式对本发明做更进一步的具体说明,本发明的上述或其他方面的优点将会变得更加清楚。

图1是本发明步骤流程图。

图2是本发明具体实施流程图。

具体实施方式

下面结合附图及实施例对本发明做进一步说明。

本发明公开了支持移动终端的时间空间关联的个性化定制图片管理方法,该方法步骤流程图如图1和图2所示,包括以下步骤:

步骤1,在旅行开始之前,用户点击移动终端,确定旅行的开始时间,在完成旅行时确定旅行结束时间;

首先,用户在移动在终端确定开始时间记为time_start,结束时间记为time_end。

步骤2,遍历移动终端上的本地相册文件夹,根据步骤1中的时间范围找出拍摄时间在此期间的图片;

然后,系统遍历移动终端上的本地文件夹,对每一个图片文件,提取它的拍摄时间time_taken,如果满足条件:time_start≤time_taken≤time_end,表示该图片是此期间拍摄的图片,并将该图片记录下来。可以得到在旅行期间拍摄的图片集合p={p1,p2,…,pn},其中n为在此期间拍摄的图片的个数,time_takent表示pt的拍摄时间(1≤t≤n)。

步骤3,对步骤2中的所有图片计算其geohash编码值并保存到本地缓存;

其次,对集合p={p1,p2,…,pn}中的每个图片pt(1≤i≤n),可以提取其拍摄位置的经度lngt和纬度latt,计算出geohash编码值geoht,并保存到移动终端的缓存中,可以直接访问,避免重复计算。

步骤4,根据所有图片的geohash编码值确定地图初始缩放比例,初始化地图以及图片簇在地图上的标记,用户点击图片簇可以查看图片簇中的图片;

接着,初始化移动终端的地图界面。此时所有图片保存在同一个图片簇中,即c={c1},c1={p1,p2,...,pn},且

其中geolen1表示c1的geohash编码前缀长度,geoh_common1表示c1的geohash编码,time_first1表示c1的最早拍摄的图片的时间。

同时,需要计算出图片簇c1对应的需要显示的时间信息time1。如果c1仅有一张图片或者多张图片但是拍摄时间完全相同,则将time1根据图片的拍摄时间设置成格式为“xx时xx分xx秒”。否则,根据c1中所有图片最具体的相同拍摄时间分6种不同情况:

(1)最具体的相同拍摄时间为“年”,则将time1设置成格式为“xx年”,

(2)最具体的相同拍摄时间为“月”,则将time1设置成格式为“xx年xx月”,

(3)最具体的相同拍摄时间为“日”,则将time1设置成格式为“xx年xx月xx日”,

(4)最具体的相同拍摄时间为“时”,则将time1设置成格式为“xx月xx日xx时”,

(5)最具体的相同拍摄时间为“分”,则将time1设置成格式为“xx日xx时xx分”,

(6)其它,则将time1设置为空字符串。

下面你就可以初始化移动终端的地图界面:将地图放大级别设置为1,并在地图上geohash编码为geoh_common1处标记图片簇c1,同时在标记上方显示c1的时间属性time1。

步骤5,根据用户对地图的缩放手势确定每次操作完成时geohash编码前缀长度;

最后,移动终端的地图界面会不停地对用户的手势操作进行响应,因此,步骤5-7是一个循环的过程,直至用户退出移动终端的地图界面循环结束。

本发明步骤5中,记用户操作结束后地图放大级别为d(1≤d≤k),则计算出新的图片簇的geohash编码前缀长度geolen_new,计算公式如下:

其中k为地图放大级别。

步骤6,将当前图片簇的geohash编码前缀长度与步骤5新生成的geohash编码前缀长度进行对比,如果前者更大,则需要对某些图片簇进行聚集,如果后者更大,则需要遍历每个图片簇并对某些图片簇进行分裂,否则图片簇不发生变化。对于新生成的图片簇,需要更新其显示的时间信息;

本发明步骤6中,首先此时需要先根据geolen_new与geolen的大小,对图片簇进行聚集或分裂,图片簇集合为c={c1,c2,…,cm}存在三种情况:

(1)geolen_new小于geolen,此时对任意图片簇ci(1≤i≤m),将geoh_commoni具有geolen_new长度相同前缀的图片簇合并成一个新图片簇,并删除掉合并之前的若干个图片簇,且更新新图片簇的geohash编码前缀长度geolen为geolen_new,更新新图片簇geohash编码geoh_common为所有图片geohash编码的最长公共前缀;

(2)geolen_new大于geolen,此时对每个图片簇对ci中的任意图片的geohash编码值将具有相同geolen_new长度前缀的的图片保存到同一个图片簇中,如果形成多个图片簇,原图片簇分裂成多个新的图片簇,最后对每个图片簇,更新新图片簇的geohash编码前缀长度geolen为geolen_new,更新新图片簇geohash编码geoh_common为所有图片geohash编码的最长公共前缀;

(3)geolen_new等于geolen,任意图片簇ci(1≤i≤m)不发生任何变化。

本发明步骤6中,接着需要更新每个新图片簇的时间属性time。如果图片簇仅有一张图片或者多张图片但是拍摄时间完全相同,则将time根据图片的拍摄时间设置成格式为“xx时xx分xx秒”。否则,根据图片簇中所有图片最具体的相同拍摄时间分6种不同情况:

(1)最具体的相同拍摄时间为“年”,则将time设置成格式为“xx年”,

(2)最具体的相同拍摄时间为“月”,则将time设置成格式为“xx年xx月”,

(3)最具体的相同拍摄时间为“日”,则将time设置成格式为“xx年xx月xx日”,

(4)最具体的相同拍摄时间为“时”,则将time设置成格式为“xx月xx日xx时”,

(5)最具体的相同拍摄时间为“分”,则将time设置成格式为“xx日xx时xx分”,

(6)其它,则将time设置为空字符串。

步骤7,将用户操作结果于移动终端的地图界面进行更新显示,包括图片簇在地图上的标记、图片簇时间信息显示和图片簇间“箭头”标记的添加,用户点击图片簇可以查看图片簇中的图片。

本发明步骤7中,当用户对地图缩放操作结束,需要在终端的地图上对图片簇进行显示。将地图设置为放大级别j,并在地图上标记所有图片簇ci(1≤i≤m)标记位置的geohash编码为geoh_commoni,同时在标记上方显示ci的时间属性timei。另外,对于不同图片簇,每个图片簇代表了在不同地点拍摄的图片,因此图片簇之间存在时间上的先后关系,据此本发明在两者之间添加“箭头”标记。此时所有图片簇为c={c1,c2,…,cm},找出任意图片簇中最早拍摄的图片的时间time_firsti(1≤i≤m),计算公式为:

其中表示簇ci中第j张图片的拍摄时间,ni为簇ci中图片个数,然后将time_firsti(1≤i≤m)从小到大排序,在其代表的图片簇之间添加从前者直向后者的“箭头”标记。

实施例

本实施例使用了某旅行者于2016年12月28日去中山陵游玩并使用智能手机沿途随机拍摄若干张图片的数据集进行实验。

旅行前某旅行者确定旅行开始时间为2016年12月28日9时12分13秒(unix时间戳为1482887533秒),旅行结束时某旅行者确定旅行结束时间为2016年12月28日17时16分11秒(unix时间戳为1482916571秒)。

旅行结束后,某旅行者想查看本次旅行拍摄的图片,他打开手机相册,选中本次旅行,即将跳转到地图界面。首先,手机系统遍历本地相册文件夹,寻找拍摄时间t(unix时间戳表示)满足1482887533≤t≤1482916571的图片。

然后系统对上面的图片提取拍摄地点的经纬度,计算每个图片的geohash编码并保存到手机缓存中,得到图片及对应的geohash编码等信息,如表1所示。

表1旅行期间拍摄图片的各项信息

接着,初始化智能手机地图界面:地图放大等级有1-16共16个等级(数字越大表示地图放大),即k=16,此时c={c1},c1={p1,p2,…,p20},且由公式(1)得到

再计算出time1为“2016年12月28日”。所以系统设置地图放大等级为1,在地图geohash编码为“wtsw2”处(即经纬度分别为118.82814646、32.03615427处)标记c1,同时在标记上方注明时间“2016年12月28日”。

最后,移动终端的地图界面会不停地对用户的手势操作进行响应。比如用户放大地图,得到地图的放大级别为11时,由公式(2)计算出此时geohash编码前缀长度为6,此时c={c1}将分裂成三个新的图片簇,分别为c1={p1,p2,…,p5},c2={p6,p7,…,p17},c3={p18,p19,p20}。此时,c={c1,c2,c3},更新c1,c2,c3的geohash编码前缀长度为6,更新c1,c2,c3的geohash编码分别为“wtsw26”,“wtsw2s”和“wtsw2t”。同时,计算出c1,c2,c3的时间属性time分别为“12月28日10时”、“2016年12月28日”和“12月28日15时”。

此时移动终端的地图将设置放大级别为11,在地图上geohash编码为“wtsw26”处(即经纬度分别为118.83913279、32.04714060处)标记c1,在地图上geohash编码为“wtsw2s”处(即经纬度分别为118.85011911、32.05812693处)标记c2,在地图上geohash编码为“wtsw2t”处(即经纬度分别为118.85011911、32.06362009处)标记c3,在c1,c2,c3的标记上方分别注明时间“12月28日10时”、“2016年12月28日”和“12月28日15时”。接着分别找出c1,c2,c3中最早拍摄的图片的时间,用公式(3)计算得到time_first1,time_first2,time_first3分别为1482891165、1482895822、1482909225,因此分别添加从c1指向c2和从c2指向c3的“箭头”标记。

移动终端的地图界面会循环地对用户的手势操作进行响应,直至用户退出地图相册。

本发明提供了支持移动终端的时间空间关联的个性化定制图片管理方法,具体实现该技术方案的方法和途径很多,以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。本实施例中未明确的各组成部分均可用现有技术加以实现。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1