OpenCV+python3 入门之图像颜色反转
**
OpenCV入门之图像颜色反转
**
图像颜色反转分为两种:一种是灰度图片的颜色反转,另一种是彩色图像的颜色反转.
原图片:

一、灰度图像颜色反转
灰度图像每个像素点只有一个像素值来表示,色彩范围在0-255之间,反转方法255-当前像素值,具体代码如下:
import cv2
import numpy as npimg = cv2.imread('image0.jpg', 1)
cv2.imshow('img', img)
height, width, deep = img.shape
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) # 将图片转换成灰度图片
dst = np.zeros((height,width,1), np.uint8)
for i in range(0, height):for j in range(0, width):grayPixel = gray[i, j]dst[i, j] = 255-grayPixel
cv2.imshow('dst', dst)
cv2.waitKey(0)
灰度图片的颜色反转效果如下:

二、彩色图像颜色反转
彩色图像的每个像素点由RGB三个元素组成,所以反转的时候需要用255分别减去b,g,r三个值,具体代码如下:
import cv2
import numpy as npimg = cv2.imread('image0.jpg', 1)
cv2.imshow('img', img)
height, width, deep = img.shape
# 彩色图像颜色反转 NewR = 255-R
dst1 = np.zeros((height, width, deep), np.uint8)
for i in range(0, height):for j in range(0,width):(b, g, r) = img[i, j]dst1[i, j] = (255-b,255-g,255-r)
cv2.imshow("dst1", dst1)
cv2.waitKey(0)
彩色图像颜色反转后效果如下:

本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
