# Standard imports
import cv2
import numpy as np
import os
import matplotlib.pyplot as plt
# Read images
#准备拼接的图
input_dir='./cai_jian'#拼接图的文件夹
dst = cv2.imread("./yuan_tu/0.jpg")#被拼接的图
# Create a rough mask around the airplane.
#src_mask = np.zeros(src.shape, src.dtype)
# 当然我们比较懒得话,就不需要下面两行,只是效果差一点。
for filename in os.listdir(input_dir):path=input_dir+'/'+filenamesrc = cv2.imread(path)sp= src.shapeh=sp[0]#高w=sp[1]#宽print(filename,w, h)if h>w:max=hmin=welse:max=wmin=hprint(max)if max<180:src_mask = 255 * np.ones(src.shape, src.dtype) #<-- 全白#poly = np.array([ [4,80], [30,54], [151,63], [254,37], [298,90], [272,134], [43,122] ], np.int32)#cv2.fillPoly(src_mask, [poly], (255, 255, 255))# 这是CENTER 所在的地方center = (90,90)# Clone seamlessly.output = cv2.seamlessClone(src, dst, src_mask, center, cv2.NORMAL_CLONE)# 保存结果cv2.imwrite("./pin_jie/"+filename, output)else:scale=180/maxsrc1=cv2.resize(src,(int(w * scale), int(h * scale)))#plt.subplot(2, 2, 1),plt.imshow(src)#plt.subplot(2, 2, 2),plt.imshow(src1)plt.show()src_mask = 255 * np.ones(src1.shape, src1.dtype)  # <-- 全白# poly = np.array([ [4,80], [30,54], [151,63], [254,37], [298,90], [272,134], [43,122] ], np.int32)# cv2.fillPoly(src_mask, [poly], (255, 255, 255))# 这是准备拼接图所在的中心位置center = (90, 90)# Clone seamlessly.output = cv2.seamlessClone(src1, dst, src_mask, center, cv2.NORMAL_CLONE)# 保存结果cv2.imwrite("./pin_jie/" + filename, output)

效果:
原图:

拼接图:

拼接后:

这里被拼接的尺寸是180*180的,如果拼接图尺寸比这个大,需要根据相应程序中的代码去挑合适的比例进行缩放。
参考

python实现将一幅图拼接到另一幅图上相关推荐

  1. python绘图subplot绘制5幅图:以2行绘制,首行3幅图,次行2幅图居中(内含绘制3幅图简单版)

    文章目录 省时版本解决方法 遇到的问题 解决方法 参考 省时版本解决方法 请使用matplotlib.gridspec import matplotlib import matplotlib.pypl ...

  2. maltab-图像拼接(左右两幅图)

    maltab-图像拼接(左右两幅图) 图像拼接 参考自 https://blog.csdn.net/m0_37565736/article/details/79865990 并修改了其中错误的地方,添 ...

  3. Python自动化办公--长图拼接,视频合并

    Python自动化办公–长图拼接,视频合并 点击访问我的博客系统,了解更多有趣内容哦

  4. python多图拼接并利用resnet提取特征

    代码功能: 1.将多张图拼接成一张大图: 2.基于resnet提取大图的特征. import torch import torch.nn as nn from torchvision import m ...

  5. Python 多图拼接,多图转PDF,一气呵成

    对于一些零散的图片,想要把它们给拼接起来,有时候呢,再把它转化为PDF格式可能会更方便一点,那么接下来讲的可能就会派上用场. 没错,如标题所说,就一个库,PIL,就能实现这些功能[完整代码在文章最后] ...

  6. opencv Stitcher多图拼接

    Opencv使用Stitcher类图像拼接生成全景图像 Opencv中自带的Stitcher类可以实现全景图像,效果不错.下边的例子是Opencv Samples中的stitching.cpp的简化, ...

  7. 利用 python 实现多张图片的无损拼接

    利用 python 实现多张图片的无损拼接 以下两段是作者的心路历程,图个乐的可以看一看,想学干货可以直接略过. 导入 python 库 查看需要拼接的图片 横向拼接 保存拼接后的图片 总结 纵向拼接 ...

  8. Python 把几张图片拼接成一张图片,并且写上文字

    把几张图片从上到下拼接成一张图片,并且写上文字 # 要拼接的图片名称是1,2,3...这样有顺序的 # 把当前目录下的所有图片从上到下拼接成一张图片 # 该图片的宽度是图片中最宽图片的宽度 # 不改变 ...

  9. android 照片拼接长图_长图拼接app下载 长图拼接制作 for Android v2.6.1 安卓版 下载-脚本之家...

    长图拼接制作app是一款操作很方便的长截图拼接软件.长图拼接app能够支持对截图进行裁剪和编辑,长图拼接制作app还有多种拼接模板和框架供大家选择,有需要的用户赶快下载体验吧! 软件介绍 长图拼接制作 ...

最新文章

  1. java common http_httpClient和common-httpclient的区别
  2. Oracle计算两个整数的和与这两个整数的差与商
  3. 全网最全!2021最新常用肿瘤生信数据库收藏级汇总!
  4. 程序员的10条黄金法则,你懂?
  5. python excel模板 插件_python脚本——自动推送txt,EXCEL等文件模板
  6. themyleaf 图片上传_javaEE --springboot #实现图片上传和回显 #单文件上传 #多文件上传 #ajax异步文件上传 (非常详细,从创建项目开始)...
  7. abap 帮助文档 中文_谷歌的软件工程 读书笔记(十)文档
  8. 【构造】构造一个字符串满足k个子序列问题总结
  9. 爬虫项目#4567电影网scrapy数据爬取moviePro/持久化储存handReqPro
  10. 文件一键上传、汉字转拼音、excel文件上传下载功能模块的实现
  11. 你相信吗?这是210万“像素”人工画成的肖像_-Chaz-_新浪博客
  12. GMT和CST时间区别
  13. 【seaborn】jointplot 改变图片长宽比,非方形
  14. 每日英语:Japan Leader Warns China on Islands Dispute
  15. 大数据学习之一——Hadoop单机部署
  16. CENTOS上的网络安全工具(十二)走向Hadoop(4) Hadoop 集群搭建
  17. 2021年小红书KOL营销白皮书
  18. sql 一张表递归_查看我的递归视觉指南(因为一张图片价值1,000字)
  19. 【技术邻】CAE工程师崩溃的10个瞬间
  20. klee-2.1安装(按照这个博客,闭着眼都能成功!)

热门文章

  1. c学前儿童语言教育试卷,电大专科学前教育《学前儿童语言教育》试题及答案3[2]...
  2. 黑马程序员JAVA高新技术(一)
  3. oracle db中,某一种数据字典pct miss的计算公式
  4. 表单类型、多媒体与CSS初始
  5. 微信公众号页面调用微信扫一扫
  6. java 线程回收_JAVA线程池资源回收的问题
  7. Route map应用策略路由(上)
  8. 已解决NameError: name ‘reload‘ is not defined
  9. 自考 02326 操作系统 简答题、综合题分类汇总解析
  10. electron的win.restore()无效