Python 图像打马赛克

python 加马赛克 阅读详情
from PIL import Image    


def do_mask(self,img_file, mask_box, save_file):
    """

    :param img_file:
    :param mask_box:[左上x,左上y,width,height]
    :param save_file:
    :return:
    """

    def mosaic(img, fx, fy, tx, ty):
        c = img.crop((fx, fy, tx, ty))
        c = _mosaic(c)
        img.paste(c, (fx, fy, tx, ty))
        return img

    def _mosaic(img):
        s = img.size
        img = img.resize((1, 1))
        img = img.resize(s)
        return img

    img = Image.open(img_file)
    x, y, w, h = mask_box
    mosaic_size = 20
    for i in range(int(w / mosaic_size) + 1):
        for j in range(int(h / mosaic_size) + 1):
            if (mosaic_size * (i + 1) > w and mosaic_size * (j + 1) < h):
                fx, fy, tx, ty = (x + mosaic_size * i, y + mosaic_size * j, w + x, mosaic_size * (j + 1) + y)
            elif (mosaic_size * (i + 1) < w and mosaic_size * (j + 1) > h):
                fx, fy, tx, ty = (x + mosaic_size * i, y + mosaic_size * j, mosaic_size * (i + 1) + x, h + y)
            elif (mosaic_size * (i + 1) > w and mosaic_size * (j + 1) > h):
                fx, fy, tx, ty = (x + mosaic_size * i, y + mosaic_size * j, w + x, h + y)
            else:
                fx, fy, tx, ty = (
                    x + mosaic_size * i, y + mosaic_size * j, mosaic_size * (i + 1) + x, mosaic_size * (j + 1) + y)

            if tx<=0:
                tx = 1
            if ty <= 0:
                ty = 1

            img = mosaic(img, fx, fy, tx, ty)
    img.save(save_file)
python论如何给图片打马赛克 python给图片打马赛克分类前言开始依赖献上代码效果代码剖析导入库整体打马代码和思路思路:代码:局部马赛克代码和思路思路:代码:输入文件名输入裁切位置局部打马输出部分代码github作者 分类 图片处理-PIL-python给图片打马赛克 前言 原题传送门 开始 依赖 Pillow 5.2.0 python 3.7.7 献上代码 # magic remark # -*- encoding: 阅读详情

相关推荐

使用Python简单实现马赛克拼图

先上效果图 这是原图: 思路: 拼图的原理其实很简单,就是把原图划分成很多个小块,然后根据灰度或者rgb搜索图库中最相似的图片进行替换。接下来的问题就是如何实现图片搜索。这里可以参考阮一峰的博客 上代码: 第一步:获取目标图片的尺寸,计算每个子图的大小。例如:目标图片的尺寸为1600x1280,计算出这个尺寸的最大公约数为320,即拼出的图片由每行每列都有320张小图...

Clanner的博客 2万+

通过Python的PIL库给图片添加马赛克

通过Python的PIL库给图片添加马赛克。

业余Python爱好者 2309

[Python图像处理] 二十.图像量化处理和采样处理及局部马赛克特效

前面一篇文章我讲解了基于K-Means聚类的图像分割或量化处理,但突然发现世面上的文章讲解图像量化和采样代码的很缺乏,因此结合2015年自己的一篇文章,补充相关知识供同学们学习。基础性文章,希望对你有所帮助。同时,该部分知识均为杨秀璋查阅资料撰写,转载请署名CSDN+杨秀璋及原地址出处,谢谢!! 1.图像量化处理(含原理、操作、聚类量化) 2.图像采样处理(含原理、操作、局部马赛克处理)

杨秀璋的专栏 1万+

【Python 项目】照片马赛克 - 2

如果基于目标图像中匹配的小块,盲目地将输入图像粘贴在一起,就会得到一个巨大的照片马赛克,比目标图像大得多。为了避免这种情况,调整输入图像的大小,以匹配网格中每个小块的大小(这样做还有一个好处,可以加快平均 RGB 的计算,因为用了较小的图像)。这个图像网格是最终的照片马赛克图像,利用选择的小块图像列表来创建。接下来,计算图像的平均 RGB 值,然后将目标图像分割成图像网格,为小块找到最佳匹配。最后,组装图像小块,创建最终的照片马赛克。读入输入图像后,需要计算它们的平均颜色值,以及目标图像中的每个小块的值。

Ω 822

Python 基于 OpenCV 视觉图像处理实战 之 OpenCV 简单实战案例 之五 简单局部/整体马赛克效果

Python是一种跨平台的计算机程序设计语言。是一种面向对象的动态类型语言,最初被设计用于编写自动化脚本(shell),随着版本的不断更新和语言新功能的添加,越多被用于独立的、大型项目的开发。Python是一种解释型脚本语言,可以应用于以下领域: Web 和 Internet开发、科学计算和统计、人工智能、教育、桌面界面开发、软件开发、后端开发、网络爬虫。这里使用 Python 基于 OpenCV 进行视觉图像处理,......

仙魁XAN 1277

Python图像处理丨了解图像量化处理和局部马赛克特效

图像量化处理是一种在数字图像中减少颜色数量的技术,它可以用于图像压缩、色彩调整和特效创建等应用中。而局部马赛克特效是一种在图像的局部区域上应用马赛克效果的技术,可以用于隐藏敏感信息或创建艺术效果。本文将介绍如何使用Python进行图像量化处理和实现局部马赛克特效,并提供相应的源代码。

持续更新 252

4.python-opencv图像马赛克

本文主要讲了讲图片模糊达到图像马赛克的效果,主要使用了三种方法,方法一为将图片尺寸缩小N倍,再将图片方法N倍,从而达到模糊图片的目的;方法二为先将图像缩小N倍,将每个像素冲符N次将图像变为与原始图像相同的尺寸,由于像素的重复从而达到图片模糊的效果;方法三为间隔提取图像的像素,从而将部分像素对其,从而实现图像模糊的效果............

白羊by的博客 3141

Windows server 2012R2安装Oracle11g

打开 开始——所有程序——Oracle-OraDb11g_home1——配置和移植工具——Database Configuration Assistant。打开 开始——所有程序——Oracle-OraDb11g_home1——配置和移植工具——Net Configuration Assistant。首先打开Oracle的安装位置找到下面的位置找到tnsnames.ora文件右键编辑。打开Oracle的安装位置找到下面的位置找到tnsnames.ora文件右键编辑。选择仅安装数据库软件。

qq_74770105的博客 3588

python图像处理 马赛克效果

python+opencv实现图像马赛克效果 常规马赛克 import cv2 import numpy as np import matplotlib.pyplot as plt # 常规马赛克 def do_mosaic(img, x, y, w, h, neighbor=9): """ :param rgb_img :param int x : 马赛克左顶点 :param int y: 马赛克左顶点 :param int w: 马赛克宽 :pa

Wadewhl的博客 3531

完整内、外期货量化交易系统源码可售

支持客户登录校验,支持所有的实时行情和汇总报价功能、实时资讯(报价,列表,分时,分钟成交明晰,),多线程支持盘后收盘作业下载(日线,5分钟线,15分钟, 30分钟,60分钟线,),支持从服务器下载相关运行配置(来自服务器动态配置信息,如收盘日期等),实现状态条显示。收盘作业包括日线、5分钟线、15分钟线、30分钟、60分钟线、2小时线、4小时线每日分时走势。综合信息栏显示用户账户信息、合约信息、当日委托单记录、当日成交记录、当日平仓记录、当日跟单记录、当日(月/周)排行榜、下单栏、持仓信息;

qq_35600909的博客 1801

uniapp+萤石视频监控实战:解决ezuikit.js真机调试不显示的5个关键步骤

本文针对Uniapp集成萤石视频监控时ezuikit.js在真机调试中黑屏不显示的问题,提供了5个关键解决步骤。核心方案是采用Webview加载独立H5播放页,以规避跨平台环境差异,并详细阐述了资源放置、多端适配、通信处理及系统化排查方法,确保视频流稳定播放。

weixin_29001655的博客 282

Python 制作马赛克拼合图像

Python 制作马赛克拼合图像 文章目录Python 制作马赛克拼合图像知识点效果:环境原理RGB 色彩空间HSV 色彩空间RGB 与 HSV 色彩空间的转换马赛克图片拼合数据准备:导入需要的库计算图像平均 HSV 值生成素材数据库生成马赛克图片效果展示完整代码: 200 行 Python 代码完成生成马赛克图片的脚本 知识点 什么是 RGB HSV 色彩空间 Python 基础 包括 pillow 库的使用 多进程库 multiprocessing 的使用 制作马赛克图像的原理 效果: 可以生成类似

Deng872347348的博客 970

(代码可运行)半导体器件和工艺模拟 使用Silvaco设计构建NMOS并提取各项工艺及器件参数

win10。

qq_20388971的博客 104

python-opencv图像处理(1):马赛克

马赛克的原理: 将图像中选中区域的像素值用这个选中区域中的某一像素值或者随机值替换; 代码实现: # -*- coding: utf-8 -*- """ Created on Sat Jan 19 15:33:42 2019 @author: Administrator """ import cv2 #引入openCV import numpy as np #import matplotl...

zfjBIT的专栏 2412

Google Gemini 模型本地可视化

Google近期发布了Gemini模型,而且开放了Gemini Pro API,Gemini Pro 可免费使用!Gemini Pro支持全球180个国家的38种语言,目前接受文本、图片作为输入并生成文本作为输出。Gemini Pro的表现超越了其他同类模型,当前版本配备了 32K 文本上下文窗口,可免费使用,且其定价将十分有竞争力。Gemini Pro具备丰富的功能:函数调用、数据嵌入、语义检索、自定义知识嵌入以及聊天功能。

HJ_blog 1240

【YOLO11改进 - C3k2融合】C3k2融合动态蛇形卷积(Dynamic Snake Convolution)用于管状结构分割任务

【YOLO11改进 - C3k2融合】C3k2融合动态蛇形卷积(Dynamic Snake Convolution)用于管状结构分割任务

专注于图像领域,主要研究内容包括计算机视觉和深度学习,特别是在图像分类、目标检测和图像生成等方面有深入的研究和实践经验。 512

Python图像处理丨带你认识图像量化处理及局部马赛克特效

本文主要讲述如何进行图像量化处理和采样处理及局部马赛克特效。

华为云官方博客 1684

YOLOv11涨点改进 | 全网独家下采样改进、细节涨点篇 | TGRS 2025 | 引入PWD参数化小波下采样模块,减少下采样过程中小目标的关键细节丢失,即插即用,助力高效涨点发论文

本文提出了一种改进YOLOv11小目标检测性能的参数化小波下采样(PWD)模块。PWD通过小波变换保留目标细节信息,增强频率域特征表达,有效解决了传统下采样导致的小目标信息丢失问题。该模块采用双分支设计,结合自适应频率选择和空间补偿机制,在红外图像和低光场景中表现出更强的抗干扰能力。实验表明,PWD能显著提升YOLOv11对弱纹理和低对比度目标的检测精度,同时保持计算效率。文章详细介绍了PWD的结构原理、实现代码及在YOLOv11中的集成方法,为小目标检测提供了有效的改进方案。

Ai缝合怪、助力小伙伴高效发论文 229

给图像打上马赛克python实现

引言:利用python小技术可以是你的朋友圈丰富多彩,味道十足。 话不多说,直接看效果: 小猫原图 打上马赛克效果图 为了不让你看到可爱的小猫咪!打上马赛克的代码送上: from PIL import Image import matplotlib.pyplot as plt path1=r'./cat.png' img = Image.open(path1) img.thumbnail((32,32), Image.ANTIALIAS) # resizes image ...

猛男的博客 1958

基于Slim-Neck架构的YOLOv11轻量化特征融合方案(实现超轻量级与高精度的双重突破)

购买即可解锁800+YOLO优化文章,并且还有海量深度学习复现项目,价格仅需两杯奶茶的钱,每日更新。

m0_64661770的博客 249

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

python编程代码画画_如何用python编写一个绘制马赛克图像的自写程序

Python部落(python.freelycode.com)组织翻译,禁止转载,欢迎转发。这篇教程将会展示如何用python的图形化包“Pygame”和基础的文件I/O来创建一个自写程序。这个程序将可以仿照给定的图片来创作一幅马赛克画。Python是一种非常强大的编程语言。它有着许多的内建函数和可下载的软件包。在这片教程的末尾,你将会拥有一副属于你自己的蒙娜丽莎马赛克画并且将会学会如何对所有你...

weixin_39526872的博客 686

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

python识别图像中人像并打马赛克_opencv马赛克python实现

最近要实现opencv视频打马赛克,在网上找了一下基本是C++的实现,好在原理一样,下面给出python实现。 原理和注意点,我都写在注释里了import cv2##马赛克def do_mosaic(frame, x, y, w, h, neighbor=9):"""马赛克的实现原理是把图像上某个像素点一定范围邻域内的所有点用邻域内左上像素点的颜色代替,这样可以模糊细节,但是可以保留大体的轮廓。:...

weixin_39590566的博客 457

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

opencv-python图像增强十六:图像马赛克

在数字时代,图像处理已成为我们日常生活中不可或缺的一部分。无论是社交媒体上的照片编辑,还是专业领域的图像分析,图像处理技术都发挥着至关重要的作用。今天,我们将一起探索图像处理领域的一个有趣应用——图像马赛克。马赛克作为一种艺术形式,自古以来就广受欢迎。它通过将小块的彩色材料拼接在一起,创造出美丽的图案和画面。而在数字图像处理中,马赛克效果则是一种将图像分解成若干小块,并通过某种方式(如平均颜色)重新组合的技术。这种效果不仅具有艺术价值,而且在隐私保护、数据压缩等方面有着广泛的应用。

HanWenKing的博客 1730

用python画图形自己创作_如何用python编写一个绘制马赛克图像的自写程序

Python部落(python.freelycode.com)组织翻译,禁止转载,欢迎转发。这篇教程将会展示如何用python的图形化包“Pygame”和基础的文件I/O来创建一个自写程序。这个程序将可以仿照给定的图片来创作一幅马赛克画。Python是一种非常强大的编程语言。它有着许多的内建函数和可下载的软件包。在这片教程的末尾,你将会拥有一副属于你自己的蒙娜丽莎马赛克画并且将会学会如何对所有你喜...

weixin_39951419的博客 349

OpenCV+python3 入门之图像马赛克和毛玻璃效果

** OpenCV入门之图像马赛克和毛玻璃效果 ** 图片的马赛克效果就是用图片的某个区域中指定的一个像素点来代替该区域中其他的像素点,毛玻璃效果就是用图片的某个区域中随机的一个像素点来代替该区域中其他的像素点。 原图如下: 一、图片的马赛克效果 马赛克是一个非常我们非常熟悉的图片效果,实现这个效果首先选择要替换的像素区域,我定的区域是1010的,就是在1010的区域内,选择指定的一个像素来替代...

wwq114的博客 1383
上一篇: Python 实现图像只能由特定软件打开(或者是制作一种新格式)
下一篇: 基于Everything实现的文件快速检索系统
JHC0000abc
博客等级 码龄7年 1180粉丝 372原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值