Comments (8)
Hey - all looks good except the labels should be grayscale, with label values (in your case 0,1,2 or 3) in each pixel. See the camvid data as an example.
from caffe-segnet.
Typically I observe these kind of errors when there is an invalid label. ie. if you are outputting four classes then a pixel which is labelled > 3? do you only observe this in cpu mode?
from caffe-segnet.
Hi Alex,
Thanks for the quick response.
Yes, I have only CPU option to work on.
The fourth class is void (black) and as you noted I hardly have any instances where it is marked (except for couple of images with very less pixels). Does this affect my training and cause this error somehow?
from caffe-segnet.
The pixels in your label images should be between 0 and 3 inclusive.
from caffe-segnet.
Hi Alex,
Ok, looks like I made some silly mistake somewhere. I'm bit confused after reading your above reply. Where exactly do we label the pixels with 0-3 values? I have used the Interactive Labeler tool found here to paint the regions I'm interested in and the results look like this. Nowhere did I have to do any sort of color labeling. Did I do something wrong here?
I could successfully train using camvid dataset though. I get this error only when I switch to my dataset. The error is seen when I issue caffe train command.
The following are the changes I did in my train.prototxt
layer {
bottom: "conv1_2_D"
top: "conv1_1_D"
name: "conv1_1_D"
type: "Convolution"
param {
lr_mult: 1
decay_mult: 1
}
param {
lr_mult: 2
decay_mult: 0
}
convolution_param {
weight_filler {
type: "msra"
}
bias_filler {
type: "constant"
}
num_output: 4
pad: 1
kernel_size: 3
}
}
layer {
name: "loss"
type: "SoftmaxWithLoss"
bottom: "conv1_1_D"
bottom: "label"
top: "loss"
softmax_param {engine: CAFFE}
#loss_param: {
#weight_by_label_freqs: true
#ignore_label: 4
#class_weighting: 0.2595
#class_weighting: 0.1826
#class_weighting: 4.5640
#class_weighting: 0.1417
#class_weighting: 0.9051
#class_weighting: 0.3826
#class_weighting: 9.6446
#class_weighting: 1.8418
#class_weighting: 0.6823
#class_weighting: 6.2478
#class_weighting: 7.3614
#}
}
Please let me know what else I missed to start the training.
from caffe-segnet.
Oh! Thanks for the clarification. Appreciate your patience with all my novice queries.
I had read about the single channel ground truth images but had not quite understood it. So, if I understood correctly, I will convert my images to grayscale and assign each color a fixed value (0,1,2 or 3) which are basically intensity values, right?
from caffe-segnet.
correct :)
from caffe-segnet.
Hi Alex,
i am doing my final year project on semantic face segmentation using SegNet. And i followed the segnet tutorial and it works good, but when i tried to train the network with my own dataset i got a 'segmentation fault (core dumped)'. I couldn't understand where i made a mistake.
I have a face image dataset and it's ground truth image, and my task is to segment face,hair,eye,nose,mouth and background total of six labels; what i did was as follow:-
1, convert the ground truth image in to gray scale image.
2, i assign a label from 0 to 5
3, create the lmdb file for both data and the ground truth image.
4, i make all the necessary changes on train.prototxt file.
please i really need your help Alex.
i attached the .zip folder of my code below
attachedFolder.zip
from caffe-segnet.
Related Issues (20)
- About Run In C++
- Separate input concatenation in segnet
- Caffe2 caffe-segnet HOT 2
- make runtest fail HOT 4
- Reducing the noise in a image
- Error occurred when make resource code
- Which file does caffe execute when implementing convolutional operation?
- CUDNN version
- Caffe-SegNet installation on Windows
- All indices of the max locations will be stored and passed to the decoder during pooling?
- Hey - it doesn't make sense to train segnet on a single class. In this situation, segnet will simply learn to predict every pixel as this class, and you will see loss=0. HOT 1
- Help for implementing SegNet for predicting Single class
- Check failed: error == cudaSuccess (77 vs. 0) an illegal memory access was encountered HOT 2
- make problem
- make error
- nvcc fatal: redefinition of argument 'compiler-bindir'
- what is the softmax uncertainty in Bayesian Segnet paper?
- changing the number of classes in segnet produce error: cudaSuccess (700 vs. 0) an illegal memory access was encountered. HOT 1
- Try-demo issues about website http://mi.eng.cam.ac.uk/projects/segnet/demo.php
- why last prediction layer is 3x3 convolution??
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from caffe-segnet.