首先测试摄像头保证能顺利拍照 raspistill -o a.jpg

安装flask sudo pip install flask

确认无误之后向下进行。

文件夹结构:

CapPic
----static
>a.jpg
----templates
>index.html
----main.py

原理:利用flask搭建一个网页,利用python的os库函数执行raspistill命令进行拍照,并显示出来。其中点击"get a picture"会跳转到on页面进行自动拍照。

代码:

//写的巨丑

<!DOCTYPE html>
<!-- saved from url=(0021)http://192.168.2.202/ -->
<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Show Picture</title>
<style type="text/css">
body{
background: #ccc;
}
div {
width: 150px;
border: 2px solid black;
padding: 5px;
margin: 5px; font-size: 20px;
font-weight: bold;
background-color: #ccc;
}
div a{
text-decoration: none;
color: #000;
}
</style>
</head>
<body>
<div >
<a href="/on">get a picture</a>
</div>
<img src="static/a.jpg" width="50%" height="auto">
</body>
</html>

index.html

from flask import Flask,render_template
import os
app = Flask(__name__) @app.route('/')
def hello_world():
#return 'Hello World!'
return render_template('index.html') @app.route('/on')
def get_pic():
os.system("raspistill -o a.jpg")
os.system("mv a.jpg static")
return render_template('index.html') if __name__ == '__main__':
app.run(host='0.0.0.0',port=80)

main.py

运行:

执行 sudo python main.py

浏览器访问 本机IP:80,局域网内的设备均可。

备注:

1. flask 的app.run填0.0.0.0,不然只有树莓派本身能访问,其他设备不同访问网页

2. 静态文件必须放在 static 文件夹中,例如图片、CSS

参考链接:

1. https://www.cnblogs.com/ttssrs/p/4890635.html

2. https://blog.csdn.net/weixin_40929147/article/details/83795154

web控制树莓派摄像头的更多相关文章

  1. 简单的实现树莓派的WEB控制

    最终效果如图: 用到的知识:Python Bottle HTML Javascript JQuery Bootstrap AJAX 当然还有 linux 我去,这么多--我还是一点一点说起吧-- 先贴 ...

  2. C#控制树莓派入门

    何为树莓派 许久没有写博客了,十二月份西安疫情的影响,居家隔离了一个多月,在其期间,学习了一下树莓派,觉得硬件还是挺有意思的,刚好也看到了巨硬有提供使用c#用来开发树莓派应用的解决方案叫Net Iot ...

  3. 使用opencv去操作树莓派摄像头保存图片和视频

    利用树莓派的摄像头去学习opencv的基本操作 —— 保存图片和视频 1.使用Opencv去控制树莓派的摄像头拍照并保存到本地,主要使用cv2和numpy库 #!/usr/bin/python3 # ...

  4. 基于boa服务器的web控制mini2440的GPIO口

    win7 系统  虚拟机:ubuntu12.04 开发板:mini2440 上一篇已经详细的讲解了如何配置boa服务器,在这里我们就要利用boa服务器带来的便利,利用web控制开发板上的GIPO口,这 ...

  5. node 控制 树莓派做的天气闹钟

    node 控制 树莓派做的天气闹钟 在成都上班,下雨天堵车,迟到的概率会很大. 正好手上有一块树莓派 ,做了一个晴雨闹钟. 下雨天 早上 7:00叫我起床 晴天 早上 7:30叫我起床 将自己喜欢的歌 ...

  6. 树莓派3中没有/dev/video0的解决方法(使用OpenCV编程调用树莓派摄像头的方法)

    一.问题 使用下列方法调用OpenCV编程调用树莓派摄像头时总是失败,提示调用Grabber的start()时失败. import org.bytedeco.javacpp.opencv_core; ...

  7. 云中树莓派(3):通过 AWS IoT 控制树莓派上的 Led

    云中树莓派(1):环境准备 云中树莓派(2):将传感器数据上传到AWS IoT 并利用Kibana进行展示 云中树莓派(3):通过 AWS IoT 控制树莓派上的Led 云中树莓派(4):利用声音传感 ...

  8. 树莓派进阶之路 (023) - Windows下用串行连接控制树莓派(转)

    转载:http://shumeipai.nxez.com/2014/05/04/under-windows-serial-connection-control-raspberry-pi.html 在没 ...

  9. (13)使用python+flask实现树莓派的WEB控制

    https://blog.csdn.net/qq_34803821/article/details/86240096 如果你想在网页上点击按钮,并且让树莓派接收到响应,并做响应的处理,实现网页上与树莓 ...

随机推荐

  1. 家用环境下部署wifidog认证服务器(java版)

    本文所讲的是基于一个java版wifidog认证服务器的开源项目,在windows环境下搭建wifidog认证服务器配合apfree固件实现用户名密码的认证. 大致步骤如下: 一,准备 1.搭建硬件及 ...

  2. HTML连载25-通配符选择器&选择器综合练习

    一.通配符选择器 作用:给当前页面上所有的标签设置属性 (2)格式: *{属性:值:} (3)注意点:由于通配符选择器是给界面上所有的标签设置属性,因此在设置之前会遍历所有的标签,如果当前界面上的标签 ...

  3. 快速认识springcloud微服务

    这周浅显的学习了springcloud.简单聊一下微服务.所谓的微服务远远没有我想想的那么高端难以理解,简单说,就是多个服务分布在不同的服务器上,由这些服务互相配合完成某一项任务.那服务和服务之间调用 ...

  4. github clone加速

    1. 在https://asm.ca.com/zh_cn/ping.php 网址中查询 github.global.ssl.fastly.net 及 github.com 的 china地区 avr ...

  5. border和outline的区别

    如果有一个需求,给一个元素增加一条边框,想必大家会习惯且娴熟的使用border来实现,我也是这样   但其实outline也能达到同样的效果,并且在有些场景下会更适用,比如下面的demo 使用bord ...

  6. Mysql相关问题-----1045 Access denied for user 'root'@'localhost' (using password: YES)报错

    MySQL 连接错误,使用Navicat连接MySQL出现错误:1045 Access denied for user 'root'@'localhost' (using password: YES) ...

  7. Python - 获取本机IP地址、Mac地址

    Python - 获取本机IP地址.Mac地址 在python中获取ip地址和在php中有很大不同,在php中往往比较简单.那再python中怎么做呢? 直接看代码: # Python - 获取本机I ...

  8. Python简单的get和post请求

    1.json 模块提供了一种很简单的方式来编码和解码JSON数据. 其中两个主要的函数是 json.dumps() 和 json.loads() , 要比其他序列化函数库如pickle的接口少得多. ...

  9. vue实现word,pdf文件的导出功能

    vue实现word或pdf文档导出的功能,我的项目是:后端返回一个文档流(下图),然后前端对文档流做处理进行下载,代码如下: import axios from 'axios'; axios.get( ...

  10. maven 学习---使用Maven模板创建项目

    在本教程中,我们将向你展示如何使用mvn archetype:generate从现有的Maven模板列表中生成项目.在Maven 3.3.3,有超过1000+个模板,Maven 团队已经过滤掉一些无用 ...