ScenicPlanner: planning scenic travel routes leveraging heterogeneous user-generated digital footprints