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

python -opencv 图像锐化

python -opencv 图像锐化

图像锐化其实,是一种增强图片对比度的技术,我们可以通过计算图像的导数,把导数绝对值数值大于零的数值加回原图像,通过这种方法,可以增强图像的对比度。
实现代码如下:

import copy
import math
import matplotlib.pyplot as plt
import matplotlib as mpl
import numpy as np
import osimport cv2plt.rcParams['font.family'] = 'Microsoft YaHei'def cv_show(name,img):cv2.imshow(name,img)#cv2.waitKey(0),接收0,表示窗口暂停cv2.waitKey(0)#销毁所有窗口cv2.destroyAllWindows()path=r'D:\learn\photo\cv\muxing.jpg'img=cv2.imread(path,0)row,col=img.shape
gra=np.zeros((row,col))
img=img.astype('float')
gra=gra.astype('float')
for x in range(row-1):for y in range(col-1):gx=abs(img[x+1,y]-img[x,y])gy=abs(img[x,y+1]-img[x,y])gra[x,y]=gx+gysharp=img+gra
sharp=np.where(sharp>255,255,sharp)
sharp=np.where(sharp<0,0,sharp)
gra=gra.astype('uint8')
sharp=sharp.astype('uint8')
#cv_show('img',img)
#cv_show('sharp',sharp)plt.subplot(121)
plt.imshow(img,'gray')
plt.title('原图')plt.subplot(122)
plt.imshow(sharp,'gray')
plt.title('锐化图')
#plt.subplot(223)
#plt.imshow(img_s)
#plt.title('平移')
#plt.subplot(224)
#plt.imshow(img_r)
#plt.title('旋转')
plt.show()
os.system("pause")

运行结果如下:
在这里插入图片描述

相关文章:

python -opencv 图像锐化

python -opencv 图像锐化 图像锐化其实&#xff0c;是一种增强图片对比度的技术&#xff0c;我们可以通过计算图像的导数&#xff0c;把导数绝对值数值大于零的数值加回原图像&#xff0c;通过这种方法&#xff0c;可以增强图像的对比度。 实现代码如下&#xff1a; import c…...

数字电源为什么一般用DSP控制,而不能用普通的单片机?

数字电源为什么一般用DSP控制&#xff0c;而不能用普通的单片机&#xff1f; 首先你要清楚&#xff0c;数字电源需要一个芯片具备什么功能&#xff1f; 1 能发PWM波 &#xff0c;并且具备保护关断功能&#xff1b; 电源对PWM发波 要求很高&#xff0c;精度要ns级甚至ps级的&…...

个人投资白银收益怎么样?

个人投资白银是可以带来丰厚的收益&#xff0c;但收益的具体情况取决于多种因素。以下是一些明确的答案和举例&#xff0c;帮助投资者更好地理解个人投资白银的收益情况。 白银市场的价格波动是决定投资收益的主要因素之一&#xff0c;白银价格受全球经济形势、地缘局势风险、…...

代码随想录算法训练营 ---第四十五天

前言&#xff1a; 昨天的题做过之后&#xff0c;今天的题基本上都很简单&#xff0c;但是要注重一下细节。 第一题&#xff1a; 简介&#xff1a; 动态规划五部曲&#xff1a; 1.确定dp数组的含义 dp[i]&#xff1a;爬到有i个台阶的楼顶&#xff0c;有dp[i]种方法 2.确定dp…...

【密码学】【多方安全计算】不经意传输(Oblivious Transfer,OT)

文章目录 不经意传输&#xff08;oblivious transfer&#xff09;定义不经意传输的实例&#xff08;1 out 2&#xff0c;二选一不经意传输&#xff09;基于RSA的1 out 2 不经意传输疑问 不经意传输&#xff08;oblivious transfer&#xff09;定义 不经意传输&#xff08;obli…...

STL常用算法-C++

概述&#xff1a; 算法主要是由头文件 <algorithm> <functional> <numeric> 组成。<algorithm> 是所有 STL 头文件中最大的一个&#xff0c;范围涉及是比较、交换、查找、遍历操作、复制、修改等等。<functional> 定义了一些模板类&#xff0c;…...

一、Lua基础

文章目录 一、Lua是什么二、Lua特性&#xff08;一&#xff09;轻量级&#xff08;二&#xff09;可扩展&#xff08;三&#xff09;其它特性 三、Lua安装四、Lua应用 看到评论说&#xff0c;C让我见识了语言的严谨与缜密&#xff0c;lua让我见识到了语言的精巧与创新&#xff…...

vue3 webSocket 封装及使用

vue3 webSocket 封装及使用 封装 import { ref, onUnmounted } from vue; interface SocketOptions {heartbeatInterval?: number;reconnectInterval?: number;maxReconnectAttempts?: number; }class Socket {url: string;ws: WebSocket | null null;opts: SocketOption…...

记录vscode常用插件集合(extensions)

名称用处Chinese (Simplified) (简体中文) Language Pack for Visual Studio Code适用于 VS Code 的中文&#xff08;简体&#xff09;语言包Dev ContainersVisual Studio代码开发容器ES7 React/Redux/GraphQL/React-Native snippetsES7 React/Redux/GraphQL/Rect Native代码段…...

正则表达式详解

一、正则表达式概述 正则表达式是一组由字母和符号组成的特殊文本&#xff0c;它可以用来从文本中找出满足你想要的格式的句子。通俗的讲就是按照某种规则去匹配符合条件的字符串 一个正则表达式是一种从左到右匹配主体字符串的模式。 “Regular expression”这个词比较拗口&a…...

【限时免费】20天拿下华为OD笔试之【双指针】2023Q1A-两数之和绝对值最小【欧弟算法】全网注释最详细分类最全的华为OD真题题解

文章目录 题目描述与示例题目描述输入输出示例一输入输出说明 解题思路代码解法一pythonjavacpp 解法二pythonjavacpp 时空复杂度 华为OD算法/大厂面试高频题算法练习冲刺训练 题目描述与示例 题目描述 给定一个整数数组nums&#xff0c;请你在该数组中找出两个数&#xff0c…...

expect脚本在自动化部署中的具体应用案例

#expect脚本在自动化部署中的具体应用 expect脚本是一个非常好的交互式应用脚本&#xff0c;在自动化部署中&#xff0c;可以使用这个脚本来实现全自动的自动化部署。下面是一些具体的应用案例。 场景一&#xff1a;自动安装mysql 可以使用expect脚本来实现mysql自动安装&…...

【Java+SQL Server】前后端连接小白教程

目录 &#x1f4cb; 流程总览 ⛳️【SQL Server】数据库操作 1. 新建数据库text 2. 新建表 3. 编辑表 ⛳️【IntelliJ IDEA】操作 1. 导入jar包 2. 运行显示错误 &#x1f4cb; 流程总览 ⛳️【SQL Server】数据库操作 打开SQL Server数据库-->sa登录-->新建数据库…...

Xilinx Zynq-7000系列FPGA多路视频处理:图像缩放+视频拼接显示,提供工程源码和技术支持

目录 1、前言免责声明 2、相关方案推荐FPGA图像处理方案FPGA图像缩放方案FPGA视频拼接叠加融合方案推荐 3、设计思路详解HLS 图像缩放介绍Video Mixer介绍 4、vivado工程介绍PL 端 FPGA 逻辑设计PS 端 SDK 软件设计 5、工程移植说明vivado版本不一致处理FPGA型号不一致处理其他…...

Web语言基础课程期末代做

《Web语言基础》课程期末考核要求综合运用课程所学知识&#xff0c;使用VS和SQL及相关开发工具&#xff0c;结合DIVCSS等前端设计技术&#xff0c;完成一个具备新闻发布和考试功能的动态系统&#xff0c;要求包括但不限于&#xff1a;用户注册、登录功能、新闻展示功能、后台数…...

Scanner常用知识点

在Java中&#xff0c;Scanner类是用于读取用户输入的工具类&#xff0c;可以从多种输入源读取数据&#xff0c;如标准输入流、文件或字符串。以下是一些Scanner类的常用知识点&#xff1a; Scanner的初始化&#xff1a;在使用Scanner类之前&#xff0c;需要先将其导入到你的Ja…...

uniapp页面使用多个echarts出现数据渲染错乱问题解决

首先&#xff0c;uniapp当中使用echarts是在通过使用renderjs的script模板的前提下实现的&#xff0c;在官方提供的案例当中&#xff0c;核心代码是这一部分&#xff1a; 但如果将其封装为组件&#xff0c;并在一个页面当中引用多次来生成多个charts图标&#xff0c;那么这个时…...

PHP连接数据库 错误抑制 三元运算符 学习资料

PHP连接数据库 PHP可以通过不同的扩展和库来连接各种类型的数据库。下面是一个使用MySQL数据库的连接示例&#xff1a; <?php $servername "localhost"; $username "your_username"; $password "your_password"; $dbname "your_d…...

5G智慧工地整体解决方案:文件全文115页,附下载

关键词&#xff1a;5G智慧工地&#xff0c;智慧工地建设方案&#xff0c;智慧工地管理平台系统&#xff0c;智慧工地建设调研报告&#xff0c;智慧工地云平台建设 一、5G智慧工地建设背景 5G智慧工地是利用5G技术、物联网、大数据、云计算、AI等信息技术&#xff0c;围绕“人…...

数据结构 / 内存的动态申请和释放

1.内存的动态申请 malloc malloc 的头文件: #include <stdlib.h>格式: void *malloc(size_t size);参数: size_t size: 申请堆区内存大小, 单位是字节&#xff1b;size_t: 是数据类型, 是 unsigned long的宏定义的别名;返回值: void *: 通用类型指针,使用时需要强转为具…...

TPS61088升压板实战:从3.7V到9V的电源设计、调试与优化全记录

1. 项目背景与芯片选型 最近在做一个需要9V供电的小设备&#xff0c;原本打算用常见的9V方块电池&#xff0c;但考虑到成本和环保问题&#xff0c;决定自己设计一个升压电路板。经过一番调研&#xff0c;最终选择了TI的TPS61088这颗芯片。选它的原因很简单&#xff1a;效率高&a…...

杰理蓝牙耳机SDK实战:如何用软件IIC驱动外置传感器?聊聊LIS2DOC的那些配置坑

杰理蓝牙耳机SDK实战&#xff1a;软件IIC驱动LIS2DOC传感器的避坑指南 在蓝牙耳机开发中&#xff0c;外置传感器的集成往往成为功能创新的关键突破点。当硬件设计限制了触摸区域的使用&#xff0c;三轴加速度传感器便成为实现敲击控制的理想选择。ST公司的LIS2DOC作为一款高性能…...

Java基于SSM/Vue/SpringBoot的酒店管理系统

这里写目录标题项目介绍系统实现截图技术栈介绍Spring Boot与Vue结合使用的优势Spring Boot的优点Vue的优点Spring Boot 框架结构解析Vue介绍系统执行流程Java语言介绍系统测试目的可行性分析核心代码详细视频演示源码获取所需该项目可以在最下面查看联系方式&#xff0c;为防止…...

WSL2里Cursor的AI插件连不上网?用graftcp搞定Antigravity网络问题的保姆级教程

WSL2环境下Cursor AI插件网络故障终极解决方案&#xff1a;graftcp实战指南 问题现象与核心痛点 当你满心欢喜地在WSL2中安装好Cursor IDE&#xff0c;准备体验其革命性的AI编程助手Antigravity时&#xff0c;却发现插件始终显示"网络连接失败"。这不是简单的配置错误…...

经典算法:打家劫舍(动态规划 + 回溯求最优解)C++ 超详细解析

前言打家劫舍是动态规划的入门经典题&#xff0c;核心考察无相邻元素选取的最大和问题。本文将基于 C 实现两种核心解法&#xff1a;动态规划&#xff08;空间优化版&#xff09;&#xff1a;高效计算最大金额&#xff0c;时间 O (n)&#xff0c;空间 O (1)回溯法&#xff1a;不…...

HTML头部元信息避坑指南:提升页面性能、SEO与用户体验的关键细节

引言: 简要说明<head>区域在HTML文档中的重要性。 概述元信息(<meta>标签、<title>、<link>等)对页面渲染、搜索引擎优化(SEO)、社交媒体分享、用户体验和可访问性的影响。 点明本文目的:列举常见误区、错误用法及其解决方案。 一、 基础概念与必备…...

Python虚拟环境:venv, virtualenv, conda该如何选?

Python虚拟环境&#xff1a;venv, virtualenv, conda该如何选&#xff1f; 在Python开发中&#xff0c;虚拟环境是隔离项目依赖的重要工具&#xff0c;能够避免不同项目之间的库版本冲突。常见的虚拟环境工具包括Python自带的venv、第三方库virtualenv以及Anaconda提供的conda…...

uniapp安卓文件选择进阶:实现多选、类型过滤与大小限制的完整方案

1. 为什么需要进阶文件选择功能&#xff1f; 在移动应用开发中&#xff0c;文件选择是最基础但最容易被忽视的功能之一。我见过太多应用因为文件选择体验差而被用户吐槽&#xff1a;要么只能单选&#xff0c;要么选完才发现格式不对&#xff0c;要么上传时才发现文件太大。这些…...

实时体积云渲染进阶:Perlin与Worley噪声的混合艺术

1. 理解体积云渲染的基础噪声 在实时体积云渲染中&#xff0c;噪声算法扮演着关键角色。就像画家需要不同的笔触来表现云层的质感&#xff0c;我们需要Perlin和Worley这两种基础噪声来构建云的形态。这两种噪声各有特点&#xff0c;理解它们的差异是混合使用的前提。 Perlin噪声…...

NCM解密终极指南:3步解锁网易云音乐加密音频的完整方案

NCM解密终极指南&#xff1a;3步解锁网易云音乐加密音频的完整方案 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 还在为网易云音乐下载的NCM加密文件无法在其他播放器播放而烦恼吗&#xff1f;这款高效专业的ncmdump工具让你轻松突…...