actcast应用程序框架
actfw的Python项目详细描述
面向python的actcast应用程序框架
这个包提供了一个用于开发actcast应用程序的python api。
安装
对于覆盆子皮
sudo apt-get update
sudo apt-get install -y python3-pil python3-setuptools python3-wheel picamera
pip3 install .
用法
使用任务并行模型构造应用程序
- 应用程序
actfw.Application
:主应用程序
- 工人
actfw.task.Producer
:任务生成器actfw.capture.PiCameraCapture
:生成csi相机捕获图像actfw.capture.V4LCameraCapture
:生成uvc相机捕获图像
actfw.task.Pipe
:任务到任务转换器actfw.task.Consumer
:任务终止符
每个worker都是并行执行的。
用户应该
- 定义
Producer/Pipe/Consumer
的子类
classMyPipe(actfw.task.Pipe):defproc(self,i):...
- 连接定义的辅助对象
p=MyProducer()f1=MyPipe()f2=MyPipe()c=MyConsumer()p.connect(f1)f1.connect(f2)f2.connect(c)
- 注册到
Application
app=actfw.Application()app.register_task(p)app.register_task(f1)app.register_task(f2)app.register_task(c)
- 执行应用程序
app.run()
请参阅并尝试示例。
示例
example/hello
:最简单的应用程序示例- 将HDMI显示器用作640x480区域
- 从CSI相机捕获320x240 RGB图像
- 画“你好,演员!”文本
- 将其显示为640x480图像(具有x2缩放)
- 注意每帧的信息
- 支持应用程序设置
- 支持应用程序心跳
- 支持“拍照”命令
example/grayscale
:下一级应用程序示例- 将HDMI显示器用作640x480区域
- 从CSI相机捕获320x240 RGB图像
- 将其转换为灰度
- 将其显示为640x480图像(具有x2缩放)
- 注意每帧的信息
- 支持应用程序设置
- 支持应用程序心跳
- 支持“拍照”命令
example/parallel_grayscale
:并行处理应用示例- 将HDMI显示器用作640x480区域
- 从CSI相机捕获320x240 RGB图像
- 将其转换为灰度
-
存在2个转换器任务
- 循环任务调度
- 将其显示为640x480图像(具有x2缩放)
- 每帧的通知消息
- 显示哪个转换器处理图像
- 支持应用程序设置
- 支持应用程序心跳
- 支持“拍照”命令
example/uvccamera
:uvc相机捕捉示例
picamera
是不必要的- 使用HDMI显示中心640x480区域
- 从uvc相机捕获320x240 rgb图像
- 将其转换为灰度
- 将其显示为640x480图像(具有x2缩放)
- 注意灰度像素数据直方图
- 支持应用程序设置
- 支持应用程序心跳
- 支持“拍照”命令