- Allow creating new
std::vector<torch::optim::OptimizerParamGroup>in presets for PyTorch (issue #1756) - Add V4L2 Request API hwaccels in presets for FFmpeg (pull #1755)
- Add new
SampleOnnxMNISTin samples for TensorRT (pull #1742) - Fix loading issues with
libomp.dylibandlibiomp5.dylibfor DNNL and PyTorch on Mac - Include
model_package_loader.hheader file in presets for PyTorch (issue #1729) - Upgrade presets for FFmpeg 8.1, OpenBLAS 0.3.32, CPython 3.14.4, NumPy 2.4.4, SciPy 1.17.1, LLVM 22.1.1, PyTorch 2.11.0, TensorFlow Lite 2.21.0, ONNX 1.21.0, ONNX Runtime 1.24.4 (pull #1750), and their dependencies
- Compile classes with
parametersbumping minimum requirements to Java SE 8 and Android 7.0 (issue #1739)
- Ensure ONNX Runtime libraries get linked with
-z noexecstackon Linux (issue #1715) - Add setter methods for
GELUOptions.approximate()in presets for PyTorch (pull #1733) - Build FFmpeg with HarfBuzz to reenable the
drawtextfilter (pull #1731) - Enable training APIs and include
onnxruntime_training_c_api.hheader file in presets for ONNX Runtime (pull #1728) - Fix memory leak in
Tensorfactory methodscreate(),createBuffer(), andcreateIndexer()for PyTorch (pull #1722) - Rename
glooandncclmodules of PyTorch totorch_glooandtorch_ncclto avoid conflicts - Upgrade to NDK r29 for Android builds on GitHub Actions (issue #1670)
- Enable distributed package using NCCL in presets for PyTorch (issue #1402)
- Fix adapter for
c10::intrusive_ptrin presets for PyTorch (issue #1678) - Include
autocast_mode.h,FileStore.hpp,TCPStore.hpp, andgloo/transport/tcp/device.hheader files in presets for PyTorch (discussion #1712) - Introduce
linux-arm64builds for ONNX (pull #1697) - Include CUDA GPU compute capabilities 10.0 and 12.0 in builds for PyTorch (issue #1696)
- Enable DNNL and CoreML in
linux-arm64andmacosx-arm64builds for ONNX Runtime (pull #1689) - Refactor the
redistartifacts for CUDA into multiple smaller main artifacts (issue #1638) - Introduce
macosx-arm64builds for DNNL, OpenCL (issue #1681) - Upgrade presets for system APIs on Ubuntu 22.04 LTS (Jammy), macOS 15, Windows SDK 10.0 (pull #1659)
- Add
windows-arm64builds for LLVM (pull #1656) - Introduce CUDA-enabled
linux-arm64-gpubuilds to presets for OpenCV (pull #1651) - Reenable again
linux-arm64builds for CPython and NumPy (pull #1652) - Bundle libraries for VA-API 2.x with FFmpeg to avoid loading issues (issue bytedeco/javacv#2340)
- Upgrade presets for OpenCV 4.13.0, FFmpeg 8.0.1, MKL 2025.3.1, DNNL 3.11, OpenBLAS 0.3.31, CUDA 13.1.1, cuDNN 9.19.0.56, NCCL 2.29.3, nvCOMP 5.1.0.21, NVIDIA Video Codec SDK 13.0.37, CPython 3.14.3, NumPy 2.4.2, SciPy 1.17.0, LLVM 21.1.8, libffi 3.5.2, Leptonica 1.87.0, Tesseract 5.5.2, PyTorch 2.10.0, SentencePiece 0.2.1, TensorFlow Lite 2.20.0, TensorRT 10.15.1.29, Triton Inference Server 2.65.0, ONNX 1.20.1, ONNX Runtime 1.24.1, and their dependencies
- Add presets for the CUFILE module of CUDA
- Fix FFmpeg builds against VA-API libraries (pull #1608)
- Add
openblas_fullclass giving access to all of OpenBLAS (pull #1572) - Allow setting "org.bytedeco.openblas.load" system property to "none" (issue #1203)
- Fix presets for the CUPTI module of CUDA on Windows (pull #1576)
- Introduce
macosx-arm64builds for ARPACK-NG, CMINPACK, FFTW, GSL, TensorFlow Lite, ONNX, ONNX Runtime (issue #1069) - Upgrade presets for OpenCV 4.11.0, FFmpeg 7.1.1, MKL 2025.2, DNNL 3.8.1 (pull #1633), OpenBLAS 0.3.30, CPython 3.13.5, NumPy 2.3.1, SciPy 1.15.3, LLVM 20.1.7, libffi 3.5.1, Tesseract 5.5.1, CUDA 12.9.1, cuDNN 9.10.2, NCCL 2.27.5, nvCOMP 4.2.0.11, NVIDIA Video Codec SDK 13.0.19, PyTorch 2.7.1, TensorFlow Lite 2.19.0, TensorRT 10.12.0.36, Triton Inference Server 2.59.0, ONNX 1.18.0, ONNX Runtime 1.22.0, and their dependencies
- Enable distributed package using Gloo in presets for PyTorch (pull #1510)
- Add presets for the CUPTI module of CUDA (pull #1531)
- Add new
ClangMemoryMgmtExamplein samples for LLVM (pull #1522) - Enable
opencv_python3module formacosx-arm64as well (pull #1517) - Introduce
macosx-arm64builds for CPython (pull #1511), NumPy (pull #1515), SciPy (pull #1516) - Update and fix the sample code of the presets for LLVM (pull #1501)
- Fix Vulkan GPU acceleration for FFmpeg (pull #1497)
- Build FFmpeg with zimg to enable zscale filter (pull #1481)
- Enable PulseAudio support for FFmpeg on Linux (pull #1472)
- Virtualize
btCollisionWorld,btOverlapFilterCallback,btOverlapCallbackfrom Bullet Physics SDK (pull #1475) - Upgrade presets for OpenCV 4.10.0, FFmpeg 7.1, Spinnaker 4.0.0.116 (pull #1524), MKL 2025.0, DNNL 3.6.1, OpenBLAS 0.3.28, CMINPACK 1.3.11, GSL 2.8, CPython 3.13.0, NumPy 2.1.3, SciPy 1.14.1, LLVM 19.1.3, LibRaw 0.21.2 (pull #1520), Leptonica 1.85.0, Tesseract 5.5.0, libffi 3.4.6, CUDA 12.6.2, cuDNN 9.5.1, NCCL 2.23.4, nvCOMP 4.1.0.6, OpenCL 3.0.17, NVIDIA Video Codec SDK 12.2.72, PyTorch 2.5.1 (pull #1466), SentencePiece 0.2.0, TensorFlow Lite 2.18.0, TensorRT 10.6.0.26, Triton Inference Server 2.51.0, ONNX 1.17.0, ONNX Runtime 1.20.0, TVM 0.18.0, and their dependencies
- Introduce
macosx-arm64builds for PyTorch (pull #1463) - Reenable
linux-arm64builds for CPython and NumPy (pull #1386) - Enable Vulkan GPU acceleration for FFmpeg (pull #1460)
- Include
timeapi.hfor system API of Windows (pull #1447) - Add Android and Windows builds to presets for DepthAI (pull #1441)
- Add presets for nvCOMP 3.0.5 (pull #1434), SentencePiece 0.1.99 (pull #1384)
- Refactor and improve presets for PyTorch (pull #1360)
- Include
mkl_lapack.hheader file in presets for MKL (issue #1388) - Map new higher-level C++ API of Triton Inference Server (pull #1361)
- Upgrade presets for OpenCV 4.9.0, FFmpeg 6.1.1, HDF5 1.14.3, MKL 2024.0, DNNL 3.3.4, OpenBLAS 0.3.26, ARPACK-NG 3.9.1, CPython 3.12.1, NumPy 1.26.3, SciPy 1.12.0, LLVM 17.0.6, Leptonica 1.84.1, Tesseract 5.3.4, CUDA 12.3.2, cuDNN 8.9.7, NCCL 2.19.3, OpenCL 3.0.15, PyTorch 2.1.2 (pull #1426), TensorFlow Lite 2.15.0, Triton Inference Server 2.41.0, DepthAI 2.24.0, ONNX 1.15.0, ONNX Runtime 1.16.3, TVM 0.14.0, and their dependencies
- Virtualize
nvinfer1::IGpuAllocatorfrom TensorRT to allow customization (pull #1367) - Add new
SampleJpegDecoderandSampleJpegEncodercode for nvJPEG module of CUDA (pull #1365) - Map
std::vectorofCameraParams,ImageFeatures, andMatchesInfofromcv::detail(issue bytedeco/javacv#2027) - Fix H.264 decoder of FFmpeg by increasing MAX_SLICES to 256 (pull #1349)
- Link FFmpeg with latest version of VA-API libraries (pull #1296)
- Build HDF5 with support for SZIP enabled (pull #1334)
- Map missing functions from
mkl_trans.hin presets for MKL (issue #1331) - Bundle the official Java API of HDF5 via the
hdf5_javalibrary (pull #1327) - Map missing
cblas_?axpby()functions in presets for MKL (issue #1326) - Prefix with "fisheye" all functions from the
cv::fisheye::namespace to avoid collisions (pull #1324) - Remove mapping for platform-dependent
enumvalues in presets for libffi (pull #1318) - Fix mapping of
cv::fisheye::calibrate()function fromopencv_calib3d(issue #1185) - Add an RPATH to the
tesseractprogram to avoid loading issues (issue #1314) - Bundle the CUPTI module of CUDA in the presets for PyTorch (pull #1307)
- Build FFmpeg with AOMedia AV1 and SVT-AV1 codecs (pull #1303)
- Map
c10::OptionalArrayRef<int64_t>from PyTorch tolong...as well for convenience (issue #1300) - Remove mapping for
c10::OptionalArrayRefto simplify calls in presets for PyTorch (issue #1300) - Virtualize
btMotionStateandbtDefaultMotionStatefrom Bullet Physics SDK to allow callbacks (pull #1297) - Define
STRING_BYTES_CHARSETto "UTF-8" for FFmpeg since it appears to assume that (issue bytedeco/javacv#1945) - Map
at::ITensorListRefas used byat::cat()in presets for PyTorch (issue #1293) - Map
torch::data::datasets::ChunkDataReaderand related data loading classes from PyTorch (issue #1215) - Add missing predefined
AVChannelLayoutin presets for FFmpeg (issue #1286) - Map
c10::impl::GenericDictas returned byc10::IValue::toGenericDict()in presets for PyTorch - Introduce
linux-armhfandlinux-x86builds to presets for TensorFlow Lite (pull #1268) - Add presets for LibRaw 0.21.1 (pull #1211)
- Upgrade presets for OpenCV 4.7.0, FFmpeg 6.0 (issue bytedeco/javacv#1693), HDF5 1.14.1, Hyperscan 5.4.2 (issue #1308), Spinnaker 3.0.0.118 (pull #1313), librealsense2 2.53.1 (pull #1305), MKL 2023.1, DNNL 3.1, OpenBLAS 0.3.23, ARPACK-NG 3.9.0, CPython 3.11.3, NumPy 1.24.3, SciPy 1.10.1, LLVM 16.0.4, Leptonica 1.83.0, Tesseract 5.3.1, CUDA 12.1.1, cuDNN 8.9.1, NCCL 2.18.1, OpenCL 3.0.14, NVIDIA Video Codec SDK 12.1.14, PyTorch 2.0.1, TensorFlow Lite 2.12.0, TensorRT 8.6.1.6, Triton Inference Server 2.33.0, DepthAI 2.21.2, ONNX 1.14.0, ONNX Runtime 1.15.0, TVM 0.12.0, Bullet Physics SDK 3.25, and their dependencies
- Fix mapping of
torch::ExpandingArrayWithOptionalElemin presets for PyTorch (issue #1250) - Disable OpenMP for Tesseract to work around performance issues (pull #1201)
- Enable NVIDIA GPU acceleration for FFmpeg on ARM and POWER as well (issue bytedeco/javacv#1894)
- Add support for HEVC and Opus to FLV format in presets for FFmpeg (pull #1228)
- Build Leptonica with OpenJPEG for JPEG 2000 support
- Introduce
linux-arm64andmacosx-arm64builds to presets for libpostal (pull #1199 and pull #1205) - Map missing factory functions in
torch::namespace usingtorch_as prefix in presets for PyTorch (issue #1197) - Add presets for the nvJPEG module of CUDA (issue #1193)
- Introduce Android builds for TensorFlow Lite (discussion #1180)
- Map
std::vector<cv::Ptr<cv::mcc::CChecker> >forCCheckerDetector.getListColorChecker()(issue bytedeco/javacpp#571) - Include missing
opencv2/mcc/ccm.hppheader file in presets for OpenCV (discussion bytedeco/javacpp#568) - Fix a few incorrectly mapped instances of
std::unordered_mapfor PyTorch (issue #1164) - Migrate builds for Leptonica and Tesseract to CMake (issue #1163)
- Introduce
macosx-arm64builds for LZ4 (pull #1243), libffi (issue #1182), Leptonica, and Tesseract (issue #814) - Map instances of
torch::OrderedDictusing C++ templates from PyTorch (issue #623) - Add presets for Bullet Physics SDK 3.24 (pull #1153)
- Add
long[] pytorch.Tensor.shape()method for convenience (pull #1161) - Enable DNNL codegen as BYOC backend in presets for TVM
- Allow passing raw pointer as deleter to
from_blob(), etc functions of PyTorch (discussion #1160) - Include
cudnn_backend.hheader file in presets for CUDA (issue #1158) - Bundle
zlibwapi.dllrequired by cuDNN in redist artifacts of presets for CUDA (issue bytedeco/javacv#1767) - Harmonize string and buffer pointer types of function parameters from DepthAI (issue #1155)
- Bundle correctly OpenMP library for PyTorch builds on Mac as well (issue #1225)
- Remove dependency on CUDA from presets for Triton Inference Server (pull #1151)
- Disable signal handlers of DepthAI known to cause issues with the JDK (issue #1118)
- Upgrade presets for OpenCV 4.6.0, FFmpeg 5.1.2, HDF5 1.12.2, LZ4 1.9.4, MKL 2022.2, DNNL 2.7.1, OpenBLAS 0.3.21 (issue #1171), CPython 3.10.8, NumPy 1.23.4, SciPy 1.9.3, Gym 0.26.2, LLVM 15.0.3, libffi 3.4.4, Tesseract 5.2.0, CUDA 11.8.0, cuDNN 8.6.0, NCCL 2.15.5, OpenCL 3.0.12, MXNet 1.9.1, PyTorch 1.12.1, TensorFlow Lite 2.10.0, TensorRT 8.4.3.1, Triton Inference Server 2.26.0, ALE 0.8.0, DepthAI 2.18.0, ONNX 1.12.0, ONNX Runtime 1.13.1, TVM 0.10.0, Skia 2.88.3, cpu_features 0.7.0, ModSecurity 3.0.8, and their dependencies
- Build FFmpeg with WebP encoding support (pull #1133)
- Include
sys/ipc.handsys/shm.hfor system APIs of Linux and Mac OS X (pull #1132) - Map
c10::ArrayRef<at::Tensor>(std::vector<at::Tensor>&)constructor from PyTorch for convenience (discussion #1128) - Add
long rs2_get_frame_data_address()to reduce garbage for real-time applications using librealsense2 (discussion bytedeco/javacpp#532) - Add to
torch.Tensorconvenientcreate(),createBuffer(), andcreateIndexer()factory methods for PyTorch - Upgrade requirements to Android 7.0 for camera support in OpenCV and FFmpeg (issue bytedeco/javacv#1692)
- Include new
llvm-c/Transforms/PassBuilder.hheader file in presets for LLVM (pull #1093) - Introduce
macosx-arm64builds to presets for OpenCV, FFmpeg, OpenBLAS (issue #1069), LLVM (pull #1092) - Add presets for LZ4 1.9.3 (pull #1094), Triton Inference Server 2.18.0 (pull #1085)
- Add presets for the NvToolsExt (NVTX) module of CUDA (issue #1068)
- Increase the amount of function pointers available for callbacks in presets for Qt (pull #1080)
- Map C++ JIT classes and functions of TorchScript in presets for PyTorch (issue #1068)
- Synchronize
cachePackage()and prevent repeated package caching in all presets (pull #1071) - Build FFmpeg with VA-API enabled and bundle its libraries to avoid loading issues (issue bytedeco/javacv#1188)
- Upgrade presets for OpenCV 4.5.5, FFmpeg 5.0 (pull #1125), librealsense2 2.50.0, Arrow 6.0.1, MKL 2022.0, DNNL 2.5.2, OpenBLAS 0.3.19, FFTW 3.3.10, CPython 3.10.2, NumPy 1.22.2, SciPy 1.8.0, Gym 0.21.0, LLVM 13.0.1, libpostal 1.1, Leptonica 1.82.0, Tesseract 5.0.1, CUDA 11.6.0, cuDNN 8.3.2, NCCL 2.11.4, MXNet 1.9.0, PyTorch 1.10.2, TensorFlow Lite 2.8.0, TensorRT 8.2.3.0, ALE 0.7.3, DepthAI 2.14.1, ONNX 1.10.2, ONNX Runtime 1.10.0, TVM 0.8.0, ModSecurity 3.0.6, and their dependencies
- Change
opencv_core.Matconstructors to create column vectors out of arrays for consistency (issue #1064) - Add presets for the new
barcodeandwechat_qrcodemodules of OpenCV - Work around loading issues with execution providers in presets for ONNX Runtime
- Annotate the presets for LLVM with
@NoExceptionto reduce unneeded C++ overhead (pull #1052) - Update samples for LLVM 12 including new
samples/llvm/OrcJit.javausing libffi (pull #1050) - Enable GTK support in presets for OpenCV when building on ARM as well
- Correct
enumclasses in presets for Spinnaker (pull #1048) - Add Windows build for ONNX (issue #983)
- Add
linux-arm64builds to presets for DNNL, OpenCL, TensorRT (pull #1044), and ONNX Runtime - Build FFmpeg with libxml2, enabling support for DASH demuxing (pull #1033), and libsrt for SRT protocol support (pull #1036)
- Add
@MemberGetterforav_log_default_callback()in presets for FFmpeg (issue #812) - Include
cudaGL.handcuda_gl_interop.hheader files in presets for CUDA (pull #1027) - Add presets for libffi 3.4.2 (issue #833), NVIDIA Video Codec SDK 11.1.5 (pull #1020), PyTorch 1.9.0 (issue #623), TensorFlow Lite 2.5.0, DepthAI 2.8.0, ModSecurity 3.0.5 (pull #1012)
- Map
std::vector<cv::Range>toRangeVectorinopencv_core.Matfor convenience (issue bytedeco/javacv#1607) - Include
genericaliasobject.h,context.h,tracemalloc.h, anddatetime.hfor CPython (issue #1017) - Add samples using LLVM modules to deal with bitcode and object files (pull #1016)
- Upgrade presets for OpenCV 4.5.3, FFmpeg 4.4 (pull #1030), Spinnaker 2.4.0.143 (pull #1040), librealsense2 2.44.0 (pull #1031), Arrow 4.0.1, HDF5 1.12.1, MKL 2021.3, DNNL 2.3, OpenBLAS 0.3.17, GSL 2.7, CPython 3.9.6, NumPy 1.21.1, SciPy 1.7.0, Gym 0.18.3, LLVM 12.0.1 (pull #1065), Leptonica 1.81.1, CUDA 11.4.0, cuDNN 8.2.2, NCCL 2.10.3, TensorRT 8.0.1.6, ONNX 1.9.0, ONNX Runtime 1.8.1, Skia 2.80.3, and their dependencies
- Bundle LLD executable in presets for LLVM as required by TVM on Windows
- Prevent
public static finalobjects from getting deallocated byPointerScope(issue bytedeco/javacv#1599) - Fix compatibility of Leptonica with JavaFX by upgrading to libpng 1.6.37 (pull #1007)
- Introduce
linux-arm64build for CUDA, cuDNN, and NCCL (issue #735) - Add new array constructors to
opencv_core.Matthat copy data for convenience (pull #1002) - Rebase
PrimitiveScalaronPrimitiveScalarBasein presets for Arrow for easy access todata()(issue #998) - Add
NamedMetadataOperations.himplementing data retrieval operations for LLVM nodes (pull #995) - Enable OpenMP for ONNX Runtime on Mac once again (issue #917)
- Build OpenCV without OpenBLAS when environment variable
NOOPENBLAS=yes(pull #987) - Enable OpenCL acceleration for DNNL (issue #938)
- Introduce monkey patching when loading presets for CPython to relocate home more reliably
- Add display sample for librealsense2 (pull #978)
- Fix builds for libpostal on Mac and Windows (issue #903)
- Fix builds for NumPy and SciPy on Linux when using a cross compiler or not
- Update presets for Visual Studio 2019 on Windows
- Add presets for OpenCL 3.0, TVM 0.7.0 and bundle its official Java API (TVM4J) via the
jnitvm_runtimelibrary - Include
free()in presets for FTTW as required byfftw_export_wisdom_to_string()(issue bytedeco/javacpp#429) - Include all missing header files from the
opencv_ximgprocmodule (issue #958) - Disable assembly optimizations for libx264 with FFmpeg on Mac to work around crashes (issue bytedeco/javacv#1519)
- Add
linux-armhfandlinux-arm64builds for librealsense and librealsense2 (pull #951) - License default builds of FFmpeg under LGPL v3 and move GPL-enabled builds to
-gplextension (pull #950) - Upgrade presets for OpenCV 4.5.1, FFmpeg 4.3.2, Arrow 3.0.0, Hyperscan 5.4.0, MKL 2021.1, OpenBLAS 0.3.13, ARPACK-NG 3.8.0, CMINPACK 1.3.8, FFTW 3.3.9, librealsense2 2.40.0 (pull #946), DNNL 2.1.1, CPython 3.9.2, NumPy 1.20.1, SciPy 1.6.1, Gym 0.18.0, LLVM 11.1.0 (pull #1001), OpenPose 1.7.0, CUDA 11.2.1, cuDNN 8.1.1, NCCL 2.8.4, MXNet 1.8.0, TensorFlow 1.15.5, TensorRT 7.2.3.4, ONNX 1.8.1, ONNX Runtime 1.7.0, Qt 5.15.2, Skia 2.80.2, cpu_features 0.6.0, and their dependencies
- Bundle
libpostal_dataprogram, executable viaLoader.load()for convenience (issue #939) - Enable all stable target architectures in the presets for LLVM (pull #937)
- Virtualize
QObjectand its subclasses from Qt to allow customization (issue bytedeco/javacpp#419) - Bundle programs from Clang and LLVM, executable via
Loader.load()for convenience (issue #833) - Include
nnvm/c_api.hheader file in presets for MXNet (issue #912) - Enable OpenMP for DNNL on Mac using same library name as MKL to prevent conflicts (issue #907)
- Fix loading issue with
opencv_ximgproc(issue #911) - Build LibTIFF after WebP to make sure they link correctly in presets for Leptonica
- Virtualize
IInt8Calibratorplus subclasses from TensorRT to allow customization (issue #902) - Replace
requireswithrequires staticin JPMS.platformmodules (pull #900) - Add presets for OpenPose 1.6.0 (pull #898)
- Add comparison against MKL in
llvm/samples/polly/MatMulBenchmark.java - Add
requires org.bytedeco.javacpp.${javacpp.platform.module}to loadjnijavacppwith JPMS (pull #893) - Bundle configuration files required by AOT compilation with GraalVM (issue eclipse/deeplearning4j#7362)
- Add support for Windows to presets for Qt (issue #862)
- Fix JPMS modules for CUDA, ARPACK-NG, GSL, SciPy, Gym, MXNet (pull #880 and pull #881), OpenCV, CPython, LLVM, Tesseract, Qt (pull #928)
- Build OpenBLAS with a
TARGETeven forDYNAMIC_ARCHto avoid SIGILL (issue eclipse/deeplearning4j#8747) - Upgrade presets for OpenCV 4.4.0, FFmpeg 4.3.1 (pull #891), Arrow 1.0.1, Hyperscan 5.3.0, MKL 2020.3, MKL-DNN 0.21.5, DNNL 1.6.2, OpenBLAS 0.3.10, CPython 3.7.9, NumPy 1.19.1, SciPy 1.5.2, Gym 0.17.2, LLVM 10.0.1, Leptonica 1.80.0, CUDA 11.0.3, cuDNN 8.0.3, NCCL 2.7.8, MXNet 1.7.0, TensorFlow 1.15.3, TensorRT 7.1, ONNX 1.7.0 (pull #882), ONNX Runtime 1.4.0 (pull #887), Qt 5.15.0, Skia 2.80.1, and their dependencies
- Add
FullOptimization.hallowing users to fully optimize LLVM modules (pull #869)
- Add presets for the new
intensity_transformandrapidmodules of OpenCV - Add support for Polly optimizer to presets for LLVM (pull #864)
- Fix loading issue with
opencv_dnn_superres(issue bytedeco/javacv#1396) - Add support for Windows to presets for TensorRT (pull #860)
- Add dependency on presets for
jnijavacppandjavacpp-platformartifact to fix issues at load time (issue bytedeco/javacv#1305) - Bundle the official Java API of ONNX Runtime via the
jnionnxruntimelibrary - Add CUDA-enabled build for ONNX Runtime via
-gpuextension - Fix presets for LLVM 9.0 where libclang would fail to load on Windows (issue #830)
- Add Windows build for ONNX Runtime, map the C++ API, and refine support for DNNL (pull #841)
- Add convenient
Py_AddPath()helper method to presets for CPython - Include
OrcBindings.hand other missing header files for LLVM (issue #833) - Fix
-platformartifacts on JPMS by commenting out requires to Android modules (issue #814 and pull #831) - Include
timecode.h, among other missing header files, in theavutilmodule of FFmpeg (issue #822) - Map a few more inherited constructors missing from the presets for MKL-DNN and DNNL
- Make sure
clone()actually returns newPIX,FPIX, orDPIXobjects with presets for Leptonica - Add
opencv_python3module and corresponding loader class with sample code to the presets for OpenCV (issue #756) - Bundle OpenSSL in the presets for CPython for consistency across platforms (issue #796)
- Add presets for Arrow 0.16.0, SciPy 1.4.1 (issue #747), Gym 0.17.1, Hyperscan 5.2.1 (pull #849)
- Upgrade presets for OpenCV 4.3.0, FFmpeg 4.2.2, Spinnaker 1.27.0.48, HDF5 1.12.0, MKL 2020.1, MKL-DNN 0.21.4, DNNL 1.3, OpenBLAS 0.3.9, CPython 3.7.7, NumPy 1.18.2, LLVM 10.0.0, CUDA 10.2, cuDNN 7.6.5, NCCL 2.6.4, MXNet 1.6.0, TensorFlow 1.15.2, TensorRT 7.0, ALE 0.6.1, Leptonica 1.79.0, Tesseract 4.1.1, ONNX Runtime 1.2.0, Qt 5.14.2, Skia 1.68.1, and their dependencies
- Add presets for the
cudacodec,cudafeatures2d,cudastereo, andcudabgsegmmodules of OpenCV (issue #806) - Fix mapping of
warpAffineandwarpPerspectivefromopencv_cudawarping(issue #806) - Add
linux-armhfandlinux-arm64builds for HDF5 (issue #794) - Add build for Mac OS X to presets for nGraph (issue #799)
- Update presets for Visual Studio 2017 on Windows
- Bundle the
opencv_annotation,opencv_interactive-calibration,opencv_version,opencv_visualisation, andtesseractprograms - Add
linux-armhf,linux-arm64,linux-ppc64le, andwindows-x86builds for CPython, NumPy, and LLVM (pull #768) - Include
audio_ops.h,list_ops.h,lookup_ops.h, andmanip_ops.hfor TensorFlow - Add necessary platform properties to build
-gpuextensions onlinux-arm64andlinux-ppc64le(issue #769) - Add packages missing from TensorFlow (issue #773)
- Fix JPMS module names for OpenBLAS and Tesseract (issue #772)
- Include
env.h,kernels.h, andops.hto allow creating custom operations using the C API of TensorFlow - Add profiles to parent
pom.xmlto detect host and use its artifacts, for example:mvn -Djavacpp.platform.custom -Djavacpp.platform.host ... - Add
-platform-gpu,-platform-python,-platform-python-gpu, and-platform-redistartifacts for convenience - Add presets for librealsense2 2.29.0, DNNL 1.1, ONNX Runtime 0.5.0
- Upgrade presets for OpenCV 4.1.2, FFmpeg 4.2.1, librealsense 1.12.4, MKL 2019.5, MKL-DNN 0.21.2, OpenBLAS 0.3.7, GSL 2.6, CPython 3.7.5, NumPy 1.17.3, LLVM 9.0.0, CUDA 10.1 Update 2, cuDNN 7.6.4, NCCL 2.4.8, MXNet 1.5.1, TensorFlow 1.15.0, TensorRT 6.0, ONNX 1.6.0 (pull #795), nGraph 0.26.0, Qt 5.13.1, cpu_features 0.4.1, and their dependencies
- Add
linux-arm64CI builds for OpenCV, FFmpeg, OpenBLAS, FFTW, GSL, Leptonica, Tesseract, and others (issue bytedeco/javacv#1021) - Add convenient
Tensor.create(boolean[] data, shape)factory methods for TensorFlow - Set correct default path to
javacpp.platform.compilerfor Android builds on Mac OS X (issue #733) - Call
Loader.checkVersion()in all presets to log warnings with potentially incompatible versions of JavaCPP - Add missing
mkl_gnu_threadpreload in presets for OpenBLAS, MKL-DNN, and TensorFlow (pull #729) - Overload
Tensor.create()factory methods for TensorFlow with handylong... shape(issue bytedeco/javacpp#301) - Add build for
linux-arm64to presets for OpenBLAS (pull #726) - Bundle complete binary packages of CPython itself for convenience (issue #712)
- Fix and refine mapping for
HoughLines,HoughLinesP, andHoughCircles(issue #717) - Add Python-enabled builds for TensorFlow via the
-pythonand-python-gpuextensions - Map the C/C++ API supporting eager execution in the presets for TensorFlow
- Load the symbols from the
pythonlibrary globally as often required by Python libraries (issue ContinuumIO/anaconda-issues#6401) - Link OpenCV with OpenBLAS/MKL to accelerate some matrix operations
- Add presets for the
qualitymodule of OpenCV - Upgrade presets for OpenCV 4.1.0, libdc1394 2.2.6, MKL 2019.4, MKL-DNN 0.20, OpenBLAS 0.3.6, CPython 3.7.3, NumPy 1.16.4, Tesseract 4.1.0, CUDA 10.1 Update 1, cuDNN 7.6, MXNet 1.5.0.rc2, TensorFlow 1.14.0, ONNX 1.5.0, nGraph 0.22.0, Qt 5.13.0, cpu_features 0.3.0, and their dependencies
- Include
setlocale()in presets for Tesseract to work around issues with locale (issue #694) - Bundle the
pythonprogram, executable viaLoader.load()for convenience - Bundle Vector Mathematical Library (VML) in redist artifacts of the presets for MKL (issue #705)
- Add
org.bytedeco.tensorflow.StringArray.put(BytePointer)method to change character encoding (issue bytedeco/javacpp#293) - Bundle
ffmpegandffprobeprograms, executable viaLoader.load()for convenience (issue bytedeco/javacv#307) - Add functions related to threading missing from presets for CPython
- Lengthen
Matsize and step getters to supportlongindexing (pull #700) - Rename
groupIdto "org.bytedeco" and use ModiTect to modularize all presets and comply with JPMS (pull #681) - Make
nvinfer1::Weights::valuessettable in presets for TensorRT (issue #698) - Fix mapping of
HoughLines,HoughLinesP,HoughCircles, andSubdiv2Dfromopencv_imgproc(issues bytedeco/javacv#913 and bytedeco/javacv#1146) - Add basic mapping of stdio streams to presets for GSL since it relies on them for serialization
- Fix crash in Leptonica on CentOS 6 by downgrading to libpng 1.5.30 (issue #680)
- Add
GetComponentImagesExample,IteratorOverClassifierChoicesExample,OrientationAndScriptDetectionExample, andResultIteratorExamplefor Tesseract (pull #673 and pull #675) - Add presets for NumPy 1.16.2, NCCL 2.4.2, nGraph 0.15.0 (pull #642), Qt 5.12.2 (pull #674), and cpu_features 0.2.0 (issue #526)
- Upgrade presets for FFmpeg 4.1.3, libfreenect 0.5.7, HDF5 1.10.5, MKL 2019.3, MKL-DNN 0.18.1, LLVM 8.0.0, Leptonica 1.78.0, ARPACK-NG 3.7.0, CUDA 10.1, cuDNN 7.5, MXNet 1.4.0, TensorFlow 1.13.1, TensorRT 5.1, ONNX 1.4.1 (pull #676), LiquidFun, Skia 1.68.0, and their dependencies including NCCL
- Build OpenCV without UI when environment variable
HEADLESS=yes(pull #667)
- Bundle the full version of MKL now that its new license permits it (issue #601)
- Bundle libraries from raspberrypi/userland to avoid loading issues on
linux-armhfdevices other than Raspberry Pi (issue bytedeco/javacv#1118) - Bundle the new official Java/Scala API of MXNet via the
jnimxnetlibrary - Add
QuickSpinC.h,SpinVideoC.h, andTransportLayer*C.hfor Spinnaker (pull #660) - Add
FlyCapture2Video.handFlyCapture2VideoDef.h, and removeAVIRecorder.hfor FlyCapture (pull #613) - Switch to Clang for Android builds with recent versions of the NDK (issue #562)
- Include
sys/sysinfo.hfor system API of Linux - Include
ucrtbase.dllwhen bundling the runtime for Visual Studio 2015 on Windows (issue bytedeco/javacv#1098) - Add support for N-dimensional arrays to
opencv_core.Mat.createIndexer()(pull #647) - Add for
CvMat,IplImage, andPIX, helpercreate(..., Pointer data)factory methods that prevent premature deallocation (issue bytedeco/javacpp#272 and issue bytedeco/javacv#1101) - Enable x265 multilib depth support at 8, 10, and 12 bits for FFmpeg (pull #619)
- Include all header files from
Python.hin presets for CPython - Fix mapping of
initCameraMatrix2D,calibrateCamera, andstereoCalibratefunctions fromopencv_calib3d - Build OpenCV with pthreads instead of OpenMP or GCD due to thread-safety and usability issues (issue bytedeco/javacv#396)
- Include IR, optimizer, and version converter for ONNX (pull #622)
- Add build for Mac OS X to presets for ONNX (issue #638)
- Allow MKL-DNN to link with the full version of MKL at runtime (issue #629)
- Add builds for
linux-mips64elto presets for ARToolKitPlus, Chilitags, flandmark, OpenBLAS, and FFTW (pull #637) - Update sample code for GSL with a more complex example (issue #636)
- Fix CUDA build for OpenCV on Mac OS X missing
libopencv_cudev.dylib(issue #626) - Upgrade presets for OpenCV 4.0.1, FFmpeg 4.1, FlyCapture 2.13.3.31, Spinnaker 1.19.0.22, HDF5 1.10.4, MKL 2019.1, MKL-DNN 0.17.2, OpenBLAS 0.3.5, LLVM 7.0.1, Leptonica 1.77.0, Tesseract 4.0.0, cuDNN 7.4, MXNet 1.4.0.rc0, TensorFlow 1.12.0, and their dependencies
- Keep globally shared dummy deallocator for
TF_Tensorout ofPointerScope - Add build for
linux-mips64elto presets for OpenCV (pull #621) - Remove calls to deprecated functions from sample code for FFmpeg (pull #323)
- Call
Pointer.setNull()in custom deallocators for the C API of TensorFlow to prevent double free from occurring - Add profiles to parent
pom.xmlthat allow multiple platforms:mvn -Djavacpp.platform.none -Djavacpp.platform.linux-x86_64 -Djavacpp.platform.windows-x86_64 ... - Add support for Windows to presets for LiquidFun (pull #536) and MXNet (pull #309)
- Add CUDA-enabled build for MXNet via
-gpuextension (pull #609) - Prevent MKL-DNN from compiling code with
-march=native(pull #618) - Add an RPATH to
libmkldnn.so.0to avoid loading issues on Linux (issue deeplearning4j/deeplearning4j#6366) - Fix logic in
tensorflow.Tensor.createIndexer()to support scalar tensors - Bundle
libgomp.so.1in JAR file of MKL-DNN for Linux - Enable OpenMP for MKL-DNN also on Mac and Windows by building with GCC
- Fix loading order of runtime libraries for Visual Studio 2015 on Windows (issue #606)
- Add methods overloaded with
PointerPointerfor MKL-DNN (issue bytedeco/javacpp#251) - Bundle native resources (header files and import libraries) of MKL-DNN
- Make MSBuild compile more efficiently on multiple processors (pull #599)
- Add samples for Clang (pull #598)
- Include
tag_constants.h,signature_constants.h,graph_runner.h,shape_refiner.h,python_api.h, and enable Python API for TensorFlow (issue #602) - Add presets for Spinnaker 1.15.x (pull #553), CPython 3.6.x, ONNX 1.3.0 (pull #547)
- Define
std::vector<tensorflow::OpDef>type toOpDefVectorfor TensorFlow - Link HDF5 with zlib on Windows also (issue deeplearning4j/deeplearning4j#6017)
- Enable MKL-DNN for MXNet and TensorFlow
- Upgrade presets for OpenCV 3.4.3, FFmpeg 4.0.2, HDF5 1.10.3, MKL 2019.0, MKL-DNN 0.16, OpenBLAS 0.3.3, ARPACK-NG 3.6.3, LLVM 7.0.0, Tesseract 4.0.0-rc2, CUDA 10.0, cuDNN 7.3, MXNet 1.3.0, TensorFlow 1.11.0, TensorRT 5.0, and their dependencies
- Fix loading issue with
opencv_cudaobjdetectandopencv_cudaoptflowon Windows (issue #592)
- Fix FFmpeg build of libvpx with Linux on ARM (issue #586)
- Enable MediaCodec acceleration for FFmpeg on Android (pull #589)
- Include
c_api_internal.hfor TensorFlow (issue #585) - Build all presets on CentOS 6 with Developer Toolset 6 and move almost all Linux builds to CentOS 6
- Fix functions from
facemark.hppandface_alignment.hppthat crash when called withcv::Matobjects - Virtualize
TensorBufferand make constructor with helper method inTensorpublic to allow zero-copy - Add factory methods for
TF_Status,TF_Buffer,TF_Tensor,TF_SessionOptions,TF_Graph,TF_ImportGraphDefOptions, andTF_Sessionthat register deallocators - Bundle the libraries of CUDA and cuDNN, allowing OpenCV, Caffe, and TensorFlow to use GPUs with no CUDA installation
- Make it possible to set the
TF_Buffer::datafield for C API of TensorFlow - Add
openblas_nolapackclass to make it easier to load BLAS libraries missing LAPACK such as MKLML - Map instances of
google::protobuf::Mapto access more of TensorFlow's configuration (issue #533) - Fix presets for OpenBLAS failing to load MKL when symbolic links are enabled on Windows
- Define
CV__LEGACY_PERSISTENCEto get back functions forKeyPointVectorandDMatchVector(issue bytedeco/javacv#1012) - Skip by default OpenBLAS functions missing from MKL 2017
- Fix presets for OpenBLAS on
linux-ppc64lenot bundling correct libraries (issue deeplearning4j/deeplearning4j#5447) - Fix CUDA build for TensorFlow on Windows (pull #567)
- Disable optimized kernels of OpenBLAS on iOS as they return incorrect results (issue #571)
- Get exception messages from
H5::Exceptionfor HDF5 (issue deeplearning4j/deeplearning4j#5379) - Add more samples for TensorFlow including a complete training example (pull #563)
- Add helper for
PIX,FPIX, andDPIXof Leptonica, facilitating access to image data of Tesseract (issue #517) - Add presets for the NVBLAS, NVGRAPH, NVRTC, and NVML modules of CUDA (issue deeplearning4j/nd4j#2895)
- Link OpenBLAS with
-Wl,-z,noexecstackonlinux-armhfas required by the JDK (issue deeplearning4j/libnd4j#700) - Include
textDetector.hppfrom theopencv_textmodule - Include
feature.pb.h,example.pb.h,record_reader.h, andrecord_writer.hfor TensorFlow (issue tensorflow/tensorflow#17390) - Enhance presets for
ALEwith access totheOSystem, etc (issue #551) - Add presets for the
saliencymodule of OpenCV (pull #555) - Add build for
linux-arm64to presets for FFmpeg (pull #556) - Add support for Windows to presets for TensorFlow (issue #111)
- Add Android utility classes from the official Java API of OpenCV and TensorFlow (issue #549)
- Update build for FFmpeg on Raspbian Stretch (pull #548)
- Add presets for MKL-DNN 0.15 and TensorRT 4.0
- Fix build for FFmpeg on
android-x86andandroid-x86_64platforms (issue bytedeco/javacv#945) - Upgrade presets for OpenCV 3.4.2, FFmpeg 4.0.1, HDF5 1.10.2, MKL 2018.3, OpenBLAS 0.3.0, ARPACK-NG 3.6.1, FFTW 3.3.8, GSL 2.5, LLVM 6.0.1, Leptonica 1.76.0, Tesseract 4.0.0-beta.3 (issue #385), Caffe 1.0, CUDA 9.2, MXNet 1.2.1.rc1, TensorFlow 1.9.0, and their dependencies
- Disable unneeded error messages from LibTIFF in presets for Leptonica (issue deeplearning4j/DataVec#518)
- Bundle the official Java APIs of OpenCV and TensorFlow, via the
opencv_javaandtensorflow_ccmodules - Correct loading order of
mkl_coreto fix MKL issues on Windows (issue deeplearning4j/deeplearning4j#4776) - Add presets for the
aruco,bgsegm,img_hash,phase_unwrapping,plot,structured_light,tracking, andxphotomodules of OpenCV (issue #319) - Add bindings for
b2DynamicTree::QueryandRayCastfor LiquidFun (pull #531) - Add support for Windows to presets for LLVM (pull #530)
- Add builds for
android-arm64andandroid-x86_64platforms (issue #52) - Fix x265 encoding with FFmpeg on Android (issue bytedeco/javacv#866)
- Add presets for ARPACK-NG, CMINPACK
- Add iOS builds for OpenCV, OpenBLAS, and Skia (pull #525)
- Let GSL link with OpenBLAS, MKL, Accelerate, etc automatically instead of GSL CBLAS (issue #18)
- Append
@NoExceptionannotation to presets for libdc1394, libfreenect, MKL, OpenBLAS, FFTW, GSL, Leptonica, CUDA, and system APIs to reduce unneeded C++ overhead - Fix mapping of
fftwf_iodimandfftwf_iodim64for FFTW (issue #523) - Add support for iOS and Accelerate to presets for OpenBLAS (pull #515)
- Add "org.bytedeco.javacpp.openblas.load" system property to use libraries from Accelerate, etc (pull #444)
- Upgrade presets for OpenCV 3.4.1, FFmpeg 3.4.2, Leptonica 1.75.3, cuDNN 7.1, MXNet 1.1.0, TensorFlow 1.7.0-rc1, and their dependencies
- Include
facemark.hpp,facemarkLBF.hpp,facemarkAAM.hpp,face_alignment.hppfrom theopencv_facemodule - Add
AxpyLayerto presets for Caffe (pull #508)
- Fix some integer types in HDF5 being mistakenly mapped to smaller integer types
- Remove the need for empty artifacts of unsupported platforms (issue #434)
- Link
jnivideoInputLib.dllstatically to avoid missing dependencies (issue bytedeco/javacv#864) - Add "org.bytedeco.javacpp.openblas.nomkl" system property to let users disable MKL easily
- Add initial set of CUDA bindings for OpenCV (pull #416)
- Add CUDA/OpenCL-enabled builds for OpenCV, Caffe, and TensorFlow via
-gpuextension (issue bytedeco/javacv#481) - Enable NVIDIA CUDA, CUVID, and NVENC acceleration for FFmpeg (pull #492)
- Include
message_lite.h,checkpoint_reader.h,saver.pb.h,meta_graph.pb.h, andloader.hfor TensorFlow (issue #494) - Add
getString()helper methods toCXString,CXTUResourceUsageKind, andCXEvalResultforclang(issue bytedeco/javacpp#51) - Add support for Mac OS X and Windows to presets for librealsense (issue #447)
- Enable MMAL and OpenMAX acceleration for FFmpeg on
linux-armhf(pull #388) - Enable V4L2 for OpenCV on ARM platforms as well (issue bytedeco/javacv#850)
- Enable Intel QSV acceleration via libmfx for FFmpeg (pull #485)
- Add support for Mac OS X and Windows to presets for libfreenect2 (issue bytedeco/javacv#837)
- Enable VisualOn AMR-WB encoder library support for FFmpeg (pull #487)
- Use native threads for FFmpeg on Windows to prevent deadlocks with pthreads (pull #481)
- Add cross-compilation support for
linux-ppc64le(pull #471) - Fix definitions of
fftw_iodimandfftw_iodim64for FFTW (issue #466) - Add
Mat(Point)andMat(Scalar)constructors to OpenCV for convenience (issue bytedeco/javacv#738) - Include the
libavutil/time.hfor FFmpeg (issue bytedeco/javacv#735) - Map
AVERROR()for error codes fromerrno.hused by FFmpeg (pull #459) - Use
longinstead ofintfor constants starting withAV_CH_LAYOUT_inavutil(pull #455) - Build FFmpeg with FreeType, enabling the
drawtextfilter (pull #452), and support for Opus (pull #457) - Enable cuDNN support for Caffe by default (issue #187)
- Use the new
BUILD_PATHenvironment variable passed by thejavacppplugin to thecppbuild.shscript files - Let presets pick up
includeorlinkpaths from cached resources (pull #101) - Update presets for Visual Studio 2015 (issue #298)
- Reuse the presets for HDF5 and OpenBLAS with Caffe and MXNet
- Replace the
exec-maven-pluginwith thejavacppplugin itself to execute thecppbuild.shscript files - Link TensorFlow statically with
cudartto avoid dependency on CUDA (issue #396) - Add missing call to
Loader.load()in helper class foropencv_ml(issue bytedeco/javacv#638) - Work around issues with TensorFlow on some versions of Mac OS X (issue #335)
- Upgrade presets for OpenCV 3.4.0, FFmpeg 3.4.1, FlyCapture 2.11.3.121 (pull #424), libdc1394 2.2.5, librealsense 1.12.1, Chilitags, HDF5 1.10.1, OpenBLAS 0.2.20, FFTW 3.3.7, GSL 2.4, LLVM 5.0.1 (pull #404), Leptonica 1.74.4, Tesseract 3.05.01, Caffe 1.0, CUDA 9.1, cuDNN 7.0, MXNet 1.0.0, TensorFlow 1.5.0-rc1, and their dependencies
- Add presets for libfreenect2 (pull #340), MKL 2018.1 (issue #112), libpostal 1.1-alpha (pull #502), The Arcade Learning Environment 0.6.0, LiquidFun (pull #356), Skia (pull #418), and system APIs (Linux, Mac OS X, and Windows)
- Fix the
FlyCapture2module for some versions on Windows (issue #337) - Add functions missing from the presets of MXNet (issue #332)
- Add presets for the
textmodule of OpenCV 3.x (pull #333)
- Fix FFmpeg builds on ARM when not using a cross compiler (issue #322)
- Add
blas_extra.hto presets for OpenBLAS, containingblas_set_num_threads()andblas_get_vendor()functions - Introduce platform artifacts that depend on binaries for all available platforms and work with any build system (sbt, Gradle, M2Eclipse, etc)
- Map more functions of the OpenCV Transparent API with
UMatandUMatVectorparameters (issue bytedeco/javacv#518) - Add support for
android-armandandroid-x86platforms to TensorFlow presets (pull #297) - Keep a reference of
tensorflow.SessionOptionsinAbstractSessionto prevent premature deallocation (pull #297) - Enable CUDA in
cppbuild.shscript for TensorFlow (issue #294) - Bundle
libgomp.so.1in JAR files of OpenCV for the sake of some Linux distributions (issue bytedeco/javacv#436) - Fix
linux-armhfandlinux-ppc64lebuilds for all presets (pull #279) - Fix
libdc1394not properly linking withlibusb-1.0on Mac OS X (issue bytedeco/javacv#501) - Add presets for the
bioinspiredmodule of OpenCV 3.1 (pull #282) - Include
tensorflow/core/graph/dot.hheader file from TensorFlow (pull #272) - Add presets for librealsense, HDF5, and OpenBLAS/MKL (issue #112)
- Make Caffe work on CPU-only machines (issue #219)
- Fix loading issue with
opencv_face(issue bytedeco/javacv#470) - Fix presets for CUDA on the
linux-ppc64leplatform - Upgrade presets for FFmpeg 3.2.1, FFTW 3.3.5, GSL 2.2.1, LLVM 3.9.0, CUDA 8.0, cuDNN 5.1, Caffe, MXNet, TensorFlow 0.11.0, and their dependencies
- Set default options in
tensorflow/cppbuild.shto prevent console reads during build - Add
Tensor.createStringArray()method to accessDT_STRINGdata (issue #249) - Fix Javadoc links for externally referenced classes
- Work around build issues for TensorFlow on some Linux distributions (issue bazelbuild/bazel#1322)
- Fix
cppbuild.shscript to build properly FFmpeg from source on Windows - Stop using Zeranoe FFmpeg builds, often not available for release versions (issue #225)
- Add
linux-ppc64letocppbuild.shscripts of OpenCV, FFmpeg, Leptonica, and Tesseract
- Build libdc1394 for the Windows platform as well (issue bytedeco/procamcalib#4)
- Lower Maven prerequisite in the
pom.xmlfile to 3.0 (issue bytedeco/javacpp#93) - Include the
DescriptorandMessageAPIs in the presets for Caffe (issue #196) - Prevent creating text relocations for shared libraries on Android (issue bytedeco/javacv#245)
- Make sure to include only native libraries in platform specific JAR files (pull bytedeco/javacpp#89)
- Execute the
cppbuild.shscripts within the Maven build lifecycle, can be skipped with-Djavacpp.cppbuild.skip(pull #175) - Fix Caffe crashing in GPU mode: Do not define
CPU_ONLY(issue #147) - Make OpenBLAS build for Caffe more generic (issue #154)
- Include missing
graph_constructor.hheader file from thetensorflowmodule (issue #165) - Add missing
GraphDefBuilder.Options.WithAttr()methods from thetensorflowmodule (issue #160) - Add
linux-armhfplatform to thecppbuild.shscripts of OpenCV, FFmpeg, etc (pull #177) - Add support for Motion JPEG to the minimal configuration proposed for FFmpeg in the
cppbuild.shfile - Make
mvn -Djavacpp.platform=...andmvn -Djavacpp.platform.dependency=...commands work correctly - Add presets for the
dnnmodule of OpenCV 3.1 (issue #145) - Prepend "javacpp." to all properties associated with Maven in the
pom.xmlfiles to avoid name clashes - Add a
Mat(CvArr arr)constructor for convenience (issue bytedeco/javacv#317) - Fix loading issue with
opencv_stitchingandopencv_xfeatures2d(issue bytedeco/javacv#316, issue bytedeco/javacv#336) - Virtualize all
Solverclasses from Caffe (issue #143) - Work around GSL not loading on Android (issue bytedeco/javacpp#55)
- Fix Android builds of FFmpeg, FFTW, GSL, Leptonica, and Tesseract causing errors under Mac OS X (issue #45)
- Avoid versioning of FFTW and GSL libraries, preventing them from working on Android (issue #127)
- Upgrade presets for OpenCV 3.1.0, FFmpeg 3.0.2, OpenSSL 1.0.2h, x265 1.9, FlyCapture 2.9.3.43, libdc1394 2.2.4, videoInput, GSL 2.1, LLVM 3.8.0, Leptonica 1.73, Tesseract 3.04.01, cuDNN 5, and Caffe rc3, including the latest versions of their dependencies (issue bytedeco/javacpp#55)
- Add presets for MXNet and TensorFlow 0.8.0 (issue #111)
- Virtualize
opencv_videostab.IFrameSourceto let us implement it in Java (issue bytedeco/javacv#277) - Fix MinGW-w64 builds with recent versions of GCC 5.x and potential issue with using "w32threads" for FFmpeg
- Add missing
StatModel.loadXXX()methods in theopencv_mlmodule (issue #109) - Define commonly used Caffe
std::vectortypes (DatumVector,FloatCallbackVector, andDoubleCallbackVector) for ease of use and performance reasons - Fix the
cppbuild.shscript for FFmpeg, failing to build x264 and OpenH264 properly on Windows
- Build the Maven artifacts for Linux in a CentOS 6 Docker container, for maximum compatibility (issue #22)
- Cache files downloaded by
cppbuild.shin thedownloadssubdirectory to prevent having to redownload everything after a clean - Add the
clangmodule to the presets for LLVM - Propose for FFmpeg in the
cppbuild.shfile a minimal configuration to support MPEG-4 streams with H.264 and AAC - Add the non-GPL OpenH264 as an alternative H.264 encoder to x264 in FFmpeg
- Hack together
log_callback.hto be able to redirect to Java log messages from FFmpeg - Pick up
OLDCC,OLDCXX, andOLDFCenvironment variables incppbuild.shandplatform.oldcompilersystem property in Maven to build with it libraries that can tolerate an older version of the C/C++ compiler on Linux - Upgrade all Maven dependencies and plugins to latest versions, thus bumping minimum requirements to Java SE 7, Android 4.0, and Maven 3.0
- Provide
cppbuild.shscript for Caffe that includes all dependencies (pull #77) - Upgrade presets for Caffe, CUDA 7.5, cuDNN 3, FFmpeg 2.8.1, Speex 1.2rc2, x265 1.8, FlyCapture 2.8.3.1, libfreenect 0.5.3, LLVM 3.7.0, Tesseract 3.04
- Include
motion_vector.h,fifo.h, andaudio_fifo.hheader files in theavutilmodule of FFmpeg (issue #79) - Add presets for Chilitags, thanks to Chris Walters for the financial contribution
- Let users choose the runtime type of
layer_by_name()fromFloatNetorDoubleNetincaffe(issue bytedeco/javacpp#25) - Add presets for the
face,optflow, andxfeatures2dmodules of OpenCV 3.0 (issue bytedeco/javacv#196, issue bytedeco/javacv#239, issue #54) - Switch to GCC 4.9 by default on Android, probably dropping support for Android 2.2, because GCC 4.6 has issues with OpenMP (issue bytedeco/javacv#179)
- Resolve missing dependency for GSL on
windows-x86by linking statically whatever it needs fromlibgcc_s_dw2-1.dll
- Build OpenCV, GSL, Leptonica, and Tesseract from source code on all platforms for better consistency in functionality across platforms
- Add presets for CUDA 7.0 (including cuBLAS, cuDNN, cuFFT, cuRAND, cuSOLVER, cuSPARSE, and NPP)
- Offer the Apache License, Version 2.0, as a new choice of license, in addition to the GPLv2 with Classpath exception
- Add libvpx in the
cppbuild.shscript for FFmpeg to support the WebM format (issue #33) - Upgrade presets for OpenCV 3.0.0, FFmpeg 2.7.1, OpenSSL 1.0.2d, x265 1.7, Leptonica 1.72, LLVM 3.6.1, and the latest of Caffe
- Define commonly used OpenCV
std::vectortypes (PointVector,Point2fVector,Point2dVector,SizeVector,RectVector,KeyPointVector,DMatchVector) for ease of use and performance reasons - Map
cv::saturate_cast<>()in a more meaningful way (issue #53) and name these functions more consistently - In addition to Leptonica and Tesseract, use only the officially supported GCC compiler for FFmpeg, FFTW, and GSL under Windows as well, to prevent compatibility issues (issue bytedeco/javacv#137)
- Make
flycapture/cppbuild.shfail if FlyCapture is not found installed on the system (issue #46) - Patch libdc1394, libdcfreenect, FFTW, GSL, Leptonica and Tesseract with missing
@rpathneeded by Mac OS X (issue #46)
- Remove unneeded
@Opaquetypes fromgsland replace them with their definitions whose names end with "_struct" - Segregate methods using
java.awtclasses into the newJava2DFrameConverterclass of JavaCV (issue #12) - Emphasize the need to install separately the parent
pom.xmlfile (issue #42) - Make CMake configurable via
CMAKEvariable incppbuild.sh(pull #41) - Add presets for Caffe (issue #34)
- Let
createBuffer()returnUByteIndexerandUShortIndexerwhen appropriate for unsigned data types - Remove the need to set manually the
platform.dependencysystem property for downstream modules without acppbuild.shfile - Fix failing
cppbuild.shfor FFmpeg on Ubuntu (issue #32) - Disable iconv, XCB, and SDL for more portables builds of FFmpeg, but enable
x11grabandavfoundationto allow screen capture (issue #39) - Avoid versioning of Leptonica and Tesseract libraries, preventing them from working on Android (issue #38)
- Add x265 in the
cppbuild.shscript for FFmpeg, thanks to Mark Bolstad (issue bytedeco/javacv#41) - Upgrade presets for OpenCV 2.4.11, FFmpeg 2.6.1, OpenSSL 1.0.2a, FlyCapture 2.7.3.19, libdc1394 2.2.3, libfreenect 0.5.2, LLVM 3.6.0
- Switch from
IntPointertoBoolPointerfor theBOOL*pointer type of Leptonica (issue #36) - Add
preloadforgif,jpeg,png,tiff, andwebplibraries in presets for Leptonica (issue #36) - Include missing
ltrresultiterator.hheader file in the presets for Tesseract (issue #36) - Append
@Documentedto annotation types to have them picked up by Javadoc
- Update instructions in the
README.mdfile for manual installation in Android Studio - Include presets for Leptonica 1.71 and Tesseract 3.03-rc1 on Windows too
- Fix
Mat.createFrom(BufferedImage)(issue #30) - Add Speex, OpenCORE (AMR-NB and AMR-WB), and OpenSSL in the
cppbuild.shscript for FFmpeg to support common RTMPS streams, among other things (issue #2 and issue bytedeco/javacv#71) - Deprecate slow
get()andput()methods ofCvMatin favor of the fast ones fromcreateIndexer()(issue javacv:317) - Include
operations.hppandmat.hppinopencv_coreto get a few important functions such asread()andwrite()forFileStorage - Replace
install_name_toolhack to set@rpathon Mac OS X with patches to do it properly on install (issue bytedeco/javacpp#6 and issue bytedeco/javacv#49) - Disable DocLint, which prevents the build from succeeding on Java 8 (issue bytedeco/javacpp#5)
- Disable OpenCL detection when building FFmpeg, causing link failures (issue #19)
- Document a bit the
create()factory methods in thehelperpackage of the OpenCV module, and their relationship with therelease()methods - Include new
createIndexer()method inCvMat,IplImage,Mat, etc. for easy and efficient multidimensional access of data (issue #317) - Deprecate
get*Buffer()methods in favor of a better named and genericcreateBuffer()method - Fix
java.lang.UnsatisfiedLinkErrorwhen allocatingopencv_core.Mat, among others (issue bytedeco/javacv#9 and issue bytedeco/javacv#28) - Force OpenCV to build with GCC 4.6, as newer versions are known to hang on Android 2.2 (issue android:43819)
- Upgrade presets for OpenCV 2.4.10, FFmpeg 2.5.1, FlyCapture 2.7.3.13, libfreenect 0.5.1, ARToolKitPlus 2.3.1, LLVM 3.5.0, and videoInput 0.200, where the latest code got merged into the master branch
- Add callbacks for Tesseract according to new functionality in JavaCPP
- Fix missing dependency of
opencv_contribonopencv_nonfree(issue javacv:490) - Skip functions that are not actually implemented in
avdevice, causing load failures on Android - Update presets for FFmpeg where
avcodecnow inherits fromswresample(issue #13) - Add a
README.mdfile to each presets with links to original project, Java API documentation, and sample usage - Add missing overloaded methods with
PointerPointerparameters in LLVM module
- Add libmp3lame to FFmpeg builds (issue javacv:411)
- Upgrade presets for FFmpeg 2.3, FlyCapture 2.6.3.4 (pull #6, issue #8), libfreenect 0.5
- Make the
cppbuild.shscripts install native libraries inside thecppbuildsubdirectories, instead of on the system - Include new
platform.dependencyandplatform.dependenciesproperties to let users depend easily on the artifacts that contain native libraries - Add presets for flandmark 1.07 (pull #9), FFTW 3.3.4, GSL 1.16, LLVM 3.4.2, Leptonica 1.71, Tesseract 3.03-rc1
- Fix missing
statickeyword on methods annotated with an@Adapter(issue #3) - Turn
Mat.createFrom()into a static factory method, and makeMat.copyFrom()callMat.create()as appropriate (issue #1) - Add missing
native_cameramodules ofopencv_highguifor Android - Fix functions from
opencv_stitchingnot accepting aMatVectoras apparently intended by the API (issue javacv:466)
- Move from Google Code to GitHub as main source code repository
- Rename the
com.googlecode.javacpppackage toorg.bytedeco.javacpp - Appended the version of the parent artifact to the ones of the child modules, in an effort to avoid conflicts
- Updated
cppbuild.shscripts with support for the "android-x86" platform (issue javacv:411), thanks to Xavier Hallade - Added presets for PGR FlyCapture 1.7
- Fixed compilation errors on Android, Mac OS X, and Windows
- Upgraded to OpenCV 2.4.9, FFmpeg 2.2.1, libdc1394 2.2.2, and libfreenect 0.4
- Introduced build scripts, based on the CPPJARs package of JavaCV, to install native C/C++ libraries
- Ported various helper classes and methods from JavaCV
- Inserted missing dependency entries in the
pom.xmlfiles of the child modules - Added presets for the C++ API of OpenCV 2.4.8, which can now be parsed due to the latest changes in JavaCPP
- Fixed JavaCPP properties not getting set by the parent
pom.xmlfile - Added presets for the C API of OpenCV 2.4.8, FFmpeg 2.1.x, libfreenect 0.2 (OpenKinect), videoInput 0.200, and ARToolkitPlus 2.3.0
Initial release
This project was conceived at the Okutomi & Tanaka Laboratory, Tokyo Institute of Technology, where I was supported for my doctoral research program by a generous scholarship from the Ministry of Education, Culture, Sports, Science and Technology (MEXT) of the Japanese Government. I extend my gratitude further to all who have reported bugs, donated code, or made suggestions for improvements (details above)!