其输出结果如图所示,它将彩色风景图像采样成8×8的区域 。

文章插图

文章插图
# -- coding:utf-8 --import cv2import numpy as npimport matplotlib.pyplot as plt#读取原始图像im = cv2.imread('people.png', 1)#设置鼠标左键开启en = False#鼠标事件def draw(event, x, y, flags, param): global en #鼠标左键按下开启en值 if event==cv2.EVENT_LBUTTONDOWN: en = True #鼠标左键按下并且移动elif event==cv2.EVENT_MOUSEMOVE and flags==cv2.EVENT_LBUTTONDOWN: #调用函数打马赛克 if en: drawMask(y,x) #鼠标左键弹起结束操作 elif event==cv2.EVENT_LBUTTONUP: en = False#图像局部采样操作 def drawMask(x, y, size=10): #size*size采样处理m = x / size * sizen = y / size * size print m, n #10*10区域设置为同一像素值 for i in range(size): for j in range(size): im[m+i][n+j] = im[m][n]#打开对话框cv2.namedWindow('image')#调用draw函数设置鼠标操作cv2.setMouseCallback('image', draw)#循环处理while(1):cv2.imshow('image', im) #按ESC键退出 if cv2.waitKey(10)&0xFF==27: break #按s键保存图片 elif cv2.waitKey(10)&0xFF==115:cv2.imwrite('sava.png', im)#退出窗口cv2.destroyAllWindows()其输出结果如图所示,它将人物的脸部进行马赛克处理 。

文章插图
推荐阅读
- python中模块与包
- 实现 Python | 继承关系
- 跨平台Python异步聊天机器人框架,支持QQ、飞书、钉钉等渠道
- 4 步打包一个新的 Python 模块
- 实践更重要?实践的需要是推动认识在深度和广度
- 王一博|王一博方否认嫖娼被包养,还称不认识李某某,肖战也被牵扯
- 王一博|王一博辟谣嫖娼被包养,称不认识李某某,粉丝喊话要告肖战粉
- gnz48|王一博:不认识李易峰!网友立马扒出两人同框视频,被打脸了?
- 理想|买没买都可以看!美女带你详细体验理想L9:人形说明书在线教学
- 编程|胡渊鸣:import一个“太极”库 让Python代码提速100倍!
