I have a large image , using cv2 module in python and some coordinates i cropped the image:
img = cv.imread(image_path)
crop_img = img[y1:y2,x1:x2]
cv.imwrite(cropPath, crop_img)
now the crop_img is a numpy.ndarray type. then I save this image to disk and read its contents in a binary format using an open() function
with open(cropPath, 'rb') as image_file:
content = image_file.read()
and I get the binary representation. Is there any way to do the above operations without saving the image to disk. Not saving to disk will save a lot of time, I am not able to find any method to do this. if anyone could point in the right direction, that would be helpful.

binary, do you mean binary string or numbers or something else?