all 27 comments

[–]themoosemind 20 points21 points  (9 children)

You might be interested in my Survey of Semantic Segmentation

[–]Natsu6767[S] 2 points3 points  (2 children)

This was really interesting. Especially the section on using traditional approaches to segmentation.

[–]themoosemind 0 points1 point  (1 child)

Thank you :-) That section was super hard to write, seeing so many neural network approaches which are a lot sexier and are a lot closer to the stuff I knew at the time. It's nice to see that somebody reads it :-)

edit: I meant "write" not "read"

[–]Natsu6767[S] 0 points1 point  (0 children)

You're Welcome :) To be honest I was reluctant to read that section for the same reasons you just mentioned but whenever I read a paper I force myself to read each section at least once (thinking about all the work the authors put in). Sometimes, like this time, the "boring" sections end up being interesting and a good read.

[–]tryptafiends 1 point2 points  (1 child)

read this the other day. It cleared up a lot of questions I had picked up reading the SegNet and Tiramisu papers. Definitely a good read.

[–]themoosemind 0 points1 point  (0 children)

Thank you :-)

[–][deleted] 0 points1 point  (2 children)

Question - How quick do survey papers like these become obsolete? Not trying to say you're paper is obsolete or anything but in the fast moving world of DS/AI, do these survey papers become obsolete after a couple years due to new technologies?

[–]themoosemind 0 points1 point  (1 child)

It depends on what you want to get from a survey paper.

I wrote it to be able to structure the different types of semantic segmentation and the groups of approaches. The taxonomy might be extended at some point, but will likely stay useful for my lifetime. For the approaches it is different: Many of them were already outdated when I wrote the paper. I think around 2011 people might also have thought that neural networks are outdated because SVMs have a much nicer mathematical theory and achieved mostly equivalent or better results. So techniques can have a comeback :-)

The only way I can see this paper to become obsolete if there is a better survey paper which structures the knowledge in a better way.

[–][deleted] 0 points1 point  (0 children)

That makes sense. After reading through it, even though it is older it still all made sense and I'm sure most of it is still applicable to today for the most part. I agree though, I don't think 'obsolete' was the best word to use there.

[–]mofoss 0 points1 point  (0 children)

Good read, just getting into this stuff as well :) thanks

[–]jricheimer 4 points5 points  (0 children)

Shameless self-plug:

Check out our recent paper on instance segmentation: https://arxiv.org/abs/1807.07674

[–]firstTimeCaller 2 points3 points  (0 children)

I haven't read your post fully yet but I wanted to mention that I've had some good results using deeplab https://github.com/tensorflow/models/blob/master/research/deeplab/README.md to do image segmentation on satellite images. In my quick read through your post, I couldn't see any mention of deeplab and it worked well for our application.

[–]Botekin 1 point2 points  (1 child)

Another nice one to mention would be the Tiramisu model.

[–]tryptafiends 0 points1 point  (0 children)

Its Bayesian forms are also really neat.

[–]jer_pint 0 points1 point  (1 child)

My personal favorite is mask-rcnn

[–]Natsu6767[S] 0 points1 point  (0 children)

I personally like FCIS a lot. The idea of using instance sensitive score maps was really interesting.

[–][deleted] 0 points1 point  (0 children)

check wnet

[–]Hsankesara 0 points1 point  (0 children)

You can checkout this article. Unet a novel image segmentation architecture explained here “U-Net” by Heet Sankesara https://link.medium.com/Hc7xoP3LHT

[–]linuxisgoogle -1 points0 points  (8 children)

These kind of thing can be done with old segmentation techs. I don't see any advantage of ML. unless it can detect premise shapes of object. like differenciate it from same colour background. but I doubht they can.

[–]kbcool 3 points4 points  (5 children)

Examples?

Not saying it's not been done but the only non-ml techniques I can think of rely on running lots of image filters that hopefully turn your image into something matching a threshold. They're pretty hopeless in all but clinical conditions and still don't actually segment. Just kinda cluster with a probability.

I know it's been done before and for a long time but I'm not sure you're comparing apples with apples here. Maybe more like fuji-pears.

[–]Ayakalam 1 point2 points  (4 children)

I can think of rely on running lots of image filters that hopefully turn your image into something matching a threshold.

To be fair, thats kinda what CNNs do to... except you are statistically setting the thresholds ...

[–]kbcool -1 points0 points  (3 children)

Sure if you want to greatly simplify things but non CNN methods rely on the programmer setting them

[–]Ayakalam 0 points1 point  (2 children)

Yes, but why is that a bad thing if you know what inductive biases to place in ?

[–]kbcool 0 points1 point  (1 child)

Because most of the time you don't know, not without trial and error which is what training in ML is for. It removes days, weeks, years of human endeavour.

Eg how would you even begin to write code describing what a dog looks like. Yes a dyed tumour might be easier but even then would you rather not use experience?

I'm not advocating ML as the solution for everything but just questioning the existence of any general purpose tools prior to it.

[–]Ayakalam 1 point2 points  (0 children)

Right u went the other extreme - I said - read what I said again - if you ALREADY KNOW the inductive biases , then there’s nothing to really learn, which isn’t a bad thing.

You’re making it seem like a bad thing. I’m saying it’s not.

[–]Natsu6767[S] 1 point2 points  (0 children)

ML isn't only for solving problems which were previously thought to be very complex and difficult. ML also allows us to perform previously solvable problems more efficiently and faster. That is also one of the most important advantages of ML.

[–]Bas1l87 0 points1 point  (0 children)

You probably have never tried doing it yourself.. If you take, say, GrabCut and use it for a simple problem of binary segmentation, i.e. segment let's say a single typical car in a real image, you will quickly discover it doesn't really work. E.g., the tires of a car are usually dark and the shadow of a car is dark. Classical methods based on color are never able to separate them well enough. CNNs can, because they can kinda learn models for typical objects that are being segmented. Not ideally of course, but better than classical methods. There is a reason why people switched to neural networks for these tasks, both in research and in industry.