RVC  1.14.1
a product by RVBUST.
get auto noise removal setting
# Copyright (c) RVBUST, Inc - All rights reserved.
import PyRVC as RVC
import os
import numpy as np
import cv2
from Utils.Tools import *
def App():
# Initialize RVC system.
# Choose RVC Camera type (USB, GigE or All)
opt = RVC.SystemListDeviceTypeEnum.All
# Scan all RVC GigE Camera devices.
ret, devices = RVC.SystemListDevices(opt)
# Find whether any RVC GigE Camera is connected or not.
if len(devices) == 0:
print("Can not find any RVC Camera!")
return 1
if devices[0].IsFirmwareMatch() == False:
print("device firmware mismatch, Please use RVCManager to upgrade the firmware")
return 1
# Create a RVC Camera and choose use left side camera.
x = RVC.X1.Create(devices[0], RVC.CameraID_Left)
# Test RVC Camera is valid or not.
if x.IsValid() is not True:
print("RVC Camera is not valid!")
return 1
#PrintCaptureMode(devices[0])
# Open RVC Camera.
ret1 = x.Open()
# Test RVC Camera is opened or not.
if not ret1:
print("Failed to open camera! Please check whether the camera is connected and make sure it is not occupied and supports X1.")
return 1
# Print ExposureTime Range
_, exp_range_min, exp_range_max = x.GetExposureTimeRange()
print("ExposureTime Range:[{}, {}]".format(exp_range_min, exp_range_max))
# Set capture parameters
cap_opt = RVC.X1_CaptureOptions()
ret,cap_opt = x.LoadCaptureOptionParameters()
'''
We can use GetAutoNoiseRemovalSetting() function to automatically set noise_removal_distance and
noise_removal_point_number.
However, the recommended practice is to use the auto noise removal function on the RVCManager.exe
to automatically obtain the parameters, then adjust them on the RVCManager.exe, and then set them
here directly by number like the above.
'''
x.GetAutoNoiseRemovalSetting(cap_opt)
# Capture a point map and a image.
ret2 = x.Capture(cap_opt)
# Create saving address of image and point map.
save_address = "Data"
TryCreateDir(save_address)
if ret2 == True:
print("RVC Camera capture successed!")
# Get image data and image size.
img = x.GetImage()
# Save image
if img.SaveImage(save_address + "/image.png"):
print("Save image successed!")
else:
print("Save image failed!")
# Save point map (m) to file.
if x.GetPointMap().Save("Data/test.ply", RVC.PointMapUnitEnum.Meter):
print("Save point map successed!")
else:
print("Save point map failed!")
else:
print("RVC Camera capture failed!")
x.Close()
return 1
# Close RVC Camera.
x.Close()
# Destroy RVC Camera.
# Shutdown RVC System.
return 0
if __name__ == "__main__":
App()