AT C6 Scan Moving object and get ZMap

Dear @BBad,

  1. The usage of a Thread.Sleep I would not recommend as it is very unprecise. There are two time domains you can distinguish between. One is you PC that is depending on the time required for procedures. The other is on the camera itself. A more convincing approach would be to set a certain linerate one the camera to have a fixed time delay between two lines. This is quite precise. Currently I understand that you are aquiring individual profiles instead of frames containing multiple profiles, is that correct? In most cases it is better to use frames and time the delay between two profiles on the camera. When receiving on the software side you can divide between the individual profiles by software. From the timing perspective you will be independent from random delays on your system when you will use the fixed linerate on the camera.

  2. Using the Multipart acquisition receiving the three image parts this is the correct approach. Currently you are generating an array of images that are processed later. There is also the option to directly process all images after receiving. this way the application would not be that quickly be limited to the RAM size.

  3. There is CVB Tutorial that shows how to create a Z-Map from a Rangemap. First apply the intrinsic calibration to the rangemap to receive a pointcloud. Than project the pointcloud onto a 2D image to receive a Z-Map: (CVB installation folder) %CVB%\Tutorial\Foundation\Cvb.Net\Metric3D\bin\x64\Release

Lastly I would like to give you a hint on this post related to C6 cameras: https://forum.commonvisionblox.com/t/switching-from-automation-technology-c5-to-c6-cameras-in-cvb/1868

1 Like