Skip to main content

基于链的框架,用于将图像处理拆分为组件。

项目描述

简历2工作室

cv2studio是一个 OpenCV 框架,使您能够将处理流程分解为组件。

特征

  • 基于组件的开发
  • 渠道独立
  • OpenCV 的 HighGUI 元素的类包装器
  • 组件的通道独立性

入门

这个框架背后的主要原则是分解。将代码拆分为一种格式的组件使其具有高度可重用性。单独开发视频/图像处理的不同部分并与他人共享变得容易。

安装

要安装最新版本:

pip install cv2studio

用法

输入

在使用框架的功能之前进行导入。

from cv2studio import App, Component

组件创建

要创建一个组件,请描述一个派生自Component. 要使用此类,需要声明方法process(self, img),其中img是要处理的图像。这个函数也必须返回一个图像。

class Blur(Component):
    def process(self, img):
        img = cv2.GaussianBlur(img, (5, 5), 5)
        return img

该组件将模糊应用于输入图像。

应用程序创建

要创建一个包含处理组件的应用程序,请描述从“App”派生的类并使用add_component(component)方法添加组件。

class VideoApp(App):
    def __init__(self, path):
        App.__init__(self, path, VIDEO)
        # self.add_component(MyComponent())
        self.add_component(Blur())

跑步

运行描述的应用程序使用main_loop方法。它将通过应用添加的组件链开始主处理循环。

app = VideoApp('path/to/video')
app.main_loop()

main_loop开始一个视频处理循环。要创建更复杂的应用程序,请参阅以下示例。

测试

要运行测试,请运行以下命令:

pytest

版本控制

我们使用 SemVer 进行版本控制。有关可用版本,请参阅此存储库上的标签。

贡献

请阅读 CONTRIBUTE.md 了解我们的行为准则的详细信息,以及向我们提交拉取请求的流程。

执照

该项目在 MIT 许可下获得许可 - 请参阅LICENSE.md文件了解详细信息

项目详情


下载文件

下载适用于您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。

源分布

cv2studio-1.0.2.tar.gz (6.8 kB 查看哈希

已上传 source