我想用scipy做圖像的erosion和dilation。這看起來很簡單,使用scipy - >binary_erosion/dialation
。但是,輸出完全不符合預期。Scipy的圖像侵蝕和膨脹
這裏是我的基本代碼:
import scipy
from scipy import ndimage
import matplotlib.pyplot as plt
import numpy as np
import Image
#im = Image.open('flower.png')
im = ndimage.imread('flower.png')
im = ndimage.binary_erosion(im).astype(np.float32)
scipy.misc.imsave('erosion.png', im)
im2 = Image.open('flower.png')
im2 = ndimage.binary_dilation(im2)
scipy.misc.imsave('dilation.png', im2)
這是輸出:
用於擴張的輸出僅僅是原來的 「flower.png」
全白圖像我相信我必須指定一個更好的內核或掩碼,但我不確定爲什麼我得到一個綠色的輸出侵蝕和完全whi輸出用於擴張。
二元運算符期望與您的二進制輸入不同 – theta 2013-04-06 20:19:38