一、常见函数整理
- 1.1 cv2.resize函数(图像size重定义)
- 1.2 cv2.getStructuringElement函数(构造卷积核)
一、常见函数整理 1.1 cv2.resize函数(图像size重定义)
cv2.resize(InputArray src, OutputArray dst, Size, fx, fy, interpolation)
"""
参数解释:
InputArray src 输入图片
OutputArray dst 输出图片
Size 输出图片尺寸
fx, fy 沿x轴,y轴的缩放系数
interpolation 插入方式
interpolation 选项所用的插值方法:
INTER_NEAREST: 最近邻插值
INTER_LINEAR: 双线性插值(默认设置)
INTER_AREA: 使用像素区域关系进行重采样
INTER_CUBIC: 4x4像素邻域的双三次插值
INTER_LANCZOS4: 8x8像素邻域的Lanczos插值
输出尺寸格式为(宽,高)
"""
1.2 cv2.getStructuringElement函数(构造卷积核)
rectkernel = cv2.getStructuringElement(shape, ksize, anchor=None)
"""
shape:
MORPH_RECT 矩形
MORPH_CROSS 十字型
MORPH_ELLIPSE 椭圆形
ksize: 指定形状(元组)
anchor:锚点位置
"""
- 示例1:矩形
rectKernel = cv2.getStructuringElement(cv2.MORPH_RECT, (6, 3))
print(rectKernel, type(rectKernel))
sqKernel = cv2.getStructuringElement(cv2.MORPH_RECT, (5, 5))
print(sqKernel, type(sqKernel))
#结果
"""
[[1 1 1 1 1 1]
[1 1 1 1 1 1]
[1 1 1 1 1 1]]
[[1 1 1 1 1]
[1 1 1 1 1]
[1 1 1 1 1]
[1 1 1 1 1]
[1 1 1 1 1]]
"""
- 示例2:十字形
sqKernel = cv2.getStructuringElement(cv2.MORPH_CROSS, (9, 5))
print(sqKernel, type(sqKernel))
sqKernel = cv2.getStructuringElement(cv2.MORPH_CROSS, (10, 6))
print(sqKernel, type(sqKernel))
#结果
"""
[[0 0 0 0 1 0 0 0 0]
[0 0 0 0 1 0 0 0 0]
[1 1 1 1 1 1 1 1 1]
[0 0 0 0 1 0 0 0 0]
[0 0 0 0 1 0 0 0 0]]
[[0 0 0 0 0 1 0 0 0 0]
[0 0 0 0 0 1 0 0 0 0]
[0 0 0 0 0 1 0 0 0 0]
[1 1 1 1 1 1 1 1 1 1]
[0 0 0 0 0 1 0 0 0 0]
[0 0 0 0 0 1 0 0 0 0]]
"""
- 示例3:锥形
sqKernel = cv2.getStructuringElement(cv2.MORPH_ELLIPSE, (9, 5))
print(sqKernel, type(sqKernel))
#结果
"""
[[0 0 0 0 1 0 0 0 0]
[0 1 1 1 1 1 1 1 0]
[1 1 1 1 1 1 1 1 1]
[0 1 1 1 1 1 1 1 0]
[0 0 0 0 1 0 0 0 0]]
"""
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)