在 Python 中使用 OpenCV 制作简单图像动画

? 作者主页:海拥
? 作者简介:?CSDN全栈领域优质创作者、?HDZ核心组成员
? 粉丝福利:? 粉丝群 ?每周送6-9本书,不定期送各种小礼品(往期获奖记录

直接跳到末尾 去评论区领书

在本文中,我们将讨论如何使用 python 的 OpenCV 模块为图像设置动画。

假设我们有一张图片。使用该单个图像,我们将对其进行动画处理,使其呈现为同一图像的连续阵列。这对于在某些游戏中设置背景动画很有用。例如,在一个飞扬的小鸟游戏中,为了让小鸟看起来向前移动,背景需要向后移动。为了理解这一点,让我们首先考虑一个线性 Python 列表。考虑一下下面的代码。

a = ['-', '-', '-', 1, '-', '-', '-']
n = len(a) # 数组的长度

for i in range(2*n):
	# i 是列表的索引 a i%n 将在 range(0,n) 中使用切片
	# 我们可以使数字 1 看起来像在列表中移动,这类似于循环列表
	print(a[(i % n):]+a[:(i % n)])

输出:

['-', '-', '-', 1, '-', '-', '-']
['-', '-', 1, '-', '-', '-', '-']
['-', 1, '-', '-', '-', '-', '-']
[1, '-', '-', '-', '-', '-', '-']
['-', '-', '-', '-', '-', '-', 1]
['-', '-', '-', '-', '-', 1, '-']
['-', '-', '-', '-', 1, '-', '-']
['-', '-', '-', 1, '-', '-', '-']
['-', '-', 1, '-', '-', '-', '-']
['-', 1, '-', '-', '-', '-', '-']
[1, '-', '-', '-', '-', '-', '-']
['-', '-', '-', '-', '-', '-', 1]
['-', '-', '-', '-', '-', 1, '-']
['-', '-', '-', '-', 1, '-', '-']

从上面的代码,我们可以看到数字1的位置在变化,即索引在变化。这是我们将用于水平动画图像的原则。

我们将使用NumPy 模块中的hstack()函数连接两个图像。hstack 函数将一个由数组顺序组成的元组作为参数,用于将输入数组的序列水平(即按列)堆叠以形成单个数组。

语法:

numpy.hstack((array1,array2))

示例:

import cv2
import numpy as np

img = cv2.imread('haiyong.jpg')

height, width, c = img.shape

i = 0

while True:
	i += 1
	
	# 将图像分为左右部分,就像列表连接我们将左右连接在一起
	l = img[:, :(i % width)]
	r = img[:, (i % width):]

	img1 = np.hstack((r, l))
	
	# 此函数将连接两个矩阵
	cv2.imshow('animation', img1)

	if cv2.waitKey(1) == ord('q'):
	
		# 按 q 终止循环
		cv2.destroyAllWindows()
		break

输出
在这里插入图片描述

? 评论区抽粉丝送书啦

? 欢迎大家在评论区提出意见和建议! (抽三位幸运儿送书,实物图如下)?

在这里插入图片描述

《Python自动化测试实战》

【内容简介】

本书的写作初衷是为了帮助更多功能测试人员转型自动化测试方向。在转型过程中,主流自动化测试技术和应用场景的结合是非常重要的一环。本书从自动化测试理论入手,全面地阐述自动化测试的意义及实施过程。
  全文以Python语言驱动,结合真实案例分别对主流自动化测试工具Selenium、Robot Framework、Postman、Python+Requests、Appium等进行系统讲解。通过学习本书,读者可以快速掌握主流自动化测试技术,并帮助读者丰富测试思维,提高Python编码能力。

? 注意:

大家点赞关注,三天后也就是 12月20日 从评论区留言的同学中抽取两位送书

? 面试题库:Java、Python、前端核心知识点大全和面试真题资料
? 办公用品:精品PPT模板几千套,简历模板一千多套
? 学习资料:2300套PHP建站源码,微信小程序入门资料

如果中奖了联系不上则视为放弃,可以从下方卡片里找到作者的联系方式,每周都会送6~9本书,后面送书力度还会加大,一年送几百上千本不是问题,备注【进群】领书不迷路。备注【资源】可获取上面的资料??????

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
THE END
分享
二维码
< <上一篇
下一篇>>