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)
32 using namespace visiontransfer;
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;
60 std::cout << std::boolalpha << std::left;
61 std::cout <<
"Current Parameters" << std::endl;
62 std::cout <<
"==================" << std::endl << std::endl;
63 std::cout << std::setw(colW) <<
"Operation mode: " << parameters.getOperationMode() << std::endl;
64 std::cout << std::setw(colW) <<
"Disparity offset: " << parameters.getDisparityOffset() << std::endl;
65 std::cout << std::setw(colW) <<
"Stereo P1 edge: " << parameters.getStereoMatchingP1Edge() << std::endl;
66 std::cout << std::setw(colW) <<
"Stereo P2 edge: " << parameters.getStereoMatchingP2Edge() << std::endl;
67 std::cout << std::setw(colW) <<
"Stereo P1 no edge: " << parameters.getStereoMatchingP1NoEdge() << std::endl;
68 std::cout << std::setw(colW) <<
"Stereo P2 no edge: " << parameters.getStereoMatchingP2NoEdge() << std::endl;
69 std::cout << std::setw(colW) <<
"Stereo edge sensitivity: " << parameters.getStereoMatchingEdgeSensitivity() << std::endl;
70 std::cout << std::setw(colW) <<
"Mask border pixels: " << parameters.getMaskBorderPixelsEnabled() << std::endl;
71 std::cout << std::setw(colW) <<
"Consistency check enabled: " << parameters.getConsistencyCheckEnabled() << std::endl;
72 std::cout << std::setw(colW) <<
"Consistency check sensitivity: " << parameters.getConsistencyCheckSensitivity() << std::endl;
73 std::cout << std::setw(colW) <<
"Uniqueness check enabled: " << parameters.getUniquenessCheckEnabled() << std::endl;
74 std::cout << std::setw(colW) <<
"Uniqueness check sensitivity: " << parameters.getUniquenessCheckSensitivity() << std::endl;
75 std::cout << std::setw(colW) <<
"Texture filter enabled: " << parameters.getTextureFilterEnabled() << std::endl;
76 std::cout << std::setw(colW) <<
"Texture filter sensitivity: " << parameters.getTextureFilterSensitivity() << std::endl;
77 std::cout << std::setw(colW) <<
"Gap interpolation enabled: " << parameters.getGapInterpolationEnabled() << std::endl;
78 std::cout << std::setw(colW) <<
"Noise reduction enabled: " << parameters.getNoiseReductionEnabled() << std::endl;
79 std::cout << std::setw(colW) <<
"Speckle filter itarations: " << parameters.getSpeckleFilterIterations() << std::endl;
80 std::cout << std::setw(colW) <<
"Auto exposure/gain mode: " << parameters.getAutoMode() << std::endl;
81 std::cout << std::setw(colW) <<
"Auto target intensity: " << parameters.getAutoTargetIntensity() << std::endl;
82 std::cout << std::setw(colW) <<
"Auto intensity delta : " << parameters.getAutoIntensityDelta() << std::endl;
83 std::cout << std::setw(colW) <<
"Auto target frame: " << parameters.getAutoTargetFrame() << std::endl;
84 std::cout << std::setw(colW) <<
"Auto skipped frames: " << parameters.getAutoSkippedFrames() << std::endl;
85 std::cout << std::setw(colW) <<
"Maximum auto exposure time: " << parameters.getAutoMaxExposureTime() <<
" us" << std::endl;
86 std::cout << std::setw(colW) <<
"Maximum auto gain: " << parameters.getAutoMaxGain() <<
" dB" << std::endl;
87 std::cout << std::setw(colW) <<
"Manual exposure time: " << parameters.getManualExposureTime() <<
" us" << std::endl;
88 std::cout << std::setw(colW) <<
"Manual gain: " << parameters.getManualGain() <<
" dB" << std::endl;
89 std::cout << std::setw(colW) <<
"Auto ROI enabled: " << parameters.getAutoROIEnabled() << std::endl;
91 int x = 0, y = 0, width = 0, height = 0;
92 parameters.getAutoROI(x, y, width, height);
93 std::cout << std::setw(colW) <<
"Auto ROI: " <<
"(" << x <<
", " << y <<
") (" << width <<
" x " << height <<
")" << std::endl;
95 std::cout << std::setw(colW) <<
"Maximum frame time difference: " << parameters.getMaxFrameTimeDifference() <<
" ms" << std::endl;
96 std::cout << std::setw(colW) <<
"Trigger frequency: " << parameters.getTriggerFrequency() <<
" Hz" << std::endl;
97 std::cout << std::setw(colW) <<
"Trigger 0 enabled: " << parameters.getTrigger0Enabled() << std::endl;
98 std::cout << std::setw(colW) <<
"Trigger 1 enabled: " << parameters.getTrigger1Enabled() << std::endl;
99 std::cout << std::setw(colW) <<
"Trigger 0 pulse width: " << parameters.getTrigger0PulseWidth() <<
" ms"<< std::endl;
100 std::cout << std::setw(colW) <<
"Trigger 1 pulse width: " << parameters.getTrigger1PulseWidth() <<
" ms"<< std::endl;
101 std::cout << std::setw(colW) <<
"Trigger 1 offset: " << parameters.getTrigger1Offset() <<
" ms"<< std::endl;
102 std::cout << std::setw(colW) <<
"Auto re-calibration enabled: " << parameters.getAutoRecalibrationEnabled() << std::endl;
103 std::cout << std::setw(colW) <<
"Save auto re-calibration: " << parameters.getSaveAutoRecalibration() << std::endl;
108 std::cout << std::endl
109 <<
"Changing Parameters" << std::endl
110 <<
"==================" << std::endl << std::endl;
112 std::cout <<
"Operation mode..." << std:: endl;
118 std::cout <<
"Disparity offset..." << std::endl;
121 parameters.setDisparityOffset(10);
123 parameters.setDisparityOffset(0);
126 std::cout <<
"... failed (reduce number of disparities to test this)." << std::endl;
129 std::cout <<
"Auto exposure target brightness..." << std:: endl;
130 parameters.setAutoTargetIntensity(0.7);
132 parameters.setAutoTargetIntensity(0.33);
135 std::cout <<
"Trigger frequency..." << std:: endl;
136 parameters.setTriggerFrequency(5);
138 parameters.setTriggerFrequency(30);
142 }
catch(
const std::exception& ex) {
143 std::cerr <<
"Exception occurred: " << ex.what() << std::endl;