0

scikit チュートリアル ( http://scikit-image.org/docs/dev/auto_examples/plot_blob.html ) を使用して、ブロブ検出を試しました。Gaussian の差分だけを取得するようにコードを変更しました

from matplotlib import pyplot as plt
from skimage import data
from skimage.feature import blob_dog
from skimage.color import rgb2gray

image = data.imread('Img.png')

blobs_dog = blob_dog(image, max_sigma=30, threshold=.1)

blobs = [blobs_dog]
colors = ['red']
titles = ['Difference of Gaussian']
sequence = zip(blobs, colors, titles)

for blobs, color, title in sequence:
    fig, ax = plt.subplots(1, 1)
    ax.set_title(title)
    ax.imshow(image, interpolation='nearest')
    for blob in blobs:
        y, x, r = blob
        c = plt.Circle((x, y), r, color=color, linewidth=1, fill=False)
        ax.add_patch(c)

plt.show()

今私の質問は次のとおりです:私はグレースケール画像を使用しました(rgb2gray関数で変更しませんでした)が、コードを実行すると、出力として「色付き」画像が得られます(ほとんどすべてのシアンに赤と黄色の斑点があります) . RGB 画像を使用してからグレースケールに変換しても問題はありません。なぜそうなのですか?

4

0 に答える 0