Triclops SDK
4.0.3.0
triclopsstereo.h
Go to the documentation of this file.
1 //=============================================================================
2 // Copyright © 2016 FLIR Integrated Imaging Solutions, Inc. All Rights Reserved.
3 //
4 // This software is the confidential and proprietary information of FLIR
5 // Integrated Imaging Solutions, Inc. ("Confidential Information"). You
6 // shall not disclose such Confidential Information and shall use it only in
7 // accordance with the terms of the license agreement you entered into
8 // with FLIR Integrated Imaging Solutions, Inc. (FLIR).
9 //
10 // FLIR MAKES NO REPRESENTATIONS OR WARRANTIES ABOUT THE SUITABILITY OF THE
11 // SOFTWARE, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE
12 // IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
13 // PURPOSE, OR NON-INFRINGEMENT. FLIR SHALL NOT BE LIABLE FOR ANY DAMAGES
14 // SUFFERED BY LICENSEE AS A RESULT OF USING, MODIFYING OR DISTRIBUTING
15 // THIS SOFTWARE OR ITS DERIVATIVES.
16 //=============================================================================
17 
18 //=============================================================================
19 // $Id: triclopsstereo.h 309688 2016-12-21 18:28:11Z silvanoa $
20 //=============================================================================
21 
22 //=============================================================================
25 //=============================================================================
26 
27 #ifndef TRICLOPSSTEREO_H
28 #define TRICLOPSSTEREO_H
29 
30 #include <triclops.h>
31 
32 #ifdef __cplusplus
33 extern "C"
34 {
35 #endif
36 //=============================================================================
37 // Function Prototypes
38 //=============================================================================
39  // start of group Rectification
44 
86 enum TriclopsError
88  TriclopsMonoStereoPair *input);
89 
110 enum TriclopsError
112  TriclopsColorStereoPair *input);
113 
128 enum TriclopsError
130  TriclopsBool on);
131 
143 enum TriclopsError
145  TriclopsBool *on);
146 
159 enum TriclopsError
161  int masksize);
162 
174 enum TriclopsError
176  int *masksize);
177  // End of Rectification
179  // start of group StereoProcessing
184 
208 enum TriclopsError
210 
225 enum TriclopsError
227  TriclopsBool on);
228 
240 enum TriclopsError
242  TriclopsBool *on);
243 
263 // FIXME: This function should have a numDisparities parameter instead of maxDisparity, as per implementation
264 // FIXME: Lots of functions check whether input parameters are smaller than zero, should we use UNSIGNED INT instead of INT?
265 enum TriclopsError
267  int minDisparity,
268  int maxDisparity);
269 
270 
284 // FIXME: This function name is misleading, in my opinion.
285 // While the setter sets min and num, this retrieves the minimum and maximum. Also the name seems to hint that
286 // this function computes the disparity map and retrieves it.
287 enum TriclopsError
289  int *minDisparity,
290  int *maxDisparity);
291 
304 enum TriclopsError
306  int masksize);
307 
323 enum TriclopsError
325  int size);
326 
338 enum TriclopsError
340  int *size);
341 
354  TriclopsStereoAlgorithm algorithm);
355 
368  TriclopsStereoAlgorithm *algorithm);
369  // End of StereoProcessing
371  // start of group OCVParameters
414 
428 enum TriclopsError triclopsSetOpenCVStereoMaskSize(const TriclopsContext context, int stereoMaskSize);
429 
441 enum TriclopsError triclopsGetOpenCVStereoMaskSize(const TriclopsContext context, int *stereoMaskSize);
442 
458 enum TriclopsError triclopsSetOpenCVMinDisparity(const TriclopsContext context, int minDisparity);
459 
473 enum TriclopsError triclopsGetOpenCVMinDisparity(const TriclopsContext context, int *minDisparity);
474 
492 enum TriclopsError triclopsSetOpenCVNumDisparities(const TriclopsContext context, int numDisparities);
493 
507 enum TriclopsError triclopsGetOpenCVNumDisparities(const TriclopsContext context, int *numDisparities);
508 
536 enum TriclopsError triclopsSetOpenCVMaxDisparity(const TriclopsContext context, int maxDisparity);
537 
550 enum TriclopsError triclopsGetOpenCVMaxDisparity(const TriclopsContext context, int *maxDisparity);
551 
571 enum TriclopsError triclopsSetOpenCVMinMaxDisparities(const TriclopsContext context, int minDisparity,
572  int maxDisparity);
573 
586 enum TriclopsError triclopsGetOpenCVMinMaxDisparities(const TriclopsContext context, int *minDisparity,
587  int *maxDisparity);
588 
607 enum TriclopsError triclopsSetOpenCVDisparityRange(const TriclopsContext context, int minDisparity, int numDisparities);
608 
621 enum TriclopsError triclopsGetOpenCVDisparityRange(const TriclopsContext context, int *minDisparity,
622  int *numDisparities);
623 
635 enum TriclopsError triclopsSetOpenCVSpeckleWindowSize(const TriclopsContext context, int speckleWindowSize);
636 
648 enum TriclopsError triclopsGetOpenCVSpeckleWindowSize(const TriclopsContext context, int *speckleWindowSize);
649 
661 enum TriclopsError triclopsSetOpenCVSpeckleRange(const TriclopsContext context, int speckleRange);
662 
674 enum TriclopsError triclopsGetOpenCVSpeckleRange(const TriclopsContext context, int *speckleRange);
675 
687 enum TriclopsError triclopsSetOpenCVDisp12MaxDiff(const TriclopsContext context, int disp12MaxDiff);
688 
700 enum TriclopsError triclopsGetOpenCVDisp12MaxDiff(const TriclopsContext context, int *disp12MaxDiff);
701 
717 
730 
747 enum TriclopsError triclopsSetOpenCVBMPreFilterSize(const TriclopsContext context, int preFilterSize);
748 
760 enum TriclopsError triclopsGetOpenCVBMPreFilterSize(const TriclopsContext context, int *preFilterSize);
761 
774 enum TriclopsError triclopsSetOpenCVPreFilterCap(const TriclopsContext context, int preFilterCap);
775 
787 enum TriclopsError triclopsGetOpenCVPreFilterCap(const TriclopsContext context, int *preFilterCap);
788 
801 enum TriclopsError triclopsSetOpenCVBMTextureThreshold(const TriclopsContext context, int textureThreshold);
802 
814 enum TriclopsError triclopsGetOpenCVBMTextureThreshold(const TriclopsContext context, int *textureThreshold);
815 
828 enum TriclopsError triclopsSetOpenCVUniquenessRatio(const TriclopsContext context, int uniquenessRatio);
829 
841 enum TriclopsError triclopsGetOpenCVUniquenessRatio(const TriclopsContext context, int *uniquenessRatio);
842 
856 enum TriclopsError triclopsSetOpenCVSGBMP1(const TriclopsContext context, int P1);
857 
870 enum TriclopsError triclopsGetOpenCVSGBMP1(const TriclopsContext context, int *P1);
871 
885 enum TriclopsError triclopsSetOpenCVSGBMP2(const TriclopsContext context, int P2);
886 
899 enum TriclopsError triclopsGetOpenCVSGBMP2(const TriclopsContext context, int *P2);
900 
915 
928  // End of OCVParameters
930 
931 #ifdef __cplusplus
932 }
933 #endif
934 
935 #endif // #ifndef TRICLOPS_H
enum TriclopsError triclopsSetOpenCVDisparityRange(const TriclopsContext context, int minDisparity, int numDisparities)
Sets new minimum and number of disparities for OpenCV Stereo Algorithms.
Definition: triclopsstereo.cpp:398
enum TriclopsError triclopsSetOpenCVSpeckleWindowSize(const TriclopsContext context, int speckleWindowSize)
Sets a new speckle filter window size for OpenCV Stereo Algorithms.
Definition: triclopsstereo.cpp:411
enum TriclopsError triclopsSetEdgeCorrelation(TriclopsContext context, TriclopsBool on)
Switches edge pre-processing on or off.
Definition: triclopsstereo.cpp:86
Color image pair for stereo computation.
Definition: triclopstype.h:133
enum TriclopsError triclopsSetOpenCVMinDisparity(const TriclopsContext context, int minDisparity)
Sets a new minimum disparity for OpenCV Stereo Algorithms.
Definition: triclopsstereo.cpp:289
Greyscale image pair for stereo computation.
Definition: triclopstype.h:124
enum TriclopsError triclopsColorRectify(TriclopsContext context, TriclopsColorStereoPair *input)
Prepares the internal color image buffers for depth computation.
Definition: triclopsrectify.cpp:53
enum TriclopsError triclopsSetOpenCVSGBMP2(const TriclopsContext context, int P2)
Sets a new second smoothing parameter for OpenCV Semi-Global Block Matching stereo algorithm...
Definition: triclopsstereo.cpp:625
enum TriclopsError triclopsGetOpenCVDisp12MaxDiff(const TriclopsContext context, int *disp12MaxDiff)
Retrieves the current maximum difference for OpenCV Stereo Algorithms&#39; consistency checks...
Definition: triclopsstereo.cpp:471
enum TriclopsError triclopsSetOpenCVSpeckleRange(const TriclopsContext context, int speckleRange)
Sets a new speckle filter maximum disparity for OpenCV Stereo Algorithms.
Definition: triclopsstereo.cpp:435
OpenCVPrefilterType
OpenCV Pre-filter type enumerator.
Definition: triclopsenum.h:187
enum TriclopsError triclopsSetOpenCVUniquenessRatio(const TriclopsContext context, int uniquenessRatio)
Sets a new uniqueness ratio for OpenCV stereo algorithms.
Definition: triclopsstereo.cpp:579
TriclopsError
Error enumerator.
Definition: triclopserror.h:46
enum TriclopsError triclopsGetOpenCVMinMaxDisparities(const TriclopsContext context, int *minDisparity, int *maxDisparity)
Retrieves the current minimum and maximum disparities for OpenCV Stereo Algorithms.
Definition: triclopsstereo.cpp:373
enum TriclopsError triclopsGetOpenCVMaxDisparity(const TriclopsContext context, int *maxDisparity)
Retrieves the current maximum disparity for OpenCV Stereo Algorithms.
Definition: triclopsstereo.cpp:349
enum TriclopsError triclopsSetOpenCVSGBMMode(const TriclopsContext context, OpenCVSGBMMode mode)
Sets a new computation mode for OpenCV Semi-Global Block Matching stereo algorithm.
Definition: triclopsstereo.cpp:647
OpenCVSGBMMode
OpenCV Semi-Global Block Matching (SGBM) implementation enumerator.
Definition: triclopsenum.h:204
void * TriclopsContext
Wrapper for the internal C++ Triclops context.
Definition: triclopstype.h:54
enum TriclopsError triclopsGetOpenCVSGBMMode(const TriclopsContext context, OpenCVSGBMMode *mode)
Retrieves the current computation mode for OpenCV Semi-Global Block Matching stereo algorithm...
Definition: triclopsstereo.cpp:659
enum TriclopsError triclopsSetOpenCVPreFilterCap(const TriclopsContext context, int preFilterCap)
Sets a new truncation value for OpenCV Block Matching stereo algorithm pre-filters.
Definition: triclopsstereo.cpp:531
enum TriclopsError triclopsGetEdgeMask(const TriclopsContext context, int *masksize)
Retrieves the current edge pre-processing mask size.
Definition: triclopsstereo.cpp:127
enum TriclopsError triclopsGetDisparity(const TriclopsContext context, int *minDisparity, int *maxDisparity)
Retrieves the current stereo disparity range.
Definition: triclopsstereo.cpp:187
enum TriclopsError triclopsSetDoStereo(TriclopsContext context, TriclopsBool on)
Switches stereo computation on or off.
Definition: triclopsstereo.cpp:145
enum TriclopsError triclopsGetOpenCVDisparityRange(const TriclopsContext context, int *minDisparity, int *numDisparities)
Retrieves the current minimum and maximum disparities for OpenCV Stereo Algorithms.
Definition: triclopsstereo.cpp:386
enum TriclopsError triclopsGetOpenCVSGBMP2(const TriclopsContext context, int *P2)
Retrieves the second smoothing parameter for OpenCV Semi-Global Block Matching stereo algorithm...
Definition: triclopsstereo.cpp:636
enum TriclopsError triclopsSetEdgeMask(TriclopsContext context, int masksize)
Sets a new edge pre-processing mask size.
Definition: triclopsstereo.cpp:114
enum TriclopsError triclopsGetOpenCVUniquenessRatio(const TriclopsContext context, int *uniquenessRatio)
Retrieves the current texture threshold for OpenCV stereo algorithms.
Definition: triclopsstereo.cpp:591
enum TriclopsError triclopsGetOpenCVBMPreFilterType(const TriclopsContext context, OpenCVPrefilterType *prefilterType)
Retrieves the current pre-filter for OpenCV Block Matching stereo algorithm.
Definition: triclopsstereo.cpp:495
enum TriclopsError triclopsSetOpenCVSGBMP1(const TriclopsContext context, int P1)
Sets a new first smoothing parameter for OpenCV Semi-Global Block Matching stereo algorithm...
Definition: triclopsstereo.cpp:603
enum TriclopsError triclopsSetOpenCVDisp12MaxDiff(const TriclopsContext context, int disp12MaxDiff)
Sets a new maximum difference for OpenCV Stereo Algorithms&#39; consistency checks.
Definition: triclopsstereo.cpp:459
enum TriclopsError triclopsGetStereoMask(const TriclopsContext context, int *size)
Retrieves the current stereo mask size.
Definition: triclopsstereo.cpp:229
enum TriclopsError triclopsGetEdgeCorrelation(const TriclopsContext context, TriclopsBool *on)
Retrieves the current edge pre-processing status for a context.
Definition: triclopsstereo.cpp:100
enum TriclopsError triclopsSetOpenCVMinMaxDisparities(const TriclopsContext context, int minDisparity, int maxDisparity)
Sets new minimum and maximum disparities for OpenCV Stereo Algorithms.
Definition: triclopsstereo.cpp:361
enum TriclopsError triclopsGetDoStereo(const TriclopsContext context, TriclopsBool *on)
Retrieves the current stereo computation status for a context.
Definition: triclopsstereo.cpp:159
enum TriclopsError triclopsSetStereoAlgorithm(const TriclopsContext context, TriclopsStereoAlgorithm algorithm)
Sets a new stereo algorithm.
Definition: triclopsstereo.cpp:241
enum TriclopsError triclopsGetOpenCVStereoMaskSize(const TriclopsContext context, int *stereoMaskSize)
Retrieves the current Stereo Mask size for OpenCV Stereo Algorithms.
Definition: triclopsstereo.cpp:277
enum TriclopsError triclopsRectify(TriclopsContext context, TriclopsMonoStereoPair *input)
Prepares the internal image buffers for depth computation.
Definition: triclopsrectify.cpp:36
enum TriclopsError triclopsGetOpenCVBMPreFilterSize(const TriclopsContext context, int *preFilterSize)
Retrieves the current mask size for OpenCV Block Matching stereo algorithm Normalized response pre-fi...
Definition: triclopsstereo.cpp:519
enum TriclopsError triclopsGetStereoAlgorithm(const TriclopsContext context, TriclopsStereoAlgorithm *algorithm)
Retrieves the current stereo algorithm.
Definition: triclopsstereo.cpp:254
enum TriclopsError triclopsGetOpenCVMinDisparity(const TriclopsContext context, int *minDisparity)
Retrieves the current minimum disparity for OpenCV Stereo Algorithms.
Definition: triclopsstereo.cpp:301
enum TriclopsError triclopsGetOpenCVSGBMP1(const TriclopsContext context, int *P1)
Retrieves the first smoothing parameter for OpenCV Semi-Global Block Matching stereo algorithm...
Definition: triclopsstereo.cpp:614
enum TriclopsError triclopsGetOpenCVSpeckleRange(const TriclopsContext context, int *speckleRange)
Retrieves the current speckle filter maximum disparity for OpenCV Stereo Algorithms.
Definition: triclopsstereo.cpp:447
Triclops operations API.
enum TriclopsError triclopsSetOpenCVStereoMaskSize(const TriclopsContext context, int stereoMaskSize)
Sets a new Stereo Mask size for OpenCV Stereo Algorithms.
Definition: triclopsstereo.cpp:266
enum TriclopsError triclopsSetOpenCVMaxDisparity(const TriclopsContext context, int maxDisparity)
Sets a new maximum disparity for OpenCV Stereo Algorithms.
Definition: triclopsstereo.cpp:337
enum TriclopsError triclopsGetOpenCVNumDisparities(const TriclopsContext context, int *numDisparities)
Retrieves the current number of disparities for OpenCV Stereo Algorithms.
Definition: triclopsstereo.cpp:325
enum TriclopsError triclopsGetOpenCVPreFilterCap(const TriclopsContext context, int *preFilterCap)
Retrieves the current truncation value for OpenCV Block Matching stereo algorithm pre-filters...
Definition: triclopsstereo.cpp:543
enum TriclopsError triclopsGetOpenCVBMTextureThreshold(const TriclopsContext context, int *textureThreshold)
Retrieves the current texture threshold for OpenCV Block Matching stereo algorithm.
Definition: triclopsstereo.cpp:567
enum TriclopsError triclopsSetOpenCVBMPreFilterType(const TriclopsContext context, OpenCVPrefilterType preFilterType)
Sets a new pre-filter for OpenCV Block Matching stereo algorithm.
Definition: triclopsstereo.cpp:483
TriclopsStereoAlgorithm
Stereo Algorithm enumerator.
Definition: triclopsenum.h:170
enum TriclopsError triclopsSetOpenCVNumDisparities(const TriclopsContext context, int numDisparities)
Sets a new number of disparities for OpenCV Stereo Algorithms.
Definition: triclopsstereo.cpp:313
enum TriclopsError triclopsGetOpenCVSpeckleWindowSize(const TriclopsContext context, int *speckleWindowSize)
Retrieves the current speckle filter window size for OpenCV Stereo Algorithms.
Definition: triclopsstereo.cpp:423
enum TriclopsError triclopsSetAnyStereoMask(TriclopsContext context, int size)
Sets a new stereo mask size ignoring the limits set in the library.
Definition: triclopsstereo.cpp:216
enum TriclopsError triclopsSetDisparity(TriclopsContext context, int minDisparity, int maxDisparity)
Sets a new stereo disparity range.
Definition: triclopsstereo.cpp:173
enum TriclopsError triclopsSetOpenCVBMTextureThreshold(const TriclopsContext context, int textureThreshold)
Sets a new texture threshold for OpenCV Block Matching stereo algorithm.
Definition: triclopsstereo.cpp:555
enum TriclopsError triclopsSetOpenCVBMPreFilterSize(const TriclopsContext context, int preFilterSize)
Sets a new mask size for OpenCV Block Matching stereo algorithm Normalized response pre-filter...
Definition: triclopsstereo.cpp:507
int TriclopsBool
Boolean type definition kept for legacy purposes.
Definition: triclopstype.h:47
enum TriclopsError triclopsStereo(TriclopsContext context)
Performs depth computation and pixel validations.
Definition: triclopsstereo.cpp:66
enum TriclopsError triclopsSetStereoMask(TriclopsContext context, int masksize)
Sets a new stereo mask size.
Definition: triclopsstereo.cpp:203
Contact Support Triclops SDK Programmer's Guide and API Reference