• Stars
    star
    105
  • Rank 326,425 (Top 7 %)
  • Language
    Python
  • License
    GNU General Publi...
  • Created about 4 years ago
  • Updated over 2 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

About Point Pillars

Point Pillars is a very famous Deep Neural Network for 3D Object Detection for LiDAR point clouds. With the application of object detection on the LiDAR devices fitted in the self driving cars, Point Pillars focuse on fast inference ~50fps, which was magnitudes above as compared to other networks for 3D Object detection. In this repo, we are trying to develop point pillars in TensorFlow. Here's a good first post to familiarize yourself with Point Pillars.

Contributors are welcome to work on open issues and submit PRs. First time contributors are welcome and can pick up any "Good First Issues" to work on.

PointPillars in TensorFlow

Point PIllars 3D detection network implementation in Tensorflow. External contributions are welcome, please fork this repo and see the issues for possible improvements in the code.

Installation

Download the LiDAR, Calibration and Label_2 zip files from the Kitti dataset link and unzip the files, giving the following directory structure:

├── training    <-- 7481 train data
   |   ├── calib
   |   ├── label_2
   |   ├── velodyne
└── testing     <-- 7580 test data
           ├── calib
           ├── velodyne

After placing the Kitti dataset in the root directory, run the following code

git clone --recurse-submodules https://github.com/tyagi-iiitv/PointPillars.git
virtualenv --python=/usr/bin/python3.8 env
source ./env/bin/activate
pip install tensorflow-gpu tensorflow_probability sklearn opencv-python
cd PointPillars
python setup.py install
python point_pillars_training_run.py

Deploy on a cloud notebook instance (Amazon SageMaker etc.)

Please read this blog article: https://link.medium.com/TVNzx03En8

Technical details about this code

Please refer to this article on Medium.

Pretrained Model

The Pretrained Point Pillars for Kitti with complete training and validation logs can be accessed with this link. Use the file model.h5.

Saving the model as .pb

Inside the point_pillars_training_run.py file, change the code as follows to save the model in .pb format.

import sys
if __name__ == "__main__":

    params = Parameters()

    pillar_net = build_point_pillar_graph(params)
    pillar_net.load_weights(os.path.join(MODEL_ROOT, "model.h5"))
    pillar_net.save('new_model')
    sys.exit()
    # This saves the model as pb in the new_model directory. 
    # Remove these lines during usual training. 

Loading the saved pb model

model = tf.saved_model.load('model_directory')

More Repositories

1

MIPSIT

MIPSIT tool for windows developed at LUND University. Only for educational purposes.
C
7
star
2

Pyopengl-and-blender-example

An .obj file of a room is loaded into pyopengl and the movement within the room is done using arrow keys.
Python
5
star
3

infographics_generation

JavaScript
5
star
4

Bumpy_server

Django code for the speed breaker predictor system
Python
3
star
5

LayoutNet

Python
2
star
6

Pyopengl-blender-sample

Python
2
star
7

guitar-tuner-in-octave

This is a small code of implementation of a guitar tuner program built in octave.
MATLAB
2
star
8

stanford-course-CS-97SI-solutions-

Solutions to some problems in the exercise of the course on competitive programming at Stanford.
C++
2
star
9

Shhhh

Shhhh Android App.
Java
1
star
10

CSE519-2017-111482304-111733554

Repository for Homework 3 (Anjul Kumar Tyagi, Sanaz Sheikhi)
Jupyter Notebook
1
star
11

CSE544

Repository for hypothesis testing (CSE544 project)
Jupyter Notebook
1
star
12

frogger-in-c

The game of frogger implemented in C.
C
1
star
13

MapReduce

Codes for implementing Map-reduce on Hadoop cluster.
1
star
14

SwFlCoBr

A sample flask application specifying the use of Bravado and swagger for client side validation.
Python
1
star
15

Artificial-Intelligence-Labs

Lab submissions for artificial intelligence course (IIIT Vadodara 6th Sem)
R
1
star
16

WeatherForecast

The basic Weather Forecast Android app
Java
1
star
17

Compiler-Design-Labs

Lab submissions for compiler design course (IIIT Vadodara 6th Sem)
C
1
star
18

CSE549-project

Course project for Fall 17
Jupyter Notebook
1
star
19

prolog_codes

Prolog
1
star
20

weekly-task-manager

Android app to help manage your tasks.
Java
1
star
21

CSE544_project

1
star
22

Website-public-sample

HTML
1
star
23

cannon-combat

Game of cannon combat where a cannon tries to shoot your vehicle and you have to cross the given distance by escaping the combat.
C
1
star
24

PC-Expo

Jupyter Notebook
1
star
25

Personal_website

CSS
1
star
26

tyagi-iiitv.github.io

JavaScript
1
star
27

CSE519-2017-111482304

Repository for 2nd Assign. of CSE 519 (Data Science Fundamentals course).
Jupyter Notebook
1
star
28

microblog

HTML
1
star
29

Nas-Navigator

TypeScript
1
star
30

IT102

Basic C programs for IT102 batch at IIIT Vadodara (2016)
C
1
star
31

OpenglExample

Pyopengl Example
Python
1
star
32

Bumpy

Android app to predict the speed breakers on the road.
Java
1
star
33

UCF101_release

1
star
34

Spoj-solutions

Solutions to some popular spoj problems.
C++
1
star
35

graph2vec

Python
1
star
36

NFLLive

We provide Live predictions for NFL games.
Jupyter Notebook
1
star
37

weather-forecast-android-app

This is my first app built using android studio. Its still under development. I am building this app as a learning purpose.
1
star
38

flask_connexion

Sample my_cars app to see data validations using connexion
1
star