Python-OpenCV之操作像素进行反色(反相)处理

反色概念:

PS里也称反相。就是将像素点的颜色变成与原先相反的颜色,这里的“相反”指的是用色彩值的最高值255减去原先的色彩值。

知识点:

  1. src.shape()返回图片大小
  2. cv.getTickCount()返回系统启动到当前的计时周期数
  3. cv.getTickFrequency()返回每秒的计时周期数

示例代码

import cv2 as cv


def access_pixels(image):
    height, width, channels = image.shape
    print("width:%s,height:%s,channels:%s" % (width, height, channels))

    for row in range(height):
        for list in range(width):
            for c in range(channels):
                pv = image[row, list, c]
                image[row, list, c] = 255 - pv
    cv.imshow("AfterDeal", image)


src = cv.imread('test.jpg')
cv.imshow('OriginalImage', src)

# 获取当前系统以运行的周期数
t1 = cv.getTickCount()
# 运行函数
access_pixels(src)
# 再次获取当前系统以运行的周期数
t2 = cv.getTickCount()
# 计时周期数差值除以每秒周期数,获得处理时间
print("time cost:%s s" % ((t2 - t1) / cv.getTickFrequency()))
cv.waitKey()

效果

Python-OpenCV之操作像素进行反色(反相)处理_第1张图片 原图片
Python-OpenCV之操作像素进行反色(反相)处理_第2张图片 处理后

 

你可能感兴趣的:(openCV,python)