——从YFCC 100M数据集中筛选出Geo信息位于中国的数据集
1.YFCC 100M简介
YFCC 100M数据库是2014年来基于雅虎Flickr的影像数据库。该库由1亿条产生于2004年至2014年间的多条媒体数据组成,其中包含了9920万的照片数据以及80万条视频数据。
YFCC 100M数据集并不包含照片或视频数据,而是一个文本数据文档,文档中每一行都是一条照片或视频的元数据。每一行包含23个项目,他们分别代表:
- [0] Photo/video identifier 照片/视频标识符
- [1] User NSID 用户NSID
- [2] User nickname 用户昵称
- [3] Date taken 拍摄日期
- [4] Date uploaded 上传日期
- [5] Capture device 使用设备
- [6] Title 标题
- [7] Description 描述
- [8] User tags (comma-separated) 用户标签(逗号分隔)
- [9] Machine tags (comma-separated) 机器标签(逗号分隔)
- [10] Longitude 经度
- [11] Latitude 纬度
- [12] Accuracy 准确性
- [13] Photo/video page URL 照片/视频页面URL
- [14] Photo/video download URL 照片/视频下载网址
- [15] License name 许可证名称
- [16] License URL 许可网址
- [17] Photo/video server identifier 照片/视频服务器标识符
- [18] Photo/video farm identifier 照片/视频农场标识符
- [19] Photo/video secret 照片/视频秘密
- [20] Photo/video secret original 照片/视频秘密原件
- [21] Extension of the original photo 扩展原始照片
- [22] Photos/video marker (0 = photo, 1 = video) 照片/视频标记(0 =照片,1 =视频)
其中,我使用到的有
- [0] Photo/video identifier 照片/视频标识符
- [10] Longitude 经度
- [11] Latitude 纬度
代码见 https://github.com/libaoquan95/flickrAnalyse
2.从数据集中挑选出具有Geo信息的数据集
Geo信息,就是地理位置信息,现在很多摄影设备都带有GPS模块,可以记录照片拍摄时的地理位置信息,即经度和纬度。但需要注意的是,并不是所有的元数据都带有Geo信息,所以要筛出不含Geo信息的元数据。
- ''' readDataset.py '''
- # 从原始数据集中提取带有geo标签的数据
- # @param fliename原始文件名
- # @return none
- def getGeoDataFromDataset(fliename):
- # 打开数据集
- inFile = open(fliename)
- outFile = open(flienam