我从2天开始就在努力解决这个问题。请帮我解决这个问题。我正在进行船只分支分割,我从MathWorks central获得了代码。
请从该网站下载提交内容,然后打开readme.txt
在我将tiff文件转换为mat文件时遇到错误,但现在它正在运行。感谢您快速回复我的帖子。但现在我收到以下错误
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 :(得分:0)
使用dbstop if error
并在此时检查orgImg
的大小。
似乎输入预计是某种图像堆栈(3D数据或2D图像堆栈,例如随时间推移的相同区域的一组2D图像)。该错误表示输入图像的大小小于代码所需的大小。
这行代码是关键点:
orgImg(:,:,windowSize+1:30)
为此,orgImg
的第三维尺寸必须至少为30,并且windowSize
的值应该适当设置(介于0到29之间)。查看原始代码,看起来您应该在整个图像目录上使用VBSreadtiff
函数,以创建要处理的代码的图像堆栈。使用单个灰度或RGB图像将无法使用。