如何在Matlab中逐行(图)将图像分成更小的片段

时间:2016-05-31 08:45:33

标签: image matlab split binary line

我想问一个关于拆分二进制图像的问题。我尝试使用以下代码:

%# FAPatch is the binary image    
figure,imshow(FAPatch)  
hold on

%# PositionTab is a table that include the 3 outest point.
for i=1 :3  
    eval(['p' num2str(i) '= PositionTab(' num2str(i) ',:);']);  
end

%#C is the centroid [130,59]. And this is the code I use to draw the lines from centroid to the point  
plot([C(1),p1(2)],[C(2),p1(1)],[C(1),p2(2)],[C(2),p2(1)],[C(1),p3(2)],[C(2),p3(1)],'Color','r','LineWidth',2)

这是表格:

PositionTab

我得到一个带有行的二进制图像:

binary image with line

如何将此图像分成三个小块?这不是一条直线,可以是随机的,我找不到解决方案。

1 个答案:

答案 0 :(得分:0)

我认为这就是你的意思......

转到红线与图像边缘相交的三个点中的每一个。使用上方和下方的点,如果在垂直边缘,或者如果在水平边缘上作为红色洪水填充的种子,则紧接其左右的点,现在使所有红点都透明。

enter image description here