https://picamera.readthedocs.io/en/release-1.13/index.html
## 将摄像头连接到树莓派上
关闭树莓派后,将相机模块连接到树莓派的“**CAMERA**”接口。
轻轻向上拉“CAMERA”接口的塑料夹边缘,然后推入摄像头色带,最后将塑料夹推回原位。
## 在raspi-config中使能摄像头
启动树莓派,打开终端,在树莓派终端中输入下面命令,以打开Raspberry Pi配置工具。
```
sudo raspi-config
```
移动到“**Interfacing Options**”,按下回车键。然后选择“**Camera**”,按下回车键。
<div align="center"><img src="images/screenshot_1559782375623.png"/></div>
选择“**Enable**”,然后回车。
<div align="center"><img src="images/screenshot_1559782435569.png"/></div>
## 测试摄像头是否可用
在终端中输入命令:
```
raspistill -o test.jpg -t 3000
```
延时3秒拍摄一张静态图片,并命名为test.jpg
## 相机预览
新建一个文件
```python
sudo nano camera.py
```
输入以下代码:
```python
from picamera import PiCamera
from time import sleep
camera = PiCamera() #获取一个PiCamera对象
camera.start_preview() #打开摄像头进行预览
sleep(10) #暂停10秒,即预览10秒
camera.stop_preview() #关闭预览
```
然后“**Ctrl + X**”后,按“**Y**”保存退出。
终端输入命令,以运行“camera\.py”文件:
```python
python camera.py
```
如果图像是颠倒的,可以在“camera.start_preview()”前添加以下代码来旋转它:
```python
camera.rotation = 180
```
可以按90,180或270度来旋转图像,也可以将其设置0来重置它。
可以通过设置Alpha级别来更改相机预览的透明度:
```python
camera.start_preview(alpha = 200)
```
alpha可以是0到255之间的值。
## 拍摄图片
修改代码
```python
camera.start_preview()
sleep(5)
camera.capture('/home/pi/Desktop/image.jpg')
camera.stop_preview()
```
运行代码,相机预览打开5秒钟,预览会立即调整到不同的分辨率,然后拍摄一张静态图片。
程序运行结束后,在桌面上出现刚拍摄的图片,双击文件图标将其打开。
尝试加入循环以连续拍摄五张照片:
```python
camera.start_preview()
for i in range(5):
sleep(5)
camera.capture('/home/pi/Desktop/image%s.jpg' % i)
camera.stop_preview()
```
## 录制视频
修改代码,将`capture()`替换成`start_recording()`和`stop_recording()`。
```python
camera.start_preview()
camera.start_recording('/home/pi/video.h264')
sleep(10)
camera.stop_recording()
camera.stop_preview()
```
运行代码,将会录制10秒的视频。
输入下面命令,然后按回车播放视频。
> 函数`start_recording()`支持的视频格式如下:
> * 'h264' - Write an H.264 video stream
> * 'mjpeg' - Write an M-JPEG video stream
> * 'yuv' - Write the raw video data to a file in YUV420 format
> * 'rgb' - Write the raw video data to a file in 24-bit RGB format
> * 'rgba' - Write the raw video data to a file in 32-bit RGBA format
> * 'bgr' - Write the raw video data to a file in 24-bit BGR format
> * 'bgra' - Write the raw video data to a file in 32-bit BGRA format
```python
omxplayer video.h264
```
由于omxplayer帧速率快,所以播放时比实际的视频更快。
PiCamera库学习地址:https://picamera.readthedocs.io/en/release-1.13/api_array.html
- 前言
- 第一章 树莓派快速入门
- 1. 初识树莓派3B+
- 2. 烧录系统
- 3. 树莓派连接键盘鼠标和显示器
- 4. 启动树莓派
- 5.树莓派连接网络
- 6. Windows远程访问树莓派
- 7. 终端通过raspi-config配置树莓派
- 第二章 树莓派编程
- 1. Linux入门操作
- 常用的linux命令
- 重要的快捷键
- 通过命令安装软件
- 树莓派关机/重启
- 2. 创建、编辑和保存文件
- 3. 创建并运行Python程序
- 4. 使用树莓派的GPIO口
- 第三章 树莓派套件应用
- 树莓派3B+ IO扩展板介绍
- 家居系统
- 会呼吸的RGB灯
- 树莓派控制家电
- 制作一个环境检测仪
- 树莓派摄像头做远程监控
- 摄像头使用
- socket通信
- PiCamera + socket远程监控
- AI语音
- 配置snowboy
- 自定义响应
- 采集语音和语音播放
- 语音机器人
- 图灵机器人
- 俄罗斯方块小游戏
- pygame基本使用
- ADKeyboard使用
- 俄罗斯方块实现原理
- 俄罗斯方块代码讲解
- 手势控制的树莓派相册
- 模块介绍
- 爬取图片
- 电子相册
- 附录
- 网址