Я пытаюсь работать над кодом для увеличения контрастности изображений в градациях серого, чтобы сделать их более четкими. Кажется, я не могу заставить этот код работать. Я пытаюсь получить частоту распределения каждого значения (без использования каких-либо модулей, кроме cv2) в пикселе и получить совокупную частоту распределения, чтобы затем изменить значение, используя приведенное ниже уравнение. Есть идеи, что не так с моим кодом?
import cv2
img=cv2.imread(raw_input())
shape=img.shape
row=shape[0]
col=shape[1]
def df(img): #to make a histogram (count distribution frequency)
values=[]
occurances=[]
for i in range (len(img)):
for j in img[i]:
values.append(j)
if j in values:
count +=3
occurances.append(count)
return occurances
def cdf (img): #cumulative distribution frequency
values2=[]
for i in values:
j=0
i=i+j
j+1
values2.append(i)
return values2
def h(img): #equation for the new value of each pixel
h=((cdf(img)-1)/((row*col)-1))*255
return h
newimage=cv2.imwrite('a.png')
Это пример того, что я пытаюсь сделать.
Заранее спасибо.