Color inversion of opencv image effects

Grayscale image for color inversion

The essence is to replace the pixel value of the corresponding point with [255-original pixel value]

import cv2
import numpy as np
img = cv2.imread("E:\\code\\conputer_visual\\data\\0.jpg", 0)
img_info = img.shape
height = img_info[0]
width = img_info[1]
dst = np.zeros((height, width), np.uint8)
for i in range(height):
    for j in range(width):
        gray_pixel = img[i,j]
        dst[i,j] = 255 - gray_pixel
cv2.imshow("img", img)
cv2.imshow("dst", dst)
cv2.waitKey()

Insert picture description here

Color image color inversion

import cv2
import numpy as np
img = cv2.imread("E:\\code\\conputer_visual\\data\\0.jpg", 1)
img_info = img.shape
height = img_info[0]
width = img_info[1]
dst = np.zeros((height, width,3), np.uint8)
for i in range(height):
    for j in range(width):
        (b,g,r) = img[i,j]
        dst[i,j] = (255-b, 255-g, 255-r)
cv2.imshow("img", img)
cv2.imshow("dst", dst)
cv2.waitKey()

Insert picture description here

Guess you like

Origin blog.csdn.net/cyj5201314/article/details/113661982