Every camera produces a stream of image data, and the link to the PC must carry it. Pick a sensor or type the image size, then the pixel format and frame rate. The calculator returns the image size, the data rate and the interfaces that carry it, with the highest frame rate each one allows for your image.
How the bandwidth calculation works
Bytes per pixel depend on the pixel format the camera sends:
| Pixel format | Bytes per pixel | Note |
|---|---|---|
| Mono 8 / Bayer 8 | 1 | Raw colour (Bayer) is one value per pixel, like mono |
| Mono 10 packed | 1.25 | Two pixels in 2.5 bytes |
| Mono 12 packed | 1.5 | Two pixels in 3 bytes |
| Mono 10 / 12 / 16 unpacked | 2 | Each value padded to 16 bits |
| RGB 8 | 3 | Colour converted in the camera |
Worked example: 5 MP at 20 and 40 frames per second
- Image size: 2448 × 2048 × 1 byte = 5.01 MB.
- At 20 fps: 5.01 × 20 = 100 MB/s, or 0.80 Gb/s. A GigE link (about 115 MB/s usable) carries it with 13 % headroom.
- At 40 fps: 200 MB/s. GigE can now deliver at most 23 fps, so the camera needs 2.5GigE (about 290 MB/s), USB3 (about 380 MB/s) or a faster link.
- In Mono 12 packed at 40 fps: 300 MB/s, beyond 2.5GigE. USB3 or 5GigE carry it.
Interfaces at a glance
| Interface | Usable image data, about | Cable length | Note |
|---|---|---|---|
| GigE | 115 MB/s | up to 100 m | Standard network cards and switches, PoE |
| 2.5GigE / 5GigE | 290 / 580 MB/s | up to 100 m | Same cabling, a faster port in the PC |
| USB3 | 350-400 MB/s | a few metres passive | Simple, no frame grabber |
| 10GigE | 1,150 MB/s | up to 100 m (Cat 6a) | A 10GigE card in the PC |
| Camera Link | 255-680 MB/s | up to 10 m | Base to Full configuration, frame grabber |
| CoaXPress | 600 MB/s per CXP-6 link | tens of metres on coax | Up to 4 links per camera, frame grabber |
The figures are approximate usable payloads; packet size, driver settings and the PC's own ports decide the real limit. Leave about 20 % headroom for retransmissions and bursts. Interfaces that need a card in the PC are covered under frame grabbers; cables of the right type and length are in cables.
The frame rate has other limits too
The interface is only one ceiling. The sensor itself has a maximum frame rate at full resolution, printed on the camera's data sheet. The exposure time sets another: a 20 ms exposure allows at most 50 frames per second. And the PC must process every image before the next one arrives, or images queue up and are dropped.
Region of interest (reading out only part of the sensor) raises the sensor's frame rate and lowers the data rate together. It is often the cheapest way to make a fast inspection fit a GigE link.
Next steps
Size the sensor with the camera resolution calculator first: the pixel count drives every number on this page. For moving parts, the motion blur calculator gives the longest exposure that keeps the image sharp, which also caps the frame rate. The GigE Vision software compatibility guide covers the acquisition side, and the camera finder filters cameras by interface and resolution.
Questions
How much bandwidth does a GigE camera have?
A Gigabit Ethernet link carries 125 MB/s raw; after packet headers and protocol overhead about 115 to 120 MB/s of image data is usable with jumbo frames. Plan on about 115 MB/s per camera link, and less when several cameras share one network port or switch uplink.
Is USB3 or GigE faster for machine vision cameras?
USB3 carries roughly three times as much image data, about 350 to 400 MB/s, but over short cables of a few metres. GigE carries about 115 MB/s over cables up to 100 m and can power the camera over PoE. Choose USB3 for speed at the machine, GigE for distance and simple wiring, 10GigE or CoaXPress for both.
Does colour triple the data rate?
Only if the camera converts to RGB before sending. A colour sensor's raw Bayer image has one value per pixel, the same size as mono, and the PC converts it to colour. Sending RGB 8 from the camera uses three bytes per pixel, so it triples the data rate for the same image.
How can I reduce a camera's data rate?
Read out only the region of interest the inspection needs, bin pixels when the resolution is more than enough, use an 8-bit format instead of 12-bit, send raw Bayer instead of RGB, or trigger only when a part is present instead of running freely. Each step cuts the data in proportion.