USM 锐化增强算法

  • 知识点
  • python代码
  • c++代码

知识点

USM 锐化增强算法
图像卷积处理实现锐化有一种常用的算法叫做Unsharpen Mask方法,这种锐化的方法就是对原图像先做一个高斯模糊,然后用原来的图像减去一个系数乘以高斯模糊之后的图像,然后再把值Scale到0~255的RGB像素值范围之内。基于USM锐化的方法可以去除一些细小的干扰细节和噪声,比一般直接使用卷积锐化算子得到的图像锐化结果更加真实可信。

USM锐化公式表示如下:
(源图像– w*高斯模糊)/(1-w);其中w表示权重(0.1~0.9),默认为0.6

OpenCV中的代码实现步骤

  1. 高斯模糊
  2. 权重叠加
  3. 输出结果

python代码

import cv2 as cv
import numpy as npsrc = cv.imread("C:/Users/qqxd/Desktop/opencvcode/images/master.jpg")
cv.namedWindow("input", cv.WINDOW_AUTOSIZE)
cv.imshow("input", src)# sigma = 5、15、25
blur_img = cv.GaussianBlur(src, (0, 0), 5)
usm = cv.addWeighted(src, 1.5, blur_img, -0.5, 0)
cv.imshow("mask image", usm)h, w = src.shape[:2]
result = np.zeros([h, w*2, 3], dtype=src.dtype)
result[0:h,0:w,:] = src
result[0:h,w:2*w,:] = usm
cv.putText(result, "original image", (10, 30), cv.FONT_ITALIC, 1.0, (0, 0, 255), 2)
cv.putText(result, "sharpen image", (w+10, 30), cv.FONT_ITALIC, 1.0, (0, 0, 255), 2)
cv.imshow("sharpen_image", result)
# cv.imwrite("D:/result.png", result)cv.waitKey(0)
cv.destroyAllWindows()

c++代码

#include <opencv2/opencv.hpp>
#include <iostream>using namespace cv;
using namespace std;int main(int artc, char** argv) {Mat src = imread("C:/Users/qqxd/Desktop/opencvcode/images/master.jpg");if (src.empty()) {printf("could not load image...\n");return -1;}namedWindow("input", WINDOW_AUTOSIZE);imshow("input", src);Mat blur_img, usm;GaussianBlur(src, blur_img, Size(0, 0), 25);addWeighted(src, 1.5, blur_img, -0.5, 0, usm);imshow("mask image", usm);waitKey(0);return 0;
}

运行结果如下:

Opencv-锐化增强算法(USM)相关推荐

  1. 【OpenCV】35 USM锐化增强算法

    35 USM锐化增强算法 代码 import cv2 as cv import numpy as npsrc = cv.imread("../images/master.jpg") ...

  2. OpenCV之USM 锐化增强算法

    python代码: import cv2 as cv import numpy as npsrc = cv.imread("./test.png") cv.namedWindow( ...

  3. OpenCV图像锐化/增强

    OpenCV图像锐化/增强 0.综述 1.Laplacian高通滤波算子 2.Laplacian锐化代码实践 3.USM锐化增强算法 4.USM代码实践 0.综述 图像的卷积计算除了可以完成我们前面介 ...

  4. 图像增强之一种改进的同态滤波增强算法-221211工作总结

    目录 一.参考 二.背景 三.步骤 四.加权分布的自适应伽马校正(AGCWD) 1.背景 2.原理 3.函数补充 1. cv2.calcHist()函数 2. img.convert() 五.单参数同 ...

  5. 图像多尺度对比增强算法

    多尺度对比增强算法的基本观点是将图像分解成代表图像单个细节的像素,然后立 即在这些像素上提高对比度,因此要求选择一种图像分解方法. 在图像分解方法的选择上要遵循以下两个基本条件:           ...

  6. FPGA设计——图像处理(锐化增强)

    1. 概述 本设计采用FPGA技术,实现CMOS视频图像的锐化增强,并通过以太网传输(UDP方式)给PC实时显示. 2. 硬件系统框图 CMOS采用MT9V011(30万像素),FPGA采用ALTER ...

  7. opencv 锐化 java_如何在OpenCV中锐化图像?

    如何在OpenCV中锐化图像? 如何使用OpenCV锐化图像? 有许多平滑或模糊的方法,但没有我能看到的锐化. 7个解决方案 147 votes 关于反锐化掩蔽的维基百科文章中列出了一个通用程序:您使 ...

  8. 反锐化掩膜_图像反锐化掩膜算法研究解析.doc

    中北大学 课 程 设 计 说 明 书 学生姓名: xxx 学 号: 11xxxxxxxx 学 院: 信息与通信工程学院 专 业: 电子信息工程 题 目: 图像反锐化掩膜算法研究 指导教师: 田秀荣 职 ...

  9. 用OpenCV实现Photoshop算法(十): 美白磨皮(未完)

    系列文章: 用OpenCV实现Photoshop算法(一): 图像旋转 用OpenCV实现Photoshop算法(二): 图像剪切 用OpenCV实现Photoshop算法(三): 曲线调整 用Ope ...

最新文章

  1. 二手车电商很热?其实都是平台在自嗨!
  2. golang beego快速入门示例(单文件hello.go)
  3. Apache配置网站根目录
  4. json绑定到实体_绑定到JSON和XML –处理集合
  5. 【script】python多线程模块threading的使用
  6. angular 字符串转换成数字_3种方法搞定Excel中数字大小写转换? 123...变为壹贰叁......
  7. O036、Snapshot Instance 操作详解
  8. 带有天气预报的高大上web报表制作分享
  9. container_of宏定义分析---linux内核
  10. 本人psp2000和psp3000都亲自试验过,没问题,刷完可以关机,能读取ISO文件,具体某些游戏可能不能运行还需要自己实践。
  11. Ant适用的省市区联动数据
  12. excel转置怎么操作_EXCEL的矩阵运算
  13. python gui 之库tkinter笔记
  14. 屏幕录制方法?如何在电脑进行屏幕录制
  15. ESL3.5 学习笔记(主成分回归,偏最小二乘回归步骤详解)
  16. 车载OS的战场:万亿美金入口之争
  17. 服务器图标怎么显示在任务栏,Win10任务栏图标显示异常怎么办?解决任务栏图标显示异常的方法...
  18. 神奇女侠Wonder Woman迅雷下载
  19. 快速打开浏览倾斜摄影数据教程
  20. C++上机实验2-1标准体重

热门文章

  1. springboot整合curator实现分布式锁模拟抢购场景
  2. Java学习——servlet简单学习
  3. C++---最长上升子序列模型---导弹防御系统(每日一道算法2023.3.5)
  4. 该如何从 Java 8 升级到 Java 10
  5. 成功创业的“六字真言”
  6. element-ui 里面的table 点击行进行切换选中状态
  7. 【云原生 | Kubernetes 实战】18、K8s 安全实战篇之 RBAC 认证授权(下)
  8. Android组件化方案
  9. 微信网站链接提示已停止访问该网页怎么办
  10. show java使用教程_java卡片布局中show的正确使用方法