Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

Phission C/C++ Tutorial

This tutorial is very unfinished. It might be better to not read it yet.

Table of Contents

A Phission Program

If you intend to compile the code contained here, you should first make sure you have Phission installed on your system. See the Building & Installing Phission in Linux and Cygwin page for setting up your system with Phission.

Here is a simple source file that does nothing but include the Phission header file and print "Hello world!". This is where we'll start our coding and later we'll begin plugging in the code to create a Phission System.

The sections of a Phission program break up the main function into the following sections:

Building the Phission program is supported by

Declarations

Setup and Initialization

Main Control Loop

Cleanup

Conclusion

That's it! It's very simple to create a program to just display images directly from the capture device. The whole program now looks like the following:

Click here to download it.

Phission Processing Example

This example extends the previous example by introducing the idea of a pipeline that holds a set of processing filters. The filters will process the images after they are acquired from the capture device and then the images will be displayed.

Declarations

TODO.

Setup and Initialization

TODO.

Main Control Loop

TODO.

Cleanup

TODO.

Conclusion

TODO.

Histogram Example

This section shows a more complex filter that has a histogram data object output which is retrieved using the phLiveObject synchronization methods. You'll notice that there is a new section below for acquiring the histogram data ( Acquiring the histogram data ) from the histogram_Filter. This is a the sixth section of a general Phission system. While everything other section of a Phission system is quite important, a vision processing system meant for an intelligent systems needs some type of data output that adds to what is known about the incoming stream of images. This section leads into the next section ( Blob Segmentation Example ) and introduces the Phission mechanism for thread safe data tranfering between threads: the phLiveObject synchronization and updating API.

Declarations

TODO.

Setup and Initialization

TODO.

Main Control Loop

TODO.

Acquiring the histogram data

TODO.

Cleanup

TODO.

Conclusion

TODO.

Blob Segmentation Example

This section builds on the previous Histogram Example by using the data output from the histogram_Filter to make a blob_Filter segment the histogrammed colors.

Declarations

TODO.

Setup and Initialization

TODO.

Main Control Loop

TODO.

Acquiring the blob data

TODO.

Cleanup

TODO.

Conclusion

TODO.

Using phSimpleVision

TODO.

Writing a Basic phFilter

TODO.

Filter with phLiveObject data output

TODO.

Writing a Capture class

TODO.

Writing a Display class

TODO.



Copyright (C) 2002 - 2007 Philip D.S. Thoren ( pthoren@users.sourceforge.net )
University Of Massachusetts at Lowell
Robotics Lab
SourceForge.net Logo

Generated on Sat Jun 16 02:45:25 2007 for phission by  doxygen 1.4.4