ignaciorlando / fundus-vessel-segmentation-tbme

In this work, we present an extensive description and evaluation of our method for blood vessel segmentation in fundus images based on a discriminatively trained, fully connected conditional random field model. Standard segmentation priors such as a Potts model or total variation usually fail when dealing with thin and elongated structures. We overcome this difficulty by using a conditional random field model with more expressive potentials, taking advantage of recent results enabling inference of fully connected models almost in real-time. Parameters of the method are learned automatically using a structured output support vector machine, a supervised technique widely used for structured prediction in a number of machine learning applications. Our method, trained with state of the art features, is evaluated both quantitatively and qualitatively on four publicly available data sets: DRIVE, STARE, CHASEDB1 and HRF. Additionally, a quantitative comparison with respect to other strategies is included. The experimental results show that this approach outperforms other techniques when evaluated in terms of sensitivity, F1-score, G-mean and Matthews correlation coefficient. Additionally, it was observed that the fully connected model is able to better distinguish the desired structures than the local neighborhood based approach. Results suggest that this method is suitable for the task of segmenting elongated structures, a feature that can be exploited to contribute with other medical and biological applications.
47 stars 15 forks source link

Error quadprog #10

Closed ai1361720220000 closed 5 years ago

ai1361720220000 commented 6 years ago

Hello Orlando, i just worked out your red lesion project, thanks! But when i run this vessel segmentation code, there are some errors i can't solve. Could you help me?

Error quadprog (line 189) The 'active-set' algorithm has been removed from quadprog. To avoid this error, choose a different algorithm: 'interior-point-convex' or 'trust-region-reflective'. Error sosvm (line 35) state = bundler(state, phi,b, false);

Error sosvmCallback (line 39) [model, config, state] =sosvm(config, patterns, labels);

Error learnCRFPotentials (line 25) [bestModel, bestParam, state] = sosvmCallback(config, trainingdata);

Error learnConfiguredCRF (line 42) [model, qualityOverValidation,config] =learnCRFPotentials(config,trainingdata, validationdata);

Then i use 'trust-region-reflective' But other errors pop out.

ignaciorlando commented 6 years ago

Hi again!

Some questions:

Cheers,

Nacho

mumuaktar commented 5 years ago

hi, when I run the code, an error is showing: Index exceeds array bounds.

it is showing: Error in extractFeatures (line 45) dimensionality = size(features{1}, 2); Would you please solve the issues?

Can I use the code for 3D medical imaging?

ignaciorlando commented 5 years ago

Hi @mumuaktar, Unfortunately not, this code is only intended for 2D images. Best, Nacho

mumuaktar commented 5 years ago

hi, when I run the code, an error is showing: Index exceeds array bounds.

it is showing: Error in extractFeatures (line 45) dimensionality = size(features{1}, 2); Would you please solve the issues? I used your dataset