A nifty little toolkit to create stress-free, frustrationless image processing pathways from your webcam for computer vision experiments. Or observing your cat.
ProcessPathway is a nifty little tool that lets you play with image processing algorithms instead of wiring up your test
bench all day. It is designed to feed a video camera input (a webcam, usually) through any functions that can digest and
return a numpy matrix (think OpenCV).
How to use
The `example_threshold.py` example, which - as the name suggests - thresholds the the webcam input, is a good example
for what a typical ProcessPathway pipeline would look like:
from processpathway import LiveProcess
First, import the LiveProcess object from processpathway. You might want to also import whatever processing functions
_frame = cv2.cvtColor(_frame, cv2.COLOR_BGR2GRAY)
_, _frame = cv2.threshold(_frame, 128, 255, cv2.THRESH_BINARY)
_frame = cv2.cvtColor(_frame, cv2.COLOR_GRAY2BGR)
Write your functions. The only constraint is that they should take and emit a numpy.ndarray image. Of course, that does
not mean you can't code whatever side effects you need them to generate!
if __name__ == '__main__':
processor = LiveProcess(fps=True)
processor.bind_process(convert_to_grayscale, threshold, reconvert_to_bgr)
Upon call, attach `LiveProcess` to a variable, then bind the processing functions to it, *in the order you want them to
be performed*! Then, bind a capture device and initialise it. Finally, start the loop.
* FPS calculation (use `fps=True` when constructing your `LiveProcess` instance)
* Screenshotting (bound to the `s` key, on by default but can be disabled using `screencap=False` in the `LiveProcess`
* Automatic clean-up and closedown (using the `esc` key by default)
* And lots more...
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.