diff --git a/samples/LibDemo/cvGoodFeaturesToTrack/cv_GoodFeaturesToTrack.dpr b/samples/LibDemo/cvGoodFeaturesToTrack/cv_GoodFeaturesToTrack.dpr
index fb01475..85ad4ad 100644
--- a/samples/LibDemo/cvGoodFeaturesToTrack/cv_GoodFeaturesToTrack.dpr
+++ b/samples/LibDemo/cvGoodFeaturesToTrack/cv_GoodFeaturesToTrack.dpr
@@ -1,25 +1,25 @@
-// *****************************************************************
-// Delphi-OpenCV Demo
-// Copyright (C) 2013 Project Delphi-OpenCV
-// ****************************************************************
-// Contributor:
-// Laentir Valetov
-// email:laex@bk.ru
-// ****************************************************************
-// You may retrieve the latest version of this file at the GitHub,
-// located at git://github.com/Laex/Delphi-OpenCV.git
-// ****************************************************************
-// The contents of this file are used with permission, subject to
-// the Mozilla Public License Version 1.1 (the "License"); you may
-// not use this file except in compliance with the License. You may
-// obtain a copy of the License at
-// http://www.mozilla.org/MPL/MPL-1_1Final.html
-//
-// Software distributed under the License is distributed on an
-// "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
-// implied. See the License for the specific language governing
-// rights and limitations under the License.
-// *******************************************************************
+(* ****************************************************************
+ Delphi-OpenCV Demo
+ Copyright (C) 2013 Project Delphi-OpenCV
+ ****************************************************************
+ Contributor:
+ Laentir Valetov
+ email:laex@bk.ru
+ ****************************************************************
+ You may retrieve the latest version of this file at the GitHub,
+ located at git://github.com/Laex/Delphi-OpenCV.git
+ ****************************************************************
+ The contents of this file are used with permission, subject to
+ the Mozilla Public License Version 1.1 (the "License"); you may
+ not use this file except in compliance with the License. You may
+ obtain a copy of the License at
+ http://www.mozilla.org/MPL/MPL-1_1Final.html
+
+ Software distributed under the License is distributed on an
+ "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ rights and limitations under the License.
+ ****************************************************************** *)
program cv_GoodFeaturesToTrack;
@@ -51,31 +51,31 @@ var
begin
try
- ipar1 := 100;
- img1 := cvLoadImage(ImgFilename, CV_LOAD_IMAGE_UNCHANGED);
- img2 := cvCreateImage(cvGetSize(img1), IPL_DEPTH_8U, 1);
- cvCvtColor(img1, img2, CV_RGB2GRAY);
- eig := cvCreateImage(cvGetSize(img2), 32, 1);
- temp := cvCreateImage(cvGetSize(img2), 32, 1);
+ ipar1 := 100;
+ img1 := cvLoadImage(ImgFilename, CV_LOAD_IMAGE_UNCHANGED);
+ img2 := cvCreateImage(cvGetSize(img1), IPL_DEPTH_8U, 1);
+ cvCvtColor(img1, img2, CV_RGB2GRAY);
+ eig := cvCreateImage(cvGetSize(img2), 32, 1);
+ temp := cvCreateImage(cvGetSize(img2), 32, 1);
+ points[0] := @pointsRow1[0];
+ count := 250;
+ cvGoodFeaturesToTrack(img2, eig, temp, @points[0][0], @ipar1, 0.05, 10, nil, 5, 0, 0.09);
+ cvFindCornerSubPix(img2, @points[0][0], count, cvSize(5, 5), cvSize(-1, -1), cvTermCriteria(CV_TERMCRIT_ITER or CV_TERMCRIT_EPS, 20, 0.03));
+ for j := 0 to ipar1 - 1 do
+ begin
+ cvCircle(img1, cvPointFrom32f(points[0][j]), 3, CV_RGB(0, 255, 255), -1, 8, 0);
+ cvCircle(img1, cvPointFrom32f(points[0][j]), 8, CV_RGB(255, 0, 0), -1, 8, 0);
+ end;
+ cvNamedWindow('bb', 1);
+ cvShowImage('bb', img1);
+ cvWaitKey(0);
+
+ cvReleaseImage(img1);
+ cvReleaseImage(img2);
+ cvReleaseImage(eig);
+ cvReleaseImage(temp);
+ cvDestroyAllWindows;
- points[0] := @pointsRow1[0];
- count := 250;
- cvGoodFeaturesToTrack(img2, eig, temp, @points[0][0], @ipar1, 0.05, 10, nil, 5, 0, 0.09);
- cvFindCornerSubPix(img2, @points[0][0], count, cvSize(5, 5), cvSize(-1, -1),
- cvTermCriteria(CV_TERMCRIT_ITER or CV_TERMCRIT_EPS, 20, 0.03));
- for j := 0 to ipar1 - 1 do
- begin
- cvCircle(img1, cvPointFrom32f(points[0][j]), 3, CV_RGB(0, 255, 255), -1, 8, 0);
- cvCircle(img1, cvPointFrom32f(points[0][j]), 8, CV_RGB(255, 0, 0), -1, 8, 0);
- end;
- cvNamedWindow('bb', 1);
- cvShowImage('bb', img1);
- cvWaitKey(0);
- cvReleaseImage(img1);
- cvReleaseImage(img2);
- cvReleaseImage(eig);
- cvReleaseImage(temp);
- cvDestroyAllWindows;
except
on E: Exception do
WriteLn(E.ClassName, ': ', E.Message);
diff --git a/samples/LibDemo/cvGoodFeaturesToTrack/cv_GoodFeaturesToTrack.dproj b/samples/LibDemo/cvGoodFeaturesToTrack/cv_GoodFeaturesToTrack.dproj
index 541898b..e3a15ea 100644
--- a/samples/LibDemo/cvGoodFeaturesToTrack/cv_GoodFeaturesToTrack.dproj
+++ b/samples/LibDemo/cvGoodFeaturesToTrack/cv_GoodFeaturesToTrack.dproj
@@ -7,7 +7,7 @@
3
Console
None
- 18.2
+ 18.6
Win32
diff --git a/source/component/Delphi 10.3 Rio/dclCommonOpenCV260.dproj b/source/component/Delphi 10.3 Rio/dclCommonOpenCV260.dproj
index 0c40777..1acff11 100644
--- a/source/component/Delphi 10.3 Rio/dclCommonOpenCV260.dproj
+++ b/source/component/Delphi 10.3 Rio/dclCommonOpenCV260.dproj
@@ -7,7 +7,7 @@
1
Package
None
- 18.6
+ 18.7
Win32
@@ -264,6 +264,12 @@
1
+
+
+ res\values
+ 1
+
+
res\drawable
@@ -300,6 +306,36 @@
1
+
+
+ res\drawable-mdpi
+ 1
+
+
+
+
+ res\drawable-hdpi
+ 1
+
+
+
+
+ res\drawable-xhdpi
+ 1
+
+
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+
+
+ res\drawable-xxxhdpi
+ 1
+
+
res\drawable-small
@@ -324,6 +360,12 @@
1
+
+
+ res\values
+ 1
+
+
1
@@ -422,6 +464,17 @@
1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
1
@@ -433,6 +486,39 @@
1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
1
@@ -444,6 +530,61 @@
1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
1
@@ -455,6 +596,116 @@
1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
1
@@ -488,6 +739,28 @@
1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
1
diff --git a/source/component/Delphi 10.3 Rio/dclFFMSource260.dproj b/source/component/Delphi 10.3 Rio/dclFFMSource260.dproj
index 3e17c6c..3374ee7 100644
--- a/source/component/Delphi 10.3 Rio/dclFFMSource260.dproj
+++ b/source/component/Delphi 10.3 Rio/dclFFMSource260.dproj
@@ -2,7 +2,7 @@
{3BC74F10-002A-41D7-B09F-6458FF2CE8F4}
dclFFMSource260.dpk
- 18.6
+ 18.7
None
True
Debug
@@ -38,6 +38,11 @@
Base
true
+
+ true
+ Base
+ true
+
true
Base
@@ -114,6 +119,14 @@
rtl;$(DCC_UsePackage)
+
+ CFBundleName=$(MSBuildProjectName);CFBundleDisplayName=$(MSBuildProjectName);CFBundleIdentifier=$(MSBuildProjectName);CFBundleVersion=1.0.0;CFBundleShortVersionString=1.0.0;CFBundlePackageType=APPL;CFBundleSignature=????;CFBundleAllowMixedLocalizations=YES;CFBundleExecutable=$(MSBuildProjectName);NSHighResolutionCapable=true;LSApplicationCategoryType=public.app-category.utilities;NSLocationUsageDescription=The reason for accessing the location information of the user;NSContactsUsageDescription=The reason for accessing the contacts
+ Debug
+ true
+ Base
+ true
+ rtl;$(DCC_UsePackage);$(DCC_UsePackage)
+
rtl;ocvOpenCV210;ocvOpenCV220;ocvOpenCV300;ocvOpenCV310;$(DCC_UsePackage)
true
@@ -286,6 +299,12 @@
1
+
+
+ res\values
+ 1
+
+
res\drawable
@@ -322,6 +341,36 @@
1
+
+
+ res\drawable-mdpi
+ 1
+
+
+
+
+ res\drawable-hdpi
+ 1
+
+
+
+
+ res\drawable-xhdpi
+ 1
+
+
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+
+
+ res\drawable-xxxhdpi
+ 1
+
+
res\drawable-small
@@ -346,6 +395,12 @@
1
+
+
+ res\values
+ 1
+
+
1
@@ -444,6 +499,17 @@
1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
1
@@ -455,6 +521,39 @@
1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
1
@@ -466,6 +565,61 @@
1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
1
@@ -477,6 +631,116 @@
1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
1
@@ -510,6 +774,28 @@
1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
1
@@ -624,6 +910,7 @@
False
False
False
+ False
True
False
diff --git a/source/component/Delphi 10.3 Rio/dclFMXOpenCV260.dproj b/source/component/Delphi 10.3 Rio/dclFMXOpenCV260.dproj
index f5063f5..ee98014 100644
--- a/source/component/Delphi 10.3 Rio/dclFMXOpenCV260.dproj
+++ b/source/component/Delphi 10.3 Rio/dclFMXOpenCV260.dproj
@@ -7,7 +7,7 @@
1
Package
None
- 18.6
+ 18.7
Win32
@@ -38,6 +38,11 @@
Base
true
+
+ true
+ Base
+ true
+
true
Base
@@ -76,6 +81,12 @@
true
true
+
+ true
+ Cfg_2
+ true
+ true
+
true
Cfg_2
@@ -135,6 +146,14 @@
fmx;$(DCC_UsePackage)
+
+ CFBundleName=$(MSBuildProjectName);CFBundleDisplayName=$(MSBuildProjectName);CFBundleIdentifier=$(MSBuildProjectName);CFBundleVersion=1.0.0;CFBundleShortVersionString=1.0.0;CFBundlePackageType=APPL;CFBundleSignature=????;CFBundleAllowMixedLocalizations=YES;CFBundleExecutable=$(MSBuildProjectName);NSHighResolutionCapable=true;LSApplicationCategoryType=public.app-category.utilities;NSLocationUsageDescription=The reason for accessing the location information of the user;NSContactsUsageDescription=The reason for accessing the contacts
+ Debug
+ true
+ Base
+ true
+ fmx;$(DCC_UsePackage);$(DCC_UsePackage)
+
fmx;OpenCV210;ocvOpenCV210;ocvOpenCV220;ocvOpenCV300;ocvOpenCV310;$(DCC_UsePackage)
true
@@ -168,6 +187,9 @@
true
+
+ true
+
1033
true
@@ -219,6 +241,7 @@
False
False
False
+ False
True
False
@@ -333,6 +356,12 @@
1
+
+
+ res\values
+ 1
+
+
res\drawable
@@ -369,6 +398,36 @@
1
+
+
+ res\drawable-mdpi
+ 1
+
+
+
+
+ res\drawable-hdpi
+ 1
+
+
+
+
+ res\drawable-xhdpi
+ 1
+
+
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+
+
+ res\drawable-xxxhdpi
+ 1
+
+
res\drawable-small
@@ -393,6 +452,12 @@
1
+
+
+ res\values
+ 1
+
+
1
@@ -491,6 +556,17 @@
1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
1
@@ -502,6 +578,39 @@
1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
1
@@ -513,6 +622,61 @@
1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
1
@@ -524,6 +688,116 @@
1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
1
@@ -557,6 +831,28 @@
1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
1
diff --git a/source/component/Delphi 10.3 Rio/dclVCLOpenCV260.dproj b/source/component/Delphi 10.3 Rio/dclVCLOpenCV260.dproj
index aa2422a..f0caa0f 100644
--- a/source/component/Delphi 10.3 Rio/dclVCLOpenCV260.dproj
+++ b/source/component/Delphi 10.3 Rio/dclVCLOpenCV260.dproj
@@ -7,7 +7,7 @@
1
Package
None
- 18.6
+ 18.7
Win32
@@ -262,6 +262,12 @@
1
+
+
+ res\values
+ 1
+
+
res\drawable
@@ -298,6 +304,36 @@
1
+
+
+ res\drawable-mdpi
+ 1
+
+
+
+
+ res\drawable-hdpi
+ 1
+
+
+
+
+ res\drawable-xhdpi
+ 1
+
+
+
+
+ res\drawable-xxhdpi
+ 1
+
+
+
+
+ res\drawable-xxxhdpi
+ 1
+
+
res\drawable-small
@@ -322,6 +358,12 @@
1
+
+
+ res\values
+ 1
+
+
1
@@ -420,6 +462,17 @@
1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
1
@@ -431,6 +484,39 @@
1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
1
@@ -442,6 +528,61 @@
1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
1
@@ -453,6 +594,116 @@
1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
1
@@ -486,6 +737,28 @@
1
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
+
+
+ 1
+
+
+ 1
+
+
+ 1
+
+
1
diff --git a/source/ocv.core_c.pas b/source/ocv.core_c.pas
index 92c9e12..f53cba1 100644
--- a/source/ocv.core_c.pas
+++ b/source/ocv.core_c.pas
@@ -92,8 +92,7 @@ function cvCreateImageHeader(size: TCvSize; depth: Integer; channels: Integer):
int align CV_DEFAULT(4));
}
{$EXTERNALSYM cvInitImageHeader}
-function cvInitImageHeader(image: pIplImage; size: TCvSize; depth: Integer; channels: Integer; origin: Integer = 0; align: Integer = 4)
- : pIplImage; cdecl;
+function cvInitImageHeader(image: pIplImage; size: TCvSize; depth: Integer; channels: Integer; origin: Integer = 0; align: Integer = 4): pIplImage; cdecl;
{ Creates IPL image (header and data
CVAPI(IplImage*) cvCreateImage( CvSize size, int depth, int channels );
@@ -165,8 +164,7 @@ const
int step CV_DEFAULT(CV_AUTOSTEP) );
}
{$EXTERNALSYM cvInitMatHeader}
-function cvInitMatHeader(mat: pCvMat; rows: Integer; cols: Integer; _type: Integer; data: Pointer = nil; step: Integer = CV_AUTOSTEP)
- : pCvMat; cdecl;
+function cvInitMatHeader(mat: pCvMat; rows: Integer; cols: Integer; _type: Integer; data: Pointer = nil; step: Integer = CV_AUTOSTEP): pCvMat; cdecl;
{ Allocates and initializes CvMat header and allocates data
CVAPI(CvMat*) cvCreateMat( int rows, int cols, int type );
@@ -382,8 +380,8 @@ const
int flags CV_DEFAULT(0) );
}
{$EXTERNALSYM cvInitNArrayIterator}
-function cvInitNArrayIterator(count: Integer; arrs: pCvArr; const mask: pCvArr; stubs: pCvMatND; array_iterator: pCvNArrayIterator;
- flags: Integer = 0): Integer; cdecl;
+function cvInitNArrayIterator(count: Integer; arrs: pCvArr; const mask: pCvArr; stubs: pCvMatND; array_iterator: pCvNArrayIterator; flags: Integer = 0)
+ : Integer; cdecl;
{ returns zero value if iteration is finished, non-zero (slice length) otherwise */
CVAPI(int) cvNextNArraySlice( CvNArrayIterator* array_iterator );
@@ -436,8 +434,7 @@ function cvPtr3D(const arr: pCvArr; idx0, idx1, idx2: Integer; cType: pInteger =
unsigned* precalc_hashval CV_DEFAULT(NULL));
}
{$EXTERNALSYM cvPtrND}
-function cvPtrND(const arr: pCvArr; idx: pInteger; cType: pInteger = nil; create_node: Integer = 1; precalc_hashval: punsigned = nil)
- : pCvArr; cdecl;
+function cvPtrND(const arr: pCvArr; idx: pInteger; cType: pInteger = nil; create_node: Integer = 1; precalc_hashval: punsigned = nil): pCvArr; cdecl;
{ value = arr(idx0,idx1,...)
CVAPI(CvScalar) cvGet1D( const pCvArr* arr, int idx0 );
@@ -473,38 +470,40 @@ function cvGetReal3D(const arr: pCvArr; idx0, idx1, idx2: Integer): double; cdec
function cvGetRealND(const arr: pCvArr; idx: pInteger): double; cdecl;
{ arr(idx0,idx1,...) = value
- CVAPI(void) cvSet1D( pCvArr* arr, int idx0, CvScalar value );
- CVAPI(void) cvSet2D( pCvArr* arr, int idx0, int idx1, CvScalar value );
- CVAPI(void) cvSet3D( pCvArr* arr, int idx0, int idx1, int idx2, CvScalar value );
- CVAPI(void) cvSetND( pCvArr* arr, const int* idx, CvScalar value );
+ CVAPI(void) cvSet1D( CvArr* arr, int idx0, CvScalar value );
+ CVAPI(void) cvSet2D( CvArr* arr, int idx0, int idx1, CvScalar value );
+ CVAPI(void) cvSet3D( CvArr* arr, int idx0, int idx1, int idx2, CvScalar value );
+ CVAPI(void) cvSetND( CvArr* arr, const int* idx, CvScalar value );
}
-{$EXTERNALSYM cvSet1D}
-procedure cvSet1D(arr: pCvArr; idx0: Integer; var value: TCvScalar); cdecl;
-{$EXTERNALSYM cvSet2D}
-procedure cvSet2D(arr: pCvArr; idx0, idx1: Integer; var value: TCvScalar); cdecl;
-{$EXTERNALSYM cvSet3D}
-procedure cvSet3D(arr: pCvArr; idx0, idx1, idx2: Integer; var value: TCvScalar); cdecl;
-{$EXTERNALSYM cvSetND}
-procedure cvSetND(arr: pCvArr; idx: pInteger; var value: TCvScalar); cdecl;
-{ for 1-channel arrays */
- CVAPI(void) cvSetReal1D( pCvArr* arr, int idx0, double value );
- CVAPI(void) cvSetReal2D( pCvArr* arr, int idx0, int idx1, double value );
- CVAPI(void) cvSetReal3D( pCvArr* arr, int idx0, int idx1, int idx2, double value );
- CVAPI(void) cvSetRealND( pCvArr* arr, const int* idx, double value );
+{$EXTERNALSYM cvSet1D}
+procedure cvSet1D(arr: pCvArr; idx0: Integer; value: TCvScalar); cdecl;
+{$EXTERNALSYM cvSet2D}
+procedure cvSet2D(arr: pCvArr; idx0, idx1: Integer; value: TCvScalar); cdecl;
+{$EXTERNALSYM cvSet3D}
+procedure cvSet3D(arr: pCvArr; idx0, idx1, idx2: Integer; value: TCvScalar); cdecl;
+{$EXTERNALSYM cvSetND}
+procedure cvSetND(arr: pCvArr; idx: pInteger; value: TCvScalar); cdecl;
+
+{ /* for 1-channel arrays */
+ CVAPI(void) cvSetReal1D( CvArr* arr, int idx0, double value );
+ CVAPI(void) cvSetReal2D( CvArr* arr, int idx0, int idx1, double value );
+ CVAPI(void) cvSetReal3D( CvArr* arr, int idx0, int idx1, int idx2, double value );
+ CVAPI(void) cvSetRealND( CvArr* arr, const int* idx, double value );
}
{$EXTERNALSYM cvSetReal1D}
-procedure cvSetReal1D(arr: pCvArr; idx0: Integer; var value: double); cdecl;
+procedure cvSetReal1D(arr: pCvArr; idx0: Integer; value: double); cdecl;
{$EXTERNALSYM cvSetReal2D}
-procedure cvSetReal2D(arr: pCvArr; idx0, idx1: Integer; var value: double); cdecl;
+procedure cvSetReal2D(arr: pCvArr; idx0, idx1: Integer; value: double); cdecl;
{$EXTERNALSYM cvSetReal3D}
-procedure cvSetReal3D(arr: pCvArr; idx0, idx1, idx2: Integer; var value: double); cdecl;
+procedure cvSetReal3D(arr: pCvArr; idx0, idx1, idx2: Integer; value: double); cdecl;
{$EXTERNALSYM cvSetRealND}
-procedure cvSetRealND(arr: pCvArr; idx: pInteger; var value: double); cdecl;
+procedure cvSetRealND(arr: pCvArr; idx: pInteger; value: double); cdecl;
-{ clears element of ND dense array,
+{
+ /* clears element of ND dense array,
in case of sparse arrays it deletes the specified node */
- CVAPI(void) cvClearND( pCvArr* arr, const int* idx );
+ CVAPI(void) cvClearND( CvArr* arr, const int* idx );
}
{$EXTERNALSYM cvClearND}
procedure cvClearND(arr: pCvArr; idx: pInteger); cdecl;
@@ -545,8 +544,7 @@ function cvGetImage(const arr: pCvArr; image_header: pIplImage): pIplImage; cdec
(new_cn), (new_dims), (new_sizes))
}
{$EXTERNALSYM cvReshapeMatND}
-function cvReshapeMatND(const arr: pCvArr; sizeof_header: Integer; header: pCvArr; new_cn, new_dims: Integer; new_sizes: pInteger)
- : pCvArr; cdecl;
+function cvReshapeMatND(const arr: pCvArr; sizeof_header: Integer; header: pCvArr; new_cn, new_dims: Integer; new_sizes: pInteger): pCvArr; cdecl;
{$EXTERNALSYM cvReshapeND}
function cvReshapeND(const arr: pCvArr; sizeof_header: Integer; header: pCvArr; new_cn, new_dims: Integer; new_sizes: pInteger): pCvArr;
{$IFDEF USE_INLINE} inline; {$ENDIF}
@@ -835,7 +833,7 @@ procedure cvInRange(const src: pCvArr; const lower: pCvArr; const upper: pCvArr;
procedure cvInRangeS(const src: pCvArr; lower: TCvScalar; upper: TCvScalar; dst: pCvArr); cdecl; overload;
const
- CV_RAND_UNI = 0;
+ CV_RAND_UNI = 0;
CV_RAND_NORMAL = 1;
// CVAPI(void)cvRandArr(CvRNG * rng, CvArr * arr, int dist_type, CvScalar param1, CvScalar param2);
@@ -935,17 +933,17 @@ procedure cvMirror(const src: pCvArr; dst: pCvArr = nil; flip_mode: Integer = 0)
const
// * types of array norm */
- CV_C = 1;
- CV_L1 = 2;
- CV_L2 = 4;
- CV_NORM_MASK = 7;
- CV_RELATIVE = 8;
- CV_DIFF = 16;
- CV_MINMAX = 32;
- CV_DIFF_C = (CV_DIFF or CV_C);
- CV_DIFF_L1 = (CV_DIFF or CV_L1);
- CV_DIFF_L2 = (CV_DIFF or CV_L2);
- CV_RELATIVE_C = (CV_RELATIVE or CV_C);
+ CV_C = 1;
+ CV_L1 = 2;
+ CV_L2 = 4;
+ CV_NORM_MASK = 7;
+ CV_RELATIVE = 8;
+ CV_DIFF = 16;
+ CV_MINMAX = 32;
+ CV_DIFF_C = (CV_DIFF or CV_C);
+ CV_DIFF_L1 = (CV_DIFF or CV_L1);
+ CV_DIFF_L2 = (CV_DIFF or CV_L2);
+ CV_RELATIVE_C = (CV_RELATIVE or CV_C);
CV_RELATIVE_L1 = (CV_RELATIVE or CV_L1);
CV_RELATIVE_L2 = (CV_RELATIVE or CV_L2);
@@ -963,8 +961,8 @@ function cvNorm(const arr1: pCvArr; const arr2: pCvArr = nil; norm_type: Integer
const CvArr* mask CV_DEFAULT(NULL) );
*)
-procedure cvNormalize(const src: pCvArr; dst: pCvArr; A: double { = CV_DEFAULT(1) }; B: double { =CV_DEFAULT(0.) };
- norm_type: Integer { =CV_DEFAULT(CV_L2) }; const mask: pCvArr = nil); cdecl;
+procedure cvNormalize(const src: pCvArr; dst: pCvArr; A: double { = CV_DEFAULT(1) }; B: double { =CV_DEFAULT(0.) }; norm_type: Integer { =CV_DEFAULT(CV_L2) };
+ const mask: pCvArr = nil); cdecl;
// ****************************************************************************************
@@ -990,11 +988,9 @@ const
// CVAPI(void) cvGEMM( const CvArr* src1, const CvArr* src2, double alpha,
// const CvArr* src3, double beta, CvArr* dst,
// int tABC CV_DEFAULT(0));
-procedure cvGEMM(const src1: pCvArr; const src2: pCvArr; alpha: double; const src3: pCvArr; beta: double; dst: pCvArr;
- tABC: Integer = 0); cdecl;
+procedure cvGEMM(const src1: pCvArr; const src2: pCvArr; alpha: double; const src3: pCvArr; beta: double; dst: pCvArr; tABC: Integer = 0); cdecl;
// #define cvMatMulAddEx cvGEMM
-procedure cvMatMulAddEx(const src1: pCvArr; const src2: pCvArr; alpha: double; const src3: pCvArr; beta: double; dst: pCvArr;
- tABC: Integer = 0); cdecl;
+procedure cvMatMulAddEx(const src1: pCvArr; const src2: pCvArr; alpha: double; const src3: pCvArr; beta: double; dst: pCvArr; tABC: Integer = 0); cdecl;
/// * Transforms each element of source array and stores
// resultant vectors in destination array */
@@ -1028,8 +1024,8 @@ procedure cvCompleteSymm(matrix: pCvMat; LtoR: Integer = 0); cdecl;
const
CV_SVD_MODIFY_A = 1;
- CV_SVD_U_T = 2;
- CV_SVD_V_T = 4;
+ CV_SVD_U_T = 2;
+ CV_SVD_V_T = 4;
/// * Performs Singular Value Decomposition of a matrix */
// CVAPI(void) cvSVD( CvArr* A, CvArr* W, CvArr* U CV_DEFAULT(NULL),
@@ -1044,12 +1040,12 @@ procedure cvSVD(A: pCvArr; W: pCvArr; U: pCvArr = nil; V: pCvArr = nil; flags: I
procedure cvSVBkSb(const W: pCvArr; const U: pCvArr; const V: pCvArr; const B: pCvArr; x: pCvArr; flags: Integer); cdecl;
const
- CV_LU = 0;
- CV_SVD = 1;
- CV_SVD_SYM = 2;
+ CV_LU = 0;
+ CV_SVD = 1;
+ CV_SVD_SYM = 2;
CV_CHOLESKY = 3;
- CV_QR = 4;
- CV_NORMAL = 16;
+ CV_QR = 4;
+ CV_NORMAL = 16;
// * Inverts matrix */
// CVAPI(double) cvInvert( const CvArr* src, CvArr* dst,
@@ -1112,12 +1108,12 @@ function cvRange(mat: pCvArr; start: double; end_: double): pCvArr; cdecl;
const
CV_COVAR_SCRAMBLED = 0;
- CV_COVAR_NORMAL = 1; // [v1-avg, v2-avg,...] * transpose([v1-avg,v2-avg,...])
- CV_COVAR_USE_AVG = 2; // do not calc average (i.e. mean vector) - use the input vector instead
+ CV_COVAR_NORMAL = 1; // [v1-avg, v2-avg,...] * transpose([v1-avg,v2-avg,...])
+ CV_COVAR_USE_AVG = 2; // do not calc average (i.e. mean vector) - use the input vector instead
/// //////////////////// (useful for calculating covariance matrix by parts)
CV_COVAR_SCALE = 4; // scale the covariance matrix coefficients by number of the vectors
- CV_COVAR_ROWS = 8; // all the input vectors are stored in a single matrix, as its rows
- CV_COVAR_COLS = 16; // all the input vectors are stored in a single matrix, as its columns
+ CV_COVAR_ROWS = 8; // all the input vectors are stored in a single matrix, as its rows
+ CV_COVAR_COLS = 16; // all the input vectors are stored in a single matrix, as its columns
(*
CVAPI(void) cvCalcCovarMatrix( const CvArr** vects, int count,
@@ -1128,7 +1124,7 @@ procedure cvCalcCovarMatrix(const vects: pCvArrArray; count: Integer; cov_mat: p
const
CV_PCA_DATA_AS_ROW = 0; // #define CV_PCA_DATA_AS_ROW 0
CV_PCA_DATA_AS_COL = 1; // #define CV_PCA_DATA_AS_COL 1
- CV_PCA_USE_AVG = 2; // #define CV_PCA_USE_AVG 2
+ CV_PCA_USE_AVG = 2; // #define CV_PCA_USE_AVG 2
(*
CVAPI(void) cvCalcPCA( const CvArr* data, CvArr* mean,
CvArr* eigenvals, CvArr* eigenvects, int flags );
@@ -1185,8 +1181,8 @@ procedure cvAvgSdv(const arr: pCvArr; mean: pCvScalar; std_dev: pCvScalar; const
}
// procedure cvMinMaxLoc(const arr: pIplImage; min_val: pDouble; max_val: pDouble; min_loc: pCVPoint = nil; max_loc: pCVPoint = nil;
// const mask: pIplImage = nil); cdecl; overload;
-procedure cvMinMaxLoc(const arr: pCvArr; min_val: pDouble; max_val: pDouble; min_loc: pCVPoint = nil; max_loc: pCVPoint = nil;
- const mask: pCvArr = nil); cdecl; overload;
+procedure cvMinMaxLoc(const arr: pCvArr; min_val: pDouble; max_val: pDouble; min_loc: pCVPoint = nil; max_loc: pCVPoint = nil; const mask: pCvArr = nil);
+ cdecl; overload;
const
CV_REDUCE_SUM = 0;
@@ -1204,13 +1200,13 @@ procedure cvReduce(const src: pCvArr; dst: pCvArr; dim: Integer = -1; op: Intege
// ****************************************************************************************
const
- CV_DXT_FORWARD = 0;
- CV_DXT_INVERSE = 1;
- CV_DXT_SCALE = 2; // * divide result by size of array */
- CV_DXT_INV_SCALE = (CV_DXT_INVERSE + CV_DXT_SCALE);
+ CV_DXT_FORWARD = 0;
+ CV_DXT_INVERSE = 1;
+ CV_DXT_SCALE = 2; // * divide result by size of array */
+ CV_DXT_INV_SCALE = (CV_DXT_INVERSE + CV_DXT_SCALE);
CV_DXT_INVERSE_SCALE = CV_DXT_INV_SCALE;
- CV_DXT_ROWS = 4; // * transform each row individually */
- CV_DXT_MUL_CONJ = 8; // * conjugate the second argument of cvMulSpectrums */
+ CV_DXT_ROWS = 4; // * transform each row individually */
+ CV_DXT_MUL_CONJ = 8; // * conjugate the second argument of cvMulSpectrums */
// * Discrete Fourier Transform:
// complex->complex,
@@ -1373,8 +1369,8 @@ procedure cvCvtSeqToArray(const seq: pCvSeq; elements: pCvArr; slice: TCvSlice {
int elem_size, void* elements, int total,
CvSeq* seq, CvSeqBlock* block );
*)
-function cvMakeSeqHeaderForArray(seq_type: Integer; header_size: Integer; elem_size: Integer; elements: Pointer; total: Integer;
- seq: pCvSeq; block: pCvSeqBlock): pCvSeq; cdecl;
+function cvMakeSeqHeaderForArray(seq_type: Integer; header_size: Integer; elem_size: Integer; elements: Pointer; total: Integer; seq: pCvSeq;
+ block: pCvSeqBlock): pCvSeq; cdecl;
(*
Extracts sequence slice (with or without copying sequence elements)
@@ -1408,8 +1404,7 @@ function cvCreateSet(set_flags: Integer; header_size: Integer; elem_size: Intege
int vtx_size, int edge_size,
CvMemStorage* storage );
*)
-function cvCreateGraph(graph_flags: Integer; header_size: Integer; vtx_size: Integer; edge_size: Integer; storage: pCvMemStorage)
- : pCvGraph; cdecl;
+function cvCreateGraph(graph_flags: Integer; header_size: Integer; vtx_size: Integer; edge_size: Integer; storage: pCvMemStorage): pCvGraph; cdecl;
(*
Adds new vertex to the graph
@@ -1443,8 +1438,8 @@ function cvGraphRemoveVtxByPtr(graph: pCvGraph; vtx: pCvGraphVtx): Integer; cdec
const CvGraphEdge* edge CV_DEFAULT(NULL),
CvGraphEdge** inserted_edge CV_DEFAULT(NULL) );
*)
-function cvGraphAddEdge(graph: pCvGraph; start_idx: Integer; end_idx: Integer; const edge: pCvGraphEdge = nil;
- inserted_edge: pCvGraphEdgeArray = nil): Integer; cdecl;
+function cvGraphAddEdge(graph: pCvGraph; start_idx: Integer; end_idx: Integer; const edge: pCvGraphEdge = nil; inserted_edge: pCvGraphEdgeArray = nil)
+ : Integer; cdecl;
(*
CVAPI(int) cvGraphAddEdgeByPtr( CvGraph* graph,
CvGraphVtx* start_vtx, CvGraphVtx* end_vtx,
@@ -1523,16 +1518,16 @@ function cvGraphVtxDegreeByPtr(const graph: pCvGraph; const vtx: pCvGraphVtx): I
*)
const
- CV_GRAPH_VERTEX = 1;
- CV_GRAPH_TREE_EDGE = 2;
- CV_GRAPH_BACK_EDGE = 4;
+ CV_GRAPH_VERTEX = 1;
+ CV_GRAPH_TREE_EDGE = 2;
+ CV_GRAPH_BACK_EDGE = 4;
CV_GRAPH_FORWARD_EDGE = 8;
- CV_GRAPH_CROSS_EDGE = 16;
- CV_GRAPH_ANY_EDGE = 30;
- CV_GRAPH_NEW_TREE = 32;
+ CV_GRAPH_CROSS_EDGE = 16;
+ CV_GRAPH_ANY_EDGE = 30;
+ CV_GRAPH_NEW_TREE = 32;
CV_GRAPH_BACKTRACKING = 64;
- CV_GRAPH_OVER = -1;
- CV_GRAPH_ALL_ITEMS = -1;
+ CV_GRAPH_OVER = -1;
+ CV_GRAPH_ALL_ITEMS = -1;
(*
flags for graph vertices and edges
*)
@@ -1544,7 +1539,7 @@ const
// (((CvGraphEdge*)(edge))->flags & CV_GRAPH_ITEM_VISITED_FLAG)
CV_GRAPH_SEARCH_TREE_NODE_FLAG = (1 shl 29);
- CV_GRAPH_FORWARD_EDGE_FLAG = (1 shl 28);
+ CV_GRAPH_FORWARD_EDGE_FLAG = (1 shl 28);
type
(* typedef struct CvGraphScanner
@@ -1694,8 +1689,7 @@ function cvSeqPartition(const seq: pCvSeq; storage: pCvMemStorage; labels: pCvSe
int is_sorted, int* elem_idx,
void* userdata CV_DEFAULT(NULL) );
*)
-function cvSeqSearch(seq: pCvSeq; const elem: Pointer; func: TCvCmpFunc; is_sorted: Integer; elem_idx: pInteger; userdata: Pointer = nil)
- : pschar; cdecl;
+function cvSeqSearch(seq: pCvSeq; const elem: Pointer; func: TCvCmpFunc; is_sorted: Integer; elem_idx: pInteger; userdata: Pointer = nil): pschar; cdecl;
{ ****************************************************************************************
* Drawing *
@@ -1715,22 +1709,19 @@ const
int line_type CV_DEFAULT(8), int shift CV_DEFAULT(0) );
}
-procedure cvLine(img: pCvArr; pt1, pt2: TCvPoint; color: TCvScalar; thickness: Integer = 1; line_type: Integer = 8;
- shift: Integer = 0); cdecl;
+procedure cvLine(img: pCvArr; pt1, pt2: TCvPoint; color: TCvScalar; thickness: Integer = 1; line_type: Integer = 8; shift: Integer = 0); cdecl;
{ Draws a rectangle specified by a CvRect structure
procedure cvRectangleR(8: v1: ); shift CV_DEFAULT(0): Integer): Integer;
}
-procedure cvRectangle(img: pCvArr; pt1: TCvPoint; pt2: TCvPoint; color: TCvScalar; thickness: Integer = 1; line_type: Integer = 8;
- shift: Integer = 0); cdecl;
+procedure cvRectangle(img: pCvArr; pt1: TCvPoint; pt2: TCvPoint; color: TCvScalar; thickness: Integer = 1; line_type: Integer = 8; shift: Integer = 0); cdecl;
{ Draws a circle with specified center and radius.
Thickness works in the same way as with cvRectangle
CVAPI(void) cvCircle( pCvArr* img, CvPoint center, int radius,
CvScalar color, int thickness CV_DEFAULT(1), int line_type CV_DEFAULT(8), int shift CV_DEFAULT(0));
}
-procedure cvCircle(img: pCvArr; center: TCvPoint; radius: Integer; color: TCvScalar; thickness: Integer = 1; line_type: Integer = 8;
- shift: Integer = 0); cdecl;
+procedure cvCircle(img: pCvArr; center: TCvPoint; radius: Integer; color: TCvScalar; thickness: Integer = 1; line_type: Integer = 8; shift: Integer = 0); cdecl;
{ Draws ellipse outline, filled ellipse, elliptic arc or filled elliptic sector,
depending on , and parameters. The resultant figure
@@ -1761,16 +1752,15 @@ procedure cvEllipseBox(img: pCvArr; box: TCvBox2D; color: TCvScalar; thickness:
int line_type CV_DEFAULT(8), int shift CV_DEFAULT(0));
}
-procedure cvFillConvexPoly(img: pCvArr; const pts: pCVPoint; npts: Integer; color: TCvScalar; line_type: Integer = 8;
- shift: Integer = 0); cdecl;
+procedure cvFillConvexPoly(img: pCvArr; const pts: pCVPoint; npts: Integer; color: TCvScalar; line_type: Integer = 8; shift: Integer = 0); cdecl;
{ Draws one or more polygonal curves
CVAPI(void) cvPolyLine( pCvArr* img, CvPoint** pts, const int* npts, int contours,
int is_closed, CvScalar color, int thickness CV_DEFAULT(1),
int line_type CV_DEFAULT(8), int shift CV_DEFAULT(0) );
}
-procedure cvPolyLine(img: pCvArr; pts: pCVPoint; const npts: pInteger; contours: Integer; is_closed: Integer; color: TCvScalar;
- thickness: Integer = 1; line_type: Integer = 8; shift: Integer = 0); cdecl;
+procedure cvPolyLine(img: pCvArr; pts: pCVPoint; const npts: pInteger; contours: Integer; is_closed: Integer; color: TCvScalar; thickness: Integer = 1;
+ line_type: Integer = 8; shift: Integer = 0); cdecl;
(*
Clips the line segment connecting *pt1 and *pt2
@@ -1876,8 +1866,7 @@ function cvColorToScalar(packed_color: double; arrtype: Integer): TCvScalar; cde
CVAPI(int) cvEllipse2Poly( CvPoint center, CvSize axes,
int angle, int arc_start, int arc_end, CvPoint * pts, int delta );
*)
-function cvEllipse2Poly(center: TCvPoint; axes: TCvSize; angle: Integer; arc_start: Integer; arc_end: Integer; pts: pCVPoint;
- delta: Integer): Integer; cdecl;
+function cvEllipse2Poly(center: TCvPoint; axes: TCvSize; angle: Integer; arc_start: Integer; arc_end: Integer; pts: pCVPoint; delta: Integer): Integer; cdecl;
{ Draws contour outlines or filled interiors on the image
CVAPI(void) cvDrawContours( pCvArr *img, CvSeq* contour,
@@ -1886,8 +1875,8 @@ function cvEllipse2Poly(center: TCvPoint; axes: TCvSize; angle: Integer; arc_sta
int line_type CV_DEFAULT(8),
CvPoint offset CV_DEFAULT(cvPoint(0,0)));
}
-procedure cvDrawContours(img: pIplImage; contour: pCvSeq; external_color, hole_color: TCvScalar;
- max_level, thickness { =1 } , line_type: Integer { =8 }; offset: TCvPoint { =cvPoint(0,0) } ); cdecl;
+procedure cvDrawContours(img: pIplImage; contour: pCvSeq; external_color, hole_color: TCvScalar; max_level, thickness { =1 } , line_type: Integer { =8 };
+ offset: TCvPoint { =cvPoint(0,0) } ); cdecl;
// ******************* Iteration through the sequence tree *****************/
type
@@ -1935,8 +1924,8 @@ function cvTreeToNodeSeq(const first: Pointer; header_size: Integer; storage: pC
const
CV_KMEANS_USE_INITIAL_LABELS = 1;
-function cvKMeans2(const samples: pCvArr; cluster_count: Integer; labels: pCvArr; termcrit: TCvTermCriteria; attempts: Integer = 1;
- rng: pCvRNG = nil; flags: Integer = 0; _centers: pCvArr = nil; compactness: pDouble = nil): Integer; cdecl;
+function cvKMeans2(const samples: pCvArr; cluster_count: Integer; labels: pCvArr; termcrit: TCvTermCriteria; attempts: Integer = 1; rng: pCvRNG = nil;
+ flags: Integer = 0; _centers: pCvArr = nil; compactness: pDouble = nil): Integer; cdecl;
(*
***************************************************************************************\
@@ -1987,8 +1976,8 @@ type
(* typedef IplImage* (CV_STDCALL* Cv_iplCreateImageHeader)
(int,int,int,char*,char*,int,int,int,int,int,
IplROI*,IplImage*,void*,IplTileInfo *)
- TCv_iplCreateImageHeader = function(A: Integer; B: Integer; C: Integer; D: pCvChar; E: pCvChar; F: Integer; g: Integer; H: Integer;
- i: Integer; j: Integer; K: pIplROI; L: pIplImage; M: Pointer; N: PIplTileInfo): pIplImage; stdcall;
+ TCv_iplCreateImageHeader = function(A: Integer; B: Integer; C: Integer; D: pCvChar; E: pCvChar; F: Integer; g: Integer; H: Integer; i: Integer; j: Integer;
+ K: pIplROI; L: pIplImage; M: Pointer; N: PIplTileInfo): pIplImage; stdcall;
(* typedef void (CV_STDCALL* Cv_iplAllocateImageData)(IplImage*,int,int); *)
TCv_iplAllocateImageData = procedure(A: pIplImage; B: Integer); stdcall;
@@ -2011,8 +2000,8 @@ type
Cv_iplCreateROI create_roi,
Cv_iplCloneImage clone_image );
*)
-procedure cvSetIPLAllocators(create_header: TCv_iplCreateImageHeader; allocate_data: TCv_iplAllocateImageData;
- deallocate: TCv_iplDeallocate; create_roi: TCv_iplCreateROI; clone_image: TCv_iplCloneImage); cdecl;
+procedure cvSetIPLAllocators(create_header: TCv_iplCreateImageHeader; allocate_data: TCv_iplAllocateImageData; deallocate: TCv_iplDeallocate;
+ create_roi: TCv_iplCreateROI; clone_image: TCv_iplCloneImage); cdecl;
{ ****************************************************************************************
* Data Persistence *
@@ -2024,8 +2013,7 @@ procedure cvSetIPLAllocators(create_header: TCv_iplCreateImageHeader; allocate_d
CVAPI(CvFileStorage*) cvOpenFileStorage( const char* filename, CvMemStorage* memstorage,
int flags, const char* encoding CV_DEFAULT(NULL) );
}
-function cvOpenFileStorage(const filename: pCvChar; memstorage: pCvMemStorage; flags: Integer; const encoding: pCvChar = nil)
- : pCvFileStorage; cdecl;
+function cvOpenFileStorage(const filename: pCvChar; memstorage: pCvMemStorage; flags: Integer; const encoding: pCvChar = nil): pCvFileStorage; cdecl;
{ closes file storage and deallocates buffers
CVAPI(void) cvReleaseFileStorage( CvFileStorage** fs );
@@ -2073,8 +2061,7 @@ function cvReadString(const node: pCvFileNode; const default_value: pCvChar = ni
// return cvReadString( cvGetFileNodeByName( fs, map, name ), default_value );
// }
-function cvReadStringByName(const fs: pCvFileStorage; const map: pCvFileNode; const name: pCvChar;
- const default_value: pCvChar = nil): pCvChar;
+function cvReadStringByName(const fs: pCvFileStorage; const map: pCvFileNode; const name: pCvChar; const default_value: pCvChar = nil): pCvChar;
{$IFDEF USE_INLINE} inline; {$ENDIF}
{ decodes standard or user-defined object and returns it
CVAPI(void*) cvRead( CvFileStorage* fs, CvFileNode* node,
@@ -2178,13 +2165,11 @@ function cvClone(const struct_ptr: Pointer): Pointer; cdecl;
const char** real_name CV_DEFAULT(NULL) );
}
-procedure cvSave(const filename: pCvChar; const struct_ptr: Pointer; const name: pCvChar; const comment: pCvChar; attributes: TCvAttrList);
- cdecl; overload;
+procedure cvSave(const filename: pCvChar; const struct_ptr: Pointer; const name: pCvChar; const comment: pCvChar; attributes: TCvAttrList); cdecl; overload;
procedure cvSave(const filename: pCvChar; const struct_ptr: Pointer; const name: pCvChar = Nil; const comment: pCvChar = Nil); overload;
{$IFDEF USE_INLINE} inline; {$ENDIF}
-function cvLoad(const filename: pCvChar; memstorage: pCvMemStorage = Nil; const name: pCvChar = nil; const real_name: ppCvChar = nil)
- : Pointer; cdecl;
+function cvLoad(const filename: pCvChar; memstorage: pCvMemStorage = Nil; const name: pCvChar = nil; const real_name: ppCvChar = nil): Pointer; cdecl;
{ *********************************** Measuring Execution Time *************************** }
@@ -2212,17 +2197,17 @@ procedure cvSetNumThreads(threads: Integer = 0); cdecl;
function cvGetThreadNum: Integer; cdecl;
const
- CV_CPU_NONE = 0;
- CV_CPU_MMX = 1;
- CV_CPU_SSE = 2;
- CV_CPU_SSE2 = 3;
- CV_CPU_SSE3 = 4;
- CV_CPU_SSSE3 = 5;
- CV_CPU_SSE4_1 = 6;
- CV_CPU_SSE4_2 = 7;
- CV_CPU_POPCNT = 8;
- CV_CPU_AVX = 10;
- CV_CPU_AVX2 = 11;
+ CV_CPU_NONE = 0;
+ CV_CPU_MMX = 1;
+ CV_CPU_SSE = 2;
+ CV_CPU_SSE2 = 3;
+ CV_CPU_SSE3 = 4;
+ CV_CPU_SSSE3 = 5;
+ CV_CPU_SSE4_1 = 6;
+ CV_CPU_SSE4_2 = 7;
+ CV_CPU_POPCNT = 8;
+ CV_CPU_AVX = 10;
+ CV_CPU_AVX2 = 11;
CV_HARDWARE_MAX_FEATURE = 255;
// ********************************** Error Handling **************************************/
@@ -2236,7 +2221,7 @@ function cvGetErrStatus: Integer; cdecl;
procedure cvSetErrStatus(status: Integer); cdecl;
const
- CV_ErrModeLeaf = 0; // * Print error and exit program */
+ CV_ErrModeLeaf = 0; // * Print error and exit program */
CV_ErrModeParent = 1; // * Print error and continue */
CV_ErrModeSilent = 2; // * Don't print and continue */
@@ -2253,8 +2238,7 @@ function cvSetErrMode(mode: Integer): Integer; cdecl;
writing message to stderr, terminating application etc.)
depending on the current error mode *)
// CVAPI(void) cvError( int status, const char* func_name,const char* err_msg, const char* file_name, int line );
-procedure cvError(status: Integer; const func_name: pCvChar; const err_msg: pCvChar; const file_name: pCvChar = nil;
- line: Integer = 0); cdecl;
+procedure cvError(status: Integer; const func_name: pCvChar; const err_msg: pCvChar; const file_name: pCvChar = nil; line: Integer = 0); cdecl;
(*
Retrieves textual description of the error given its code
@@ -2281,8 +2265,8 @@ function cvErrorFromIppStatus(ipp_status: Integer): Integer; cdecl;
type
(* typedef int (CV_CDECL *CvErrorCallback)( int status, const char* func_name,
const char* err_msg, const char* file_name, int line, void* userdata ); *)
- TCvErrorCallback = function(status: Integer; const func_name: pCvChar; const err_msg: pCvChar; const file_name: pCvChar; line: Integer;
- userdata: Pointer): Integer; cdecl;
+ TCvErrorCallback = function(status: Integer; const func_name: pCvChar; const err_msg: pCvChar; const file_name: pCvChar; line: Integer; userdata: Pointer)
+ : Integer; cdecl;
(*
Assigns a new error-handling function
@@ -2305,22 +2289,22 @@ function cvRedirectError(error_handler: TCvErrorCallback; userdata: Pointer = ni
CVAPI(int) cvNulDevReport( int status, const char* func_name, const char* err_msg,
const char* file_name, int line, void* userdata );
*)
-function cvNulDevReport(status: Integer; const func_name: pCvChar; const err_msg: pCvChar; const file_name: pCvChar; line: Integer;
- userdata: Pointer): Integer; cdecl;
+function cvNulDevReport(status: Integer; const func_name: pCvChar; const err_msg: pCvChar; const file_name: pCvChar; line: Integer; userdata: Pointer)
+ : Integer; cdecl;
(*
CVAPI(int) cvStdErrReport( int status, const char* func_name, const char* err_msg,
const char* file_name, int line, void* userdata );
*)
-function cvStdErrReport(status: Integer; const func_name: pCvChar; const err_msg: pCvChar; const file_name: pCvChar; line: Integer;
- userdata: Pointer): Integer; cdecl;
+function cvStdErrReport(status: Integer; const func_name: pCvChar; const err_msg: pCvChar; const file_name: pCvChar; line: Integer; userdata: Pointer)
+ : Integer; cdecl;
(*
CVAPI(int) cvGuiBoxReport( int status, const char* func_name, const char* err_msg,
const char* file_name, int line, void* userdata );
*)
-function cvGuiBoxReport(status: Integer; const func_name: pCvChar; const err_msg: pCvChar; const file_name: pCvChar; line: Integer;
- userdata: Pointer): Integer; cdecl;
+function cvGuiBoxReport(status: Integer; const func_name: pCvChar; const err_msg: pCvChar; const file_name: pCvChar; line: Integer; userdata: Pointer)
+ : Integer; cdecl;
// defined in compat.hpp
procedure cvCvtPixToPlane(const src: pCvArr; dst0: pCvArr; dst1: pCvArr; dst2: pCvArr; dst3: pCvArr); cdecl;
@@ -2577,8 +2561,7 @@ procedure cvSplit; external core_lib;
// procedure cvMerge(const src0: pIplImage; const src1: pIplImage; const src2: pIplImage; const src3: pIplImage; dst: pIplImage); cdecl;
// external core_lib; overload;
-procedure cvMerge(const src0: pCvArr; const src1: pCvArr; const src2: pCvArr; const src3: pCvArr; dst: pCvArr); cdecl;
- external core_lib; overload;
+procedure cvMerge(const src0: pCvArr; const src1: pCvArr; const src2: pCvArr; const src3: pCvArr; dst: pCvArr); cdecl; external core_lib; overload;
procedure cvMixChannels; external core_lib;
@@ -2651,8 +2634,7 @@ end;
// procedure cvAddWeighted; external core_lib;
// procedure cvAddWeighted(const src1: pIplImage; alpha: double; const src2: pIplImage; beta: double; gamma: double; dst: pIplImage); cdecl;
// external core_lib; overload;
-procedure cvAddWeighted(const src1: pCvArr; alpha: double; const src2: pCvArr; beta: double; gamma: double; dst: pCvArr); cdecl;
- external core_lib; overload;
+procedure cvAddWeighted(const src1: pCvArr; alpha: double; const src2: pCvArr; beta: double; gamma: double; dst: pCvArr); cdecl; external core_lib; overload;
function cvDotProduct; external core_lib;
@@ -2705,8 +2687,8 @@ procedure cvInRangeS(const src: pCvArr; lower: TCvScalar; upper: TCvScalar; dst:
// procedure cvMinMaxLoc; external core_lib;
// procedure cvMinMaxLoc(const arr: pIplImage; min_val: pDouble; max_val: pDouble; min_loc: pCVPoint = nil; max_loc: pCVPoint = nil;
// const mask: pIplImage = nil); cdecl; external core_lib; overload;
-procedure cvMinMaxLoc(const arr: pCvArr; min_val: pDouble; max_val: pDouble; min_loc: pCVPoint = nil; max_loc: pCVPoint = nil;
- const mask: pCvArr = nil); cdecl; external core_lib; overload;
+procedure cvMinMaxLoc(const arr: pCvArr; min_val: pDouble; max_val: pDouble; min_loc: pCVPoint = nil; max_loc: pCVPoint = nil; const mask: pCvArr = nil); cdecl;
+ external core_lib; overload;
// procedure cvAnd; external core_lib;
// procedure cvAnd(const src1: pIplImage; const src2: pIplImage; dst: pIplImage; masl: pIplImage = nil); cdecl; external core_lib; overload;
@@ -2744,8 +2726,7 @@ begin
// return !node ? default_value :
// CV_NODE_IS_INT(node->tag) ? node->data.i :
// CV_NODE_IS_REAL(node->tag) ? cvRound(node->data.f) : 0x7fffffff;
- result := iif(not Assigned(node), default_value, iif(CV_NODE_IS_INT(node^.tag), node^.i, iif(CV_NODE_IS_REAL(node^.tag), node^.F,
- $7FFFFFFF)));
+ result := iif(not Assigned(node), default_value, iif(CV_NODE_IS_INT(node^.tag), node^.i, iif(CV_NODE_IS_REAL(node^.tag), node^.F, $7FFFFFFF)));
end;
function cvReadIntByName;
@@ -2883,8 +2864,8 @@ begin
result := cvRead(fs, cvGetFileNodeByName(fs, map, name), attributes);
end;
-function cvReadStringByName(const fs: pCvFileStorage; const map: pCvFileNode; const name: pCvChar; const default_value: pCvChar = nil)
- : pCvChar; {$IFDEF USE_INLINE} inline; {$ENDIF}
+function cvReadStringByName(const fs: pCvFileStorage; const map: pCvFileNode; const name: pCvChar; const default_value: pCvChar = nil): pCvChar;
+{$IFDEF USE_INLINE} inline; {$ENDIF}
begin
result := cvReadString(cvGetFileNodeByName(fs, map, name), default_value);
end;