- Know Python and OpenCV
- Develop computer vision algorithm to automatically evaluate surf conditions
- Calculate number of waves that break in subsequent frames
- Completed using OpenCV and Python
I am implementing computer visions algorithms in my surfCam Startup to create a bunch of stats so surfers can better evaluate the condition.
So far, I have developed an algorithm that calculates the numbers of surfers in the line up. There is done by background subtraction and a Blob algorithm. I want to improve its performance by creating a function that will evaluate if blobs are around the same position from the last 2 calculations. If so, they are real surfers, if not disregards those blobs, they are false positives.
The function will receive a list with the coordinates of each blob as a sublist. For instance: Positions_1 = [[230,182], [554,25], [68,147]]. So in these case, there are 3 blobs. Let’s say, a next frame comes along and the blobs are: Positions_2 = [[230,182], [554,25],[857,45]]. So the official blob list is [[230,182], [554,25]]. And return that list.
The next function is to calculate the number of waves that breaks in 3 different ROIs in a frame. A wave break means there was a color change from dark to white in a certain amount of pixel(around 100 pixels in a X-axis) comparing this frame form 15 frames in the past.
To apply for this position please use the form below.