93,266 views 113 comments

Community Core Vision (CCV) – Installation and Configuration

In order to track fingers or objects, CCV first needs to be configured. The goal is to have a final tracked image that has white blobs coming from fingers or objects placed on the touch surface (with no background noise or false blobs visible or tracked). In order to reach this goal, various image filter sliders are adjusted. By following the steps below, a final tracked image with clear and distinct blobs should be achievable (like the one you see on the picture below). The default settings may not be ideal, and I advise you to play with each slider to understand how it works.

CCV Diagram Overview

alt

  1. Source image – Displays the raw video image from either camera or video file.
  2. Use Camera Toggle – Sets the input source to camera and grabs frames from selected camera.
  3. Use Video Toggle – Sets the input source to video and grabs frames from video file.
  4. Previous Camera Button – Gets the previous camera device attached to computer if more than one is attached.
  5. Next Camera Button – Gets the next camera device attached to computer if more than one is attached.
  6. Tracked Image – Displays the final image after image filtering that is used for blob detection and tracking.
  7. Inverse – Track black blobs instead white blobs.
  8. Threshold Slider – Adjusts the level of acceptable tracked pixels. The higher the option is, the bigger the blobs have to be converted in tracked blobs.
  9. Movement filtering – Adjust the level of acceptable distance (in pixels) before a movement of a blob is detected. The higher the option is, the more you have to actually move your finger for CCV to register a blob movement.
  10. Min Blob Size – Adjust the level of acceptable minimum blob size. The higher the option is, the bigger a blob has to be to be assigned an ID.
  11. Max Blob Size – Adjust the level of acceptable maximum blob size. The higher the option is, the bigger a blob can be before losing its ID.
  12. Remove Background Button – Captures the current source image frame and uses it as the static background image to be subtracted from the current active frame. Press this button to recapture a static background image
  13. Dynamic Subtract Toggle – Dynamically adjusts the background image. Turn this on if the environmental lighting changes often or false blobs keep appearing due to environmental changes. The slider will determine how fast the background will be learned.
  14. Smooth Slider – Smoothes the image and filters out noise (random specs) from the image.
  15. Highpass Blur Slider – Removes the blurry parts of the image and leaves the sharper brighter parts.
  16. Highpass Noise – Filters out the noise (random specs) from the image after applying Highpass Blur.
  17. Amplify Slider – Brightens weak pixels. If blobs are weak, this can be used to make them stronger.
  18. On/Off Toggle – Used on each filters, this is used to turn each filter on or off.
  19. Camera Settings Button – Opens a camera settings box. This will open more specific controls of the camera, especially when using a PS3 Eye camera.
  20. Flip Vertical Toggle – Flips the source image vertically.
  21. Flip Horizontal Toggle – Flips the source image horizontally.
  22. GPU Mode Toggle – Turns on hardware acceleration and uses the GPU. This is best used on newer graphics cards only. Note: GPU mode is still in early development and may not work on all machines.
  23. Send UDP Toggle – Turns on the sending of TUIO messages.
  24. Flash XML – Turns on the sending of Flash XML messages (no need for flosc anymore).
  25. Binary TCP – Turns on the sending of RAW messages (x,y coordinates).
  26. Enter Calibration – Loads the calibration screen.
  27. Save Settings – Saves all the current settings into the XML settings file.

Installation and Configuration

1. Download the latest build of Community Core Vision.

2. Windows users, run the downloaded file (double click) to install CCV. Mac and Linux users, extract the contents of the download wherever you find convenient (ie. the desktop).

3. Plug in a web camera into your computer, and launch the CCV application (.app, .exe, .sh).

alt

4. The application will launch and a camera or video image should be displayed under Source Image.

5. If the wrong camera is displayed, press Next Camera to switch to the next attached camera. Press Previous Camera to return to a previous camera. If video is playing instead of your camera, press Use Camera.

alt6. With no fingers on the touch surface, press the background remove button or “b” to capture the background. If in an environment where lighting changes often, turn on dynamic subtract. You may experiment by adjusting the speed of dynamic subtract.

7a. (MTmini, MTbiggie and Front DI users only)

  • Turn on invert under Tracked Image so that dark blobs will be tracked
  • Turn off the smooth and amplify filters.
  • Turn on the highpass filter.
  • Adjust the highpass blur and noise sliders until fingers are clear and distinct.
  • If blobs are weak, turn on the amplify filter to brighten them.

7b. (FTIR and LLP users only)

  • Turn off the highpass and amplify filters.
  • Turn on the smooth filter.
  • Adjust the smooth filter to remove noise.
  • If blobs are weak, turn on the amplify filter to brighten them.

7c. (DI and DSI users only)

  • Turn off the smooth and amplify filters.
  • Turn on the highpass filter.
  • Adjust the highpass blur and noise sliders until fingers are clear and distinct.
  • If blobs are weak, turn on the amplify filter to brighten them.

alt 8. Lastly, adjust the threshold slider in the Tracked Image until only fingers are tracked and no false blobs (ones that aren’t your fingers) are present.

alt

9. Press Save Settings to save the current settings. note: settings will also be auto-saved on exit.

10. Continue to the Calibration guide below to perform the next step (calibration).

attributed source: nuigroup.com

Community Core Vision Calibration Guide

Community Core Vision Guide Overview

Did you enjoy this post?

Comment Below , Follow Me on Twitter , Follow Me on Facebook , or Network with Me on Linkedin

-->