GithubHelp home page GithubHelp logo

pixor's Introduction

My PIXOR

This is an unofficial PIXOR implementation. PIXOR is a neural network for object detection in LiDAR data. It works by discretizing the point-cloud onto an image (2D topview) and then applying a one-stage object detection based on YOLO (but simpler, without anchors). The innovation over YOLO is that it also outputs angles.

From visual inspection and a lot of debugging, everything seems to be working fine. Results may vary from the paper because a lot of details are missing from the paper, namely the optimizer strategy they have used. Other than that, pretty much everything is implemented except for metrics (mAP). You can use the evaluation code provided by the KITTI bird's eye view evaluation page or you could easily adapt this evaluation code of mine (just replace that IoU function with the one provided in this code since bounding boxes here are angular).

Again, some things are unclear from the paper. I comment what these are in the code. When unclear, I went with my best guess based on the cited papers, including the subsequent paper HDNET from the same authors. In particular, the diagram in the paper showing the architecture is unclear to me (model.py); when undecided on the number of neurons and so on, I went with the smallest choice. Let me know if you make any improvements.

Usage

  • train.py FILENAME to train the model (saves to the given filename)
  • eval.py FILENAME to evaluate the model (loads from a given filename)

The two most important parts of the implementation are: (1) the input transformation (data.py), and (2) the model itself (model.py). I have used KITTI (like the paper), but it should be fairly easy to extend to other datasets (just copy and edit the KITTI class).

Related Repositories

If you like this code, you might want to check out these two repositories of mine. Some code here was borrowed from them.

  • objdetect: package to help create one-stage object detection models.
  • pnets: package to help with point-clouds.

-- Ricardo Cruz [email protected]

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.