sagieppel / Fully-convolutional-neural-network-FCN-for-semantic-segmentation-Tensorflow-implementation

69 stars 41 forks source link

Simplication of network for simpler problem #7

Open zizhaoLi opened 6 years ago

zizhaoLi commented 6 years ago

I have trained the architecture (FCN-8s) with your dataset (Vessels with four classes background, empty region, liquid, solid) and evaluated on your dataset. I didn't get a perfect result (for liquid & solid IoU < 5%). So I would like to know if you modified your architecture to make it adapt to your problem. If possible, could you share your modification with me?

Thanks, Zizhao

sagieppel commented 6 years ago

a) This is an old net model, a much faster and far more accurate net can be found here: https://github.com/sagieppel/Fully-convolutional-neural-network-FCN-for-semantic-segmentation-with-pytorch It also come with weights for pretrained nets for recognition of liquid and solid phases and for fill/empty vessel so there no need for you to train.

b) IOU<5% imply that either the net didnt train at all or that the evaluation was completely wrong. If the loss during the training did not dropped significantly then its probably problem with the training. You can look at the train loss file in the log folder. If the loss drop then you have problem with evaluation. Check if you set correct number of classes and if you point to the same images and label folders. ( again I suggest you use the net I mention a its far superior to this one)

zizhaoLi commented 6 years ago

I propose this question because I work on a similar project: detect walls from a floorplan drawing by one of the deep learning architecture using in semantic segmentation. I choose the basic architecture VGG16 based FCN to begin. For detail, below are one floorplan with its groundtruth.

0332 0332

However, I couldn't get a good prediction on walls, I don't know if it was because that walls don't have many features to extract or I have too many backgrounds compared to walls in the dataset.

I wonder to know the feasibility of using NN by your experience. Should I try the DenseNet that you mentioned or not?

Thanks

sagieppel commented 6 years ago

In general net should be good for such problems if you have enough training data. 1) One major issue that might cause error is that the resolution of the prediction of this net (and most similar fcn nets) is around 1/16 of the original image, that mean that it will have hard time predicting any label with width of less then 16 pixels. You can try dilating your label it might work. 2) Other issues my be imbalance between labels you might want to give extra weight to walls prediction in the loss (or dilate the wall area in the train labels) 3) Going for newer net will probably improve results.