openCV制作九宫格图片

我想将任意九张图片按照九宫格排列方式合并成一张大图,使用openCV实现。
如果用画图工具来实现的话,需要事先准备一个600 X 600像素的画布。用openCV实现也是同理,准备一张600 X 600的图片。然后将图片划分成9份,每一份替换成小图片。九张小图片的大小相同,都是200 X 200像素。

import numpy as np
import cv2 as cv
import matplotlib.pyplot as pltif __name__ == '__main__':img = cv.imread("C:/Users/zhour/Downloads/jiasu.png", cv.IMREAD_UNCHANGED)img2 = cv.imread("C:/Users/zhour/Downloads/qianbao.png", cv.IMREAD_UNCHANGED)img3 = cv.imread("C:/Users/zhour/Downloads/luyin.png", cv.IMREAD_UNCHANGED)img4 = cv.imread("C:/Users/zhour/Downloads/kaipiao.png", cv.IMREAD_UNCHANGED)img5 = cv.imread("C:/Users/zhour/Downloads/anli.png", cv.IMREAD_UNCHANGED)img6 = cv.imread("C:/Users/zhour/Downloads/shangchuan.png", cv.IMREAD_UNCHANGED)img7 = cv.imread("C:/Users/zhour/Downloads/qingchu.png", cv.IMREAD_UNCHANGED)img8 = cv.imread("C:/Users/zhour/Downloads/fenlei.png", cv.IMREAD_UNCHANGED)img9 = cv.imread("C:/Users/zhour/Downloads/chaxun.png", cv.IMREAD_UNCHANGED)merge=cv.imread("C:/Users/zhour/Pictures/merge.png", cv.IMREAD_UNCHANGED)row1,col1,channel1=img.shaperow2,col2,channel2=img2.shaperow3,col3,channel3=img3.shaperow4,col4,channel4=img4.shaperow5,col5,channel5=img5.shaperow6,col6,channel6=img6.shaperow7,col7,channel7=img7.shaperow8,col8,channel8=img8.shaperow9,col9,channel9=img9.shapefor i in range(row1):for j in range(col1):merge[i,j]=img[i,j]for i in range(row2):for j in range(col2):merge[i,col1+j]=img2[i,j] for i in range(row3):for j in range(col3):merge[i,col1+col2+j]=img3[i,j]   for i in range(row4):for j in range(col4):merge[row1+i,j]=img4[i,j]   for i in range(row5):for j in range(col5):merge[row1+i,col1+j]=img5[i,j]    for i in range(row6):for j in range(col6):merge[row1+i,col1+col2+j]=img6[i,j]   for i in range(row7):for j in range(col7):merge[row1+row2+i,j]=img7[i,j] for i in range(row8):for j in range(col8):merge[row1+row2+i,col1+j]=img8[i,j]for i in range(row9):for j in range(col9):merge[row1+row2+i,col1+col2+j]=img9[i,j]                                                                    cv.imwrite("C:/Users/zhour/Pictures/merge2.png",merge)                                 #plt.imshow(merge)#plt.show()                

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/736766.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

《Ubuntu20.04环境下的ROS进阶学习0》

一、逛ROS应用商店 在上一专栏http://t.csdnimg.cn/oGlcu,我们了解了ROS的基本功能。这一专栏将会在此基础上做出进一步拓展学习。那么首先我们要学会下载并阅读别人的代码。常用的两个应用商店一个是ROS的官方应用商店ROS index,另一个就是我们熟知的gi…

11---数字温度 OR 湿度传感器电路设计

视频链接 数字温度or湿度传感器电路设计02_哔哩哔哩_bilibili 数字温度 OR 湿度传感器电路设计 1、温湿度传感器 DHT11 DHT11是一款有已校准数字信号输出的温湿度传感器。 其精度湿度-5%RH, 温度-2℃,量程湿度20-90%RH, 温度0~50℃。 D…

MySQL临时表创建出错(OS errno 13 - Permission denied)

一个客户向我抱怨:在MySQL查询小表没有问题,查询大表出错,下面是他发给我的出错的部分截屏(客户的表名被我隐藏了)。 这里的给出的信息已经比较明显了,是向/tmp目录中创建临时表失败(临时表的路…

【嵌入式——QT】Splash与登录窗口

一般的大型应用程序在启动时会显示一个启动画面,即Splash窗口,Splash窗口是一个无边对话框,一般显示一个图片,展示软件信息,Splash窗口显示时,程序在后台做一些比较耗时的启动准备工作,Splash窗…

《腾讯音乐》24校招Java后端一面面经

1.手写LRU 2.项目拷打 3.Https客户端校验证书的细节? 4.对称加密和非对称加密的区别?你分别了解哪些算法? 5.在信息传输过程中,Https用的是对称加密还是非对称加密? 6.怎么防止下载的文件被劫持和篡改? 7.H…

linux进程间通信-信号量

Linux c/c之IPC进程间通信 Linux - 进程间通信之信号量

Websocket在Asp.net webApi(.net framework)上的应用

之前在写看板部分的web api的时候,都是通过Ajax在规定时间内轮询调用web api,这样简单省事,但是当看板多了(并发量上来)以后,比较消耗服务器的性能,所以最近研究了websocket,希望使用…

【机器学习】决策树系统 | 决策树基本原理,最优划分属性,剪枝处理

文章目录 1 基本原理2 最优划分属性选择2.1 信息增益选择最优属性方法2.2 信息增益率选择最优属性方法——C4.5决策树2.3 基尼指数选择最优属性——CART决策树 3 剪枝处理3.1 预剪枝3.2 后剪枝 决策树是一种常用的机器学习算法,它模拟了人类决策过程中的思考方式。想…

【CSS面试题】外边距折叠的原因和解决

参考文章 什么时候出现外边距塌陷 外边距塌陷,也叫外边距折叠,在普通文档流中,在垂直方向上的2个或多个相邻的块级元素(父子或者兄弟)外边距合并成一个外边距的现象,不过只有上下外边距才会有塌陷&#x…

OpenCV学习笔记 使用OpenCV进行人脸交换

一、简述 首先说换脸这件事情,已经可以算是有一丢丢古老的技术了,基于OpenCV进行人脸交换的好处在于简单,坏处在于无法复刻表情。如果想要比较完美的可以去找deepfakes相关技术,如果想要对脸部进行一些自定义操作,那么了解OpenCV换脸涉及到的技术点还是有价值的。 基于Ope…

每日一题——LeetCode1668.最大重复字符串

方法一 includes()repeat()秒了 使用repeat()将word重复i次&#xff0c;看是否包含于sequence中&#xff0c;将最大的i赋值给k var maxRepeating function(sequence, word) {let k0for(let i1;i*word.length<sequence.length;i){if(sequence.includes(word.repeat(i))){k…

Python从0到100(三):Python中的变量介绍

前言&#xff1a; 零基础学Python&#xff1a;Python从0到100最新最全教程。 想做这件事情很久了&#xff0c;这次我更新了自己所写过的所有博客&#xff0c;汇集成了Python从0到100&#xff0c;共一百节课&#xff0c;帮助大家一个月时间里从零基础到学习Python基础语法、Pyth…

CleanMyMac X4.15具有哪些功能和特点?

CleanMyMac X具有许多其他功能和特点&#xff0c;以下是一些主要亮点&#xff1a; 系统清理&#xff1a;它能够深入扫描macOS系统&#xff0c;识别并清除各种垃圾文件&#xff0c;如缓存、日志、无用的语言文件等。这不仅有助于释放硬盘空间&#xff0c;还可以提高系统的整体性…

【硬件工程师面经整理27_其它】

文章目录 1 片选空间2 嵌入式系统的地址空间3 对x86架构有多少了解?4 存储中有哪几个重要的参数&#xff1f;5 提升代码效率和稳定性的方法 1 片选空间 片选空间&#xff08;Chip Select Space&#xff09;是指在嵌入式系统中&#xff0c;由多个设备共享的地址空间&#xff0…

基于51单片机超声波测距

目录 摘 要 2 ABSTRACT 3 目 录 4 1 绪论 1 1 概述 12 国内外发展现状 1 2 系统总体方案设计 21 设计要求 2 1&#xff09;可进行距离测量。 2 2&#xff09; 采用数码管显示距离数据。 2 3&#xff09; 可按键设置距离门限值 2 4&#xff09; 具有报警功能 22 方案选择 2 1 …

【C#语言入门】16. 委托详解

【C#语言入门】16. 委托详解 一、什么是委托 委托&#xff08;delegate&#xff09;是函数指针的“升级版”一切皆地址 变量&#xff08;数据&#xff09;是以某个地址为起点的一段内存中所储存的值函数&#xff08;算法&#xff09;是以某个地址为起点的一段内存中所存储的一…

Python开源项目周排行 2024年第5周

Python 趋势周报&#xff0c;按周浏览往期 GitHub,Gitee 等最热门的Python开源项目&#xff0c;入选的项目主要参考GitHub Trending,部分参考了Gitee和其他。排名不分先后&#xff0c;都是当周相对热门的项目。 入选公式&#xff1d;70%GitHub Trending20%Gitee10%其他 关注微…

分治算法相关

分治算法&#xff08;Divide and Conquer&#xff09; 是一种解决问题的算法思想&#xff0c;它将一个大问题分解成若干个规模较小的子问题&#xff0c;然后分别解决每个子问题&#xff0c;最后将子问题的解合并成原问题的解。 以下是分治算法的一些相关知识点&#xff1a; …

杠杆和保证金关系,很简单,众汇一个表格解决

很多投资者都能一眼就可以理清杠杆和保证金的关系&#xff0c;但是众汇外汇也看到很多交易届的新手&#xff0c;有时还浪费精力在杠杆和保证金的关系上&#xff0c;白白损失了许多盈利的机会&#xff0c;其实很简单&#xff0c;今天众汇就一个表格解决这个问题。 在使用表格之…

nacos安装与启动

下载nacos 选择Nacos 版本的原因主要是参考了官方的版本说明&#xff1a; 下载完毕后&#xff0c;会得到一个名称为nacos-server-xx.zip的文件&#xff0c;解压缩后的目录结构如下。 bin&#xff1a;存放启动和关闭Nacos Server的脚本文件。conf&#xff1a;Nacos Server的配…