opencv 之图像的边界填充及一些数据计算

简介: opencv 之图像的边界填充及一些数据计算

opencv 之图像的边界填充及一些数据计算

import cv2
import matplotlib.pyplot as plt
img = cv2.imread('test.png')
a = b = c = d = 50
# 这里用a ,b ,c ,d分别表示上下左右要填充的宽度
replicate = cv2.copyMakeBorder(img, a, b, c, d, borderType=cv2.BORDER_REPLICATE)
reflect = cv2.copyMakeBorder(img, a, b, c, d, borderType=cv2.BORDER_REFLECT)
reflect101 = cv2.copyMakeBorder(img, a, b, c ,d, borderType=cv2.BORDER_REFLECT_101)
wrap = cv2.copyMakeBorder(img, a, b, c, d, borderType=cv2.BORDER_WRAP)
constant = cv2.copyMakeBorder(img, a, b, c, d, cv2.BORDER_CONSTANT, value=0)
plt.subplot(231), plt.imshow(img, 'gray'), plt.title('original')
plt.subplot(232), plt.imshow(replicate, 'gray'), plt.title('replicate')
plt.subplot(233), plt.imshow(reflect, 'gray'), plt.title('reflect')
plt.subplot(234), plt.imshow(reflect101, 'gray'), plt.title('reflet101')
plt.subplot(235), plt.imshow(wrap, 'gray'), plt.title('wrap')
plt.subplot(236), plt.imshow(constant, 'gray'), plt.title('constant')
plt.show()

上边分别用五种填充方式展示了边缘填充的效果,效果如下

这五种


replicate 表示的是边界赋值,你可以看到填充的基本就是把边缘复制了一下

reflect 则是反射了,可以看到轴对称过去的部分,反射效果 cba | abc | cba

reflect101这种反射和上边一种稍有区别 反射效果 cb | abc | ba

wrap 外包装法,简单说就是 cdefg | abcdefg | abcde

constant 则是常亮填充,比如本例子则使用的value= 0就是纯黑色来填充

除了边界填充,还有一些常用的数值计算,比如


我们让一个图片加上一个数,就是图片的每一个像素块的值加上一个数,如果超过255那么就用结果 % 256 得到的余数就是像素值

一个图片加上另一个图片,前提,俩图片的维度是一模一样的才可以进行相加,如果超出255,那么就是进行求余操作

cv2.add(img1, img2)

俩图片像素值相加,如果超过255,那么结果就是255


相关实践学习
简单用户画像分析
本场景主要介绍基于海量日志数据进行简单用户画像分析为背景,如何通过使用DataWorks完成数据采集 、加工数据、配置数据质量监控和数据可视化展现等任务。
SaaS 模式云数据仓库必修课
本课程由阿里云开发者社区和阿里云大数据团队共同出品,是SaaS模式云原生数据仓库领导者MaxCompute核心课程。本课程由阿里云资深产品和技术专家们从概念到方法,从场景到实践,体系化的将阿里巴巴飞天大数据平台10多年的经过验证的方法与实践深入浅出的讲给开发者们。帮助大数据开发者快速了解并掌握SaaS模式的云原生的数据仓库,助力开发者学习了解先进的技术栈,并能在实际业务中敏捷的进行大数据分析,赋能企业业务。 通过本课程可以了解SaaS模式云原生数据仓库领导者MaxCompute核心功能及典型适用场景,可应用MaxCompute实现数仓搭建,快速进行大数据分析。适合大数据工程师、大数据分析师 大量数据需要处理、存储和管理,需要搭建数据仓库?学它! 没有足够人员和经验来运维大数据平台,不想自建IDC买机器,需要免运维的大数据平台?会SQL就等于会大数据?学它! 想知道大数据用得对不对,想用更少的钱得到持续演进的数仓能力?获得极致弹性的计算资源和更好的性能,以及持续保护数据安全的生产环境?学它! 想要获得灵活的分析能力,快速洞察数据规律特征?想要兼得数据湖的灵活性与数据仓库的成长性?学它! 出品人:阿里云大数据产品及研发团队专家 产品 MaxCompute 官网 https://www.aliyun.com/product/odps 
相关文章
|
2月前
|
算法 计算机视觉
OpenCV(四十):图像分割—漫水填充
OpenCV(四十):图像分割—漫水填充
55 0
|
4天前
|
计算机视觉 Python
轻松掌握opencv的8种图像变换
轻松掌握opencv的8种图像变换
|
5天前
|
算法 计算机视觉
【OpenCV】- 图像修复
【OpenCV】- 图像修复
|
5天前
|
Serverless 计算机视觉
【OpenCV】-图像的矩
【OpenCV】-图像的矩
|
5天前
|
编解码 物联网 计算机视觉
【OpenCV】—图像金子塔与图片尺寸缩放
【OpenCV】—图像金子塔与图片尺寸缩放
|
5天前
|
前端开发 计算机视觉 C++
【OpenCV】—分离颜色通道、多通道图像混合
【OpenCV】—分离颜色通道、多通道图像混合
|
5天前
|
API 计算机视觉
【OpenCV】—图像对比度、亮度值调整
【OpenCV】—图像对比度、亮度值调整
|
5天前
|
计算机视觉 索引
【OpenCV】—ROI区域图像叠加&图像混合
【OpenCV】—ROI区域图像叠加&图像混合
|
5天前
|
存储 算法 C语言
OpenCV—访问图像中的像素
OpenCV—访问图像中的像素
|
23天前
|
编解码 计算机视觉 Python
opencv 图像金字塔(python)
opencv 图像金字塔(python)