照片合成软件(图片合成在线生成器)

   2023-06-03 互联网0
核心提示:目录 前言 开发环境 实现代码 先导入所需模块 读取图片文件 读取所有源图片并计算对应颜色的平均值 合法图像列表 平均颜色列表 遍历 主函数 模块调用执行 完整效果 前

照片合成软件(图片合成在线生成器)

目录 前言 开发环境 实现代码 先导入所需模块 读取图片文件 读取所有源图片并计算对应颜色的平均值 合法图像列表 平均颜色列表 遍历 主函数 模块调用执行 完整效果 前言

最近有网友私信我,问如何把多张图片合成一张马赛克图片的样子

说是女儿从出生到现在,所有的照片,大概有上百张,所以想使用这些照片合成一张,当做生日礼物

那我们今天就用上次爬表情包的图片来做一次马赛克图片,2万张合成一张,想想就很激动

图片素材

4K高清原图

开发环境

Python 3.6

Pycharm

实现代码 先导入所需模块 123456 import cv2import globimport argparseimport numpy as npfrom tqdm import tqdm # 进度条from itertools import product # 迭代器 读取图片文件 12345678910 def parsArgs():parser = argparse.ArgumentParser(‘拼接马赛克图片’)parser.add_argument(‘–targetpath’, type=str, default=’examples/3.jpg’, help=’目标图像路径’)parser.add_argument(‘–outputpath’, type=str, default=’output.jpg’, help=’输出图像的路径’)parser.add_argument(‘–sourcepath’, type=str, default=’sourceimages’, help=’用来拼接图像的所有源图像文件路径’)parser.add_argument(‘–blocksize’, type=int, default=15, help=’马赛克快的大小’)args = parser.parse_args()return args 读取所有源图片并计算对应颜色平均值 12 def readSourceImages(sourcepath,blocksize):print(‘开始读取图像’) 合法图像列表

设置一个列表,存放符合要求的颜色图像

1 sourceimages = [] 平均颜色列表 1 avgcolors = [] 遍历

每遍历一次,进度条走一次

123456789101112 for path in tqdm(glob.glob(“{}/*.jpg”.format(sourcepath))):image = cv2.imread(path, cv2.IMREAD_COLOR)if image.shape[-1] != 3:continue# 缩放尺寸image = cv2.resize(image, (blocksize, blocksize))# 图像颜色平均值avgcolor = np.sum(np.sum(image, axis=0), axis=0) / (blocksize * blocksize)sourceimages.append(image)avgcolors.append(avgcolor)print(‘结束读取’)return sourceimages,np.array(avgcolors) 主函数 123456789101112131415 def main(args):targetimage = cv2.imread(args.targetpath)outputimage = np.zeros(targetimage.shape,np.uint8) # int8 int16 int32 int64sourceimages,avgcolors = readSourceImages(args.sourcepath,args.blocksize)print(‘开始制作’)for i, j in tqdm(product(range(int(targetimage.shape[1]/args.blocksize)), range(int(targetimage.shape[0]/args.blocksize)))):block = targetimage[j * args.blocksize: (j + 1) * args.blocksize, i * args.blocksize: (i + 1) * args.blocksize,:]avgcolor = np.sum(np.sum(block, axis=0), axis=0) / (args.blocksize * args.blocksize)distances = np.linalg.norm(avgcolor – avgcolors, axis=1)idx = np.argmin(distances)outputimage[j * args.blocksize: (j + 1) * args.blocksize, i * args.blocksize: (i + 1) * args.blocksize, :] = sourceimages[idx]cv2.imwrite(args.outputpath, outputimage)cv2.imshow(‘result’, outputimage)print(‘制作完成’) 模块调用执行 123 if __name__ == ‘__main__’:# runmain(parseArgs()) 完整效果

到此这篇关于Python实现多张图片合成一张马赛克图片的文章就介绍到这了

 
反对 0举报 0 评论 0
 

免责声明:本文仅代表作者个人观点,与爱美生活网(本网)无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
    本网站有部分内容均转载自其它媒体,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责,若因作品内容、知识产权、版权和其他问题,请及时提供相关证明等材料并与我们留言联系,本网站将在规定时间内给予删除等相关处理.

  • 男子为泄愤将妻子隐私视频发微信群 警方对其进行批评教育
    男子为泄愤将妻子隐私视频发微信群 警方对其进
    这个男子做法太极端了,居然为了泄愤将妻子的隐私视频,直接发到微信群,对其妻子造成了很大的影响。当其妻子看到这一幕后,已经第一时间报警处理,目前警方通报此事了,我们来了解一下!隐私 经警方调查,违法行为人段某因与妻子吴某长期异地分居,感情不合
  • 删了吧有个打工人破防了_倾听那些让打工人破防的声音,真的要被大家的发言笑死:哈哈!
    删了吧有个打工人破防了_倾听那些让打工人破防
    近日删了吧有个打工人破防了_倾听那些让打工人破防的声音,真的要被大家的发言笑死:哈哈!消息关注度非常高,想要进一步了解这方面的最新消息,小编给大家整理出有关这方面的全部内容,希望能够帮助到大家深入了解!倾听那些让打工人破防的声音,真的要被大
  • 哔哩哔哩笔记图片怎么保存_夸克怎么保存别人发的东西
    哔哩哔哩笔记图片怎么保存_夸克怎么保存别人发
    最近哔哩哔哩笔记图片怎么保存?_夸克怎么保存别人发的东西?事件在热度非常高,为大家准备了完整关于哔哩哔哩笔记图片怎么保存?_夸克怎么保存别人发的东西?事件的所有相关内容,如果大家想知道更多这方面的情况,请持续关注本站!哔哩哔哩笔记图片怎么保
    04-24
  • 车内摄像头拍色情图片是怎么回事 理想官方回应
    车内摄像头拍色情图片是怎么回事 理想官方回应
    近期网络流传理想车内摄像头拍摄色情图片,对此理想官方回应,已收到用户举报,并指出公司交付的超过70万辆汽车都不具备车内传感器远程查看、储存音频、视频或图片的功能。理想汽车在官方发文时强调公司将用户隐私放在首位,每辆汽车的行车记录仪只允许车主
  • 笑笑和小楼在一起过吗 解说小楼和谁在一起了
    笑笑和小楼在一起过吗 解说小楼和谁在一起了
    笑笑和小楼在一起过吗 解说小楼和谁在一起了?在早先的一场直播中,笑笑无意识的曝出了一些电竞圈的绯闻八卦,其中涉及了自己和小楼,五五开和UU、教练的一些事情,大嘴巴真的让人很惊喜呢?  笑笑和小楼在一起过吗  其实早在笑笑还是前IG战队队长的
  • 怎么保存快手图片
    怎么保存快手图片
    想要保存快手图片,先用手机注册快手之后登录页面,点击其中想要保存图片的视频,找到视频上方的分享按钮。点击分享之后选择“复制链接”,将复制的链接粘贴到百度浏览器中,长按图片页面后选择“保存到相册”就能保存图片。步骤1准备工具:手机、快手app
    03-26
  • qq聊天图片过期怎么恢复正常
    qq聊天图片过期怎么恢复正常
    qq聊天记录图片过期可以在电脑qq,在个人文件夹中恢复正常。qq即腾讯qq,于1999年2月上线,qq成立之初主要业务是为寻呼台建立网上寻呼系统。qq聊天图片过期恢复正常的具体操作方法如下:qq聊天图片过期怎么恢复正常1、在电脑登录qq,点
    03-26
  • 怎么搜图片上的人是谁
    怎么搜图片上的人是谁
    可以通过百度app的识图功能来搜索图片上的人是谁。搜索图片上的人的具体操作方式如下:怎么搜图片上的人是谁1、打开百度app,点击“百度”界面,再点击上方搜索栏的“照相机”符号。2、进入“拍照”界面后,点击右下角的符号,进入“照片选择”界面。
    03-26
  • 微信上的五星红旗图片怎么来的
    微信上的五星红旗图片怎么来的
    微信头像上的五星红旗图片可以通过微信小程序“制作五星红旗头像生成”来制作。具体操作方法如下:微信上的五星红旗图片怎么来的1、打开微信app,切换到“发现”页面,打开下方的“小程序”。2、点击右上方的搜索图标,输入“五星红旗头像”,点击“搜索
    03-26
  • 如何设置ppt背景图片透明度
    如何设置ppt背景图片透明度
    设置ppt背景图片透明度,首先选中背景图然后右键点击“设置背景格式”,把设置框拉到最下面查看并调整透明度,也可以输入数值更改透明度。如果只改当前幻灯片透明度点击关闭即可,如果改全部幻灯片背景的透明度,需要点击全部应用选项。设置ppt背景图片
    03-26
点击排行