Advanced Topics
Network Configuration
1. Network requirements for GigE scanners.
To use a GigE scanner, you must ensure that the network is a Gigabit network or above, otherwise the scanner may experience problems due to insufficient bandwidth. When connecting network cables, avoid splicing the cables with connectors or using a USB-to-Ethernet adapter, as this may reduce the quality of the network transmission and affect the use of the scanner.
You can check whether the network is Gigabit or above, and the speed should be greater than or equal to 1.0 Gbps by accessing the network status page of your computer as follows:
Windows: Start → Settings → Network & Internet → Change adapter options, select the Ethernet used, right-click and choose "Status".
Linux: Open Terminal window, use ifconfig command to check the name of the NIC, and use ethtool command to check the information of the NIC. If there is a 1000baseT/Full field in the Supported link modes, it is a Gigabit Ethernet card.
2. How to adjust the cache size of network card?
When using the GigE scanner, if the network is heavily occupied by other devices, the risk of packet loss will increase. At this time, you need to set the cache of your computer's NIC. Take Linux system as an example, the operation steps are as follows:
(1) Query the name of the network card that the device is connected to, you can check the information of the network card through the RVCManager Device Management pop-up window.
(2) Install ethtool, and execute the command in the Linux Terminal:
(3) Check the maximum cache size supported by the current NIC. For example, if the network card name is ens33, execute the command:
The result is shown in the figure, i.e., the maximum RX/TX cache size supported by the current network card is 4096, and the current cache size is 256.
(4) Set the cache to the maximum. execute the command in the Linux Terminal:
Caution
This method does not work for all types of networks. If the configuration is unsuccessful, the current computer's NIC does not support the configuration and you need to replace the NIC.
3. How can I optimize the NIC configuration?
If the performance of the NIC is very poor, resulting in severe packet loss of the GigE scanner, you can adjust the NIC parameters.
NIC Properties | Adjustment |
---|---|
IEEE/Green Ethernet | Off |
Flow Control | Off |
Jumboframe | Set to maximum |
Interrupt Moderation/Interrupt Throttle Rate | Off |
UDP Checksum Offload (IPv4) Direct Connect Status | Off |
Intel Receive Side Scaling Queues | Set to maximum |
Windows: Open Control Panel → Device Manager, find the "Network adapters" option and expand it to locate the NIC that needs to be configured. Right-click and select "Properties", open the "Advanced" tab, and adjust the properties in turn.
Linux: Use the ethtool command to modify the properties of the network card.
4. How to set the static IP on Linux system?
Take Ubuntu 22.04 for example, the steps are as follows.
Step 1: Find the Network option (Wi-Fi or Network) in the System Settings, and determine the IP address of the network your computer is currently using.
Step 2: Go to the "Network" option, find the corresponding network port of your scanner by plugging and unplugging the network cable.
Step 3: Turn on the network card that the scanner is connected to, go to the IPv4 tab, and change the "IPv4 Method" to "Manual". In the "Addresses", manually enter the IP address (must be in the same network segment as the computer's IP address, and does not conflict with other devices) and subnet mask (255.255.255.0), then click [Apply] to save the settings.
Step 4: Open the RVCManager Device Management pop-up window, click [Search] to refresh the device list. If the device can be searched and the network IP address in the Network Card Info is shown as the manually entered IP address, it means the static IP configuration is successful.
Step 5: If you still can't find the device through the above steps, you need to check whether the Linux kernel parameter rp_filter has been modified. Enter the Terminal window and type:
If the return value is 1, you need to change the parameter value to 0. Use the cd command to switch to the scripts folder in the RVCManager installation directory and run the set_rp_filter.sh script.
5. How to configure the computer if it has two or more network cards?
Windows:
(1) First, check the network card information through the Device Management pop-up window to confirm the network address corresponding to the network port to which the scanner is connected.
(2) If there are two network ports on the computer, but they are in the same network segment, you do not need to confirm which port is connected to the scanner when you connect it, just make sure that it is in the same network segment as these two ports.
(3) If the two ports are not in the same network segment, first confirm the address of the corresponding port by the network name. Plugging and unplugging the network cable, check the connection status of the device to confirm the corresponding network port. After confirming the network port, check the network address of the corresponding network port. Configure the device to the network address of the same network segment as the corresponding network port by [Auto Config] or [Manual Config].
Caution
It is recommended that you do not use a wireless network card when using a GigE scanner. The wireless network card is unstable in speed and cannot guarantee the bandwidth, which may cause problems in using the scanner due to insufficient bandwidth.
Linux:
(1) First, you need to confirm the network address of the network port to which the scanner is connected. Open the Terminal window and enter the command "ip a", the result will be similar to the following figure:
The box on the left shows the serial number and corresponding name of the network card, those starting with enp or ens are real network cards, and the rest are virtual network cards. The red circle indicates the current state of the network port, state UP means connected, state DOWN means unconnected.
(2) First, check the status of the network port by plugging and unplugging the cable or disconnecting Wi-Fi, and determine the name of the network port and the corresponding IP address. Then check the scanner's connection status by plugging or unplugging the network cable or disconnecting Wi-Fi to determine the corresponding network port to which the scanner is connected.
(3) After confirming the network port, check the IP address of the corresponding network port, and then configure the light machine and cameras to the same network segment as the corresponding network port.
6. How to determine an IP conflict and resolve it?
When the scanner is connected to a computer through a switch, an IP conflict may occur.The IP conflict may cause the device to be displayed on the list, but the camera cannot be used (opening the camera fails). Therefore, it is recommended that users check the IP first when connecting the scanner to a computer through a switch, as described in the following steps:
(1) Connect the scanner directly to the computer, make sure it works, and record the network port IP.
(2) Disconnect the scanner, connect the computer to the network, and use the ping command to confirm whether any device occupies the IP.
(3) If there is a device occupying the IP address, change the IP address of the occupying device, or reconnect the scanner and change the IP address of the device.
Scanner Use
1. What tools can I use to open the saved point clouds?
RVCManager supports loading offline point clouds in .ply format, which can be simply processed and saved again. You can also use common point cloud processing software (e.g. CloudCompare, etc.) to edit the saved point cloud.
2. FAQs about Capture Parameter Adjustment.
(1) What information do I need to confirm before capturing?
Device information, software version, camera calibration information, test scene and ambient light, sample type, scanner position, etc.
(2) The 2D image is very dark, the point cloud is dark, and the features cannot be seen.
This is usually caused by 2D underexposure. Increase Exposure2D or Gain2D, and check "Yes" to the "ProjectorEnable2D" option. If the 2D image is still dark, you may need to add an external light source as the fill light.
(3) The 2D image is too bright and the point clouds are light in color, making bright features difficult to see.
This is usually caused by 2D overexposure, the Exposure2D or Gain2D can be reduced.
(4) A light spot appear in the 2D image (see figure), affecting recognition.
a. Check the scene to see if there is a light source shining directly at the object, and adjust the position of the light source or the object.
b. It may be caused by light machine projection. Select "No" for the "ProjectorEnable2D" option, and decrease Exposure2D, Gain2D and Brightness.
(5) The light portion of the captured point cloud is intact and the dark-colored portion is missing.
This is usually caused by 3D underexposure.
a. Check if Brightness is set to the maximum value. If not, increase Brightness.
b. If Brightness is already at the maximum value, try to increase Exposure3D and Gain3D to improve the data integrity of the dark part.
(6) The dark portion of the captured point cloud is complete and the light portion is missing.
This is usually caused by 3D overexposure of the light portion. Decrease Exposure3D, Gain3D and Brightness to improve the data integrity of the light portions.
(7) The object is made of highly reflective material, and point clouds are missing in the reflective areas.
a. Decrease Brightness or use HDR function.
b. If there is no improvement after adjusting Brightness and using HDR function, adjust the scanner capturing angle or the position of the object to reduce the reflection.
(8) The color and material of the objects are very different, and the point cloud of light, dark, and reflective areas cannot be displayed completely.
In this case, a single exposure cannot capture the complete point cloud, so you need to use the HDR function, which can set 2~3 exposures corresponding to different colors and materials, and then synthesize the data to get the complete point cloud.
(9) The color of point cloud and 2D image is distorted.
a. Check whether the parameter Gamma2D is set. If yes, reset to the default value of 1.
b. If the scanner uses color cameras, correct the color with Device Functions → Auto White Balance.
(10) The point cloud captured by the scanner has a lot of noise, how to remove it?
a. Check whether the scanner is used within the working distance, adjust the scanner to the appropriate working distance.
b. You can use the functions of Confidence Denoising, Clustering Denoising, and Edge Denoising in the Post-processing Parameters to remove the noise, and you can also use the functions of Z-Truncate to quickly crop the flying noise.
(11) The point cloud has a large area missing.
a. Check whether the point cloud display range is set. You can open the pop-up window in "Setting: Point Cloud Range" to modify the value and adjust the point cloud display range to match the current window display.
b. Check whether the scanner is in the appropriate working range, you can check the working distance of the device in the Device Management pop-up window or "Device Info" in the left column of the main interface. If the scanner is not in the working distance, you need to adjust the scanner position.
c. Check whether there is strong direct light on the site. If there is, please lower the light.
d. Check whether the parameter Light Contrast is set too large and whether the denoising parameters are set too high. Adjust the parameters and capture again.
(12) When capturing in Dual Camera Mode, the point cloud appears hollow.
a. Check whether the scanner is in the working distance and whether there is a highly reflective area in the sample.
b. Adjust the parameter Light Contrast and reduce the Edge Denoising level to improve the point cloud quality.
c. Contact technical support for remote debugging.
3. RVC Scanner Accuracy Testing Procedure
Take Win 10 system as an example to test the accuracy of RVC Scanner with Python, the steps are as follows:
(1) Build the Python runtime environment
This step can be referred to Python SDK configuration.
a. Install Python: Python 3.7-Python 3.10, recommended version: Python 3.7.9.
b. Install RyRVC module. Enter it in the Command Prompt:
c. Install NumPy.
d. Install OpenCV-Python.
e. Install Matplotlib.
(2) Select a suitable calibration board
According to the working distance of the scanner, determine the appropriate size of the calibration board, and then determine the center distance and specifications of the calibration board.
Take the A6 calibration board as an example, A6:0.02 means the center distance is 0.02 m. You need to select the calibration board as shown in the figure below according to the parameters marked on the calibration board. Detailed specifications and diagrams of the calibration board are shown in RVC Calibration Board Dimensions.
Calibration Board specification | A2 | A3 | A4 | A5 | A6 | A7 | A8 | A9 | A10 |
---|---|---|---|---|---|---|---|---|---|
Center distance (m) | 0.08 | 0.056 | 0.04 | 0.028 | 0.02 | 0.014 | 0.01 | 0.007 | 0.0048 |
(3) Adjust capture parameters
Take 2D and 3D captures of the calibration board, adjust the capture parameters in RVCManager until the satisfactory result is achieved, and record the capture parameters at this time.
Go to the folder: /RVCSDK/examples/Python in the RVC installation directory, find the monocular mode accuracy test example X1TestAccuracy.py, locate it in lines 49-55 of the code, and change it to the capture parameters recorded earlier.
(The binocular mode accuracy test example is X2TestAccuracy.py, and the following steps are similar.)
# Set capture parameters
cap_opt = RVC.X1_CaptureOptions()
# Choose point map's coordinate. True for camera coordinate and False for cali board coordinate
cap_opt.transform_to_camera = True
# Set 2d and 3d exposure time. Capture with white light, range [11, 100]ms, others [3, 100]ms. cap_opt.exposure_time = True.
cap_opt.exposure_time_2d = 20
cap_opt.exposure_time_3d = 20
(4) Warm-up
In RVCManager, select the continuous capturing mode and cycle the capturing for 30 minutes to warm up.
(5) Run the accuracy test example
Execute the command:
This command means that the script name is X1TestAccuracy.py, the Gamma value is 1, the calibration board specification is A6, and the number of accuracy tests is 10, these parameters can be modified according to the actual situation. Please make sure that the calibration board specification is accurate, otherwise it will lead to measurement error.
(6) View Test Results
The accuracy test result will be displayed as a line graph, the vertical axis of the image is the accuracy deviation value, and the horizontal axis is the number of tests. If the accuracy deviation value is large (e.g. up to millimeter level), please contact technical support.