今天学习图像拼图,就有点像拼图游戏那样的

import cv2
import osdef cv_show_image(name, img):cv2.imshow(name, img)cv2.waitKey(0)  # 等待时间,单位是毫秒,0代表任意键终止cv2.destroyAllWindows()# 将一个文件目录下的所有图像文件都列出来
filedir = "D:/estimages/image"
files = os.listdir(filedir)
print(files)images = []
for file in files:img = cv2.imread('{}/{}'.format(filedir, file))images.append(img)print(len(images))stitcher = cv2.Stitcher.create()
status, result = stitcher.stitch(images)
if status == cv2.STITCHER_OK:print("Success!")cv_show_image("final", result)cv2.imwrite("images/final.jpg", result)
else:print("Error!")

原始的散图如下:





拼装后的图是:

效果还是不错的哈,就是运行有点慢

【opencv有趣应用】图像拼图相关推荐

  1. Python,OpenCV中的图像修复——cv2.inpaint()

    Python,OpenCV中的图像修复--cv2.inpaint 1. 效果图 2. 原理 3. 源码 参考 image inpainting 图像修改 这篇博客将介绍如何通过OpenCV中图像修复的 ...

  2. OpenCV 【十二】OpenCV如何扫描图像、利用查找表和计时

    目录 OpenCV如何扫描图像.利用查找表和计时 1.函数计算时间测试case 2. Mat图像的存储机理 3. 像素遍历的3--4种方式 4. 实例 OpenCV如何扫描图像.利用查找表和计时 如何 ...

  3. 解密 | OpenCV加载图像大小是有限制的 ?

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 问题来由 最近有人问一个问题,就是它有个大小800MB的图像文件, ...

  4. python使用openCV加载图像、并将BGR格式转换成HSV格式、定义HSV格式中需要分离颜色的掩码(掩模)区间(mask)、并使用mask信息进行颜色分离、BGR格式的图像转化为RGB、并可视化

    python使用openCV加载图像.并将BGR格式转换成HSV格式.定义HSV格式中需要分离颜色的掩码(掩模)区间(mask).并使用mask信息进行颜色分离.将BGR格式的图像转化为RGB.可视化 ...

  5. Python 把OpenCV 获取的图像传递到C

    Python 把OpenCV 获取的图像传递到C 2016年10月11日 14:47:49 阅读数:1946 用OpenCV Python来开发,如果想要用到一些C/C++的图像处理库,就需要创建Py ...

  6. openCV—Python(6)—— 图像算数与逻辑运算

    openCV-Python(6)-- 图像算数与逻辑运算 一.函数简介 1.add-图像矩阵相加 函数原型:add(src1, src2, dst=None, mask=None, dtype=Non ...

  7. opencv读取字符串图像

    原文:http://www.cnblogs.com/zhaokewei/p/6868844.html opencv读取字符串图像

  8. 使用FreeImage帮助OpenCV读出更多图像(转)

    使用FreeImage帮助OpenCV读出更多图像(转) (2014-03-20 09:21:12) 转载▼     OpenCV读图像的能力比较弱,尤其是对常见的 Tiff 支持得很差.通过研究 O ...

  9. OpenCV优化:图像的遍历4种方式

    小知识:反色 反色原理很简单,在一个rgb色彩空间中,可将任何一种颜色看成笛卡尔坐标中的一个点,对于任意点,反色就是计算以(128, 128,128)为中心时该点的对称点,比如rgb(100, 150 ...

最新文章

  1. ios 应用和电脑共享文件夹_堪比AirDrop,苹果 iPhone与Windows电脑互传文件的三种方式...
  2. QIIME 2教程. 27语义类型Semantic(2020.11)
  3. mysql插入数据die_吴裕雄 10-MySQL插入数据
  4. Gradle 之 Android 中的应用
  5. 基础理论:给定离散概率表求分布函数
  6. [转]Redhat EL5.4用CentOS源进行更新
  7. IDEA下SpringBoot项目的引用类没问题却提示:java:找不到符号:类**位置:程序包
  8. Incorrect string value: '\xF0\x90\x8D\x83...' for column 通用解决方案
  9. 怎么把一个bool数组转成char?
  10. 二、Web服务器——ServletHTTPRequest笔记
  11. 支持mysql的报表开发工具_你不知道的mysql的3W法,内附超好用的报表工具
  12. 【Elasticsearch】es 7.12 Root mapping definition has unsupported parameters: _all
  13. javascript笔记——js面试问题
  14. 工资条EXCEL短信怎么发送?
  15. 罗姆ROHM开发出内置新电路的车载LDO稳压器BD9xxN1系列
  16. 9行代码制作一个简单的油猴插件
  17. 【计算机视觉】简述对MSAA(多尺度注意力融合)的理解
  18. Android攻城狮datePicketimePicker
  19. win10 的计算机配置要求,详细教你windows10的配置要求
  20. 为什么工具类App,都要做一个社区?

热门文章

  1. VB100十月测试:360可牛凯歌高奏 金山失利瑞星缺席
  2. How Setting Show Transaction Code on SAP Tree Menu Side.
  3. 学点 C 语言(38): 函数 - 函数指针
  4. 详解vmware安装
  5. 免费在线生成工具大全
  6. 面试精讲之面试考点及大厂真题 - 分布式专栏 04 谈谈你对分布式的理解,为什么引入分布式?
  7. 使用TDengine快速搭建运维监测系统
  8. 容器编排技术 -- Kubernetes 为 Namespace 设置最小和最大内存限制
  9. MacOSX系统下HomeBrew安装指定版本的软件 IntelliJ IDEA 设置多个Go语言版本开发
  10. C语言,向函数传递一维数组,计算最高分,平均分,人数(要求输入负值时输入结束,且不能超过40人)