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;
120 parameters.setDisparityOffset(10);
122 parameters.setDisparityOffset(0);
125 std::cout <<
"... failed (reduce number of disparities to test this)." << std::endl;
128 std::cout <<
"Auto exposure target brightness..." << std:: endl;
129 parameters.setAutoTargetIntensity(0.7);
131 parameters.setAutoTargetIntensity(0.33);
134 std::cout <<
"Trigger frequency..." << std:: endl;
135 parameters.setTriggerFrequency(5);
137 parameters.setTriggerFrequency(30);
141 }
catch(
const std::exception& ex) {
142 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.