欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

OpenCvSharp图像的修改和保存以及掩膜操作

程序员文章站 2022-03-07 23:47:49
一 :图像的颜色空间转换在opencvsharp中颜色转换函数为:cv2.cvtcolor()参数: 参数 说明 src:...

一 :图像的颜色空间转换

在opencvsharp中颜色转换函数为:cv2.cvtcolor()

参数:

参数 说明
src: 源图像,8位无符号,16位无符号或单精度浮点
dst: 输出图像,具有与src相同的大小和深度
code: 颜色空间转换代码:(colorconversioncodes)枚举类型

代码:

OpenCvSharp图像的修改和保存以及掩膜操作

左边是源图像,右边是转为灰度空间的图像,保存路径在桌面。
转为灰度空间的类型在 opencvsharp 中的 colorconversioncodes.rgb2gray 与 colorconversioncodes.brr2gray 都能实现,opencvsharp 加载进来的图像是哪一种?

代码

OpenCvSharp图像的修改和保存以及掩膜操作

根据输出像素值(0,0,255)可以看出 opencvsharp 三通道像素值排列为:bgr

二: 掩膜操作,提高图像对比度

使用cv2.filter2d函数:

参数 说明
src: 输入的源图像
dst: 输出图像,一个mat 对象,与原图图像具有相同的大小和图像深度
ddepth: 目标图像的所需深度。如果它是负的,它就是与src.depth()相同,不确定时就填 -1
kernel: 卷积核
anchor: 内核的锚点,表示经过过滤的点的相对位置. (- 1,-1)表示锚位于内核中心
delta: 在卷积过程中,该值会加到每个像素上。默认情况下,这个值为 0 。相当于一个增益值
bordertype: 指定边缘处理的方法,比较复杂,选择默认值即可。是枚举类型

代码:

OpenCvSharp图像的修改和保存以及掩膜操作

从上图可以看出,outputimage 比 inputimage 的亮度明显增强。

三:利用指针修改图像像素值,进行图像对比度处理

代码:

OpenCvSharp图像的修改和保存以及掩膜操作

效果与上面使用api操作基本一致。这里是由一个计算公式:

OpenCvSharp图像的修改和保存以及掩膜操作

对应这行代码:

四:减少图像亮度

代码:

OpenCvSharp图像的修改和保存以及掩膜操作

输出图像明显比输入的亮度下降。

代码:

OpenCvSharp图像的修改和保存以及掩膜操作

输出图像明显比输入的亮度提高很多。

到此这篇关于opencvsharp图像的修改和保存以及掩膜操作的文章就介绍到这了,更多相关opencvsharp图像掩膜内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!