
How it Works
Analytics Features
Cohu Cameras with
Analytics Agent
|
Cohu Analytics - How it Works
The Cohu Analytics system incorporates the latest Image Processing over IP networks (IPoIP) developed by Agent Vi.
The uniqueness of IPoIP is a distributed image processing architecture. Instead of performing the image-processing task entirely at the camera or entirely in the monitoring area, the algorithms are performed in both locations. They are segmented into 2 parts and divided between the video encoder hardware and the central image processing server. In this way IPoIP is able to retain the strengths of both the “Local” and “Server” architectures, while avoiding their limitations.

Feature Extraction Near the Camera
The initial part of the processing, which is done by the video encoder is called Universal Feature Extraction (UFE). This process is the part of the algorithm that works at the pixel level and extracts condensed information (or “features”) from the image pixels. The Analytics Agent, residing within the camera or encoder, preforms the raw processing of images as seen by each camera in the field prior to any image compression. The result is very low-bandwidth data (usually less than 20 Kbps), which is then transmitted to the server for further processing.
There are many types of features that can be identified in this manner, including but not limited to:
• Segmentation of foreground and background
• Motion vectors generated by tracking areas of the image between successive frames.
• Histograms • Specific color value range in a specified space (RGB, YUV, HSV).
• Edge information
• Identifying problems with the input video image such as image saturation, overall image noise
and more.
Feature Analysis At the Central Server
The main part of the processing is performed by the IPoIP server. The server is able to dynamically request specific features from each camera, according to the requirements of the specific algorithms that are currently being applied.
The server analyzes the feature data that is collected from each camera, and dynamically allocates
computational resources as needed. In this way the server is able to utilize large-scale system
statistics to perform very complex tasks when needed, without requiring a huge and expensive
network for support.
The part of each algorithm that runs on the server performs the following main tasks: 1. Request specific features from the remote UFE.
2. Analyze the incoming features over time and extract meaningful “objects” from the scene. 3. Track all moving objects in the scene in terms of size, position and speed and calibrate all of this data into real word coordinates. The calibration process transforms the 2 dimensional data received from the sensors into 3 dimensional data using various calibration techniques. Many such techniques can be implemented in accordance with the specific scene being analyzed. 4. Classify these objects into one of several major classes such as vehicles, people, animals and static objects. The classification process can be done using various parameters such as size, speed and shape (pattern recognition). 5. Obtain additional information regarding objects of interest such as color, or sub classification (type of vehicle, etc.)
6. Optionally extract unique identifying features for an object, such as a license plate recognition
or facial recognition.
7. Decide based on all the gathered information and on the active detection rules whether or not
an event needs to be generated and the system operator informed. 8. Receive and analyze information from any other algorithm running on the server at the same time. This very powerful capability enables easy implementation of tasks such as inter-camera tracking. Using this ability a specific moving object (a person or vehicle) can be accurately tracked as it moves from the field of view of one camera to the next with the system operator always viewing the correct image. This ability also enables creating sequences of rules where a rule on one camera only becomes activated (or deactivated) when a rule on another camera detects an event.
It is important to note that the algorithms at the server are constantly gathering information regarding the scene even though most of the time no events are being generated. This information can be stored as meta-data along with the video recording and later enable very fast and efficient searches on large amounts of recorded video content.

|