Image has been segmented using BFO algorithm and Otsu's method. Now I want to detect the edges. Is the 'Edge' function for Canny edge detection in the matlab good enough for the purpose? your suggestion is appreciated.
This will highly depend on the nature of your images and the application you're looking for. However, as soon as you have segmented your image using Otsu's method or any other thresholding method, I think there is no need for further edge detection algorithms. Detecting regions (or edges) in a binary image can be done easily, for instance using the MATLAB function "bwboundaries".
As pointed out above- no need for edge detection as it is apparent that you've already binarised the image with Otsu's threshold. Check out the below link for examples: http://www.mathworks.in/help/images/ref/bwboundaries.html
Canny is not suitable for edge detection in all cases and again it is not necessary to use canny after otsu is performed which is pointed out by the previous researchers.
Canny depends on the image u have.If it is retinal then it is fine.But after thresholding edge detection may not be necessary.U can go for some morphological operators like dilation,erosion etc,to fill the gaps.