현재 전체 이미지의 평균을 기준으로 임계 값보다 큰 픽셀 값의 총합을 검색하는 연습을하고 있습니다. (나는 Python을 처음 접한다.) 파이썬 3.5.2를 사용하고 있으며 위의 코드는 코드를 작성하고 실험하기 위해 사용하고있는 Atom 프로그램에서 복사 한 것입니다.파이썬에서 평균 기반 임계 값보다 높은 총 픽셀 값을 검색하는 방법
당분간 저는 빨간 채널로 연습하고 있습니다.하지만 결국 모든 색상 채널을 개별적으로 분석해야 할 것입니다. 내가 지금까지 사용하고
전체 코드 :
이제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()'으로 바꾸면 얻을 수 있습니다. 수치적인 대답. –