1-10 图像增强对比度 opencv树莓派4B 入门系列笔记

news/2024/9/17 7:38:24/ 标签: opencv, 笔记, 人工智能, linux, 计算机视觉

目录

一、提前准备

二、代码详解

enhanced_image = cv2.convertScaleAbs(image, alpha=1.5, beta=0)

三、运行现象 

四、完整工程贴出


一、提前准备

        1、树莓派4B 及 64位系统

        2、提前安装opencv库 以及 numpy库

        3、保存一张图片

二、代码详解

import cv2
# 增强图像的对比度 
# 打开图像
image = cv2.imread('/home/raspberry4B/Pictures/MD.jpg')# 增强对比度
enhanced_image = cv2.convertScaleAbs(image, alpha=1.5, beta=0)# 显示增强后的图像
cv2.imshow('Enhanced Image', enhanced_image)
cv2.imshow('Image', image)
cv2.waitKey(0)
cv2.destroyAllWindows()

enhanced_image = cv2.convertScaleAbs(image, alpha=1.5, beta=0)

  • 功能: 通过调整像素值来增强图像的对比度。

  • 方法: cv2.convertScaleAbs 函数对图像进行线性变换和饱和度(saturation)处理。每个像素的变换公式为:

    new_pixel=alpha×original_pixel+beta\text{new\_pixel} = \text{alpha} \times \text{original\_pixel} + \text{beta}new_pixel=alpha×original_pixel+beta

    其中,alpha控制对比度,beta控制亮度。

  • 参数:

    • image: 输入的图像。
    • alpha=1.5: 对比度增益。值大于1会增加对比度,值小于1会降低对比度。
    • beta=0: 亮度偏移。增加此值会使图像整体变亮,减小此值会使图像整体变暗。

三、运行现象 

 

四、完整工程贴出

(持续更新中)opencv树莓派4B入门系列笔记6~10完整工程源码资源-CSDN文库

持续更新中……


http://www.ppmy.cn/news/1522665.html

相关文章

【Arm Cortex-X925】 -【第五章】-电源管理

5. 电源管理 Cortex-X925 核心提供了控制动态和静态功耗的机制。 动态功耗管理包括以下特性: 层次时钟门控每核心的动态电压和频率调整 (DVFS)静态功耗管理包括以下特性: 关机模式动态保持,一种低功耗模式,能够保留寄存器和 RAM 状态5.1 电压和功率域 DynamIQ™ Shared …

代码随想录Day 32|leetcode题目:501.斐波那契数、70.爬楼梯、746.使用最小花费爬楼梯

提示:DDU,供自己复习使用。欢迎大家前来讨论~ 文章目录 动态规划理论基础一、理论基础1.1 什么是动态规划1.2 动态规划的解题步骤1.3 动态规划应该如何debug 二、题目题目一: 509. 斐波那契数解题思路:动态规划递归解法 题目二&a…

【OpenWrt(3)】内网搭建iperf3测速服务器

下载的iperf3 网站:https://iperf.fr/iperf-download.php Window地址:https://github.com/ar51an/iperf3-win-builds 安卓:https://gitee.com/hiyanyx/magic-i-perf 文章目录 下载的iperf3Windows 服务器启动安卓客户端启动参考 Windows 服务…

363_C++_配合360_负责读取和处理录像数据RecordReader类

其中的变量们: 读取器未启用 (!m_bEnReader) 已经有一个读取操作正在进行 (m_bPending) 读取器还未启动 (!m_bStarted) lastRealBytes:计算这帧数据实际需要的总字节数(包括未处理的部分和对齐的填充字节) mLastOffset:表示上次处理数据时的偏移位置 lastRemain 计算出…

电路基础笔记 --- 第一章

关于电路吸收及发出功率的判断: 其实关于这个问题根据实际电流和电压更好判断,我们根据参考电压及参考电流再结合各自数值画出对于元件来说的实际电流方向和电位高低,在实际电流方向通过元件时如果电位变高则代表元件在产生功率,…

【Linux】进程控制(一)

1. 进程创建 (一)认识fork函数 从已存在进程中创建一个新进程(新进程为子进程,而原进程为父进程) 进程调用fork,当控制转移到内核中的fork代码后,内核做: 分配新的内存块和内核数…

如何恢复回收站中已删除/清空的文件

回收站清空后如何恢复已删除的文件?是否可以恢复永久删除的文件?或者最糟糕的是,如果文件直接被删除怎么办?本文将向您展示清空回收站后恢复已删除数据的最佳方法。 回收站清空后如何恢复已删除的文件? “回收站清空后…

将AI与情境定位结合以确保品牌安全

你可能会看到一些广告,感觉它们跟你在线阅读或观看的内容有奇怪的关联。这就是上下文广告在起作用。这种基于广告的解决方案在不断变化的数字环境中逐步发展,已经成为每个广告主的必备工具。不过,这种广告不只是把广告和上下文进行匹配这么简…

学习记录:js算法(二十八):删除排序链表中的重复元素、删除排序链表中的重复元素II

文章目录 删除排序链表中的重复元素我的思路解法一:循环解法二:递归 网上思路 删除排序链表中的重复元素 II我的思路网上思路 总结 删除排序链表中的重复元素 给定一个已排序的链表的头 head , 删除所有重复的元素,使每个元素只出…

在js渲染的dom中的事件中传递对象

在某些情况下&#xff0c;可能需要将整个对象或部分对象嵌入到 HTML 元素的属性中&#xff0c;可以将对象数据序列化为 JSON 字符串&#xff0c;存储在 data-* 自定义属性中。这样可以在事件中取出并解析对象数据&#xff1a; <!DOCTYPE html> <html lang"en&qu…

Docker | Win10 安装

环境准备 1. 开启 WSL 环境配置 Docker 在 Windows 中&#xff0c;可以依赖于两种环境&#xff0c;分别是&#xff1a;Hyper-V、WSL。 Hyper-V&#xff1a;是一个虚拟环境&#xff0c;也就是虚拟机。WSL&#xff1a;是 Windows 的 Linux 子系统(系统要求不低于 Window10 的 …

八,SpringBoot Web 开发访问静态资源(附+详细源码剖析)

八&#xff0c;SpringBoot Web 开发访问静态资源(附详细源码剖析) 文章目录 八&#xff0c;SpringBoot Web 开发访问静态资源(附详细源码剖析)1. 基本介绍2. 快速入门2.1 准备工作 3. 改变静态资源访问前缀&#xff0c;定义为我们自己想要的4. 改变Spring Boot当中的默认的静态…

为何iPhone 16系列的发布对苹果至关重要?

即将发布的iPhone 16系列对苹果来说将是至关重要的时刻&#xff0c;特别是在快速发展的AI智能手机市场背景下。随着Android制造商在集成先进AI功能方面领先一步&#xff0c;苹果正处于一个关键的转折点——赶上竞争对手不仅仅是选择&#xff0c;而是必须完成的任务。 AI竞赛&am…

【深度学习详解】Task3 实践方法论-分类任务实践 Datawhale X 李宏毅苹果书 AI夏令营

前言 综合之前的学习内容&#xff0c; 本篇将探究机器学习实践方法论 出现的问题及其原因 &#x1f34e; &#x1f34e; &#x1f34e; 系列文章导航 【深度学习详解】Task1 机器学习基础-线性模型 Datawhale X 李宏毅苹果书 AI夏令营 【深度学习详解】Task2 分段线性模型-引入…

正则表达式--python

正则表达式 1、简介 概述 正确的, 符合特定规则的 字符串. 英文名叫: Regular Expression, 简称叫: re, RegExp 作用 主要是校验数据 细节 学正则, 主要是学正则的规则. 即: 哪个符号表示什么含义. 关于正则, 要求很简单, 只要能用规则, 看懂别人写的式子, 且能简单修改即可,…

springboot、flowable 生成图片发布到Docker乱码问题

flowable自带的方法生成图片时&#xff0c;如设置字体为宋体&#xff0c;则本地测试没有问题&#xff0c;因为windows自带宋体字体库&#xff0c;但是如果发布到Docker&#xff0c;则会出现乱码问题&#xff0c;因为大部分Docker并不包含宋体字体库&#xff1b; 通过Java代码&a…

VitePress 路由重写:自定义目录结构与页面生成

在使用VitePress构建文档网站时&#xff0c;你可能会遇到项目结构复杂的情况&#xff0c;特别是当你的项目是一个包含多个包的monorepo时。为了更好地组织和管理文档&#xff0c;你可能希望将文档文件放置在源代码旁边。然而&#xff0c;VitePress默认会按照特定的目录结构生成…

springboot+mybatis+vue2分页功能开发

前端框架代码 <div class"block"><span class"demonstration">完整功能</span><el-paginationsize-change"handleSizeChange"current-change"handleCurrentChange":current-page"currentPage4":page-s…

Linux多线程——日志任务的线程池实现

文章目录 线程池日志系统完善线程池的实现线程数据线程池的实现完整代码 线程池 线程池可以说是把之前所有的内容全部串联起来的一个项目 我们这里实现一个简单的版本&#xff0c;可以对其进行扩展 线程池也是一种生产者消费者模型 生产者布置任务而消费者处理任务 主要运…

Android 存储之 SharedPreferences 编码模板(工具类编码)

一、SharedPreferences 1、基本介绍 SharedPreferences 是 Android 的一个轻量级存储工具&#xff0c;它采用 key - value 的键值对方式进行存储 它允许保存和读取应用中的基本数据类型&#xff0c;例如&#xff0c;String、int、float、boolean 等 保存共享参数键值对信息的…