• + 0 comments

    import numpy as np

    img = np.array([ [0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 1, 1, 1, 1, 1, 1, 1, 0, 0], [0, 0, 0, 0, 1, 1, 1, 1, 0, 0], [0, 0, 0, 0, 1, 1, 1, 1, 0, 0], [0, 0, 0, 1, 1, 1, 1, 1, 0, 0], [0, 0, 0, 0, 1, 1, 1, 1, 0, 0], [0, 0, 0, 1, 1, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0] ])

    def dilation(image): count = 0

    for i in range(image.shape[0] - 1): 
        for j in range(image.shape[1] - 1): 
            if image[i][j] == 1: 
                count += 1
            elif (
                image[i-1][j] == 1 or 
                image[i+1][j] == 1 or 
                image[i][j-1] == 1 or 
                image[i][j+1] == 1 or 
                image[i-1][j-1] == 1 or 
                image[i-1][j+1] == 1 or 
                image[i+1][j-1] == 1 or 
                image[i+1][j+1] == 1
            ): 
                count += 1
    
    return count 
    

    result = dilation(img) print(int(result))