KAVTECH REAL ESTATE API
Installation Guide
Friday, July 19, 2019
Kavtech Solutions (Private) Ltd.
API INSTALLATION GUIDE
INSTALLATION REQUIREMNETS
HARDWARE
(Ubuntu 18.04, RAM 14-16GB, HARD DISK 40-60 GB, GPU MEM 4-15GB)
SOFTWARE
Create a virtual environment (OPTIONAL)
Libraries to be installed (USE pip3):
1. Pip (9.0.1)
2. Protobuf 3.0.0 / (3.7.1)
3. Python 3.6.x
4. Python-tk
5. Pillow 1.0 / (6.1.0)
6. Requests (2.18.4)
7. lxml (4.3.4)
8. tf Slim (which is included in the "tensorflow/models/research/" checkout)
9. Matplotlib 2.1.1
10. Tensorflow (1.9.0) / (1.13.1)
11. Tensorflow-gpu (0.12.1)
12. Torch (1.1.0)
13. Torchvision (0.3.0)
14. Urllib3 (1.22)
15. Werkzeug (0.15.2)
16. wheel (0.33.1)
17. webencodings (0.5)
18. Cython (0.29.7)
19. contextlib2
20. cocoapi
21. opencv-python 4.0.0.21
22. keras (2.2.4)
23. six 1.12.0
24. numpy 1.16.1 / (1.16.4)
25. sklearn 0.20.3
26. scikit-learn (0.20.3)
27. scipy (1.2.1)
28. Image 1.5.27
29. pickle
30. awscli 1.6.110
31. itertools
32. image (1.5.27)
33. CUDA version 9 / 10.0
34. Flask 1.0.2
35. Flask-Cors 3.0.7
36. Scikit-image
37. Libsvm3 (sudo apt install libsvm3)
38. Python-libsvm (sudo apt install python-libsvm)
CODE DIRECTORY STRUCTURE
batch_api_code
├── batch_api_quick_resp.py #Api-Server File for batch Pross.
├── dev_api.py
├── kavlibs
│ ├── HomeApi_m2
│ │ ├── home.model
│ │ ├── home.pickle
│ │ ├── hybrid_model.py
│ │ ├── temporary
│ │ └── whole_img_model.py
│ ├── PlacesApi
│ │ ├── IO_places365.txt
│ │ ├── W_sceneattribute_wideresnet18.npy
│ │ ├── categories_places365.txt
│ │ ├── labels_sunattribute.txt
│ │ ├── places.py
│ │ ├── wideresnet.py
│ │ └── wideresnet18_places365.pth.tar
│ ├── backyard_model
│ │ ├── home.model
│ │ ├── home.pickle
│ │ ├── temporary3
│ │ └── whole_img_model.py
│ ├── config.py
│ ├── data
│ │ ├── mscoco_complete_label_map.pbtxt
│ │ ├── mscoco_label_map.pbtxt
│ │ └── mscoco_minival_ids.txt
│ ├── emptyroom_model
│ │ ├── home.model
│ │ ├── home.pickle
│ │ ├── temporary3
│ │ └── whole_img_model.py
│ ├── faster_rcnn_inception_resnet_v2_atrous_coco_2018_01_28
│ │ └── frozen_inference_graph.pb
│ ├── faster_rcnn_nas_coco_2018_01_28
│ │ └── frozen_inference_graph.pb
│ ├── hybrid_decision_maker.py
│ ├── image_downloader.py
│ ├── img_dir
│ │ └── 2409760023.jpg
│ ├── lib_core
│ │ ├── home.model
│ │ ├── home.pickle
│ │ └── whole_img_model.py
│ ├── mask_rcnn_inception_resnet_v2_atrous_coco_2018_01_28
│ │ └── frozen_inference_graph.pb
│ ├── object_det_model.py
│ ├── object_model_functions.py
│ ├── rectangle.py
│ ├── service_one.py
│ ├── single_response_folder
│ ├── some_temp
│ │ └── ids_file_14384.txt
│ ├── string_int_label_map_pb2.py
│ └── utils.py
├── some_temp
├── static
│ ├── assets
│ │ └── output
│ │ └── final_response
│ └── object_det_model.py
└── tunnel #tunnel to access api from anywhere without vpn (FOR TESTING)
├── ngrok
└── ngrok-stable-linux-amd64.zip
RUNNING THE API
From code root directory(batch_api_code) execute:
sudo python3 batch_api_quick_resp.py
To Use Tunnel From tunnel Directory(batch_api_code/tunnel/) execute
sudo ./ngrok http 4000 # (4000) Api port to listen