現在、私は全体の画像の平均に基づいてしきい値を超えるピクセル値の合計を取得して練習しています。 (私はPythonの初心者です)。私はPython 3.5.2を使用しています。上記のコードは、コードを記述して実験するために使用しているAtomプログラムからコピーされています。Pythonの平均ベースのしきい値を上回るピクセル値を取得する方法
当分の間、私は赤いチャンネルで練習していますが、最終的にすべてのカラーチャンネルを個別に分析する必要があります。
私がこれまで使用しています完全なコード:
import os
from skimage import io
from tkinter import *
from tkinter.filedialog import askopenfilename
def callback():
M = askopenfilename() #to select a file
image = io.imread(M) #to read the selected file
red = image[:,:,0] #selecting the red channel
red_av = red.mean() #average pixel value of the red channel
threshold = red_av + 100 #setting the threshold value
red_val = red > threshold
red_sum = sum(red_val)
print(red_sum)
Button(text = 'Select Image', command = callback).pack(fill = X)
mainloop()
は今、すべては私がプログラムを実行する場合を除き、これまでの作品、red_sum
はthreshold
上記の画素数であるように出てくる、ではありませんピクセルの合計。
私は何が欠けていますか?私はred_val
変数を宣言する私の(可能性のある)方法はそれと関係があると考えています。
ただし、しきい値を超えるピクセルの合計値を取得するにはどうすればよいですか?
私は上記のように書くのはなぜか分かりませんが、私は 'red_sum'の値のリストを取得していますが、' 'red_sum = red_val.sum()' '数値的な答え。 –