计算机视觉:图片的灰度处理和颜色反转(代码片段)

il_持之以恒_li il_持之以恒_li     2023-02-16     642

关键词:

1.灰度处理

1.1 方法1

还记得我的这篇博客的这个注释吗?

也就是方法cv2.imread(),里面有两个参数,第一个参数为图片的路径,第二个参数为是否为彩色图片,如果把第二个参数改为0,会怎么样呢?

import cv2

# 方法1
img = cv2.imread(filename='../anqila21.jpg',flags=0)
cv2.imshow('demo',img)
cv2.waitKey(0)

1.2 方法2

import cv2

# 方法2
img = cv2.imread(filename='../anqila21.jpg',flags=1)
dst = cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)
cv2.imshow('demo',dst)
cv2.waitKey(0)

运行结果和上述一样

1.3 方法3 使用算法实现

import cv2
import numpy as np

# 算法实现
img = cv2.imread(filename='../anqila21.jpg',flags=1)
imgInfo = img.shape
height = 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]
        # gray = (int(b)+int(g)+int(r))/3 # 灰度值
        # dst[i,j] = np.uint8(gray)

        gray = 0.299*int(r)+0.587*int(g)+0.114*int(b) # 灰度值
        dst[i,j] = np.uint8(gray)
cv2.imshow('demo',dst)
cv2.waitKey(0)

2. 图片的颜色反转

2.1 灰度图片的颜色反转

import cv2
import numpy as np

img = cv2.imread(filename='../anqila21.jpg',flags=0)
imgInfo = img.shape
height = imgInfo[0]
width = imgInfo[1]
dst = np.zeros((height,width),np.uint8)
for i in range(height):
    for j in range(width):
        gray = img[i,j]
        dst[i,j] = 255-gray

cv2.imshow('dst',dst)
cv2.waitKey(0)

2.2 彩色图片的颜色反转

import cv2
import numpy as np


img = cv2.imread(filename='../anqila21.jpg',flags=1)
imgInfo = img.shape
height = 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]
        dst[i,j] = (255-b,255-g,255-r)

cv2.imshow('dst',dst)
cv2.waitKey(0)

计算机视觉之图像特效(实现图像灰度处理等功能)(待更新。。。)(代码片段)

1.图像灰度处理下面介绍四种图像灰度处理的方法:方法1:cv2中的imread(参数:0表示为灰度图片,1表示为彩色图片)测试代码如下:1importcv22#方法1imread3img0=cv2.imread(‘image0.jpg‘,0)#0为灰度图片1为彩色图片4img1=cv2.imread(‘image0.jpg... 查看详情

计算机视觉:图片的边缘检测映射和油画效果(代码片段)

1.图片的边缘检测1.1调用cv2api方法importcv2img=cv2.imread(filename='../anqila21.jpg',flags=1)imgInfo=img.shapeheight=imgInfo[0]width=imgInfo[1]gray=cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)#灰度处理imgG=cv2.GaussianBlur(gray,(3,3),0)#高斯滤波ÿ... 查看详情

计算机视觉:图片的边缘检测映射和油画效果(代码片段)

1.图片的边缘检测1.1调用cv2api方法importcv2img=cv2.imread(filename='../anqila21.jpg',flags=1)imgInfo=img.shapeheight=imgInfo[0]width=imgInfo[1]gray=cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)#灰度处理imgG=cv2.GaussianBlur(gray,(3,3),0)#高斯滤波ÿ... 查看详情

灰度图像反转和彩色图像反转(代码片段)

  前面的博客中我们分别用两种方法实现了彩色图像转灰度的算法,本篇博客则整理一下灰度图像反转和彩色图像反转的实现。一、反转像介绍  "用摄影设备制成的人或物的形象,也包括光线经反射、折射而形成的与原物... 查看详情

计算机视觉图像预处理

RGB颜色空间加法混色空间越叠加越白一个像素的颜色值(b,g,r)范围:【0,255】【0,1】CMYK颜色空间减法混色越叠加越黑4个维度来构成HSV颜色空间色调,饱和度,明度可以和RGB相互转换CIE-XYZ颜色空间人眼睛对颜色的容忍度灰度化... 查看详情

计算机图像视频处理(代码片段)

计算机图像视频处理计算机视觉概论计算机视觉概念计算机图像处理,也即数字图像处理(DigitalImageProcessing),是指将图像信号转换成数字信号并利用计算机对其进行处理的过程,是通过计算机对图像进行去除噪声、增... 查看详情

计算机视觉小项目—基于rgb颜色特征的火焰识别(代码片段)

提出问题随着计算机视觉及图像处理技术的发展,基于计算机视觉的火焰检测技术逐渐取代了传统的火灾检测。由于火焰最显著静态特质是其颜色,火焰识别算法主要利用视频图像中颜色与亮度的相关信息,所以对火... 查看详情

图像处理基础知识(代码片段)

图像处理基础自己学习整理的图像处理知识视觉基本概念和直方图基本概念文章目录图像处理基础基本概念视觉人类视觉概念人类视觉的特性机器视觉概念图像的感知直方图直方图的定义直方图的性质直方图的应用基本概念视觉... 查看详情

图片灰度化

概念灰度化处理就是将一幅彩色图像转化为灰度图像的过程。彩色图像分为R,G,B三个分量,分别显示出红绿蓝等各种颜色,灰度化就是使彩色图像的R,G,B分量相等的过程。灰度值大的像素点比较亮(像素颜色值最大为255,为... 查看详情

图像处理系统的分析工具

...理和彩色图像处理。在图像处理技术发展的早期,由于受计算机处理能力的限制,图像处理技术领域的研究主要集中在灰度图像处理技术。随着计算机处理能力的飞速发展,彩色图像处理技术越来越受到关注。彩色图像处理相比... 查看详情

快速学完opencv+python计算机视觉图像处理(代码片段)

返回主目录4图像基本特效4-1图像特效介绍图像特效分为以下几个,分别是:灰度处理底板效果马赛克毛玻璃效果图像融合图片蓝色边缘检测浮雕效果4-2图像灰度处理1灰度处理常用方法:方法1,直接使用imread里面... 查看详情

计算机视觉数字图像与机器视觉基础(代码片段)

...连续的。用数码相机拍摄的照片、扫描仪扫描的图片以及计算机截屏图等都属于位图。位图的特点是可以表现色彩的变化和颜色的细微过渡,产生逼真的效果,缺点是在保存时需要记录每一个像素的位置和颜色值,占... 查看详情

计算机视觉处理5阈值处理(代码片段)

【计算机视觉处理5】阈值处理1、阈值处理阈值处理就是设定某个阈值,然后对大于阈值的像素或者小于阈值的像素统一处理的过程。比如下面这个简单的图像:每个格子表示一个像素,格子中的数字表示图片的像素... 查看详情

基于opencv与java两个语言版本实现获取某一图片特定区域的颜色对比度(代码片段)

...对比度是指图像中不同颜色区域之间的明显差异程度。在计算机视觉和图像处理中,颜色对比度通常用于描述彩色图像中不同区域之间的 查看详情

opencv计算机视觉——图像的阈值处理与自适应阈值otsu(代码片段)

阈值处理是指剔除图像内像素高于阈值或者低于阈值的像素点。图像的阈值处理主要是设置一个阈值:大于这个数赋予一个值,小于一个数赋予另一个值,将图片的像素值变成两个灰度值数中间的一个,实现图像... 查看详情

python图像处理-用pil库提取图片中的颜色并展示为色谱实例演示,rgb颜色排序方法(代码片段)

提取图片中的RGB颜色,通过Luminosity算法计算灰度值,按计算好后的灰度值进行排序并展示。#-*-coding:utf-8-*-fromPILimportImagefromfunctoolsimportcmp_to_keypic_path="./pic/a001.png"img=Image.open(pic_path)img 查看详情

和chatgpt对话帮助新手批量提取图片文字信息到文件(代码片段)

...别图片上的日期、学号和完成字样的算法这个问题涉及到计算机视觉领域的复杂算法和技术,需要使用多个步骤和技术来实现。以下是一个基本的算法流程:图像预处理:首先需要将图像进行预处理,例如将其转换为灰度图像、... 查看详情

计算机视觉中的深度学习2:图片分类(代码片段)

计算机视觉中的深度学习2:图片分类Slides:百度云提取码:gs3n计算机与人眼的区别对于一张灰度图片,计算机能看到的是像素大小的0~255的灰度值;对于RGB图片,则是一张像素大小的3通道矩阵,即800x600x3。计算... 查看详情