Ok, so after some hours of documentation on Image Processing topic (I'm a begier programmer) I decide I want to implement a edge detection function of my own to better understand the mathematics behind it. I was able to do it fortunately, but my algorithm it's just way too slow. I'll post the code with the part of frame processing below:
for row in range(rows-2):
for col in range(cols-2):
keel[0] = frame.item(row,col,0)
keel[1] = frame.item(row,col+1,0)
keel[2] = frame.item(row,col+2,0)
keel[3] = frame.item(row+1,col,0)
keel[4] = frame.item(row+1,col+1,0)
keel[5] = frame.item(row+1,col+2,0)
keel[6] = frame.item(row+2,col,0)
keel[7] = frame.item(row+2,col+1,0)
keel[8] = frame.item(row+2,col+1,0)
Gx = keel[6]+2*keel[7]+keel[8]-(keel[0]+2*keel[1]+keel[2])
Gy = keel[2]+2*keel[5]+keel[8]-(keel[0]+2*keel[3]+keel[6])
grad = math.sqrt(Gx**2 + Gy**2)
frame.itemset((row, col, 0), grad)
frame.itemset((row, col, 1), grad)
frame.itemset((row, col, 2), grad)
cv2.imshow('frame', frame)
Thanks in advance !
