Can anyone tell me why this isnt working

import numpy as np
import cv2
from pil import ImageGrab

def process_img(screen):
processed_img = cv2.cvtColor(screen, cv2.COLOR_BGR2GRAY)
processed_img = cv2.Canny(processed_img, threshold1=200, threshold2=300)
return processed_img

while(True):
screen = np.array(ImageGrab.grab(bbox=(0,0, 871, 200)))
screen2 = process_img

cv2.imshow('window', screen2)
cv2.imshow('window2', cv2.cvtColor(screen, cv2.COLOR_BGR2RGB))
if cv2.waitKey(25) & 0xFF == ord('q'):
    cv2.destroyAllWindows()
    break

Welcome to the forums.

Is this all of the code? What is the error message that you receive?