opencv教程CV2模块——图片处理,HSV、色调、亮度调节

11 篇文章 1 订阅
该篇博客介绍了如何利用OpenCV库在Python中将图像从BGR转换到HSV颜色空间,并通过调整HSV参数实现图像色彩的变化。作者通过改变色调、饱和度和明度展示了如何将图像中的黄色变为绿色、降低图像饱和度使其变灰以及调整图像明度以忽略光线影响。
摘要由CSDN通过智能技术生成

参考:https://baike.baidu.com/item/HSV/547122?fr=aladdin 百度百科
参考:https://www.cnblogs.com/helenlee01/p/12707290.html

HSV(Hue, Saturation, Value)是根据颜色的直观特性由A. R. Smith在1978年创建的一种颜色空间, 也称六角锥体模型(Hexcone Model)。
这个模型中颜色的参数分别是:色调(H),饱和度(S),明度(V)。

import cv2

img=cv2.imread('test3.png', cv2.IMREAD_COLOR)    # 打开文件

# 通过cv2.cvtColor把图像从BGR转换到HSV
img_hsv = cv2.cvtColor(img, cv2.COLOR_BGR2HSV)

# H空间中,绿色比黄色的值高一点,所以给每个像素+15,黄色的树叶就会变绿
turn_green_hsv = img_hsv.copy()
turn_green_hsv[:, :, 0] = (turn_green_hsv[:, :, 0]+15) % 180
turn_green_img = cv2.cvtColor(turn_green_hsv, cv2.COLOR_HSV2BGR)
cv2.imshow('image',turn_green_img)
#cv2.imwrite('./out/turn_green.jpg', turn_green_img)
cv2.waitKey(0)
# 减小饱和度会让图像损失鲜艳,变得更灰
colorless_hsv = img_hsv.copy()
colorless_hsv[:, :, 1] = 0.5 * colorless_hsv[:, :, 1]
colorless_img = cv2.cvtColor(colorless_hsv, cv2.COLOR_HSV2BGR)
cv2.imshow('image',colorless_img)
cv2.waitKey(0)
#cv2.imwrite('./out/colorless.jpg', colorless_img)

# 调整明度全为最大,相当于只在意颜色种类,与光线无关了
darker_hsv = img_hsv.copy()
darker_hsv[:, :, 2] =255 #0.5 * darker_hsv[:, :, 2]
darker_img = cv2.cvtColor(darker_hsv, cv2.COLOR_HSV2BGR)
cv2.imshow('image',darker_img)
cv2.waitKey(0)
#cv2.imwrite('./out/darker.jpg', darker_img)

下图为亮度全部调为最大的效果
在这里插入图片描述

  • 2
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值