Project Delphi-OpenCV. Translation of OpenCV library header files in Delphi
Go to file
Laentir Valetov 109571055b
Merge pull request #164 from micha137/master
CV_MAT_ELEM_PTR_FAST(): Fix 64 bit bug
2023-11-13 17:36:42 +04:00
bin Updated #96 2019-03-04 17:29:54 +04:00
CheckCVDep Remove third party ffmpeg pascal headers 2019-09-27 16:00:17 +04:00
Delphi-FFMPEG@0ce4148739 Added *.res files 2020-02-21 22:07:22 +04:00
jedi@51d1d0a575 Delphi 11 Alexandria 2022-02-10 15:26:22 +04:00
packages Delphi 11 Alexandria 2022-02-10 15:26:22 +04:00
redist Refactoring... 2019-12-18 01:53:23 +04:00
resource Directory restructuring ... 2019-12-18 00:44:54 +04:00
samples Added *.res files 2020-02-21 22:07:22 +04:00
source CV_MAT_ELEM_PTR_FAST(): Fix 64 bit bug 2023-11-03 10:30:53 +01:00
source3 Directory restructuring ... 2019-12-18 00:44:54 +04:00
_config.yml Set theme jekyll-theme-cayman 2017-09-30 20:02:41 +04:00
.gitattributes Refactoring, new wrapper Opencv classes 2014-04-04 21:14:06 +04:00
.gitignore First step to Lazarus 2019-12-20 16:03:49 +04:00
.gitmodules Delphi 11 Alexandria 2022-02-10 15:26:22 +04:00
InitDelphiFFMPEG.cmd Delphi 11 Alexandria 2022-02-10 15:26:22 +04:00
MPL-1.1.txt Demos 2016-07-31 20:23:31 +04:00
README.md First step to Lazarus 2019-12-20 16:03:49 +04:00

Delphi-OpenCV

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

Contributors:

Laentir Valetov (email: laex@bk.ru)
Mikhail Grigorev (email: sleuthhound@gmail.com)

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<64>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