fabvio / cascade-ld Goto Github PK
View Code? Open in Web Editor NEWLane detection and classification in an end-to-end Deep Learning fashion
Lane detection and classification in an end-to-end Deep Learning fashion
Can u provide more info on license "Example providing MIT license ", mentioning openness for reuse even commercially, like usage of this trained model for inference in a Software without restriction, limitation to use, copy, modify, merge, publish, distribute etc etc.. current license by citation is not clear
In the TuSimple dataset, all the double lines are labeled like single lines. I mean, for example, a double solid yellow line is labeled with many points, but if you only project the polyline with a width of 5px. There will be no difference between a double line and a single line. How can you classify double lines and single lines? Can you tell me how it performs on double lines classification?
Hello, thank you very much for publishing the lane category of the Tusimple train data, which is of great help to my experiment. Could you please publish the category of the Tusimple test set?
Hey Fabvio,
Appreciate your great work here! I'm trying to reproduce the results and got some issue with the pretrained ERFNet. Correct me if I'm wrong. So we have to pretrain a pixel-wise segmentation network with 0 for background and 1 for lanes. Then we are going to replace BCE loss with the loss function you provided in this repo. But if we specify num_classes=5, we are going to have a 5-channel output at the end of Decoder. Should I add a 1 by 1 filter to get a one-channel output and then a sigmoid function after that in the first training stage? And throw 1 by filter and sigmoid away when we fine-tune the network?
Hi Fabvio,
Great work. I would love to know when the training code will be released. Meanwhile, I'm trying to train only the classifier CNN and for that, I'm trying to create a {descriptor, class} dataset as mentioned in the paper. In my approach, I'm directly drawing the lanes on an image(binary) from the tusimple dataset lane annotations, resizing the original and binary image to 360*640, converting it to torch tensors, and passing it to extract_descriptor function.
Expected Output -
For a four-lane image, four descriptors should be extracted
Actual output -
No descriptor is extracted
I am wondering if my approach is correct and if it is correct, then why is the extract_descriptor function is not working as expected.
Thanks for your sharing!Would you please tell me what to do if I want to get the lane line pixel coordinates after the instance segmentation work?
In your paper, the points in descriptor is 'extracted in the original image and arranged in squared images'. Does this means that you need 128*128 points in original image to be arranged in squared descriptor?
Hi, your network seems promising and I'd love to see what it can do; however, I'm unable to run main.ipynb in jupiter. I get an error about matplotlib
AttributeError Traceback (most recent call last)
/usr/local/lib/python3.5/dist-packages/ipykernel/pylab/backend_inline.py in show(close, block)
37 display(
38 figure_manager.canvas.figure,
---> 39 metadata=_fetch_figure_metadata(figure_manager.canvas.figure)
40 )
41 finally:
/usr/local/lib/python3.5/dist-packages/ipykernel/pylab/backend_inline.py in _fetch_figure_metadata(fig)
172 """Get some metadata to help with displaying a figure."""
173 # determine if a background is needed for legibility
--> 174 if _is_transparent(fig.get_facecolor()):
175 # the background is transparent
176 ticksLight = _is_light([label.get_color()
/usr/local/lib/python3.5/dist-packages/ipykernel/pylab/backend_inline.py in _is_transparent(color)
193 def _is_transparent(color):
194 """Determine transparency from alpha."""
--> 195 rgba = colors.to_rgba(color)
196 return rgba[3] < .5
AttributeError: module 'matplotlib.colors' has no attribute 'to_rgba'
What versions of python and necessary libraries do you use to make it work?
can you provide train code? I am leaning the method, thanks.
Friend please help me. Please explain to me how the descriptors of different lanes could be classified simultaneously. I really don't understand how this happens. How does the output get 4 channels?
Hi, @fabvio
Thanks for your great work. I've met some problems about training my own network. The main problem is how can the segmentation network discriminate different lanes. I'm trying the position of the lane to tell the difference which only leads the segmentation network learn other things. Did you use some post-processing methods?
Looking forward to your reply.
Hello sir,
Could you please provide train code, if not please suggest how to train for our own dataset
In the following snippet of main.py
single_lane = label.eq(i).view(-1).nonzero().squeeze()
# As they could be not continuous, skip the ones that have no points
if single_lane.numel() == 0:
continue
# Points to sample to fill a squared desciptor
sample = torch.zeros(DESCRIPTOR_SIZE * DESCRIPTOR_SIZE)
if torch.cuda.is_available():
sample = sample.cuda()
sample = sample.uniform_(0, single_lane.size()[0] - eps).long()
if single_lane has no points, then single_lane.size()[0] throws error. This scenario happened in one image of mine.
Need to add
if single_lane.numel() == 0 or len(single_lane.size()) == 0:
continue
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.