图片按照张数纵向拼接

Opencv3.4SUFR纵向图像平滑拼接 这个是我做项目时用到的,平时很多网上资源没有用,都是横向拼接,这个是我改的,里面有很多算法,用了sift surf orb等,自己根据情况来选,当时搞这个,花了不少时间,含蒙层mask选择区域来找兴趣点 立即下载

利用python对图片按照张数纵向拼接

这段代码可用于制作长图的拼接,例如网上下载的漫画长图,可拼接成很长的一幅图。要求图宽度一致,长度无要求

目录结构

文件夹下
文件夹下是图片文件,不限扩展名

具体代码

#!/usr/bin/env python
# -*- coding:utf-8 -*-
# Author:BTA Huang
import os
import shutil
from PIL import Image
from PIL import ImageFile
ImageFile.LOAD_TRUNCATED_IMAGES = True

filepath='./'
resultpath='./result/'

isExists=os.path.exists(resultpath)
if isExists:
	shutil.rmtree(resultpath)#递归删除文件夹

storys=[]
for root, dirs, files in os.walk(filepath):  
	for dir in dirs:
		storys.append(dir)
print(storys) #当前路径下所有子目录文件夹名

os.mkdir(resultpath)   #创建一个result文件夹

for story in storys:
	print(story)#一个个输出文件夹名,即章节名

	path=filepath+story+'/'
	imagename=[]#建立一个文件夹下的所有文件名列表
	for files in os.listdir(path):  # 不仅仅是文件,当前目录下的文件夹也会被认为遍历到
		imagename.append(files)
	imagename.sort()
	print(imagename)

	meage_num=12#合并张数
	times=len(imagename)/meage_num
	if int(times)==times:#判断是否文件数是否会被整除,借以判断合并的批次数
		times=int(times)
	else:
		times=int(times)+1

	for time in range(times):#对一个文件夹下的列表进行切片,按照合并规格进行合并
		imagename1=imagename[(0+meage_num*time):((meage_num+meage_num*time) if time <(times-1) else None)]
		print(imagename1)

		high_size =0#高
		imageinformation = []
		for i in range(len(imagename1)):
			img = Image.open(path+imagename1[i])
			w, h = img.size[0], img.size[1]
			high_size=high_size+h
			width_size = w#宽
			imageinformation.append(Image.open(path+imagename1[i]))#获取图片详情,加入列表imageinformation
		target = Image.new('RGB',(width_size,high_size))#最终拼接的图像的大小
		# print(imageinformation)
		print(target)

		# imageinformation = []#这段是获取图片的详细信息,已在上段代码被替换
		# for root,dirs,files in os.walk(path):
		#     for f in files:
		#         imageinformation.append(Image.open(path+f))
		# print(imageinformation)

		left = 0
		right = 0#开始合并

		for image in imageinformation:
			wi, hi = image.size[0], image.size[1]
			right += hi#左下角的纵坐标也递增
			target.paste(image,(0,left,width_size,right))
			left += hi#从上往下拼接,左上角的纵坐标递增
		target.save(resultpath+story+imagename1[0][-7:-4]+'-'+imagename1[-1][-7:-4]+'.jpg',quality=100)

代码用的是PIL进行拼接,整体思路是根据合并张数,判断需要合并几次。再根据需要合并的图片文件总长度,在程序内部新建一张长为图片总长度,宽为图片宽度的长图,然后按一张张顺序黏贴到新建长图上。具体的方法说不太清楚,都有备注。

时间卷积网络(TCN):结构+pytorch代码 文章目录TCNTCN结构1-D FCN的结构因果卷积(Causal Convolutions)膨胀因果卷积(Dilated Causal Convolutions)膨胀非因果卷积(Dilated Non-Causal Convolutions)残差块结构pytorch代码讲解 TCN   TCN(Temporal Convolutional Network)是由Shaojie Bai et al.... 阅读详情

相关推荐

DC-DC 转换器中的压电谐振器:当前状态和限制

在功率转换器应用中,居里温度较低的谐振器的 k 2和 Q M显着降低会导致效率降低,需要仔细的热处理。由于使用 PR 的功率转换器在不同的条件下运行,包括温度范围、电压偏置和功率电平,因此不可避免地会出现非线性效应,必须妥善解决这一问题,以免影响转换器的性能。等效电路模型(Butterworth Van-Dyke 或 BVD 模型)将压电谐振器在其机械谐振附近的电响应转换为一个简单电路,该电路由与由电极形成的输入电容 C 0并联的串联 RLC 动分支组成,见图图 1 还显示了阻抗与频率的关系。

2301_79716471的博客 1295

python 多张图片进行横向与纵向的无损拼接,适用于图片宽高差不多的图片

python 进行横向与纵向的图片拼接,适用图片宽高差不多的图片

weixin_50624398的博客 1979

三相电机控制入门:端电压、相电压、线电压到底怎么测?(附实测波形对比)

本文为三相电机控制初学者提供了端电压、相电压和线电压的完整测量指南。通过厘清三者的物理定义与测量方法,详细讲解了如何搭建虚拟星形点电路,并对比分析了方波、SPWM和SVPWM三种主流控制模式下关键电压波形的核心特征与差异,帮助工程师掌握正确的示波器测量与波形解读技巧。

oauth7security的博客 648

OpenCV-图像拼接(横向拼接&纵向拼接)

结合OpenCV写了一个图像拼接的函数,包括纵向和横向

翟天保的博客 1万+

易智联LM401模块学习(一)——初识Lora

Lora

weixin_46046597的博客 1054

WSL2安装(详细过程)

适用于 Linux 的 windows 子系统允许开发人员直接在 Windows 上运行 GNU/Linux 环境 -- 包括大多数命令行工具、实用程序和应用程序,无需修改,而无需传统虚拟机或dualbot设置的开销。

qq_43636384的博客 3万+

YUV图像拼接

这里写自定义目录标题YUV图像拼接 YUV图像拼接 最近工作不是特别忙,趁闲暇时间写写简单的代码,看到同事显示器上的四窗格测试界面,就想写段代码实现一下这个图像的拼接功能。目前开发用的摄像头原始图像都是YUV420sp格式的,那就从YUV图像开始吧。 YUV是一种颜色编码格式,它的 Y (亮度)和 UV(色度)是分离的,并且在内存中是连续存储的。比如下图的 4 × 2 图像,以YUV420sp的格...

s151140124的博客 4774

机器学习之支持向量机SVM及代码示例

一、线性可分SVMSVM算法最初是用来处理二分类问题的,是一种有监督学习的分类算法。对于线性可分的二分类问题,我们可以找到无穷多个超平面,将两类样本进行区分。(超平面:一维中是一个点;二维中是一条线;三维中是一个面……)在上面的多个超平面中,它们都可以成功将样本集划分两边,但哪一个超平面更好?一般来说,当样本点离超平面越近,样本的标签为某类型的概率应该为0.5左右,确信度比较低,而样本点离超平面越远

cxmscb的博客 5万+

Python Image实现图片横向和纵向拼接

直接上代码: # -*- coding:utf-8 -*- __author__ = 'ShawDa' from PIL import Image def join(png1, png2, flag='horizontal'): """ :param png1: path :param png2: path :param flag: horizontal o...

ShawDa's Blog 8037

STM32CubeMX之SDIO+FatFS读写SD卡

“SD卡/TF卡的读写是嵌入式系统中常用的功能。而SD卡的本质是一种flash存储器,通过单片机可以直接读写,但若要被电脑识别,则需要文件系统的支持。本篇文章主要介绍通过单片机的SDIO...

zhang062061的专栏 1897

ThingsBoard教程(十六):RPC部件的使用

前言 各位读者好,截止目前,ThingsBoard系列文章已经做了十篇,分别是 ThingsBoard教程(一):ThingBoard介绍及安装 ThingsBoard教程(二):租户,租户配置,部件组模块的使用 ThingsBoard教程(三):系统设置模块的使用 ThingsBoard教程(四):规则链简介与操作 ThingsBoard教程(五):客户,资产管理 ThingsBoard教程(六):设备管理 ThingsBoard教程(七):模拟设备遥测 ThingsBoard教程(八):自定义UI T

知无涯 4577

Java横向、纵向合并图片

进行图片对比时候想把两张有差异的图片放到一起,方便人工查看下,在网上搜了一些,有纵向合并的。 将纵向合并的自己调整了下,源码如下:   import java.io.File; import java.awt.image.BufferedImage; import javax.imageio.ImageIO; public class TestPic { public stati

杨名天吓 2949

基于 Matlab 的亚像素边缘检测算法:Zernike 矩

Zernike 矩是一种基于正交多项式的特征提取算法,可以用于分析和描述数字图像中的形状和结构。Zernike 矩可以描述图像在不同方向、不同比例和旋转角度下的变化情况,因此具有很好的不变性和鲁棒性。在基于 Zernike 矩的亚像素边缘检测算法中,我们首先需要将原始图像转换为极坐标系下的图像。然后,对每个像素点,计算其在不同方向下的一阶导数和二阶导数,并将其转换为极坐标系下的形式。其中,“n”表示次数,“m”表示阶数,“rho”和“theta”分别表示极坐标系下的半径和角度。% 转换为极坐标系下的形式。

2301_79325339的博客 982

音视频原理

介绍音视频基础知识

weixin_43989195的博客 314

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

基于HarmonyOS API 24闲置交易应用深度剖析:可选链 CATEGORY_CONFIG[c]?.icon 和空值合并 ?? ‘#7B61FF‘,代码会优雅地降级到默认值,而不是抛出运行时错误

在移动互联网高速发展的今天,烹饪类应用已经成为许多人日常生活中不可或缺的工具。无论是厨房新手想要学习基本的家常菜,还是资深美食爱好者希望挑战高难度料理,一款优秀的菜谱教学应用都能为用户提供系统化、可视化的烹饪指导。本文将要深度解析的"美味厨房"应用,正是一款基于 HarmonyOS ArkTS 框架开发的菜谱教学类移动应用。它不仅仅是一个简单的菜谱列表展示工具,而是一个集成了今日推荐、菜谱库浏览、食材管理、学习进度追踪和个人中心等五大核心模块的综合性烹饪学习平台。通过精心设计的用户界面和丰富的交互功能,这款

2302_79499487的博客 88

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

Python将两张图片按横向或纵向拼接成一张图片

文章目录前言代码效果展示总结 前言 两张图片无缝拼接。 代码 主要应用PIL库中的Image类,new方法创建image对象,再用paste方法拼接图片。 代码如下: from PIL import Image def pic_joint(path1, path2, flag='horizontal'): """ :param path1: path :param path2: path :param flag: horizontal or vertical

主要更新底层视觉(去噪、超分等)相关的科研内容,形式为【论文精读】+【论文复现】 19万+

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

Python 把图片横向/纵向拼接

两张图片拼接 import numpy as np from PIL import Image img = Image.open('test.jpg') # 打开图片 im = np.array(img) # 转化为ndarray对象 im1 = np.concatenate((im, im), axis = 0) # 纵向拼接 im2 = np.concatenate((im, ...

LP的博客 1万+

2个YUV视频 拼接技术

/************************************************* * 主要功能:两路 YUV4:2:0拼接一路左右半宽格式YUV视频 参考资料:http://www.pudn.com/downloads271/sourcecode/multimedia/vfw/detail1237363.html U_size=V_size=Y_size/2 *****

huahuahailang的专栏 4296

2个YUV视频拼接技术

http://blog.youkuaiyun.com/huahuahailang/article/details/9040847 2个YUV视频拼接技术 http://zhongcong386.blog.163.com/blog/static/134727804201352610301922/ YUV420视频上面添加字幕 https://my.oschina.net/zhuanghaoren/blog/...

weixin_34130269的博客 378

将两张图进行垂直合并-BufferedImage

1、第一张图片-风景图片 2、第二张图片-文字图片 3、两张合并的结果 注意:第一张和第二张图片长和宽要相同。2.第二张图片除了文字都是透明的。 代码: package com.bglemon.blue.elephant; /** * @description: 两张图片进行合并 * 该类实现了图片的合并功能,可以选择水平合并或者垂直合并。 * 当然此例只是针对两个图片的合并,如果想要实现多个图片的合并,只需要自己实现方法 BufferedImage * ...

qq_30346433的博客 1118

java 合并图片:将多个图片竖向合并在一起

java 合并图片:将多个图片竖向合并在一起 将宽度相同的图片,竖向追加在一起 ##注意:宽度必须相同

ymark 9775

vue canvas拼接图片(纵向)

vue 图片竖向拼接组件代码 <template> <div> <div> <input type="file" id="upFile" @change="upFile($event)" accept="image/*" multiple="multiple" style="display:none" /> <l

手动滑稽你爸爸 1378

Python-图片同时横向纵向拼接

import os from PIL import Image UNIT_SIZE = 220 # the size of image save_path = '/root/group-dia/zxb/Code-/lip-CycleGAN-and-pix2pix-master/checkpoints/lip_cyclegan_6.0/web/result/out' path = "/root/gr...

LemonTree_Summer的博客 1387

python实现两张图片横向和纵向拼接

本文实例为大家分享了python实现图片横向和纵向拼接的具体代码, 这里主要用Python扩展库pillow中Image对象的paste()方法把两张图片拼接起来供大家参考,具体内容如下: 一、代码: from PIL import Image def join(png1, png2, flag='horizontal'): """ :param png1: path :param png2: path :param flag: horizontal or ver

采菊东篱下,Python满乾坤! 4457

CImage实现多张图像水平竖直拼接

if (strCmd == _T("水平拼图")) { //50张1000*1640的图像水平拼接 CImage *pImg = new CImage; pImg->Create(1000*50, 1640, 8,0); RGBQUAD* ColorTable; int MaxColors = 256; ColorTable = new RGBQUAD[MaxColors]...

潮湿的桥 1271

Python拼接图片

最近在写一篇卷积神经网络的论文,有好多实验结果需要整理,本来是用美图秀秀进行图像的拼接,但是发现重复操作太多,而且拼接效果不好,想到用python写个脚本实现,看一个简单的例子: 横向拼接 首先我需要将同一张图片的变形拼接为一行,代码如下: import os from PIL import ImageUNIT_SIZE = 229 # 单个图像的大小为229*229 TARGET_WIDTH =

I'm zm 3万+
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值