15 #include <visiontransfer/deviceenumeration.h> 16 #include <visiontransfer/imagetransfer.h> 17 #include <visiontransfer/imageset.h> 18 #include <visiontransfer/deviceparameters.h> 27 #define sleep(x) Sleep(x*1000) 34 int main(
int,
char**) {
40 if(devices.size() == 0) {
41 std::cout <<
"No devices discovered!" << std::endl;
46 std::cout <<
"Discovered devices:" << std::endl;
47 for(
unsigned int i = 0; i< devices.size(); i++) {
48 std::cout << devices[i].toString() << std::endl;
50 std::cout << std::endl;
59 std::cout << std::boolalpha << std::left;
60 std::cout <<
"Current Parameters" << std::endl;
61 std::cout <<
"==================" << std::endl << std::endl;
62 std::cout << std::setw(colW) <<
"Operation mode: " << parameters.getOperationMode() << std::endl;
63 std::cout << std::setw(colW) <<
"Disparity offset: " << parameters.getDisparityOffset() << std::endl;
64 std::cout << std::setw(colW) <<
"Stereo P1 edge: " << parameters.getStereoMatchingP1Edge() << std::endl;
65 std::cout << std::setw(colW) <<
"Stereo P2 edge: " << parameters.getStereoMatchingP2Edge() << std::endl;
66 std::cout << std::setw(colW) <<
"Stereo P1 no edge: " << parameters.getStereoMatchingP1NoEdge() << std::endl;
67 std::cout << std::setw(colW) <<
"Stereo P2 no edge: " << parameters.getStereoMatchingP2NoEdge() << std::endl;
68 std::cout << std::setw(colW) <<
"Stereo edge sensitivity: " << parameters.getStereoMatchingEdgeSensitivity() << std::endl;
69 std::cout << std::setw(colW) <<
"Mask border pixels: " << parameters.getMaskBorderPixelsEnabled() << std::endl;
70 std::cout << std::setw(colW) <<
"Consistency check enabled: " << parameters.getConsistencyCheckEnabled() << std::endl;
71 std::cout << std::setw(colW) <<
"Consistency check sensitivity: " << parameters.getConsistencyCheckSensitivity() << std::endl;
72 std::cout << std::setw(colW) <<
"Uniqueness check enabled: " << parameters.getUniquenessCheckEnabled() << std::endl;
73 std::cout << std::setw(colW) <<
"Uniqueness check sensitivity: " << parameters.getUniquenessCheckSensitivity() << std::endl;
74 std::cout << std::setw(colW) <<
"Texture filter enabled: " << parameters.getTextureFilterEnabled() << std::endl;
75 std::cout << std::setw(colW) <<
"Texture filter sensitivity: " << parameters.getTextureFilterSensitivity() << std::endl;
76 std::cout << std::setw(colW) <<
"Gap interpolation enabled: " << parameters.getGapInterpolationEnabled() << std::endl;
77 std::cout << std::setw(colW) <<
"Noise reduction enabled: " << parameters.getNoiseReductionEnabled() << std::endl;
78 std::cout << std::setw(colW) <<
"Speckle filter itarations: " << parameters.getSpeckleFilterIterations() << std::endl;
79 std::cout << std::setw(colW) <<
"Auto exposure/gain mode: " << parameters.getAutoMode() << std::endl;
80 std::cout << std::setw(colW) <<
"Auto target intensity: " << parameters.getAutoTargetIntensity() << std::endl;
81 std::cout << std::setw(colW) <<
"Auto intensity delta : " << parameters.getAutoIntensityDelta() << std::endl;
82 std::cout << std::setw(colW) <<
"Auto target frame: " << parameters.getAutoTargetFrame() << std::endl;
83 std::cout << std::setw(colW) <<
"Auto skipped frames: " << parameters.getAutoSkippedFrames() << std::endl;
84 std::cout << std::setw(colW) <<
"Maximum auto exposure time: " << parameters.getAutoMaxExposureTime() <<
" us" << std::endl;
85 std::cout << std::setw(colW) <<
"Maximum auto gain: " << parameters.getAutoMaxGain() <<
" dB" << std::endl;
86 std::cout << std::setw(colW) <<
"Manual exposure time: " << parameters.getManualExposureTime() <<
" us" << std::endl;
87 std::cout << std::setw(colW) <<
"Manual gain: " << parameters.getManualGain() <<
" dB" << std::endl;
88 std::cout << std::setw(colW) <<
"Auto ROI enabled: " << parameters.getAutoROIEnabled() << std::endl;
90 int x = 0, y = 0, width = 0, height = 0;
91 parameters.getAutoROI(x, y, width, height);
92 std::cout << std::setw(colW) <<
"Auto ROI: " <<
"(" << x <<
", " << y <<
") (" << width <<
" x " << height <<
")" << std::endl;
94 std::cout << std::setw(colW) <<
"Maximum frame time difference: " << parameters.getMaxFrameTimeDifference() <<
" ms" << std::endl;
95 std::cout << std::setw(colW) <<
"Trigger frequency: " << parameters.getTriggerFrequency() <<
" Hz" << std::endl;
96 std::cout << std::setw(colW) <<
"Trigger 0 enabled: " << parameters.getTrigger0Enabled() << std::endl;
97 std::cout << std::setw(colW) <<
"Trigger 1 enabled: " << parameters.getTrigger1Enabled() << std::endl;
98 std::cout << std::setw(colW) <<
"Trigger 0 pulse width: " << parameters.getTrigger0PulseWidth() <<
" ms"<< std::endl;
99 std::cout << std::setw(colW) <<
"Trigger 1 pulse width: " << parameters.getTrigger1PulseWidth() <<
" ms"<< std::endl;
100 std::cout << std::setw(colW) <<
"Trigger 1 offset: " << parameters.getTrigger1Offset() <<
" ms"<< std::endl;
101 std::cout << std::setw(colW) <<
"Auto re-calibration enabled: " << parameters.getAutoRecalibrationEnabled() << std::endl;
102 std::cout << std::setw(colW) <<
"Save auto re-calibration: " << parameters.getSaveAutoRecalibration() << std::endl;
107 std::cout << std::endl
108 <<
"Changing Parameters" << std::endl
109 <<
"==================" << std::endl << std::endl;
111 std::cout <<
"Operation mode..." << std:: endl;
117 std::cout <<
"Disparity offset..." << std:: endl;
118 parameters.setDisparityOffset(10);
120 parameters.setDisparityOffset(0);
123 std::cout <<
"Auto exposure target brightness..." << std:: endl;
124 parameters.setAutoTargetIntensity(0.7);
126 parameters.setAutoTargetIntensity(0.33);
129 std::cout <<
"Trigger frequency..." << std:: endl;
130 parameters.setTriggerFrequency(5);
132 parameters.setTriggerFrequency(30);
136 }
catch(
const std::exception& ex) {
137 std::cerr <<
"Exception occurred: " << ex.what() << std::endl;
DeviceList discoverDevices()
Discovers new devices and returns the list of all devices that have been found.
The devices performs stereo matching.
The device passes through the input images without modification.
Allows for configuration of the parameters of a Nerian stereo device through a network connection...
Allows for the discovery of devices in the network.