建e网怎么赚钱,衡水网站优化,株洲网站建设推广报价,织金网站建设文章目录#xff1a;『youcans 的 OpenCV 例程200篇 - 总目录』 【youcans 的 OpenCV 例程200篇】220.对图像进行马赛克处理
9. 图像的马赛克处理
马赛克效果是广泛使用的图像和视频处理方法。将图像中指定区域的色阶细节劣化#xff0c;造成色块模糊的效果#xff0c;看上…文章目录『youcans 的 OpenCV 例程200篇 - 总目录』 【youcans 的 OpenCV 例程200篇】220.对图像进行马赛克处理
9. 图像的马赛克处理
马赛克效果是广泛使用的图像和视频处理方法。将图像中指定区域的色阶细节劣化造成色块模糊的效果看上去像是一个个小格子组成的色块称为马赛克。马赛克效果的主要目的是使特定区域的细节无法辨认经常用于遮挡人物脸部、隐私信息。
马赛克的方法很简单将处理区域划分为一个个小方块每个小方块内所有像素置为相同的或相似的像素值。例程 A4.13 给出了一个简单的实施案例。
马赛克方块的尺寸越大图像越模糊马赛克区域图像丢失的细节越多。
这与图像多尺度像素采样是相似的图像向下采样分辨率逐级降低。对整幅图像进行马赛克处理与图像下采样是等效的对图像局部进行马赛克处理相当于原始图像与局部图像下采样的融合。
上采样和下采样是不可逆的将下采样的图像还原回原来尺寸时会丢失高频信息使图片变模糊。因此消除图像马赛克在原理上是不可能的。但是通过图片像素临近点插值的填充算法可以增强马赛克区域的视觉效果。近年来随着 AI 技术的发展基于对大量类似清晰图像的学习使用 AI 算法可以较好地还原图像识别被马赛克遮挡的人脸或文本取得了很好的效果。 例程 A4.13对图像指定区域进行马赛克处理
对于选定的 ROI 区域进行马赛克处理。马赛克方块的尺寸越大图像越模糊马赛克区域图像丢失的细节越多。 # A4.13 对图像指定区域进行马赛克处理img cv.imread(../images/imgLena.tif, 1) # 加载原始图片单通道roi cv.selectROI(img, showCrosshairTrue, fromCenterFalse)x, y, wRoi, hRoi roi # 矩形裁剪区域的位置参数# x, y, wRoi, hRoi 208, 176, 155, 215 # 矩形裁剪区域imgROI img[y:yhRoi, x:xwRoi].copy() # 切片获得矩形裁剪区域print(x, y, wRoi, hRoi)plt.figure(figsize(9, 6))plt.subplot(231), plt.title(Original image), plt.axis(off)plt.imshow(cv.cvtColor(img, cv.COLOR_BGR2RGB))plt.subplot(232), plt.title(Region of interest), plt.axis(off)plt.imshow(cv.cvtColor(imgROI, cv.COLOR_BGR2RGB))mosaic np.zeros(imgROI.shape, np.uint8) # ROI 区域ksize [5, 10, 20] # 马赛克块的宽度for i in range(3):k ksize[i]for h in range(0, hRoi, k):for w in range(0, wRoi, k):color imgROI[h,w]mosaic[h:hk,w:wk,:] color # 用顶点颜色覆盖马赛克块imgMosaic img.copy()imgMosaic[y:y hRoi, x:x wRoi] mosaicplt.subplot(2,3,i4), plt.title(Coding image (size{}).format(k)), plt.axis(off)plt.imshow(cv.cvtColor(imgMosaic, cv.COLOR_BGR2RGB))plt.subplot(233), plt.title(Mosaic), plt.axis(off)plt.imshow(cv.cvtColor(mosaic, cv.COLOR_BGR2RGB))plt.show()【本节完】 版权声明 youcansxupt 原创作品转载必须标注原文链接(https://blog.csdn.net/youcans/article/details/125522759) Copyright 2022 youcans, XUPT Crated2022-6-30 218. 多行倾斜文字水印 219. 添加数字盲水印 220.220.对图像进行马赛克处理