2014-01-06 57 views
0

我从这个问题挣扎2天以来。请帮我解决这个问题。我正在进行血管分支分割,我从MathWorks central得到了代码。错误血管分支分割代码

请从该网站下载的提交,并打开的readme.txt

之前,我得到了一个错误的TIFF文件转换为垫文件,但现在它的工作。感谢您对我的帖子的快速回复。但现在我得到以下错误

Elapsed time is 0.987052 seconds. 
Index exceeds matrix dimensions. 
Error in VBSvesselMask (line 20) 
meanImg=mean(single(orgImg(:,:,windowSize+1:30)), 3); 
Error in VesselBranchSegmentation/CBestimateVesselMask (line 294) 
[appImg masks(1).img]= VBSvesselMask(orgImg); 
Error while evaluating uimenu Callback 

请帮我。

回答

0

使用dbstop if error并检查当时的尺寸orgImg

看来输入预计会是某种图像堆栈(3D数据或一堆2D图像,例如同一区域随时间拍摄的一组2D图像)。该错误表示您的输入图像的大小比代码所需的大小小。

这行代码是关键:

orgImg(:,:,windowSize+1:30)

对于这项工作,的orgImg第三维度的大小必须至少30和windowSize值应适当地设定(某处在0和29之间)。查看原始代码,看起来您应该在整个图像目录上使用VBSreadtiff函数,以创建用于处理代码的图像堆栈。使用单个灰度或RGB图像将不起作用。