Code Monkey home page Code Monkey logo

autopilotmath's Introduction

common_math

This project mainly conducts some common module tests of planning in automatic driving systems.

Ready:

1.prepare bench dependency

# Check out the library.
$ git submodule update --init --recursive
# Go to the library root directory
$ cd benchmark
# Make a build directory to place the build output.
$ cmake -E make_directory "build"
# Generate build system files with cmake, and download any dependencies.
$ cmake -E chdir "build" cmake -DBENCHMARK_DOWNLOAD_DEPENDENCIES=on -DCMAKE_BUILD_TYPE=Release ../
# or, starting with CMake 3.13, use a simpler form:
# cmake -DCMAKE_BUILD_TYPE=Release -S . -B "build"
# Build the library & install.
$ cmake --build "build" --config Release --target install

在/benchmark/CMakeLists.txt中修改一下:

option(BENCHMARK_DOWNLOAD_DEPENDENCIES "Allow the downloading and in-tree building of unmet dependencies" ON)
#option(BENCHMARK_ENABLE_GTEST_TESTS "Enable building the unit tests which depend on gtest" ON)
#option(BENCHMARK_USE_BUNDLED_GTEST "Use bundled GoogleTest. If disabled, the find_package(GTest) will be used." ON)

Refs: https://github.com/google/benchmark

2.prepare eigen dependency 在eigen文件夹中安装

    mkdir build
    cd build 
    cmake ..
    make install

3.prepare osqp dependency

Create build directory and change directory

cd osqp
mkdir build
cd build
#Create Makefiles

#In Linux and Mac OS run

cmake -G "Unix Makefiles" ..
#In Windows run

cmake -G "MinGW Makefiles" ..
#Compile OSQP

cmake --build .

# Install 

cmake --build . --target install

refs: https://osqp.org/docs/get_started/sources.html#build-the-binaries

4.prepare pybind dependency

pip install "pybind11[global]"

macOS, you can use

brew install pybind11

PolyFit module

We use Eigen & OSQP to achieve polyfit func, and use pybind11 & jupyter and benchmark to explore the performance.

njson Module

refs:https://github.com/nlohmann/json

autopilotmath's People

Contributors

nii-o9i2 avatar

Watchers

 avatar

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.