Refactoring

Signed-off-by: Laentir Valetov <laex@bk.ru>
This commit is contained in:
Laentir Valetov 2014-06-17 01:38:35 +04:00
parent f0a9deecf0
commit e101367d2f
58 changed files with 2635 additions and 4075 deletions

View File

@ -5,7 +5,7 @@
<FrameworkType>VCL</FrameworkType> <FrameworkType>VCL</FrameworkType>
<MainSource>cFFmpegIPCamSource.dpr</MainSource> <MainSource>cFFmpegIPCamSource.dpr</MainSource>
<Base>True</Base> <Base>True</Base>
<Config Condition="'$(Config)'==''">Release</Config> <Config Condition="'$(Config)'==''">Debug</Config>
<Platform Condition="'$(Platform)'==''">Win32</Platform> <Platform Condition="'$(Platform)'==''">Win32</Platform>
<TargetedPlatforms>3</TargetedPlatforms> <TargetedPlatforms>3</TargetedPlatforms>
<AppType>Application</AppType> <AppType>Application</AppType>
@ -45,6 +45,12 @@
<CfgParent>Base</CfgParent> <CfgParent>Base</CfgParent>
<Base>true</Base> <Base>true</Base>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='Win32' and '$(Cfg_2)'=='true') or '$(Cfg_2_Win32)'!=''">
<Cfg_2_Win32>true</Cfg_2_Win32>
<CfgParent>Cfg_2</CfgParent>
<Cfg_2>true</Cfg_2>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="'$(Base)'!=''"> <PropertyGroup Condition="'$(Base)'!=''">
<Icon_MainIcon>$(BDS)\bin\delphi_PROJECTICON.ico</Icon_MainIcon> <Icon_MainIcon>$(BDS)\bin\delphi_PROJECTICON.ico</Icon_MainIcon>
<VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys> <VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
@ -83,7 +89,7 @@
<DCC_RemoteDebug>true</DCC_RemoteDebug> <DCC_RemoteDebug>true</DCC_RemoteDebug>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Cfg_1_Win32)'!=''"> <PropertyGroup Condition="'$(Cfg_1_Win32)'!=''">
<VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=;LastCompiledTime=23.05.2014 10:58:12</VerInfo_Keys> <VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=;LastCompiledTime=10.06.2014 2:18:20</VerInfo_Keys>
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo> <VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
<VerInfo_Locale>1033</VerInfo_Locale> <VerInfo_Locale>1033</VerInfo_Locale>
<DCC_RemoteDebug>false</DCC_RemoteDebug> <DCC_RemoteDebug>false</DCC_RemoteDebug>
@ -97,6 +103,9 @@
<DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo> <DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
<DCC_DebugInformation>0</DCC_DebugInformation> <DCC_DebugInformation>0</DCC_DebugInformation>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Cfg_2_Win32)'!=''">
<VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=;LastCompiledTime=10.06.2014 2:01:54</VerInfo_Keys>
</PropertyGroup>
<ItemGroup> <ItemGroup>
<DelphiCompile Include="$(MainSource)"> <DelphiCompile Include="$(MainSource)">
<MainSource>MainSource</MainSource> <MainSource>MainSource</MainSource>

View File

@ -4,7 +4,8 @@ interface
uses uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics, Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, uOCVTypes, uOCVSource, uOCVView, ffm.libavcodec.avcodec; Vcl.Controls, Vcl.Forms, Vcl.Dialogs, ffm.libavcodec.avcodec,
ocv.comp.Types, ocv.comp.Source, ocv.comp.View;
type type
TForm1 = class(TForm) TForm1 = class(TForm)

View File

@ -5,7 +5,7 @@
<FrameworkType>VCL</FrameworkType> <FrameworkType>VCL</FrameworkType>
<MainSource>cMatchTemplate.dpr</MainSource> <MainSource>cMatchTemplate.dpr</MainSource>
<Base>True</Base> <Base>True</Base>
<Config Condition="'$(Config)'==''">Release</Config> <Config Condition="'$(Config)'==''">Debug</Config>
<Platform Condition="'$(Platform)'==''">Win32</Platform> <Platform Condition="'$(Platform)'==''">Win32</Platform>
<TargetedPlatforms>3</TargetedPlatforms> <TargetedPlatforms>3</TargetedPlatforms>
<AppType>Application</AppType> <AppType>Application</AppType>
@ -94,6 +94,7 @@
<DCC_RemoteDebug>true</DCC_RemoteDebug> <DCC_RemoteDebug>true</DCC_RemoteDebug>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Cfg_1_Win32)'!=''"> <PropertyGroup Condition="'$(Cfg_1_Win32)'!=''">
<VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=;LastCompiledTime=10.06.2014 2:18:28</VerInfo_Keys>
<DCC_ExeOutput>..\..\..\bin\$(Platform)</DCC_ExeOutput> <DCC_ExeOutput>..\..\..\bin\$(Platform)</DCC_ExeOutput>
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo> <VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
<VerInfo_Locale>1033</VerInfo_Locale> <VerInfo_Locale>1033</VerInfo_Locale>
@ -111,6 +112,7 @@
<DCC_DebugInformation>0</DCC_DebugInformation> <DCC_DebugInformation>0</DCC_DebugInformation>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Cfg_2_Win32)'!=''"> <PropertyGroup Condition="'$(Cfg_2_Win32)'!=''">
<VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=;LastCompiledTime=10.06.2014 2:01:36</VerInfo_Keys>
<DCC_ExeOutput>..\..\..\bin\$(Platform)</DCC_ExeOutput> <DCC_ExeOutput>..\..\..\bin\$(Platform)</DCC_ExeOutput>
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo> <VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
<VerInfo_Locale>1033</VerInfo_Locale> <VerInfo_Locale>1033</VerInfo_Locale>

View File

@ -33,12 +33,14 @@ object MainForm: TMainForm
Width = 320 Width = 320
Height = 320 Height = 320
VideoSource = ocvmgprtn1 VideoSource = ocvmgprtn1
Frames = <>
end end
object ocvw2: TocvView object ocvw2: TocvView
Left = 451 Left = 451
Top = 22 Top = 22
Width = 320 Width = 320
Height = 320 Height = 320
Frames = <>
OnAfterPaint = ocvw2AfterPaint OnAfterPaint = ocvw2AfterPaint
OnMouseDown = ocvw2MouseDown OnMouseDown = ocvw2MouseDown
OnMouseUp = ocvw2MouseUp OnMouseUp = ocvw2MouseUp

View File

@ -27,8 +27,8 @@ interface
uses uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics, Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, uOCVTypes, Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, ocv.comp.Types,
uOCVImageOperation, uOCVSource, uOCVView; ocv.comp.ImageOperation, ocv.comp.Source, ocv.comp.View;
type type
TMainForm = class(TForm) TMainForm = class(TForm)
@ -42,9 +42,9 @@ type
procedure btn1Click(Sender: TObject); procedure btn1Click(Sender: TObject);
procedure ocvw2MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); procedure ocvw2MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
procedure ocvw2MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); procedure ocvw2MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);
procedure ocvw2AfterPaint(Sender: TObject; const IplImage: IocvImage);
procedure ocvw2MouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); procedure ocvw2MouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
procedure btn2Click(Sender: TObject); procedure btn2Click(Sender: TObject);
procedure ocvw2AfterPaint(Sender: TObject; var IplImage: IocvImage);
private private
SnapImage: IocvImage; SnapImage: IocvImage;
mX, mY: Integer; mX, mY: Integer;
@ -85,7 +85,7 @@ begin
{} Trunc(ocvcmrsrc1.ImageHeight * (mY1 - mY) / ocvw2.Height))); {} Trunc(ocvcmrsrc1.ImageHeight * (mY1 - mY) / ocvw2.Height)));
end; end;
procedure TMainForm.ocvw2AfterPaint(Sender: TObject; const IplImage: IocvImage); procedure TMainForm.ocvw2AfterPaint(Sender: TObject; var IplImage: IocvImage);
begin begin
// if mDown then // if mDown then
ocvw2.Canvas.Brush.Style := bsClear; ocvw2.Canvas.Brush.Style := bsClear;

View File

@ -3,7 +3,7 @@
// Copyright (C) 2013 Project Delphi-OpenCV // Copyright (C) 2013 Project Delphi-OpenCV
// **************************************************************** // ****************************************************************
// Contributor: // Contributor:
// Laentir Valetov // Laentir Valetov
// email:laex@bk.ru // email:laex@bk.ru
// **************************************************************** // ****************************************************************
// You may retrieve the latest version of this file at the GitHub, // You may retrieve the latest version of this file at the GitHub,

View File

@ -3,7 +3,7 @@
<ProjectGuid>{5F07BEF4-77BC-45EB-B419-49B9B605AD96}</ProjectGuid> <ProjectGuid>{5F07BEF4-77BC-45EB-B419-49B9B605AD96}</ProjectGuid>
<MainSource>cv_CvtColor.dpr</MainSource> <MainSource>cv_CvtColor.dpr</MainSource>
<Base>True</Base> <Base>True</Base>
<Config Condition="'$(Config)'==''">Release</Config> <Config Condition="'$(Config)'==''">Debug</Config>
<TargetedPlatforms>3</TargetedPlatforms> <TargetedPlatforms>3</TargetedPlatforms>
<AppType>Console</AppType> <AppType>Console</AppType>
<FrameworkType>None</FrameworkType> <FrameworkType>None</FrameworkType>

View File

@ -0,0 +1,192 @@
// *****************************************************************
// 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.
// *******************************************************************
// Original: http://anikettatipamula.blogspot.ro/2012/02/hand-gesture-using-opencv.html
// *******************************************************************
program HandsDetect2;
{$APPTYPE CONSOLE}
{$POINTERMATH ON}
{$R *.res}
uses
System.SysUtils,
ocv.highgui_c,
ocv.core_c,
ocv.core.types_c,
ocv.imgproc_c,
ocv.imgproc.types_c;
procedure detect(const img_8uc1: pIplImage; const img_8uc3: pIplImage);
Var
storage: pCvMemStorage;
first_contour: pCvSeq;
maxitem: pCvSeq;
area, areamax: Double;
maxn: Integer;
Nc: Integer;
n: Integer;
c: pCvSeq;
storage3: pCvMemStorage;
pt0: TCvPoint;
storage1, storage2: pCvMemStorage;
ptseq: pCvSeq;
hull, defects: pCvSeq;
i, j: Integer;
p: pCvPoint;
hullcount: Integer;
defectArray: pCvConvexityDefect;
nomdef: Integer;
font: TCvFont;
txt: AnsiString;
begin
// 8uc1 is BW image with hand as white And 8uc3 is the original image
storage := cvCreateMemStorage(0);
first_contour := AllocMem(SizeOf(TCvSeq));
maxitem := nil;
area := 0;
areamax := 0;
maxn := 0;
// function to find the white objects in the image and return the object boundaries
Nc := cvFindContours(img_8uc1, storage, @first_contour, SizeOf(TCvContour), CV_RETR_LIST, CV_CHAIN_APPROX_SIMPLE,
cvPoint(0, 0));
// Try all four values and see what happens
n := 0;
WriteLn('Total Contours Detected: ', Nc);
// Here we find the contour with maximum area
if (Nc > 0) then
begin
c := first_contour;
While c <> nil do
begin
// cvCvtColor( img_8uc1, img_8uc3, CV_GRAY2BGR );
area := Abs(cvContourArea(c, CV_WHOLE_SEQ));
if (area > areamax) then
begin
areamax := area;
maxitem := c;
maxn := n;
c := c^.h_next;
end;
Inc(n);
end;
storage3 := cvCreateMemStorage(0);
if (areamax > 5000) then // check for area greater than certain value and find convex hull
begin
maxitem := cvApproxPoly(maxitem, SizeOf(TCvContour), storage3, CV_POLY_APPROX_DP, 10, 1);
storage1 := cvCreateMemStorage(0);
storage2 := cvCreateMemStorage(0);
ptseq := cvCreateSeq(CV_SEQ_KIND_GENERIC or CV_32SC2, SizeOf(TCvContour), SizeOf(TCvPoint), storage1);
for i := 0 to maxitem^.total - 1 do
begin
p := CV_GET_SEQ_ELEM(SizeOf(TCvPoint), maxitem, i);
pt0.x := p^.x;
pt0.y := p^.y;
cvSeqPush(ptseq, @pt0);
end;
hull := cvConvexHull2(ptseq, nil, CV_CLOCKWISE, 0);
hullcount := hull^.total;
defects := cvConvexityDefects(ptseq, hull, storage2);
WriteLn('cvConvexityDefects total ', defects^.total);
// int m_nomdef:=0;
// This cycle marks all defects of convexity of current contours.
While Assigned(defects) do
begin
nomdef := defects^.total; // defect amount
// outlet_float( m_nomdef, nomdef );
WriteLn('defect no ', nomdef);
if (nomdef = 0) then
begin
defects := defects^.h_next;
continue;
end;
// Alloc memory for defect set.
// fprintf(stderr,'malloc');
defectArray := AllocMem(SizeOf(TCvConvexityDefect) * nomdef);
// Get defect set.
// fprintf(stderr,'cvCvtSeqToArray');
cvCvtSeqToArray(defects, defectArray, CV_WHOLE_SEQ);
// Draw marks for all defects.
for i := 0 to nomdef - 1 do
begin
WriteLn('Defect depth for defect ', i:4, defectArray[i].depth:10:3);
cvLine(img_8uc3, defectArray[i].start^, defectArray[i].depth_point^, CV_RGB(255, 255, 0), 1, CV_AA, 0);
cvCircle(img_8uc3, defectArray[i].depth_point^, 5, CV_RGB(0, 0, 164), 2, 8, 0);
cvCircle(img_8uc3, defectArray[i].start^, 5, CV_RGB(0, 0, 164), 2, 8, 0);
cvLine(img_8uc3, defectArray[i].depth_point^, defectArray[i]._end^, CV_RGB(255, 255, 0), 1, CV_AA, 0);
end;
txt := '0' + IntToStr(nomdef - 1);
cvInitFont(@font, CV_FONT_HERSHEY_SIMPLEX, 1.0, 1.0, 0, 5, CV_AA);
cvPutText(img_8uc3, PAnsiChar(@txt[1]), cvPoint(50, 50), @font, cvScalar(0, 0, 255, 0));
Inc(j);
// Free memory.
freemem(defectArray);
defects := defects^.h_next;
end;
cvReleaseMemStorage(storage);
cvReleaseMemStorage(storage1);
cvReleaseMemStorage(storage2);
cvReleaseMemStorage(storage3);
end;
end;
end;
Var
capture: PCvCapture;
frame: pIplImage;
image: pIplImage = nil;
gray_image: pIplImage = nil;
begin
try
capture := cvCreateCameraCapture(CV_CAP_ANY);
cvNamedWindow('capture', CV_WINDOW_AUTOSIZE);
while true do
begin
// ïîëó÷àåì êàäð
frame := cvQueryFrame(capture);
image := cvCloneImage(frame);
gray_image := cvCreateImage(cvGetSize(image), IPL_DEPTH_8U, 1);
cvCvtColor(image, gray_image, CV_RGB2GRAY);
detect(gray_image, image);
cvShowImage('capture', image);
cvReleaseImage(image);
cvReleaseImage(gray_image);
if cvWaitKey(33) = 27 then
Break;
end;
cvReleaseCapture(capture);
cvDestroyWindow('capture');
except
on E: Exception do
WriteLn(E.ClassName, ': ', E.Message);
end;
end.

View File

@ -1,33 +1,18 @@
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup> <PropertyGroup>
<ProjectGuid>{29A87BFF-B0BF-4A7F-BC7D-E36D34A7E4B5}</ProjectGuid> <ProjectGuid>{B97156ED-0FAF-46F9-A23B-624365F042E1}</ProjectGuid>
<MainSource>dclOpenCV170.dpk</MainSource> <MainSource>HandsDetect2.dpr</MainSource>
<Base>True</Base> <Base>True</Base>
<Config Condition="'$(Config)'==''">Release</Config> <Config Condition="'$(Config)'==''">Debug</Config>
<TargetedPlatforms>1</TargetedPlatforms> <TargetedPlatforms>3</TargetedPlatforms>
<AppType>Package</AppType> <AppType>Console</AppType>
<FrameworkType>VCL</FrameworkType> <FrameworkType>None</FrameworkType>
<ProjectVersion>15.1</ProjectVersion> <ProjectVersion>15.4</ProjectVersion>
<Platform Condition="'$(Platform)'==''">Win32</Platform> <Platform Condition="'$(Platform)'==''">Win32</Platform>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Config)'=='Base' or '$(Base)'!=''"> <PropertyGroup Condition="'$(Config)'=='Base' or '$(Base)'!=''">
<Base>true</Base> <Base>true</Base>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='Android' and '$(Base)'=='true') or '$(Base_Android)'!=''">
<Base_Android>true</Base_Android>
<CfgParent>Base</CfgParent>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='iOSDevice' and '$(Base)'=='true') or '$(Base_iOSDevice)'!=''">
<Base_iOSDevice>true</Base_iOSDevice>
<CfgParent>Base</CfgParent>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='iOSSimulator' and '$(Base)'=='true') or '$(Base_iOSSimulator)'!=''">
<Base_iOSSimulator>true</Base_iOSSimulator>
<CfgParent>Base</CfgParent>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='Win32' and '$(Base)'=='true') or '$(Base_Win32)'!=''"> <PropertyGroup Condition="('$(Platform)'=='Win32' and '$(Base)'=='true') or '$(Base_Win32)'!=''">
<Base_Win32>true</Base_Win32> <Base_Win32>true</Base_Win32>
<CfgParent>Base</CfgParent> <CfgParent>Base</CfgParent>
@ -73,94 +58,71 @@
<Base>true</Base> <Base>true</Base>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Base)'!=''"> <PropertyGroup Condition="'$(Base)'!=''">
<SanitizedProjectName>dclOpenCV170</SanitizedProjectName> <DCC_DcuOutput>.\$(Platform)\$(Config)</DCC_DcuOutput>
<DCC_OutputNeverBuildDcps>true</DCC_OutputNeverBuildDcps> <SanitizedProjectName>HandsDetect2</SanitizedProjectName>
<DCC_ImageBase>00400000</DCC_ImageBase> <DCC_Namespace>System;Xml;Data;Datasnap;Web;Soap;Winapi;$(DCC_Namespace)</DCC_Namespace>
<DCC_Namespace>Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;System;Xml;Data;Datasnap;Web;Soap;Winapi;$(DCC_Namespace)</DCC_Namespace>
<DesignOnlyPackage>true</DesignOnlyPackage>
<GenDll>true</GenDll>
<DCC_N>false</DCC_N>
<DCC_Description>OpenCV Component</DCC_Description>
<DCC_F>false</DCC_F> <DCC_F>false</DCC_F>
<DCC_K>false</DCC_K> <DCC_K>false</DCC_K>
<DCC_DebugInformation>true</DCC_DebugInformation> <DCC_ImageBase>00400000</DCC_ImageBase>
<GenPackage>true</GenPackage>
<VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=;CFBundleName=;CFBundleDisplayName=;UIDeviceFamily=;CFBundleIdentifier=;CFBundleVersion=;CFBundlePackageType=;CFBundleSignature=;CFBundleAllowMixedLocalizations=;UISupportedInterfaceOrientations=;CFBundleExecutable=;CFBundleResourceSpecification=;LSRequiresIPhoneOS=;CFBundleInfoDictionaryVersion=;CFBundleDevelopmentRegion=;package=;label=;versionCode=;versionName=;persistent=;restoreAnyVersion=;installLocation=;largeHeap=;theme=</VerInfo_Keys>
<DCC_S>false</DCC_S>
<DCC_E>false</DCC_E> <DCC_E>false</DCC_E>
<VerInfo_Locale>1049</VerInfo_Locale> <VerInfo_Locale>1049</VerInfo_Locale>
</PropertyGroup> <DCC_S>false</DCC_S>
<PropertyGroup Condition="'$(Base_Android)'!=''"> <DCC_N>false</DCC_N>
<DCC_UsePackage>rtl;$(DCC_UsePackage)</DCC_UsePackage> <VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=;CFBundleName=;CFBundleDisplayName=;CFBundleIdentifier=;CFBundleVersion=;CFBundlePackageType=;CFBundleSignature=;CFBundleAllowMixedLocalizations=;CFBundleExecutable=</VerInfo_Keys>
</PropertyGroup>
<PropertyGroup Condition="'$(Base_iOSDevice)'!=''">
<DCC_UsePackage>rtl;$(DCC_UsePackage)</DCC_UsePackage>
</PropertyGroup>
<PropertyGroup Condition="'$(Base_iOSSimulator)'!=''">
<DCC_UsePackage>rtl;$(DCC_UsePackage)</DCC_UsePackage>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Base_Win32)'!=''"> <PropertyGroup Condition="'$(Base_Win32)'!=''">
<DCC_UsePackage>vcl;rtl;OpenCV170;$(DCC_UsePackage)</DCC_UsePackage>
<VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
<DCC_Namespace>System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)</DCC_Namespace> <DCC_Namespace>System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)</DCC_Namespace>
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo> <VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
<VerInfo_Locale>1033</VerInfo_Locale> <VerInfo_Locale>1033</VerInfo_Locale>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Base_Win64)'!=''"> <PropertyGroup Condition="'$(Base_Win64)'!=''">
<DCC_UsePackage>vcl;rtl;OpenCV170;$(DCC_UsePackage)</DCC_UsePackage>
<VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
<DCC_Namespace>System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;$(DCC_Namespace)</DCC_Namespace> <DCC_Namespace>System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;$(DCC_Namespace)</DCC_Namespace>
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo> <VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
<VerInfo_Locale>1033</VerInfo_Locale> <VerInfo_Locale>1033</VerInfo_Locale>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Cfg_1)'!=''"> <PropertyGroup Condition="'$(Cfg_1)'!=''">
<DCC_LocalDebugSymbols>false</DCC_LocalDebugSymbols>
<DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo> <DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
<DCC_Define>RELEASE;$(DCC_Define)</DCC_Define> <DCC_Define>RELEASE;$(DCC_Define)</DCC_Define>
<DCC_DebugInformation>0</DCC_DebugInformation> <DCC_DebugInformation>0</DCC_DebugInformation>
<DCC_LocalDebugSymbols>false</DCC_LocalDebugSymbols>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Cfg_1_Win32)'!=''"> <PropertyGroup Condition="'$(Cfg_1_Win32)'!=''">
<DCC_UnitSearchPath>..;$(DCC_UnitSearchPath)</DCC_UnitSearchPath>
<DCC_DcuOutput>.\$(Platform)\$(Config)</DCC_DcuOutput> <DCC_DcuOutput>.\$(Platform)\$(Config)</DCC_DcuOutput>
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo> <Manifest_File>None</Manifest_File>
<DCC_ExeOutput>..\..\..\bin\$(Platform)</DCC_ExeOutput>
<VerInfo_Locale>1033</VerInfo_Locale> <VerInfo_Locale>1033</VerInfo_Locale>
<VerInfo_Keys>CompanyName=;FileDescription=OpenCV Component;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=OpenCV Component;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys> <VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Cfg_1_Win64)'!=''"> <PropertyGroup Condition="'$(Cfg_1_Win64)'!=''">
<DCC_DcuOutput>.\$(Platform)\$(Config)</DCC_DcuOutput> <DCC_DcuOutput>.\$(Platform)\$(Config)</DCC_DcuOutput>
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo> <Manifest_File>None</Manifest_File>
<DCC_ExeOutput>..\..\..\bin\$(Platform)</DCC_ExeOutput>
<VerInfo_Locale>1033</VerInfo_Locale> <VerInfo_Locale>1033</VerInfo_Locale>
<VerInfo_Keys>CompanyName=;FileDescription=OpenCV Component;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=OpenCV Component;ProductVersion=1.0.0.0;Comments=www.programs74.ru</VerInfo_Keys> <VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Cfg_2)'!=''"> <PropertyGroup Condition="'$(Cfg_2)'!=''">
<DCC_GenerateStackFrames>true</DCC_GenerateStackFrames>
<DCC_Optimize>false</DCC_Optimize>
<DCC_Define>DEBUG;$(DCC_Define)</DCC_Define> <DCC_Define>DEBUG;$(DCC_Define)</DCC_Define>
<DCC_Optimize>false</DCC_Optimize>
<DCC_GenerateStackFrames>true</DCC_GenerateStackFrames>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Cfg_2_Win32)'!=''"> <PropertyGroup Condition="'$(Cfg_2_Win32)'!=''">
<DCC_UnitSearchPath>..;$(DCC_UnitSearchPath)</DCC_UnitSearchPath> <DCC_DcuOutput>.\$(Platform)\$(Config)</DCC_DcuOutput>
<DCC_DcuOutput>.</DCC_DcuOutput> <VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo> <Manifest_File>None</Manifest_File>
<DCC_ExeOutput>..\..\..\bin\$(Platform)</DCC_ExeOutput>
<VerInfo_Locale>1033</VerInfo_Locale> <VerInfo_Locale>1033</VerInfo_Locale>
<VerInfo_Keys>CompanyName=;FileDescription=OpenCV Component;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=OpenCV Component;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Cfg_2_Win64)'!=''"> <PropertyGroup Condition="'$(Cfg_2_Win64)'!=''">
<DCC_DcuOutput>.\$(Platform)\$(Config)</DCC_DcuOutput> <DCC_DcuOutput>.\$(Platform)\$(Config)</DCC_DcuOutput>
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo> <Manifest_File>None</Manifest_File>
<DCC_ExeOutput>..\..\..\bin\$(Platform)</DCC_ExeOutput>
<VerInfo_Locale>1033</VerInfo_Locale> <VerInfo_Locale>1033</VerInfo_Locale>
<VerInfo_Keys>CompanyName=;FileDescription=OpenCV Component;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=OpenCV Component;ProductVersion=1.0.0.0;Comments=www.programs74.ru</VerInfo_Keys> <VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
</PropertyGroup> </PropertyGroup>
<ItemGroup> <ItemGroup>
<DelphiCompile Include="$(MainSource)"> <DelphiCompile Include="$(MainSource)">
<MainSource>MainSource</MainSource> <MainSource>MainSource</MainSource>
</DelphiCompile> </DelphiCompile>
<DCCReference Include="..\ocv.dcr"/>
<DCCReference Include="OpenCV170.dcp"/>
<DCCReference Include="rtl.dcp"/>
<DCCReference Include="vcl.dcp"/>
<DCCReference Include="designide.dcp"/>
<DCCReference Include="..\uOCVIOProperties.pas"/>
<DCCReference Include="..\uOCVRegister.pas"/>
<BuildConfiguration Include="Debug"> <BuildConfiguration Include="Debug">
<Key>Cfg_2</Key> <Key>Cfg_2</Key>
<CfgParent>Base</CfgParent> <CfgParent>Base</CfgParent>
@ -175,14 +137,14 @@
</ItemGroup> </ItemGroup>
<ProjectExtensions> <ProjectExtensions>
<Borland.Personality>Delphi.Personality.12</Borland.Personality> <Borland.Personality>Delphi.Personality.12</Borland.Personality>
<Borland.ProjectType>Package</Borland.ProjectType> <Borland.ProjectType/>
<BorlandProject> <BorlandProject>
<Delphi.Personality> <Delphi.Personality>
<Source> <Source>
<Source Name="MainSource">dclOpenCV170.dpk</Source> <Source Name="MainSource">HandsDetect2.dpr</Source>
</Source> </Source>
<VersionInfo> <VersionInfo>
<VersionInfo Name="IncludeVerInfo">True</VersionInfo> <VersionInfo Name="IncludeVerInfo">False</VersionInfo>
<VersionInfo Name="AutoIncBuild">False</VersionInfo> <VersionInfo Name="AutoIncBuild">False</VersionInfo>
<VersionInfo Name="MajorVer">1</VersionInfo> <VersionInfo Name="MajorVer">1</VersionInfo>
<VersionInfo Name="MinorVer">0</VersionInfo> <VersionInfo Name="MinorVer">0</VersionInfo>
@ -209,39 +171,22 @@
<VersionInfoKeys Name="Comments"/> <VersionInfoKeys Name="Comments"/>
<VersionInfoKeys Name="CFBundleName"/> <VersionInfoKeys Name="CFBundleName"/>
<VersionInfoKeys Name="CFBundleDisplayName"/> <VersionInfoKeys Name="CFBundleDisplayName"/>
<VersionInfoKeys Name="UIDeviceFamily"/>
<VersionInfoKeys Name="CFBundleIdentifier"/> <VersionInfoKeys Name="CFBundleIdentifier"/>
<VersionInfoKeys Name="CFBundleVersion"/> <VersionInfoKeys Name="CFBundleVersion"/>
<VersionInfoKeys Name="CFBundlePackageType"/> <VersionInfoKeys Name="CFBundlePackageType"/>
<VersionInfoKeys Name="CFBundleSignature"/> <VersionInfoKeys Name="CFBundleSignature"/>
<VersionInfoKeys Name="CFBundleAllowMixedLocalizations"/> <VersionInfoKeys Name="CFBundleAllowMixedLocalizations"/>
<VersionInfoKeys Name="UISupportedInterfaceOrientations"/>
<VersionInfoKeys Name="CFBundleExecutable"/> <VersionInfoKeys Name="CFBundleExecutable"/>
<VersionInfoKeys Name="CFBundleResourceSpecification"/>
<VersionInfoKeys Name="LSRequiresIPhoneOS"/>
<VersionInfoKeys Name="CFBundleInfoDictionaryVersion"/>
<VersionInfoKeys Name="CFBundleDevelopmentRegion"/>
<VersionInfoKeys Name="package"/>
<VersionInfoKeys Name="label"/>
<VersionInfoKeys Name="versionCode"/>
<VersionInfoKeys Name="versionName"/>
<VersionInfoKeys Name="persistent"/>
<VersionInfoKeys Name="restoreAnyVersion"/>
<VersionInfoKeys Name="installLocation"/>
<VersionInfoKeys Name="largeHeap"/>
<VersionInfoKeys Name="theme"/>
</VersionInfoKeys> </VersionInfoKeys>
<Excluded_Packages> <Excluded_Packages>
<Excluded_Packages Name="$(BDSBIN)\dcloffice2k170.bpl">Microsoft Office 2000 Sample Automation Server Wrapper Components</Excluded_Packages> <Excluded_Packages Name="$(BDSBIN)\dcloffice2k200.bpl">Microsoft Office 2000 Sample Automation Server Wrapper Components</Excluded_Packages>
<Excluded_Packages Name="$(BDSBIN)\dclofficexp170.bpl">Microsoft Office XP Sample Automation Server Wrapper Components</Excluded_Packages> <Excluded_Packages Name="$(BDSBIN)\dclofficexp200.bpl">Microsoft Office XP Sample Automation Server Wrapper Components</Excluded_Packages>
</Excluded_Packages> </Excluded_Packages>
</Delphi.Personality> </Delphi.Personality>
<Platforms> <Platforms>
<Platform value="Android">False</Platform> <Platform value="OSX32">False</Platform>
<Platform value="iOSDevice">False</Platform>
<Platform value="iOSSimulator">False</Platform>
<Platform value="Win32">True</Platform> <Platform value="Win32">True</Platform>
<Platform value="Win64">False</Platform> <Platform value="Win64">True</Platform>
</Platforms> </Platforms>
</BorlandProject> </BorlandProject>
<ProjectFileVersion>12</ProjectFileVersion> <ProjectFileVersion>12</ProjectFileVersion>

Binary file not shown.

View File

@ -0,0 +1,83 @@
// *****************************************************************
// 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.
// *******************************************************************
// Original: http://anikettatipamula.blogspot.ro/2012/02/hand-gesture-using-opencv.html
// *******************************************************************
program HandsDetect3;
{$APPTYPE CONSOLE}
{$POINTERMATH ON}
{$R *.res}
uses
System.SysUtils,
ocv.highgui_c,
ocv.core_c,
ocv.core.types_c,
ocv.imgproc_c,
ocv.imgproc.types_c;
Var
capture: PCvCapture;
frame: pIplImage;
hsv_image: pIplImage = nil;
hsv_mask: pIplImage;
hsv_min, hsv_max: TCvScalar;
begin
try
hsv_min := CvScalar(0, 30, 80, 0);
hsv_max := CvScalar(20, 150, 255, 0);
capture := cvCreateCameraCapture(CV_CAP_ANY);
cvNamedWindow('capture', CV_WINDOW_AUTOSIZE);
cvNamedWindow('hsv-img', CV_WINDOW_AUTOSIZE);
cvNamedWindow('hsv-msk', CV_WINDOW_AUTOSIZE);
while true do
begin
frame := cvQueryFrame(capture);
if not Assigned(hsv_image) then
begin
hsv_image := cvCreateImage(cvGetSize(frame), 8, 3);
hsv_mask := cvCreateImage(cvGetSize(frame), 8, 1);
end;
cvCvtColor(frame, hsv_image, CV_BGR2HSV);
cvShowImage('hsv-img', hsv_image);
cvInRangeS(hsv_image, hsv_min, hsv_max, hsv_mask);
cvShowImage('hsv-msk', hsv_mask);
cvShowImage('capture', frame);
if cvWaitKey(33) = 27 then
Break;
end;
cvReleaseCapture(capture);
cvReleaseImage(hsv_image);
cvReleaseImage(hsv_mask);
cvDestroyAllWindows;
except
on E: Exception do
WriteLn(E.ClassName, ': ', E.Message);
end;
end.

View File

@ -1,33 +1,18 @@
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup> <PropertyGroup>
<ProjectGuid>{29A87BFF-B0BF-4A7F-BC7D-E36D34A7E4B5}</ProjectGuid> <ProjectGuid>{B97156ED-0FAF-46F9-A23B-624365F042E1}</ProjectGuid>
<MainSource>dclOpenCV180.dpk</MainSource> <MainSource>HandsDetect3.dpr</MainSource>
<Base>True</Base> <Base>True</Base>
<Config Condition="'$(Config)'==''">Release</Config> <Config Condition="'$(Config)'==''">Debug</Config>
<TargetedPlatforms>1</TargetedPlatforms> <TargetedPlatforms>3</TargetedPlatforms>
<AppType>Package</AppType> <AppType>Console</AppType>
<FrameworkType>VCL</FrameworkType> <FrameworkType>None</FrameworkType>
<ProjectVersion>15.2</ProjectVersion> <ProjectVersion>15.4</ProjectVersion>
<Platform Condition="'$(Platform)'==''">Win32</Platform> <Platform Condition="'$(Platform)'==''">Win32</Platform>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Config)'=='Base' or '$(Base)'!=''"> <PropertyGroup Condition="'$(Config)'=='Base' or '$(Base)'!=''">
<Base>true</Base> <Base>true</Base>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='Android' and '$(Base)'=='true') or '$(Base_Android)'!=''">
<Base_Android>true</Base_Android>
<CfgParent>Base</CfgParent>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='iOSDevice' and '$(Base)'=='true') or '$(Base_iOSDevice)'!=''">
<Base_iOSDevice>true</Base_iOSDevice>
<CfgParent>Base</CfgParent>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='iOSSimulator' and '$(Base)'=='true') or '$(Base_iOSSimulator)'!=''">
<Base_iOSSimulator>true</Base_iOSSimulator>
<CfgParent>Base</CfgParent>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='Win32' and '$(Base)'=='true') or '$(Base_Win32)'!=''"> <PropertyGroup Condition="('$(Platform)'=='Win32' and '$(Base)'=='true') or '$(Base_Win32)'!=''">
<Base_Win32>true</Base_Win32> <Base_Win32>true</Base_Win32>
<CfgParent>Base</CfgParent> <CfgParent>Base</CfgParent>
@ -73,94 +58,71 @@
<Base>true</Base> <Base>true</Base>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Base)'!=''"> <PropertyGroup Condition="'$(Base)'!=''">
<SanitizedProjectName>dclOpenCV180</SanitizedProjectName> <DCC_DcuOutput>.\$(Platform)\$(Config)</DCC_DcuOutput>
<DCC_OutputNeverBuildDcps>true</DCC_OutputNeverBuildDcps> <SanitizedProjectName>HandsDetect3</SanitizedProjectName>
<DCC_ImageBase>00400000</DCC_ImageBase> <DCC_Namespace>System;Xml;Data;Datasnap;Web;Soap;Winapi;$(DCC_Namespace)</DCC_Namespace>
<DCC_Namespace>Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;System;Xml;Data;Datasnap;Web;Soap;Winapi;$(DCC_Namespace)</DCC_Namespace>
<DesignOnlyPackage>true</DesignOnlyPackage>
<GenDll>true</GenDll>
<DCC_N>false</DCC_N>
<DCC_Description>OpenCV Component</DCC_Description>
<DCC_F>false</DCC_F> <DCC_F>false</DCC_F>
<DCC_K>false</DCC_K> <DCC_K>false</DCC_K>
<DCC_DebugInformation>true</DCC_DebugInformation> <DCC_ImageBase>00400000</DCC_ImageBase>
<GenPackage>true</GenPackage>
<VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=;CFBundleName=;CFBundleDisplayName=;UIDeviceFamily=;CFBundleIdentifier=;CFBundleVersion=;CFBundlePackageType=;CFBundleSignature=;CFBundleAllowMixedLocalizations=;UISupportedInterfaceOrientations=;CFBundleExecutable=;CFBundleResourceSpecification=;LSRequiresIPhoneOS=;CFBundleInfoDictionaryVersion=;CFBundleDevelopmentRegion=;package=;label=;versionCode=;versionName=;persistent=;restoreAnyVersion=;installLocation=;largeHeap=;theme=</VerInfo_Keys>
<DCC_S>false</DCC_S>
<DCC_E>false</DCC_E> <DCC_E>false</DCC_E>
<VerInfo_Locale>1049</VerInfo_Locale> <VerInfo_Locale>1049</VerInfo_Locale>
</PropertyGroup> <DCC_S>false</DCC_S>
<PropertyGroup Condition="'$(Base_Android)'!=''"> <DCC_N>false</DCC_N>
<DCC_UsePackage>rtl;$(DCC_UsePackage)</DCC_UsePackage> <VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=;CFBundleName=;CFBundleDisplayName=;CFBundleIdentifier=;CFBundleVersion=;CFBundlePackageType=;CFBundleSignature=;CFBundleAllowMixedLocalizations=;CFBundleExecutable=</VerInfo_Keys>
</PropertyGroup>
<PropertyGroup Condition="'$(Base_iOSDevice)'!=''">
<DCC_UsePackage>rtl;$(DCC_UsePackage)</DCC_UsePackage>
</PropertyGroup>
<PropertyGroup Condition="'$(Base_iOSSimulator)'!=''">
<DCC_UsePackage>rtl;$(DCC_UsePackage)</DCC_UsePackage>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Base_Win32)'!=''"> <PropertyGroup Condition="'$(Base_Win32)'!=''">
<DCC_UsePackage>vcl;rtl;OpenCV180;$(DCC_UsePackage)</DCC_UsePackage>
<VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
<DCC_Namespace>System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)</DCC_Namespace> <DCC_Namespace>System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)</DCC_Namespace>
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo> <VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
<VerInfo_Locale>1033</VerInfo_Locale> <VerInfo_Locale>1033</VerInfo_Locale>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Base_Win64)'!=''"> <PropertyGroup Condition="'$(Base_Win64)'!=''">
<DCC_UsePackage>vcl;rtl;OpenCV180;$(DCC_UsePackage)</DCC_UsePackage>
<VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
<DCC_Namespace>System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;$(DCC_Namespace)</DCC_Namespace> <DCC_Namespace>System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;$(DCC_Namespace)</DCC_Namespace>
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo> <VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
<VerInfo_Locale>1033</VerInfo_Locale> <VerInfo_Locale>1033</VerInfo_Locale>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Cfg_1)'!=''"> <PropertyGroup Condition="'$(Cfg_1)'!=''">
<DCC_LocalDebugSymbols>false</DCC_LocalDebugSymbols>
<DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo> <DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
<DCC_Define>RELEASE;$(DCC_Define)</DCC_Define> <DCC_Define>RELEASE;$(DCC_Define)</DCC_Define>
<DCC_DebugInformation>0</DCC_DebugInformation> <DCC_DebugInformation>0</DCC_DebugInformation>
<DCC_LocalDebugSymbols>false</DCC_LocalDebugSymbols>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Cfg_1_Win32)'!=''"> <PropertyGroup Condition="'$(Cfg_1_Win32)'!=''">
<DCC_UnitSearchPath>..;$(DCC_UnitSearchPath)</DCC_UnitSearchPath>
<DCC_DcuOutput>.\$(Platform)\$(Config)</DCC_DcuOutput> <DCC_DcuOutput>.\$(Platform)\$(Config)</DCC_DcuOutput>
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo> <Manifest_File>None</Manifest_File>
<DCC_ExeOutput>..\..\..\bin\$(Platform)</DCC_ExeOutput>
<VerInfo_Locale>1033</VerInfo_Locale> <VerInfo_Locale>1033</VerInfo_Locale>
<VerInfo_Keys>CompanyName=;FileDescription=OpenCV Component;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=OpenCV Component;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys> <VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Cfg_1_Win64)'!=''"> <PropertyGroup Condition="'$(Cfg_1_Win64)'!=''">
<DCC_DcuOutput>.\$(Platform)\$(Config)</DCC_DcuOutput> <DCC_DcuOutput>.\$(Platform)\$(Config)</DCC_DcuOutput>
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo> <Manifest_File>None</Manifest_File>
<DCC_ExeOutput>..\..\..\bin\$(Platform)</DCC_ExeOutput>
<VerInfo_Locale>1033</VerInfo_Locale> <VerInfo_Locale>1033</VerInfo_Locale>
<VerInfo_Keys>CompanyName=;FileDescription=OpenCV Component;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=OpenCV Component;ProductVersion=1.0.0.0;Comments=www.programs74.ru</VerInfo_Keys> <VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Cfg_2)'!=''"> <PropertyGroup Condition="'$(Cfg_2)'!=''">
<DCC_GenerateStackFrames>true</DCC_GenerateStackFrames>
<DCC_Optimize>false</DCC_Optimize>
<DCC_Define>DEBUG;$(DCC_Define)</DCC_Define> <DCC_Define>DEBUG;$(DCC_Define)</DCC_Define>
<DCC_Optimize>false</DCC_Optimize>
<DCC_GenerateStackFrames>true</DCC_GenerateStackFrames>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Cfg_2_Win32)'!=''"> <PropertyGroup Condition="'$(Cfg_2_Win32)'!=''">
<DCC_UnitSearchPath>..;$(DCC_UnitSearchPath)</DCC_UnitSearchPath> <DCC_DcuOutput>.\$(Platform)\$(Config)</DCC_DcuOutput>
<DCC_DcuOutput>.</DCC_DcuOutput> <VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo> <Manifest_File>None</Manifest_File>
<DCC_ExeOutput>..\..\..\bin\$(Platform)</DCC_ExeOutput>
<VerInfo_Locale>1033</VerInfo_Locale> <VerInfo_Locale>1033</VerInfo_Locale>
<VerInfo_Keys>CompanyName=;FileDescription=OpenCV Component;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=OpenCV Component;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Cfg_2_Win64)'!=''"> <PropertyGroup Condition="'$(Cfg_2_Win64)'!=''">
<DCC_DcuOutput>.\$(Platform)\$(Config)</DCC_DcuOutput> <DCC_DcuOutput>.\$(Platform)\$(Config)</DCC_DcuOutput>
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo> <Manifest_File>None</Manifest_File>
<DCC_ExeOutput>..\..\..\bin\$(Platform)</DCC_ExeOutput>
<VerInfo_Locale>1033</VerInfo_Locale> <VerInfo_Locale>1033</VerInfo_Locale>
<VerInfo_Keys>CompanyName=;FileDescription=OpenCV Component;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=OpenCV Component;ProductVersion=1.0.0.0;Comments=www.programs74.ru</VerInfo_Keys> <VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
</PropertyGroup> </PropertyGroup>
<ItemGroup> <ItemGroup>
<DelphiCompile Include="$(MainSource)"> <DelphiCompile Include="$(MainSource)">
<MainSource>MainSource</MainSource> <MainSource>MainSource</MainSource>
</DelphiCompile> </DelphiCompile>
<DCCReference Include="..\ocv.dcr"/>
<DCCReference Include="OpenCV180.dcp"/>
<DCCReference Include="rtl.dcp"/>
<DCCReference Include="vcl.dcp"/>
<DCCReference Include="designide.dcp"/>
<DCCReference Include="..\uOCVIOProperties.pas"/>
<DCCReference Include="..\uOCVRegister.pas"/>
<BuildConfiguration Include="Debug"> <BuildConfiguration Include="Debug">
<Key>Cfg_2</Key> <Key>Cfg_2</Key>
<CfgParent>Base</CfgParent> <CfgParent>Base</CfgParent>
@ -175,14 +137,14 @@
</ItemGroup> </ItemGroup>
<ProjectExtensions> <ProjectExtensions>
<Borland.Personality>Delphi.Personality.12</Borland.Personality> <Borland.Personality>Delphi.Personality.12</Borland.Personality>
<Borland.ProjectType>Package</Borland.ProjectType> <Borland.ProjectType/>
<BorlandProject> <BorlandProject>
<Delphi.Personality> <Delphi.Personality>
<Source> <Source>
<Source Name="MainSource">dclOpenCV180.dpk</Source> <Source Name="MainSource">HandsDetect3.dpr</Source>
</Source> </Source>
<VersionInfo> <VersionInfo>
<VersionInfo Name="IncludeVerInfo">True</VersionInfo> <VersionInfo Name="IncludeVerInfo">False</VersionInfo>
<VersionInfo Name="AutoIncBuild">False</VersionInfo> <VersionInfo Name="AutoIncBuild">False</VersionInfo>
<VersionInfo Name="MajorVer">1</VersionInfo> <VersionInfo Name="MajorVer">1</VersionInfo>
<VersionInfo Name="MinorVer">0</VersionInfo> <VersionInfo Name="MinorVer">0</VersionInfo>
@ -209,39 +171,22 @@
<VersionInfoKeys Name="Comments"/> <VersionInfoKeys Name="Comments"/>
<VersionInfoKeys Name="CFBundleName"/> <VersionInfoKeys Name="CFBundleName"/>
<VersionInfoKeys Name="CFBundleDisplayName"/> <VersionInfoKeys Name="CFBundleDisplayName"/>
<VersionInfoKeys Name="UIDeviceFamily"/>
<VersionInfoKeys Name="CFBundleIdentifier"/> <VersionInfoKeys Name="CFBundleIdentifier"/>
<VersionInfoKeys Name="CFBundleVersion"/> <VersionInfoKeys Name="CFBundleVersion"/>
<VersionInfoKeys Name="CFBundlePackageType"/> <VersionInfoKeys Name="CFBundlePackageType"/>
<VersionInfoKeys Name="CFBundleSignature"/> <VersionInfoKeys Name="CFBundleSignature"/>
<VersionInfoKeys Name="CFBundleAllowMixedLocalizations"/> <VersionInfoKeys Name="CFBundleAllowMixedLocalizations"/>
<VersionInfoKeys Name="UISupportedInterfaceOrientations"/>
<VersionInfoKeys Name="CFBundleExecutable"/> <VersionInfoKeys Name="CFBundleExecutable"/>
<VersionInfoKeys Name="CFBundleResourceSpecification"/>
<VersionInfoKeys Name="LSRequiresIPhoneOS"/>
<VersionInfoKeys Name="CFBundleInfoDictionaryVersion"/>
<VersionInfoKeys Name="CFBundleDevelopmentRegion"/>
<VersionInfoKeys Name="package"/>
<VersionInfoKeys Name="label"/>
<VersionInfoKeys Name="versionCode"/>
<VersionInfoKeys Name="versionName"/>
<VersionInfoKeys Name="persistent"/>
<VersionInfoKeys Name="restoreAnyVersion"/>
<VersionInfoKeys Name="installLocation"/>
<VersionInfoKeys Name="largeHeap"/>
<VersionInfoKeys Name="theme"/>
</VersionInfoKeys> </VersionInfoKeys>
<Excluded_Packages> <Excluded_Packages>
<Excluded_Packages Name="$(BDSBIN)\dcloffice2k180.bpl">Microsoft Office 2000 Sample Automation Server Wrapper Components</Excluded_Packages> <Excluded_Packages Name="$(BDSBIN)\dcloffice2k200.bpl">Microsoft Office 2000 Sample Automation Server Wrapper Components</Excluded_Packages>
<Excluded_Packages Name="$(BDSBIN)\dclofficexp180.bpl">Microsoft Office XP Sample Automation Server Wrapper Components</Excluded_Packages> <Excluded_Packages Name="$(BDSBIN)\dclofficexp200.bpl">Microsoft Office XP Sample Automation Server Wrapper Components</Excluded_Packages>
</Excluded_Packages> </Excluded_Packages>
</Delphi.Personality> </Delphi.Personality>
<Platforms> <Platforms>
<Platform value="Android">False</Platform> <Platform value="OSX32">False</Platform>
<Platform value="iOSDevice">False</Platform>
<Platform value="iOSSimulator">False</Platform>
<Platform value="Win32">True</Platform> <Platform value="Win32">True</Platform>
<Platform value="Win64">False</Platform> <Platform value="Win64">True</Platform>
</Platforms> </Platforms>
</BorlandProject> </BorlandProject>
<ProjectFileVersion>12</ProjectFileVersion> <ProjectFileVersion>12</ProjectFileVersion>

Binary file not shown.

View File

@ -0,0 +1,616 @@
// *****************************************************************
// 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.
// *******************************************************************
// Original: http://fivedots.coe.psu.ac.th/~ad/jg/nui055/index.html
// *******************************************************************
program HandsDetect4;
{$APPTYPE CONSOLE}
{$POINTERMATH ON}
{$R *.res}
uses
System.SysUtils,
System.Math,
ocv.highgui_c,
ocv.core_c,
ocv.core.types_c,
ocv.imgproc_c,
ocv.imgproc.types_c;
Const
IMG_SCALE: Integer = 2; // scaling applied to webcam image
SMALLEST_AREA: Single = 600.0; // was 100.0f;
// ignore smaller contour areas
MAX_POINTS: Integer = 20; // max number of points stored in an array
// used for simiplifying the defects list
MIN_FINGER_DEPTH: Integer = 20;
MAX_FINGER_ANGLE: Integer = 60; // degrees
// angle ranges of thumb and index finger of the left hand relative to its COG
MIN_THUMB: Integer = 120;
MAX_THUMB: Integer = 200;
MIN_INDEX: Integer = 60;
MAX_INDEX: Integer = 120;
Type
TFingerName = (LITTLE, RING, MIDDLE, INDEX, THUMB, UNKNOWN);
const
FingerName: array [TFingerName] of AnsiString = ('LITTLE', 'RING', 'MIDDLE', 'INDEX', 'THUMB', 'UNKNOWN');
Var
capture: PCvCapture;
frame: pIplImage;
// HSV ranges defining the glove colour
hueLower, hueUpper, satLower, satUpper, briLower, briUpper: Integer;
// JavaCV elements
scaleImg: pIplImage; // for resizing the webcam image
hsvImg: pIplImage; // HSV version of webcam image
imgThreshed: pIplImage; // threshold for HSV settings
contourStorage, approxStorage, hullStorage, defectsStorage: pCvMemStorage;
msgFont: TcvFont;
// hand details
cogPt: TcvPoint; // center of gravity (COG) of contour
contourAxisAngle: Integer;
// contour's main axis angle relative to the horizontal (in degrees)
// defects data for the hand contour
tipPts, foldPts: TArray<TcvPoint>;
depths: TArray<Single>;
fingerTips: TArray<TcvPoint>;
// finger identifications
// private ArrayList<FingerName> namedFingers;
namedFingers: TArray<TFingerName>;
procedure setHSVRanges(const fnm: String);
(*read in three lines to set the lower/upper HSV ranges for the user's glove.
These were previously stored using the HSV Selector application
(see NUI chapter 5 on blobs drumming).*)
begin
// hue: 95 178
hueLower := 0;//95;
hueUpper := 20;//178;
// sat: 0 255
satLower := 30;//0;
briUpper := 150;//255;
// val: 0 41
briLower := 80;//0;
briUpper := 255;//41;
// BufferedReader in = new BufferedReader(new FileReader(fnm));
// String line = in.readLine(); // get hues
// String[] toks = line.split("\\s+");
// hueLower = Integer.parseInt(toks[1]);
// hueUpper = Integer.parseInt(toks[2]);
//
// line = in.readLine(); // get saturations
// toks = line.split("\\s+");
// satLower = Integer.parseInt(toks[1]);
// satUpper = Integer.parseInt(toks[2]);
//
// line = in.readLine(); // get brightnesses
// toks = line.split("\\s+");
// briLower = Integer.parseInt(toks[1]);
// briUpper = Integer.parseInt(toks[2]);
//
// in.close();
// System.out.println("Read HSV ranges from " + fnm);
// }
// catch (Exception e)
// { System.out.println("Could not read HSV ranges from " + fnm);
// System.exit(1);
// }
end; // end of setHSVRanges()
procedure HandDetector(const hsvFnm: String; const width, height: Integer);
begin
scaleImg := cvCreateImage(CvSize(width div IMG_SCALE, height div IMG_SCALE), 8, 3);
hsvImg := cvCreateImage(CvSize(width div IMG_SCALE, height div IMG_SCALE), 8, 3); // for the HSV image
imgThreshed := cvCreateImage(CvSize(width div IMG_SCALE, height div IMG_SCALE), 8, 1); // threshold image
// storage for contour, hull, and defect calculations by OpenCV
contourStorage := cvCreateMemStorage(0);
approxStorage := cvCreateMemStorage(0);
hullStorage := cvCreateMemStorage(0);
defectsStorage := cvCreateMemStorage(0);
cvInitFont(@msgFont, CV_FONT_HERSHEY_SIMPLEX, 1.0, 1.0, 0, 5, CV_AA);
// cogPt = new Point();
SetLength(fingerTips, 0);
// namedFingers = new ArrayList<FingerName>();
SetLength(tipPts, MAX_POINTS); // coords of the finger tips
SetLength(foldPts, MAX_POINTS); // coords of the skin folds between fingers
SetLength(depths, MAX_POINTS); // distances from tips to folds
setHSVRanges(hsvFnm);
end; // end of HandDetector()
function findBiggestContour(const imgThreshed: pIplImage): pCvSeq;
// return the largest contour in the threshold image
Var
bigContour, contours: pCvSeq;
maxArea: Single;
maxBox: pCvBox2D;
box: TCvBox2D;
size: TCvSize2D32f;
area: Single;
n:Integer;
begin
bigContour := nil;
// generate all the contours in the threshold image as a list
contours := AllocMem(SizeOf(TCvSeq));
n:=cvFindContours(imgThreshed, contourStorage, @contours, SizeOf(TCvContour), CV_RETR_LIST, CV_CHAIN_APPROX_SIMPLE, cvPoint(0, 0));
// find the largest contour in the list based on bounded box size
maxArea := SMALLEST_AREA;
maxBox := nil;
while Assigned(contours) do
begin
if (contours^.elem_size > 0) then
begin
box := cvMinAreaRect2(contours, contourStorage);
if (box.size.width <> 0) and (box.size.height <> 0) then
begin
size := box.size;
area := size.width * size.height;
end;
if (area > maxArea) then
begin
maxArea := area;
bigContour := contours;
end;
end;
contours := contours^.h_next;
end;
Result := bigContour;
end; // end of findBiggestContour()
function calculateTilt(const m11, m20, m02: double): Integer;
(*Return integer degree angle of contour's major axis relative to the horizontal,
assuming that the positive y-axis goes down the screen.
This code is based on maths explained in "Simple Image Analysis By Moments", by
Johannes Kilian, March 15, 2001 (see Table 1 on p.7).
The paper is available at:
http://public.cranfield.ac.uk/c5354/teaching/dip/opencv/SimpleImageAnalysisbyMoments.pdf
*)
Var
diff, theta: double;
tilt: Integer;
begin
diff := m20 - m02;
if (diff = 0) then
if (m11 = 0) then
Exit(0)
else if (m11 > 0) then
Exit(45)
else // m11 < 0
Exit(-45);
theta := 0.5 * ArcTan2(2 * m11, diff);
tilt := round(RadToDeg(theta));
if ((diff > 0)) and ((m11 = 0)) then
Exit(0)
else if ((diff < 0)) and ((m11 = 0)) then
Exit(-90)
else if ((diff > 0)) and ((m11 > 0)) then // 0 to 45 degrees
Exit(tilt)
else if ((diff > 0)) and ((m11 < 0)) then // -45 to 0
Exit(180 + tilt) // change to counter-clockwise angle measure
else if ((diff < 0)) and ((m11 > 0)) then // 45 to 90
Exit(tilt)
else if ((diff < 0)) and ((m11 < 0)) then // -90 to -45
Exit(180 + tilt); // change to counter-clockwise angle measure
WriteLn('Error in moments for tilt angle');
Exit(0);
end; // end of calculateTilt()
procedure extractContourInfo(const bigContour: pCvSeq; const scale: Integer);
(*calculate COG and angle of the contour's main axis relative to the horizontal.
Store them in the globals cogPt and contourAxisAngle
*)
Var
moments: TCvMoments;
m00, m10, m01: double;
m11, m20, m02: double;
yTotal: Integer;
avgYFinger: Integer;
i: Integer;
begin
cvMoments(bigContour, @moments, 1); // CvSeq is a subclass of CvArr
// center of gravity
m00 := cvGetSpatialMoment(@moments, 0, 0);
m10 := cvGetSpatialMoment(@moments, 1, 0);
m01 := cvGetSpatialMoment(@moments, 0, 1);
if (m00 <> 0) then
begin // calculate center
cogPt.x := round(m10 / m00) * scale;
cogPt.y := round(m01 / m00) * scale;
end;
m11 := cvGetCentralMoment(@moments, 1, 1);
m20 := cvGetCentralMoment(@moments, 2, 0);
m02 := cvGetCentralMoment(@moments, 0, 2);
contourAxisAngle := calculateTilt(m11, m20, m02);
(*this angle assumes that the positive y-axis
is down the screen*)
// deal with hand contour pointing downwards
(*uses fingertips information generated on the last update of
the hand, so will be out-of-date*)
if Length(fingerTips) > 0 then
begin
yTotal := 0;
for i := 0 to High(fingerTips) do
yTotal := yTotal + fingerTips[i].y;
avgYFinger := yTotal div Length(fingerTips);
if (avgYFinger > cogPt.y) then // fingers below COG
contourAxisAngle := contourAxisAngle + 180;
end;
contourAxisAngle := 180 - contourAxisAngle;
(*this makes the angle relative to a positive y-axis that
runs up the screen*)
// System.out.println("Contour angle: " + contourAxisAngle);
end; // end of extractContourInfo()
function angleBetween(const tip, next, prev: TcvPoint): Integer;
// calulate the angle between the tip and its neigbouring folds (in integer degrees)
begin
Result := abs(round(RadToDeg(ArcTan2(next.x - tip.x, next.y - tip.y) - ArcTan2(prev.x - tip.x, prev.y - tip.y))));
end;
procedure reduceTips(const numPoints: Integer; const tipPts, foldPts: TArray<TcvPoint>; const depths: TArray<Single>);
(*Narrow in on 'real' finger tips by ignoring shallow defect depths, and tips
which have too great an angle between their neighbouring fold points.
Store the resulting finger tip coordinates in the global fingerTips list.
*)
Var
i: Integer;
pdx, sdx, angle: Integer;
begin
SetLength(fingerTips, 0);
for i := 0 to numPoints - 1 do
begin
if (depths[i] < MIN_FINGER_DEPTH) then // defect too shallow
continue;
// look at fold points on either side of a tip
if i = 0 then
pdx := numPoints - 1
else
pdx := i - 1; // predecessor of i
if i = (numPoints - 1) then
sdx := 0
else
sdx := i + 1; // successor of i
angle := angleBetween(tipPts[i], foldPts[pdx], foldPts[sdx]);
if (angle >= MAX_FINGER_ANGLE) then // angle between finger and folds too wide
continue;
// this point probably is a finger tip, so add to list
SetLength(fingerTips, Length(fingerTips) + 1);
fingerTips[High(fingerTips)] := tipPts[i];
end;
// System.out.println("No. of finger tips: " + fingerTips.size());
end; // end of reduceTips()
procedure findFingerTips(const bigContour: pCvSeq; const scale: Integer);
(*Starting with the contour, calculate its convex hull, and its
convexity defects. Ignore defects that are unlikely to be fingers.
*)
Var
approxContour, hullSeq, defects: pCvSeq;
defectsTotal: Integer;
i: Integer;
cdf: pCvConvexityDefect;
startPt, endPt, depthPt: TcvPoint;
begin
approxContour := cvApproxPoly(bigContour, SizeOf(TCvContour), approxStorage, CV_POLY_APPROX_DP, 3, 1);
// reduce number of points in the contour
hullSeq := cvConvexHull2(approxContour, hullStorage, CV_COUNTER_CLOCKWISE, 0);
// find the convex hull around the contour
defects := cvConvexityDefects(approxContour, hullSeq, defectsStorage);
// find the defect differences between the contour and hull
defectsTotal := defects^.total;
if (defectsTotal > MAX_POINTS) then
begin
WriteLn('Only processing ', MAX_POINTS, ' defect points');
defectsTotal := MAX_POINTS;
end;
// copy defect information from defects sequence into arrays
for i := 0 to defectsTotal - 1 do
begin
cdf := cvGetSeqElem(defects, i);
startPt := cdf^.start^;
tipPts[i] := cvPoint(round(startPt.x * scale), round(startPt.y * scale));
// an array containing the coordinates of the finger tips
endPt := cdf^._end^;
depthPt := cdf^.depth_point^;
foldPts[i] := cvPoint(round(depthPt.x * scale), round(depthPt.y * scale));
// an array containing the coordinates of the skin fold between fingers
depths[i] := cdf^.depth * scale;
// an array containing the distances from tips to folds
end;
reduceTips(defectsTotal, tipPts, foldPts, depths);
end; // end of findFingerTips()
function angleToCOG(const tipPt, cogPt: TcvPoint; const contourAxisAngle: Integer): Integer;
(*calculate angle of tip relative to the COG, remembering to add the
hand contour angle so that the hand is orientated straight up*)
Var
yOffset, xOffset: Integer;
theta: double;
angleTip: Integer;
offsetAngleTip: Integer;
begin
yOffset := cogPt.y - tipPt.y; // make y positive up screen
xOffset := tipPt.x - cogPt.x;
// Point offsetPt = new Point(xOffset, yOffset);
theta := ArcTan2(yOffset, xOffset);
angleTip := round(RadToDeg(theta));
offsetAngleTip := angleTip + (90 - contourAxisAngle);
// this addition ensures that the hand is orientated straight up
Result := offsetAngleTip;
end; // end of angleToCOG()
procedure labelThumbIndex(const fingerTips: TArray<TcvPoint>; Var nms: TArray<TFingerName>);
// attempt to label the thumb and index fingers of the hand
Var
foundThumb, foundIndex: boolean;
i: Integer;
angle: Integer;
begin
foundThumb := false;
foundIndex := false;
(*the thumb and index fingers will most likely be stored at the end
of the list, since the contour hull was built in a counter-clockwise
order by the call to cvConvexHull2() in findFingerTips(), and I am assuming
the thumb is on the left of the hand.
So iterate backwards through the list.
*)
i := High(fingerTips);
while ((i >= 0)) do
begin
angle := angleToCOG(fingerTips[i], cogPt, contourAxisAngle);
// check for thumb
if (angle <= MAX_THUMB) and (angle > MIN_THUMB) and (not foundThumb) then
begin
nms[i] := THUMB;
foundThumb := true;
end;
// check for index
if (angle <= MAX_INDEX) and (angle > MIN_INDEX) and (not foundIndex) then
begin
nms[i] := INDEX;
foundIndex := true;
end;
Dec(i);
end;
end; // end of labelThumbIndex()
function usedName(const nms: TArray<TFingerName>; const name: TFingerName): boolean;
// does the fingers list contain name already?
Var
i: Integer;
begin
for i := 0 to High(nms) do
if (nms[i] = name) then
Exit(true);
Result := false;
end; // end of usedName()
procedure labelPrev(Var nms: TArray<TFingerName>; i: Integer; name: TFingerName);
// move backwards through fingers list labelling unknown fingers
begin
Dec(i);
while (i >= 0) and (name <> UNKNOWN) do
begin
if (nms[i] = UNKNOWN) then
begin // unknown finger
name := Pred(name);
if not usedName(nms, name) then
nms[i] := name;
end
else // finger is named already
name := nms[i];
Dec(i);
end;
end; // end of labelPrev()
procedure labelFwd(Var nms: TArray<TFingerName>; i: Integer; name: TFingerName);
// move forward through fingers list labelling unknown fingers
begin
Inc(i);
while (i < Length(nms)) and (name <> UNKNOWN) do
begin
if (nms[i] = UNKNOWN) then
begin // unknown finger
name := Succ(name);
if (not usedName(nms, name)) then
nms[i] := name;
end
else // finger is named already
name := nms[i];
Inc(i);
end;
end; // end of labelFwd()
procedure labelUnknowns(Var nms: TArray<TFingerName>);
// attempt to label all the unknown fingers in the list
var
i: Integer;
name: TFingerName;
begin
// find first named finger
i := 0;
while (i < Length(nms)) and (nms[i] = UNKNOWN) do
Inc(i);
if i = Length(nms) then // no named fingers found, so give up
Exit;
name := nms[i];
labelPrev(nms, i, name); // fill-in backwards
labelFwd(nms, i, name); // fill-in forwards
end; // end of labelUnknowns()
procedure nameFingers(const cogPt: TcvPoint; const contourAxisAngle: Integer; const fingerTips: TArray<TcvPoint>);
(*Use the finger tip coordinates, and the comtour's COG and axis angle to horizontal
to label the fingers.
Try to label the thumb and index based on their likely angle ranges
relative to the COG. This assumes that the thumb and index finger are on the
left side of the hand.
Then label the other fingers based on the order of the names in the FingerName class
*)
Var
i: Integer;
begin // reset all named fingers to unknown
SetLength(namedFingers, 0);
for i := 0 to High(fingerTips) do
begin
SetLength(namedFingers, Length(namedFingers) + 1);
namedFingers[High(namedFingers)] := UNKNOWN;
end;
labelThumbIndex(fingerTips, namedFingers);
// printFingers("named fingers", namedFingers);
labelUnknowns(namedFingers);
// printFingers("revised named fingers", namedFingers);
end; // end of nameFingers()
procedure update(const im: pIplImage);
(*Convert the image to HSV format. Calculate a threshold
image using the HSV ranges for the colour being detected. Find
the largest contour in the threshold image. Find the finger tips
using a convex hull and defects detection, and then label the fingers
(assuming that the thumb is on the left of the hand).
*)
Var
bigContour: pCvSeq;
begin
if not Assigned(scaleImg) then
HandDetector('', im^.width, im^.height);
// scale and convert image format to HSV
cvResize(im, scaleImg);
cvCvtColor(scaleImg, hsvImg, CV_BGR2HSV);
// threshold the image using the loaded HSV settings for the user's glove
cvInRangeS(hsvImg, cvScalar(hueLower, satLower, briLower, 0), cvScalar(hueUpper, satUpper, briUpper, 0), imgThreshed);
cvMorphologyEx(imgThreshed, imgThreshed, nil, nil, CV_MOP_OPEN, 1);
// do erosion followed by dilation on the image to remove specks of white & retain size
bigContour := findBiggestContour(imgThreshed);
if not Assigned(bigContour) then
Exit;
extractContourInfo(bigContour, IMG_SCALE);
// find the COG and angle to horizontal of the contour
findFingerTips(bigContour, IMG_SCALE);
// detect the finger tips positions in the contour
nameFingers(cogPt, contourAxisAngle, fingerTips);
end; // end of update()
procedure draw(const g2d: pIplImage);
// draw information about the finger tips and the hand COG
Var
i: Integer;
pt: TcvPoint;
txt: AnsiString;
begin
if Length(fingerTips) = 0 then
Exit;
// label the finger tips in red or green, and draw COG lines to named tips
for i := 0 to High(fingerTips) do
begin
pt := fingerTips[i];
if (namedFingers[i] = UNKNOWN) then
begin
cvCircle(g2d, pt, 16, CV_RGB(255, 0, 0), 3, CV_AA, 0);
txt := IntToStr(i);
cvPutText(g2d, PAnsiChar(@txt[1]), cvPoint(pt.x, pt.y - 10), @msgFont, cvScalar(255, 0, 0, 0));
end
else
begin
// draw yellow line to the named finger tip from COG
cvLine(g2d, cogPt, pt, CV_RGB(255, 255, 0), 1, CV_AA, 0);
cvCircle(g2d, pt, 16, CV_RGB(0, 255, 0), 3, CV_AA, 0);
txt := FingerName[namedFingers[i]];
cvPutText(g2d, PAnsiChar(@txt[1]), cvPoint(pt.x, pt.y - 10), @msgFont, cvScalar(255, 0, 0, 0));
end;
// draw COG
cvCircle(g2d, cogPt, 16, CV_RGB(0, 255, 0), 3, CV_AA, 0);
end;
end; // end of draw()
Var
image: pIplImage;
begin
try
capture := cvCreateCameraCapture(CV_CAP_ANY);
cvNamedWindow('capture', CV_WINDOW_AUTOSIZE);
while true do
begin
frame := cvQueryFrame(capture);
image := cvCloneImage(frame);
update(image);
cvShowImage('capture', image);
if cvWaitKey(33) = 27 then
Break;
end;
cvReleaseCapture(capture);
cvReleaseImage(image);
cvDestroyAllWindows;
except
on E: Exception do
WriteLn(E.ClassName, ': ', E.Message);
end;
end.

View File

@ -1,33 +1,18 @@
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup> <PropertyGroup>
<ProjectGuid>{29A87BFF-B0BF-4A7F-BC7D-E36D34A7E4B5}</ProjectGuid> <ProjectGuid>{B97156ED-0FAF-46F9-A23B-624365F042E1}</ProjectGuid>
<MainSource>dclOpenCV160.dpk</MainSource> <MainSource>HandsDetect4.dpr</MainSource>
<Base>True</Base> <Base>True</Base>
<Config Condition="'$(Config)'==''">Release</Config> <Config Condition="'$(Config)'==''">Debug</Config>
<TargetedPlatforms>1</TargetedPlatforms> <TargetedPlatforms>3</TargetedPlatforms>
<AppType>Package</AppType> <AppType>Console</AppType>
<FrameworkType>VCL</FrameworkType> <FrameworkType>None</FrameworkType>
<ProjectVersion>15.0</ProjectVersion> <ProjectVersion>15.4</ProjectVersion>
<Platform Condition="'$(Platform)'==''">Win32</Platform> <Platform Condition="'$(Platform)'==''">Win32</Platform>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Config)'=='Base' or '$(Base)'!=''"> <PropertyGroup Condition="'$(Config)'=='Base' or '$(Base)'!=''">
<Base>true</Base> <Base>true</Base>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='Android' and '$(Base)'=='true') or '$(Base_Android)'!=''">
<Base_Android>true</Base_Android>
<CfgParent>Base</CfgParent>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='iOSDevice' and '$(Base)'=='true') or '$(Base_iOSDevice)'!=''">
<Base_iOSDevice>true</Base_iOSDevice>
<CfgParent>Base</CfgParent>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='iOSSimulator' and '$(Base)'=='true') or '$(Base_iOSSimulator)'!=''">
<Base_iOSSimulator>true</Base_iOSSimulator>
<CfgParent>Base</CfgParent>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='Win32' and '$(Base)'=='true') or '$(Base_Win32)'!=''"> <PropertyGroup Condition="('$(Platform)'=='Win32' and '$(Base)'=='true') or '$(Base_Win32)'!=''">
<Base_Win32>true</Base_Win32> <Base_Win32>true</Base_Win32>
<CfgParent>Base</CfgParent> <CfgParent>Base</CfgParent>
@ -73,94 +58,71 @@
<Base>true</Base> <Base>true</Base>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Base)'!=''"> <PropertyGroup Condition="'$(Base)'!=''">
<SanitizedProjectName>dclOpenCV160</SanitizedProjectName> <DCC_DcuOutput>.\$(Platform)\$(Config)</DCC_DcuOutput>
<DCC_OutputNeverBuildDcps>true</DCC_OutputNeverBuildDcps> <SanitizedProjectName>HandsDetect4</SanitizedProjectName>
<DCC_ImageBase>00400000</DCC_ImageBase> <DCC_Namespace>System;Xml;Data;Datasnap;Web;Soap;Winapi;$(DCC_Namespace)</DCC_Namespace>
<DCC_Namespace>Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;System;Xml;Data;Datasnap;Web;Soap;Winapi;$(DCC_Namespace)</DCC_Namespace>
<DesignOnlyPackage>true</DesignOnlyPackage>
<GenDll>true</GenDll>
<DCC_N>false</DCC_N>
<DCC_Description>OpenCV Component</DCC_Description>
<DCC_F>false</DCC_F> <DCC_F>false</DCC_F>
<DCC_K>false</DCC_K> <DCC_K>false</DCC_K>
<DCC_DebugInformation>true</DCC_DebugInformation> <DCC_ImageBase>00400000</DCC_ImageBase>
<GenPackage>true</GenPackage>
<VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=;CFBundleName=;CFBundleDisplayName=;UIDeviceFamily=;CFBundleIdentifier=;CFBundleVersion=;CFBundlePackageType=;CFBundleSignature=;CFBundleAllowMixedLocalizations=;UISupportedInterfaceOrientations=;CFBundleExecutable=;CFBundleResourceSpecification=;LSRequiresIPhoneOS=;CFBundleInfoDictionaryVersion=;CFBundleDevelopmentRegion=;package=;label=;versionCode=;versionName=;persistent=;restoreAnyVersion=;installLocation=;largeHeap=;theme=</VerInfo_Keys>
<DCC_S>false</DCC_S>
<DCC_E>false</DCC_E> <DCC_E>false</DCC_E>
<VerInfo_Locale>1049</VerInfo_Locale> <VerInfo_Locale>1049</VerInfo_Locale>
</PropertyGroup> <DCC_S>false</DCC_S>
<PropertyGroup Condition="'$(Base_Android)'!=''"> <DCC_N>false</DCC_N>
<DCC_UsePackage>rtl;$(DCC_UsePackage)</DCC_UsePackage> <VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=;CFBundleName=;CFBundleDisplayName=;CFBundleIdentifier=;CFBundleVersion=;CFBundlePackageType=;CFBundleSignature=;CFBundleAllowMixedLocalizations=;CFBundleExecutable=</VerInfo_Keys>
</PropertyGroup>
<PropertyGroup Condition="'$(Base_iOSDevice)'!=''">
<DCC_UsePackage>rtl;$(DCC_UsePackage)</DCC_UsePackage>
</PropertyGroup>
<PropertyGroup Condition="'$(Base_iOSSimulator)'!=''">
<DCC_UsePackage>rtl;$(DCC_UsePackage)</DCC_UsePackage>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Base_Win32)'!=''"> <PropertyGroup Condition="'$(Base_Win32)'!=''">
<DCC_UsePackage>vcl;rtl;OpenCV160;$(DCC_UsePackage)</DCC_UsePackage>
<VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
<DCC_Namespace>System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)</DCC_Namespace> <DCC_Namespace>System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)</DCC_Namespace>
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo> <VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
<VerInfo_Locale>1033</VerInfo_Locale> <VerInfo_Locale>1033</VerInfo_Locale>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Base_Win64)'!=''"> <PropertyGroup Condition="'$(Base_Win64)'!=''">
<DCC_UsePackage>vcl;rtl;OpenCV160;$(DCC_UsePackage)</DCC_UsePackage>
<VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
<DCC_Namespace>System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;$(DCC_Namespace)</DCC_Namespace> <DCC_Namespace>System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;$(DCC_Namespace)</DCC_Namespace>
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo> <VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
<VerInfo_Locale>1033</VerInfo_Locale> <VerInfo_Locale>1033</VerInfo_Locale>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Cfg_1)'!=''"> <PropertyGroup Condition="'$(Cfg_1)'!=''">
<DCC_LocalDebugSymbols>false</DCC_LocalDebugSymbols>
<DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo> <DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
<DCC_Define>RELEASE;$(DCC_Define)</DCC_Define> <DCC_Define>RELEASE;$(DCC_Define)</DCC_Define>
<DCC_DebugInformation>0</DCC_DebugInformation> <DCC_DebugInformation>0</DCC_DebugInformation>
<DCC_LocalDebugSymbols>false</DCC_LocalDebugSymbols>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Cfg_1_Win32)'!=''"> <PropertyGroup Condition="'$(Cfg_1_Win32)'!=''">
<DCC_UnitSearchPath>..;$(DCC_UnitSearchPath)</DCC_UnitSearchPath>
<DCC_DcuOutput>.\$(Platform)\$(Config)</DCC_DcuOutput> <DCC_DcuOutput>.\$(Platform)\$(Config)</DCC_DcuOutput>
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo> <Manifest_File>None</Manifest_File>
<DCC_ExeOutput>..\..\..\bin\$(Platform)</DCC_ExeOutput>
<VerInfo_Locale>1033</VerInfo_Locale> <VerInfo_Locale>1033</VerInfo_Locale>
<VerInfo_Keys>CompanyName=;FileDescription=OpenCV Component;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=OpenCV Component;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys> <VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Cfg_1_Win64)'!=''"> <PropertyGroup Condition="'$(Cfg_1_Win64)'!=''">
<DCC_DcuOutput>.\$(Platform)\$(Config)</DCC_DcuOutput> <DCC_DcuOutput>.\$(Platform)\$(Config)</DCC_DcuOutput>
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo> <Manifest_File>None</Manifest_File>
<DCC_ExeOutput>..\..\..\bin\$(Platform)</DCC_ExeOutput>
<VerInfo_Locale>1033</VerInfo_Locale> <VerInfo_Locale>1033</VerInfo_Locale>
<VerInfo_Keys>CompanyName=;FileDescription=OpenCV Component;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=OpenCV Component;ProductVersion=1.0.0.0;Comments=www.programs74.ru</VerInfo_Keys> <VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Cfg_2)'!=''"> <PropertyGroup Condition="'$(Cfg_2)'!=''">
<DCC_GenerateStackFrames>true</DCC_GenerateStackFrames>
<DCC_Optimize>false</DCC_Optimize>
<DCC_Define>DEBUG;$(DCC_Define)</DCC_Define> <DCC_Define>DEBUG;$(DCC_Define)</DCC_Define>
<DCC_Optimize>false</DCC_Optimize>
<DCC_GenerateStackFrames>true</DCC_GenerateStackFrames>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Cfg_2_Win32)'!=''"> <PropertyGroup Condition="'$(Cfg_2_Win32)'!=''">
<DCC_UnitSearchPath>..;$(DCC_UnitSearchPath)</DCC_UnitSearchPath> <DCC_DcuOutput>.\$(Platform)\$(Config)</DCC_DcuOutput>
<DCC_DcuOutput>.</DCC_DcuOutput> <VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo> <Manifest_File>None</Manifest_File>
<DCC_ExeOutput>..\..\..\bin\$(Platform)</DCC_ExeOutput>
<VerInfo_Locale>1033</VerInfo_Locale> <VerInfo_Locale>1033</VerInfo_Locale>
<VerInfo_Keys>CompanyName=;FileDescription=OpenCV Component;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=OpenCV Component;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Cfg_2_Win64)'!=''"> <PropertyGroup Condition="'$(Cfg_2_Win64)'!=''">
<DCC_DcuOutput>.\$(Platform)\$(Config)</DCC_DcuOutput> <DCC_DcuOutput>.\$(Platform)\$(Config)</DCC_DcuOutput>
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo> <Manifest_File>None</Manifest_File>
<DCC_ExeOutput>..\..\..\bin\$(Platform)</DCC_ExeOutput>
<VerInfo_Locale>1033</VerInfo_Locale> <VerInfo_Locale>1033</VerInfo_Locale>
<VerInfo_Keys>CompanyName=;FileDescription=OpenCV Component;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=OpenCV Component;ProductVersion=1.0.0.0;Comments=www.programs74.ru</VerInfo_Keys> <VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
</PropertyGroup> </PropertyGroup>
<ItemGroup> <ItemGroup>
<DelphiCompile Include="$(MainSource)"> <DelphiCompile Include="$(MainSource)">
<MainSource>MainSource</MainSource> <MainSource>MainSource</MainSource>
</DelphiCompile> </DelphiCompile>
<DCCReference Include="..\ocv.dcr"/>
<DCCReference Include="OpenCV160.dcp"/>
<DCCReference Include="rtl.dcp"/>
<DCCReference Include="vcl.dcp"/>
<DCCReference Include="designide.dcp"/>
<DCCReference Include="..\uOCVIOProperties.pas"/>
<DCCReference Include="..\uOCVRegister.pas"/>
<BuildConfiguration Include="Debug"> <BuildConfiguration Include="Debug">
<Key>Cfg_2</Key> <Key>Cfg_2</Key>
<CfgParent>Base</CfgParent> <CfgParent>Base</CfgParent>
@ -175,14 +137,14 @@
</ItemGroup> </ItemGroup>
<ProjectExtensions> <ProjectExtensions>
<Borland.Personality>Delphi.Personality.12</Borland.Personality> <Borland.Personality>Delphi.Personality.12</Borland.Personality>
<Borland.ProjectType>Package</Borland.ProjectType> <Borland.ProjectType/>
<BorlandProject> <BorlandProject>
<Delphi.Personality> <Delphi.Personality>
<Source> <Source>
<Source Name="MainSource">dclOpenCV160.dpk</Source> <Source Name="MainSource">HandsDetect4.dpr</Source>
</Source> </Source>
<VersionInfo> <VersionInfo>
<VersionInfo Name="IncludeVerInfo">True</VersionInfo> <VersionInfo Name="IncludeVerInfo">False</VersionInfo>
<VersionInfo Name="AutoIncBuild">False</VersionInfo> <VersionInfo Name="AutoIncBuild">False</VersionInfo>
<VersionInfo Name="MajorVer">1</VersionInfo> <VersionInfo Name="MajorVer">1</VersionInfo>
<VersionInfo Name="MinorVer">0</VersionInfo> <VersionInfo Name="MinorVer">0</VersionInfo>
@ -209,39 +171,22 @@
<VersionInfoKeys Name="Comments"/> <VersionInfoKeys Name="Comments"/>
<VersionInfoKeys Name="CFBundleName"/> <VersionInfoKeys Name="CFBundleName"/>
<VersionInfoKeys Name="CFBundleDisplayName"/> <VersionInfoKeys Name="CFBundleDisplayName"/>
<VersionInfoKeys Name="UIDeviceFamily"/>
<VersionInfoKeys Name="CFBundleIdentifier"/> <VersionInfoKeys Name="CFBundleIdentifier"/>
<VersionInfoKeys Name="CFBundleVersion"/> <VersionInfoKeys Name="CFBundleVersion"/>
<VersionInfoKeys Name="CFBundlePackageType"/> <VersionInfoKeys Name="CFBundlePackageType"/>
<VersionInfoKeys Name="CFBundleSignature"/> <VersionInfoKeys Name="CFBundleSignature"/>
<VersionInfoKeys Name="CFBundleAllowMixedLocalizations"/> <VersionInfoKeys Name="CFBundleAllowMixedLocalizations"/>
<VersionInfoKeys Name="UISupportedInterfaceOrientations"/>
<VersionInfoKeys Name="CFBundleExecutable"/> <VersionInfoKeys Name="CFBundleExecutable"/>
<VersionInfoKeys Name="CFBundleResourceSpecification"/>
<VersionInfoKeys Name="LSRequiresIPhoneOS"/>
<VersionInfoKeys Name="CFBundleInfoDictionaryVersion"/>
<VersionInfoKeys Name="CFBundleDevelopmentRegion"/>
<VersionInfoKeys Name="package"/>
<VersionInfoKeys Name="label"/>
<VersionInfoKeys Name="versionCode"/>
<VersionInfoKeys Name="versionName"/>
<VersionInfoKeys Name="persistent"/>
<VersionInfoKeys Name="restoreAnyVersion"/>
<VersionInfoKeys Name="installLocation"/>
<VersionInfoKeys Name="largeHeap"/>
<VersionInfoKeys Name="theme"/>
</VersionInfoKeys> </VersionInfoKeys>
<Excluded_Packages> <Excluded_Packages>
<Excluded_Packages Name="$(BDSBIN)\dcloffice2k160.bpl">Microsoft Office 2000 Sample Automation Server Wrapper Components</Excluded_Packages> <Excluded_Packages Name="$(BDSBIN)\dcloffice2k200.bpl">Microsoft Office 2000 Sample Automation Server Wrapper Components</Excluded_Packages>
<Excluded_Packages Name="$(BDSBIN)\dclofficexp160.bpl">Microsoft Office XP Sample Automation Server Wrapper Components</Excluded_Packages> <Excluded_Packages Name="$(BDSBIN)\dclofficexp200.bpl">Microsoft Office XP Sample Automation Server Wrapper Components</Excluded_Packages>
</Excluded_Packages> </Excluded_Packages>
</Delphi.Personality> </Delphi.Personality>
<Platforms> <Platforms>
<Platform value="Android">False</Platform> <Platform value="OSX32">False</Platform>
<Platform value="iOSDevice">False</Platform>
<Platform value="iOSSimulator">False</Platform>
<Platform value="Win32">True</Platform> <Platform value="Win32">True</Platform>
<Platform value="Win64">False</Platform> <Platform value="Win64">True</Platform>
</Platforms> </Platforms>
</BorlandProject> </BorlandProject>
<ProjectFileVersion>12</ProjectFileVersion> <ProjectFileVersion>12</ProjectFileVersion>

Binary file not shown.

View File

@ -34,9 +34,11 @@ requires
vcl; vcl;
contains contains
uOCVImageOperation in '..\uOCVImageOperation.pas', ocv.comp.ImageOperation in '..\ocv.comp.ImageOperation.pas',
uOCVTypes in '..\uOCVTypes.pas', ocv.comp.VideoWriter in '..\ocv.comp.VideoWriter.pas',
uOCVSource in '..\uOCVSource.pas', ocv.comp.Types in '..\ocv.comp.Types.pas',
uOCVView in '..\uOCVView.pas'; ocv.comp.Source in '..\ocv.comp.Source.pas',
ocv.comp.View in '..\ocv.comp.View.pas',
ocv.comp.Proc in '..\ocv.comp.Proc.pas';
end. end.

View File

@ -1,599 +0,0 @@
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<ProjectGuid>{37486FE1-CC21-40FA-8006-F946D2DCCC3E}</ProjectGuid>
<MainSource>OpenCV160.dpk</MainSource>
<Base>True</Base>
<Config Condition="'$(Config)'==''">Release</Config>
<TargetedPlatforms>91</TargetedPlatforms>
<AppType>Package</AppType>
<FrameworkType>None</FrameworkType>
<ProjectVersion>15.0</ProjectVersion>
<Platform Condition="'$(Platform)'==''">Win32</Platform>
</PropertyGroup>
<PropertyGroup Condition="'$(Config)'=='Base' or '$(Base)'!=''">
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='Android' and '$(Base)'=='true') or '$(Base_Android)'!=''">
<Base_Android>true</Base_Android>
<CfgParent>Base</CfgParent>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='iOSDevice' and '$(Base)'=='true') or '$(Base_iOSDevice)'!=''">
<Base_iOSDevice>true</Base_iOSDevice>
<CfgParent>Base</CfgParent>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='iOSSimulator' and '$(Base)'=='true') or '$(Base_iOSSimulator)'!=''">
<Base_iOSSimulator>true</Base_iOSSimulator>
<CfgParent>Base</CfgParent>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='Win32' and '$(Base)'=='true') or '$(Base_Win32)'!=''">
<Base_Win32>true</Base_Win32>
<CfgParent>Base</CfgParent>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='Win64' and '$(Base)'=='true') or '$(Base_Win64)'!=''">
<Base_Win64>true</Base_Win64>
<CfgParent>Base</CfgParent>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="'$(Config)'=='Release' or '$(Cfg_1)'!=''">
<Cfg_1>true</Cfg_1>
<CfgParent>Base</CfgParent>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='Android' and '$(Cfg_1)'=='true') or '$(Cfg_1_Android)'!=''">
<Cfg_1_Android>true</Cfg_1_Android>
<CfgParent>Cfg_1</CfgParent>
<Cfg_1>true</Cfg_1>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='iOSDevice' and '$(Cfg_1)'=='true') or '$(Cfg_1_iOSDevice)'!=''">
<Cfg_1_iOSDevice>true</Cfg_1_iOSDevice>
<CfgParent>Cfg_1</CfgParent>
<Cfg_1>true</Cfg_1>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='iOSSimulator' and '$(Cfg_1)'=='true') or '$(Cfg_1_iOSSimulator)'!=''">
<Cfg_1_iOSSimulator>true</Cfg_1_iOSSimulator>
<CfgParent>Cfg_1</CfgParent>
<Cfg_1>true</Cfg_1>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='Win32' and '$(Cfg_1)'=='true') or '$(Cfg_1_Win32)'!=''">
<Cfg_1_Win32>true</Cfg_1_Win32>
<CfgParent>Cfg_1</CfgParent>
<Cfg_1>true</Cfg_1>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='Win64' and '$(Cfg_1)'=='true') or '$(Cfg_1_Win64)'!=''">
<Cfg_1_Win64>true</Cfg_1_Win64>
<CfgParent>Cfg_1</CfgParent>
<Cfg_1>true</Cfg_1>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="'$(Config)'=='Debug' or '$(Cfg_2)'!=''">
<Cfg_2>true</Cfg_2>
<CfgParent>Base</CfgParent>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='Android' and '$(Cfg_2)'=='true') or '$(Cfg_2_Android)'!=''">
<Cfg_2_Android>true</Cfg_2_Android>
<CfgParent>Cfg_2</CfgParent>
<Cfg_2>true</Cfg_2>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='iOSDevice' and '$(Cfg_2)'=='true') or '$(Cfg_2_iOSDevice)'!=''">
<Cfg_2_iOSDevice>true</Cfg_2_iOSDevice>
<CfgParent>Cfg_2</CfgParent>
<Cfg_2>true</Cfg_2>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='iOSSimulator' and '$(Cfg_2)'=='true') or '$(Cfg_2_iOSSimulator)'!=''">
<Cfg_2_iOSSimulator>true</Cfg_2_iOSSimulator>
<CfgParent>Cfg_2</CfgParent>
<Cfg_2>true</Cfg_2>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='Win32' and '$(Cfg_2)'=='true') or '$(Cfg_2_Win32)'!=''">
<Cfg_2_Win32>true</Cfg_2_Win32>
<CfgParent>Cfg_2</CfgParent>
<Cfg_2>true</Cfg_2>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='Win64' and '$(Cfg_2)'=='true') or '$(Cfg_2_Win64)'!=''">
<Cfg_2_Win64>true</Cfg_2_Win64>
<CfgParent>Cfg_2</CfgParent>
<Cfg_2>true</Cfg_2>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="'$(Base)'!=''">
<SanitizedProjectName>OpenCV160</SanitizedProjectName>
<DCC_OutputNeverBuildDcps>true</DCC_OutputNeverBuildDcps>
<RuntimeOnlyPackage>true</RuntimeOnlyPackage>
<DCC_ImageBase>00400000</DCC_ImageBase>
<DCC_Namespace>Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;System;Xml;Data;Datasnap;Web;Soap;Winapi;$(DCC_Namespace)</DCC_Namespace>
<GenDll>true</GenDll>
<DCC_N>false</DCC_N>
<DCC_Description>OpenCV Component</DCC_Description>
<DCC_F>false</DCC_F>
<DCC_K>false</DCC_K>
<DCC_DebugInformation>true</DCC_DebugInformation>
<GenPackage>true</GenPackage>
<VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=;CFBundleName=;CFBundleDisplayName=;UIDeviceFamily=;CFBundleIdentifier=;CFBundleVersion=;CFBundlePackageType=;CFBundleSignature=;CFBundleAllowMixedLocalizations=;UISupportedInterfaceOrientations=;CFBundleExecutable=;CFBundleResourceSpecification=;LSRequiresIPhoneOS=;CFBundleInfoDictionaryVersion=;CFBundleDevelopmentRegion=;package=;label=;versionCode=;versionName=;persistent=;restoreAnyVersion=;installLocation=;largeHeap=;theme=</VerInfo_Keys>
<DCC_S>false</DCC_S>
<DCC_E>false</DCC_E>
<VerInfo_Locale>1049</VerInfo_Locale>
</PropertyGroup>
<PropertyGroup Condition="'$(Base_Android)'!=''">
<BT_BuildType>Debug</BT_BuildType>
<VerInfo_Keys>package=com.embarcadero.$(MSBuildProjectName);label=$(MSBuildProjectName);versionCode=1;versionName=1.0.0;persistent=False;restoreAnyVersion=False;installLocation=preferExternal;largeHeap=False;theme=TitleBar;hardwareAccelerated=true</VerInfo_Keys>
</PropertyGroup>
<PropertyGroup Condition="'$(Base_iOSDevice)'!=''">
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
<VerInfo_UIDeviceFamily>iPhoneAndiPad</VerInfo_UIDeviceFamily>
<BT_BuildType>Debug</BT_BuildType>
<VerInfo_BundleId>$(MSBuildProjectName)</VerInfo_BundleId>
<VerInfo_Keys>CFBundleName=$(MSBuildProjectName);CFBundleDevelopmentRegion=en;CFBundleDisplayName=$(MSBuildProjectName);CFBundleIdentifier=$(MSBuildProjectName);CFBundleInfoDictionaryVersion=6.0;CFBundleVersion=1.0.0.0;CFBundlePackageType=APPL;CFBundleSignature=????;LSRequiresIPhoneOS=true;CFBundleAllowMixedLocalizations=YES;CFBundleExecutable=$(MSBuildProjectName);UIDeviceFamily=iPhone &amp; iPad;CFBundleResourceSpecification=ResourceRules.plist</VerInfo_Keys>
</PropertyGroup>
<PropertyGroup Condition="'$(Base_iOSSimulator)'!=''">
<VerInfo_UIDeviceFamily>iPhoneAndiPad</VerInfo_UIDeviceFamily>
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
<VerInfo_Keys>CFBundleName=$(MSBuildProjectName);CFBundleDevelopmentRegion=en;CFBundleDisplayName=$(MSBuildProjectName);CFBundleIdentifier=$(MSBuildProjectName);CFBundleInfoDictionaryVersion=6.0;CFBundleVersion=1.0.0.0;CFBundlePackageType=APPL;CFBundleSignature=????;LSRequiresIPhoneOS=true;CFBundleAllowMixedLocalizations=YES;CFBundleExecutable=$(MSBuildProjectName);UIDeviceFamily=iPhone &amp; iPad;CFBundleResourceSpecification=ResourceRules.plist</VerInfo_Keys>
</PropertyGroup>
<PropertyGroup Condition="'$(Base_Win32)'!=''">
<DCC_UsePackage>vcl;$(DCC_UsePackage)</DCC_UsePackage>
<VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
<DCC_Namespace>System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)</DCC_Namespace>
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
<VerInfo_Locale>1033</VerInfo_Locale>
</PropertyGroup>
<PropertyGroup Condition="'$(Base_Win64)'!=''">
<DCC_UsePackage>vcl;$(DCC_UsePackage)</DCC_UsePackage>
<VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
<DCC_Namespace>System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;$(DCC_Namespace)</DCC_Namespace>
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
<VerInfo_Locale>1033</VerInfo_Locale>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_1)'!=''">
<DCC_LocalDebugSymbols>false</DCC_LocalDebugSymbols>
<DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
<DCC_Define>RELEASE;$(DCC_Define)</DCC_Define>
<DCC_DebugInformation>0</DCC_DebugInformation>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_1_Android)'!=''">
<DCC_DcuOutput>.\$(Platform)\$(Config)</DCC_DcuOutput>
<DCC_UnitSearchPath>..;$(DCC_UnitSearchPath)</DCC_UnitSearchPath>
<VerInfo_Keys>package=com.embarcadero.$(MSBuildProjectName);label=$(MSBuildProjectName);versionCode=1;versionName=1.0.0;persistent=False;restoreAnyVersion=False;installLocation=preferExternal;largeHeap=False;theme=TitleBar;hardwareAccelerated=true</VerInfo_Keys>
<VerInfo_Build>1</VerInfo_Build>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_1_iOSDevice)'!=''">
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
<VerInfo_UIDeviceFamily>iPhoneAndiPad</VerInfo_UIDeviceFamily>
<DCC_UnitSearchPath>..;$(DCC_UnitSearchPath)</DCC_UnitSearchPath>
<VerInfo_BundleId>$(MSBuildProjectName)</VerInfo_BundleId>
<VerInfo_Keys>CFBundleName=$(MSBuildProjectName);CFBundleDevelopmentRegion=en;CFBundleDisplayName=$(MSBuildProjectName);CFBundleIdentifier=$(MSBuildProjectName);CFBundleInfoDictionaryVersion=6.0;CFBundleVersion=1.0.0.0;CFBundlePackageType=APPL;CFBundleSignature=????;LSRequiresIPhoneOS=true;CFBundleAllowMixedLocalizations=YES;CFBundleExecutable=$(MSBuildProjectName);UIDeviceFamily=iPhone &amp; iPad;CFBundleResourceSpecification=ResourceRules.plist</VerInfo_Keys>
<DCC_DcuOutput>.\$(Platform)\$(Config)</DCC_DcuOutput>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_1_iOSSimulator)'!=''">
<VerInfo_UIDeviceFamily>iPhoneAndiPad</VerInfo_UIDeviceFamily>
<DCC_UnitSearchPath>..;$(DCC_UnitSearchPath)</DCC_UnitSearchPath>
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
<VerInfo_Keys>CFBundleName=$(MSBuildProjectName);CFBundleDevelopmentRegion=en;CFBundleDisplayName=$(MSBuildProjectName);CFBundleIdentifier=$(MSBuildProjectName);CFBundleInfoDictionaryVersion=6.0;CFBundleVersion=1.0.0.0;CFBundlePackageType=APPL;CFBundleSignature=????;LSRequiresIPhoneOS=true;CFBundleAllowMixedLocalizations=YES;CFBundleExecutable=$(MSBuildProjectName);UIDeviceFamily=iPhone &amp; iPad;CFBundleResourceSpecification=ResourceRules.plist</VerInfo_Keys>
<DCC_DcuOutput>.\$(Platform)\$(Config)</DCC_DcuOutput>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_1_Win32)'!=''">
<DCC_DcuOutput>.\$(Platform)\$(Config)</DCC_DcuOutput>
<DCC_UnitSearchPath>..;$(DCC_UnitSearchPath)</DCC_UnitSearchPath>
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
<VerInfo_Locale>1033</VerInfo_Locale>
<VerInfo_Keys>CompanyName=;FileDescription=OpenCV Component;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=OpenCV Component;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_1_Win64)'!=''">
<DCC_DcuOutput>.\$(Platform)\$(Config)</DCC_DcuOutput>
<DCC_UnitSearchPath>..;$(DCC_UnitSearchPath)</DCC_UnitSearchPath>
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
<VerInfo_Locale>1033</VerInfo_Locale>
<VerInfo_Keys>CompanyName=;FileDescription=OpenCV Component;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=OpenCV Component;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_2)'!=''">
<DCC_GenerateStackFrames>true</DCC_GenerateStackFrames>
<DCC_Optimize>false</DCC_Optimize>
<DCC_Define>DEBUG;$(DCC_Define)</DCC_Define>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_2_Android)'!=''">
<DCC_DcuOutput>.\$(Platform)\$(Config)</DCC_DcuOutput>
<DCC_UnitSearchPath>..;$(DCC_UnitSearchPath)</DCC_UnitSearchPath>
<VerInfo_Keys>package=com.embarcadero.$(MSBuildProjectName);label=$(MSBuildProjectName);versionCode=1;versionName=1.0.0;persistent=False;restoreAnyVersion=False;installLocation=preferExternal;largeHeap=False;theme=TitleBar;hardwareAccelerated=true</VerInfo_Keys>
<VerInfo_Build>1</VerInfo_Build>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_2_iOSDevice)'!=''">
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
<VerInfo_UIDeviceFamily>iPhoneAndiPad</VerInfo_UIDeviceFamily>
<DCC_UnitSearchPath>..;$(DCC_UnitSearchPath)</DCC_UnitSearchPath>
<VerInfo_BundleId>$(MSBuildProjectName)</VerInfo_BundleId>
<VerInfo_Keys>CFBundleName=$(MSBuildProjectName);CFBundleDevelopmentRegion=en;CFBundleDisplayName=$(MSBuildProjectName);CFBundleIdentifier=$(MSBuildProjectName);CFBundleInfoDictionaryVersion=6.0;CFBundleVersion=1.0.0.0;CFBundlePackageType=APPL;CFBundleSignature=????;LSRequiresIPhoneOS=true;CFBundleAllowMixedLocalizations=YES;CFBundleExecutable=$(MSBuildProjectName);UIDeviceFamily=iPhone &amp; iPad;CFBundleResourceSpecification=ResourceRules.plist</VerInfo_Keys>
<DCC_DcuOutput>.\$(Platform)\$(Config)</DCC_DcuOutput>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_2_iOSSimulator)'!=''">
<VerInfo_UIDeviceFamily>iPhoneAndiPad</VerInfo_UIDeviceFamily>
<DCC_UnitSearchPath>..;$(DCC_UnitSearchPath)</DCC_UnitSearchPath>
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
<VerInfo_Keys>CFBundleName=$(MSBuildProjectName);CFBundleDevelopmentRegion=en;CFBundleDisplayName=$(MSBuildProjectName);CFBundleIdentifier=$(MSBuildProjectName);CFBundleInfoDictionaryVersion=6.0;CFBundleVersion=1.0.0.0;CFBundlePackageType=APPL;CFBundleSignature=????;LSRequiresIPhoneOS=true;CFBundleAllowMixedLocalizations=YES;CFBundleExecutable=$(MSBuildProjectName);UIDeviceFamily=iPhone &amp; iPad;CFBundleResourceSpecification=ResourceRules.plist</VerInfo_Keys>
<DCC_DcuOutput>.\$(Platform)\$(Config)</DCC_DcuOutput>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_2_Win32)'!=''">
<DCC_DcuOutput>.\$(Platform)\$(Config)</DCC_DcuOutput>
<DCC_UnitSearchPath>..;$(DCC_UnitSearchPath)</DCC_UnitSearchPath>
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
<VerInfo_Locale>1033</VerInfo_Locale>
<VerInfo_Keys>CompanyName=;FileDescription=OpenCV Component;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=OpenCV Component;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_2_Win64)'!=''">
<DCC_DcuOutput>.\$(Platform)\$(Config)</DCC_DcuOutput>
<DCC_UnitSearchPath>..;$(DCC_UnitSearchPath)</DCC_UnitSearchPath>
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
<VerInfo_Locale>1033</VerInfo_Locale>
<VerInfo_Keys>CompanyName=;FileDescription=OpenCV Component;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=OpenCV Component;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
</PropertyGroup>
<ItemGroup>
<DelphiCompile Include="$(MainSource)">
<MainSource>MainSource</MainSource>
</DelphiCompile>
<DCCReference Include="rtl.dcp"/>
<DCCReference Include="vcl.dcp"/>
<DCCReference Include="..\uOCVImageOperation.pas"/>
<DCCReference Include="..\uOCVTypes.pas"/>
<DCCReference Include="..\uOCVSource.pas"/>
<DCCReference Include="..\uOCVView.pas"/>
<BuildConfiguration Include="Debug">
<Key>Cfg_2</Key>
<CfgParent>Base</CfgParent>
</BuildConfiguration>
<BuildConfiguration Include="Base">
<Key>Base</Key>
</BuildConfiguration>
<BuildConfiguration Include="Release">
<Key>Cfg_1</Key>
<CfgParent>Base</CfgParent>
</BuildConfiguration>
</ItemGroup>
<ProjectExtensions>
<Borland.Personality>Delphi.Personality.12</Borland.Personality>
<Borland.ProjectType>Package</Borland.ProjectType>
<BorlandProject>
<Delphi.Personality>
<Source>
<Source Name="MainSource">OpenCV160.dpk</Source>
</Source>
<VersionInfo>
<VersionInfo Name="IncludeVerInfo">True</VersionInfo>
<VersionInfo Name="AutoIncBuild">False</VersionInfo>
<VersionInfo Name="MajorVer">1</VersionInfo>
<VersionInfo Name="MinorVer">0</VersionInfo>
<VersionInfo Name="Release">0</VersionInfo>
<VersionInfo Name="Build">0</VersionInfo>
<VersionInfo Name="Debug">False</VersionInfo>
<VersionInfo Name="PreRelease">False</VersionInfo>
<VersionInfo Name="Special">False</VersionInfo>
<VersionInfo Name="Private">False</VersionInfo>
<VersionInfo Name="DLL">False</VersionInfo>
<VersionInfo Name="Locale">1049</VersionInfo>
<VersionInfo Name="CodePage">1251</VersionInfo>
</VersionInfo>
<VersionInfoKeys>
<VersionInfoKeys Name="CompanyName"/>
<VersionInfoKeys Name="FileDescription"/>
<VersionInfoKeys Name="FileVersion">1.0.0.0</VersionInfoKeys>
<VersionInfoKeys Name="InternalName"/>
<VersionInfoKeys Name="LegalCopyright"/>
<VersionInfoKeys Name="LegalTrademarks"/>
<VersionInfoKeys Name="OriginalFilename"/>
<VersionInfoKeys Name="ProductName"/>
<VersionInfoKeys Name="ProductVersion">1.0.0.0</VersionInfoKeys>
<VersionInfoKeys Name="Comments"/>
<VersionInfoKeys Name="CFBundleName"/>
<VersionInfoKeys Name="CFBundleDisplayName"/>
<VersionInfoKeys Name="UIDeviceFamily"/>
<VersionInfoKeys Name="CFBundleIdentifier"/>
<VersionInfoKeys Name="CFBundleVersion"/>
<VersionInfoKeys Name="CFBundlePackageType"/>
<VersionInfoKeys Name="CFBundleSignature"/>
<VersionInfoKeys Name="CFBundleAllowMixedLocalizations"/>
<VersionInfoKeys Name="UISupportedInterfaceOrientations"/>
<VersionInfoKeys Name="CFBundleExecutable"/>
<VersionInfoKeys Name="CFBundleResourceSpecification"/>
<VersionInfoKeys Name="LSRequiresIPhoneOS"/>
<VersionInfoKeys Name="CFBundleInfoDictionaryVersion"/>
<VersionInfoKeys Name="CFBundleDevelopmentRegion"/>
<VersionInfoKeys Name="package"/>
<VersionInfoKeys Name="label"/>
<VersionInfoKeys Name="versionCode"/>
<VersionInfoKeys Name="versionName"/>
<VersionInfoKeys Name="persistent"/>
<VersionInfoKeys Name="restoreAnyVersion"/>
<VersionInfoKeys Name="installLocation"/>
<VersionInfoKeys Name="largeHeap"/>
<VersionInfoKeys Name="theme"/>
</VersionInfoKeys>
<Excluded_Packages>
<Excluded_Packages Name="$(BDSBIN)\dcloffice2k160.bpl">Microsoft Office 2000 Sample Automation Server Wrapper Components</Excluded_Packages>
<Excluded_Packages Name="$(BDSBIN)\dclofficexp160.bpl">Microsoft Office XP Sample Automation Server Wrapper Components</Excluded_Packages>
</Excluded_Packages>
</Delphi.Personality>
<Platforms>
<Platform value="Android">True</Platform>
<Platform value="iOSDevice">True</Platform>
<Platform value="iOSSimulator" ActiveMobileDevice="iPhone">True</Platform>
<Platform value="Win32">True</Platform>
<Platform value="Win64">True</Platform>
</Platforms>
<Deployment>
<DeployFile LocalName="$(BDS)\Redist\osx32\libcgunwind.1.0.dylib" Class="DependencyModule">
<Platform Name="OSX32">
<Overwrite>true</Overwrite>
</Platform>
<Platform Name="iOSSimulator">
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployClass Required="true" Name="DependencyPackage">
<Platform Name="iOSDevice">
<Operation>1</Operation>
<Extensions>.dylib</Extensions>
</Platform>
<Platform Name="Win32">
<Operation>0</Operation>
<Extensions>.bpl</Extensions>
</Platform>
<Platform Name="OSX32">
<Operation>1</Operation>
<Extensions>.dylib</Extensions>
</Platform>
<Platform Name="iOSSimulator">
<Operation>1</Operation>
<Extensions>.dylib</Extensions>
</Platform>
</DeployClass>
<DeployClass Name="DependencyModule">
<Platform Name="OSX32">
<Operation>1</Operation>
<Extensions>.dylib</Extensions>
</Platform>
<Platform Name="Win32">
<Operation>0</Operation>
<Extensions>.dll;.bpl</Extensions>
</Platform>
</DeployClass>
<DeployClass Name="iPad_Launch2048">
<Platform Name="iOSDevice">
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="ProjectOSXInfoPList"/>
<DeployClass Name="ProjectiOSDeviceDebug">
<Platform Name="iOSDevice">
<RemoteDir>..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="AndroidLibnativeMipsFile">
<Platform Name="Android">
<RemoteDir>library\lib\mips</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="AndroidLibnativeX86File">
<Platform Name="Android">
<RemoteDir>library\lib\x86</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="ProjectiOSResource">
<Platform Name="iOSDevice">
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="ProjectOSXEntitlements"/>
<DeployClass Name="AndroidGDBServer">
<Platform Name="Android">
<RemoteDir>library\lib\armeabi-v7a</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="iPhone_Launch640">
<Platform Name="iOSDevice">
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="Android_LauncherIcon96">
<Platform Name="Android">
<RemoteDir>res\drawable-xhdpi</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="iPhone_Launch320">
<Platform Name="iOSDevice">
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="Android_LauncherIcon144">
<Platform Name="Android">
<RemoteDir>res\drawable-xxhdpi</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="DebugSymbols">
<Platform Name="OSX32">
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<Operation>1</Operation>
</Platform>
<Platform Name="Win32">
<Operation>0</Operation>
</Platform>
</DeployClass>
<DeployClass Name="DependencyFramework">
<Platform Name="OSX32">
<Operation>1</Operation>
<Extensions>.framework</Extensions>
</Platform>
<Platform Name="Win32">
<Operation>0</Operation>
</Platform>
</DeployClass>
<DeployClass Name="ProjectiOSEntitlements"/>
<DeployClass Name="AdditionalDebugSymbols">
<Platform Name="OSX32">
<Operation>1</Operation>
</Platform>
<Platform Name="Win32">
<RemoteDir>Contents\MacOS</RemoteDir>
<Operation>0</Operation>
</Platform>
</DeployClass>
<DeployClass Name="AndroidClassesDexFile">
<Platform Name="Android">
<RemoteDir>classes</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="ProjectiOSDeviceInfoPList"/>
<DeployClass Name="iPad_Launch1024">
<Platform Name="iOSDevice">
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="ProjectiOSSimulatorInfoPList"/>
<DeployClass Name="Android_DefaultAppIcon">
<Platform Name="Android">
<RemoteDir>res\drawable</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="ProjectOSXResource">
<Platform Name="OSX32">
<RemoteDir>Contents\Resources</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="ProjectiOSDeviceResourceRules"/>
<DeployClass Name="iPad_Launch768">
<Platform Name="iOSDevice">
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Required="true" Name="ProjectOutput">
<Platform Name="iOSDevice">
<Operation>1</Operation>
</Platform>
<Platform Name="Android">
<RemoteDir>library\lib\armeabi-v7a</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="Win32">
<Operation>0</Operation>
</Platform>
<Platform Name="OSX32">
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="AndroidLibnativeArmeabiFile">
<Platform Name="Android">
<RemoteDir>library\lib\armeabi</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="File">
<Platform Name="iOSDevice">
<Operation>0</Operation>
</Platform>
<Platform Name="Android">
<Operation>0</Operation>
</Platform>
<Platform Name="Win32">
<Operation>0</Operation>
</Platform>
<Platform Name="OSX32">
<Operation>0</Operation>
</Platform>
<Platform Name="iOSSimulator">
<Operation>0</Operation>
</Platform>
</DeployClass>
<DeployClass Name="iPhone_Launch640x1136">
<Platform Name="iOSDevice">
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="Android_LauncherIcon36">
<Platform Name="Android">
<RemoteDir>res\drawable-ldpi</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="iPad_Launch1536">
<Platform Name="iOSDevice">
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="Android_LauncherIcon48">
<Platform Name="Android">
<RemoteDir>res\drawable-mdpi</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="Android_LauncherIcon72">
<Platform Name="Android">
<RemoteDir>res\drawable-hdpi</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="ProjectAndroidManifest">
<Platform Name="Android">
<Operation>1</Operation>
</Platform>
</DeployClass>
<ProjectRoot Platform="Android" Name="$(PROJECTNAME)"/>
<ProjectRoot Platform="iOSDevice" Name="$(PROJECTNAME).app"/>
<ProjectRoot Platform="Win32" Name="$(PROJECTNAME)"/>
<ProjectRoot Platform="OSX32" Name="$(PROJECTNAME)"/>
<ProjectRoot Platform="iOSSimulator" Name="$(PROJECTNAME).app"/>
<ProjectRoot Platform="Win64" Name="$(PROJECTNAME)"/>
</Deployment>
</BorlandProject>
<ProjectFileVersion>12</ProjectFileVersion>
</ProjectExtensions>
<Import Project="$(BDS)\Bin\CodeGear.Delphi.Targets" Condition="Exists('$(BDS)\Bin\CodeGear.Delphi.Targets')"/>
<Import Project="$(APPDATA)\Embarcadero\$(BDSAPPDATABASEDIR)\$(PRODUCTVERSION)\UserTools.proj" Condition="Exists('$(APPDATA)\Embarcadero\$(BDSAPPDATABASEDIR)\$(PRODUCTVERSION)\UserTools.proj')"/>
<Import Project="$(MSBuildProjectName).deployproj" Condition="Exists('$(MSBuildProjectName).deployproj')"/>
</Project>

View File

@ -1,48 +0,0 @@
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<ProjectGuid>{BD0EE7BD-ED70-4DCA-AA92-522F18635A55}</ProjectGuid>
</PropertyGroup>
<ItemGroup>
<Projects Include="OpenCV160.*.dproj">
<Dependencies/>
</Projects>
<Projects Include="dclOpenCV160.*.dproj">
<Dependencies/>
</Projects>
</ItemGroup>
<ProjectExtensions>
<Borland.Personality>Default.Personality.12</Borland.Personality>
<Borland.ProjectType/>
<BorlandProject>
<Default.Personality/>
</BorlandProject>
</ProjectExtensions>
<Target Name="OpenCV160">
<MSBuild Projects="OpenCV160.dproj"/>
</Target>
<Target Name="OpenCV160:Clean">
<MSBuild Projects="OpenCV160.dproj" Targets="Clean"/>
</Target>
<Target Name="OpenCV160:Make">
<MSBuild Projects="OpenCV160.dproj" Targets="Make"/>
</Target>
<Target Name="dclOpenCV160">
<MSBuild Projects="dclOpenCV160.dproj"/>
</Target>
<Target Name="dclOpenCV160:Clean">
<MSBuild Projects="dclOpenCV160.dproj" Targets="Clean"/>
</Target>
<Target Name="dclOpenCV160:Make">
<MSBuild Projects="dclOpenCV160.dproj" Targets="Make"/>
</Target>
<Target Name="Build">
<CallTarget Targets="OpenCV160;dclOpenCV160"/>
</Target>
<Target Name="Clean">
<CallTarget Targets="OpenCV160:Clean;dclOpenCV160:Clean"/>
</Target>
<Target Name="Make">
<CallTarget Targets="OpenCV160:Make;dclOpenCV160:Make"/>
</Target>
<Import Project="$(BDS)\Bin\CodeGear.Group.Targets" Condition="Exists('$(BDS)\Bin\CodeGear.Group.Targets')"/>
</Project>

View File

@ -37,7 +37,7 @@ requires
designide; designide;
contains contains
uOCVIOProperties in '..\uOCVIOProperties.pas', ocv.comp.IOProperties in '..\ocv.comp.IOProperties.pas',
uOCVRegister in '..\uOCVRegister.pas'; ocv.comp.Register in '..\ocv.comp.Register.pas';
end. end.

View File

@ -34,9 +34,10 @@ requires
vcl; vcl;
contains contains
uOCVImageOperation in '..\uOCVImageOperation.pas', ocv.comp.ImageOperation in '..\ocv.comp.ImageOperation.pas',
uOCVTypes in '..\uOCVTypes.pas', ocv.comp.VideoWriter in '..\ocv.comp.VideoWriter.pas',
uOCVSource in '..\uOCVSource.pas', ocv.comp.Types in '..\ocv.comp.Types.pas',
uOCVView in '..\uOCVView.pas'; ocv.comp.Source in '..\ocv.comp.Source.pas',
ocv.comp.View in '..\ocv.comp.View.pas',
ocv.comp.Proc in '..\ocv.comp.Proc.pas';
end. end.

View File

@ -1,599 +0,0 @@
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<ProjectGuid>{37486FE1-CC21-40FA-8006-F946D2DCCC3E}</ProjectGuid>
<MainSource>OpenCV170.dpk</MainSource>
<Base>True</Base>
<Config Condition="'$(Config)'==''">Release</Config>
<TargetedPlatforms>91</TargetedPlatforms>
<AppType>Package</AppType>
<FrameworkType>None</FrameworkType>
<ProjectVersion>15.1</ProjectVersion>
<Platform Condition="'$(Platform)'==''">Win32</Platform>
</PropertyGroup>
<PropertyGroup Condition="'$(Config)'=='Base' or '$(Base)'!=''">
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='Android' and '$(Base)'=='true') or '$(Base_Android)'!=''">
<Base_Android>true</Base_Android>
<CfgParent>Base</CfgParent>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='iOSDevice' and '$(Base)'=='true') or '$(Base_iOSDevice)'!=''">
<Base_iOSDevice>true</Base_iOSDevice>
<CfgParent>Base</CfgParent>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='iOSSimulator' and '$(Base)'=='true') or '$(Base_iOSSimulator)'!=''">
<Base_iOSSimulator>true</Base_iOSSimulator>
<CfgParent>Base</CfgParent>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='Win32' and '$(Base)'=='true') or '$(Base_Win32)'!=''">
<Base_Win32>true</Base_Win32>
<CfgParent>Base</CfgParent>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='Win64' and '$(Base)'=='true') or '$(Base_Win64)'!=''">
<Base_Win64>true</Base_Win64>
<CfgParent>Base</CfgParent>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="'$(Config)'=='Release' or '$(Cfg_1)'!=''">
<Cfg_1>true</Cfg_1>
<CfgParent>Base</CfgParent>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='Android' and '$(Cfg_1)'=='true') or '$(Cfg_1_Android)'!=''">
<Cfg_1_Android>true</Cfg_1_Android>
<CfgParent>Cfg_1</CfgParent>
<Cfg_1>true</Cfg_1>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='iOSDevice' and '$(Cfg_1)'=='true') or '$(Cfg_1_iOSDevice)'!=''">
<Cfg_1_iOSDevice>true</Cfg_1_iOSDevice>
<CfgParent>Cfg_1</CfgParent>
<Cfg_1>true</Cfg_1>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='iOSSimulator' and '$(Cfg_1)'=='true') or '$(Cfg_1_iOSSimulator)'!=''">
<Cfg_1_iOSSimulator>true</Cfg_1_iOSSimulator>
<CfgParent>Cfg_1</CfgParent>
<Cfg_1>true</Cfg_1>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='Win32' and '$(Cfg_1)'=='true') or '$(Cfg_1_Win32)'!=''">
<Cfg_1_Win32>true</Cfg_1_Win32>
<CfgParent>Cfg_1</CfgParent>
<Cfg_1>true</Cfg_1>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='Win64' and '$(Cfg_1)'=='true') or '$(Cfg_1_Win64)'!=''">
<Cfg_1_Win64>true</Cfg_1_Win64>
<CfgParent>Cfg_1</CfgParent>
<Cfg_1>true</Cfg_1>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="'$(Config)'=='Debug' or '$(Cfg_2)'!=''">
<Cfg_2>true</Cfg_2>
<CfgParent>Base</CfgParent>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='Android' and '$(Cfg_2)'=='true') or '$(Cfg_2_Android)'!=''">
<Cfg_2_Android>true</Cfg_2_Android>
<CfgParent>Cfg_2</CfgParent>
<Cfg_2>true</Cfg_2>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='iOSDevice' and '$(Cfg_2)'=='true') or '$(Cfg_2_iOSDevice)'!=''">
<Cfg_2_iOSDevice>true</Cfg_2_iOSDevice>
<CfgParent>Cfg_2</CfgParent>
<Cfg_2>true</Cfg_2>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='iOSSimulator' and '$(Cfg_2)'=='true') or '$(Cfg_2_iOSSimulator)'!=''">
<Cfg_2_iOSSimulator>true</Cfg_2_iOSSimulator>
<CfgParent>Cfg_2</CfgParent>
<Cfg_2>true</Cfg_2>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='Win32' and '$(Cfg_2)'=='true') or '$(Cfg_2_Win32)'!=''">
<Cfg_2_Win32>true</Cfg_2_Win32>
<CfgParent>Cfg_2</CfgParent>
<Cfg_2>true</Cfg_2>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='Win64' and '$(Cfg_2)'=='true') or '$(Cfg_2_Win64)'!=''">
<Cfg_2_Win64>true</Cfg_2_Win64>
<CfgParent>Cfg_2</CfgParent>
<Cfg_2>true</Cfg_2>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="'$(Base)'!=''">
<SanitizedProjectName>OpenCV170</SanitizedProjectName>
<DCC_OutputNeverBuildDcps>true</DCC_OutputNeverBuildDcps>
<RuntimeOnlyPackage>true</RuntimeOnlyPackage>
<DCC_ImageBase>00400000</DCC_ImageBase>
<DCC_Namespace>Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;System;Xml;Data;Datasnap;Web;Soap;Winapi;$(DCC_Namespace)</DCC_Namespace>
<GenDll>true</GenDll>
<DCC_N>false</DCC_N>
<DCC_Description>OpenCV Component</DCC_Description>
<DCC_F>false</DCC_F>
<DCC_K>false</DCC_K>
<DCC_DebugInformation>true</DCC_DebugInformation>
<GenPackage>true</GenPackage>
<VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=;CFBundleName=;CFBundleDisplayName=;UIDeviceFamily=;CFBundleIdentifier=;CFBundleVersion=;CFBundlePackageType=;CFBundleSignature=;CFBundleAllowMixedLocalizations=;UISupportedInterfaceOrientations=;CFBundleExecutable=;CFBundleResourceSpecification=;LSRequiresIPhoneOS=;CFBundleInfoDictionaryVersion=;CFBundleDevelopmentRegion=;package=;label=;versionCode=;versionName=;persistent=;restoreAnyVersion=;installLocation=;largeHeap=;theme=</VerInfo_Keys>
<DCC_S>false</DCC_S>
<DCC_E>false</DCC_E>
<VerInfo_Locale>1049</VerInfo_Locale>
</PropertyGroup>
<PropertyGroup Condition="'$(Base_Android)'!=''">
<BT_BuildType>Debug</BT_BuildType>
<VerInfo_Keys>package=com.embarcadero.$(MSBuildProjectName);label=$(MSBuildProjectName);versionCode=1;versionName=1.0.0;persistent=False;restoreAnyVersion=False;installLocation=preferExternal;largeHeap=False;theme=TitleBar;hardwareAccelerated=true</VerInfo_Keys>
</PropertyGroup>
<PropertyGroup Condition="'$(Base_iOSDevice)'!=''">
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
<VerInfo_UIDeviceFamily>iPhoneAndiPad</VerInfo_UIDeviceFamily>
<BT_BuildType>Debug</BT_BuildType>
<VerInfo_BundleId>$(MSBuildProjectName)</VerInfo_BundleId>
<VerInfo_Keys>CFBundleName=$(MSBuildProjectName);CFBundleDevelopmentRegion=en;CFBundleDisplayName=$(MSBuildProjectName);CFBundleIdentifier=$(MSBuildProjectName);CFBundleInfoDictionaryVersion=6.0;CFBundleVersion=1.0.0.0;CFBundlePackageType=APPL;CFBundleSignature=????;LSRequiresIPhoneOS=true;CFBundleAllowMixedLocalizations=YES;CFBundleExecutable=$(MSBuildProjectName);UIDeviceFamily=iPhone &amp; iPad;CFBundleResourceSpecification=ResourceRules.plist</VerInfo_Keys>
</PropertyGroup>
<PropertyGroup Condition="'$(Base_iOSSimulator)'!=''">
<VerInfo_UIDeviceFamily>iPhoneAndiPad</VerInfo_UIDeviceFamily>
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
<VerInfo_Keys>CFBundleName=$(MSBuildProjectName);CFBundleDevelopmentRegion=en;CFBundleDisplayName=$(MSBuildProjectName);CFBundleIdentifier=$(MSBuildProjectName);CFBundleInfoDictionaryVersion=6.0;CFBundleVersion=1.0.0.0;CFBundlePackageType=APPL;CFBundleSignature=????;LSRequiresIPhoneOS=true;CFBundleAllowMixedLocalizations=YES;CFBundleExecutable=$(MSBuildProjectName);UIDeviceFamily=iPhone &amp; iPad;CFBundleResourceSpecification=ResourceRules.plist</VerInfo_Keys>
</PropertyGroup>
<PropertyGroup Condition="'$(Base_Win32)'!=''">
<DCC_UsePackage>vcl;$(DCC_UsePackage)</DCC_UsePackage>
<VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
<DCC_Namespace>System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)</DCC_Namespace>
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
<VerInfo_Locale>1033</VerInfo_Locale>
</PropertyGroup>
<PropertyGroup Condition="'$(Base_Win64)'!=''">
<DCC_UsePackage>vcl;$(DCC_UsePackage)</DCC_UsePackage>
<VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
<DCC_Namespace>System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;$(DCC_Namespace)</DCC_Namespace>
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
<VerInfo_Locale>1033</VerInfo_Locale>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_1)'!=''">
<DCC_LocalDebugSymbols>false</DCC_LocalDebugSymbols>
<DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
<DCC_Define>RELEASE;$(DCC_Define)</DCC_Define>
<DCC_DebugInformation>0</DCC_DebugInformation>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_1_Android)'!=''">
<DCC_DcuOutput>.\$(Platform)\$(Config)</DCC_DcuOutput>
<DCC_UnitSearchPath>..;$(DCC_UnitSearchPath)</DCC_UnitSearchPath>
<VerInfo_Keys>package=com.embarcadero.$(MSBuildProjectName);label=$(MSBuildProjectName);versionCode=1;versionName=1.0.0;persistent=False;restoreAnyVersion=False;installLocation=preferExternal;largeHeap=False;theme=TitleBar;hardwareAccelerated=true</VerInfo_Keys>
<VerInfo_Build>1</VerInfo_Build>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_1_iOSDevice)'!=''">
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
<VerInfo_UIDeviceFamily>iPhoneAndiPad</VerInfo_UIDeviceFamily>
<DCC_UnitSearchPath>..;$(DCC_UnitSearchPath)</DCC_UnitSearchPath>
<VerInfo_BundleId>$(MSBuildProjectName)</VerInfo_BundleId>
<VerInfo_Keys>CFBundleName=$(MSBuildProjectName);CFBundleDevelopmentRegion=en;CFBundleDisplayName=$(MSBuildProjectName);CFBundleIdentifier=$(MSBuildProjectName);CFBundleInfoDictionaryVersion=6.0;CFBundleVersion=1.0.0.0;CFBundlePackageType=APPL;CFBundleSignature=????;LSRequiresIPhoneOS=true;CFBundleAllowMixedLocalizations=YES;CFBundleExecutable=$(MSBuildProjectName);UIDeviceFamily=iPhone &amp; iPad;CFBundleResourceSpecification=ResourceRules.plist</VerInfo_Keys>
<DCC_DcuOutput>.\$(Platform)\$(Config)</DCC_DcuOutput>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_1_iOSSimulator)'!=''">
<VerInfo_UIDeviceFamily>iPhoneAndiPad</VerInfo_UIDeviceFamily>
<DCC_UnitSearchPath>..;$(DCC_UnitSearchPath)</DCC_UnitSearchPath>
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
<VerInfo_Keys>CFBundleName=$(MSBuildProjectName);CFBundleDevelopmentRegion=en;CFBundleDisplayName=$(MSBuildProjectName);CFBundleIdentifier=$(MSBuildProjectName);CFBundleInfoDictionaryVersion=6.0;CFBundleVersion=1.0.0.0;CFBundlePackageType=APPL;CFBundleSignature=????;LSRequiresIPhoneOS=true;CFBundleAllowMixedLocalizations=YES;CFBundleExecutable=$(MSBuildProjectName);UIDeviceFamily=iPhone &amp; iPad;CFBundleResourceSpecification=ResourceRules.plist</VerInfo_Keys>
<DCC_DcuOutput>.\$(Platform)\$(Config)</DCC_DcuOutput>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_1_Win32)'!=''">
<DCC_DcuOutput>.\$(Platform)\$(Config)</DCC_DcuOutput>
<DCC_UnitSearchPath>..;$(DCC_UnitSearchPath)</DCC_UnitSearchPath>
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
<VerInfo_Locale>1033</VerInfo_Locale>
<VerInfo_Keys>CompanyName=;FileDescription=OpenCV Component;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=OpenCV Component;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_1_Win64)'!=''">
<DCC_DcuOutput>.\$(Platform)\$(Config)</DCC_DcuOutput>
<DCC_UnitSearchPath>..;$(DCC_UnitSearchPath)</DCC_UnitSearchPath>
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
<VerInfo_Locale>1033</VerInfo_Locale>
<VerInfo_Keys>CompanyName=;FileDescription=OpenCV Component;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=OpenCV Component;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_2)'!=''">
<DCC_GenerateStackFrames>true</DCC_GenerateStackFrames>
<DCC_Optimize>false</DCC_Optimize>
<DCC_Define>DEBUG;$(DCC_Define)</DCC_Define>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_2_Android)'!=''">
<DCC_DcuOutput>.\$(Platform)\$(Config)</DCC_DcuOutput>
<DCC_UnitSearchPath>..;$(DCC_UnitSearchPath)</DCC_UnitSearchPath>
<VerInfo_Keys>package=com.embarcadero.$(MSBuildProjectName);label=$(MSBuildProjectName);versionCode=1;versionName=1.0.0;persistent=False;restoreAnyVersion=False;installLocation=preferExternal;largeHeap=False;theme=TitleBar;hardwareAccelerated=true</VerInfo_Keys>
<VerInfo_Build>1</VerInfo_Build>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_2_iOSDevice)'!=''">
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
<VerInfo_UIDeviceFamily>iPhoneAndiPad</VerInfo_UIDeviceFamily>
<DCC_UnitSearchPath>..;$(DCC_UnitSearchPath)</DCC_UnitSearchPath>
<VerInfo_BundleId>$(MSBuildProjectName)</VerInfo_BundleId>
<VerInfo_Keys>CFBundleName=$(MSBuildProjectName);CFBundleDevelopmentRegion=en;CFBundleDisplayName=$(MSBuildProjectName);CFBundleIdentifier=$(MSBuildProjectName);CFBundleInfoDictionaryVersion=6.0;CFBundleVersion=1.0.0.0;CFBundlePackageType=APPL;CFBundleSignature=????;LSRequiresIPhoneOS=true;CFBundleAllowMixedLocalizations=YES;CFBundleExecutable=$(MSBuildProjectName);UIDeviceFamily=iPhone &amp; iPad;CFBundleResourceSpecification=ResourceRules.plist</VerInfo_Keys>
<DCC_DcuOutput>.\$(Platform)\$(Config)</DCC_DcuOutput>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_2_iOSSimulator)'!=''">
<VerInfo_UIDeviceFamily>iPhoneAndiPad</VerInfo_UIDeviceFamily>
<DCC_UnitSearchPath>..;$(DCC_UnitSearchPath)</DCC_UnitSearchPath>
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
<VerInfo_Keys>CFBundleName=$(MSBuildProjectName);CFBundleDevelopmentRegion=en;CFBundleDisplayName=$(MSBuildProjectName);CFBundleIdentifier=$(MSBuildProjectName);CFBundleInfoDictionaryVersion=6.0;CFBundleVersion=1.0.0.0;CFBundlePackageType=APPL;CFBundleSignature=????;LSRequiresIPhoneOS=true;CFBundleAllowMixedLocalizations=YES;CFBundleExecutable=$(MSBuildProjectName);UIDeviceFamily=iPhone &amp; iPad;CFBundleResourceSpecification=ResourceRules.plist</VerInfo_Keys>
<DCC_DcuOutput>.\$(Platform)\$(Config)</DCC_DcuOutput>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_2_Win32)'!=''">
<DCC_DcuOutput>.\$(Platform)\$(Config)</DCC_DcuOutput>
<DCC_UnitSearchPath>..;$(DCC_UnitSearchPath)</DCC_UnitSearchPath>
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
<VerInfo_Locale>1033</VerInfo_Locale>
<VerInfo_Keys>CompanyName=;FileDescription=OpenCV Component;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=OpenCV Component;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_2_Win64)'!=''">
<DCC_DcuOutput>.\$(Platform)\$(Config)</DCC_DcuOutput>
<DCC_UnitSearchPath>..;$(DCC_UnitSearchPath)</DCC_UnitSearchPath>
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
<VerInfo_Locale>1033</VerInfo_Locale>
<VerInfo_Keys>CompanyName=;FileDescription=OpenCV Component;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=OpenCV Component;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
</PropertyGroup>
<ItemGroup>
<DelphiCompile Include="$(MainSource)">
<MainSource>MainSource</MainSource>
</DelphiCompile>
<DCCReference Include="rtl.dcp"/>
<DCCReference Include="vcl.dcp"/>
<DCCReference Include="..\uOCVImageOperation.pas"/>
<DCCReference Include="..\uOCVTypes.pas"/>
<DCCReference Include="..\uOCVSource.pas"/>
<DCCReference Include="..\uOCVView.pas"/>
<BuildConfiguration Include="Debug">
<Key>Cfg_2</Key>
<CfgParent>Base</CfgParent>
</BuildConfiguration>
<BuildConfiguration Include="Base">
<Key>Base</Key>
</BuildConfiguration>
<BuildConfiguration Include="Release">
<Key>Cfg_1</Key>
<CfgParent>Base</CfgParent>
</BuildConfiguration>
</ItemGroup>
<ProjectExtensions>
<Borland.Personality>Delphi.Personality.12</Borland.Personality>
<Borland.ProjectType>Package</Borland.ProjectType>
<BorlandProject>
<Delphi.Personality>
<Source>
<Source Name="MainSource">OpenCV170.dpk</Source>
</Source>
<VersionInfo>
<VersionInfo Name="IncludeVerInfo">True</VersionInfo>
<VersionInfo Name="AutoIncBuild">False</VersionInfo>
<VersionInfo Name="MajorVer">1</VersionInfo>
<VersionInfo Name="MinorVer">0</VersionInfo>
<VersionInfo Name="Release">0</VersionInfo>
<VersionInfo Name="Build">0</VersionInfo>
<VersionInfo Name="Debug">False</VersionInfo>
<VersionInfo Name="PreRelease">False</VersionInfo>
<VersionInfo Name="Special">False</VersionInfo>
<VersionInfo Name="Private">False</VersionInfo>
<VersionInfo Name="DLL">False</VersionInfo>
<VersionInfo Name="Locale">1049</VersionInfo>
<VersionInfo Name="CodePage">1251</VersionInfo>
</VersionInfo>
<VersionInfoKeys>
<VersionInfoKeys Name="CompanyName"/>
<VersionInfoKeys Name="FileDescription"/>
<VersionInfoKeys Name="FileVersion">1.0.0.0</VersionInfoKeys>
<VersionInfoKeys Name="InternalName"/>
<VersionInfoKeys Name="LegalCopyright"/>
<VersionInfoKeys Name="LegalTrademarks"/>
<VersionInfoKeys Name="OriginalFilename"/>
<VersionInfoKeys Name="ProductName"/>
<VersionInfoKeys Name="ProductVersion">1.0.0.0</VersionInfoKeys>
<VersionInfoKeys Name="Comments"/>
<VersionInfoKeys Name="CFBundleName"/>
<VersionInfoKeys Name="CFBundleDisplayName"/>
<VersionInfoKeys Name="UIDeviceFamily"/>
<VersionInfoKeys Name="CFBundleIdentifier"/>
<VersionInfoKeys Name="CFBundleVersion"/>
<VersionInfoKeys Name="CFBundlePackageType"/>
<VersionInfoKeys Name="CFBundleSignature"/>
<VersionInfoKeys Name="CFBundleAllowMixedLocalizations"/>
<VersionInfoKeys Name="UISupportedInterfaceOrientations"/>
<VersionInfoKeys Name="CFBundleExecutable"/>
<VersionInfoKeys Name="CFBundleResourceSpecification"/>
<VersionInfoKeys Name="LSRequiresIPhoneOS"/>
<VersionInfoKeys Name="CFBundleInfoDictionaryVersion"/>
<VersionInfoKeys Name="CFBundleDevelopmentRegion"/>
<VersionInfoKeys Name="package"/>
<VersionInfoKeys Name="label"/>
<VersionInfoKeys Name="versionCode"/>
<VersionInfoKeys Name="versionName"/>
<VersionInfoKeys Name="persistent"/>
<VersionInfoKeys Name="restoreAnyVersion"/>
<VersionInfoKeys Name="installLocation"/>
<VersionInfoKeys Name="largeHeap"/>
<VersionInfoKeys Name="theme"/>
</VersionInfoKeys>
<Excluded_Packages>
<Excluded_Packages Name="$(BDSBIN)\dcloffice2k170.bpl">Microsoft Office 2000 Sample Automation Server Wrapper Components</Excluded_Packages>
<Excluded_Packages Name="$(BDSBIN)\dclofficexp170.bpl">Microsoft Office XP Sample Automation Server Wrapper Components</Excluded_Packages>
</Excluded_Packages>
</Delphi.Personality>
<Platforms>
<Platform value="Android">True</Platform>
<Platform value="iOSDevice">True</Platform>
<Platform value="iOSSimulator" ActiveMobileDevice="iPhone">True</Platform>
<Platform value="Win32">True</Platform>
<Platform value="Win64">True</Platform>
</Platforms>
<Deployment>
<DeployFile LocalName="$(BDS)\Redist\osx32\libcgunwind.1.0.dylib" Class="DependencyModule">
<Platform Name="OSX32">
<Overwrite>true</Overwrite>
</Platform>
<Platform Name="iOSSimulator">
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployClass Required="true" Name="DependencyPackage">
<Platform Name="iOSDevice">
<Operation>1</Operation>
<Extensions>.dylib</Extensions>
</Platform>
<Platform Name="Win32">
<Operation>0</Operation>
<Extensions>.bpl</Extensions>
</Platform>
<Platform Name="OSX32">
<Operation>1</Operation>
<Extensions>.dylib</Extensions>
</Platform>
<Platform Name="iOSSimulator">
<Operation>1</Operation>
<Extensions>.dylib</Extensions>
</Platform>
</DeployClass>
<DeployClass Name="DependencyModule">
<Platform Name="OSX32">
<Operation>1</Operation>
<Extensions>.dylib</Extensions>
</Platform>
<Platform Name="Win32">
<Operation>0</Operation>
<Extensions>.dll;.bpl</Extensions>
</Platform>
</DeployClass>
<DeployClass Name="iPad_Launch2048">
<Platform Name="iOSDevice">
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="ProjectOSXInfoPList"/>
<DeployClass Name="ProjectiOSDeviceDebug">
<Platform Name="iOSDevice">
<RemoteDir>..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="AndroidLibnativeMipsFile">
<Platform Name="Android">
<RemoteDir>library\lib\mips</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="AndroidLibnativeX86File">
<Platform Name="Android">
<RemoteDir>library\lib\x86</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="ProjectiOSResource">
<Platform Name="iOSDevice">
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="ProjectOSXEntitlements"/>
<DeployClass Name="AndroidGDBServer">
<Platform Name="Android">
<RemoteDir>library\lib\armeabi-v7a</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="iPhone_Launch640">
<Platform Name="iOSDevice">
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="Android_LauncherIcon96">
<Platform Name="Android">
<RemoteDir>res\drawable-xhdpi</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="iPhone_Launch320">
<Platform Name="iOSDevice">
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="Android_LauncherIcon144">
<Platform Name="Android">
<RemoteDir>res\drawable-xxhdpi</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="DebugSymbols">
<Platform Name="OSX32">
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<Operation>1</Operation>
</Platform>
<Platform Name="Win32">
<Operation>0</Operation>
</Platform>
</DeployClass>
<DeployClass Name="DependencyFramework">
<Platform Name="OSX32">
<Operation>1</Operation>
<Extensions>.framework</Extensions>
</Platform>
<Platform Name="Win32">
<Operation>0</Operation>
</Platform>
</DeployClass>
<DeployClass Name="ProjectiOSEntitlements"/>
<DeployClass Name="AdditionalDebugSymbols">
<Platform Name="OSX32">
<Operation>1</Operation>
</Platform>
<Platform Name="Win32">
<RemoteDir>Contents\MacOS</RemoteDir>
<Operation>0</Operation>
</Platform>
</DeployClass>
<DeployClass Name="AndroidClassesDexFile">
<Platform Name="Android">
<RemoteDir>classes</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="ProjectiOSDeviceInfoPList"/>
<DeployClass Name="iPad_Launch1024">
<Platform Name="iOSDevice">
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="ProjectiOSSimulatorInfoPList"/>
<DeployClass Name="Android_DefaultAppIcon">
<Platform Name="Android">
<RemoteDir>res\drawable</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="ProjectOSXResource">
<Platform Name="OSX32">
<RemoteDir>Contents\Resources</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="ProjectiOSDeviceResourceRules"/>
<DeployClass Name="iPad_Launch768">
<Platform Name="iOSDevice">
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Required="true" Name="ProjectOutput">
<Platform Name="iOSDevice">
<Operation>1</Operation>
</Platform>
<Platform Name="Android">
<RemoteDir>library\lib\armeabi-v7a</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="Win32">
<Operation>0</Operation>
</Platform>
<Platform Name="OSX32">
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="AndroidLibnativeArmeabiFile">
<Platform Name="Android">
<RemoteDir>library\lib\armeabi</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="File">
<Platform Name="iOSDevice">
<Operation>0</Operation>
</Platform>
<Platform Name="Android">
<Operation>0</Operation>
</Platform>
<Platform Name="Win32">
<Operation>0</Operation>
</Platform>
<Platform Name="OSX32">
<Operation>0</Operation>
</Platform>
<Platform Name="iOSSimulator">
<Operation>0</Operation>
</Platform>
</DeployClass>
<DeployClass Name="iPhone_Launch640x1136">
<Platform Name="iOSDevice">
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="Android_LauncherIcon36">
<Platform Name="Android">
<RemoteDir>res\drawable-ldpi</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="iPad_Launch1536">
<Platform Name="iOSDevice">
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="Android_LauncherIcon48">
<Platform Name="Android">
<RemoteDir>res\drawable-mdpi</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="Android_LauncherIcon72">
<Platform Name="Android">
<RemoteDir>res\drawable-hdpi</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="ProjectAndroidManifest">
<Platform Name="Android">
<Operation>1</Operation>
</Platform>
</DeployClass>
<ProjectRoot Platform="Android" Name="$(PROJECTNAME)"/>
<ProjectRoot Platform="iOSDevice" Name="$(PROJECTNAME).app"/>
<ProjectRoot Platform="Win32" Name="$(PROJECTNAME)"/>
<ProjectRoot Platform="OSX32" Name="$(PROJECTNAME)"/>
<ProjectRoot Platform="iOSSimulator" Name="$(PROJECTNAME).app"/>
<ProjectRoot Platform="Win64" Name="$(PROJECTNAME)"/>
</Deployment>
</BorlandProject>
<ProjectFileVersion>12</ProjectFileVersion>
</ProjectExtensions>
<Import Project="$(BDS)\Bin\CodeGear.Delphi.Targets" Condition="Exists('$(BDS)\Bin\CodeGear.Delphi.Targets')"/>
<Import Project="$(APPDATA)\Embarcadero\$(BDSAPPDATABASEDIR)\$(PRODUCTVERSION)\UserTools.proj" Condition="Exists('$(APPDATA)\Embarcadero\$(BDSAPPDATABASEDIR)\$(PRODUCTVERSION)\UserTools.proj')"/>
<Import Project="$(MSBuildProjectName).deployproj" Condition="Exists('$(MSBuildProjectName).deployproj')"/>
</Project>

View File

@ -1,48 +0,0 @@
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<ProjectGuid>{BD0EE7BD-ED70-4DCA-AA92-522F18635A55}</ProjectGuid>
</PropertyGroup>
<ItemGroup>
<Projects Include="OpenCV170.*.dproj">
<Dependencies/>
</Projects>
<Projects Include="dclOpenCV170.*.dproj">
<Dependencies/>
</Projects>
</ItemGroup>
<ProjectExtensions>
<Borland.Personality>Default.Personality.12</Borland.Personality>
<Borland.ProjectType/>
<BorlandProject>
<Default.Personality/>
</BorlandProject>
</ProjectExtensions>
<Target Name="OpenCV170">
<MSBuild Projects="OpenCV170.dproj"/>
</Target>
<Target Name="OpenCV170:Clean">
<MSBuild Projects="OpenCV170.dproj" Targets="Clean"/>
</Target>
<Target Name="OpenCV170:Make">
<MSBuild Projects="OpenCV170.dproj" Targets="Make"/>
</Target>
<Target Name="dclOpenCV170">
<MSBuild Projects="dclOpenCV170.dproj"/>
</Target>
<Target Name="dclOpenCV170:Clean">
<MSBuild Projects="dclOpenCV170.dproj" Targets="Clean"/>
</Target>
<Target Name="dclOpenCV170:Make">
<MSBuild Projects="dclOpenCV170.dproj" Targets="Make"/>
</Target>
<Target Name="Build">
<CallTarget Targets="OpenCV170;dclOpenCV170"/>
</Target>
<Target Name="Clean">
<CallTarget Targets="OpenCV170:Clean;dclOpenCV170:Clean"/>
</Target>
<Target Name="Make">
<CallTarget Targets="OpenCV170:Make;dclOpenCV170:Make"/>
</Target>
<Import Project="$(BDS)\Bin\CodeGear.Group.Targets" Condition="Exists('$(BDS)\Bin\CodeGear.Group.Targets')"/>
</Project>

View File

@ -37,7 +37,7 @@ requires
designide; designide;
contains contains
uOCVIOProperties in '..\uOCVIOProperties.pas', ocv.comp.IOProperties in '..\ocv.comp.IOProperties.pas',
uOCVRegister in '..\uOCVRegister.pas'; ocv.comp.Register in '..\ocv.comp.Register.pas';
end. end.

View File

@ -34,10 +34,11 @@ requires
vcl; vcl;
contains contains
uOCVImageOperation in '..\uOCVImageOperation.pas', ocv.comp.ImageOperation in '..\ocv.comp.ImageOperation.pas',
uOCVVideoWriter in '..\uOCVVideoWriter.pas', ocv.comp.VideoWriter in '..\ocv.comp.VideoWriter.pas',
uOCVTypes in '..\uOCVTypes.pas', ocv.comp.Types in '..\ocv.comp.Types.pas',
uOCVSource in '..\uOCVSource.pas', ocv.comp.Source in '..\ocv.comp.Source.pas',
uOCVView in '..\uOCVView.pas'; ocv.comp.View in '..\ocv.comp.View.pas',
ocv.comp.Proc in '..\ocv.comp.Proc.pas';
end. end.

View File

@ -1,599 +0,0 @@
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<ProjectGuid>{37486FE1-CC21-40FA-8006-F946D2DCCC3E}</ProjectGuid>
<MainSource>OpenCV180.dpk</MainSource>
<Base>True</Base>
<Config Condition="'$(Config)'==''">Release</Config>
<TargetedPlatforms>91</TargetedPlatforms>
<AppType>Package</AppType>
<FrameworkType>None</FrameworkType>
<ProjectVersion>15.2</ProjectVersion>
<Platform Condition="'$(Platform)'==''">Win32</Platform>
</PropertyGroup>
<PropertyGroup Condition="'$(Config)'=='Base' or '$(Base)'!=''">
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='Android' and '$(Base)'=='true') or '$(Base_Android)'!=''">
<Base_Android>true</Base_Android>
<CfgParent>Base</CfgParent>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='iOSDevice' and '$(Base)'=='true') or '$(Base_iOSDevice)'!=''">
<Base_iOSDevice>true</Base_iOSDevice>
<CfgParent>Base</CfgParent>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='iOSSimulator' and '$(Base)'=='true') or '$(Base_iOSSimulator)'!=''">
<Base_iOSSimulator>true</Base_iOSSimulator>
<CfgParent>Base</CfgParent>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='Win32' and '$(Base)'=='true') or '$(Base_Win32)'!=''">
<Base_Win32>true</Base_Win32>
<CfgParent>Base</CfgParent>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='Win64' and '$(Base)'=='true') or '$(Base_Win64)'!=''">
<Base_Win64>true</Base_Win64>
<CfgParent>Base</CfgParent>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="'$(Config)'=='Release' or '$(Cfg_1)'!=''">
<Cfg_1>true</Cfg_1>
<CfgParent>Base</CfgParent>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='Android' and '$(Cfg_1)'=='true') or '$(Cfg_1_Android)'!=''">
<Cfg_1_Android>true</Cfg_1_Android>
<CfgParent>Cfg_1</CfgParent>
<Cfg_1>true</Cfg_1>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='iOSDevice' and '$(Cfg_1)'=='true') or '$(Cfg_1_iOSDevice)'!=''">
<Cfg_1_iOSDevice>true</Cfg_1_iOSDevice>
<CfgParent>Cfg_1</CfgParent>
<Cfg_1>true</Cfg_1>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='iOSSimulator' and '$(Cfg_1)'=='true') or '$(Cfg_1_iOSSimulator)'!=''">
<Cfg_1_iOSSimulator>true</Cfg_1_iOSSimulator>
<CfgParent>Cfg_1</CfgParent>
<Cfg_1>true</Cfg_1>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='Win32' and '$(Cfg_1)'=='true') or '$(Cfg_1_Win32)'!=''">
<Cfg_1_Win32>true</Cfg_1_Win32>
<CfgParent>Cfg_1</CfgParent>
<Cfg_1>true</Cfg_1>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='Win64' and '$(Cfg_1)'=='true') or '$(Cfg_1_Win64)'!=''">
<Cfg_1_Win64>true</Cfg_1_Win64>
<CfgParent>Cfg_1</CfgParent>
<Cfg_1>true</Cfg_1>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="'$(Config)'=='Debug' or '$(Cfg_2)'!=''">
<Cfg_2>true</Cfg_2>
<CfgParent>Base</CfgParent>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='Android' and '$(Cfg_2)'=='true') or '$(Cfg_2_Android)'!=''">
<Cfg_2_Android>true</Cfg_2_Android>
<CfgParent>Cfg_2</CfgParent>
<Cfg_2>true</Cfg_2>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='iOSDevice' and '$(Cfg_2)'=='true') or '$(Cfg_2_iOSDevice)'!=''">
<Cfg_2_iOSDevice>true</Cfg_2_iOSDevice>
<CfgParent>Cfg_2</CfgParent>
<Cfg_2>true</Cfg_2>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='iOSSimulator' and '$(Cfg_2)'=='true') or '$(Cfg_2_iOSSimulator)'!=''">
<Cfg_2_iOSSimulator>true</Cfg_2_iOSSimulator>
<CfgParent>Cfg_2</CfgParent>
<Cfg_2>true</Cfg_2>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='Win32' and '$(Cfg_2)'=='true') or '$(Cfg_2_Win32)'!=''">
<Cfg_2_Win32>true</Cfg_2_Win32>
<CfgParent>Cfg_2</CfgParent>
<Cfg_2>true</Cfg_2>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='Win64' and '$(Cfg_2)'=='true') or '$(Cfg_2_Win64)'!=''">
<Cfg_2_Win64>true</Cfg_2_Win64>
<CfgParent>Cfg_2</CfgParent>
<Cfg_2>true</Cfg_2>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="'$(Base)'!=''">
<SanitizedProjectName>OpenCV180</SanitizedProjectName>
<DCC_OutputNeverBuildDcps>true</DCC_OutputNeverBuildDcps>
<RuntimeOnlyPackage>true</RuntimeOnlyPackage>
<DCC_ImageBase>00400000</DCC_ImageBase>
<DCC_Namespace>Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;System;Xml;Data;Datasnap;Web;Soap;Winapi;$(DCC_Namespace)</DCC_Namespace>
<GenDll>true</GenDll>
<DCC_N>false</DCC_N>
<DCC_Description>OpenCV Component</DCC_Description>
<DCC_F>false</DCC_F>
<DCC_K>false</DCC_K>
<DCC_DebugInformation>true</DCC_DebugInformation>
<GenPackage>true</GenPackage>
<VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=;CFBundleName=;CFBundleDisplayName=;UIDeviceFamily=;CFBundleIdentifier=;CFBundleVersion=;CFBundlePackageType=;CFBundleSignature=;CFBundleAllowMixedLocalizations=;UISupportedInterfaceOrientations=;CFBundleExecutable=;CFBundleResourceSpecification=;LSRequiresIPhoneOS=;CFBundleInfoDictionaryVersion=;CFBundleDevelopmentRegion=;package=;label=;versionCode=;versionName=;persistent=;restoreAnyVersion=;installLocation=;largeHeap=;theme=</VerInfo_Keys>
<DCC_S>false</DCC_S>
<DCC_E>false</DCC_E>
<VerInfo_Locale>1049</VerInfo_Locale>
</PropertyGroup>
<PropertyGroup Condition="'$(Base_Android)'!=''">
<BT_BuildType>Debug</BT_BuildType>
<VerInfo_Keys>package=com.embarcadero.$(MSBuildProjectName);label=$(MSBuildProjectName);versionCode=1;versionName=1.0.0;persistent=False;restoreAnyVersion=False;installLocation=preferExternal;largeHeap=False;theme=TitleBar;hardwareAccelerated=true</VerInfo_Keys>
</PropertyGroup>
<PropertyGroup Condition="'$(Base_iOSDevice)'!=''">
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
<VerInfo_UIDeviceFamily>iPhoneAndiPad</VerInfo_UIDeviceFamily>
<BT_BuildType>Debug</BT_BuildType>
<VerInfo_BundleId>$(MSBuildProjectName)</VerInfo_BundleId>
<VerInfo_Keys>CFBundleName=$(MSBuildProjectName);CFBundleDevelopmentRegion=en;CFBundleDisplayName=$(MSBuildProjectName);CFBundleIdentifier=$(MSBuildProjectName);CFBundleInfoDictionaryVersion=6.0;CFBundleVersion=1.0.0.0;CFBundlePackageType=APPL;CFBundleSignature=????;LSRequiresIPhoneOS=true;CFBundleAllowMixedLocalizations=YES;CFBundleExecutable=$(MSBuildProjectName);UIDeviceFamily=iPhone &amp; iPad;CFBundleResourceSpecification=ResourceRules.plist</VerInfo_Keys>
</PropertyGroup>
<PropertyGroup Condition="'$(Base_iOSSimulator)'!=''">
<VerInfo_UIDeviceFamily>iPhoneAndiPad</VerInfo_UIDeviceFamily>
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
<VerInfo_Keys>CFBundleName=$(MSBuildProjectName);CFBundleDevelopmentRegion=en;CFBundleDisplayName=$(MSBuildProjectName);CFBundleIdentifier=$(MSBuildProjectName);CFBundleInfoDictionaryVersion=6.0;CFBundleVersion=1.0.0.0;CFBundlePackageType=APPL;CFBundleSignature=????;LSRequiresIPhoneOS=true;CFBundleAllowMixedLocalizations=YES;CFBundleExecutable=$(MSBuildProjectName);UIDeviceFamily=iPhone &amp; iPad;CFBundleResourceSpecification=ResourceRules.plist</VerInfo_Keys>
</PropertyGroup>
<PropertyGroup Condition="'$(Base_Win32)'!=''">
<DCC_UsePackage>vcl;$(DCC_UsePackage)</DCC_UsePackage>
<VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
<DCC_Namespace>System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)</DCC_Namespace>
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
<VerInfo_Locale>1033</VerInfo_Locale>
</PropertyGroup>
<PropertyGroup Condition="'$(Base_Win64)'!=''">
<DCC_UsePackage>vcl;$(DCC_UsePackage)</DCC_UsePackage>
<VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
<DCC_Namespace>System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;$(DCC_Namespace)</DCC_Namespace>
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
<VerInfo_Locale>1033</VerInfo_Locale>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_1)'!=''">
<DCC_LocalDebugSymbols>false</DCC_LocalDebugSymbols>
<DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
<DCC_Define>RELEASE;$(DCC_Define)</DCC_Define>
<DCC_DebugInformation>0</DCC_DebugInformation>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_1_Android)'!=''">
<DCC_DcuOutput>.\$(Platform)\$(Config)</DCC_DcuOutput>
<DCC_UnitSearchPath>..;$(DCC_UnitSearchPath)</DCC_UnitSearchPath>
<VerInfo_Keys>package=com.embarcadero.$(MSBuildProjectName);label=$(MSBuildProjectName);versionCode=1;versionName=1.0.0;persistent=False;restoreAnyVersion=False;installLocation=preferExternal;largeHeap=False;theme=TitleBar;hardwareAccelerated=true</VerInfo_Keys>
<VerInfo_Build>1</VerInfo_Build>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_1_iOSDevice)'!=''">
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
<VerInfo_UIDeviceFamily>iPhoneAndiPad</VerInfo_UIDeviceFamily>
<DCC_UnitSearchPath>..;$(DCC_UnitSearchPath)</DCC_UnitSearchPath>
<VerInfo_BundleId>$(MSBuildProjectName)</VerInfo_BundleId>
<VerInfo_Keys>CFBundleName=$(MSBuildProjectName);CFBundleDevelopmentRegion=en;CFBundleDisplayName=$(MSBuildProjectName);CFBundleIdentifier=$(MSBuildProjectName);CFBundleInfoDictionaryVersion=6.0;CFBundleVersion=1.0.0.0;CFBundlePackageType=APPL;CFBundleSignature=????;LSRequiresIPhoneOS=true;CFBundleAllowMixedLocalizations=YES;CFBundleExecutable=$(MSBuildProjectName);UIDeviceFamily=iPhone &amp; iPad;CFBundleResourceSpecification=ResourceRules.plist</VerInfo_Keys>
<DCC_DcuOutput>.\$(Platform)\$(Config)</DCC_DcuOutput>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_1_iOSSimulator)'!=''">
<VerInfo_UIDeviceFamily>iPhoneAndiPad</VerInfo_UIDeviceFamily>
<DCC_UnitSearchPath>..;$(DCC_UnitSearchPath)</DCC_UnitSearchPath>
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
<VerInfo_Keys>CFBundleName=$(MSBuildProjectName);CFBundleDevelopmentRegion=en;CFBundleDisplayName=$(MSBuildProjectName);CFBundleIdentifier=$(MSBuildProjectName);CFBundleInfoDictionaryVersion=6.0;CFBundleVersion=1.0.0.0;CFBundlePackageType=APPL;CFBundleSignature=????;LSRequiresIPhoneOS=true;CFBundleAllowMixedLocalizations=YES;CFBundleExecutable=$(MSBuildProjectName);UIDeviceFamily=iPhone &amp; iPad;CFBundleResourceSpecification=ResourceRules.plist</VerInfo_Keys>
<DCC_DcuOutput>.\$(Platform)\$(Config)</DCC_DcuOutput>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_1_Win32)'!=''">
<DCC_DcuOutput>.\$(Platform)\$(Config)</DCC_DcuOutput>
<DCC_UnitSearchPath>..;$(DCC_UnitSearchPath)</DCC_UnitSearchPath>
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
<VerInfo_Locale>1033</VerInfo_Locale>
<VerInfo_Keys>CompanyName=;FileDescription=OpenCV Component;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=OpenCV Component;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_1_Win64)'!=''">
<DCC_DcuOutput>.\$(Platform)\$(Config)</DCC_DcuOutput>
<DCC_UnitSearchPath>..;$(DCC_UnitSearchPath)</DCC_UnitSearchPath>
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
<VerInfo_Locale>1033</VerInfo_Locale>
<VerInfo_Keys>CompanyName=;FileDescription=OpenCV Component;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=OpenCV Component;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_2)'!=''">
<DCC_GenerateStackFrames>true</DCC_GenerateStackFrames>
<DCC_Optimize>false</DCC_Optimize>
<DCC_Define>DEBUG;$(DCC_Define)</DCC_Define>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_2_Android)'!=''">
<DCC_DcuOutput>.\$(Platform)\$(Config)</DCC_DcuOutput>
<DCC_UnitSearchPath>..;$(DCC_UnitSearchPath)</DCC_UnitSearchPath>
<VerInfo_Keys>package=com.embarcadero.$(MSBuildProjectName);label=$(MSBuildProjectName);versionCode=1;versionName=1.0.0;persistent=False;restoreAnyVersion=False;installLocation=preferExternal;largeHeap=False;theme=TitleBar;hardwareAccelerated=true</VerInfo_Keys>
<VerInfo_Build>1</VerInfo_Build>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_2_iOSDevice)'!=''">
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
<VerInfo_UIDeviceFamily>iPhoneAndiPad</VerInfo_UIDeviceFamily>
<DCC_UnitSearchPath>..;$(DCC_UnitSearchPath)</DCC_UnitSearchPath>
<VerInfo_BundleId>$(MSBuildProjectName)</VerInfo_BundleId>
<VerInfo_Keys>CFBundleName=$(MSBuildProjectName);CFBundleDevelopmentRegion=en;CFBundleDisplayName=$(MSBuildProjectName);CFBundleIdentifier=$(MSBuildProjectName);CFBundleInfoDictionaryVersion=6.0;CFBundleVersion=1.0.0.0;CFBundlePackageType=APPL;CFBundleSignature=????;LSRequiresIPhoneOS=true;CFBundleAllowMixedLocalizations=YES;CFBundleExecutable=$(MSBuildProjectName);UIDeviceFamily=iPhone &amp; iPad;CFBundleResourceSpecification=ResourceRules.plist</VerInfo_Keys>
<DCC_DcuOutput>.\$(Platform)\$(Config)</DCC_DcuOutput>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_2_iOSSimulator)'!=''">
<VerInfo_UIDeviceFamily>iPhoneAndiPad</VerInfo_UIDeviceFamily>
<DCC_UnitSearchPath>..;$(DCC_UnitSearchPath)</DCC_UnitSearchPath>
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
<VerInfo_Keys>CFBundleName=$(MSBuildProjectName);CFBundleDevelopmentRegion=en;CFBundleDisplayName=$(MSBuildProjectName);CFBundleIdentifier=$(MSBuildProjectName);CFBundleInfoDictionaryVersion=6.0;CFBundleVersion=1.0.0.0;CFBundlePackageType=APPL;CFBundleSignature=????;LSRequiresIPhoneOS=true;CFBundleAllowMixedLocalizations=YES;CFBundleExecutable=$(MSBuildProjectName);UIDeviceFamily=iPhone &amp; iPad;CFBundleResourceSpecification=ResourceRules.plist</VerInfo_Keys>
<DCC_DcuOutput>.\$(Platform)\$(Config)</DCC_DcuOutput>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_2_Win32)'!=''">
<DCC_DcuOutput>.\$(Platform)\$(Config)</DCC_DcuOutput>
<DCC_UnitSearchPath>..;$(DCC_UnitSearchPath)</DCC_UnitSearchPath>
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
<VerInfo_Locale>1033</VerInfo_Locale>
<VerInfo_Keys>CompanyName=;FileDescription=OpenCV Component;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=OpenCV Component;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_2_Win64)'!=''">
<DCC_DcuOutput>.\$(Platform)\$(Config)</DCC_DcuOutput>
<DCC_UnitSearchPath>..;$(DCC_UnitSearchPath)</DCC_UnitSearchPath>
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
<VerInfo_Locale>1033</VerInfo_Locale>
<VerInfo_Keys>CompanyName=;FileDescription=OpenCV Component;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=OpenCV Component;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
</PropertyGroup>
<ItemGroup>
<DelphiCompile Include="$(MainSource)">
<MainSource>MainSource</MainSource>
</DelphiCompile>
<DCCReference Include="rtl.dcp"/>
<DCCReference Include="vcl.dcp"/>
<DCCReference Include="..\uOCVImageOperation.pas"/>
<DCCReference Include="..\uOCVTypes.pas"/>
<DCCReference Include="..\uOCVSource.pas"/>
<DCCReference Include="..\uOCVView.pas"/>
<BuildConfiguration Include="Debug">
<Key>Cfg_2</Key>
<CfgParent>Base</CfgParent>
</BuildConfiguration>
<BuildConfiguration Include="Base">
<Key>Base</Key>
</BuildConfiguration>
<BuildConfiguration Include="Release">
<Key>Cfg_1</Key>
<CfgParent>Base</CfgParent>
</BuildConfiguration>
</ItemGroup>
<ProjectExtensions>
<Borland.Personality>Delphi.Personality.12</Borland.Personality>
<Borland.ProjectType>Package</Borland.ProjectType>
<BorlandProject>
<Delphi.Personality>
<Source>
<Source Name="MainSource">OpenCV180.dpk</Source>
</Source>
<VersionInfo>
<VersionInfo Name="IncludeVerInfo">True</VersionInfo>
<VersionInfo Name="AutoIncBuild">False</VersionInfo>
<VersionInfo Name="MajorVer">1</VersionInfo>
<VersionInfo Name="MinorVer">0</VersionInfo>
<VersionInfo Name="Release">0</VersionInfo>
<VersionInfo Name="Build">0</VersionInfo>
<VersionInfo Name="Debug">False</VersionInfo>
<VersionInfo Name="PreRelease">False</VersionInfo>
<VersionInfo Name="Special">False</VersionInfo>
<VersionInfo Name="Private">False</VersionInfo>
<VersionInfo Name="DLL">False</VersionInfo>
<VersionInfo Name="Locale">1049</VersionInfo>
<VersionInfo Name="CodePage">1251</VersionInfo>
</VersionInfo>
<VersionInfoKeys>
<VersionInfoKeys Name="CompanyName"/>
<VersionInfoKeys Name="FileDescription"/>
<VersionInfoKeys Name="FileVersion">1.0.0.0</VersionInfoKeys>
<VersionInfoKeys Name="InternalName"/>
<VersionInfoKeys Name="LegalCopyright"/>
<VersionInfoKeys Name="LegalTrademarks"/>
<VersionInfoKeys Name="OriginalFilename"/>
<VersionInfoKeys Name="ProductName"/>
<VersionInfoKeys Name="ProductVersion">1.0.0.0</VersionInfoKeys>
<VersionInfoKeys Name="Comments"/>
<VersionInfoKeys Name="CFBundleName"/>
<VersionInfoKeys Name="CFBundleDisplayName"/>
<VersionInfoKeys Name="UIDeviceFamily"/>
<VersionInfoKeys Name="CFBundleIdentifier"/>
<VersionInfoKeys Name="CFBundleVersion"/>
<VersionInfoKeys Name="CFBundlePackageType"/>
<VersionInfoKeys Name="CFBundleSignature"/>
<VersionInfoKeys Name="CFBundleAllowMixedLocalizations"/>
<VersionInfoKeys Name="UISupportedInterfaceOrientations"/>
<VersionInfoKeys Name="CFBundleExecutable"/>
<VersionInfoKeys Name="CFBundleResourceSpecification"/>
<VersionInfoKeys Name="LSRequiresIPhoneOS"/>
<VersionInfoKeys Name="CFBundleInfoDictionaryVersion"/>
<VersionInfoKeys Name="CFBundleDevelopmentRegion"/>
<VersionInfoKeys Name="package"/>
<VersionInfoKeys Name="label"/>
<VersionInfoKeys Name="versionCode"/>
<VersionInfoKeys Name="versionName"/>
<VersionInfoKeys Name="persistent"/>
<VersionInfoKeys Name="restoreAnyVersion"/>
<VersionInfoKeys Name="installLocation"/>
<VersionInfoKeys Name="largeHeap"/>
<VersionInfoKeys Name="theme"/>
</VersionInfoKeys>
<Excluded_Packages>
<Excluded_Packages Name="$(BDSBIN)\dcloffice2k180.bpl">Microsoft Office 2000 Sample Automation Server Wrapper Components</Excluded_Packages>
<Excluded_Packages Name="$(BDSBIN)\dclofficexp180.bpl">Microsoft Office XP Sample Automation Server Wrapper Components</Excluded_Packages>
</Excluded_Packages>
</Delphi.Personality>
<Platforms>
<Platform value="Android">True</Platform>
<Platform value="iOSDevice">True</Platform>
<Platform value="iOSSimulator" ActiveMobileDevice="iPhone">True</Platform>
<Platform value="Win32">True</Platform>
<Platform value="Win64">True</Platform>
</Platforms>
<Deployment>
<DeployFile LocalName="$(BDS)\Redist\osx32\libcgunwind.1.0.dylib" Class="DependencyModule">
<Platform Name="OSX32">
<Overwrite>true</Overwrite>
</Platform>
<Platform Name="iOSSimulator">
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployClass Required="true" Name="DependencyPackage">
<Platform Name="iOSDevice">
<Operation>1</Operation>
<Extensions>.dylib</Extensions>
</Platform>
<Platform Name="Win32">
<Operation>0</Operation>
<Extensions>.bpl</Extensions>
</Platform>
<Platform Name="OSX32">
<Operation>1</Operation>
<Extensions>.dylib</Extensions>
</Platform>
<Platform Name="iOSSimulator">
<Operation>1</Operation>
<Extensions>.dylib</Extensions>
</Platform>
</DeployClass>
<DeployClass Name="DependencyModule">
<Platform Name="OSX32">
<Operation>1</Operation>
<Extensions>.dylib</Extensions>
</Platform>
<Platform Name="Win32">
<Operation>0</Operation>
<Extensions>.dll;.bpl</Extensions>
</Platform>
</DeployClass>
<DeployClass Name="iPad_Launch2048">
<Platform Name="iOSDevice">
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="ProjectOSXInfoPList"/>
<DeployClass Name="ProjectiOSDeviceDebug">
<Platform Name="iOSDevice">
<RemoteDir>..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="AndroidLibnativeMipsFile">
<Platform Name="Android">
<RemoteDir>library\lib\mips</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="AndroidLibnativeX86File">
<Platform Name="Android">
<RemoteDir>library\lib\x86</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="ProjectiOSResource">
<Platform Name="iOSDevice">
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="ProjectOSXEntitlements"/>
<DeployClass Name="AndroidGDBServer">
<Platform Name="Android">
<RemoteDir>library\lib\armeabi-v7a</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="iPhone_Launch640">
<Platform Name="iOSDevice">
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="Android_LauncherIcon96">
<Platform Name="Android">
<RemoteDir>res\drawable-xhdpi</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="iPhone_Launch320">
<Platform Name="iOSDevice">
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="Android_LauncherIcon144">
<Platform Name="Android">
<RemoteDir>res\drawable-xxhdpi</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="DebugSymbols">
<Platform Name="OSX32">
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<Operation>1</Operation>
</Platform>
<Platform Name="Win32">
<Operation>0</Operation>
</Platform>
</DeployClass>
<DeployClass Name="DependencyFramework">
<Platform Name="OSX32">
<Operation>1</Operation>
<Extensions>.framework</Extensions>
</Platform>
<Platform Name="Win32">
<Operation>0</Operation>
</Platform>
</DeployClass>
<DeployClass Name="ProjectiOSEntitlements"/>
<DeployClass Name="AdditionalDebugSymbols">
<Platform Name="OSX32">
<Operation>1</Operation>
</Platform>
<Platform Name="Win32">
<RemoteDir>Contents\MacOS</RemoteDir>
<Operation>0</Operation>
</Platform>
</DeployClass>
<DeployClass Name="AndroidClassesDexFile">
<Platform Name="Android">
<RemoteDir>classes</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="ProjectiOSDeviceInfoPList"/>
<DeployClass Name="iPad_Launch1024">
<Platform Name="iOSDevice">
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="ProjectiOSSimulatorInfoPList"/>
<DeployClass Name="Android_DefaultAppIcon">
<Platform Name="Android">
<RemoteDir>res\drawable</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="ProjectOSXResource">
<Platform Name="OSX32">
<RemoteDir>Contents\Resources</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="ProjectiOSDeviceResourceRules"/>
<DeployClass Name="iPad_Launch768">
<Platform Name="iOSDevice">
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Required="true" Name="ProjectOutput">
<Platform Name="iOSDevice">
<Operation>1</Operation>
</Platform>
<Platform Name="Android">
<RemoteDir>library\lib\armeabi-v7a</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="Win32">
<Operation>0</Operation>
</Platform>
<Platform Name="OSX32">
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="AndroidLibnativeArmeabiFile">
<Platform Name="Android">
<RemoteDir>library\lib\armeabi</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="File">
<Platform Name="iOSDevice">
<Operation>0</Operation>
</Platform>
<Platform Name="Android">
<Operation>0</Operation>
</Platform>
<Platform Name="Win32">
<Operation>0</Operation>
</Platform>
<Platform Name="OSX32">
<Operation>0</Operation>
</Platform>
<Platform Name="iOSSimulator">
<Operation>0</Operation>
</Platform>
</DeployClass>
<DeployClass Name="iPhone_Launch640x1136">
<Platform Name="iOSDevice">
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="Android_LauncherIcon36">
<Platform Name="Android">
<RemoteDir>res\drawable-ldpi</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="iPad_Launch1536">
<Platform Name="iOSDevice">
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="Android_LauncherIcon48">
<Platform Name="Android">
<RemoteDir>res\drawable-mdpi</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="Android_LauncherIcon72">
<Platform Name="Android">
<RemoteDir>res\drawable-hdpi</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="ProjectAndroidManifest">
<Platform Name="Android">
<Operation>1</Operation>
</Platform>
</DeployClass>
<ProjectRoot Platform="Android" Name="$(PROJECTNAME)"/>
<ProjectRoot Platform="iOSDevice" Name="$(PROJECTNAME).app"/>
<ProjectRoot Platform="Win32" Name="$(PROJECTNAME)"/>
<ProjectRoot Platform="OSX32" Name="$(PROJECTNAME)"/>
<ProjectRoot Platform="iOSSimulator" Name="$(PROJECTNAME).app"/>
<ProjectRoot Platform="Win64" Name="$(PROJECTNAME)"/>
</Deployment>
</BorlandProject>
<ProjectFileVersion>12</ProjectFileVersion>
</ProjectExtensions>
<Import Project="$(BDS)\Bin\CodeGear.Delphi.Targets" Condition="Exists('$(BDS)\Bin\CodeGear.Delphi.Targets')"/>
<Import Project="$(APPDATA)\Embarcadero\$(BDSAPPDATABASEDIR)\$(PRODUCTVERSION)\UserTools.proj" Condition="Exists('$(APPDATA)\Embarcadero\$(BDSAPPDATABASEDIR)\$(PRODUCTVERSION)\UserTools.proj')"/>
<Import Project="$(MSBuildProjectName).deployproj" Condition="Exists('$(MSBuildProjectName).deployproj')"/>
</Project>

View File

@ -1,48 +0,0 @@
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<ProjectGuid>{BD0EE7BD-ED70-4DCA-AA92-522F18635A55}</ProjectGuid>
</PropertyGroup>
<ItemGroup>
<Projects Include="OpenCV180.*.dproj">
<Dependencies/>
</Projects>
<Projects Include="dclOpenCV180.*.dproj">
<Dependencies/>
</Projects>
</ItemGroup>
<ProjectExtensions>
<Borland.Personality>Default.Personality.12</Borland.Personality>
<Borland.ProjectType/>
<BorlandProject>
<Default.Personality/>
</BorlandProject>
</ProjectExtensions>
<Target Name="OpenCV180">
<MSBuild Projects="OpenCV180.dproj"/>
</Target>
<Target Name="OpenCV180:Clean">
<MSBuild Projects="OpenCV180.dproj" Targets="Clean"/>
</Target>
<Target Name="OpenCV180:Make">
<MSBuild Projects="OpenCV180.dproj" Targets="Make"/>
</Target>
<Target Name="dclOpenCV180">
<MSBuild Projects="dclOpenCV180.dproj"/>
</Target>
<Target Name="dclOpenCV180:Clean">
<MSBuild Projects="dclOpenCV180.dproj" Targets="Clean"/>
</Target>
<Target Name="dclOpenCV180:Make">
<MSBuild Projects="dclOpenCV180.dproj" Targets="Make"/>
</Target>
<Target Name="Build">
<CallTarget Targets="OpenCV180;dclOpenCV180"/>
</Target>
<Target Name="Clean">
<CallTarget Targets="OpenCV180:Clean;dclOpenCV180:Clean"/>
</Target>
<Target Name="Make">
<CallTarget Targets="OpenCV180:Make;dclOpenCV180:Make"/>
</Target>
<Import Project="$(BDS)\Bin\CodeGear.Group.Targets" Condition="Exists('$(BDS)\Bin\CodeGear.Group.Targets')"/>
</Project>

View File

@ -37,7 +37,7 @@ requires
designide; designide;
contains contains
uOCVIOProperties in '..\uOCVIOProperties.pas', ocv.comp.IOProperties in '..\ocv.comp.IOProperties.pas',
uOCVRegister in '..\uOCVRegister.pas'; ocv.comp.Register in '..\ocv.comp.Register.pas';
end. end.

View File

@ -1,6 +1,7 @@
package OpenCV190; package OpenCV190;
{$R *.res} {$R *.res}
{$R *.otares}
{$IFDEF IMPLICITBUILDING This IFDEF should not be used by users} {$IFDEF IMPLICITBUILDING This IFDEF should not be used by users}
{$ALIGN 8} {$ALIGN 8}
{$ASSERTIONS ON} {$ASSERTIONS ON}
@ -9,21 +10,21 @@ package OpenCV190;
{$EXTENDEDSYNTAX ON} {$EXTENDEDSYNTAX ON}
{$IMPORTEDDATA ON} {$IMPORTEDDATA ON}
{$IOCHECKS ON} {$IOCHECKS ON}
{$LOCALSYMBOLS OFF} {$LOCALSYMBOLS ON}
{$LONGSTRINGS ON} {$LONGSTRINGS ON}
{$OPENSTRINGS ON} {$OPENSTRINGS ON}
{$OPTIMIZATION ON} {$OPTIMIZATION OFF}
{$OVERFLOWCHECKS OFF} {$OVERFLOWCHECKS OFF}
{$RANGECHECKS OFF} {$RANGECHECKS OFF}
{$REFERENCEINFO OFF} {$REFERENCEINFO ON}
{$SAFEDIVIDE OFF} {$SAFEDIVIDE OFF}
{$STACKFRAMES OFF} {$STACKFRAMES ON}
{$TYPEDADDRESS OFF} {$TYPEDADDRESS OFF}
{$VARSTRINGCHECKS ON} {$VARSTRINGCHECKS ON}
{$WRITEABLECONST OFF} {$WRITEABLECONST OFF}
{$MINENUMSIZE 1} {$MINENUMSIZE 1}
{$IMAGEBASE $400000} {$IMAGEBASE $400000}
{$DEFINE RELEASE} {$DEFINE DEBUG}
{$ENDIF IMPLICITBUILDING} {$ENDIF IMPLICITBUILDING}
{$DESCRIPTION 'OpenCV Component'} {$DESCRIPTION 'OpenCV Component'}
{$RUNONLY} {$RUNONLY}
@ -34,10 +35,11 @@ requires
vcl; vcl;
contains contains
uOCVImageOperation in '..\uOCVImageOperation.pas', ocv.comp.ImageOperation in '..\ocv.comp.ImageOperation.pas',
uOCVVideoWriter in '..\uOCVVideoWriter.pas', ocv.comp.VideoWriter in '..\ocv.comp.VideoWriter.pas',
uOCVTypes in '..\uOCVTypes.pas', ocv.comp.Types in '..\ocv.comp.Types.pas',
uOCVSource in '..\uOCVSource.pas', ocv.comp.Source in '..\ocv.comp.Source.pas',
uOCVView in '..\uOCVView.pas'; ocv.comp.View in '..\ocv.comp.View.pas',
ocv.comp.Proc in '..\ocv.comp.Proc.pas';
end. end.

View File

@ -1,599 +0,0 @@
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<ProjectGuid>{37486FE1-CC21-40FA-8006-F946D2DCCC3E}</ProjectGuid>
<MainSource>OpenCV190.dpk</MainSource>
<Base>True</Base>
<Config Condition="'$(Config)'==''">Release</Config>
<TargetedPlatforms>91</TargetedPlatforms>
<AppType>Package</AppType>
<FrameworkType>None</FrameworkType>
<ProjectVersion>15.3</ProjectVersion>
<Platform Condition="'$(Platform)'==''">Win32</Platform>
</PropertyGroup>
<PropertyGroup Condition="'$(Config)'=='Base' or '$(Base)'!=''">
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='Android' and '$(Base)'=='true') or '$(Base_Android)'!=''">
<Base_Android>true</Base_Android>
<CfgParent>Base</CfgParent>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='iOSDevice' and '$(Base)'=='true') or '$(Base_iOSDevice)'!=''">
<Base_iOSDevice>true</Base_iOSDevice>
<CfgParent>Base</CfgParent>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='iOSSimulator' and '$(Base)'=='true') or '$(Base_iOSSimulator)'!=''">
<Base_iOSSimulator>true</Base_iOSSimulator>
<CfgParent>Base</CfgParent>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='Win32' and '$(Base)'=='true') or '$(Base_Win32)'!=''">
<Base_Win32>true</Base_Win32>
<CfgParent>Base</CfgParent>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='Win64' and '$(Base)'=='true') or '$(Base_Win64)'!=''">
<Base_Win64>true</Base_Win64>
<CfgParent>Base</CfgParent>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="'$(Config)'=='Release' or '$(Cfg_1)'!=''">
<Cfg_1>true</Cfg_1>
<CfgParent>Base</CfgParent>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='Android' and '$(Cfg_1)'=='true') or '$(Cfg_1_Android)'!=''">
<Cfg_1_Android>true</Cfg_1_Android>
<CfgParent>Cfg_1</CfgParent>
<Cfg_1>true</Cfg_1>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='iOSDevice' and '$(Cfg_1)'=='true') or '$(Cfg_1_iOSDevice)'!=''">
<Cfg_1_iOSDevice>true</Cfg_1_iOSDevice>
<CfgParent>Cfg_1</CfgParent>
<Cfg_1>true</Cfg_1>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='iOSSimulator' and '$(Cfg_1)'=='true') or '$(Cfg_1_iOSSimulator)'!=''">
<Cfg_1_iOSSimulator>true</Cfg_1_iOSSimulator>
<CfgParent>Cfg_1</CfgParent>
<Cfg_1>true</Cfg_1>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='Win32' and '$(Cfg_1)'=='true') or '$(Cfg_1_Win32)'!=''">
<Cfg_1_Win32>true</Cfg_1_Win32>
<CfgParent>Cfg_1</CfgParent>
<Cfg_1>true</Cfg_1>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='Win64' and '$(Cfg_1)'=='true') or '$(Cfg_1_Win64)'!=''">
<Cfg_1_Win64>true</Cfg_1_Win64>
<CfgParent>Cfg_1</CfgParent>
<Cfg_1>true</Cfg_1>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="'$(Config)'=='Debug' or '$(Cfg_2)'!=''">
<Cfg_2>true</Cfg_2>
<CfgParent>Base</CfgParent>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='Android' and '$(Cfg_2)'=='true') or '$(Cfg_2_Android)'!=''">
<Cfg_2_Android>true</Cfg_2_Android>
<CfgParent>Cfg_2</CfgParent>
<Cfg_2>true</Cfg_2>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='iOSDevice' and '$(Cfg_2)'=='true') or '$(Cfg_2_iOSDevice)'!=''">
<Cfg_2_iOSDevice>true</Cfg_2_iOSDevice>
<CfgParent>Cfg_2</CfgParent>
<Cfg_2>true</Cfg_2>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='iOSSimulator' and '$(Cfg_2)'=='true') or '$(Cfg_2_iOSSimulator)'!=''">
<Cfg_2_iOSSimulator>true</Cfg_2_iOSSimulator>
<CfgParent>Cfg_2</CfgParent>
<Cfg_2>true</Cfg_2>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='Win32' and '$(Cfg_2)'=='true') or '$(Cfg_2_Win32)'!=''">
<Cfg_2_Win32>true</Cfg_2_Win32>
<CfgParent>Cfg_2</CfgParent>
<Cfg_2>true</Cfg_2>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='Win64' and '$(Cfg_2)'=='true') or '$(Cfg_2_Win64)'!=''">
<Cfg_2_Win64>true</Cfg_2_Win64>
<CfgParent>Cfg_2</CfgParent>
<Cfg_2>true</Cfg_2>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="'$(Base)'!=''">
<SanitizedProjectName>OpenCV190</SanitizedProjectName>
<DCC_OutputNeverBuildDcps>true</DCC_OutputNeverBuildDcps>
<RuntimeOnlyPackage>true</RuntimeOnlyPackage>
<DCC_ImageBase>00400000</DCC_ImageBase>
<DCC_Namespace>Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;System;Xml;Data;Datasnap;Web;Soap;Winapi;$(DCC_Namespace)</DCC_Namespace>
<GenDll>true</GenDll>
<DCC_N>false</DCC_N>
<DCC_Description>OpenCV Component</DCC_Description>
<DCC_F>false</DCC_F>
<DCC_K>false</DCC_K>
<DCC_DebugInformation>true</DCC_DebugInformation>
<GenPackage>true</GenPackage>
<VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=;CFBundleName=;CFBundleDisplayName=;UIDeviceFamily=;CFBundleIdentifier=;CFBundleVersion=;CFBundlePackageType=;CFBundleSignature=;CFBundleAllowMixedLocalizations=;UISupportedInterfaceOrientations=;CFBundleExecutable=;CFBundleResourceSpecification=;LSRequiresIPhoneOS=;CFBundleInfoDictionaryVersion=;CFBundleDevelopmentRegion=;package=;label=;versionCode=;versionName=;persistent=;restoreAnyVersion=;installLocation=;largeHeap=;theme=</VerInfo_Keys>
<DCC_S>false</DCC_S>
<DCC_E>false</DCC_E>
<VerInfo_Locale>1049</VerInfo_Locale>
</PropertyGroup>
<PropertyGroup Condition="'$(Base_Android)'!=''">
<BT_BuildType>Debug</BT_BuildType>
<VerInfo_Keys>package=com.embarcadero.$(MSBuildProjectName);label=$(MSBuildProjectName);versionCode=1;versionName=1.0.0;persistent=False;restoreAnyVersion=False;installLocation=preferExternal;largeHeap=False;theme=TitleBar;hardwareAccelerated=true</VerInfo_Keys>
</PropertyGroup>
<PropertyGroup Condition="'$(Base_iOSDevice)'!=''">
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
<VerInfo_UIDeviceFamily>iPhoneAndiPad</VerInfo_UIDeviceFamily>
<BT_BuildType>Debug</BT_BuildType>
<VerInfo_BundleId>$(MSBuildProjectName)</VerInfo_BundleId>
<VerInfo_Keys>CFBundleName=$(MSBuildProjectName);CFBundleDevelopmentRegion=en;CFBundleDisplayName=$(MSBuildProjectName);CFBundleIdentifier=$(MSBuildProjectName);CFBundleInfoDictionaryVersion=6.0;CFBundleVersion=1.0.0.0;CFBundlePackageType=APPL;CFBundleSignature=????;LSRequiresIPhoneOS=true;CFBundleAllowMixedLocalizations=YES;CFBundleExecutable=$(MSBuildProjectName);UIDeviceFamily=iPhone &amp; iPad;CFBundleResourceSpecification=ResourceRules.plist</VerInfo_Keys>
</PropertyGroup>
<PropertyGroup Condition="'$(Base_iOSSimulator)'!=''">
<VerInfo_UIDeviceFamily>iPhoneAndiPad</VerInfo_UIDeviceFamily>
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
<VerInfo_Keys>CFBundleName=$(MSBuildProjectName);CFBundleDevelopmentRegion=en;CFBundleDisplayName=$(MSBuildProjectName);CFBundleIdentifier=$(MSBuildProjectName);CFBundleInfoDictionaryVersion=6.0;CFBundleVersion=1.0.0.0;CFBundlePackageType=APPL;CFBundleSignature=????;LSRequiresIPhoneOS=true;CFBundleAllowMixedLocalizations=YES;CFBundleExecutable=$(MSBuildProjectName);UIDeviceFamily=iPhone &amp; iPad;CFBundleResourceSpecification=ResourceRules.plist</VerInfo_Keys>
</PropertyGroup>
<PropertyGroup Condition="'$(Base_Win32)'!=''">
<DCC_UsePackage>vcl;$(DCC_UsePackage)</DCC_UsePackage>
<VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
<DCC_Namespace>System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)</DCC_Namespace>
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
<VerInfo_Locale>1033</VerInfo_Locale>
</PropertyGroup>
<PropertyGroup Condition="'$(Base_Win64)'!=''">
<DCC_UsePackage>vcl;$(DCC_UsePackage)</DCC_UsePackage>
<VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
<DCC_Namespace>System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;$(DCC_Namespace)</DCC_Namespace>
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
<VerInfo_Locale>1033</VerInfo_Locale>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_1)'!=''">
<DCC_LocalDebugSymbols>false</DCC_LocalDebugSymbols>
<DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
<DCC_Define>RELEASE;$(DCC_Define)</DCC_Define>
<DCC_DebugInformation>0</DCC_DebugInformation>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_1_Android)'!=''">
<DCC_DcuOutput>.\$(Platform)\$(Config)</DCC_DcuOutput>
<DCC_UnitSearchPath>..;$(DCC_UnitSearchPath)</DCC_UnitSearchPath>
<VerInfo_Keys>package=com.embarcadero.$(MSBuildProjectName);label=$(MSBuildProjectName);versionCode=1;versionName=1.0.0;persistent=False;restoreAnyVersion=False;installLocation=preferExternal;largeHeap=False;theme=TitleBar;hardwareAccelerated=true</VerInfo_Keys>
<VerInfo_Build>1</VerInfo_Build>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_1_iOSDevice)'!=''">
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
<VerInfo_UIDeviceFamily>iPhoneAndiPad</VerInfo_UIDeviceFamily>
<DCC_UnitSearchPath>..;$(DCC_UnitSearchPath)</DCC_UnitSearchPath>
<VerInfo_BundleId>$(MSBuildProjectName)</VerInfo_BundleId>
<VerInfo_Keys>CFBundleName=$(MSBuildProjectName);CFBundleDevelopmentRegion=en;CFBundleDisplayName=$(MSBuildProjectName);CFBundleIdentifier=$(MSBuildProjectName);CFBundleInfoDictionaryVersion=6.0;CFBundleVersion=1.0.0.0;CFBundlePackageType=APPL;CFBundleSignature=????;LSRequiresIPhoneOS=true;CFBundleAllowMixedLocalizations=YES;CFBundleExecutable=$(MSBuildProjectName);UIDeviceFamily=iPhone &amp; iPad;CFBundleResourceSpecification=ResourceRules.plist</VerInfo_Keys>
<DCC_DcuOutput>.\$(Platform)\$(Config)</DCC_DcuOutput>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_1_iOSSimulator)'!=''">
<VerInfo_UIDeviceFamily>iPhoneAndiPad</VerInfo_UIDeviceFamily>
<DCC_UnitSearchPath>..;$(DCC_UnitSearchPath)</DCC_UnitSearchPath>
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
<VerInfo_Keys>CFBundleName=$(MSBuildProjectName);CFBundleDevelopmentRegion=en;CFBundleDisplayName=$(MSBuildProjectName);CFBundleIdentifier=$(MSBuildProjectName);CFBundleInfoDictionaryVersion=6.0;CFBundleVersion=1.0.0.0;CFBundlePackageType=APPL;CFBundleSignature=????;LSRequiresIPhoneOS=true;CFBundleAllowMixedLocalizations=YES;CFBundleExecutable=$(MSBuildProjectName);UIDeviceFamily=iPhone &amp; iPad;CFBundleResourceSpecification=ResourceRules.plist</VerInfo_Keys>
<DCC_DcuOutput>.\$(Platform)\$(Config)</DCC_DcuOutput>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_1_Win32)'!=''">
<DCC_DcuOutput>.\$(Platform)\$(Config)</DCC_DcuOutput>
<DCC_UnitSearchPath>..;$(DCC_UnitSearchPath)</DCC_UnitSearchPath>
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
<VerInfo_Locale>1033</VerInfo_Locale>
<VerInfo_Keys>CompanyName=;FileDescription=OpenCV Component;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=OpenCV Component;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_1_Win64)'!=''">
<DCC_DcuOutput>.\$(Platform)\$(Config)</DCC_DcuOutput>
<DCC_UnitSearchPath>..;$(DCC_UnitSearchPath)</DCC_UnitSearchPath>
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
<VerInfo_Locale>1033</VerInfo_Locale>
<VerInfo_Keys>CompanyName=;FileDescription=OpenCV Component;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=OpenCV Component;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_2)'!=''">
<DCC_GenerateStackFrames>true</DCC_GenerateStackFrames>
<DCC_Optimize>false</DCC_Optimize>
<DCC_Define>DEBUG;$(DCC_Define)</DCC_Define>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_2_Android)'!=''">
<DCC_DcuOutput>.\$(Platform)\$(Config)</DCC_DcuOutput>
<DCC_UnitSearchPath>..;$(DCC_UnitSearchPath)</DCC_UnitSearchPath>
<VerInfo_Keys>package=com.embarcadero.$(MSBuildProjectName);label=$(MSBuildProjectName);versionCode=1;versionName=1.0.0;persistent=False;restoreAnyVersion=False;installLocation=preferExternal;largeHeap=False;theme=TitleBar;hardwareAccelerated=true</VerInfo_Keys>
<VerInfo_Build>1</VerInfo_Build>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_2_iOSDevice)'!=''">
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
<VerInfo_UIDeviceFamily>iPhoneAndiPad</VerInfo_UIDeviceFamily>
<DCC_UnitSearchPath>..;$(DCC_UnitSearchPath)</DCC_UnitSearchPath>
<VerInfo_BundleId>$(MSBuildProjectName)</VerInfo_BundleId>
<VerInfo_Keys>CFBundleName=$(MSBuildProjectName);CFBundleDevelopmentRegion=en;CFBundleDisplayName=$(MSBuildProjectName);CFBundleIdentifier=$(MSBuildProjectName);CFBundleInfoDictionaryVersion=6.0;CFBundleVersion=1.0.0.0;CFBundlePackageType=APPL;CFBundleSignature=????;LSRequiresIPhoneOS=true;CFBundleAllowMixedLocalizations=YES;CFBundleExecutable=$(MSBuildProjectName);UIDeviceFamily=iPhone &amp; iPad;CFBundleResourceSpecification=ResourceRules.plist</VerInfo_Keys>
<DCC_DcuOutput>.\$(Platform)\$(Config)</DCC_DcuOutput>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_2_iOSSimulator)'!=''">
<VerInfo_UIDeviceFamily>iPhoneAndiPad</VerInfo_UIDeviceFamily>
<DCC_UnitSearchPath>..;$(DCC_UnitSearchPath)</DCC_UnitSearchPath>
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
<VerInfo_Keys>CFBundleName=$(MSBuildProjectName);CFBundleDevelopmentRegion=en;CFBundleDisplayName=$(MSBuildProjectName);CFBundleIdentifier=$(MSBuildProjectName);CFBundleInfoDictionaryVersion=6.0;CFBundleVersion=1.0.0.0;CFBundlePackageType=APPL;CFBundleSignature=????;LSRequiresIPhoneOS=true;CFBundleAllowMixedLocalizations=YES;CFBundleExecutable=$(MSBuildProjectName);UIDeviceFamily=iPhone &amp; iPad;CFBundleResourceSpecification=ResourceRules.plist</VerInfo_Keys>
<DCC_DcuOutput>.\$(Platform)\$(Config)</DCC_DcuOutput>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_2_Win32)'!=''">
<DCC_DcuOutput>.\$(Platform)\$(Config)</DCC_DcuOutput>
<DCC_UnitSearchPath>..;$(DCC_UnitSearchPath)</DCC_UnitSearchPath>
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
<VerInfo_Locale>1033</VerInfo_Locale>
<VerInfo_Keys>CompanyName=;FileDescription=OpenCV Component;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=OpenCV Component;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_2_Win64)'!=''">
<DCC_DcuOutput>.\$(Platform)\$(Config)</DCC_DcuOutput>
<DCC_UnitSearchPath>..;$(DCC_UnitSearchPath)</DCC_UnitSearchPath>
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
<VerInfo_Locale>1033</VerInfo_Locale>
<VerInfo_Keys>CompanyName=;FileDescription=OpenCV Component;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=OpenCV Component;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
</PropertyGroup>
<ItemGroup>
<DelphiCompile Include="$(MainSource)">
<MainSource>MainSource</MainSource>
</DelphiCompile>
<DCCReference Include="rtl.dcp"/>
<DCCReference Include="vcl.dcp"/>
<DCCReference Include="..\uOCVImageOperation.pas"/>
<DCCReference Include="..\uOCVTypes.pas"/>
<DCCReference Include="..\uOCVSource.pas"/>
<DCCReference Include="..\uOCVView.pas"/>
<BuildConfiguration Include="Debug">
<Key>Cfg_2</Key>
<CfgParent>Base</CfgParent>
</BuildConfiguration>
<BuildConfiguration Include="Base">
<Key>Base</Key>
</BuildConfiguration>
<BuildConfiguration Include="Release">
<Key>Cfg_1</Key>
<CfgParent>Base</CfgParent>
</BuildConfiguration>
</ItemGroup>
<ProjectExtensions>
<Borland.Personality>Delphi.Personality.12</Borland.Personality>
<Borland.ProjectType>Package</Borland.ProjectType>
<BorlandProject>
<Delphi.Personality>
<Source>
<Source Name="MainSource">OpenCV190.dpk</Source>
</Source>
<VersionInfo>
<VersionInfo Name="IncludeVerInfo">True</VersionInfo>
<VersionInfo Name="AutoIncBuild">False</VersionInfo>
<VersionInfo Name="MajorVer">1</VersionInfo>
<VersionInfo Name="MinorVer">0</VersionInfo>
<VersionInfo Name="Release">0</VersionInfo>
<VersionInfo Name="Build">0</VersionInfo>
<VersionInfo Name="Debug">False</VersionInfo>
<VersionInfo Name="PreRelease">False</VersionInfo>
<VersionInfo Name="Special">False</VersionInfo>
<VersionInfo Name="Private">False</VersionInfo>
<VersionInfo Name="DLL">False</VersionInfo>
<VersionInfo Name="Locale">1049</VersionInfo>
<VersionInfo Name="CodePage">1251</VersionInfo>
</VersionInfo>
<VersionInfoKeys>
<VersionInfoKeys Name="CompanyName"/>
<VersionInfoKeys Name="FileDescription"/>
<VersionInfoKeys Name="FileVersion">1.0.0.0</VersionInfoKeys>
<VersionInfoKeys Name="InternalName"/>
<VersionInfoKeys Name="LegalCopyright"/>
<VersionInfoKeys Name="LegalTrademarks"/>
<VersionInfoKeys Name="OriginalFilename"/>
<VersionInfoKeys Name="ProductName"/>
<VersionInfoKeys Name="ProductVersion">1.0.0.0</VersionInfoKeys>
<VersionInfoKeys Name="Comments"/>
<VersionInfoKeys Name="CFBundleName"/>
<VersionInfoKeys Name="CFBundleDisplayName"/>
<VersionInfoKeys Name="UIDeviceFamily"/>
<VersionInfoKeys Name="CFBundleIdentifier"/>
<VersionInfoKeys Name="CFBundleVersion"/>
<VersionInfoKeys Name="CFBundlePackageType"/>
<VersionInfoKeys Name="CFBundleSignature"/>
<VersionInfoKeys Name="CFBundleAllowMixedLocalizations"/>
<VersionInfoKeys Name="UISupportedInterfaceOrientations"/>
<VersionInfoKeys Name="CFBundleExecutable"/>
<VersionInfoKeys Name="CFBundleResourceSpecification"/>
<VersionInfoKeys Name="LSRequiresIPhoneOS"/>
<VersionInfoKeys Name="CFBundleInfoDictionaryVersion"/>
<VersionInfoKeys Name="CFBundleDevelopmentRegion"/>
<VersionInfoKeys Name="package"/>
<VersionInfoKeys Name="label"/>
<VersionInfoKeys Name="versionCode"/>
<VersionInfoKeys Name="versionName"/>
<VersionInfoKeys Name="persistent"/>
<VersionInfoKeys Name="restoreAnyVersion"/>
<VersionInfoKeys Name="installLocation"/>
<VersionInfoKeys Name="largeHeap"/>
<VersionInfoKeys Name="theme"/>
</VersionInfoKeys>
<Excluded_Packages>
<Excluded_Packages Name="$(BDSBIN)\dcloffice2k190.bpl">Microsoft Office 2000 Sample Automation Server Wrapper Components</Excluded_Packages>
<Excluded_Packages Name="$(BDSBIN)\dclofficexp190.bpl">Microsoft Office XP Sample Automation Server Wrapper Components</Excluded_Packages>
</Excluded_Packages>
</Delphi.Personality>
<Platforms>
<Platform value="Android">True</Platform>
<Platform value="iOSDevice">True</Platform>
<Platform value="iOSSimulator" ActiveMobileDevice="iPhone">True</Platform>
<Platform value="Win32">True</Platform>
<Platform value="Win64">True</Platform>
</Platforms>
<Deployment>
<DeployFile LocalName="$(BDS)\Redist\osx32\libcgunwind.1.0.dylib" Class="DependencyModule">
<Platform Name="OSX32">
<Overwrite>true</Overwrite>
</Platform>
<Platform Name="iOSSimulator">
<Overwrite>true</Overwrite>
</Platform>
</DeployFile>
<DeployClass Required="true" Name="DependencyPackage">
<Platform Name="iOSDevice">
<Operation>1</Operation>
<Extensions>.dylib</Extensions>
</Platform>
<Platform Name="Win32">
<Operation>0</Operation>
<Extensions>.bpl</Extensions>
</Platform>
<Platform Name="OSX32">
<Operation>1</Operation>
<Extensions>.dylib</Extensions>
</Platform>
<Platform Name="iOSSimulator">
<Operation>1</Operation>
<Extensions>.dylib</Extensions>
</Platform>
</DeployClass>
<DeployClass Name="DependencyModule">
<Platform Name="OSX32">
<Operation>1</Operation>
<Extensions>.dylib</Extensions>
</Platform>
<Platform Name="Win32">
<Operation>0</Operation>
<Extensions>.dll;.bpl</Extensions>
</Platform>
</DeployClass>
<DeployClass Name="iPad_Launch2048">
<Platform Name="iOSDevice">
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="ProjectOSXInfoPList"/>
<DeployClass Name="ProjectiOSDeviceDebug">
<Platform Name="iOSDevice">
<RemoteDir>..\$(PROJECTNAME).app.dSYM\Contents\Resources\DWARF</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="AndroidLibnativeMipsFile">
<Platform Name="Android">
<RemoteDir>library\lib\mips</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="AndroidLibnativeX86File">
<Platform Name="Android">
<RemoteDir>library\lib\x86</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="ProjectiOSResource">
<Platform Name="iOSDevice">
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="ProjectOSXEntitlements"/>
<DeployClass Name="AndroidGDBServer">
<Platform Name="Android">
<RemoteDir>library\lib\armeabi-v7a</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="iPhone_Launch640">
<Platform Name="iOSDevice">
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="Android_LauncherIcon96">
<Platform Name="Android">
<RemoteDir>res\drawable-xhdpi</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="iPhone_Launch320">
<Platform Name="iOSDevice">
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="Android_LauncherIcon144">
<Platform Name="Android">
<RemoteDir>res\drawable-xxhdpi</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="DebugSymbols">
<Platform Name="OSX32">
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<Operation>1</Operation>
</Platform>
<Platform Name="Win32">
<Operation>0</Operation>
</Platform>
</DeployClass>
<DeployClass Name="DependencyFramework">
<Platform Name="OSX32">
<Operation>1</Operation>
<Extensions>.framework</Extensions>
</Platform>
<Platform Name="Win32">
<Operation>0</Operation>
</Platform>
</DeployClass>
<DeployClass Name="ProjectiOSEntitlements"/>
<DeployClass Name="AdditionalDebugSymbols">
<Platform Name="OSX32">
<Operation>1</Operation>
</Platform>
<Platform Name="Win32">
<RemoteDir>Contents\MacOS</RemoteDir>
<Operation>0</Operation>
</Platform>
</DeployClass>
<DeployClass Name="AndroidClassesDexFile">
<Platform Name="Android">
<RemoteDir>classes</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="ProjectiOSDeviceInfoPList"/>
<DeployClass Name="iPad_Launch1024">
<Platform Name="iOSDevice">
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="ProjectiOSSimulatorInfoPList"/>
<DeployClass Name="Android_DefaultAppIcon">
<Platform Name="Android">
<RemoteDir>res\drawable</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="ProjectOSXResource">
<Platform Name="OSX32">
<RemoteDir>Contents\Resources</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="ProjectiOSDeviceResourceRules"/>
<DeployClass Name="iPad_Launch768">
<Platform Name="iOSDevice">
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Required="true" Name="ProjectOutput">
<Platform Name="iOSDevice">
<Operation>1</Operation>
</Platform>
<Platform Name="Android">
<RemoteDir>library\lib\armeabi-v7a</RemoteDir>
<Operation>1</Operation>
</Platform>
<Platform Name="Win32">
<Operation>0</Operation>
</Platform>
<Platform Name="OSX32">
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="AndroidLibnativeArmeabiFile">
<Platform Name="Android">
<RemoteDir>library\lib\armeabi</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="File">
<Platform Name="iOSDevice">
<Operation>0</Operation>
</Platform>
<Platform Name="Android">
<Operation>0</Operation>
</Platform>
<Platform Name="Win32">
<Operation>0</Operation>
</Platform>
<Platform Name="OSX32">
<Operation>0</Operation>
</Platform>
<Platform Name="iOSSimulator">
<Operation>0</Operation>
</Platform>
</DeployClass>
<DeployClass Name="iPhone_Launch640x1136">
<Platform Name="iOSDevice">
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="Android_LauncherIcon36">
<Platform Name="Android">
<RemoteDir>res\drawable-ldpi</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="iPad_Launch1536">
<Platform Name="iOSDevice">
<Operation>1</Operation>
</Platform>
<Platform Name="iOSSimulator">
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="Android_LauncherIcon48">
<Platform Name="Android">
<RemoteDir>res\drawable-mdpi</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="Android_LauncherIcon72">
<Platform Name="Android">
<RemoteDir>res\drawable-hdpi</RemoteDir>
<Operation>1</Operation>
</Platform>
</DeployClass>
<DeployClass Name="ProjectAndroidManifest">
<Platform Name="Android">
<Operation>1</Operation>
</Platform>
</DeployClass>
<ProjectRoot Platform="Android" Name="$(PROJECTNAME)"/>
<ProjectRoot Platform="iOSDevice" Name="$(PROJECTNAME).app"/>
<ProjectRoot Platform="Win32" Name="$(PROJECTNAME)"/>
<ProjectRoot Platform="OSX32" Name="$(PROJECTNAME)"/>
<ProjectRoot Platform="iOSSimulator" Name="$(PROJECTNAME).app"/>
<ProjectRoot Platform="Win64" Name="$(PROJECTNAME)"/>
</Deployment>
</BorlandProject>
<ProjectFileVersion>12</ProjectFileVersion>
</ProjectExtensions>
<Import Project="$(BDS)\Bin\CodeGear.Delphi.Targets" Condition="Exists('$(BDS)\Bin\CodeGear.Delphi.Targets')"/>
<Import Project="$(APPDATA)\Embarcadero\$(BDSAPPDATABASEDIR)\$(PRODUCTVERSION)\UserTools.proj" Condition="Exists('$(APPDATA)\Embarcadero\$(BDSAPPDATABASEDIR)\$(PRODUCTVERSION)\UserTools.proj')"/>
<Import Project="$(MSBuildProjectName).deployproj" Condition="Exists('$(MSBuildProjectName).deployproj')"/>
</Project>

View File

@ -1,48 +0,0 @@
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<ProjectGuid>{BD0EE7BD-ED70-4DCA-AA92-522F18635A55}</ProjectGuid>
</PropertyGroup>
<ItemGroup>
<Projects Include="OpenCV190.*.dproj">
<Dependencies/>
</Projects>
<Projects Include="dclOpenCV190.*.dproj">
<Dependencies/>
</Projects>
</ItemGroup>
<ProjectExtensions>
<Borland.Personality>Default.Personality.12</Borland.Personality>
<Borland.ProjectType/>
<BorlandProject>
<Default.Personality/>
</BorlandProject>
</ProjectExtensions>
<Target Name="OpenCV190">
<MSBuild Projects="OpenCV190.dproj"/>
</Target>
<Target Name="OpenCV190:Clean">
<MSBuild Projects="OpenCV190.dproj" Targets="Clean"/>
</Target>
<Target Name="OpenCV190:Make">
<MSBuild Projects="OpenCV190.dproj" Targets="Make"/>
</Target>
<Target Name="dclOpenCV190">
<MSBuild Projects="dclOpenCV190.dproj"/>
</Target>
<Target Name="dclOpenCV190:Clean">
<MSBuild Projects="dclOpenCV190.dproj" Targets="Clean"/>
</Target>
<Target Name="dclOpenCV190:Make">
<MSBuild Projects="dclOpenCV190.dproj" Targets="Make"/>
</Target>
<Target Name="Build">
<CallTarget Targets="OpenCV190;dclOpenCV190"/>
</Target>
<Target Name="Clean">
<CallTarget Targets="OpenCV190:Clean;dclOpenCV190:Clean"/>
</Target>
<Target Name="Make">
<CallTarget Targets="OpenCV190:Make;dclOpenCV190:Make"/>
</Target>
<Import Project="$(BDS)\Bin\CodeGear.Group.Targets" Condition="Exists('$(BDS)\Bin\CodeGear.Group.Targets')"/>
</Project>

View File

@ -1,6 +1,7 @@
package dclOpenCV190; package dclOpenCV190;
{$R *.res} {$R *.res}
{$R *.otares}
{$R '..\OpenCV.dcr'} {$R '..\OpenCV.dcr'}
{$IFDEF IMPLICITBUILDING This IFDEF should not be used by users} {$IFDEF IMPLICITBUILDING This IFDEF should not be used by users}
{$ALIGN 8} {$ALIGN 8}
@ -10,21 +11,21 @@ package dclOpenCV190;
{$EXTENDEDSYNTAX ON} {$EXTENDEDSYNTAX ON}
{$IMPORTEDDATA ON} {$IMPORTEDDATA ON}
{$IOCHECKS ON} {$IOCHECKS ON}
{$LOCALSYMBOLS OFF} {$LOCALSYMBOLS ON}
{$LONGSTRINGS ON} {$LONGSTRINGS ON}
{$OPENSTRINGS ON} {$OPENSTRINGS ON}
{$OPTIMIZATION ON} {$OPTIMIZATION OFF}
{$OVERFLOWCHECKS OFF} {$OVERFLOWCHECKS OFF}
{$RANGECHECKS OFF} {$RANGECHECKS OFF}
{$REFERENCEINFO OFF} {$REFERENCEINFO ON}
{$SAFEDIVIDE OFF} {$SAFEDIVIDE OFF}
{$STACKFRAMES OFF} {$STACKFRAMES ON}
{$TYPEDADDRESS OFF} {$TYPEDADDRESS OFF}
{$VARSTRINGCHECKS ON} {$VARSTRINGCHECKS ON}
{$WRITEABLECONST OFF} {$WRITEABLECONST OFF}
{$MINENUMSIZE 1} {$MINENUMSIZE 1}
{$IMAGEBASE $400000} {$IMAGEBASE $400000}
{$DEFINE RELEASE} {$DEFINE DEBUG}
{$ENDIF IMPLICITBUILDING} {$ENDIF IMPLICITBUILDING}
{$DESCRIPTION 'OpenCV Component'} {$DESCRIPTION 'OpenCV Component'}
{$DESIGNONLY} {$DESIGNONLY}
@ -37,7 +38,7 @@ requires
designide; designide;
contains contains
uOCVIOProperties in '..\uOCVIOProperties.pas', ocv.comp.IOProperties in '..\ocv.comp.IOProperties.pas',
uOCVRegister in '..\uOCVRegister.pas'; ocv.comp.Register in '..\ocv.comp.Register.pas';
end. end.

View File

@ -1,251 +0,0 @@
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<ProjectGuid>{29A87BFF-B0BF-4A7F-BC7D-E36D34A7E4B5}</ProjectGuid>
<MainSource>dclOpenCV190.dpk</MainSource>
<Base>True</Base>
<Config Condition="'$(Config)'==''">Release</Config>
<TargetedPlatforms>1</TargetedPlatforms>
<AppType>Package</AppType>
<FrameworkType>VCL</FrameworkType>
<ProjectVersion>15.3</ProjectVersion>
<Platform Condition="'$(Platform)'==''">Win32</Platform>
</PropertyGroup>
<PropertyGroup Condition="'$(Config)'=='Base' or '$(Base)'!=''">
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='Android' and '$(Base)'=='true') or '$(Base_Android)'!=''">
<Base_Android>true</Base_Android>
<CfgParent>Base</CfgParent>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='iOSDevice' and '$(Base)'=='true') or '$(Base_iOSDevice)'!=''">
<Base_iOSDevice>true</Base_iOSDevice>
<CfgParent>Base</CfgParent>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='iOSSimulator' and '$(Base)'=='true') or '$(Base_iOSSimulator)'!=''">
<Base_iOSSimulator>true</Base_iOSSimulator>
<CfgParent>Base</CfgParent>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='Win32' and '$(Base)'=='true') or '$(Base_Win32)'!=''">
<Base_Win32>true</Base_Win32>
<CfgParent>Base</CfgParent>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='Win64' and '$(Base)'=='true') or '$(Base_Win64)'!=''">
<Base_Win64>true</Base_Win64>
<CfgParent>Base</CfgParent>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="'$(Config)'=='Release' or '$(Cfg_1)'!=''">
<Cfg_1>true</Cfg_1>
<CfgParent>Base</CfgParent>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='Win32' and '$(Cfg_1)'=='true') or '$(Cfg_1_Win32)'!=''">
<Cfg_1_Win32>true</Cfg_1_Win32>
<CfgParent>Cfg_1</CfgParent>
<Cfg_1>true</Cfg_1>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='Win64' and '$(Cfg_1)'=='true') or '$(Cfg_1_Win64)'!=''">
<Cfg_1_Win64>true</Cfg_1_Win64>
<CfgParent>Cfg_1</CfgParent>
<Cfg_1>true</Cfg_1>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="'$(Config)'=='Debug' or '$(Cfg_2)'!=''">
<Cfg_2>true</Cfg_2>
<CfgParent>Base</CfgParent>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='Win32' and '$(Cfg_2)'=='true') or '$(Cfg_2_Win32)'!=''">
<Cfg_2_Win32>true</Cfg_2_Win32>
<CfgParent>Cfg_2</CfgParent>
<Cfg_2>true</Cfg_2>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="('$(Platform)'=='Win64' and '$(Cfg_2)'=='true') or '$(Cfg_2_Win64)'!=''">
<Cfg_2_Win64>true</Cfg_2_Win64>
<CfgParent>Cfg_2</CfgParent>
<Cfg_2>true</Cfg_2>
<Base>true</Base>
</PropertyGroup>
<PropertyGroup Condition="'$(Base)'!=''">
<SanitizedProjectName>dclOpenCV190</SanitizedProjectName>
<DCC_OutputNeverBuildDcps>true</DCC_OutputNeverBuildDcps>
<DCC_ImageBase>00400000</DCC_ImageBase>
<DCC_Namespace>Vcl;Vcl.Imaging;Vcl.Touch;Vcl.Samples;Vcl.Shell;System;Xml;Data;Datasnap;Web;Soap;Winapi;$(DCC_Namespace)</DCC_Namespace>
<DesignOnlyPackage>true</DesignOnlyPackage>
<GenDll>true</GenDll>
<DCC_N>false</DCC_N>
<DCC_Description>OpenCV Component</DCC_Description>
<DCC_F>false</DCC_F>
<DCC_K>false</DCC_K>
<DCC_DebugInformation>true</DCC_DebugInformation>
<GenPackage>true</GenPackage>
<VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=;CFBundleName=;CFBundleDisplayName=;UIDeviceFamily=;CFBundleIdentifier=;CFBundleVersion=;CFBundlePackageType=;CFBundleSignature=;CFBundleAllowMixedLocalizations=;UISupportedInterfaceOrientations=;CFBundleExecutable=;CFBundleResourceSpecification=;LSRequiresIPhoneOS=;CFBundleInfoDictionaryVersion=;CFBundleDevelopmentRegion=;package=;label=;versionCode=;versionName=;persistent=;restoreAnyVersion=;installLocation=;largeHeap=;theme=</VerInfo_Keys>
<DCC_S>false</DCC_S>
<DCC_E>false</DCC_E>
<VerInfo_Locale>1049</VerInfo_Locale>
</PropertyGroup>
<PropertyGroup Condition="'$(Base_Android)'!=''">
<DCC_UsePackage>rtl;$(DCC_UsePackage)</DCC_UsePackage>
</PropertyGroup>
<PropertyGroup Condition="'$(Base_iOSDevice)'!=''">
<DCC_UsePackage>rtl;$(DCC_UsePackage)</DCC_UsePackage>
</PropertyGroup>
<PropertyGroup Condition="'$(Base_iOSSimulator)'!=''">
<DCC_UsePackage>rtl;$(DCC_UsePackage)</DCC_UsePackage>
</PropertyGroup>
<PropertyGroup Condition="'$(Base_Win32)'!=''">
<DCC_UsePackage>vcl;rtl;OpenCV190;$(DCC_UsePackage)</DCC_UsePackage>
<VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
<DCC_Namespace>System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)</DCC_Namespace>
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
<VerInfo_Locale>1033</VerInfo_Locale>
</PropertyGroup>
<PropertyGroup Condition="'$(Base_Win64)'!=''">
<DCC_UsePackage>vcl;rtl;OpenCV190;$(DCC_UsePackage)</DCC_UsePackage>
<VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
<DCC_Namespace>System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;$(DCC_Namespace)</DCC_Namespace>
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
<VerInfo_Locale>1033</VerInfo_Locale>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_1)'!=''">
<DCC_LocalDebugSymbols>false</DCC_LocalDebugSymbols>
<DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
<DCC_Define>RELEASE;$(DCC_Define)</DCC_Define>
<DCC_DebugInformation>0</DCC_DebugInformation>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_1_Win32)'!=''">
<DCC_UnitSearchPath>..;$(DCC_UnitSearchPath)</DCC_UnitSearchPath>
<DCC_DcuOutput>.\$(Platform)\$(Config)</DCC_DcuOutput>
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
<VerInfo_Locale>1033</VerInfo_Locale>
<VerInfo_Keys>CompanyName=;FileDescription=OpenCV Component;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=OpenCV Component;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_1_Win64)'!=''">
<DCC_DcuOutput>.\$(Platform)\$(Config)</DCC_DcuOutput>
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
<VerInfo_Locale>1033</VerInfo_Locale>
<VerInfo_Keys>CompanyName=;FileDescription=OpenCV Component;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=OpenCV Component;ProductVersion=1.0.0.0;Comments=www.programs74.ru</VerInfo_Keys>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_2)'!=''">
<DCC_GenerateStackFrames>true</DCC_GenerateStackFrames>
<DCC_Optimize>false</DCC_Optimize>
<DCC_Define>DEBUG;$(DCC_Define)</DCC_Define>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_2_Win32)'!=''">
<DCC_UnitSearchPath>..;$(DCC_UnitSearchPath)</DCC_UnitSearchPath>
<DCC_DcuOutput>.</DCC_DcuOutput>
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
<VerInfo_Locale>1033</VerInfo_Locale>
<VerInfo_Keys>CompanyName=;FileDescription=OpenCV Component;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=OpenCV Component;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
</PropertyGroup>
<PropertyGroup Condition="'$(Cfg_2_Win64)'!=''">
<DCC_DcuOutput>.\$(Platform)\$(Config)</DCC_DcuOutput>
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
<VerInfo_Locale>1033</VerInfo_Locale>
<VerInfo_Keys>CompanyName=;FileDescription=OpenCV Component;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=OpenCV Component;ProductVersion=1.0.0.0;Comments=www.programs74.ru</VerInfo_Keys>
</PropertyGroup>
<ItemGroup>
<DelphiCompile Include="$(MainSource)">
<MainSource>MainSource</MainSource>
</DelphiCompile>
<DCCReference Include="..\ocv.dcr"/>
<DCCReference Include="OpenCV190.dcp"/>
<DCCReference Include="rtl.dcp"/>
<DCCReference Include="vcl.dcp"/>
<DCCReference Include="designide.dcp"/>
<DCCReference Include="..\uOCVIOProperties.pas"/>
<DCCReference Include="..\uOCVRegister.pas"/>
<BuildConfiguration Include="Debug">
<Key>Cfg_2</Key>
<CfgParent>Base</CfgParent>
</BuildConfiguration>
<BuildConfiguration Include="Base">
<Key>Base</Key>
</BuildConfiguration>
<BuildConfiguration Include="Release">
<Key>Cfg_1</Key>
<CfgParent>Base</CfgParent>
</BuildConfiguration>
</ItemGroup>
<ProjectExtensions>
<Borland.Personality>Delphi.Personality.12</Borland.Personality>
<Borland.ProjectType>Package</Borland.ProjectType>
<BorlandProject>
<Delphi.Personality>
<Source>
<Source Name="MainSource">dclOpenCV190.dpk</Source>
</Source>
<VersionInfo>
<VersionInfo Name="IncludeVerInfo">True</VersionInfo>
<VersionInfo Name="AutoIncBuild">False</VersionInfo>
<VersionInfo Name="MajorVer">1</VersionInfo>
<VersionInfo Name="MinorVer">0</VersionInfo>
<VersionInfo Name="Release">0</VersionInfo>
<VersionInfo Name="Build">0</VersionInfo>
<VersionInfo Name="Debug">False</VersionInfo>
<VersionInfo Name="PreRelease">False</VersionInfo>
<VersionInfo Name="Special">False</VersionInfo>
<VersionInfo Name="Private">False</VersionInfo>
<VersionInfo Name="DLL">False</VersionInfo>
<VersionInfo Name="Locale">1049</VersionInfo>
<VersionInfo Name="CodePage">1251</VersionInfo>
</VersionInfo>
<VersionInfoKeys>
<VersionInfoKeys Name="CompanyName"/>
<VersionInfoKeys Name="FileDescription"/>
<VersionInfoKeys Name="FileVersion">1.0.0.0</VersionInfoKeys>
<VersionInfoKeys Name="InternalName"/>
<VersionInfoKeys Name="LegalCopyright"/>
<VersionInfoKeys Name="LegalTrademarks"/>
<VersionInfoKeys Name="OriginalFilename"/>
<VersionInfoKeys Name="ProductName"/>
<VersionInfoKeys Name="ProductVersion">1.0.0.0</VersionInfoKeys>
<VersionInfoKeys Name="Comments"/>
<VersionInfoKeys Name="CFBundleName"/>
<VersionInfoKeys Name="CFBundleDisplayName"/>
<VersionInfoKeys Name="UIDeviceFamily"/>
<VersionInfoKeys Name="CFBundleIdentifier"/>
<VersionInfoKeys Name="CFBundleVersion"/>
<VersionInfoKeys Name="CFBundlePackageType"/>
<VersionInfoKeys Name="CFBundleSignature"/>
<VersionInfoKeys Name="CFBundleAllowMixedLocalizations"/>
<VersionInfoKeys Name="UISupportedInterfaceOrientations"/>
<VersionInfoKeys Name="CFBundleExecutable"/>
<VersionInfoKeys Name="CFBundleResourceSpecification"/>
<VersionInfoKeys Name="LSRequiresIPhoneOS"/>
<VersionInfoKeys Name="CFBundleInfoDictionaryVersion"/>
<VersionInfoKeys Name="CFBundleDevelopmentRegion"/>
<VersionInfoKeys Name="package"/>
<VersionInfoKeys Name="label"/>
<VersionInfoKeys Name="versionCode"/>
<VersionInfoKeys Name="versionName"/>
<VersionInfoKeys Name="persistent"/>
<VersionInfoKeys Name="restoreAnyVersion"/>
<VersionInfoKeys Name="installLocation"/>
<VersionInfoKeys Name="largeHeap"/>
<VersionInfoKeys Name="theme"/>
</VersionInfoKeys>
<Excluded_Packages>
<Excluded_Packages Name="$(BDSBIN)\dcloffice2k190.bpl">Microsoft Office 2000 Sample Automation Server Wrapper Components</Excluded_Packages>
<Excluded_Packages Name="$(BDSBIN)\dclofficexp190.bpl">Microsoft Office XP Sample Automation Server Wrapper Components</Excluded_Packages>
</Excluded_Packages>
</Delphi.Personality>
<Platforms>
<Platform value="Android">False</Platform>
<Platform value="iOSDevice">False</Platform>
<Platform value="iOSSimulator">False</Platform>
<Platform value="Win32">True</Platform>
<Platform value="Win64">False</Platform>
</Platforms>
</BorlandProject>
<ProjectFileVersion>12</ProjectFileVersion>
</ProjectExtensions>
<Import Project="$(BDS)\Bin\CodeGear.Delphi.Targets" Condition="Exists('$(BDS)\Bin\CodeGear.Delphi.Targets')"/>
<Import Project="$(APPDATA)\Embarcadero\$(BDSAPPDATABASEDIR)\$(PRODUCTVERSION)\UserTools.proj" Condition="Exists('$(APPDATA)\Embarcadero\$(BDSAPPDATABASEDIR)\$(PRODUCTVERSION)\UserTools.proj')"/>
</Project>

View File

@ -34,11 +34,11 @@ requires
vcl; vcl;
contains contains
uOCVImageOperation in '..\uOCVImageOperation.pas', ocv.comp.ImageOperation in '..\ocv.comp.ImageOperation.pas',
uOCVVideoWriter in '..\uOCVVideoWriter.pas', ocv.comp.VideoWriter in '..\ocv.comp.VideoWriter.pas',
uOCVTypes in '..\uOCVTypes.pas', ocv.comp.Types in '..\ocv.comp.Types.pas',
uOCVSource in '..\uOCVSource.pas', ocv.comp.Source in '..\ocv.comp.Source.pas',
uOCVView in '..\uOCVView.pas'; ocv.comp.View in '..\ocv.comp.View.pas',
ocv.comp.Proc in '..\ocv.comp.Proc.pas';
end. end.

View File

@ -230,7 +230,7 @@
<DCC_UnitSearchPath>..;$(DCC_UnitSearchPath)</DCC_UnitSearchPath> <DCC_UnitSearchPath>..;$(DCC_UnitSearchPath)</DCC_UnitSearchPath>
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo> <VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
<VerInfo_Locale>1033</VerInfo_Locale> <VerInfo_Locale>1033</VerInfo_Locale>
<VerInfo_Keys>CompanyName=;FileDescription=OpenCV Component;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=OpenCV Component;ProductVersion=1.0.0.0;Comments=;LastCompiledTime=31.05.2014 12:40:52</VerInfo_Keys> <VerInfo_Keys>CompanyName=;FileDescription=OpenCV Component;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=OpenCV Component;ProductVersion=1.0.0.0;Comments=;LastCompiledTime=10.06.2014 3:06:44</VerInfo_Keys>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Cfg_2_Win64)'!=''"> <PropertyGroup Condition="'$(Cfg_2_Win64)'!=''">
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo> <VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
@ -243,11 +243,12 @@
</DelphiCompile> </DelphiCompile>
<DCCReference Include="rtl.dcp"/> <DCCReference Include="rtl.dcp"/>
<DCCReference Include="vcl.dcp"/> <DCCReference Include="vcl.dcp"/>
<DCCReference Include="..\uOCVImageOperation.pas"/> <DCCReference Include="..\ocv.comp.ImageOperation.pas"/>
<DCCReference Include="..\uOCVVideoWriter.pas"/> <DCCReference Include="..\ocv.comp.VideoWriter.pas"/>
<DCCReference Include="..\uOCVTypes.pas"/> <DCCReference Include="..\ocv.comp.Types.pas"/>
<DCCReference Include="..\uOCVSource.pas"/> <DCCReference Include="..\ocv.comp.Source.pas"/>
<DCCReference Include="..\uOCVView.pas"/> <DCCReference Include="..\ocv.comp.View.pas"/>
<DCCReference Include="..\ocv.comp.Proc.pas"/>
<BuildConfiguration Include="Debug"> <BuildConfiguration Include="Debug">
<Key>Cfg_2</Key> <Key>Cfg_2</Key>
<CfgParent>Base</CfgParent> <CfgParent>Base</CfgParent>

View File

@ -1,5 +1,34 @@
package dclOpenCV200; package dclOpenCV200;
{$R *.res}
{$IFDEF IMPLICITBUILDING This IFDEF should not be used by users}
{$ALIGN 8}
{$ASSERTIONS ON}
{$BOOLEVAL OFF}
{$DEBUGINFO OFF}
{$EXTENDEDSYNTAX ON}
{$IMPORTEDDATA ON}
{$IOCHECKS ON}
{$LOCALSYMBOLS ON}
{$LONGSTRINGS ON}
{$OPENSTRINGS ON}
{$OPTIMIZATION OFF}
{$OVERFLOWCHECKS OFF}
{$RANGECHECKS OFF}
{$REFERENCEINFO ON}
{$SAFEDIVIDE OFF}
{$STACKFRAMES ON}
{$TYPEDADDRESS OFF}
{$VARSTRINGCHECKS ON}
{$WRITEABLECONST OFF}
{$MINENUMSIZE 1}
{$IMAGEBASE $400000}
{$DEFINE DEBUG}
{$ENDIF IMPLICITBUILDING}
{$DESCRIPTION 'OpenCV Component'}
{$DESIGNONLY}
{$IMPLICITBUILD OFF}
requires requires
OpenCV200, OpenCV200,
rtl, rtl,
@ -7,7 +36,7 @@ requires
designide; designide;
contains contains
uOCVIOProperties in '..\uOCVIOProperties.pas', ocv.comp.IOProperties in '..\ocv.comp.IOProperties.pas',
uOCVRegister in '..\uOCVRegister.pas'; ocv.comp.Register in '..\ocv.comp.Register.pas';
end. end.

View File

@ -84,7 +84,6 @@
<DCC_Description>OpenCV Component</DCC_Description> <DCC_Description>OpenCV Component</DCC_Description>
<DCC_F>false</DCC_F> <DCC_F>false</DCC_F>
<DCC_K>false</DCC_K> <DCC_K>false</DCC_K>
<DCC_DebugInformation>true</DCC_DebugInformation>
<GenPackage>true</GenPackage> <GenPackage>true</GenPackage>
<VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=;CFBundleName=;CFBundleDisplayName=;UIDeviceFamily=;CFBundleIdentifier=;CFBundleVersion=;CFBundlePackageType=;CFBundleSignature=;CFBundleAllowMixedLocalizations=;UISupportedInterfaceOrientations=;CFBundleExecutable=;CFBundleResourceSpecification=;LSRequiresIPhoneOS=;CFBundleInfoDictionaryVersion=;CFBundleDevelopmentRegion=;package=;label=;versionCode=;versionName=;persistent=;restoreAnyVersion=;installLocation=;largeHeap=;theme=</VerInfo_Keys> <VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=;CFBundleName=;CFBundleDisplayName=;UIDeviceFamily=;CFBundleIdentifier=;CFBundleVersion=;CFBundlePackageType=;CFBundleSignature=;CFBundleAllowMixedLocalizations=;UISupportedInterfaceOrientations=;CFBundleExecutable=;CFBundleResourceSpecification=;LSRequiresIPhoneOS=;CFBundleInfoDictionaryVersion=;CFBundleDevelopmentRegion=;package=;label=;versionCode=;versionName=;persistent=;restoreAnyVersion=;installLocation=;largeHeap=;theme=</VerInfo_Keys>
<DCC_S>false</DCC_S> <DCC_S>false</DCC_S>
@ -137,11 +136,9 @@
<DCC_Define>DEBUG;$(DCC_Define)</DCC_Define> <DCC_Define>DEBUG;$(DCC_Define)</DCC_Define>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Cfg_2_Win32)'!=''"> <PropertyGroup Condition="'$(Cfg_2_Win32)'!=''">
<DCC_UnitSearchPath>..;$(DCC_UnitSearchPath)</DCC_UnitSearchPath>
<DCC_DcuOutput>.</DCC_DcuOutput>
<VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo> <VerInfo_IncludeVerInfo>true</VerInfo_IncludeVerInfo>
<VerInfo_Locale>1033</VerInfo_Locale> <VerInfo_Locale>1033</VerInfo_Locale>
<VerInfo_Keys>CompanyName=;FileDescription=OpenCV Component;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=OpenCV Component;ProductVersion=1.0.0.0;Comments=;LastCompiledTime=31.05.2014 12:40:55</VerInfo_Keys> <VerInfo_Keys>CompanyName=;FileDescription=OpenCV Component;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=OpenCV Component;ProductVersion=1.0.0.0;Comments=;LastCompiledTime=10.06.2014 3:06:48</VerInfo_Keys>
</PropertyGroup> </PropertyGroup>
<PropertyGroup Condition="'$(Cfg_2_Win64)'!=''"> <PropertyGroup Condition="'$(Cfg_2_Win64)'!=''">
<DCC_DcuOutput>.\$(Platform)\$(Config)</DCC_DcuOutput> <DCC_DcuOutput>.\$(Platform)\$(Config)</DCC_DcuOutput>
@ -157,8 +154,8 @@
<DCCReference Include="rtl.dcp"/> <DCCReference Include="rtl.dcp"/>
<DCCReference Include="vcl.dcp"/> <DCCReference Include="vcl.dcp"/>
<DCCReference Include="designide.dcp"/> <DCCReference Include="designide.dcp"/>
<DCCReference Include="..\uOCVIOProperties.pas"/> <DCCReference Include="..\ocv.comp.IOProperties.pas"/>
<DCCReference Include="..\uOCVRegister.pas"/> <DCCReference Include="..\ocv.comp.Register.pas"/>
<BuildConfiguration Include="Debug"> <BuildConfiguration Include="Debug">
<Key>Cfg_2</Key> <Key>Cfg_2</Key>
<CfgParent>Base</CfgParent> <CfgParent>Base</CfgParent>

View File

@ -32,9 +32,11 @@ requires
vcl; vcl;
contains contains
uOCVImageOperation in '..\uOCVImageOperation.pas', ocv.comp.ImageOperation in '..\ocv.comp.ImageOperation.pas',
uOCVTypes in '..\uOCVTypes.pas', ocv.comp.VideoWriter in '..\ocv.comp.VideoWriter.pas',
uOCVSource in '..\uOCVSource.pas', ocv.comp.Types in '..\ocv.comp.Types.pas',
uOCVView in '..\uOCVView.pas'; ocv.comp.Source in '..\ocv.comp.Source.pas',
ocv.comp.View in '..\ocv.comp.View.pas',
ocv.comp.Proc in '..\ocv.comp.Proc.pas';
end. end.

View File

@ -35,7 +35,7 @@ requires
designide; designide;
contains contains
uOCVIOProperties in '..\uOCVIOProperties.pas', ocv.comp.IOProperties in '..\ocv.comp.IOProperties.pas',
uOCVRegister in '..\uOCVRegister.pas'; ocv.comp.Register in '..\ocv.comp.Register.pas';
end. end.

View File

@ -23,7 +23,7 @@
{$IFNDEF CLR} {$IFNDEF CLR}
{$I OpenCV.inc} {$I OpenCV.inc}
unit uOCVIOProperties; unit ocv.comp.IOProperties;
{$ENDIF} {$ENDIF}
interface interface
@ -38,7 +38,7 @@ uses
{$IFDEF VER6P}DesignEditors, DesignIntf, System.Classes, {$ELSE}DsgnIntf, Classes, {$ENDIF VER6P} {$IFDEF VER6P}DesignEditors, DesignIntf, System.Classes, {$ELSE}DsgnIntf, Classes, {$ENDIF VER6P}
{$ENDIF FPC} {$ENDIF FPC}
{$ENDIF} {$ENDIF}
uOCVImageOperation; ocv.comp.ImageOperation;
type type
/// Èñïîëüçóåòñÿ â TocvImageOperation /// Èñïîëüçóåòñÿ â TocvImageOperation
@ -115,7 +115,7 @@ uses
TypInfo, TypInfo,
RTLConsts, RTLConsts,
{$ENDIF VER6P} {$ENDIF VER6P}
uOCVTypes; ocv.comp.Types;
{TImageOperationProperty} {TImageOperationProperty}

View File

@ -0,0 +1,122 @@
unit ocv.comp.Proc;
interface
Uses
ocv.comp.Types,
ocv.objdetect_c,
ocv.core.types_c;
function ocvHaarCascadeTransform(
{} const Source: IocvImage;
{} const Cascade: pCvHaarClassifierCascade;
{} var HaarRects: TocvRects;
{} const MinSize, MaxSize: TcvSize;
{} const Equalize: Boolean = True;
{} const Scale: Double = 1.3;
{} const MinNeighbors: Integer = 3;
{} const Flag: TocvHaarCascadeFlagSet = []): Boolean;
function ocvLoadHaarCascade(const HaarCascadeType: TocvHaarCascadeType): pCvHaarClassifierCascade;
implementation
Uses
WinApi.Windows,
System.SysUtils,
System.Classes,
System.ZLib,
ocv.core_c,
ocv.imgproc_c,
ocv.cvutils;
{$I Opencv.inc}
Type
TocvHaarCascadeRecord = record
Name: String;
FileName: String;
end;
//
// Run utils\CompressHaar\uCompressHaar.dpr
// Add to serarch path \Delphi-OpenCV\resource\facedetectxml\
//
{$I haarcascade.inc}
function ocvLoadHaarCascade(const HaarCascadeType: TocvHaarCascadeType): pCvHaarClassifierCascade;
function TempPath: string;
var
BufSize: Cardinal;
begin
BufSize := GetTempPath(0, nil);
SetLength(Result, BufSize);
GetTempPath(BufSize, PChar(Result));
Result := Trim(Result);
end;
Var
FullFileName: String;
RS: TResourceStream;
DC: TZDecompressionStream;
FS: TFileStream;
begin
Result := nil;
FullFileName := TempPath + FrontalFaceXML[HaarCascadeType].FileName;
if not FileExists(FullFileName) then
begin
RS := TResourceStream.Create(hInstance, FrontalFaceXML[HaarCascadeType].Name, RT_RCDATA);
DC := TZDecompressionStream.Create(RS);
FS := TFileStream.Create(FullFileName, fmCreate);
try
FS.CopyFrom(DC, DC.Size);
finally
DC.Free;
FS.Free;
RS.Free;
end;
end;
if FileExists(FullFileName) then
Result := cvLoad(c_str(FullFileName), nil, nil, nil);
end;
function ocvHaarCascadeTransform;
Var
storage: pCvMemStorage;
gray: IocvImage;
detected_objects: pCvSeq;
i: Integer;
cvr: pCvRect;
r, g, b: byte;
begin
SetLength(HaarRects, 0);
Result := False;
if Assigned(Cascade) then
begin
storage := cvCreateMemStorage(0);
try
gray := Source.GrayImage;
if Equalize then
cvEqualizeHist(gray.IpImage, gray.IpImage);
detected_objects := cvHaarDetectObjects(gray.IpImage, Cascade, storage, Scale, MinNeighbors, HaarSetToFlag(Flag),
MinSize, MaxSize);
if Assigned(detected_objects) then
begin
SetLength(HaarRects, detected_objects^.total);
i := 0;
While i < detected_objects^.total do
begin
cvr := pCvRect(cvGetSeqElem(detected_objects, i));
HaarRects[i] := ocvRect(cvr^.X, cvr^.Y, (cvr^.X) + (cvr^.Width), (cvr^.Y) + (cvr^.Height));
Inc(i);
end;
end;
Result := True;
finally
cvReleaseMemStorage(storage);
end;
end;
end;
end.

View File

@ -24,7 +24,7 @@
// ******************************************************************* // *******************************************************************
{$IFNDEF CLR} {$IFNDEF CLR}
{$I OpenCV.inc} {$I OpenCV.inc}
unit uOCVRegister; unit ocv.comp.Register;
{$ENDIF} {$ENDIF}
interface interface
@ -43,9 +43,10 @@ uses
{$IFDEF VER6P}DesignIntf, System.Classes, {$ELSE}DsgnIntf, Classes, {$ENDIF VER6P} {$IFDEF VER6P}DesignIntf, System.Classes, {$ELSE}DsgnIntf, Classes, {$ENDIF VER6P}
{$ENDIF FPC} {$ENDIF FPC}
{$ENDIF} {$ENDIF}
uOCVSource, ocv.comp.Source,
uOCVView, ocv.comp.View,
uOCVImageOperation, uOCVVideoWriter; ocv.comp.ImageOperation,
ocv.comp.VideoWriter;
procedure Register; procedure Register;
begin begin
@ -54,12 +55,12 @@ begin
RegisterClasses([ RegisterClasses([
{} TocvNoneOperation, {} TocvNoneOperation,
{} TocvGrayScaleOperation, {} TocvGrayScaleOperation,
{} TovcCannyOperation, {} TocvCannyOperation,
{} TovcSmoothOperation, {} TocvSmoothOperation,
{} TovcErodeOperation, {} TocvErodeOperation,
{} TovcDilateOperation, {} TocvDilateOperation,
{} TocvLaplaceOperation, {} TocvLaplaceOperation,
{} TovcSobelOperation, {} TocvSobelOperation,
{} TocvThresholdOperation, {} TocvThresholdOperation,
{} TocvAdaptiveThresholdOperation, {} TocvAdaptiveThresholdOperation,
{} TocvContoursOperation, {} TocvContoursOperation,
@ -68,11 +69,16 @@ begin
{} TocvHaarCascade, {} TocvHaarCascade,
{} TocvMatchTemplate, {} TocvMatchTemplate,
{} TocvMotionDetect, {} TocvMotionDetect,
{} TovcCropOperation, {} TocvCropOperation,
{} TovcAddWeightedOperation, {} TocvAddWeightedOperation,
{} TocvWarpPerspective, {} TocvWarpPerspective,
{} TocvHoughCircles, {} TocvHoughCircles,
{} TocvHoughLines]); {} TocvHoughLines,
{} TocvInRangeSOperation,
{} TocvCvtColorOperation,
{} TocvResizeOperation,
{} TocvLogicOperation,
{} TocvLogicSOperation]);
end; end;
{$IFDEF FPC} {$IFDEF FPC}

View File

@ -23,7 +23,7 @@
{$IFNDEF CLR} {$IFNDEF CLR}
{$I OpenCV.inc} {$I OpenCV.inc}
unit uOCVSource; unit ocv.comp.Source;
{$ENDIF} {$ENDIF}
interface interface
@ -41,7 +41,7 @@ uses
ocv.core.types_c, ocv.core.types_c,
ocv.highgui_c, ocv.highgui_c,
ffm.libavcodec.avcodec, ffm.libavcodec.avcodec,
uOCVTypes; ocv.comp.Types;
type type
TocvCameraCaptureSource = TocvCameraCaptureSource =
@ -97,7 +97,7 @@ type
protected protected
FSourceThread: TocvCustomSourceThread; FSourceThread: TocvCustomSourceThread;
FThreadDelay: Integer; FThreadDelay: Integer;
procedure OnNotifyData(Sender: TObject; const IplImage: IocvImage); virtual; procedure OnNotifyData(Sender: TObject; Var IplImage: IocvImage); virtual;
procedure SetEnabled(Value: Boolean); virtual; procedure SetEnabled(Value: Boolean); virtual;
function GetEnabled: Boolean; override; function GetEnabled: Boolean; override;
private private
@ -141,7 +141,7 @@ type
constructor Create(AOwner: TComponent); override; constructor Create(AOwner: TComponent); override;
published published
property Camera: TocvCameraCaptureSource read FCaptureSource write SetCameraSource default CAP_ANY; property Camera: TocvCameraCaptureSource read FCaptureSource write SetCameraSource default CAP_ANY;
property Resolution: TocvResolution read FResolution write SetResolution; property Resolution: TocvResolution read FResolution write SetResolution default r160x120;
end; end;
TocvFileSource = class(TocvCaptureSource) TocvFileSource = class(TocvCaptureSource)
@ -316,8 +316,12 @@ begin
if Assigned(OnNotifyData) then if Assigned(OnNotifyData) then
Synchronize( Synchronize(
procedure procedure
Var
Image: IocvImage;
begin begin
OnNotifyData(Self, TocvImage.CreateClone(frame)); Image := TocvImage.CreateClone(frame);
OnNotifyData(Self, Image);
Image := nil;
end); end);
Sleep(FThreadDelay); Sleep(FThreadDelay);
end end
@ -337,7 +341,7 @@ constructor TocvCameraSource.Create(AOwner: TComponent);
begin begin
inherited; inherited;
FEnabled := False; FEnabled := False;
FResolution := r160x120; Resolution := r160x120;
end; end;
procedure TocvCameraSource.SetCameraSource(const Value: TocvCameraCaptureSource); procedure TocvCameraSource.SetCameraSource(const Value: TocvCameraCaptureSource);
@ -390,10 +394,10 @@ end;
procedure TocvCameraSource.SetResolution(const Value: TocvResolution); procedure TocvCameraSource.SetResolution(const Value: TocvResolution);
begin begin
FWidth := CameraResolution[Value].cWidth;
FHeight := CameraResolution[Value].cHeight;
if FResolution <> Value then if FResolution <> Value then
begin begin
FWidth := CameraResolution[Value].cWidth;
FHeight := CameraResolution[Value].cHeight;
FResolution := Value; FResolution := Value;
if Enabled then if Enabled then
begin begin
@ -424,7 +428,7 @@ begin
Result := FEnabled; Result := FEnabled;
end; end;
procedure TocvCustomSource.OnNotifyData(Sender: TObject; const IplImage: IocvImage); procedure TocvCustomSource.OnNotifyData(Sender: TObject; Var IplImage: IocvImage);
begin begin
FWidth := IplImage.Width; FWidth := IplImage.Width;
FHeight := IplImage.Height; FHeight := IplImage.Height;
@ -866,8 +870,12 @@ begin
if Assigned(OnNotifyData) then if Assigned(OnNotifyData) then
Synchronize( Synchronize(
procedure procedure
Var
Image: IocvImage;
begin begin
OnNotifyData(Self, TocvImage.CreateClone(iplframe)); Image := TocvImage.CreateClone(iplframe);
OnNotifyData(Self, Image);
Image := nil;
end); end);
end; end;
end end

View File

@ -23,7 +23,7 @@
{$IFNDEF CLR} {$IFNDEF CLR}
{$I OpenCV.inc} {$I OpenCV.inc}
unit uOCVTypes; unit ocv.comp.Types;
{$ENDIF} {$ENDIF}
interface interface
@ -220,7 +220,8 @@ Type
TOnOcvNotifyCollectionItem = procedure(PrevOperation, Operation, NextOperation: TObject; const IplImage: IocvImage; TOnOcvNotifyCollectionItem = procedure(PrevOperation, Operation, NextOperation: TObject; const IplImage: IocvImage;
Var ContinueTransform: Boolean) of object; Var ContinueTransform: Boolean) of object;
TOnOcvNotify = procedure(Sender: TObject; const IplImage: IocvImage) of object; TOnOcvNotify = procedure(Sender: TObject; Var IplImage: IocvImage) of object;
TOnOcvAfterViewPaint = procedure(Sender: TObject; const IplImage: IocvImage) of object;
TOnOcvAfterTransform = TOnOcvNotify; TOnOcvAfterTransform = TOnOcvNotify;
TOnOcvBeforeTransform = procedure(Sender: TObject; const IplImage: IocvImage; Var ContinueTransform: Boolean) of object; TOnOcvBeforeTransform = procedure(Sender: TObject; const IplImage: IocvImage; Var ContinueTransform: Boolean) of object;
TOnOcvContour = procedure(Sender: TObject; const IplImage: IocvImage; const ContourCount: Integer; const Contours: pCvSeq) TOnOcvContour = procedure(Sender: TObject; const IplImage: IocvImage; const ContourCount: Integer; const Contours: pCvSeq)
@ -311,8 +312,19 @@ Type
property VideoSource: IocvDataSource Read FocvVideoSource write SetOpenCVVideoSource; property VideoSource: IocvDataSource Read FocvVideoSource write SetOpenCVVideoSource;
end; end;
// Haar cascade types
TocvHaarCascadeType = (hcEye, hcEyeTreeEyeGlasses, hcFrontalFaceAlt, hcFrontalFaceAlt2, hcFrontalFaceAltTree,
hcFrontalFaceDefaut, hcFullBody, hcLeftEye2Splits, hcLowerBody, hcMcsEyePairBig, hcMcsEyePairSmall, hcMcsLeftEar,
hcMcsLeftEye, hcMcsMouth, hcMcsNose, hcMcsRightEar, hcMcsRightEye, hcMcsUpperBody, hcProfileFace, hcRightEye2Splits, hcSmile,
hcUpperBody, hcPlateNumberRus);
TocvHaarCascadeFlag = (HAAR_DO_CANNY_PRUNING, HAAR_SCALE_IMAGE, HAAR_FIND_BIGGEST_OBJECT, HAAR_DO_ROUGH_SEARCH);
TocvHaarCascadeFlagSet = set of TocvHaarCascadeFlag;
function HaarSetToFlag(const CascadeFlags: TocvHaarCascadeFlagSet): Integer;
function ocvRect(Left, Top, Right, Bottom: Integer): TocvRect; function ocvRect(Left, Top, Right, Bottom: Integer): TocvRect;
function ocvRectCenter(cX, cY, Width, Height: Integer): TocvRect; function ocvRectCenter(cX, cY, Width, Height: Integer): TocvRect;
function cvRect(const oRect: TocvRect): TCvRect;
procedure GetRGBValue(const AColor: TColor; var r, g, b: byte); procedure GetRGBValue(const AColor: TColor; var r, g, b: byte);
function ColorToCvRGB(const Color: TColor): TCvScalar; function ColorToCvRGB(const Color: TColor): TCvScalar;
@ -322,7 +334,30 @@ const
implementation implementation
uses ocv.imgproc_c, ocv.imgproc.types_c, ocv.highgui_c; uses
ocv.imgproc_c,
ocv.imgproc.types_c,
ocv.highgui_c;
function cvRect(const oRect: TocvRect): TCvRect;
begin
Result := ocv.core.types_c.cvRect(oRect.Left, oRect.Top, oRect.Width, oRect.Height);
end;
function HaarSetToFlag(const CascadeFlags: TocvHaarCascadeFlagSet): Integer;
Var
i: TocvHaarCascadeFlag;
j: Integer;
begin
Result := 0;
j := 1;
for i := HAAR_DO_CANNY_PRUNING to HAAR_DO_ROUGH_SEARCH do
begin
if i in CascadeFlags then
Result := Result or j;
j := j * 2;
end;
end;
function ocvRect(Left, Top, Right, Bottom: Integer): TocvRect; function ocvRect(Left, Top, Right, Bottom: Integer): TocvRect;
begin begin

View File

@ -1,4 +1,4 @@
unit uOCVVideoWriter; unit ocv.comp.VideoWriter;
interface interface
@ -9,7 +9,7 @@ Uses
ocv.core_c, ocv.core_c,
ocv.core.types_c, ocv.core.types_c,
ocv.imgproc_c, ocv.imgproc_c,
uOCVTypes; ocv.comp.Types;
Type Type

View File

@ -23,7 +23,7 @@
{$IFNDEF CLR} {$IFNDEF CLR}
{$I OpenCV.inc} {$I OpenCV.inc}
unit uOCVView; unit ocv.comp.View;
{$ENDIF} {$ENDIF}
interface interface
@ -44,7 +44,7 @@ uses
Controls, Controls,
Graphics, Graphics,
{$ENDIF VER6P} {$ENDIF VER6P}
uOCVTypes, ocv.comp.Types,
ocv.core.types_c, System.SyncObjs; ocv.core.types_c, System.SyncObjs;
type type
@ -53,7 +53,7 @@ type
end; end;
TPersistentRect = class(TPersistent) TocvPersistentRect = class(TPersistent)
private private
FRect: TRect; FRect: TRect;
FOnChange: TNotifyEvent; FOnChange: TNotifyEvent;
@ -81,7 +81,7 @@ type
FocvVideoSource: IocvDataSource; FocvVideoSource: IocvDataSource;
FImage: IocvImage; FImage: IocvImage;
FLock: TCriticalSection; FLock: TCriticalSection;
FDrawRect: TPersistentRect; FDrawRect: TocvPersistentRect;
FEnabled: Boolean; FEnabled: Boolean;
procedure SetOpenCVVideoSource(const Value: IocvDataSource); procedure SetOpenCVVideoSource(const Value: IocvDataSource);
function GetImage: IocvImage; function GetImage: IocvImage;
@ -100,7 +100,7 @@ type
property Image: IocvImage read GetImage; property Image: IocvImage read GetImage;
published published
property VideoSource: IocvDataSource Read FocvVideoSource write SetOpenCVVideoSource; property VideoSource: IocvDataSource Read FocvVideoSource write SetOpenCVVideoSource;
property DrawRect: TPersistentRect read FDrawRect write FDrawRect; property DrawRect: TocvPersistentRect read FDrawRect write FDrawRect;
property Enabled: Boolean read FEnabled Write FEnabled default false; property Enabled: Boolean read FEnabled Write FEnabled default false;
end; end;
@ -108,7 +108,7 @@ type
private private
FocvVideoSource: IocvDataSource; FocvVideoSource: IocvDataSource;
FImage: IocvImage; FImage: IocvImage;
FOnAfterPaint: TOnOcvNotify; FOnAfterPaint: TOnOcvAfterViewPaint;
FOnBeforePaint: TOnOcvNotify; FOnBeforePaint: TOnOcvNotify;
FCanvas: TCanvas; FCanvas: TCanvas;
FStretch: Boolean; FStretch: Boolean;
@ -135,7 +135,7 @@ type
property Center: Boolean read FCenter write FCenter default false; property Center: Boolean read FCenter write FCenter default false;
property Frames: TocvViewFrames Read FFrames Write FFrames; property Frames: TocvViewFrames Read FFrames Write FFrames;
property Align; property Align;
property OnAfterPaint: TOnOcvNotify read FOnAfterPaint write FOnAfterPaint; property OnAfterPaint: TOnOcvAfterViewPaint read FOnAfterPaint write FOnAfterPaint;
property OnBeforePaint: TOnOcvNotify read FOnBeforePaint write FOnBeforePaint; property OnBeforePaint: TOnOcvNotify read FOnBeforePaint write FOnBeforePaint;
property OnEnter; property OnEnter;
property OnExit; property OnExit;
@ -321,7 +321,7 @@ constructor TocvViewFrame.Create(Collection: TCollection);
begin begin
inherited; inherited;
FLock := TCriticalSection.Create; FLock := TCriticalSection.Create;
FDrawRect := TPersistentRect.Create; FDrawRect := TocvPersistentRect.Create;
FDrawRect.FRect.Width := 50; FDrawRect.FRect.Width := 50;
FDrawRect.FRect.Height := 50; FDrawRect.FRect.Height := 50;
FEnabled := false; FEnabled := false;
@ -402,10 +402,10 @@ end;
{TPersistentRect} {TPersistentRect}
procedure TPersistentRect.AssignTo(Dest: TPersistent); procedure TocvPersistentRect.AssignTo(Dest: TPersistent);
begin begin
if Dest is TPersistentRect then if Dest is TocvPersistentRect then
with TPersistentRect(Dest) do with TocvPersistentRect(Dest) do
begin begin
AsRect := Self.AsRect; AsRect := Self.AsRect;
end end
@ -413,18 +413,18 @@ begin
inherited AssignTo(Dest); inherited AssignTo(Dest);
end; end;
constructor TPersistentRect.Create; constructor TocvPersistentRect.Create;
begin begin
inherited; inherited;
FOnChange := nil; FOnChange := nil;
end; end;
function TPersistentRect.GetRect: TRect; function TocvPersistentRect.GetRect: TRect;
begin begin
Result := FRect; Result := FRect;
end; end;
procedure TPersistentRect.SetRect(const Value: TRect); procedure TocvPersistentRect.SetRect(const Value: TRect);
begin begin
FRect.Left := Value.Left; FRect.Left := Value.Left;
FRect.Top := Value.Top; FRect.Top := Value.Top;
@ -434,28 +434,28 @@ begin
FOnChange(Self); FOnChange(Self);
end; end;
procedure TPersistentRect.SetRectBottom(const Value: integer); procedure TocvPersistentRect.SetRectBottom(const Value: integer);
begin begin
FRect.Bottom := Value; FRect.Bottom := Value;
if Assigned(FOnChange) then if Assigned(FOnChange) then
FOnChange(Self); FOnChange(Self);
end; end;
procedure TPersistentRect.SetRectLeft(const Value: integer); procedure TocvPersistentRect.SetRectLeft(const Value: integer);
begin begin
FRect.Left := Value; FRect.Left := Value;
if Assigned(FOnChange) then if Assigned(FOnChange) then
FOnChange(Self); FOnChange(Self);
end; end;
procedure TPersistentRect.SetRectRight(const Value: integer); procedure TocvPersistentRect.SetRectRight(const Value: integer);
begin begin
FRect.Right := Value; FRect.Right := Value;
if Assigned(FOnChange) then if Assigned(FOnChange) then
FOnChange(Self); FOnChange(Self);
end; end;
procedure TPersistentRect.SetRectTop(const Value: integer); procedure TocvPersistentRect.SetRectTop(const Value: integer);
begin begin
FRect.Top := Value; FRect.Top := Value;
if Assigned(FOnChange) then if Assigned(FOnChange) then

View File

@ -103,7 +103,7 @@ unit ocv.core.types_c;
interface interface
uses uses
Windows; WinApi.Windows;
const const
// Наименьшее число для которого выполняется условие 1.0+DBL_EPSILON <> 1.0 // Наименьшее число для которого выполняется условие 1.0+DBL_EPSILON <> 1.0

View File

@ -647,19 +647,22 @@ function cvCheckTermCriteria(criteria: TCvTermCriteria; default_eps: double; def
// * Arithmetic, logic and comparison operations * // * Arithmetic, logic and comparison operations *
// *************************************************************************************** // ***************************************************************************************
{dst(mask) = src1(mask) + src2(mask) {
dst(mask) = src1(mask) + src2(mask)
CVAPI(void) cvAdd( const pCvArr* src1, const pCvArr* src2, pCvArr* dst, CVAPI(void) cvAdd( const pCvArr* src1, const pCvArr* src2, pCvArr* dst,
const pCvArr* mask CV_DEFAULT(NULL)); const pCvArr* mask CV_DEFAULT(NULL));
} }
procedure cvAdd(const src1, src2: pIplImage; dst: pIplImage; const mask: pIplImage = nil); cdecl; procedure cvAdd(const src1, src2: pIplImage; dst: pIplImage; const mask: pIplImage = nil); cdecl;
{dst(mask) = src(mask) + value {
dst(mask) = src(mask) + value
CVAPI(void) cvAddS( const pCvArr* src, CvScalar value, pCvArr* dst, CVAPI(void) cvAddS( const pCvArr* src, CvScalar value, pCvArr* dst,
const pCvArr* mask CV_DEFAULT(NULL)); const pCvArr* mask CV_DEFAULT(NULL));
} }
procedure cvAddS(const src: pIplImage; value: TCvScalar; dst: pIplImage; const mask: pIplImage = nil); cdecl; procedure cvAddS(const src: pIplImage; value: TCvScalar; dst: pIplImage; const mask: pIplImage = nil); cdecl;
{dst(mask) = src1(mask) - src2(mask) {
dst(mask) = src1(mask) - src2(mask)
CVAPI(void) cvSub( const pCvArr* src1, const pCvArr* src2, pCvArr* dst, CVAPI(void) cvSub( const pCvArr* src1, const pCvArr* src2, pCvArr* dst,
const pCvArr* mask CV_DEFAULT(NULL)); const pCvArr* mask CV_DEFAULT(NULL));
} }

View File

@ -1,87 +1,87 @@
// --------------------------------- OpenCV license.txt --------------------------- // --------------------------------- OpenCV license.txt ---------------------------
// IMPORTANT: READ BEFORE DOWNLOADING, COPYING, INSTALLING OR USING. // IMPORTANT: READ BEFORE DOWNLOADING, COPYING, INSTALLING OR USING.
// //
// By downloading, copying, installing or using the software you agree to this license. // By downloading, copying, installing or using the software you agree to this license.
// If you do not agree to this license, do not download, install, // If you do not agree to this license, do not download, install,
// copy or use the software. // copy or use the software.
// //
// //
// License Agreement // License Agreement
// For Open Source Computer Vision Library // For Open Source Computer Vision Library
// //
// Copyright (C) 2000-2008, Intel Corporation, all rights reserved. // Copyright (C) 2000-2008, Intel Corporation, all rights reserved.
// Copyright (C) 2009, Willow Garage Inc., all rights reserved. // Copyright (C) 2009, Willow Garage Inc., all rights reserved.
// Third party copyrights are property of their respective owners. // Third party copyrights are property of their respective owners.
// //
// Redistribution and use in source and binary forms, with or without modification, // Redistribution and use in source and binary forms, with or without modification,
// are permitted provided that the following conditions are met: // are permitted provided that the following conditions are met:
// //
// * Redistribution's of source code must retain the above copyright notice, // * Redistribution's of source code must retain the above copyright notice,
// this list of conditions and the following disclaimer. // this list of conditions and the following disclaimer.
// //
// * Redistribution's in binary form must reproduce the above copyright notice, // * Redistribution's in binary form must reproduce the above copyright notice,
// this list of conditions and the following disclaimer in the documentation // this list of conditions and the following disclaimer in the documentation
// and/or other materials provided with the distribution. // and/or other materials provided with the distribution.
// //
// * The name of the copyright holders may not be used to endorse or promote products // * The name of the copyright holders may not be used to endorse or promote products
// derived from this software without specific prior written permission. // derived from this software without specific prior written permission.
// //
// This software is provided by the copyright holders and contributors "as is" and // This software is provided by the copyright holders and contributors "as is" and
// any express or implied warranties, including, but not limited to, the implied // any express or implied warranties, including, but not limited to, the implied
// warranties of merchantability and fitness for a particular purpose are disclaimed. // warranties of merchantability and fitness for a particular purpose are disclaimed.
// In no event shall the Intel Corporation or contributors be liable for any direct, // In no event shall the Intel Corporation or contributors be liable for any direct,
// indirect, incidental, special, exemplary, or consequential damages // indirect, incidental, special, exemplary, or consequential damages
// (including, but not limited to, procurement of substitute goods or services; // (including, but not limited to, procurement of substitute goods or services;
// loss of use, data, or profits; or business interruption) however caused // loss of use, data, or profits; or business interruption) however caused
// and on any theory of liability, whether in contract, strict liability, // and on any theory of liability, whether in contract, strict liability,
// or tort (including negligence or otherwise) arising in any way out of // or tort (including negligence or otherwise) arising in any way out of
// the use of this software, even if advised of the possibility of such damage. // the use of this software, even if advised of the possibility of such damage.
//************************************************************************************************** // **************************************************************************************************
// Project Delphi-OpenCV // Project Delphi-OpenCV
// ************************************************************************************************** // **************************************************************************************************
// Contributor: // Contributor:
// Laentir Valetov // Laentir Valetov
// email:laex@bk.ru // email:laex@bk.ru
// Mikhail Grigorev // Mikhail Grigorev
// email:sleuthound@gmail.com // email:sleuthound@gmail.com
// ************************************************************************************************** // **************************************************************************************************
// You may retrieve the latest version of this file at the GitHub, // You may retrieve the latest version of this file at the GitHub,
// located at git://github.com/Laex/Delphi-OpenCV.git // located at git://github.com/Laex/Delphi-OpenCV.git
// ************************************************************************************************** // **************************************************************************************************
// License: // License:
// The contents of this file are subject to the Mozilla Public License Version 1.1 (the "License"); // The contents of this file are 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 // 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/ // License at http://www.mozilla.org/MPL/
// //
// Software distributed under the License is distributed on an "AS IS" basis, WITHOUT WARRANTY OF // 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 // ANY KIND, either express or implied. See the License for the specific language governing rights
// and limitations under the License. // and limitations under the License.
// //
// Alternatively, the contents of this file may be used under the terms of the // Alternatively, the contents of this file may be used under the terms of the
// GNU Lesser General Public License (the "LGPL License"), in which case the // GNU Lesser General Public License (the "LGPL License"), in which case the
// provisions of the LGPL License are applicable instead of those above. // provisions of the LGPL License are applicable instead of those above.
// If you wish to allow use of your version of this file only under the terms // If you wish to allow use of your version of this file only under the terms
// of the LGPL License and not to allow others to use your version of this file // of the LGPL License and not to allow others to use your version of this file
// under the MPL, indicate your decision by deleting the provisions above and // under the MPL, indicate your decision by deleting the provisions above and
// replace them with the notice and other provisions required by the LGPL // replace them with the notice and other provisions required by the LGPL
// License. If you do not delete the provisions above, a recipient may use // License. If you do not delete the provisions above, a recipient may use
// your version of this file under either the MPL or the LGPL License. // your version of this file under either the MPL or the LGPL License.
// //
// For more information about the LGPL: http://www.gnu.org/copyleft/lesser.html // For more information about the LGPL: http://www.gnu.org/copyleft/lesser.html
// ************************************************************************************************** // **************************************************************************************************
// Warning: Using Delphi XE3 syntax! // Warning: Using Delphi XE3 syntax!
// ************************************************************************************************** // **************************************************************************************************
// The Initial Developer of the Original Code: // The Initial Developer of the Original Code:
// OpenCV: open source computer vision library // OpenCV: open source computer vision library
// Homepage: http://ocv.org // Homepage: http://ocv.org
// Online docs: http://docs.ocv.org // Online docs: http://docs.ocv.org
// Q&A forum: http://answers.ocv.org // Q&A forum: http://answers.ocv.org
// Dev zone: http://code.ocv.org // Dev zone: http://code.ocv.org
// ************************************************************************************************** // **************************************************************************************************
// Original file: // Original file:
// opencv\modules\imgproc\include\opencv2\imgproc\types_c.h // opencv\modules\imgproc\include\opencv2\imgproc\types_c.h
// ************************************************************************************************* // *************************************************************************************************
{$IFDEF DEBUG} {$IFDEF DEBUG}
{$A8,B-,C+,D+,E-,F-,G+,H+,I+,J-,K-,L+,M-,N+,O-,P+,Q+,R+,S-,T-,U-,V+,W+,X+,Y+,Z1} {$A8,B-,C+,D+,E-,F-,G+,H+,I+,J-,K-,L+,M-,N+,O-,P+,Q+,R+,S-,T-,U-,V+,W+,X+,Y+,Z1}
@ -102,105 +102,105 @@ uses
Windows, Windows,
ocv.core.types_c; ocv.core.types_c;
(* Connected component structure *) (*Connected component structure*)
type type
pCvConnectedComp = ^TCvConnectedComp; pCvConnectedComp = ^TCvConnectedComp;
TCvConnectedComp = record TCvConnectedComp = record
area: Double; (* area of the connected component *) area: Double; (*area of the connected component*)
value: TCvScalar; (* average color of the connected component *) value: TCvScalar; (*average color of the connected component*)
rect: TCvRect; (* ROI of the component *) rect: TCvRect; (*ROI of the component*)
contour: ^TCvSeq; (* optional component boundary *) contour: ^TCvSeq; (*optional component boundary*)
end; end;
(* Image smooth methods *) (*Image smooth methods*)
const const
CV_BLUR_NO_SCALE = 0; CV_BLUR_NO_SCALE = 0;
CV_BLUR = 1; CV_BLUR = 1;
CV_GAUSSIAN = 2; CV_GAUSSIAN = 2;
CV_MEDIAN = 3; CV_MEDIAN = 3;
CV_BILATERAL = 4; CV_BILATERAL = 4;
(* Filters used in pyramid decomposition *) (*Filters used in pyramid decomposition*)
CV_GAUSSIAN_5x5 = 7; CV_GAUSSIAN_5x5 = 7;
(* Special filters *) (*Special filters*)
CV_SCHARR = -1; CV_SCHARR = -1;
CV_MAX_SOBEL_KSIZE = 7; CV_MAX_SOBEL_KSIZE = 7;
(* Constants for color conversion *) (*Constants for color conversion*)
CV_BGR2BGRA = 0; CV_BGR2BGRA = 0;
CV_RGB2RGBA = CV_BGR2BGRA; CV_RGB2RGBA = CV_BGR2BGRA;
CV_BGRA2BGR = 1; CV_BGRA2BGR = 1;
CV_RGBA2RGB = CV_BGRA2BGR; CV_RGBA2RGB = CV_BGRA2BGR;
CV_BGR2RGBA = 2; CV_BGR2RGBA = 2;
CV_RGB2BGRA = CV_BGR2RGBA; CV_RGB2BGRA = CV_BGR2RGBA;
CV_RGBA2BGR = 3; CV_RGBA2BGR = 3;
CV_BGRA2RGB = CV_RGBA2BGR; CV_BGRA2RGB = CV_RGBA2BGR;
CV_BGR2RGB = 4; CV_BGR2RGB = 4;
CV_RGB2BGR = CV_BGR2RGB; CV_RGB2BGR = CV_BGR2RGB;
CV_BGRA2RGBA = 5; CV_BGRA2RGBA = 5;
CV_RGBA2BGRA = CV_BGRA2RGBA; CV_RGBA2BGRA = CV_BGRA2RGBA;
CV_BGR2GRAY = 6; CV_BGR2GRAY = 6;
CV_RGB2GRAY = 7; CV_RGB2GRAY = 7;
CV_GRAY2BGR = 8; CV_GRAY2BGR = 8;
CV_GRAY2RGB = CV_GRAY2BGR; CV_GRAY2RGB = CV_GRAY2BGR;
CV_GRAY2BGRA = 9; CV_GRAY2BGRA = 9;
CV_GRAY2RGBA = CV_GRAY2BGRA; CV_GRAY2RGBA = CV_GRAY2BGRA;
CV_BGRA2GRAY = 10; CV_BGRA2GRAY = 10;
CV_RGBA2GRAY = 11; CV_RGBA2GRAY = 11;
CV_BGR2BGR565 = 12; CV_BGR2BGR565 = 12;
CV_RGB2BGR565 = 13; CV_RGB2BGR565 = 13;
CV_BGR5652BGR = 14; CV_BGR5652BGR = 14;
CV_BGR5652RGB = 15; CV_BGR5652RGB = 15;
CV_BGRA2BGR565 = 16; CV_BGRA2BGR565 = 16;
CV_RGBA2BGR565 = 17; CV_RGBA2BGR565 = 17;
CV_BGR5652BGRA = 18; CV_BGR5652BGRA = 18;
CV_BGR5652RGBA = 19; CV_BGR5652RGBA = 19;
CV_GRAY2BGR565 = 20; CV_GRAY2BGR565 = 20;
CV_BGR5652GRAY = 21; CV_BGR5652GRAY = 21;
CV_BGR2BGR555 = 22; CV_BGR2BGR555 = 22;
CV_RGB2BGR555 = 23; CV_RGB2BGR555 = 23;
CV_BGR5552BGR = 24; CV_BGR5552BGR = 24;
CV_BGR5552RGB = 25; CV_BGR5552RGB = 25;
CV_BGRA2BGR555 = 26; CV_BGRA2BGR555 = 26;
CV_RGBA2BGR555 = 27; CV_RGBA2BGR555 = 27;
CV_BGR5552BGRA = 28; CV_BGR5552BGRA = 28;
CV_BGR5552RGBA = 29; CV_BGR5552RGBA = 29;
CV_GRAY2BGR555 = 30; CV_GRAY2BGR555 = 30;
CV_BGR5552GRAY = 31; CV_BGR5552GRAY = 31;
CV_BGR2XYZ = 32; CV_BGR2XYZ = 32;
CV_RGB2XYZ = 33; CV_RGB2XYZ = 33;
CV_XYZ2BGR = 34; CV_XYZ2BGR = 34;
CV_XYZ2RGB = 35; CV_XYZ2RGB = 35;
CV_BGR2YCrCb = 36; CV_BGR2YCrCb = 36;
CV_RGB2YCrCb = 37; CV_RGB2YCrCb = 37;
CV_YCrCb2BGR = 38; CV_YCrCb2BGR = 38;
CV_YCrCb2RGB = 39; CV_YCrCb2RGB = 39;
CV_BGR2HSV = 40; CV_BGR2HSV = 40;
CV_RGB2HSV = 41; CV_RGB2HSV = 41;
CV_BGR2Lab = 44; CV_BGR2Lab = 44;
CV_RGB2Lab = 45; CV_RGB2Lab = 45;
CV_BayerBG2BGR = 46; CV_BayerBG2BGR = 46;
CV_BayerGB2BGR = 47; CV_BayerGB2BGR = 47;
CV_BayerRG2BGR = 48; CV_BayerRG2BGR = 48;
CV_BayerGR2BGR = 49; CV_BayerGR2BGR = 49;
CV_BayerBG2RGB = CV_BayerRG2BGR; CV_BayerBG2RGB = CV_BayerRG2BGR;
CV_BayerGB2RGB = CV_BayerGR2BGR; CV_BayerGB2RGB = CV_BayerGR2BGR;
CV_BayerRG2RGB = CV_BayerBG2BGR; CV_BayerRG2RGB = CV_BayerBG2BGR;
CV_BayerGR2RGB = CV_BayerGB2BGR; CV_BayerGR2RGB = CV_BayerGB2BGR;
CV_BGR2Luv = 50; CV_BGR2Luv = 50;
CV_RGB2Luv = 51; CV_RGB2Luv = 51;
CV_BGR2HLS = 52; CV_BGR2HLS = 52;
CV_RGB2HLS = 53; CV_RGB2HLS = 53;
CV_HSV2BGR = 54; CV_HSV2BGR = 54;
CV_HSV2RGB = 55; CV_HSV2RGB = 55;
CV_Lab2BGR = 56; CV_Lab2BGR = 56;
CV_Lab2RGB = 57; CV_Lab2RGB = 57;
CV_Luv2BGR = 58; CV_Luv2BGR = 58;
CV_Luv2RGB = 59; CV_Luv2RGB = 59;
CV_HLS2BGR = 60; CV_HLS2BGR = 60;
CV_HLS2RGB = 61; CV_HLS2RGB = 61;
CV_BayerBG2BGR_VNG = 62; CV_BayerBG2BGR_VNG = 62;
CV_BayerGB2BGR_VNG = 63; CV_BayerGB2BGR_VNG = 63;
CV_BayerRG2BGR_VNG = 64; CV_BayerRG2BGR_VNG = 64;
@ -209,76 +209,76 @@ const
CV_BayerGB2RGB_VNG = CV_BayerGR2BGR_VNG; CV_BayerGB2RGB_VNG = CV_BayerGR2BGR_VNG;
CV_BayerRG2RGB_VNG = CV_BayerBG2BGR_VNG; CV_BayerRG2RGB_VNG = CV_BayerBG2BGR_VNG;
CV_BayerGR2RGB_VNG = CV_BayerGB2BGR_VNG; CV_BayerGR2RGB_VNG = CV_BayerGB2BGR_VNG;
CV_BGR2HSV_FULL = 66; CV_BGR2HSV_FULL = 66;
CV_RGB2HSV_FULL = 67; CV_RGB2HSV_FULL = 67;
CV_BGR2HLS_FULL = 68; CV_BGR2HLS_FULL = 68;
CV_RGB2HLS_FULL = 69; CV_RGB2HLS_FULL = 69;
CV_HSV2BGR_FULL = 70; CV_HSV2BGR_FULL = 70;
CV_HSV2RGB_FULL = 71; CV_HSV2RGB_FULL = 71;
CV_HLS2BGR_FULL = 72; CV_HLS2BGR_FULL = 72;
CV_HLS2RGB_FULL = 73; CV_HLS2RGB_FULL = 73;
CV_LBGR2Lab = 74; CV_LBGR2Lab = 74;
CV_LRGB2Lab = 75; CV_LRGB2Lab = 75;
CV_LBGR2Luv = 76; CV_LBGR2Luv = 76;
CV_LRGB2Luv = 77; CV_LRGB2Luv = 77;
CV_Lab2LBGR = 78; CV_Lab2LBGR = 78;
CV_Lab2LRGB = 79; CV_Lab2LRGB = 79;
CV_Luv2LBGR = 80; CV_Luv2LBGR = 80;
CV_Luv2LRGB = 81; CV_Luv2LRGB = 81;
CV_BGR2YUV = 82; CV_BGR2YUV = 82;
CV_RGB2YUV = 83; CV_RGB2YUV = 83;
CV_YUV2BGR = 84; CV_YUV2BGR = 84;
CV_YUV2RGB = 85; CV_YUV2RGB = 85;
CV_BayerBG2GRAY = 86; CV_BayerBG2GRAY = 86;
CV_BayerGB2GRAY = 87; CV_BayerGB2GRAY = 87;
CV_BayerRG2GRAY = 88; CV_BayerRG2GRAY = 88;
CV_BayerGR2GRAY = 89; CV_BayerGR2GRAY = 89;
// YUV 4:2:0 formats family; // YUV 4:2:0 formats family;
CV_YUV2RGB_NV12 = 90; CV_YUV2RGB_NV12 = 90;
CV_YUV2BGR_NV12 = 91; CV_YUV2BGR_NV12 = 91;
CV_YUV2RGB_NV21 = 92; CV_YUV2RGB_NV21 = 92;
CV_YUV2BGR_NV21 = 93; CV_YUV2BGR_NV21 = 93;
CV_YUV420sp2RGB = CV_YUV2RGB_NV21; CV_YUV420sp2RGB = CV_YUV2RGB_NV21;
CV_YUV420sp2BGR = CV_YUV2BGR_NV21; CV_YUV420sp2BGR = CV_YUV2BGR_NV21;
CV_YUV2RGBA_NV12 = 94; CV_YUV2RGBA_NV12 = 94;
CV_YUV2BGRA_NV12 = 95; CV_YUV2BGRA_NV12 = 95;
CV_YUV2RGBA_NV21 = 96; CV_YUV2RGBA_NV21 = 96;
CV_YUV2BGRA_NV21 = 97; CV_YUV2BGRA_NV21 = 97;
CV_YUV420sp2RGBA = CV_YUV2RGBA_NV21; CV_YUV420sp2RGBA = CV_YUV2RGBA_NV21;
CV_YUV420sp2BGRA = CV_YUV2BGRA_NV21; CV_YUV420sp2BGRA = CV_YUV2BGRA_NV21;
CV_YUV2RGB_YV12 = 98; CV_YUV2RGB_YV12 = 98;
CV_YUV2BGR_YV12 = 99; CV_YUV2BGR_YV12 = 99;
CV_YUV2RGB_IYUV = 100; CV_YUV2RGB_IYUV = 100;
CV_YUV2BGR_IYUV = 101; CV_YUV2BGR_IYUV = 101;
CV_YUV2RGB_I420 = CV_YUV2RGB_IYUV; CV_YUV2RGB_I420 = CV_YUV2RGB_IYUV;
CV_YUV2BGR_I420 = CV_YUV2BGR_IYUV; CV_YUV2BGR_I420 = CV_YUV2BGR_IYUV;
CV_YUV420p2RGB = CV_YUV2RGB_YV12; CV_YUV420p2RGB = CV_YUV2RGB_YV12;
CV_YUV420p2BGR = CV_YUV2BGR_YV12; CV_YUV420p2BGR = CV_YUV2BGR_YV12;
CV_YUV2RGBA_YV12 = 102; CV_YUV2RGBA_YV12 = 102;
CV_YUV2BGRA_YV12 = 103; CV_YUV2BGRA_YV12 = 103;
CV_YUV2RGBA_IYUV = 104; CV_YUV2RGBA_IYUV = 104;
CV_YUV2BGRA_IYUV = 105; CV_YUV2BGRA_IYUV = 105;
CV_YUV2RGBA_I420 = CV_YUV2RGBA_IYUV; CV_YUV2RGBA_I420 = CV_YUV2RGBA_IYUV;
CV_YUV2BGRA_I420 = CV_YUV2BGRA_IYUV; CV_YUV2BGRA_I420 = CV_YUV2BGRA_IYUV;
CV_YUV420p2RGBA = CV_YUV2RGBA_YV12; CV_YUV420p2RGBA = CV_YUV2RGBA_YV12;
CV_YUV420p2BGRA = CV_YUV2BGRA_YV12; CV_YUV420p2BGRA = CV_YUV2BGRA_YV12;
CV_YUV2GRAY_420 = 106; CV_YUV2GRAY_420 = 106;
CV_YUV2GRAY_NV21 = CV_YUV2GRAY_420; CV_YUV2GRAY_NV21 = CV_YUV2GRAY_420;
CV_YUV2GRAY_NV12 = CV_YUV2GRAY_420; CV_YUV2GRAY_NV12 = CV_YUV2GRAY_420;
CV_YUV2GRAY_YV12 = CV_YUV2GRAY_420; CV_YUV2GRAY_YV12 = CV_YUV2GRAY_420;
CV_YUV2GRAY_IYUV = CV_YUV2GRAY_420; CV_YUV2GRAY_IYUV = CV_YUV2GRAY_420;
CV_YUV2GRAY_I420 = CV_YUV2GRAY_420; CV_YUV2GRAY_I420 = CV_YUV2GRAY_420;
CV_YUV420sp2GRAY = CV_YUV2GRAY_420; CV_YUV420sp2GRAY = CV_YUV2GRAY_420;
CV_YUV420p2GRAY = CV_YUV2GRAY_420; CV_YUV420p2GRAY = CV_YUV2GRAY_420;
// YUV 4:2:2 formats family; // YUV 4:2:2 formats family;
CV_YUV2RGB_UYVY = 107; CV_YUV2RGB_UYVY = 107;
CV_YUV2BGR_UYVY = 108; CV_YUV2BGR_UYVY = 108;
// CV_YUV2RGB_VYUY = 109; // CV_YUV2RGB_VYUY = 109;
// CV_YUV2BGR_VYUY = 110; // CV_YUV2BGR_VYUY = 110;
CV_YUV2RGB_Y422 = CV_YUV2RGB_UYVY; CV_YUV2RGB_Y422 = CV_YUV2RGB_UYVY;
CV_YUV2BGR_Y422 = CV_YUV2BGR_UYVY; CV_YUV2BGR_Y422 = CV_YUV2BGR_UYVY;
CV_YUV2RGB_UYNV = CV_YUV2RGB_UYVY; CV_YUV2RGB_UYNV = CV_YUV2RGB_UYVY;
CV_YUV2BGR_UYNV = CV_YUV2BGR_UYVY; CV_YUV2BGR_UYNV = CV_YUV2BGR_UYVY;
CV_YUV2RGBA_UYVY = 111; CV_YUV2RGBA_UYVY = 111;
CV_YUV2BGRA_UYVY = 112; CV_YUV2BGRA_UYVY = 112;
// CV_YUV2RGBA_VYUY = 113; // CV_YUV2RGBA_VYUY = 113;
@ -287,14 +287,14 @@ const
CV_YUV2BGRA_Y422 = CV_YUV2BGRA_UYVY; CV_YUV2BGRA_Y422 = CV_YUV2BGRA_UYVY;
CV_YUV2RGBA_UYNV = CV_YUV2RGBA_UYVY; CV_YUV2RGBA_UYNV = CV_YUV2RGBA_UYVY;
CV_YUV2BGRA_UYNV = CV_YUV2BGRA_UYVY; CV_YUV2BGRA_UYNV = CV_YUV2BGRA_UYVY;
CV_YUV2RGB_YUY2 = 115; CV_YUV2RGB_YUY2 = 115;
CV_YUV2BGR_YUY2 = 116; CV_YUV2BGR_YUY2 = 116;
CV_YUV2RGB_YVYU = 117; CV_YUV2RGB_YVYU = 117;
CV_YUV2BGR_YVYU = 118; CV_YUV2BGR_YVYU = 118;
CV_YUV2RGB_YUYV = CV_YUV2RGB_YUY2; CV_YUV2RGB_YUYV = CV_YUV2RGB_YUY2;
CV_YUV2BGR_YUYV = CV_YUV2BGR_YUY2; CV_YUV2BGR_YUYV = CV_YUV2BGR_YUY2;
CV_YUV2RGB_YUNV = CV_YUV2RGB_YUY2; CV_YUV2RGB_YUNV = CV_YUV2RGB_YUY2;
CV_YUV2BGR_YUNV = CV_YUV2BGR_YUY2; CV_YUV2BGR_YUNV = CV_YUV2BGR_YUY2;
CV_YUV2RGBA_YUY2 = 119; CV_YUV2RGBA_YUY2 = 119;
CV_YUV2BGRA_YUY2 = 120; CV_YUV2BGRA_YUY2 = 120;
CV_YUV2RGBA_YVYU = 121; CV_YUV2RGBA_YVYU = 121;
@ -312,78 +312,78 @@ const
CV_YUV2GRAY_YUYV = CV_YUV2GRAY_YUY2; CV_YUV2GRAY_YUYV = CV_YUV2GRAY_YUY2;
CV_YUV2GRAY_YUNV = CV_YUV2GRAY_YUY2; CV_YUV2GRAY_YUNV = CV_YUV2GRAY_YUY2;
// alpha premultiplication; // alpha premultiplication;
CV_RGBA2mRGBA = 125; CV_RGBA2mRGBA = 125;
CV_mRGBA2RGBA = 126; CV_mRGBA2RGBA = 126;
CV_COLORCVT_MAX = 127; CV_COLORCVT_MAX = 127;
(* Sub-pixel interpolation methods *) (*Sub-pixel interpolation methods*)
CV_INTER_NN = 0; CV_INTER_NN = 0;
CV_INTER_LINEAR = 1; CV_INTER_LINEAR = 1;
CV_INTER_CUBIC = 2; CV_INTER_CUBIC = 2;
CV_INTER_AREA = 3; CV_INTER_AREA = 3;
CV_INTER_LANCZOS4 = 4; CV_INTER_LANCZOS4 = 4;
(* ... and other image warping flags *) (*... and other image warping flags*)
CV_WARP_FILL_OUTLIERS = 8; CV_WARP_FILL_OUTLIERS = 8;
CV_WARP_INVERSE_MAP = 16; CV_WARP_INVERSE_MAP = 16;
(* Shapes of a structuring element for morphological operations *) (*Shapes of a structuring element for morphological operations*)
CV_SHAPE_RECT = 0; CV_SHAPE_RECT = 0;
CV_SHAPE_CROSS = 1; CV_SHAPE_CROSS = 1;
CV_SHAPE_ELLIPSE = 2; CV_SHAPE_ELLIPSE = 2;
CV_SHAPE_CUSTOM = 100; CV_SHAPE_CUSTOM = 100;
(* Morphological operations *) (*Morphological operations*)
CV_MOP_ERODE = 0; CV_MOP_ERODE = 0;
CV_MOP_DILATE = 1; CV_MOP_DILATE = 1;
CV_MOP_OPEN = 2; CV_MOP_OPEN = 2;
CV_MOP_CLOSE = 3; CV_MOP_CLOSE = 3;
CV_MOP_GRADIENT = 4; CV_MOP_GRADIENT = 4;
CV_MOP_TOPHAT = 5; CV_MOP_TOPHAT = 5;
CV_MOP_BLACKHAT = 6; CV_MOP_BLACKHAT = 6;
(* Spatial and central moments *) (*Spatial and central moments*)
type type
pCvMoments = ^TCvMoments; pCvMoments = ^TCvMoments;
TCvMoments = record TCvMoments = record
m00, m10, m01, m20, m11, m02, m30, m21, m12, m03: Double; (* spatial moments *) m00, m10, m01, m20, m11, m02, m30, m21, m12, m03: Double; (*spatial moments*)
mu20, mu11, mu02, mu30, mu21, mu12, mu03: Double; (* central moments *) mu20, mu11, mu02, mu30, mu21, mu12, mu03: Double; (*central moments*)
inv_sqrt_m00: Double; (* m00 != 0 ? 1/sqrt(m00) : 0 *) inv_sqrt_m00: Double; (*m00 != 0 ? 1/sqrt(m00) : 0*)
end; end;
(* Hu invariants *) (*Hu invariants*)
type type
CvHuMoments = record CvHuMoments = record
hu1, hu2, hu3, hu4, hu5, hu6, hu7: Double; (* Hu invariants *) hu1, hu2, hu3, hu4, hu5, hu6, hu7: Double; (*Hu invariants*)
end; end;
(* Template matching methods *) (*Template matching methods*)
const const
CV_TM_SQDIFF = 0; CV_TM_SQDIFF = 0;
CV_TM_SQDIFF_NORMED = 1; CV_TM_SQDIFF_NORMED = 1;
CV_TM_CCORR = 2; CV_TM_CCORR = 2;
CV_TM_CCORR_NORMED = 3; CV_TM_CCORR_NORMED = 3;
CV_TM_CCOEFF = 4; CV_TM_CCOEFF = 4;
CV_TM_CCOEFF_NORMED = 5; CV_TM_CCOEFF_NORMED = 5;
type type
CvDistanceFunction = function(var a: Single; var b: Single; user_param: Pointer): Single; CDECL; CvDistanceFunction = function(var a: Single; var b: Single; user_param: Pointer): Single; CDECL;
const const
(* Contour retrieval modes *) (*Contour retrieval modes*)
CV_RETR_EXTERNAL = 0; CV_RETR_EXTERNAL = 0;
CV_RETR_LIST = 1; CV_RETR_LIST = 1;
CV_RETR_CCOMP = 2; CV_RETR_CCOMP = 2;
CV_RETR_TREE = 3; CV_RETR_TREE = 3;
CV_RETR_FLOODFILL = 4; CV_RETR_FLOODFILL = 4;
(* Contour approximation methods *) (*Contour approximation methods*)
CV_CHAIN_CODE = 0; CV_CHAIN_CODE = 0;
CV_CHAIN_APPROX_NONE = 1; CV_CHAIN_APPROX_NONE = 1;
CV_CHAIN_APPROX_SIMPLE = 2; CV_CHAIN_APPROX_SIMPLE = 2;
CV_CHAIN_APPROX_TC89_L1 = 3; CV_CHAIN_APPROX_TC89_L1 = 3;
CV_CHAIN_APPROX_TC89_KCOS = 4; CV_CHAIN_APPROX_TC89_KCOS = 4;
CV_LINK_RUNS = 5; CV_LINK_RUNS = 5;
(* (*
Internal structure that is used for sequental retrieving contours from the image. Internal structure that is used for sequental retrieving contours from the image.
@ -391,26 +391,26 @@ const
*) *)
type type
// CvContourScanner = ^_CvContourScanner; // CvContourScanner = ^_CvContourScanner;
(* Freeman chain reader state *) (*Freeman chain reader state*)
CvChainPtReader = record CvChainPtReader = record
code: char; code: char;
pt: TCvPoint; pt: TCvPoint;
deltas: array [0 .. 7, 0 .. 1] of schar; deltas: array [0 .. 7, 0 .. 1] of schar;
end; end;
(* initializes 8-element array for fast access to 3x3 neighborhood of a pixel *) (*initializes 8-element array for fast access to 3x3 neighborhood of a pixel*)
// CV_INIT_3X3_DELTAS(deltas, step, nch)((deltas): array [0 .. -1] of const = (nch), // CV_INIT_3X3_DELTAS(deltas, step, nch)((deltas): array [0 .. -1] of const = (nch),
// (deltas)[1] = -(step) + (nch), (deltas)[2] = -(step), (deltas)[3] = -(step) - (nch), // (deltas)[1] = -(step) + (nch), (deltas)[2] = -(step), (deltas)[3] = -(step) - (nch),
// (deltas)[4] = -(nch), (deltas)[5] = (step) - (nch), (deltas)[6] = (step), // (deltas)[4] = -(nch), (deltas)[5] = (step) - (nch), (deltas)[6] = (step),
// (deltas)[7] = (step) + (nch)) // (deltas)[7] = (step) + (nch))
(* ***************************************************************************************\ (****************************************************************************************\
* Planar subdivisions * * Planar subdivisions *
*************************************************************************************** *) ****************************************************************************************)
type type
TCvSubdiv2DEdge = NativeUInt; TCvSubdiv2DEdge = NativeUInt;
{ EXTERNALSYM CvSubdiv2DEdge } {EXTERNALSYM CvSubdiv2DEdge}
pCvSubdiv2DPoint = ^TCvSubdiv2DPoint; pCvSubdiv2DPoint = ^TCvSubdiv2DPoint;
@ -443,20 +443,20 @@ Type
// --CV_SET_FIELDS() // --CV_SET_FIELDS()
// --CV_SEQUENCE_FIELDS() // --CV_SEQUENCE_FIELDS()
// ---CV_TREE_NODE_FIELDS(CvSeq); // ---CV_TREE_NODE_FIELDS(CvSeq);
flags: Integer; // * Miscellaneous flags. flags: Integer; // * Miscellaneous flags.
eader_size: Integer; // * Size of sequence header. eader_size: Integer; // * Size of sequence header.
h_prev: pCvSeq; // * Previous sequence. h_prev: pCvSeq; // * Previous sequence.
h_next: pCvSeq; // * Next sequence. h_next: pCvSeq; // * Next sequence.
v_prev: pCvSeq; // * 2nd previous sequence. v_prev: pCvSeq; // * 2nd previous sequence.
v_next: pCvSeq; // * 2nd next sequence. v_next: pCvSeq; // * 2nd next sequence.
total: Integer; // * Total number of elements. total: Integer; // * Total number of elements.
elem_size: Integer; // * Size of sequence element in bytes. elem_size: Integer; // * Size of sequence element in bytes.
block_max: pShortInt; // * Maximal bound of the last block. block_max: pShortInt; // * Maximal bound of the last block.
ptr: pShortInt; // * Current write pointer. ptr: pShortInt; // * Current write pointer.
delta_elems: Integer; // * Grow seq this many at a time. delta_elems: Integer; // * Grow seq this many at a time.
storage: pCvMemStorage; // * Where the seq is stored. storage: pCvMemStorage; // * Where the seq is stored.
free_blocks: pCvSeqBlock; // * Free blocks list. free_blocks: pCvSeqBlock; // * Free blocks list.
first: pCvSeqBlock; // * Pointer to the first sequence block. first: pCvSeqBlock; // * Pointer to the first sequence block.
free_elems: pCvSetElem; free_elems: pCvSetElem;
active_count: Integer; active_count: Integer;
edges: pCvSet; edges: pCvSet;
@ -469,48 +469,48 @@ Type
const const
// Type CvSubdiv2DPointLocation // Type CvSubdiv2DPointLocation
CV_PTLOC_ERROR = -2; CV_PTLOC_ERROR = -2;
CV_PTLOC_OUTSIDE_RECT = -1; CV_PTLOC_OUTSIDE_RECT = -1;
CV_PTLOC_INSIDE = 0; CV_PTLOC_INSIDE = 0;
CV_PTLOC_VERTEX = 1; CV_PTLOC_VERTEX = 1;
CV_PTLOC_ON_EDGE = 2; CV_PTLOC_ON_EDGE = 2;
// Type CvNextEdgeType // Type CvNextEdgeType
CV_NEXT_AROUND_ORG = $00; CV_NEXT_AROUND_ORG = $00;
CV_NEXT_AROUND_DST = $22; CV_NEXT_AROUND_DST = $22;
CV_PREV_AROUND_ORG = $11; CV_PREV_AROUND_ORG = $11;
CV_PREV_AROUND_DST = $33; CV_PREV_AROUND_DST = $33;
CV_NEXT_AROUND_LEFT = $13; CV_NEXT_AROUND_LEFT = $13;
CV_NEXT_AROUND_RIGHT = $31; CV_NEXT_AROUND_RIGHT = $31;
CV_PREV_AROUND_LEFT = $20; CV_PREV_AROUND_LEFT = $20;
CV_PREV_AROUND_RIGHT = $02; CV_PREV_AROUND_RIGHT = $02;
(* get the next edge with the same origin point (counterwise) *) (*get the next edge with the same origin point (counterwise)*)
// >> Following declaration is a macro definition! // >> Following declaration is a macro definition!
// CV_SUBDIV2D_NEXT_EDGE(edge)(((CvQuadEdge2D(edge) and ~ 3))^.next: array [0 .. 2] of const); // CV_SUBDIV2D_NEXT_EDGE(edge)(((CvQuadEdge2D(edge) and ~ 3))^.next: array [0 .. 2] of const);
(* Contour approximation algorithms *) (*Contour approximation algorithms*)
CV_POLY_APPROX_DP = 0; CV_POLY_APPROX_DP = 0;
(* Shape matching methods *) (*Shape matching methods*)
CV_CONTOURS_MATCH_I1 = 1; CV_CONTOURS_MATCH_I1 = 1;
CV_CONTOURS_MATCH_I2 = 2; CV_CONTOURS_MATCH_I2 = 2;
CV_CONTOURS_MATCH_I3 = 3; CV_CONTOURS_MATCH_I3 = 3;
(* Shape orientation *) (*Shape orientation*)
CV_CLOCKWISE = 1; CV_CLOCKWISE = 1;
CV_COUNTER_CLOCKWISE = 2; CV_COUNTER_CLOCKWISE = 2;
(* Convexity defect *) (*Convexity defect*)
type type
pCvConvexityDefect = ^TCvConvexityDefect; pCvConvexityDefect = ^TCvConvexityDefect;
TCvConvexityDefect = record TCvConvexityDefect = record
start: PCvPoint; (* point of the contour where the defect begins *) start: PCvPoint; (*point of the contour where the defect begins*)
cend: PCvPoint; (* point of the contour where the defect ends *) _end: PCvPoint; (*point of the contour where the defect ends*)
depth_point: PCvPoint; (* the farthest from the convex hull point within the defect *) depth_point: PCvPoint; (*the farthest from the convex hull point within the defect*)
depth: Single; (* distance between the farthest point and the convex hull *) depth: Single; (*distance between the farthest point and the convex hull*)
end; end;
(* Histogram comparison methods *) (*Histogram comparison methods*)
const const
CV_COMP_CORREL = 0; CV_COMP_CORREL = 0;
@ -522,7 +522,7 @@ const
CV_COMP_HELLINGER = CV_COMP_BHATTACHARYYA; CV_COMP_HELLINGER = CV_COMP_BHATTACHARYYA;
(* Mask size for distance transform *) (*Mask size for distance transform*)
CV_DIST_MASK_3 = 3; CV_DIST_MASK_3 = 3;
@ -530,66 +530,66 @@ const
CV_DIST_MASK_PRECISE = 0; CV_DIST_MASK_PRECISE = 0;
(* Content of output label array: connected components or pixels *) (*Content of output label array: connected components or pixels*)
CV_DIST_LABEL_CCOMP = 0; CV_DIST_LABEL_CCOMP = 0;
CV_DIST_LABEL_PIXEL = 1; CV_DIST_LABEL_PIXEL = 1;
(* Distance types for Distance Transform and M-estimators *) (*Distance types for Distance Transform and M-estimators*)
CV_DIST_USER = -1; (* User defined distance *) CV_DIST_USER = -1; (*User defined distance*)
CV_DIST_L1 = 1; (* distance = |x1-x2| + |y1-y2| *) CV_DIST_L1 = 1; (*distance = |x1-x2| + |y1-y2|*)
CV_DIST_L2 = 2; (* the simple euclidean distance *) CV_DIST_L2 = 2; (*the simple euclidean distance*)
CV_DIST_C = 3; (* distance = max(|x1-x2|;|y1-y2|) *) CV_DIST_C = 3; (*distance = max(|x1-x2|;|y1-y2|)*)
CV_DIST_L12 = 4; (* L1-L2 metric: distance = 2(sqrt(1+x*x/2) - 1)) *) CV_DIST_L12 = 4; (*L1-L2 metric: distance = 2(sqrt(1+x*x/2) - 1))*)
CV_DIST_FAIR = 5; (* distance = c^2(|x|/c-log(1+|x|/c)); c = 1.3998 *) CV_DIST_FAIR = 5; (*distance = c^2(|x|/c-log(1+|x|/c)); c = 1.3998*)
CV_DIST_WELSCH = 6; (* distance = c^2/2(1-exp(-(x/c)^2)); c = 2.9846 *) CV_DIST_WELSCH = 6; (*distance = c^2/2(1-exp(-(x/c)^2)); c = 2.9846*)
CV_DIST_HUBER = 7; (* distance = |x|<c ? x^2/2 : c(|x|-c/2); c=1.345 *) CV_DIST_HUBER = 7; (*distance = |x|<c ? x^2/2 : c(|x|-c/2); c=1.345*)
(* Threshold types *) (*Threshold types*)
CV_THRESH_BINARY = 0; (* value = value > threshold ? max_value : 0 *) CV_THRESH_BINARY = 0; (*value = value > threshold ? max_value : 0*)
CV_THRESH_BINARY_INV = 1; (* value = value > threshold ? 0 : max_value *) CV_THRESH_BINARY_INV = 1; (*value = value > threshold ? 0 : max_value*)
CV_THRESH_TRUNC = 2; (* value = value > threshold ? threshold : value *) CV_THRESH_TRUNC = 2; (*value = value > threshold ? threshold : value*)
CV_THRESH_TOZERO = 3; (* value = value > threshold ? value : 0 *) CV_THRESH_TOZERO = 3; (*value = value > threshold ? value : 0*)
CV_THRESH_TOZERO_INV = 4; (* value = value > threshold ? 0 : value *) CV_THRESH_TOZERO_INV = 4; (*value = value > threshold ? 0 : value*)
CV_THRESH_MASK = 7; CV_THRESH_MASK = 7;
CV_THRESH_OTSU = 8; CV_THRESH_OTSU = 8;
(* use Otsu algorithm to choose the optimal threshold value; (*use Otsu algorithm to choose the optimal threshold value;
combine = the flag with one of the above CV_THRESH_* values; combine = the flag with one of the above CV_THRESH_* values;
{$EXTERNALSYM combine} {$EXTERNALSYM combine}
(* Adaptive threshold methods *) (* Adaptive threshold methods*)
CV_ADAPTIVE_THRESH_MEAN_C = 0; CV_ADAPTIVE_THRESH_MEAN_C = 0;
CV_ADAPTIVE_THRESH_GAUSSIAN_C = 1; CV_ADAPTIVE_THRESH_GAUSSIAN_C = 1;
(* FloodFill flags *) (*FloodFill flags*)
CV_FLOODFILL_FIXED_RANGE = (1 shl 16); CV_FLOODFILL_FIXED_RANGE = (1 shl 16);
CV_FLOODFILL_MASK_ONLY = (1 shl 17); CV_FLOODFILL_MASK_ONLY = (1 shl 17);
(* Canny edge detector flags *) (*Canny edge detector flags*)
CV_CANNY_L2_GRADIENT = (1 shl 31); CV_CANNY_L2_GRADIENT = (1 shl 31);
(* Variants of a Hough transform *) (*Variants of a Hough transform*)
CV_HOUGH_STANDARD = 0; CV_HOUGH_STANDARD = 0;
@ -599,7 +599,7 @@ const
CV_HOUGH_GRADIENT = 3; CV_HOUGH_GRADIENT = 3;
(* Fast search data structures *) (*Fast search data structures*)
// type // type
// CvFeatureTree // CvFeatureTree
// end; // end;

View File

@ -1,87 +1,87 @@
// --------------------------------- OpenCV license.txt --------------------------- // --------------------------------- OpenCV license.txt ---------------------------
// IMPORTANT: READ BEFORE DOWNLOADING, COPYING, INSTALLING OR USING. // IMPORTANT: READ BEFORE DOWNLOADING, COPYING, INSTALLING OR USING.
// //
// By downloading, copying, installing or using the software you agree to this license. // By downloading, copying, installing or using the software you agree to this license.
// If you do not agree to this license, do not download, install, // If you do not agree to this license, do not download, install,
// copy or use the software. // copy or use the software.
// //
// //
// License Agreement // License Agreement
// For Open Source Computer Vision Library // For Open Source Computer Vision Library
// //
// Copyright (C) 2000-2008, Intel Corporation, all rights reserved. // Copyright (C) 2000-2008, Intel Corporation, all rights reserved.
// Copyright (C) 2009, Willow Garage Inc., all rights reserved. // Copyright (C) 2009, Willow Garage Inc., all rights reserved.
// Third party copyrights are property of their respective owners. // Third party copyrights are property of their respective owners.
// //
// Redistribution and use in source and binary forms, with or without modification, // Redistribution and use in source and binary forms, with or without modification,
// are permitted provided that the following conditions are met: // are permitted provided that the following conditions are met:
// //
// * Redistribution's of source code must retain the above copyright notice, // * Redistribution's of source code must retain the above copyright notice,
// this list of conditions and the following disclaimer. // this list of conditions and the following disclaimer.
// //
// * Redistribution's in binary form must reproduce the above copyright notice, // * Redistribution's in binary form must reproduce the above copyright notice,
// this list of conditions and the following disclaimer in the documentation // this list of conditions and the following disclaimer in the documentation
// and/or other materials provided with the distribution. // and/or other materials provided with the distribution.
// //
// * The name of the copyright holders may not be used to endorse or promote products // * The name of the copyright holders may not be used to endorse or promote products
// derived from this software without specific prior written permission. // derived from this software without specific prior written permission.
// //
// This software is provided by the copyright holders and contributors "as is" and // This software is provided by the copyright holders and contributors "as is" and
// any express or implied warranties, including, but not limited to, the implied // any express or implied warranties, including, but not limited to, the implied
// warranties of merchantability and fitness for a particular purpose are disclaimed. // warranties of merchantability and fitness for a particular purpose are disclaimed.
// In no event shall the Intel Corporation or contributors be liable for any direct, // In no event shall the Intel Corporation or contributors be liable for any direct,
// indirect, incidental, special, exemplary, or consequential damages // indirect, incidental, special, exemplary, or consequential damages
// (including, but not limited to, procurement of substitute goods or services; // (including, but not limited to, procurement of substitute goods or services;
// loss of use, data, or profits; or business interruption) however caused // loss of use, data, or profits; or business interruption) however caused
// and on any theory of liability, whether in contract, strict liability, // and on any theory of liability, whether in contract, strict liability,
// or tort (including negligence or otherwise) arising in any way out of // or tort (including negligence or otherwise) arising in any way out of
// the use of this software, even if advised of the possibility of such damage. // the use of this software, even if advised of the possibility of such damage.
//************************************************************************************************** // **************************************************************************************************
// Project Delphi-OpenCV // Project Delphi-OpenCV
// ************************************************************************************************** // **************************************************************************************************
// Contributor: // Contributor:
// Laentir Valetov // Laentir Valetov
// email:laex@bk.ru // email:laex@bk.ru
// Mikhail Grigorev // Mikhail Grigorev
// email:sleuthound@gmail.com // email:sleuthound@gmail.com
// ************************************************************************************************** // **************************************************************************************************
// You may retrieve the latest version of this file at the GitHub, // You may retrieve the latest version of this file at the GitHub,
// located at git://github.com/Laex/Delphi-OpenCV.git // located at git://github.com/Laex/Delphi-OpenCV.git
// ************************************************************************************************** // **************************************************************************************************
// License: // License:
// The contents of this file are subject to the Mozilla Public License Version 1.1 (the "License"); // The contents of this file are 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 // 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/ // License at http://www.mozilla.org/MPL/
// //
// Software distributed under the License is distributed on an "AS IS" basis, WITHOUT WARRANTY OF // 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 // ANY KIND, either express or implied. See the License for the specific language governing rights
// and limitations under the License. // and limitations under the License.
// //
// Alternatively, the contents of this file may be used under the terms of the // Alternatively, the contents of this file may be used under the terms of the
// GNU Lesser General Public License (the "LGPL License"), in which case the // GNU Lesser General Public License (the "LGPL License"), in which case the
// provisions of the LGPL License are applicable instead of those above. // provisions of the LGPL License are applicable instead of those above.
// If you wish to allow use of your version of this file only under the terms // If you wish to allow use of your version of this file only under the terms
// of the LGPL License and not to allow others to use your version of this file // of the LGPL License and not to allow others to use your version of this file
// under the MPL, indicate your decision by deleting the provisions above and // under the MPL, indicate your decision by deleting the provisions above and
// replace them with the notice and other provisions required by the LGPL // replace them with the notice and other provisions required by the LGPL
// License. If you do not delete the provisions above, a recipient may use // License. If you do not delete the provisions above, a recipient may use
// your version of this file under either the MPL or the LGPL License. // your version of this file under either the MPL or the LGPL License.
// //
// For more information about the LGPL: http://www.gnu.org/copyleft/lesser.html // For more information about the LGPL: http://www.gnu.org/copyleft/lesser.html
// ************************************************************************************************** // **************************************************************************************************
// Warning: Using Delphi XE3 syntax! // Warning: Using Delphi XE3 syntax!
// ************************************************************************************************** // **************************************************************************************************
// The Initial Developer of the Original Code: // The Initial Developer of the Original Code:
// OpenCV: open source computer vision library // OpenCV: open source computer vision library
// Homepage: http://ocv.org // Homepage: http://ocv.org
// Online docs: http://docs.ocv.org // Online docs: http://docs.ocv.org
// Q&A forum: http://answers.ocv.org // Q&A forum: http://answers.ocv.org
// Dev zone: http://code.ocv.org // Dev zone: http://code.ocv.org
// ************************************************************************************************** // **************************************************************************************************
// Original file: // Original file:
// opencv\modules\imgproc\include\opencv2\imgproc\imgproc_c.h // opencv\modules\imgproc\include\opencv2\imgproc\imgproc_c.h
// ************************************************************************************************* // *************************************************************************************************
{$IFDEF DEBUG} {$IFDEF DEBUG}
{$A8,B-,C+,D+,E-,F-,G+,H+,I+,J-,K-,L+,M-,N+,O-,P+,Q+,R+,S-,T-,U-,V+,W+,X+,Y+,Z1} {$A8,B-,C+,D+,E-,F-,G+,H+,I+,J-,K-,L+,M-,N+,O-,P+,Q+,R+,S-,T-,U-,V+,W+,X+,Y+,Z1}
@ -102,9 +102,9 @@ uses
ocv.core.types_c, ocv.core.types_c,
ocv.imgproc.types_c; ocv.imgproc.types_c;
(* ********************** Background statistics accumulation **************************** *) (*********************** Background statistics accumulation *****************************)
(* Adds image to accumulator *) (*Adds image to accumulator*)
// CVAPI(procedure)cvAcc(var Adds squared image to accumulator * ) // CVAPI(procedure)cvAcc(var Adds squared image to accumulator * )
// CVAPI(procedure)cvSquareAcc(CvArr * image: v1: 0)): CvArr; (var sqsum: CvArr; var Adds a product of two images to accumulator * ) // CVAPI(procedure)cvSquareAcc(CvArr * image: v1: 0)): CvArr; (var sqsum: CvArr; var Adds a product of two images to accumulator * )
// CVAPI(procedure)cvMultiplyAcc(CvArr * image1: unction mask CV_DEFAULT(v1: 0)): CvArr; (; // CVAPI(procedure)cvMultiplyAcc(CvArr * image1: unction mask CV_DEFAULT(v1: 0)): CvArr; (;
@ -125,11 +125,11 @@ uses
CvScalar value CV_DEFAULT(cvScalarAll(0))); CvScalar value CV_DEFAULT(cvScalarAll(0)));
} }
procedure cvCopyMakeBorder( procedure cvCopyMakeBorder(
{ } const src: pIplImage; {} const src: pIplImage;
{ } dst: pIplImage; {} dst: pIplImage;
{ } offset: TCvPoint; {} offset: TCvPoint;
{ } bordertype: Integer; {} bordertype: Integer;
{ } value: TCvScalar { * cvScalarAll(0) * } ); cdecl; {} value: TCvScalar {* cvScalarAll(0) *} ); cdecl;
{ {
// Smoothes array (removes noise) // Smoothes array (removes noise)
@ -143,13 +143,13 @@ procedure cvCopyMakeBorder(
double sigma2 CV_DEFAULT(0)); double sigma2 CV_DEFAULT(0));
} }
procedure cvSmooth( procedure cvSmooth(
{ } const src: pIplImage; {} const src: pIplImage;
{ } dst: pIplImage; {} dst: pIplImage;
{ } smoothtype: Integer = CV_GAUSSIAN; {} smoothtype: Integer = CV_GAUSSIAN;
{ } size1: Integer = 3; {} size1: Integer = 3;
{ } size2: Integer = 0; {} size2: Integer = 0;
{ } sigma1: double = 0; {} sigma1: double = 0;
{ } sigma2: double = 0); cdecl; {} sigma2: double = 0); cdecl;
// (* Convolves the image with the kernel *) // (* Convolves the image with the kernel *)
// CVAPI( // CVAPI(
@ -166,10 +166,10 @@ procedure cvSmooth(
CvArr* tilted_sum CV_DEFAULT(NULL)); CvArr* tilted_sum CV_DEFAULT(NULL));
} }
procedure cvIntegral( procedure cvIntegral(
{ } const image: pIplImage; {} const image: pIplImage;
{ } sum: pIplImage; {} sum: pIplImage;
{ } sqsum: pIplImage = NIL; {} sqsum: pIplImage = NIL;
{ } tilted_sum: pIplImage = NIL); cdecl; {} tilted_sum: pIplImage = NIL); cdecl;
(* (*
Smoothes the input image with gaussian kernel and then down-samples it. Smoothes the input image with gaussian kernel and then down-samples it.
@ -231,7 +231,7 @@ procedure cvSobel(const src: pIplImage; dst: pIplImage; xorder: Integer; yorder:
} }
procedure cvLaplace(const src: pIplImage; dst: pIplImage; aperture_size: Integer = 3); cdecl; procedure cvLaplace(const src: pIplImage; dst: pIplImage; aperture_size: Integer = 3); cdecl;
(* Converts input array pixels from one color space to another *) (*Converts input array pixels from one color space to another*)
// CVAPI(void) cvCvtColor( const CvArr* src, CvArr* dst, int code ); // CVAPI(void) cvCvtColor( const CvArr* src, CvArr* dst, int code );
procedure cvCvtColor(const src: pIplImage; dst: pIplImage; code: Integer); cdecl; overload; procedure cvCvtColor(const src: pIplImage; dst: pIplImage; code: Integer); cdecl; overload;
procedure cvCvtColor(const src: pCvMat; dst: pCvMat; code: Integer); cdecl; overload; procedure cvCvtColor(const src: pCvMat; dst: pCvMat; code: Integer); cdecl; overload;
@ -252,7 +252,7 @@ procedure cvResize(const src: pIplImage; dst: pIplImage; interpolation: Integer
CvScalar fillval CV_DEFAULT(cvScalarAll(0)) ); CvScalar fillval CV_DEFAULT(cvScalarAll(0)) );
} }
procedure cvWarpAffine(const src: pIplImage; dst: pIplImage; const map_matrix: pCvMat; procedure cvWarpAffine(const src: pIplImage; dst: pIplImage; const map_matrix: pCvMat;
flags: Integer { = CV_INTER_LINEAR+CV_WARP_FILL_OUTLIERS }; fillval: TCvScalar { = cvScalarAll(0) } ); cdecl; flags: Integer {= CV_INTER_LINEAR+CV_WARP_FILL_OUTLIERS}; fillval: TCvScalar {= cvScalarAll(0)} ); cdecl;
// * Computes affine transform matrix for mapping src[i] to dst[i] (i=0,1,2) */ // * Computes affine transform matrix for mapping src[i] to dst[i] (i=0,1,2) */
// CVAPI(CvMat*) cvGetAffineTransform( const CvPoint2D32f * src, // CVAPI(CvMat*) cvGetAffineTransform( const CvPoint2D32f * src,
@ -273,7 +273,7 @@ function cv2DRotationMatrix(center: TCvPoint2D32f; angle: double; scale: double;
CvScalar fillval CV_DEFAULT(cvScalarAll(0)) ); CvScalar fillval CV_DEFAULT(cvScalarAll(0)) );
} }
procedure cvWarpPerspective(const src: pIplImage; dst: pIplImage; const map_matrix: pCvMat; procedure cvWarpPerspective(const src: pIplImage; dst: pIplImage; const map_matrix: pCvMat;
flags: Integer { =CV_INTER_LINEAR+CV_WARP_FILL_OUTLIERS }; fillval: TCvScalar { =cvScalarAll(0) } ); cdecl; flags: Integer {=CV_INTER_LINEAR+CV_WARP_FILL_OUTLIERS}; fillval: TCvScalar {=cvScalarAll(0)} ); cdecl;
{ {
/* Computes perspective transform matrix for mapping src[i] to dst[i] (i=0,1,2,3) */ /* Computes perspective transform matrix for mapping src[i] to dst[i] (i=0,1,2,3) */
CVAPI(CvMat*) cvGetPerspectiveTransform( const CvPoint2D32f* src, CVAPI(CvMat*) cvGetPerspectiveTransform( const CvPoint2D32f* src,
@ -293,7 +293,7 @@ function cvGetPerspectiveTransform(const src: pCvPoint2D32f; const dst: pCvPoint
CvScalar fillval CV_DEFAULT(cvScalarAll(0)) ); CvScalar fillval CV_DEFAULT(cvScalarAll(0)) );
} }
procedure cvRemap(const src: pCvArr; dst: pCvArr; const mapx: pCvArr; const mapy: pCvArr; procedure cvRemap(const src: pCvArr; dst: pCvArr; const mapx: pCvArr; const mapy: pCvArr;
flags: Integer { =CV_INTER_LINEAR+CV_WARP_FILL_OUTLIERS }; fillval: TCvScalar { =cvScalarAll(0) } flags: Integer {=CV_INTER_LINEAR+CV_WARP_FILL_OUTLIERS}; fillval: TCvScalar {=cvScalarAll(0)}
); cdecl; ); cdecl;
/// * Performs forward or inverse log-polar image transform */ /// * Performs forward or inverse log-polar image transform */
@ -359,7 +359,7 @@ function cvCreateStructuringElementEx(cols: Integer; rows: Integer; anchor_x: In
// CVAPI(void) cvReleaseStructuringElement( IplConvKernel** element ); // CVAPI(void) cvReleaseStructuringElement( IplConvKernel** element );
procedure cvReleaseStructuringElement(Var element: pIplConvKernel); cdecl; procedure cvReleaseStructuringElement(Var element: pIplConvKernel); cdecl;
{ Performs complex morphological transformation } {Performs complex morphological transformation}
// CVAPI(void) cvMorphologyEx( const CvArr* src, CvArr* dst, // CVAPI(void) cvMorphologyEx( const CvArr* src, CvArr* dst,
// CvArr* temp, IplConvKernel* element, // CvArr* temp, IplConvKernel* element,
// int operation, int iterations CV_DEFAULT(1) ); // int operation, int iterations CV_DEFAULT(1) );
@ -370,15 +370,15 @@ procedure cvMorphologyEx(const src: pIplImage; dst: pIplImage; temp: pIplImage;
// CVAPI(void) cvMoments( const CvArr* arr, CvMoments* moments, int binary CV_DEFAULT(0)); // CVAPI(void) cvMoments( const CvArr* arr, CvMoments* moments, int binary CV_DEFAULT(0));
procedure cvMoments(const arr: pCvArr; moments: pCvMoments; binary: Integer = 0); cdecl; procedure cvMoments(const arr: pCvArr; moments: pCvMoments; binary: Integer = 0); cdecl;
{ erodes input image (applies minimum filter) one or more times. {erodes input image (applies minimum filter) one or more times.
If element pointer is NULL, 3x3 rectangular element is used } If element pointer is NULL, 3x3 rectangular element is used}
// CVAPI(void) cvErode( const CvArr* src, CvArr* dst, // CVAPI(void) cvErode( const CvArr* src, CvArr* dst,
// IplConvKernel* element CV_DEFAULT(NULL), // IplConvKernel* element CV_DEFAULT(NULL),
// int iterations CV_DEFAULT(1) ); // int iterations CV_DEFAULT(1) );
procedure cvErode(const src: pIplImage; dst: pIplImage; element: pIplConvKernel = nil; iterations: Integer = 1); cdecl; procedure cvErode(const src: pIplImage; dst: pIplImage; element: pIplConvKernel = nil; iterations: Integer = 1); cdecl;
{ dilates input image (applies maximum filter) one or more times. {dilates input image (applies maximum filter) one or more times.
If element pointer is NULL, 3x3 rectangular element is used } If element pointer is NULL, 3x3 rectangular element is used}
// CVAPI(void) cvDilate( const CvArr* src, CvArr* dst, // CVAPI(void) cvDilate( const CvArr* src, CvArr* dst,
// IplConvKernel* element CV_DEFAULT(NULL), // IplConvKernel* element CV_DEFAULT(NULL),
// int iterations CV_DEFAULT(1) ); // int iterations CV_DEFAULT(1) );
@ -440,17 +440,17 @@ procedure cvMatchTemplate(const image: pCvArr; const templ: pCvArr; result: pCvA
const const
// * contour retrieval mode */ // * contour retrieval mode */
CV_RETR_EXTERNAL = 0; CV_RETR_EXTERNAL = 0;
CV_RETR_LIST = 1; CV_RETR_LIST = 1;
CV_RETR_CCOMP = 2; CV_RETR_CCOMP = 2;
CV_RETR_TREE = 3; CV_RETR_TREE = 3;
// * contour approximation method */ // * contour approximation method */
CV_CHAIN_CODE = 0; CV_CHAIN_CODE = 0;
CV_CHAIN_APPROX_NONE = 1; CV_CHAIN_APPROX_NONE = 1;
CV_CHAIN_APPROX_SIMPLE = 2; CV_CHAIN_APPROX_SIMPLE = 2;
CV_CHAIN_APPROX_TC89_L1 = 3; CV_CHAIN_APPROX_TC89_L1 = 3;
CV_CHAIN_APPROX_TC89_KCOS = 4; CV_CHAIN_APPROX_TC89_KCOS = 4;
CV_LINK_RUNS = 5; CV_LINK_RUNS = 5;
type type
@ -526,34 +526,34 @@ type
} }
function cvFindContours( function cvFindContours(
{ } image: pIplImage; {} image: pIplImage;
{ } storage: pCvMemStorage; {} storage: pCvMemStorage;
{ } first_contour: pCvSeq; {} first_contour: pCvSeq;
{ } header_size: Integer { = SizeOf(TCvContour) }; {} header_size: Integer {= SizeOf(TCvContour)};
{ } mode: Integer { = CV_RETR_LIST }; {} mode: Integer {= CV_RETR_LIST};
{ } method: Integer { = CV_CHAIN_APPROX_SIMPLE }; {} method: Integer {= CV_CHAIN_APPROX_SIMPLE};
{ } offset: TCvPoint { =cvPoint(0,0) } ): Integer; cdecl; {} offset: TCvPoint {=cvPoint(0,0)} ): Integer; cdecl;
(* Initalizes contour retrieving process. (*Initalizes contour retrieving process.
Calls cvStartFindContours. Calls cvStartFindContours.
Calls cvFindNextContour until null pointer is returned Calls cvFindNextContour until null pointer is returned
or some other condition becomes true. or some other condition becomes true.
Calls cvEndFindContours at the end. *) Calls cvEndFindContours at the end.*)
// CVAPI(CvContourScanner) cvStartFindContours( CvArr* image, CvMemStorage* storage, // CVAPI(CvContourScanner) cvStartFindContours( CvArr* image, CvMemStorage* storage,
// int header_size CV_DEFAULT(sizeof(CvContour)), // int header_size CV_DEFAULT(sizeof(CvContour)),
// int mode CV_DEFAULT(CV_RETR_LIST), // int mode CV_DEFAULT(CV_RETR_LIST),
// int method CV_DEFAULT(CV_CHAIN_APPROX_SIMPLE), // int method CV_DEFAULT(CV_CHAIN_APPROX_SIMPLE),
// CvPoint offset CV_DEFAULT(cvPoint(0,0))); // CvPoint offset CV_DEFAULT(cvPoint(0,0)));
function cvStartFindContours(image: pCvArr; storage: pCvMemStorage; header_size: Integer { =sizeof(TCvContour)) }; function cvStartFindContours(image: pCvArr; storage: pCvMemStorage; header_size: Integer {=sizeof(TCvContour))};
mode: Integer { = CV_RETR_LIST }; method: Integer { =CV_CHAIN_APPROX_SIMPLE }; offset: TCvPoint { =cvPoint(0,0) } ) mode: Integer {= CV_RETR_LIST}; method: Integer {=CV_CHAIN_APPROX_SIMPLE}; offset: TCvPoint {=cvPoint(0,0)} )
: pCvContourScanner; cdecl; : pCvContourScanner; cdecl;
// * Retrieves next contour */ // * Retrieves next contour */
// CVAPI(CvSeq*) cvFindNextContour( CvContourScanner scanner ); // CVAPI(CvSeq*) cvFindNextContour( CvContourScanner scanner );
function cvFindNextContour(scanner: pCvContourScanner): pCvSeq; cdecl; function cvFindNextContour(scanner: pCvContourScanner): pCvSeq; cdecl;
(* Substitutes the last retrieved contour with the new one (*Substitutes the last retrieved contour with the new one
(if the substitutor is null, the last retrieved contour is removed from the tree) *) (if the substitutor is null, the last retrieved contour is removed from the tree)*)
// CVAPI(void) cvSubstituteContour( CvContourScanner scanner, CvSeq* new_contour ); // CVAPI(void) cvSubstituteContour( CvContourScanner scanner, CvSeq* new_contour );
procedure cvSubstituteContour(scanner: pCvContourScanner; new_contour: pCvSeq); cdecl; procedure cvSubstituteContour(scanner: pCvContourScanner; new_contour: pCvSeq); cdecl;
@ -590,12 +590,12 @@ function cvEndFindContours(Var scanner: pCvContourScanner): pCvSeq; cdecl;
int recursive CV_DEFAULT(0)); int recursive CV_DEFAULT(0));
} }
function cvApproxPoly( function cvApproxPoly(
{ } const src_seq: pCvSeq; {} const src_seq: pCvSeq;
{ } header_size: Integer; {} header_size: Integer;
{ } storage: pCvMemStorage; {} storage: pCvMemStorage;
{ } method: Integer; {} method: Integer;
{ } eps: double; {} eps: double;
{ } recursive: Integer = 0): pCvSeq; cdecl; {} recursive: Integer = 0): pCvSeq; cdecl;
(* (*
/* Calculates perimeter of a contour or length of a part of contour */ /* Calculates perimeter of a contour or length of a part of contour */
@ -604,7 +604,7 @@ function cvApproxPoly(
int is_closed CV_DEFAULT(-1)); int is_closed CV_DEFAULT(-1));
*) *)
function cvArcLength(const curve: Pointer; slice: TCvSlice { = CV_WHOLE_SEQ }; is_closed: Integer { = 1 } ): double; cdecl; function cvArcLength(const curve: Pointer; slice: TCvSlice {= CV_WHOLE_SEQ}; is_closed: Integer {= 1} ): double; cdecl;
(* (*
CV_INLINE double cvContourPerimeter( const void* contour ) CV_INLINE double cvContourPerimeter( const void* contour )
@ -612,8 +612,7 @@ function cvArcLength(const curve: Pointer; slice: TCvSlice { = CV_WHOLE_SEQ }; i
return cvArcLength( contour, CV_WHOLE_SEQ, 1 ); return cvArcLength( contour, CV_WHOLE_SEQ, 1 );
} }
*) *)
function cvContourPerimeter(const contour: Pointer): double; {$IFDEF VER9P}inline;{$ENDIF} function cvContourPerimeter(const contour: Pointer): double; {$IFDEF VER9P}inline; {$ENDIF}
// * Calculates contour boundning rectangle (update=1) or // * Calculates contour boundning rectangle (update=1) or
// just retrieves pre-calculated rectangle (update=0) */ // just retrieves pre-calculated rectangle (update=0) */
// CVAPI(CvRect) cvBoundingRect( CvArr* points, int update CV_DEFAULT(0) ); // CVAPI(CvRect) cvBoundingRect( CvArr* points, int update CV_DEFAULT(0) );
@ -623,7 +622,7 @@ function cvBoundingRect(points: pCvArr; update: Integer = 0): TCvRect; cdecl;
// CVAPI(double) cvContourArea( const CvArr* contour, // CVAPI(double) cvContourArea( const CvArr* contour,
// CvSlice slice CV_DEFAULT(CV_WHOLE_SEQ), // CvSlice slice CV_DEFAULT(CV_WHOLE_SEQ),
// int oriented CV_DEFAULT(0)); // int oriented CV_DEFAULT(0));
function cvContourArea(const contour: pCvArr; slice: TCvSlice { = CV_WHOLE_SEQ }; oriented: Integer = 0): double; cdecl; function cvContourArea(const contour: pCvArr; slice: TCvSlice {= CV_WHOLE_SEQ}; oriented: Integer = 0): double; cdecl;
// (* Finds minimum area rotated rectangle bounding a set of points *) // (* Finds minimum area rotated rectangle bounding a set of points *)
// CVAPI(CvBox2D) cvMinAreaRect2( const CvArr* points, CvMemStorage* storage CV_DEFAULT(NULL)); // CVAPI(CvBox2D) cvMinAreaRect2( const CvArr* points, CvMemStorage* storage CV_DEFAULT(NULL));
@ -735,7 +734,7 @@ procedure cvGetMinMaxHistValue(const hist: pCvHistogram; min_value: pSingle; max
// CVAPI(procedure) cvThreshHist(var hist: CvHistogram; threshold: Double); // CVAPI(procedure) cvThreshHist(var hist: CvHistogram; threshold: Double);
// //
// //
(* Compares two histogram *) (*Compares two histogram*)
// CVAPI(Double) cvCompareHist( CvHistogram* hist1, // CVAPI(Double) cvCompareHist( CvHistogram* hist1,
// CvHistogram* hist2, // CvHistogram* hist2,
// Integer method); // Integer method);
@ -769,9 +768,8 @@ procedure cvCalcArrHist(var arr: pIplImage; hist: pCvHistogram; accumulate: Inte
// { // {
// cvCalcArrHist( (CvArr**)image, hist, accumulate, mask ); // cvCalcArrHist( (CvArr**)image, hist, accumulate, mask );
// } // }
procedure cvCalcHist(var image: pIplImage; hist: pCvHistogram; accumulate: Integer = 0; const mask: pIplImage = nil); {$IFDEF VER9P}inline;{$ENDIF} procedure cvCalcHist(var image: pIplImage; hist: pCvHistogram; accumulate: Integer = 0; const mask: pIplImage = nil);
{$IFDEF VER9P}inline; {$ENDIF}
// var mask CV_DEFAULT(0) )begin cvCalcArrHist( (CvArr*)image: vArr; // var mask CV_DEFAULT(0) )begin cvCalcArrHist( (CvArr*)image: vArr;
// v5: hist; // v5: hist;
// v6: accumulate; // v6: accumulate;
@ -804,7 +802,7 @@ procedure cvCalcBackProject(var image: pIplImage; dst: pIplImage; const hist: pC
// (* calculates probabilistic density (divides one histogram by another) *) // (* calculates probabilistic density (divides one histogram by another) *)
// CVAPI(procedure) cvCalcProbDensity( // CVAPI(procedure) cvCalcProbDensity(
{ /* equalizes histogram of 8-bit single-channel image */ {/* equalizes histogram of 8-bit single-channel image */
CVAPI(void) cvEqualizeHist( const CvArr* src, CvArr* dst ); CVAPI(void) cvEqualizeHist( const CvArr* src, CvArr* dst );
} }
@ -840,13 +838,13 @@ function cvThreshold(const src, dst: pIplImage; threshold, max_value: double; th
double param1 CV_DEFAULT(5)); double param1 CV_DEFAULT(5));
} }
procedure cvAdaptiveThreshold( procedure cvAdaptiveThreshold(
{ } const src: pIplImage; {} const src: pIplImage;
{ } dst: pIplImage; {} dst: pIplImage;
{ } max_value: double; {} max_value: double;
{ } adaptive_method: Integer = CV_ADAPTIVE_THRESH_MEAN_C; {} adaptive_method: Integer = CV_ADAPTIVE_THRESH_MEAN_C;
{ } threshold_type: Integer = CV_THRESH_BINARY; {} threshold_type: Integer = CV_THRESH_BINARY;
{ } block_size: Integer = 3; {} block_size: Integer = 3;
{ } param1: double = 5); cdecl; {} param1: double = 5); cdecl;
{ {
/* Fills the connected component until the color difference gets large enough */ /* Fills the connected component until the color difference gets large enough */
@ -861,14 +859,14 @@ procedure cvAdaptiveThreshold(
CvArr* mask CV_DEFAULT(NULL)); CvArr* mask CV_DEFAULT(NULL));
} }
procedure cvFloodFill( procedure cvFloodFill(
{ } image: pIplImage; {} image: pIplImage;
{ } seed_point: TCvPoint; {} seed_point: TCvPoint;
{ } new_val: TCvScalar; {} new_val: TCvScalar;
{ } lo_diff: TCvScalar { * cvScalarAll(0) * }; {} lo_diff: TCvScalar {* cvScalarAll(0) *};
{ } up_diff: TCvScalar { * cvScalarAll(0) * }; {} up_diff: TCvScalar {* cvScalarAll(0) *};
{ } comp: pCvConnectedComp = NIL; {} comp: pCvConnectedComp = NIL;
{ } flags: Integer = 4; {} flags: Integer = 4;
{ } mask: pCvArr = NIL); cdecl; {} mask: pCvArr = NIL); cdecl;
// **************************************************************************************** // ****************************************************************************************
// * Feature detection * // * Feature detection *
@ -975,14 +973,14 @@ procedure cvGoodFeaturesToTrack(const image: pIplImage; eig_image: pIplImage; te
} }
function cvHoughLines2( function cvHoughLines2(
{ } image: pIplImage; {} image: pIplImage;
{ } line_storage: Pointer; {} line_storage: Pointer;
{ } method: Integer; {} method: Integer;
{ } rho: double; {} rho: double;
{ } theta: double; {} theta: double;
{ } threshold: Integer; {} threshold: Integer;
{ } param1: double = 0; {} param1: double = 0;
{ } param2: double = 0): pCvSeq; cdecl; {} param2: double = 0): pCvSeq; cdecl;
{ {
/* Finds circles in the image */ /* Finds circles in the image */
@ -999,15 +997,15 @@ function cvHoughLines2(
} }
function cvHoughCircles( function cvHoughCircles(
{ } image: pIplImage; {} image: pIplImage;
{ } circle_storage: Pointer; {} circle_storage: Pointer;
{ } method: Integer; {} method: Integer;
{ } dp: double; {} dp: double;
{ } min_dist: double; {} min_dist: double;
{ } param1: double = 100; {} param1: double = 100;
{ } param2: double = 100; {} param2: double = 100;
{ } min_radius: Integer = 0; {} min_radius: Integer = 0;
{ } max_radius: Integer = 0): pCvSeq; cdecl; {} max_radius: Integer = 0): pCvSeq; cdecl;
// (* Fits a line into set of 2d or 3d points in a robust way (M-estimator technique) *) // (* Fits a line into set of 2d or 3d points in a robust way (M-estimator technique) *)
// CVAPI( // CVAPI(
@ -1052,7 +1050,7 @@ procedure cvInitUndistortMap; external imgproc_lib;
procedure cvRemap; external imgproc_lib; procedure cvRemap; external imgproc_lib;
function cvArcLength; external imgproc_lib; function cvArcLength; external imgproc_lib;
function cvContourPerimeter(const contour: Pointer): double; {$IFDEF VER9P}inline;{$ENDIF} function cvContourPerimeter(const contour: Pointer): double; {$IFDEF VER9P}inline; {$ENDIF}
begin begin
result := cvArcLength(contour, CV_WHOLE_SEQ, 1); result := cvArcLength(contour, CV_WHOLE_SEQ, 1);
end; end;

View File

@ -1,87 +1,87 @@
// --------------------------------- OpenCV license.txt --------------------------- // --------------------------------- OpenCV license.txt ---------------------------
// IMPORTANT: READ BEFORE DOWNLOADING, COPYING, INSTALLING OR USING. // IMPORTANT: READ BEFORE DOWNLOADING, COPYING, INSTALLING OR USING.
// //
// By downloading, copying, installing or using the software you agree to this license. // By downloading, copying, installing or using the software you agree to this license.
// If you do not agree to this license, do not download, install, // If you do not agree to this license, do not download, install,
// copy or use the software. // copy or use the software.
// //
// //
// License Agreement // License Agreement
// For Open Source Computer Vision Library // For Open Source Computer Vision Library
// //
// Copyright (C) 2000-2008, Intel Corporation, all rights reserved. // Copyright (C) 2000-2008, Intel Corporation, all rights reserved.
// Copyright (C) 2009, Willow Garage Inc., all rights reserved. // Copyright (C) 2009, Willow Garage Inc., all rights reserved.
// Third party copyrights are property of their respective owners. // Third party copyrights are property of their respective owners.
// //
// Redistribution and use in source and binary forms, with or without modification, // Redistribution and use in source and binary forms, with or without modification,
// are permitted provided that the following conditions are met: // are permitted provided that the following conditions are met:
// //
// * Redistribution's of source code must retain the above copyright notice, // * Redistribution's of source code must retain the above copyright notice,
// this list of conditions and the following disclaimer. // this list of conditions and the following disclaimer.
// //
// * Redistribution's in binary form must reproduce the above copyright notice, // * Redistribution's in binary form must reproduce the above copyright notice,
// this list of conditions and the following disclaimer in the documentation // this list of conditions and the following disclaimer in the documentation
// and/or other materials provided with the distribution. // and/or other materials provided with the distribution.
// //
// * The name of the copyright holders may not be used to endorse or promote products // * The name of the copyright holders may not be used to endorse or promote products
// derived from this software without specific prior written permission. // derived from this software without specific prior written permission.
// //
// This software is provided by the copyright holders and contributors "as is" and // This software is provided by the copyright holders and contributors "as is" and
// any express or implied warranties, including, but not limited to, the implied // any express or implied warranties, including, but not limited to, the implied
// warranties of merchantability and fitness for a particular purpose are disclaimed. // warranties of merchantability and fitness for a particular purpose are disclaimed.
// In no event shall the Intel Corporation or contributors be liable for any direct, // In no event shall the Intel Corporation or contributors be liable for any direct,
// indirect, incidental, special, exemplary, or consequential damages // indirect, incidental, special, exemplary, or consequential damages
// (including, but not limited to, procurement of substitute goods or services; // (including, but not limited to, procurement of substitute goods or services;
// loss of use, data, or profits; or business interruption) however caused // loss of use, data, or profits; or business interruption) however caused
// and on any theory of liability, whether in contract, strict liability, // and on any theory of liability, whether in contract, strict liability,
// or tort (including negligence or otherwise) arising in any way out of // or tort (including negligence or otherwise) arising in any way out of
// the use of this software, even if advised of the possibility of such damage. // the use of this software, even if advised of the possibility of such damage.
//************************************************************************************************** // **************************************************************************************************
// Project Delphi-OpenCV // Project Delphi-OpenCV
// ************************************************************************************************** // **************************************************************************************************
// Contributor: // Contributor:
// Laentir Valetov // Laentir Valetov
// email:laex@bk.ru // email:laex@bk.ru
// Mikhail Grigorev // Mikhail Grigorev
// email:sleuthound@gmail.com // email:sleuthound@gmail.com
// ************************************************************************************************** // **************************************************************************************************
// You may retrieve the latest version of this file at the GitHub, // You may retrieve the latest version of this file at the GitHub,
// located at git://github.com/Laex/Delphi-OpenCV.git // located at git://github.com/Laex/Delphi-OpenCV.git
// ************************************************************************************************** // **************************************************************************************************
// License: // License:
// The contents of this file are subject to the Mozilla Public License Version 1.1 (the "License"); // The contents of this file are 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 // 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/ // License at http://www.mozilla.org/MPL/
// //
// Software distributed under the License is distributed on an "AS IS" basis, WITHOUT WARRANTY OF // 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 // ANY KIND, either express or implied. See the License for the specific language governing rights
// and limitations under the License. // and limitations under the License.
// //
// Alternatively, the contents of this file may be used under the terms of the // Alternatively, the contents of this file may be used under the terms of the
// GNU Lesser General Public License (the "LGPL License"), in which case the // GNU Lesser General Public License (the "LGPL License"), in which case the
// provisions of the LGPL License are applicable instead of those above. // provisions of the LGPL License are applicable instead of those above.
// If you wish to allow use of your version of this file only under the terms // If you wish to allow use of your version of this file only under the terms
// of the LGPL License and not to allow others to use your version of this file // of the LGPL License and not to allow others to use your version of this file
// under the MPL, indicate your decision by deleting the provisions above and // under the MPL, indicate your decision by deleting the provisions above and
// replace them with the notice and other provisions required by the LGPL // replace them with the notice and other provisions required by the LGPL
// License. If you do not delete the provisions above, a recipient may use // License. If you do not delete the provisions above, a recipient may use
// your version of this file under either the MPL or the LGPL License. // your version of this file under either the MPL or the LGPL License.
// //
// For more information about the LGPL: http://www.gnu.org/copyleft/lesser.html // For more information about the LGPL: http://www.gnu.org/copyleft/lesser.html
// ************************************************************************************************** // **************************************************************************************************
// Warning: Using Delphi XE3 syntax! // Warning: Using Delphi XE3 syntax!
// ************************************************************************************************** // **************************************************************************************************
// The Initial Developer of the Original Code: // The Initial Developer of the Original Code:
// OpenCV: open source computer vision library // OpenCV: open source computer vision library
// Homepage: http://ocv.org // Homepage: http://ocv.org
// Online docs: http://docs.ocv.org // Online docs: http://docs.ocv.org
// Q&A forum: http://answers.ocv.org // Q&A forum: http://answers.ocv.org
// Dev zone: http://code.ocv.org // Dev zone: http://code.ocv.org
// ************************************************************************************************** // **************************************************************************************************
// Original file: // Original file:
// opencv\modules\objdetect\include\opencv2\objdetect_c.h // opencv\modules\objdetect\include\opencv2\objdetect_c.h
// ************************************************************************************************* // *************************************************************************************************
{$IFDEF DEBUG} {$IFDEF DEBUG}
{$A8,B-,C+,D+,E-,F-,G+,H+,I+,J-,K-,L+,M-,N+,O-,P+,Q+,R+,S-,T-,U-,V+,W+,X+,Y+,Z1} {$A8,B-,C+,D+,E-,F-,G+,H+,I+,J-,K-,L+,M-,N+,O-,P+,Q+,R+,S-,T-,U-,V+,W+,X+,Y+,Z1}