Giter VIP home page Giter VIP logo

delphi-opencv's Introduction

Delphi-OpenCV

  • OpenCV version - 2.4.13
  • Development environment - Delphi 2010-10.3, FPC 3.0.4

Contributors:

Laentir Valetov (email: [email protected])
Mikhail Grigorev (email: [email protected])

Requirements:

  • Visual C++ Redistributable for Visual Studio 2015
    Files: msvcp140.dll, msvcp140d.dll in "Delphi-OpenCV\redist" or here, but it is not exactly
    or from the repository (Delphi-OpenCV\redist\VC14):
(1) 32-bit in the "\x86"
(2) 64-bit in the "\x64"
  • Shared library FFMPEG 4.2.1 for Windows can be downloaded from here
    or from the repository (Delphi-OpenCV\redist\ffmpeg):
(3) FFmpeg 32-bit Shared "\x86"
(4) FFmpeg 64-bit Shared "\x64"
  • Dynamic library OpenCV need to download here
    Files: *2413.dll and *2413d.dll
    After installing OpenCV:
(5) 32-bit in the C:\OpenCV\build\x86\vc14\bin\*.dll
(6) 64-bit in the C:\OpenCV\build\x64\vc14\bin\*.dll
  • Some examples (FFMPEG) required SDL 2.0 and SDL 1.2
    or from the repository (Delphi-OpenCV\redist\SDL\1.2 and \2.0):
(7) 32-bit - SDL.dll and SDL2.dll "\x86"
(8) 64-bit - SDL.dll and SDL2.dll "\x64"

How to install:

1. Delphi environment setting

Download and unzip the archive or clone repository

git clone https://github.com/Laex/Delphi-OpenCV.git

Get the following directory structure

<PROJECT_ROOT> - Directory, for example, "C:\Delphi\OpenCV\"
	<bin>		- here are the executable files of the examples
	<CheckCVDep>	- program for checking the environment
	<Delphi-FFMPEG>	- empty directory for "Delphi-FFMPEG"
	<packages>	- packages for D10-D10.3
	<redist>	- redistributable packages
	<resource>	- media for working examples and Haar-cascades
	<samples>	- examples
	<source>	- object pascal sources for OpenCV, SDL, OpenGL
	<source3>	- attempt for opencv 3
	<source4>	- blank for OpenCV 4

Run InitDelphiFFMPEG.cmd to initialize the Delphi-FFMPEG submodule. The directory should be populated with sources for Delphi-FFMPEG. If it didn’t work, then

git clone https://github.com/Laex/Delphi-FFMPEG.git

Add the search path for the modules of the project in Delphi IDE
"Tools-Options-Delphi Options-Library-Library path" or "Tools-Options-Language-Delphi-Library"

<PROJECT_ROOT>\source
<PROJECT_ROOT>\source\opengl
<PROJECT_ROOT>\source\sdl
<PROJECT_ROOT>\source\sdl2
<PROJECT_ROOT>\packages
<PROJECT_ROOT>\resource
<PROJECT_ROOT>\resource\facedetectxml
<PROJECT_ROOT>\source3
<PROJECT_ROOT>\Delphi-FFMPEG\source

where <PROJECT_ROOT> directory, which was unzipped (or cloned) repository.

2. Copy dynamic libraries files

OS Windows 64-bit

Target platform 64-bit: (2),(4),(6),(8) -> "C:\Windows\System32\"
Target platform 32-bit: (1),(3),(5),(7) -> "C:\Windows\SysWOW64\"

OS Windows 32-bit

Target platform 32-bit: (1),(3),(5),(7) -> "C:\Windows\System32\"

Alternatively, dynamic libraries can be placed next to an executable file.

3. Verify that the environment is configured correctly

Run from the repository

 Delphi-OpenCV/CheckCVDep/CheckCVDep.exe

The program checks the availability of dynamic libraries

------- Verifying Microsoft DLL -------
OK
------- OpenCV DLL -------
OK
------- Delphi-OpenCV classes DLL -------
OK
------- FFMPEG DLL -------
OK
------- SDL DLL -------
OK

To successfully install components and run most of the examples, the availability of FFMPEG DLL, Microsoft DLL and OpenCV DLL is sufficient

4. Install the components

To install the components, open and install

<PROJECT_ROOT>\packages\Delphi XXX\rtpFFMPEG.dpk
<PROJECT_ROOT>\packages\Delphi XXX\rclVCLOpenCV.dpk
<PROJECT_ROOT>\packages\Delphi XXX\rclFMXOpenCV.dpk
<PROJECT_ROOT>\packages\Delphi XXX\dclVCLOpenCV.dpk
<PROJECT_ROOT>\packages\Delphi XXX\dclFMXOpenCV.dpk

Examples

Open in Delphi IDE and compile:
Examples of the use of certain functions and procedures

<PROJECT_ROOT>\samples\LibDemo\LibDemo.groupproj

Examples of the use of video processing algorithms

<PROJECT_ROOT>\samples\MultiDemo\MultiDemo.groupproj

Examples of the use of video processing algorithms using VCL.Forms

<PROJECT_ROOT>\samples\VCLDemo\VCLDemo.groupproj

Examples of using FFMPEG library header files are in the

<PROJECT_ROOT>\Delphi-FFMPEG\examples

Examples of use of components

<PROJECT_ROOT>\samples\Components\ComponentsDemo.groupproj

Donate
PayPal USD
PayPal EUR
PayPal RUB
Yandex Money
Donatecoins

delphi-opencv's People

Contributors

benedikts avatar bytearts avatar cherts avatar laex avatar micha137 avatar samutr avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

delphi-opencv's Issues

TocvFileSource end of file event not firing

OnEndOfFile event on TocvFileSource does not fire when video completes.

Think this could be the solution but still not reliable for some reason

procedure TocvFileSource.SetEnabled (Value: Boolean);
Var
pFileName: PAnsiChar;
begin
if FEnabled <> Value then begin
if not(csDesigning in ComponentState) then begin
if Assigned (FCapture) and FEnabled then begin
(FSourceThread as TocvCaptureThread).Capture := nil;
cvReleaseCapture (FCapture);
FCapture := Nil;
end;
if Value and FileExists (FileName) then begin
pFileName := PAnsiChar (@(AnsiString(FileName)[1]));
FCapture := cvCreateFileCapture (pFileName);
if Assigned (FCapture) then begin
(FSourceThread as TocvCaptureThread).Capture := FCapture;
(FSourceThread as TocvCaptureThread).OnNoData := OnNoData;// Here is the addition
FSourceThread.Resume;
end;
end;
end;
FEnabled := Value;
end;
end;

ffplay demo sdl.dcu not found

Hi,

I'm trying to compile ffplay demo and get "sdl.dcu" not found error. It is not mentioned anywhere. Where do i obtain it?

Regards,
Okan

cv_ExtractSURF crash

Hi,

I tried to run this demo on Delphi XE8 but it just crash without no info.
All other demos except OpenCV classes demo compile correctly.

problem to build opencv.bpl

after compile opencv
compiler show error
[DCC Error] uOCVRegister.pas(21): E2010 Incompatible types: 'TComponentClass' and 'class of TocvImageOperation'
[DCC Error] uOCVRegister.pas(25): E2010 Incompatible types: 'TComponentClass' and 'class of TocvCamera'
[DCC Error] uOCVRegister.pas(28): E2010 Incompatible types: 'TComponentClass' and 'class of TocvCamera'
[DCC Error] uOCVRegister.pas(34): E2010 Incompatible types: 'TComponentClass' and 'class of TocvSplitter'
[DCC Fatal Error] OpenCV.dpk(43): F2063 Could not compile used unit 'uOCVRegister.pas'
thanks for help

Ip Camera Demo

hi, im trying to run latest version 2.47 with the IPCamera Demo(vlc and multidemo) but none of them works. This part

capture := cvCreateFileCapture(pAnsiChar(rtsp));
if Assigned(capture) then

always return capture = nil so never enter inside the if statment.
I have not previous version of Delphi-OpenCV so i cant test it. It seems to be a problem with the highgui library.

Thank you for your great work.

Regards

Edit: I found this function that could be of help for someone (http://casper123189.blogspot.com.es/2013/01/tbitmap2iplimage-iplimagetotbitmap.html) With this i can capture a snapshot thorugh indy+http and then put it into the correct pointer for opencv:

function TBitmap2IPLImage(srcBmp: TBitmap): PIplImage;
begin
Result := cvCreateImage(cvSize(srcBmp.Width, srcBmp.Height), IPL_DEPTH_8U,3);
Result.Origin := IPL_ORIGIN_BL;
CopyMemory(Result.ImageData, srcBmp.ScanLine[srcBmp.Height - 1],Result.ImageSize);
end;

Delphi-OpenCV installing component avformat-55.dll error

Hello,
I am trying to use Delphi-OpenCV in C++ Builder XE6. When I try to install components I am getting this error:
"The procedure entry point av_add_stable could not be located in the dynamic link library
D:......\OPENCV\DELPHI\bin\Win32\avformat-55.dll"

Did anyone have the same problem. How to solve it?
Thanks

Trying port to Lazarus...

Hello,

I tried to port your excellent work to FreePascal / Lazarus. In the most case, the port is easy, except a few problems I could not solve. Would be a great enhancement to FPC/Lazarus and a extension of users to this community.

Could you integrate these in your next release ?

OCV.Utils, line 406.

if (isgray) then
for i := 0 to 255 do
_rgb[i] := rgb(i, i, i);

_rgb is declared as pCOLORREF, pCOLORREF as ^COLORREF and COLORREF as Cardinal.
Consequently, it does not compile as _rgb is not an array.

Delphi is supporting this, but definitly, does not sound "nice" even to understand what it does.


Multiple in units.

Use of {$ELSEIF DEFINED(DelphiOCVVersion_30)}

$ELSEIF is not declared in FPC.

Should be {$ELSE} {$IFDEF DEFINED(DelphiOCVVersion_30)} .... {$ENDIF}{$ENDIF}


Multiple in units.

You use notation in type definitions with < >

Example

Ocv.core.types_c, line 927
TCV_TREE_NODE_FIELDS<node_type>
or
Ocv.core.types_c, line 960
TCV_TREE_NODE_FIELDS

The <node_type> does not compile in FPC. Translation is unknown to me. What is the aim at ?


Some unit names are not compatible with FPC.

Anyhow, it does not seem to hard to use the rigth names for FPC.

Example in OCV.Lib, we call Winapi.Windows instead if windows. This could be handled with compilar switch.


Thank you for taking care... or not. But it would be great

XE7 Component Install

DEar Sirs,

I downloaded all the package and followed all the instruction. Everything is ok, except the component install. Using the right-click menu over the bpl file there is any option to install it, only to compile and build. If I try to add it to the package set, an error rise saying that the component can be installed because is not a design time package.

Can you help me with some hints about how install the components in Delphi-XE7??

Regards

Luis J. Gutierrez

64 bit compilation

Any chance of this being possible? I tried compiling already and it throws an error here

File Name - ocv.core_c
function - cvGetSize
Line - push edx
Error - E2116 Invalid combination of opcode and operands

Build configuration 'debug' is not possible

It appears that the examples (..\samples\LibDemo) can only be built in 'release' mode, not 'debug' mode.
Is this meant to be so ?

Thank you for the answer in advance.

Kristof VR

P.S.: probably the compiler directives have something to do with it, e.g. this one in ocv.core_c

{$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}
{$ELSE}
{$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}
{$ENDIF}

Andorid

Is it possible to use this library for developing Android and iOS applications?

cameracalibrate error message

First of all a big thank you for this project!

I tried the camera calibrate project. The call cvCalibrateCamera2 will generate a "InvalidOp : Invlaid floating point operation"

replaceing the CV_CALIB_USE_INTRINSIC_GUESS flag with 0 wll generate the error
"for non-planar calibration rigs the initial intrinisc matrix must be specified"

Using distanceTransform ? distTransform ?

Hello,

I want to use the DistanceTransform function, but i don't find it.
I find cvDistanceTransform in ocv.imgproc_c, but it's in comment in the interface section...
I've tried to write it (see below), but i can't use it, i have a "external exception" when i call it.

procedure cvDistTransform(const src: pIplImage; dst: pIplImage; distance_type: Integer = CV_DIST_L2;
                          mask_size: Integer = 3; const mask: pSingle = nil; labels: pIplImage = nil; labelType: Integer = CV_DIST_LABEL_CCOMP); cdecl;

or

procedure cvDistTransform(const src: pCvArr; dst: pCvArr; distance_type: Integer = CV_DIST_L2; 
                          mask_size: Integer = 3; const mask: pSingle = nil; labels: pCvArr = nil; labelType: Integer = CV_DIST_LABEL_CCOMP); cdecl;

Am I wrong somewhere ? Is there a problem with this function ?

Thank you

Extend TocvFFMpegIPCamSource class

Would you consider adding the following to TocvFFMpegIPCamSource

type
  TIPProtocol = ( //
    ippHTTP,      //
    ippHTTPS,     //
    ippRTSP       //
    );            //

const
  TIPProtocolString: array [TIPProtocol] of Ansistring = ( //
    'http://',                                             //
    'https://',                                            //
    'rtsp://'                                              //
    );                                                     //

and then adding a new property to TocvFFMpegIPCamSource

    property Protocol: TIPProtocol read fProtocol write fProtocol default TIPProtocol.ippHTTP;

The function GetIPCamTarget: AnsiString; could then support other protocols

I.E :

  Result := TIPProtocolString[fProtocol];
  if Length (Trim(UserName)) <> 0 then Result := Result + AnsiString (Trim(UserName)) + ':' + AnsiString (Trim(Password)) + '@';
  Result := Result + AnsiString (IP) + ':' + AnsiString (IntToStr(Port));
  if Length (Trim(URI)) > 0 then begin
    if (Result[Length(Result)] <> '/') and (URI[1] <> '/') then Result := Result + '/';
    Result := Result + AnsiString (URI);
  end;

gpu

Здравствуйте, что-то не могу разобраться, расчеты ведутся на cpu или gpu?
Если на cpu то как подключить использование gpu (CUDA).

error in Delphi-OpenCV/samples/LibDemo/cvMatchShapes/cv_MatchShapes.dpr

В примерах cv_MatchShapes.dpr и cv_MatchShapes2.dpr
Delphi XE3 вылетает с эксепшеном.
Я так понял, дело в storage, для шаблона надо отдельный экземпляр storage создавать.
А то получается:

  • берем основные контура, поработали
  • почистили хранилище
  • берем контура шаблона, поработали
  • возвращаемся к основным, а там данные контуров шаблона... Exeption

I get messages with "impossible to solve unit "Winapi.windows"...

Hello,
I use Delphi XE2 pro.
I follow the "how to install" but when I try to open a project like mentioned in:
Examples of the use of video processing algorithms using VCL.Forms
<PROJECT_ROOT>\samples\VCLDemo\VCLDemo.groupproj
Examples of using FFMPEG library header files are in the
<PROJECT_ROOT>\samples\FFMpeg\FFMPEG.groupproj
I get a message "impossible to solve unit" for all uses called???
System return:
[MSBuild Erreur] "0" is an invalid value for the "DebugInformation" parameter of the "DCC" task. The "DebugInformation" parameter is of type "System.Boolean".
:-/
I use the correct Delphi version 16. Thanks for your help ;-)

error in camera calibration sample code

After a lot of testing and getting very bad results I found an error in the sample code
(Delphi-OpenCV / samples / MultiDemo / CameraCalibrate / CameraCalibrate.dpr)

Line 155 pSingle(CV_MAT_ELEM(object_points^, SizeOf(Single), i, 0))^ := j / board_w;

should be

Line 155 pSingle(CV_MAT_ELEM(object_points^, SizeOf(Single), i, 0))^ := j mod board_w;

best way to check the result of this change is to run this example and changes line
271 cvCalibrateCamera2(object_points2, image_points2, point_counts2, cvGetSize(image), intrinsic_matrix,

into

271 RMS := cvCalibrateCamera2(object_points2, image_points2, point_counts2, cvGetSize(image), intrinsic_matrix,

define the variable RMS as a double and then add the following line after line 271
writeln(format('RMS: %.6f',[rms]));

You will find that with the "/" in line 155 it's impossible to get a good RMS value, sometimes as high as 40-50. However a good RMS value is a value as close to 0 as possible. Using "mod" you will be able to get a good RMS value.

Frans

I try to get findCirclesGridDefault to work in delphi.

Hello,

i tried to get the circle calibration to work.
In the c header files there are the following lines:

enum { CALIB_CB_SYMMETRIC_GRID = 1, CALIB_CB_ASYMMETRIC_GRID = 2,
       CALIB_CB_CLUSTERING = 4 };

//! finds circles' grid pattern of the specified size in the image
CV_EXPORTS_W bool findCirclesGrid( InputArray image, Size patternSize,
                                 OutputArray centers, int flags=CALIB_CB_SYMMETRIC_GRID,
                                 const Ptr<FeatureDetector> &blobDetector = new SimpleBlobDetector());

//! the deprecated function. Use findCirclesGrid() instead of it.
CV_EXPORTS_W bool findCirclesGridDefault( InputArray image, Size patternSize,
                                          OutputArray centers, int flags=CALIB_CB_SYMMETRIC_GRID );

I tried to get them into delphi with these lines in the ocv.calib3d_c.pas :

const
CV_CALIB_CB_SYMMETRIC_GRID = 1;
CV_CALIB_CB_ASYMMETRIC_GRID = 2;
CV_CALIB_CB_CLUSTERING = 4;


//! the deprecated function. Use findCirclesGrid() instead of it.
function findCirclesGridDefault( image : pIplImage;  pattern_size: TCvSize;
                                          centers: pCvPoint2D32f;  flags : integer = CV_CALIB_CB_SYMMETRIC_GRID ) : boolean; cdecl;

But that doesn't work.
Is there a way to use circle calibration with Delphi-openCV?
Or what did i wrong in my header translation?
(I never translated c/c++ headers before)

greatings
Benedikt

TocvImage.AsBitmap channel count error

Unit ocv.comp.Types
Function TocvImage.AsBitmap

Line
pb[3 * j + K] := data[i * wStep + j * Channels + K]

I think should be
pb[Channels * j + K] := data[i * wStep + j * Channels + K]

Also, not sure why this line is here
Result := Result;

Installation in XE6 issue

Hi. I have experienced the same issue that spiders06 described in #16.

I have Win 7 64 bit, Delphi XE6 Update1. I installed opencv 2.4.9, append it's binaries folder and FFMPEG folder in system path, installed Visual C++ redistributable for VS 2013 and append needed folders in Delphi.

When I tried to install dcl**CV200 packages, I obtained an error
image.

I tried different opencv and VC++ redistributables, tried to append Win64 target in Delphi, but cannot install packages anyway.

So can you kindly provided me with information:

  1. which binaries should be seen in system path (in opencv installation folder I have x64 and x86 folders and vc10, vc11,vc12 subfolders in every one)?
  2. which VC++ redistributables binaries should be installed - x64 or x86?
  3. any other known issues, which can prevent packages installation?

Thank you for a help.

CascadeClassifier

Добрый день!
В Вашей библиотеке реализован метод cvHaarDetectObjects, но отсутствует реализация метода detectMultiScale (класс CascadeClassifier), который обеспечивает работу с новым форматом файлов-классификаторов.
(http://docs.opencv.org/modules/objdetect/doc/cascade_classification.html#CascadeClassifier)
Класс описан в c:\OpenCV\sources\modules\objdetect\include\opencv2\objdetect\objdetect.hpp, стр.385

Планируете ли его реализацию?

С уважением.

Adaptive Histogram

Hi,

I need adaptive histogram code of opencv for delphi. I use your project but i'cant make adepthist function.

Can you help me for issue ?

Thanks

Sincerly,

Volkan,

error report

opencv_classes.dll depends on OPENCV_CORE246.DLL,OPENCV_HIGHGUI246.DLL and OPENCV_ML246.DLL which not match opencv2.4.7 and cannot find these files in directory.

Component-->Image operation-->MotionDetect

Hi!
I’ve tried to use Your component with option MotionDetect in my application and I’ve noticed that after a few moments camera display and application are freezing. So, I’ve used Your sample application cCameraCapture in ComponentsDemo and problem has appeared too. I’ve added ReportMemoryLeaksOnShutdown to code and I’ve noticed that there are huge memory leaks in MotionDetect procedure. I’ve tried to cleanup used variables in function TocvMotionDetect.DoTransform in ocv.comp.ImageOperation.pas but it hasn’t fixed the problem. Could you take care about this bug? Thanks!
memory leak

Installing Opencv.bpl failed, compiling sample ok executing failed

Hi, i have some issues to install the component and executing sample codes.
i have win7 pro, delphi XE5, installed opencv 2.4.9 and trying to work with delphi.
As said in the title i have an issue with the component installation, cf attach image, and when i execute the compiled exe sample.

Thanks for your help
screenshot-delphicv
screenshot-delphicv2

TocvImage Create from TBitmap error

Unit ocv.comp.Types
Method - TocvImage.Create (const Bitmap: TBitmap);

Access violation when calling the constructor with Bitmap variable overload for TocvImage

AV occurs on Line -
Move (bitmapData^, FImage^.imageData^, FImage^.imageSize);

Code to reproduce :
var
TempBMP: TBitmap;
TempImage: IocvImage;
begin
TempBMP := TBitmap.Create;
TempBMP.LoadFromFile ('C:\1.bmp');
TempImage := TocvImage.Create (TempBMP);
end;

cvFilter2D

Привет, а планируется сделать cvFilter2D ???

Question

In core_c was not declared

  • cvOr
  • cvNot

It is for some reason?

Thanks,
Samuele

TocvGrayScaleOperation returns distorted image

I create a single instance of a TocvGrayScaleOperation and call the DoTransform, it executes fine, no errors but when i display the bitmap in the resulting IocvImage it comes out distorted. see attached.

I suspect it has something to do with the bitmap pixel format?

Thanks for the great library

capture

Code in utf8

Hi Great project

well, when I test the examples were not compiling, then discovered that going on the main unit of the project and changing anything delphi asks to convert to utf8, so please save the files to standard utf8.

else have any examples for facial recognition factor authentication type

Memory Leak: TocvCaptureSource

1/put a TocvCameraSource on tdatamodule, set enabled equal 'False', put the statement 'ocvmrsrc1.enabled:=true;' in Tdatamodule.onCreate event.

2/ report memory leak: ReportMemoryLeaksOnShutdown:=true;

when close program, unexpected memory leak: tocvcapturethread.execute $1$Actrec X1, TCriticalSection X1, TocvCaptureThread X1

check opencv source, found the bug in ocv.comp.source.pas, TocvCustomSource.TerminateSourceThread, it should be wait the thread terminated. just like this
if FourceThread.Supended then begin
FourceThread.resume;
sleep(10);
end;
while FourceThread.FLiveFlag<>0 do begin
sleep(10);
Application.processMessages;
end;
FSourceThread:=nil;


but the property 'enabled' use default value 'True', all is OK.

FeatureDetector

Здравствуйте, очень интересуют Ваши планы по обертке для FeatureDetector.
Спасибо.

cvLoadLatentSvmDetector

Добрый день,
может в примере ошибка потому что в "Delphi-OpenCV/source/ocv.objdetect_c.pas"
способы вызова для "Latent SVM Object Detection functions" указаны
как stdcall, а не cdecl?
Я в обертках не силен но судя по вики, это вполне реально:
"Во всех соглашениях (кроме cdecl) подпрограмма обязана обеспечить восстановление перед возвратом значений сегментных регистров процессора ..."

Some function require testing

--------- core_c -------------
cvGetImageROI
cvCreateMatHeader
cvGet1D
cvGet2D
cvGet3D
cvGetND
cvCheckTermCriteria

opencv_classes300 dll

Доброго дня!
opencv_classes300d.dll отсутствует в поставке- это работа с opencv версии 3 не до конца реализована?

unoins

type
Cv32suf = packed record
i: Integer;
u: Cardinal;
f: Single;
end;
this is no a union like type, it dos not behave like one.

you should consider using :

type
  Cv32suf = record
    case integer  of
      0:
        (i: Integer);
      1:
        (u: Cardinal);
      2:
        (f: Single);
  end;

otherwise, great work! 👍

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.