- 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)
- 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"
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.
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.
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
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
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