展开白色像素python中的图像处理

时间:2017-06-18 19:22:44

标签: python image numpy image-processing pillow

如果我打开下面的图像,是否可以展开白色像素?

enter image description here

enter image description here

伪代码:

image = Image.open("test.png")
image = image.convert("RGBA")
my_data = image.getdata()

new_data = []
for i in my_data:
    if i[0] == 255 and i[1] == 255 and i[2] == 255:
        #append white to new_data + to the pixels around
    else:
        new_data.append((255, 255, 255, 0))

谢谢

3 个答案:

答案 0 :(得分:3)

您可以使用 cv2 中的扩张功能,以及一点 numpy

 var arrayOfTags=['tag1','tag2','tag3']
 Imgs.find({tags: {$in : arrayOfTags}}, function(err, f){
    if(err){
      console.log(err); 
    } else {
      res.render("Images/index.ejs", {
        playlists: f
      }); 
    }
    });

答案 1 :(得分:1)

此操作称为dilation。 Python具有相应的功能。

答案 2 :(得分:1)

您可以使用numpyscipy来应用扩张:

import numpy as np
from scipy.ndimage.morphology import binary_dilation

# Create and initialize image
image = np.zeros((21, 41), dtype=bool)
image[8:12, 18:22] = True

# Define structuring element and applying dilation
strel = np.ones((3, 3))
dilated = binary_dilation(image, structure=strel)