1.获得体膜二维投影图像之后,需要对图像进行分割,提取出小球的二维坐标,可以使用函数matlab 函数regionprops(img,‘指令’);对已经分割的小球进行处理,指令 依次为’centroid’, ‘Area’, 'Perimeter’可以分别获得小球的依次编码的质心,小球面积,以及各个小球的周长。
但是需要注意的是,使用这些指令之前,需要将分割好的图像转换成二值图,并调用[label_img,num] = bwlabel(img); 图像对二值图进行编码,之后再调用上述的那些指令求相应的参数,否则会出现只有一对返回值的情况,标准并不会像预期那样在所有小球上产
修改之后,实现了预期效果,根据小球的面积对大小球尽心区分并显示
)
2.由于计算坐标过程,第一步编码之后,还需要对图像进行粘连的判断,去除粘连的部分,那么
需要对label图像再次使用bwlabel函数对图像重新编码,因为删除的小球导致图中的编码顺序不再连续,会导致后面的索引错误,进而导致标记错误
3.对于计算出来的m值,plot m1,m2,。。。可以查看自己计算的结果大致对不对,如图plot的是m5,不光滑的地方,明显是计算错误,在确保没有编码错误的前提下,用插值去掉,减小误差
4。上述的异常情况最后发现是小球编码匹配错误,修正之后,异常值消失