create_masks.py 文件源码

python
阅读 20 收藏 0 点赞 0 评论 0

项目:SamuROI 作者: samuroi 项目源码 文件源码
def get_centers_of_mass_from_blobs(segmentation_layer, iterations=3):
    """
    Determine the centers of each object in an image

    ::param segmentation_layer: NxM ndarray image mask of all target objects
    ::param iterations: threshold for removal of small non-target objects
    ::return centers_of_mass: a np ndarray of x,y coordinates for the center of each target object

    """

    segmentation_layer = ndimage.binary_opening(segmentation_layer, iterations=iterations)  # remove small objects
    labels, label_number = ndimage.measurements.label(segmentation_layer)  # label remaining blobs

    centers_of_mass = np.zeros((label_number, 2))

    for i in range(label_number):
        idx = np.where(labels == i+1)  # calculate the center of mass for each blob
        centers_of_mass[i, 1] = np.mean(idx[1].astype(float))  # must be float
        centers_of_mass[i, 0] = np.mean(idx[0].astype(float))  # must be float

    return centers_of_mass
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号