Introduction

Introduction

CvWorks is a computer vision framework composed of a set of interfaces and high-level computer vision methods with focus on applications and systems. It is implemented in C++ using templates and object oriented programming.
 
GUI Demonstration:
 

Objective

The objective is to implement a framework that facilitates the development and evaluation of high-level computer vision systems. The framework should provide a base implementation for common tasks shared among computer vision applications, such as: detection and tracking performance evaluation, threaded execution, generic computer vision algorithms, logging and benchmarking, etc.
This project does not intend to implement low-level computer vision and image processing, such as: image filtering, histograms, optical flow, feature extraction, etc.
 
The expected result is a framework that enables:
  • Code reuse.
  • 'Plug-and-play' computer vision.
  • Quick and easy deployment and evaluation of systems.
  • Educational activities.
  • Team development.
 

Architecture

CvWorks is organized in three levels:
  1. Core - Defines generic interfaces (using template programming) and implements abstract methods that can be reused on different computer vision applications. It also contains generic test routines (using the interfaces) for detection and tracking evaluation. Implemented in VisionCore namespace. 
  2. High-level Computer Vision Components - Contains the implementation of specific computer vision components that can be reused accross applications. In the moment, CvWorks contains three components:
    • Viscv - Collection of simple detection and tracking methods based on OpenCv library.
    • FireDetection - Implementation of fire detectors and trackers based on RGB camera.
    • VisionSensors - Collection of methods for industrial applications.
  3. Application - This level complies the final application (i.e. business-logic implementation). Currently, CvWorks contains a generic graphical interface for methods visualization (VisionGUI). Besides this, it is also being used in three other applications: a face recognition biometric system, a computer vision module for PatrolBot robot navigation (C3Scout project) and a vision based industrial plant monitoring system (FieldVision project).
The diagram bellow ilustrate CvWorks architecture:
 
 
Package Diagram

Sobre:

O Centro de Ciências Computacionais da Universidade Federal do Rio Grande é uma das 13 Unidades Acadêmicas da FURG, sendo responsável pela área das Ciéncias Computacionais, dedicando-se a formação de recursos humanos e a produção de conhecimento.

logo do centro de ciências computacionais logo da universidade federal do rio grande