当前位置: 首页 > wzjs >正文

网站上线的步骤做网站 seo

网站上线的步骤,做网站 seo,青岛seo推广专员,如何设置网站关键字目录 1. 什么是图像亮度调整? 2. 使用 cv2.addWeighted() 调整亮度 代码示例 参数解释 效果 3. 直接修改像素值调整亮度 代码示例 参数解释 效果 4. 使用滑动条动态调整亮度 代码示例 效果 5. 总结 在图像处理中,亮度调整是一个非常常见的操…

目录

1. 什么是图像亮度调整?

2. 使用 cv2.addWeighted() 调整亮度

代码示例

参数解释

效果

3. 直接修改像素值调整亮度

代码示例

参数解释

效果

4. 使用滑动条动态调整亮度

代码示例

效果

5. 总结


在图像处理中,亮度调整是一个非常常见的操作。无论是为了让图像看起来更清晰,还是为了适应不同的显示设备,调整图像的亮度都是非常有用的。今天,我们就来聊聊如何使用Python和OpenCV库来调整图像的亮度。

1. 什么是图像亮度调整?

图像亮度调整,顾名思义,就是改变图像中像素的明暗程度。简单来说,就是让图像整体看起来更亮或更暗。

  • 亮度增加:图像中的每个像素值都会增加一个固定值,让图像看起来更亮。

  • 亮度降低:图像中的每个像素值都会减少一个固定值,让图像看起来更暗。

2. 使用 cv2.addWeighted() 调整亮度

OpenCV 提供了一个非常方便的函数 cv2.addWeighted(),可以用来调整图像的亮度。这个函数的核心思想是通过加权平均的方式,对图像的像素值进行调整。

代码示例

import cv2
import numpy as np# 加载图像
img = cv2.imread('./1.jpg')# 设置亮度增益,例如设置为1.5倍亮度
alpha = 1.5# 提升图像亮度
brightened_img = cv2.addWeighted(img, alpha, np.zeros_like(img), 0, 0)# 显示和/或保存处理后的图像
cv2.imshow('Brightened Image', brightened_img)
cv2.waitKey(0)
cv2.destroyAllWindows()

参数解释

  • src1:第一张输入图像,这里就是我们要调整亮度的图像。

  • alpha:第一个输入图像的权重,用来控制亮度的增益。

  • src2:第二张输入图像,这里我们用 np.zeros_like(img) 来表示一个全黑的图像。

  • beta:第二个输入图像的权重,这里设置为0,因为我们不需要用到第二张图像。

  • gamma:一个标量,这里设置为0,因为我们只通过 alpha 来调整亮度。

效果

通过调整 alpha 的值,我们可以很容易地改变图像的亮度。如果 alpha 大于1,图像会变亮;如果 alpha 小于1,图像会变暗。

3. 直接修改像素值调整亮度

除了使用 cv2.addWeighted(),我们还可以直接对图像的像素值进行操作,来调整亮度。

代码示例

import cv2
import numpy as np# 读取图片
image_np = cv2.imread("./1.jpg")# 亮度变换是对图像的每个通道的每个像素进行统一的加某个值
# np.clip是一个截取函数,用于截取数组中小于或者大于某值的部分,并使得被截取部分等于固定值。
# np.uint8是将值转换为0-255的整数
brightness_conversion_img = np.uint8(np.clip(image_np + 50, 0, 255))# 显示原始图像和调整亮度后的图像
cv2.imshow("Original Image", image_np)
cv2.imshow("Brightness Adjusted Image", brightness_conversion_img)
cv2.waitKey(0)
cv2.destroyAllWindows()

参数解释

  • image_np + 50:这里我们将每个像素值增加50,让图像变亮。如果想让图像变暗,可以减去一个值。

  • np.clip(image_np + 50, 0, 255):这个函数的作用是防止像素值超出0到255的范围。如果像素值超过255,会被截断为255;如果小于0,会被截断为0。

  • np.uint8:将像素值转换为0到255的整数,确保图像可以正常显示。

效果

通过直接修改像素值,我们可以非常灵活地调整图像的亮度。这种方法的优点是简单直观,缺点是可能会导致像素值溢出,需要使用 np.clip 来进行限制。

4. 使用滑动条动态调整亮度

为了让调整亮度的过程更加直观,我们可以使用OpenCV的滑动条功能,动态调整亮度。

代码示例

import cv2
import numpy as npwindow_name = 'Trackbar Demo'
cv2.namedWindow(window_name)def on_trackbar_change(x):x = x / 255 * (255 - (-255)) - 255# 读取图片路径path = "./1.jpg"# 读取图片image_np = cv2.imread(path)# 亮度变换是对图像的每个通道的每个像素进行统一的加某个值brightness_conversion_img = np.uint8(np.clip(image_np + x, 0, 255))cv2.imshow("brightness_conversion_image", brightness_conversion_img)cv2.imshow("image_np", image_np)print(x)# 创建滑动条并设置参数
trackbar_name = 'Threshold'
max_value = 255
initial_value = 100
on_trackbar_change(initial_value)
cv2.createTrackbar(trackbar_name, window_name, initial_value, max_value, on_trackbar_change)
cv2.waitKey(0)

效果

通过滑动条,我们可以实时调整图像的亮度,观察不同亮度值下的图像效果。

5. 总结

通过这篇文章,我们学习了两种调整图像亮度的方法:

  1. 使用 cv2.addWeighted() 函数,通过加权平均的方式调整亮度。

  • 优点

    • 实现简单,代码简洁。

    • 可以通过调整权重参数灵活控制亮度变化。

    • 不容易出现像素值溢出的问题,因为权重和偏移量的计算方式较为安全。

  • 缺点

    • 需要额外的计算开销,因为涉及加权平均操作。

    • 对于复杂的亮度调整需求,灵活性稍差。

  1. 直接对像素值进行操作,通过加减一个固定值来调整亮度。

  • 优点

    • 直观且易于理解,直接对像素值进行加减操作。

    • 可以通过 np.clip 函数轻松限制像素值范围,避免溢出。

    • 在某些情况下可能更高效,尤其是当需要对像素值进行复杂操作时。

  • 缺点

    • 如果不使用 np.clip,很容易导致像素值溢出,从而出现图像失真。

    • 对于大规模图像处理,直接操作像素值可能会导致性能问题。

这两种方法各有优缺点,可以根据具体需求选择合适的方法。


文章转载自:

http://MEGz7ufF.npqps.cn
http://3ldjO3Ii.npqps.cn
http://ljm72sY5.npqps.cn
http://2n0mticT.npqps.cn
http://D3aUfKpK.npqps.cn
http://DbSnql6C.npqps.cn
http://iqKsDTZr.npqps.cn
http://lrM5BJlc.npqps.cn
http://9sTOuOvu.npqps.cn
http://4Btf5mOY.npqps.cn
http://rUM1RKPW.npqps.cn
http://5pSHkcJX.npqps.cn
http://BAT1hlPu.npqps.cn
http://biua4cEP.npqps.cn
http://wCZeRYpT.npqps.cn
http://Apk3UO5i.npqps.cn
http://csrqXZMD.npqps.cn
http://JqWVlBfh.npqps.cn
http://yxuL78Tk.npqps.cn
http://sLjgfY6b.npqps.cn
http://UbhTGKiL.npqps.cn
http://ZcffVjCa.npqps.cn
http://KBkxBI9h.npqps.cn
http://0AHYe1mu.npqps.cn
http://Ca4ABfgQ.npqps.cn
http://3X7YqV8T.npqps.cn
http://mjrF6ZjU.npqps.cn
http://Le3xwX3r.npqps.cn
http://m8U0l0Cd.npqps.cn
http://fQsLShHP.npqps.cn
http://www.dtcms.com/wzjs/667355.html

相关文章:

  • 地产网站开发公司好看ppt模板免费下载
  • 织梦做的网站首页幻灯片怎么不能显示wordpress主题标签
  • wordpress站外链接做网站的服务器用什么 系统好
  • 网站后台更新 前台不显示增城高端网站建设
  • 网站建设在哪里找网站建设做什么
  • 网站备案个人承诺书wordpress 必备
  • ui设计在哪个网站可以接做网站描本链接怎么做
  • 莱芜租房网站郑州做网站价格
  • 网站程序语言网站平台建设的当前问题
  • 怎样建设网站官网管理系统项目
  • 自己做企业网站服务器做wish选品参考什么网站
  • 企业网站设计话术济南58同城网
  • 电子商务网站建设和管理的意义系统开发策略主要有
  • 做网站首页cdr自我介绍网页制作模板
  • 用vs2013做网站网页实训心得体会
  • 网站缩放代码建设公司起名大全字库
  • 网站建设流程是这样的 里面有很无锡整站百度快照优化
  • 网站设计好不好国外公司查询网站
  • 邳州徐州网站开发淘宝网站建设教程视频教程
  • 甘肃省住房城乡建设厅网站c asp.net网站开发书
  • 网站开发是什么职业seo网站项目讲解
  • 刚做的网站怎么才能搜索到wordpress换空间
  • 在360网站做公告怎么弄设计上海2021门票
  • 品牌网站建设价位苏州品牌网站制作公司
  • 制作网站的最新软件是什么php企业网站源码蓝色
  • 网站开发架构图网站建设 域名注册
  • 平顶山哪里有做网站的公司seo排名优化排行
  • 企业网站营销策划微信网站可以免费做么
  • 网站建设推广怎么做免费的背景视频素材
  • 电商网站开发代码素材最多的网站