This example touches on the preparation and cleanup of a camera just before and just after the acquisition of images. Image retrieval and conversion, grabbing image data, and saving images are all covered as well. Retrieving node information is the only portion of the example that differs from Acquisition.
#include <iostream>
#include <iomanip>
#include <fstream>
#include <vector>
#include <sstream>
#include <filesystem>
#include "SpinStereoHelper.h"
#include "StereoParameters.h"
#include "Getopt.h"
using namespace std;
{
string executionPath = string(argv[0]);
size_t found = executionPath.find_last_of("/\\");
string programName = executionPath.substr(found + 1);
int iOpt;
const char* currentParamPosition;
bool bBadArgs = false;
if (argc == 1)
{
return true;
}
const char* paramMatchPattern = "n:ABCDEFGh?";
while ((iOpt =
GetOption(argc, argv, paramMatchPattern, ¤tParamPosition)) != 0)
{
switch (iOpt)
{
case 'n':
#ifdef _MSC_VER
if (sscanf_s(currentParamPosition,
"%d", ¶ms.
numImageSets) != 1)
#else
if (sscanf(currentParamPosition,
"%d", ¶ms.
numImageSets) != 1)
#endif
{
bBadArgs = true;
}
else
{
{
cout << "The numImageSets argument must be a number greater than 0." << endl;
bBadArgs = true;
}
}
break;
case 'A':
break;
case 'B':
break;
case 'C':
break;
case 'D':
break;
case 'E':
break;
case 'F':
break;
case 'G':
break;
case '?':
case 'h':
default:
cerr << "Invalid option provided: " << currentParamPosition << endl;
return false;
}
}
if (bBadArgs)
{
cout << "Invalid arguments" << endl;
return false;
}
{
{
cout << "Need to have disparity Image (-E) for point cloud generation" << endl << endl;
return false;
}
{
cout << "Need to have Rectified Sensor1 Image (-C) for point cloud generation" << endl << endl;
return false;
}
}
{
cout << "Need to enable at least one image (-A/-B/-C/-D/-E)" << endl << endl;
return false;
}
return true;
}
{
cout << "Usage: ";
cout << pszProgramName << " [OPTIONS]" << endl << endl;
cout << "OPTIONS" << endl
<< endl
<< " -n NUM_FRAMES Number frames" << endl
<< " -A DO_ENABLE_RAW_SENSOR1_TRANSMIT doEnableRawSensor1Transmit" << endl
<< " -B DO_ENABLE_RAW_SENSOR2_TRANSMIT doEnableRawSensor2Transmit" << endl
<< " -C DO_ENABLE_RECT_SENSOR1_TRANSMIT doEnableRectSensor1Transmit" << endl
<< " -D DO_ENABLE_RECT_SENSOR2_TRANSMIT doEnableRectSensor2Transmit" << endl
<< " -E DO_ENABLE_DISPARITY_TRANSMIT doEnableDisparityTransmit" << endl
<< " -F DO_ENABLE_POINTCLOUD_OUTPUT doEnablePointCloudOutput" << endl
<< " -G DO_ENABLE_SPECKLE_FILTER doEnableSpeckleFilter" << endl
<< "EXAMPLE" << endl
<< endl
<<
" " << pszProgramName <<
" -n " << params.
numImageSets <<
" -A "
<< " -B "
<< " -C "
<< " -D "
<< " -E "
<< " -F " << endl
<< endl;
}
{
bool result = true;
cout << endl << endl << "*** CONFIGURING CHUNK DATA ***" << endl << endl;
try
{
{
cout << "Unable to activate chunk mode. Aborting..." << endl << endl;
return false;
}
pCam->ChunkModeActive.SetValue(true);
cout << "Chunk mode activated..." << endl;
{
cout << "Unable to retrieve chunk selector. Aborting..." << endl << endl;
return false;
}
pCam->ChunkSelector.GetEntries(entries);
cout << "Enabling entries..." << endl;
for (size_t i = 0; i < entries.size(); i++)
{
{
continue;
}
pCam->ChunkSelector.SetIntValue(ptrChunkSelectorEntry->GetValue());
cout << "\t" << ptrChunkSelectorEntry->GetSymbolic() << ": ";
{
cout << "not available" << endl;
result = false;
}
else if (pCam->ChunkEnable.GetValue())
{
cout << "enabled" << endl;
}
{
pCam->ChunkEnable.SetValue(true);
cout << "enabled" << endl;
}
else
{
cout << "not writable" << endl;
result = false;
}
}
}
{
cout <<
"Error: " << e.
what() << endl;
result = false;
}
return result;
}
{
bool result = true;
try
{
{
cout << "Unable to retrieve chunk selector. Aborting..." << endl << endl;
return false;
}
pCam->ChunkSelector.GetEntries(entries);
cout << "Disabling entries..." << endl;
for (size_t i = 0; i < entries.size(); i++)
{
{
continue;
}
pCam->ChunkSelector.SetIntValue(ptrChunkSelectorEntry->GetValue());
cout << "\t" << ptrChunkSelectorEntry->GetSymbolic() << ": ";
{
cout << "not available" << endl;
result = false;
}
else if (!pCam->ChunkEnable.GetValue())
{
cout << "disabled" << endl;
}
{
pCam->ChunkEnable.SetValue(false);
cout << "disabled" << endl;
}
else
{
cout << "not writable" << endl;
}
}
cout << endl;
{
cout << "Unable to deactivate chunk mode. Aborting..." << endl << endl;
return false;
}
pCam->ChunkModeActive.SetValue(false);
cout << "Chunk mode deactivated..." << endl;
}
{
cout <<
"Error: " << e.
what() << endl;
result = false;
}
return result;
}
{
bool result = true;
cout << "Printing chunk data from image..." << endl;
try
{
ChunkData chunkData = pImage->GetChunkData();
std::cout << "\tExposure time: " << exposureTime << endl;
cout << "\tFrame ID: " << frameID << endl;
cout << "\tStereoHeight: " << stereoHeight << endl;
cout << "\tStereoWidth: " << stereoWidth << endl;
cout << "\tScan3dCoordinateOffset: " << scan3dCoordinateOffset << endl;
cout << "\tScan3dBaseline: " << scan3dBaseline << endl;
cout << "\tScan3dFocalLength: " << scan3dFocalLength << endl;
cout << "\tMinZ: " << minZ << endl;
cout << "\tMaxZ: " << maxZ << endl;
cout << "\tScan3dPrincipalPointU: " << scan3dPrincipalPointU << endl;
cout << "\tScan3dPrincipalPointV: " << scan3dPrincipalPointV << endl;
cout << "\tSmallPenalty: " << smallPenalty << endl;
cout << "\tLargePenalty: " << largePenalty << endl;
cout << "\tUniquenessRatio: " << uniquenessRatio << endl;
}
{
cout <<
"Error: " << e.
what() << endl;
result = false;
}
return result;
}
int counter,
string prefix = "")
{
imageList.
GetByPayloadType(SPINNAKER_IMAGE_PAYLOAD_TYPE_DISPARITY_SENSOR1)->GetWidth());
imageList.
GetByPayloadType(SPINNAKER_IMAGE_PAYLOAD_TYPE_DISPARITY_SENSOR1)->GetHeight());
pointCloudParameters,
stereoCameraParameters);
stringstream strstr("");
strstr << prefix;
strstr << "PointCloud_" << counter << ".ply";
cout << "Save point cloud to file: " << strstr.str() << endl;
return true;
}
int counter,
const string prefix = "")
{
cout << "Save images to files." << endl;
stringstream strstr;
{
strstr.str("");
strstr << prefix;
strstr << "RawSensor1_" << counter << ".png";
string rawSensor1Filename = strstr.str();
cout << "Save raw Sensor1 image to file: " << rawSensor1Filename << endl;
imageList.
GetByPayloadType(SPINNAKER_IMAGE_PAYLOAD_TYPE_RAW_SENSOR1)->Save(rawSensor1Filename.c_str());
}
{
strstr.str("");
strstr << prefix;
strstr << "RawSensor2_" << counter << ".png";
string rawSensor2Filename = strstr.str();
cout << "Save raw Sensor2 image to file: " << rawSensor2Filename << endl;
imageList.
GetByPayloadType(SPINNAKER_IMAGE_PAYLOAD_TYPE_RAW_SENSOR2)->Save(rawSensor2Filename.c_str());
}
{
strstr.str("");
strstr << prefix;
strstr << "RectSensor1_" << counter << ".png";
string rectSensor1Filename = strstr.str();
cout << "Save rectified sensor1 image to file: " << rectSensor1Filename << endl;
imageList.
GetByPayloadType(SPINNAKER_IMAGE_PAYLOAD_TYPE_RECTIFIED_SENSOR1)->Save(rectSensor1Filename.c_str());
}
{
strstr.str("");
strstr << prefix;
strstr << "RectSensor2_" << counter << ".png";
string rectSensor2Filename = strstr.str();
cout << "Save rectified sensor2 image to file: " << rectSensor2Filename << endl;
imageList.
GetByPayloadType(SPINNAKER_IMAGE_PAYLOAD_TYPE_RECTIFIED_SENSOR2)->Save(rectSensor2Filename.c_str());
}
{
strstr.str("");
strstr << prefix;
strstr << "Disparity_" << counter << ".pgm";
string disparityFilename = strstr.str();
cout << "Save disparity image to file: " << disparityFilename << endl;
imageList.
GetByPayloadType(SPINNAKER_IMAGE_PAYLOAD_TYPE_DISPARITY_SENSOR1)->Save(disparityFilename.c_str());
}
return true;
}
{
CIntegerPtr ptrPacketSize = nodeMap.GetNode(
"GevSCPSPacketSize");
{
std::cerr << "Failed to get or set the GevSCPSPacketSize parameter from or to the camera." << std::endl;
return false;
}
const unsigned int maxGevSCPSPacketSize = static_cast<unsigned int>(pCam->GevSCPSPacketSize.GetMax());
const unsigned int maxPacketSize =
pCam->DiscoverMaxPacketSize() > maxGevSCPSPacketSize ? maxGevSCPSPacketSize : pCam->DiscoverMaxPacketSize();
pCam->GevSCPSPacketSize.SetValue(maxPacketSize);
cout << "PacketSize set to: " << pCam->GevSCPSPacketSize.GetValue() << endl;
if (!
IsReadable(pCam->DeviceLinkCurrentThroughput))
{
std::cerr << "Failed to get the DeviceLinkCurrentThroughput parameter from the camera." << std::endl;
return false;
}
{
std::cerr << "Failed to get or set the DeviceLinkThroughputLimit parameter from or to the camera." << std::endl;
return false;
}
cout << "Current camera throughput: " << pCam->DeviceLinkCurrentThroughput.GetValue() << endl;
if (pCam->DeviceLinkThroughputLimit.GetMin() > pCam->DeviceLinkCurrentThroughput.GetValue())
{
cout << "DeviceLinkCurrentThroughput node minimum of: " << pCam->DeviceLinkThroughputLimit.GetMin()
<< " is higher than current throughput we desire to set (" << pCam->DeviceLinkCurrentThroughput.GetValue()
<< ")" << endl;
pCam->DeviceLinkThroughputLimit.SetValue(pCam->DeviceLinkThroughputLimit.GetMin());
}
else
{
pCam->DeviceLinkThroughputLimit.SetValue(pCam->DeviceLinkCurrentThroughput.GetValue());
}
cout << "DeviceLinkThroughputLimit set to: " << pCam->DeviceLinkThroughputLimit.GetValue() << endl << endl;
return true;
}
{
bool result = true;
cout << endl << endl << "*** IMAGE ACQUISITION ***" << endl << endl;
try
{
pCam->BeginAcquisition();
cout << endl << "Acquiring " << numImageSets << " image sets." << endl;
gcstring serialNumber = pCam->TLDevice.DeviceSerialNumber.GetValue();
uint64_t timeoutInMilliSecs = 2000;
for (unsigned int counter = 0; counter < numImageSets; counter++)
{
try
{
cout << endl << "Acquiring stereo image set: " << counter << endl;
imageList = pCam->GetNextImageSync(timeoutInMilliSecs);
{
cout << "Failed to get next image set." << endl;
continue;
}
{
{
cout << "Applying SpeckleFilter on disparity image..." << endl;
ImageUtilityStereo::FilterSpecklesFromImage(
pDisparity,
}
else
{
cout << "Skipping disparity post processing as disparity components are disabled" << endl;
}
}
stringstream ss("");
ss << "StereoAcquisition_QuickSpin_" << serialNumber << "_";
{
cerr << "Failed to save images." << endl;
result = false;
break;
}
{
{
{
cerr << "Failed to compute the 3D point cloud." << endl;
result = false;
break;
}
}
else
{
cout << "Skipping compute 3D point cloud as rectified sensor1 or disparity sensor1 components "
"are disabled"
<< endl;
}
}
}
{
cout <<
"Error: " << e.
what() << endl;
result = false;
}
}
pCam->EndAcquisition();
}
{
cout <<
"Error: " << e.
what() << endl;
result = false;
}
return result;
}
{
bool result = true;
try
{
pCam->Init();
cout << endl << "Checking camera stereo support..." << endl;
if (!ImageUtilityStereo::IsStereoCamera(pCam))
{
cout << "Device serial number " << pCam->TLDevice.DeviceSerialNumber.GetValue()
<< " is not a valid BX camera. Skipping..." << endl;
pCam->DeInit();
return true;
}
#ifdef _DEBUG
#else
#endif
if (!result)
{
cerr << "Failed to set the heartbeat." << endl;
pCam->DeInit();
return false;
}
cout << endl << "Configuring camera..." << endl;
{
cerr << "Failed to configure the acquisition." << endl;
pCam->DeInit();
return false;
}
cout << endl << "Configuring chunk data..." << endl;
{
cerr << "Failed to configure chunk data." << endl;
pCam->DeInit();
return false;
}
cout << endl << "Configuring device link throughput..." << endl;
{
cerr << "Failed to set the device link throughput." << endl;
pCam->DeInit();
return false;
}
cout << endl << "Configuring stereo processing..." << endl;
{
cerr << "Failed to configure stereo processing." << endl;
pCam->DeInit();
return false;
}
cout << endl <<
"*** STEREO PARAMETERS *** " << endl << stereoParameters.
ToString() << endl;
#if _DEBUG
cout << endl << "*** CAMERA CALIBRATION PARAMETERS ***" << endl;
{
cerr << "Failed to get camera calibration parameters." << endl;
return false;
}
#endif
cout << endl << "Acquiring images..." << endl;
#ifdef _DEBUG
#endif
pCam->DeInit();
}
{
cout <<
"Error: " << e.
what() << endl;
result = false;
}
return result;
}
int main(
int argc,
char** argv)
{
FILE* tempFile = fopen("test.txt", "w+");
if (tempFile == nullptr)
{
cout << "Failed to create file in current folder. Please check "
"permissions."
<< endl;
cout << "Press Enter to exit..." << endl;
getchar();
return -1;
}
fclose(tempFile);
remove("test.txt");
{
return -1;
}
cout << "Application build date: " << __DATE__ << " " << __TIME__ << endl << endl;
const LibraryVersion spinnakerLibraryVersion = system->GetLibraryVersion();
cout <<
"Spinnaker library version: " << spinnakerLibraryVersion.
major <<
"." << spinnakerLibraryVersion.
minor
<<
"." << spinnakerLibraryVersion.
type <<
"." << spinnakerLibraryVersion.
build << endl
<< endl;
const unsigned int numCameras = camList.
GetSize();
cout << "Number of cameras detected: " << numCameras << endl << endl;
if (numCameras == 0)
{
system->ReleaseInstance();
cout << "Not enough cameras!" << endl;
cout << "Done! Press Enter to exit..." << endl;
getchar();
return -1;
}
bool result = true;
for (unsigned int i = 0; i < numCameras; i++)
{
cout << endl << "Running example for camera " << i << "..." << endl;
cout << "Camera " << i << " example complete..." << endl << endl;
}
pCam = nullptr;
system->ReleaseInstance();
cout << endl << "Done! Press Enter to exit..." << endl;
getchar();
return (result == true) ? 0 : -1;
}
int AcquireImages(CameraPtr pCam, INodeMap &nodeMap, INodeMap &nodeMapTLDevice)
Definition Acquisition.cpp:200
int main(int, char **)
Definition Acquisition.cpp:536
int ResetGVCPHeartbeat(CameraPtr pCam)
Definition Acquisition.cpp:139
int RunSingleCamera(CameraPtr pCam)
Definition Acquisition.cpp:488
int PrintDeviceInfo(INodeMap &nodeMap)
Definition Acquisition.cpp:442
int DisableGVCPHeartbeat(CameraPtr pCam)
Definition Acquisition.cpp:144
int DisplayChunkData(ImagePtr pImage)
Definition ChunkData.cpp:195
int ConfigureChunkData(INodeMap &nodeMap)
Definition ChunkData.cpp:71
int DisableChunkData(INodeMap &nodeMap)
Definition ChunkData.cpp:550
int GetOption(int argc, char **argv, const char *pszValidOpts, const char **ppszParam)
Definition Getopt.c:96
bool SetDeviceLinkThroughput(CameraPtr pCam)
Definition StereoAcquisition.cpp:647
bool ProcessArgs(int argc, char *argv[], StereoAcquisitionParams ¶ms)
ProcessArgs.
Definition StereoAcquisition.cpp:75
bool Compute3DPointCloudAndSave(const StereoParameters &stereoParameters, ImageList &imageList, int counter, string prefix="")
Compute3DPointCloudAndSave.
Definition StereoAcquisition.cpp:542
void DisplayHelp(const string &pszProgramName, const StereoAcquisitionParams ¶ms)
DisplayHelp.
Definition StereoAcquisition.cpp:200
bool SaveImagesToFile(const StreamTransmitFlags &streamTransmitFlags, ImageList &imageList, int counter, const string prefix="")
Definition StereoAcquisition.cpp:584
Class for handling parameters of the S3D camera.
Definition StereoParameters.h:66
std::string ToString() const
Converts the parameters to a string representation.
Definition StereoParameters.cpp:48
bool doComputePointCloud
flag to enable computation of the 3D point cloud.
Definition StereoParameters.h:86
StreamTransmitFlags streamTransmitFlags
Flags to enable streams image transmission.
Definition StereoParameters.h:84
float scan3dBaseline
Definition StereoParameters.h:100
float scan3dCoordinateOffset
Minimum number of disparities.
Definition StereoParameters.h:79
float scan3dPrincipalPointV
Definition StereoParameters.h:101
float scan3dInvalidDataValue
Definition StereoParameters.h:82
float speckleThreshold
Speckle threshold value.
Definition StereoParameters.h:95
float scan3dPrincipalPointU
Definition StereoParameters.h:102
float scan3dFocalLength
Definition StereoParameters.h:99
float scan3dCoordinateScale
Definition StereoParameters.h:105
bool scan3dInvalidDataFlag
Definition StereoParameters.h:81
bool postProcessDisparity
Flag to enable disparity post-processing.
Definition StereoParameters.h:92
int maxSpeckleSize
Speckle range value.
Definition StereoParameters.h:94
Used to hold a list of camera objects.
Definition CameraList.h:42
void Clear()
Clears the list of cameras and destroys their corresponding reference counted objects.
CameraPtr GetByIndex(unsigned int index) const
Returns a pointer to a camera object at the "index".
unsigned int GetSize() const
Returns the size of the camera list.
A reference tracked pointer to a camera object.
Definition CameraPtr.h:44
The chunk data which contains additional information about an image.
Definition ChunkData.h:42
float64_t GetScan3dBaseline() const
Description: Returns the baseline as the physical distance of two cameras in a stereo camera setup.
float64_t GetScan3dCoordinateOffset() const
Description: Returns the Offset for the selected coordinate axis of the image included in the payload...
int64_t GetStereoWidth() const
Description: Returns the width of the image after stereo processing by the device (in pixels).
int64_t GetSmallPenalty() const
Description: Returns the penalty when the change of Disparity Change is plus or minus 1.
int64_t GetLargePenalty() const
Description: Returns the penalty when the change of Disparity Change is plus or minus 1.
float64_t GetMinZ() const
Description: Returns the minimum depth in meters for the point cloud range.
int64_t GetStereoHeight() const
Description: Returns the height of the image after stereo processing by the device (in pixels).
float64_t GetScan3dPrincipalPointV() const
Description: Returns the value of this feature gives the vertical position of the principal point,...
float64_t GetScan3dPrincipalPointU() const
Description: Returns the value of this feature gives the horizontal position of the principal point,...
int64_t GetUniquenessRatio() const
Description: Returns the difference between the best matching disparity and the second-best matching ...
float64_t GetMaxZ() const
Description: Returns the maximum depth in meters for the point cloud range.
float64_t GetExposureTime() const
Description: Returns the exposure time used to capture the image.
float64_t GetScan3dFocalLength() const
Description: Returns the focal length of the camera in pixel.
int64_t GetFrameID() const
Description: Returns the image frame ID.
The Exception object represents an error that is returned from the library.
Definition Exception.h:51
virtual const char * what() const
virtual override for what().
Encapsulates a GenApi pointer dealing with the dynamic_cast automatically.
Definition Pointer.h:75
Used to hold a list of image objects.
Definition ImageList.h:42
ImagePtr GetByIndex(unsigned int index) const
Returns a pointer to an image object at the "index".
ImagePtr GetByPayloadType(const ImagePayloadType payloadType) const
Returns a pointer to an image object with the specified image payload type.
unsigned int GetSize() const
Returns the size of the image list.
A reference tracked pointer to an image object.
Definition ImagePtr.h:46
static PointCloud ComputePointCloud(const ImagePtr &disparityImage, const ImagePtr &rectifiedImage, const PointCloudParameters &pointCloudParameters, const StereoCameraParameters &stereoCameraParameters)
Computes 3D point cloud from a stereo pair consisting of a disparity/rectified image using a stereo m...
The PointCloud object class.
Definition PointCloud.h:46
A reference tracked pointer to a system object.
Definition SystemPtr.h:44
double float64_t
64 bit floating point
Definition GCTypes.h:261
bool IsWritable(EAccessMode AccessMode)
Tests if writable.
Definition INode.h:277
bool IsAvailable(EAccessMode AccessMode)
Tests if available.
Definition INode.h:325
bool IsReadable(EAccessMode AccessMode)
Tests if readable.
Definition INode.h:253
interface SPINNAKER_API_ABSTRACT INodeMap
Interface to access the node map.
Definition INodeMap.h:54
void SavePointCloudAsPly(const std::string &) const
The function writes the point cloud data to the specified file in PLY format.
node_vector NodeList_t
a list of node references
Definition INode.h:54
bool PrintCameraCalibrationParams(INodeMap &nodeMap)
Prints the camera calibration parameters.
Definition SpinStereoHelper.cpp:956
Definition SpinStereoHelper.cpp:34
bool ValidateImageList(const StreamTransmitFlags &streamTransmitFlags, ImageList &imageList)
Definition SpinStereoHelper.cpp:765
bool ConfigureAcquisition(CameraPtr pCam, StreamTransmitFlags &streamTransmitFlags)
Definition SpinStereoHelper.cpp:249
bool ConfigureStereoProcessing(INodeMap &nodeMap, StereoParameters &stereoParameters)
Definition SpinStereoHelper.cpp:226
Definition AutoPollController.h:33
Definition StereoParameters.h:40
bool rawSensor1TransmitEnabled
Flag to enable raw sensor1 image transmission.
Definition StereoParameters.h:41
bool rawSensor2TransmitEnabled
Flag to enable raw sensor2 image transmission.
Definition StereoParameters.h:42
bool rectSensor1TransmitEnabled
Flag to enable rectified sensor1 image transmission.
Definition StereoParameters.h:43
bool disparityTransmitEnabled
Flag to enable disparity image transmission.
Definition StereoParameters.h:45
bool rectSensor2TransmitEnabled
Flag to enable rectified sensor2 image transmission.
Definition StereoParameters.h:44
Provides easier access to the current version of Spinnaker.
Definition SpinnakerDefs.h:706
unsigned int minor
Minor version of the library.
Definition SpinnakerDefs.h:711
unsigned int major
Major version of the library.
Definition SpinnakerDefs.h:708
unsigned int type
Version type of the library.
Definition SpinnakerDefs.h:714
unsigned int build
Build number of the library.
Definition SpinnakerDefs.h:717
Definition SpinnakerDefs.h:790
unsigned int ROIImageTop
Definition SpinnakerDefs.h:800
unsigned int ROIImageLeft
Definition SpinnakerDefs.h:796
unsigned int decimationFactor
Definition SpinnakerDefs.h:793
unsigned int ROIImageBottom
Definition SpinnakerDefs.h:806
unsigned int ROIImageRight
Definition SpinnakerDefs.h:803
Definition SpinnakerDefs.h:848
float invalidDataValue
Definition SpinnakerDefs.h:855
float disparityScaleFactor
Definition SpinnakerDefs.h:854
float principalPointV
Definition SpinnakerDefs.h:853
float focalLength
Definition SpinnakerDefs.h:851
float principalPointU
Definition SpinnakerDefs.h:852
bool invalidDataFlag
Definition SpinnakerDefs.h:856
float baseline
Definition SpinnakerDefs.h:850
float coordinateOffset
Definition SpinnakerDefs.h:849
Definition StereoAcquisition.h:32
bool doEnableRectSensor2Transmit
Definition StereoAcquisition.h:37
bool doEnableRawSensor1Transmit
Definition StereoAcquisition.h:34
bool doEnableSpeckleFilter
Definition StereoAcquisition_QuickSpin.h:40
unsigned int numImageSets
Definition StereoAcquisition.h:33
bool doEnableRawSensor2Transmit
Definition StereoAcquisition.h:35
bool doEnablePointCloudOutput
Definition StereoAcquisition.h:39
bool doEnableDisparityTransmit
Definition StereoAcquisition.h:38
bool doEnableRectSensor1Transmit
Definition StereoAcquisition.h:36