首页 > 编程 > Python > 正文

OpenCV图像颜色反转算法详解

2019-11-25 12:53:58
字体:
来源:转载
供稿:网友

前言

图像颜色的反转,比较简单的思路就是使用255减去当前值,从而得到反转后的图像.原始图片:

1.灰度图像的颜色反转

import cv2import numpy as np# 灰度 0-255 255-当前灰度值img = cv2.imread('image0.jpg', 1)imgInfo = img.shapeheight = imgInfo[0]width = imgInfo[1]gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)dst = np.zeros((height, width, 1), np.uint8)for i in range(height):  for j in range(width):    grayPixel = 255 - gray[i, j]    dst[i, j] = grayPixelcv2.imshow('image', dst)cv2.waitKey(0)

用255减去当前灰度值,得到反转后的图像.图像如下:

2.BGR图像的反转

import cv2import numpy as npimg = cv2.imread('image0.jpg', 1)imgInfo = img.shapeheight = imgInfo[0]width = imgInfo[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]    b = 255 - b    g = 255 - g    r = 255 - r    dst[i, j] = (b, g, r)cv2.imshow('image', dst)cv2.waitKey(0)

BGR图像反转也是一样,同样是使用255减去每一个通道的当前值.效果如下:


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持武林网。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表