我们前面爬取了图片,然后将图片保存到了本地。现在我们利用这些图片做一个手势识别控制的电子相册。

当手左右滑动时切换图片。

首先导入必要的库

```python

# -*- coding:utf-8 -*-

# b.py

import pygame, sys

from pygame.locals import *

import time

```

然后编写init()函数,主要是初始化pygame和创建一个窗口

这里screen_size最好依据显示屏的最大分辨率来,通过xrandr命令查看显示屏的分辨率。

FULLSCREEN参数是占据整个屏幕的意思。

```python

def init(): # 初始化

pygame.init() # 初始化pygame

screen_size = (800, 720) # 设置窗口的大小

screen = pygame.display.set_mode(screen_size, FULLSCREEN, 32) # 设置窗口

return screen

```

我们需要捕捉一个手势识别的状态,编写一个事件函数eventCheck()

```python

def eventCheck():

for event in pygame.event.get():

if event.type in [QUIT, KEYDOWN]:

pygame.quit()

sys.exit()

```

我们要显示图片,这里编写一个显示图片的函数,为了有更好的效果,编写实现图片淡入淡出效果的函数。

```python

# 显示

def fade(screen, p, rg):

for alpha in rg:

p.set_alpha(alpha) # 改变透明度

screen.fill(0, 0, 0)

screen.blit(p, (0, 0))

pygame.display.update() # 更新屏幕显示

time.sleep(0.01)

# 淡入

def fadeIn(screen, p):

rg = range(0, 257, 4) # 透明度范围由0过渡到256,步长为4

fade(screen, p, rg)

# 淡出

def fadeOut(screen, p):

rg = range(255, 0, -4) # 透明度范围由255过渡到0,步长为4

fade(screen, p, rg)

```

编写主函数

```python

if __name__ == '__main__':

screen = init() #初始化

i = 0

while i < 30:

img = r'./photo/img_' + str(i) + r'.jpg'

p = pygame.load(img).convert() # 加载本地图片

fadeIn(p) # 淡入

time.sleep(0.5) # 每张图片显示停留0.5秒

fadeOut(p) # 淡出

i += 1

if i == 30:

i = 0

eventCheck()

```

运行b.py程序,可以看到循环播放图片。按**Ctrl + C** 就可以退出程序。

现在我们来加入手势识别函数,来控制相册图片的切换。当我们没有做出任何手势时,图片正常切换,当我们手滑动,如向左滑动时,图片切换到上一张。

我们需要将手势识别的库下载到树莓派上,见前面

模块介绍

然后在程序中导入手势识别的库

```python

import

```

python制作电子相册_电子相册 · 树莓派终极学习套件教程 · 看云相关推荐

  1. 利用python制作拼图_利用python制作拼图小游戏的全过程

    开发工具 Python版本:3.6.4 相关模块: pygame模块: 以及一些Python自带的模块 关注公众号:Python学习指南,回复"拼图"即可获取源码 环境搭建 安装P ...

  2. 怎么学python知乎_你是怎么学习Python的 ?

    大家不要看到这个文章的题目,就认为这是一篇广告软文.然而并不是,因为我看到了很多同行都被大数据.人工智能的热潮吸引了,开始纷纷学习python.这是好事,但看到了好多人都走了不少弯路,浪费了时间.于是 ...

  3. python制作计算机程序_用 Python 开发实用程序 – 计算器

    一段时间前,自己制作了一个库 "sui-math".这其实是 math 的翻版.做完后,我又想到,python 既然可以轻易的完成任何的数学计算,何不用 python 开发一个小程 ...

  4. sql数据库教程百度云_【推荐】原画教程百度云|原画师自学教程(附原画全套视频教程)...

    原标题:[推荐]原画教程百度云|原画师自学教程(附原画全套视频教程) 原画教程百度云|原画师自学教程(附原画全套视频教程)原画教程百度云|原画师自学教程(附原画全套视频教程) 关注公众号:每日学绘画, ...

  5. python电子相册制作软件_电子相册怎么做

    电子相册制作 本文来自#千兆网络有什么用#征稿活动,不断提速的网络给你的生活带来了什么变化?快来参与活动,聊聊你玩转互联网,高速网上冲浪的经历!>点击这里查看活动详情< 现在手机的拍照功能 ...

  6. python制作鬼畜_用Python分析本山大叔鬼畜视频为啥这么火

    原标题:用Python分析本山大叔鬼畜视频为啥这么火 ♚ cxa,有着丰富的爬虫工作经验,公众号Python学习开发,擅长各种爬虫技术,熟悉大规模爬虫开发.热爱并喜欢钻研python. 改革春风吹满地 ...

  7. python制作统计图_刻意练习11:Python描述统计、简单统计图形

    学习计划 MyPlan11 主题:Python描述统计.简单统计图形 时间:8.5-8.11周内完成 参考资料:新书<谁说菜鸟不会数据分析python篇> 各位星友们,在这个星球里每个人都 ...

  8. 如何用python制作动画_如何基于Python Matplotlib实现网格动画

    -1- 如果你对本文的代码感兴趣,可以去 Github (文末提供)里查看.第一次运行的时候会报一个错误(还没找到解决办法),不过只要再运行一次就正常了. 这篇文章虽然不是篇典型的数据科学类文章,不过 ...

  9. python制作界面_详解python做UI界面的方法

    详解python做UI界面的方法 更新时间:2019年02月27日 14:44:34 投稿:laozhang 在本文里我们给大家整理了关于python做UI界面的方法和具体步骤,对此有需要的朋友们可以 ...

最新文章

  1. Linux新建用户名
  2. 扎心!程序员旅行却只能紧紧抱着电脑加班?
  3. 设置 VirtualBox 虚拟机访问局域网
  4. chm帮助文档出现乱码
  5. 【Azure Show】|第三期 人工智能大咖与您分享!嘉宾陈海平胡浩陈堰平
  6. 以太网共同发明者去世,享年71岁
  7. less+rem迭代适配
  8. [记]创建常量、原子性的值类型
  9. 这些PHP考点虽然简单基础,但是很重点
  10. c语言指向读取的字节数的指针,c - C语言中指针的大小 - SO中文参考 - www.soinside.com...
  11. 计算机网络连接图标 红叉,win7系统网络连接成功但图标显示红叉的解决方法
  12. 知网html怎样转化成pdf,中国知网CAJ ASP文件转PDF教程
  13. PEST、波特五力、波士顿矩阵、SWOT、价值链等战略分析方法整理学习笔记
  14. c语言全局变量global,C语言定义共享全局变量
  15. 学嵌入式需要报培训班吗?
  16. 后端返回文件流PDF文件前端如何实现下载/在线打开
  17. 以太坊Ghost协议
  18. 新浪微博--分享到微博的简单使用
  19. 红米k30可以用鸿蒙系统吗,红米K30好用吗?Redmi K30上手评测
  20. socket编程为什么需要htons(), ntohl(), ntohs(),htons() 函数

热门文章

  1. 每周值得关注的人工智能头条:Google让我自动做AI,Julia让我学好数学
  2. 菲尼克斯模块QUINT4-DIODE/12-24DC/2X20/1X40
  3. ICT【计算机网络】学习笔记:OSI参考模型
  4. 关于举办“地理国情监测多源数据组织、整合与处理技术培训班”的通知
  5. 国际版UnityHub安装
  6. 采购订单打印并预览PDF
  7. 游戏夜读 | 什么是黑色一分钟?
  8. Bandit算法学习[网站优化]04——UCB(Upper Confidence Bound) 算法
  9. DB2报错:在对连接的底层socket执行操作期间发生通信错误
  10. 计算机里最常用的概念