Skip to content

taherahmadi/deepnav_cvpr17

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

DeepNav: Learning to Navigate Large Cities

  • Most of the code exists to collect data and label it
  • Actual training code is minimal (you will find prototxt files for all 3 DeepNav networks in the 'ml' directory)
  • For implementing the geographically weighted loss functions, use the SoftmaxWeightedLoss and EuclideanWeightedLoss layers from my fork of caffe.
  • Unfortunately I haven't had the time to extensively document everything, but here's what the important executables do:
    • test_graph_maker makes a city graph given the dataset
    • test_search demonstrates A* search
    • test_dataset_maker generates labels for a city and stores them in the city's directory
    • test_tester applies the learned model for navigating in a city graph
    • test_eval evaluates the learned model
  • Data directory structure:
    • Each city has its own directory in data/dataset e.g. data/dataset/new_york
    • The data collection script stores the images, nodes and links in this directory
    • Once that is done, the test_dataset_maker executable generates labels in caffe-readable format in a subdirectory e.g. new_york/pair for DeepNav-pair, new_york/distance for DeepNav-distance etc.
    • You will have to collect your own data but I have provided some sample labels in data/dataset/small so that you can understand the format of training data
    • Each dataset folder (e.g. /data/dataset/san_francisco) should have a box.txt. box.txt has 2 lines: first line is top left limit of the city in latitude, longitude format and second line is bottom right limit of the city in latitude, longitude format. You can use Google Maps to figure out these limits for your city/area. For example, data/dataset/small/box.txt is for San Francisco.
    • The python/combine_datasets.py script can be used to combine the labels of multiple cities for large experiments

Trained models

Citation

@InProceedings{Brahmbhatt_2017_CVPR,
author = {Brahmbhatt, Samarth and Hays, James},
title = {DeepNav: Learning to Navigate Large Cities},
booktitle = {The IEEE Conference on Computer Vision and Pattern Recognition (CVPR)},
month = {July},
year = {2017}
}

About

Code and models for the CVPR 2017 paper "DeepNav: Learning to Navigate Large Cities"

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 71.6%
  • Python 24.0%
  • Shell 2.4%
  • CMake 1.9%
  • sed 0.1%