Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/MaybeShewill-CV/MNN-LaneNet
Lane detection model for mobile device via MNN project
https://github.com/MaybeShewill-CV/MNN-LaneNet
deep-learning lane-detection mnn semantic-segmentation
Last synced: 16 days ago
JSON representation
Lane detection model for mobile device via MNN project
- Host: GitHub
- URL: https://github.com/MaybeShewill-CV/MNN-LaneNet
- Owner: MaybeShewill-CV
- Created: 2019-11-08T13:03:28.000Z (about 5 years ago)
- Default Branch: master
- Last Pushed: 2020-04-14T12:16:43.000Z (over 4 years ago)
- Last Synced: 2024-08-01T03:18:54.013Z (3 months ago)
- Topics: deep-learning, lane-detection, mnn, semantic-segmentation
- Language: C++
- Size: 1.01 MB
- Stars: 74
- Watchers: 9
- Forks: 21
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# MNN-LaneNet
Lane detection model for mobile device via MNN project. Thanks for the
great efforts of [li-qing](https://github.com/li-qing) etc.# LaneNet-Lane-Detection
Use tensorflow to implement a Deep Neural Network for real time lane
detection mainly based on the IEEE IV conference paper "Towards
End-to-End Lane Detection: an Instance Segmentation Approach".You can
refer to their paper for details https://arxiv.org/abs/1802.05591. This
model consists of a encoder-decoder stage, binary semantic segmentation
stage and instance semantic segmentation using discriminative loss
function for real time lane detection task.The main network architecture is as follows:
`Network Architecture`
![NetWork_Architecture](./data/source_image/network_architecture.png)## Installation
This project has been built and tested on Ubuntu16.04. Tests on other
platform will be done recently.**OS**: Ubuntu 16.04 LTS
**Tensorflow**: tensorflow 1.12.0
**MNN**: mnn 0.2.1.0
#### Common Preparation
```
1.cd ROOT_DIR && git clone https://github.com/MaybeShewill-CV/MNN-LaneNet.git
2.Download the ckpt file path here https://www.dropbox.com/sh/yndoipxt6nbhg5g/AAAPxZDDO2N0HP0YonetamJoa?dl=0
and place the ckpt file into folder ./checkpoint
```#### Convert Model File
First you need to compile your own MNNConverter tools in your local
environment. Then you're supposed to modify the script for conversion in
folder ./checkpoint convert_ckpt_into_mnn_model.sh. Run the following
commands
```
cd ROOT_DIR
bash checkpoint/convert_ckpt_into_mnn_model.sh MNNConverter_TOOL_PATH
```
You may get some useful information via following command
```
cd ROOT_DIR
bash checkpoint/convert_ckpt_into_mnn_model.sh -h
```
You will get the mnn model named lanenet_model.mnn in folder ./checkpoint
if everything works correctly#### Build Binary file
```
1.cd ROOT_DIR/build
2.cmake .. && make -j4
```
You will get the built executable binary file named lane_detector.out in
folder ./build if everything works correctly## Test model
Run the following command
```
cd ROOT_DIR/build
./lanenet_detector.out ./config.ini ../data/tusimple_test_image/lanenet_test.jpg
```The results are as follows:
`Test Input Image`
![Test Input](./data/tusimple_test_image/lanenet_test.jpg)
`Test Lane Binary Segmentation Image`
![Test Lane_Binary_Seg](./data/source_image/binary_ret.png)
`Test Lane Instance Segmentation Image`
![Test Lane_Instance_Seg](./data/source_image/instance_ret.png)
## Reference
The origin lanenet repo can be found [here](https://github.com/MaybeShewill-CV/lanenet-lane-detection).
Feel free to raise issues to help the repo become better.## TODO
- [ ] Test the model on TX2 platform
- [ ] Add time cost profile tools to evaluate the speed on different
platform## Acknowledgement
The lanenet project refers to the following projects:
- [Tensorflow](https://github.com/tensorflow/tensorflow)
- [MNN](https://github.com/alibaba/MNN)
- [SimpleDBSCAN](https://github.com/CallmeNezha/SimpleDBSCAN)