You can convert an image from RGB to CMYK using OpenCV Python by following the given steps. I highly recommend you get the “Computer Vision: Models, Learning, and Inference Book” to learn Computer Vision.
Import the OpenCV and NumPy library. If OpenCV is not installed in your system then first install it using This Method.
import cv2 import numpy as np #cv2 is used for OpenCV library
Now read the image from the location. In my case “F:\\AiHints” is the location and “apple.jpg” is the name of the image. Change it according to your image location and name.
image = cv2.imread("C://AiHints//apple.jpg") #imread is use to read an image from a location
Now convert the RGB image into CMYK using NumPy Library.
img = image.astype(np.float64)/255. K = 1 - np.max(img, axis=2) C = (1-img[...,2] - K)/(1-K) M = (1-img[...,1] - K)/(1-K) Y = (1-img[...,0] - K)/(1-K) CMYK_image= (np.dstack((C,M,Y,K)) * 255).astype(np.uint8)
Now display the original, and CMYK image using the following code.
cv2.imshow("Original Image", image) cv2.imshow("CMYK Image", CMYK_image)
waitKey() open the image for a specific time in milliseconds until you press any key. The function cv2.destroyAllWindows() will destroy all the windows that we created.