Compare commits

...
Sign in to create a new pull request.

2 commits

Author SHA1 Message Date
Nicolas Chauvet
ad10a92318 Backport patch 2026-08-28 15:28:09 +02:00
Nicolas Chauvet
3e96c717f1 Update to 5.0.0 2026-08-28 15:28:09 +02:00
3 changed files with 117 additions and 27 deletions

View file

@ -0,0 +1,82 @@
From a18356853d99a67e432e818cf0328b4690d68833 Mon Sep 17 00:00:00 2001
From: Maitreyee Deshmukh <maitreyee721@gmail.com>
Date: Mon, 15 Jun 2026 02:56:17 -0700
Subject: [PATCH] Merge pull request #29293 from
MaitreyeeDeshmukh:fix/opengl-sample-ptcloud-missing-include
fix: include ptcloud header and dependency for opengl_testdata_generator sample #29293
## Summary
Fixes the build failure in samples/opengl/opengl_testdata_generator.cpp on the 5.x
branch when building with BUILD_EXAMPLES=ON.
## Root cause
The sample uses `loadMesh`, `TriangleShadingType`, and `TriangleCullingMode`, all
declared in `modules/ptcloud/include/opencv2/ptcloud.hpp`. The sample did not
include this header, and `samples/opengl/CMakeLists.txt` did not list
`opencv_ptcloud` as a required dependency, so the ptcloud module headers/libs
were not available when compiling this sample.
## Changes
- Added `#include "opencv2/ptcloud.hpp"` to opengl_testdata_generator.cpp
- Added `opencv_ptcloud` to `OPENCV_OPENGL_SAMPLES_REQUIRED_DEPS` in
samples/opengl/CMakeLists.txt
## Acceptance criteria
- [x] opengl_testdata_generator.cpp compiles with BUILD_EXAMPLES=ON
- [x] ptcloud module dependency declared so build system links it correctly
Closes #29292
---
samples/opengl/CMakeLists.txt | 1 +
samples/opengl/opengl_testdata_generator.cpp | 7 ++++---
2 files changed, 5 insertions(+), 3 deletions(-)
diff --git a/samples/opengl/CMakeLists.txt b/samples/opengl/CMakeLists.txt
index b322d98d72ec..689a5517d938 100644
--- a/samples/opengl/CMakeLists.txt
+++ b/samples/opengl/CMakeLists.txt
@@ -14,6 +14,7 @@ SET(OPENCV_OPENGL_SAMPLES_REQUIRED_DEPS
opencv_imgproc
opencv_imgcodecs
opencv_geometry
+ opencv_ptcloud
opencv_videoio
opencv_highgui)
ocv_check_dependencies(${OPENCV_OPENGL_SAMPLES_REQUIRED_DEPS})
diff --git a/samples/opengl/opengl_testdata_generator.cpp b/samples/opengl/opengl_testdata_generator.cpp
index 2b88ea95a987..9ad422d01f06 100644
--- a/samples/opengl/opengl_testdata_generator.cpp
+++ b/samples/opengl/opengl_testdata_generator.cpp
@@ -20,6 +20,7 @@
#include "opencv2/imgproc.hpp"
#include "opencv2/highgui.hpp"
#include "opencv2/geometry.hpp"
+#include "opencv2/ptcloud.hpp"
using namespace std;
using namespace cv;
@@ -510,17 +511,17 @@ int main(int argc, char* argv[])
for (const auto& res : resolutions)
{
- for (const auto shadingPair : shadingTxt)
+ for (const auto& shadingPair : shadingTxt)
{
cv::TriangleShadingType shadingType = shadingPair.first;
std::string shadingName = shadingPair.second;
- for (const auto cullingPair : cullingTxt)
+ for (const auto& cullingPair : cullingTxt)
{
cv::TriangleCullingMode cullingMode = cullingPair.first;
std::string cullingName = cullingPair.second;
- for (const auto modelPair : modelTxt)
+ for (const auto& modelPair : modelTxt)
{
ModelType modelType = modelPair.first;
std::string modelName = modelPair.second;
--
2.55.0

View file

@ -67,13 +67,13 @@
%endif
Name: opencv
Version: 4.13.0
Version: 5.0.0
%global javaver %(foo=%{version}; echo ${foo//./})
%global majorver %(foo=%{version}; a=(${foo//./ }); echo ${a[0]} )
%global minorver %(foo=%{version}; a=(${foo//./ }); echo ${a[1]} )
%global padding %(digits=00; num=%{minorver}; echo ${digits:${#num}:${#digits}} )
%global abiver %(echo %{majorver}%{padding}%{minorver} )
Release: 10%{?dist}
Release: 1%{?dist}
Summary: Collection of algorithms for computer vision
# This is normal three clause BSD.
License: BSD-3-Clause AND Apache-2.0 AND ISC
@ -97,12 +97,15 @@ Source5: xorg.conf
%global wechat_shortcommit %(c=%{wechat_commit}; echo ${c:0:7})
%global wechat_gitdate 20230712
Source6: https://github.com/WeChatCV/opencv_3rdparty/archive/%{wechat_commit}/wechat-%{wechat_gitdate}.git%{wechat_shortcommit}.tar.gz
#Source7: https://docs.opencv.org/5.x/opencv.js
Patch0: opencv-4.1.0-install_3rdparty_licenses.patch
# Fix build with vtk 9.6 - https://github.com/opencv/opencv_contrib/pull/4085
Patch1: opencv-vtk.patch
Patch3: opencv.python.patch
Patch4: Fix-macro-definition-for-Power10-architecture.patch
# Upstream patches backport
Patch4: Merge-pull-request-29293-from-MaitreyeeDeshmukh-fix-.patch
Patch5: dnn-remove-Caffe-protobuf-leftovers-fix-external-pro.patch
BuildRequires: gcc-c++
@ -264,9 +267,9 @@ This package contains the OpenCV %{moduledesc} module runtime.\
%{_libdir}/libopencv_%{modulename}.so.{%{abiver},%{version}}
# main modules
%opencv_module_subpkg -m calib3d -d %{quote:Camera Calibration and 3D Reconstruction}
%opencv_module_subpkg -m calib -d %{quote:Camera Calibration and 3D Reconstruction}
%opencv_module_subpkg -m dnn -d %{quote:Deep Neural Network}
%opencv_module_subpkg -m features2d -d %{quote:2D Feature Detection}
%opencv_module_subpkg -m features -d %{quote:Features Framework}
%opencv_module_subpkg -m flann -d %{quote:Clustering and Search in Multi-dimensional Space}
%opencv_module_subpkg -m gapi -d %{quote:Graph API}
%opencv_module_subpkg -m highgui -d %{quote:High-level GUI}
@ -282,10 +285,9 @@ This package contains the OpenCV %{moduledesc} module runtime.\
%if %{with eigen3}
%opencv_module_subpkg -m alphamat -d %{quote:Alpha Matting}
%endif
%opencv_module_subpkg -m aruco -d %{quote:Aruco Markers}
%opencv_module_subpkg -m bgsegm -d %{quote:Background Segmentation}
%opencv_module_subpkg -m bioinspired -d %{quote:Biologically-inspired Vision Models}
%opencv_module_subpkg -m ccalib -d %{quote:Custom Calibration Pattern}
#opencv_module_subpkg -m ccalib -d %%{quote:Custom Calibration Pattern}
%if %{with cuda}
%opencv_module_subpkg -m cudaarithm -d %{quote:CUDA Matrix Arithmatic}
%opencv_module_subpkg -m cudabgsegm -d %{quote:CUDA Background Segmentation}
@ -308,16 +310,17 @@ This package contains the OpenCV %{moduledesc} module runtime.\
%opencv_module_subpkg -m face -d %{quote:Face Analysis}
%opencv_module_subpkg -m freetype -d %{quote:Freetype/Harfbuzz UTF-8 Strings}
%opencv_module_subpkg -m fuzzy -d %{quote:Fuzzy Math-based Image Processing}
%opencv_module_subpkg -m geometry -d %{quote:Computational geometry primitives}
%opencv_module_subpkg -m hdf -d %{quote:HDF Data Format I/O}
%opencv_module_subpkg -m hfs -d %{quote:Heirarchical Feature Selection}
%opencv_module_subpkg -m img_hash -d %{quote:Image Hashing}
%opencv_module_subpkg -m intensity_transform -d %{quote:Intensity Transformation}
%opencv_module_subpkg -m line_descriptor -d %{quote:Extracted Line Binary Descriptor}
%opencv_module_subpkg -m mcc -d %{quote:Macbeth Chart}
%opencv_module_subpkg -m optflow -d %{quote:Optical Flow Algorithms}
#opencv_module_subpkg -m ovis -d %%{quote:OGRE 3D Visualiser}
%opencv_module_subpkg -m phase_unwrapping -d %{quote:Phase Unwrapping}
%opencv_module_subpkg -m plot -d %{quote:2D Plotting}
%opencv_module_subpkg -m ptcloud -d %{quote:High level point cloud and mesh operations}
%opencv_module_subpkg -m quality -d %{quote:Image Quality Analysis}
%opencv_module_subpkg -m rapid -d %{quote:Silhouette based 3D Object Tracking}
%opencv_module_subpkg -m reg -d %{quote:Image Registration}
@ -325,7 +328,7 @@ This package contains the OpenCV %{moduledesc} module runtime.\
%opencv_module_subpkg -m saliency -d %{quote:Saliency}
%opencv_module_subpkg -m shape -d %{quote:Shape Distance and Matching}
%opencv_module_subpkg -m signal -d %{quote:Signal processing algorithms}
%opencv_module_subpkg -m stereo -d %{quote:Stereo Correspondance}
%opencv_module_subpkg -m stereo -d %{quote:Depth from Stereo}
%opencv_module_subpkg -m structured_light -d %{quote:Structed Light}
%opencv_module_subpkg -m superres -d %{quote:Super Resolution}
%opencv_module_subpkg -m surface_matching -d %{quote:Surface Matching}
@ -339,6 +342,7 @@ This package contains the OpenCV %{moduledesc} module runtime.\
%opencv_module_subpkg -m ximgproc -d %{quote:Extended Image Processing}
%opencv_module_subpkg -m xobjdetect -d %{quote:Extended Object Detection}
%opencv_module_subpkg -m xphoto -d %{quote:Extended Photo Processing}
%opencv_module_subpkg -m xstereo -d %{quote:Stereo Correspondence}
%package devel
@ -394,13 +398,14 @@ This package contains Java bindings for the OpenCV library.
# we don't use pre-built contribs except quirc
pushd 3rdparty
shopt -s extglob
rm -r !(dlpack|quirc|flatbuffers)
rm -r !(dlpack|quirc|flatbuffers|mlas)
shopt -u extglob
popd &>/dev/null
%patch -P 0 -p1 -b .install_3rdparty_licenses
%patch -P 3 -p1 -b .python_install_binary
%patch -P 4 -p1 -b .ppc_macro
%patch -P 4 -p1
%patch -P 5 -p1
pushd %{name}_contrib-%{version}
%patch -P 1 -p1 -b .vtk
@ -473,9 +478,9 @@ cd modules/python/package
} \
%{?with_openni: -DWITH_OPENNI=ON } \
%{!?with_xine: -DWITH_XINE=OFF } \
-DBUILD_DOCS=ON \
-DBUILD_DOCS=OFF \
-DBUILD_EXAMPLES=ON \
-DBUILD_opencv_python2=OFF \
-DBUILD_opencv_js=OFF \
-DINSTALL_C_EXAMPLES=ON \
-DINSTALL_PYTHON_EXAMPLES=ON \
-DPYTHON3_EXECUTABLE=%{__python3} \
@ -532,7 +537,7 @@ ln -s -r %{buildroot}%{_jnidir}/opencv-%{javaver}.jar %{buildroot}%{_jnidir}/ope
# For compatibility with existing opencv.pc application
%{?with_compat_openvc_pc:
ln -s opencv4.pc %{buildroot}%{_libdir}/pkgconfig/opencv.pc
ln -s opencv5.pc %{buildroot}%{_libdir}/pkgconfig/opencv.pc
}
@ -566,29 +571,29 @@ cp config-*.py %{buildroot}/%{python3_sitelib}/cv2/
%files data
%license LICENSE
%dir %{_datadir}/opencv4
%{_datadir}/opencv4/haarcascades
%{_datadir}/opencv4/lbpcascades
%{_datadir}/opencv4/valgrind*
%{_datadir}/opencv4/quality
%dir %{_datadir}/opencv5
%{_datadir}/opencv5/haarcascades
%{_datadir}/opencv5/lbpcascades
%{_datadir}/opencv5/valgrind*
%{_datadir}/opencv5/quality
%files core
%license LICENSE
%{_datadir}/licenses/opencv4/
%{_datadir}/licenses/opencv5/
%{_libdir}/libopencv_core.so.{%{abiver},%{version}}
%files devel
%dir %{_includedir}/opencv4
%{_includedir}/opencv4/opencv2
%dir %{_includedir}/opencv5
%{_includedir}/opencv5/opencv2
%{_libdir}/lib*.so
%{?with_compat_openvc_pc:
%{_libdir}/pkgconfig/opencv.pc
}
%{_libdir}/pkgconfig/opencv4.pc
%{_libdir}/pkgconfig/opencv5.pc
%{_libdir}/cmake/OpenCV/*.cmake
%files doc
%{_datadir}/opencv4/samples
%{_datadir}/opencv5/samples
# some files aren't properly listed
#files -n python3-opencv -f %%{pyproject_files}
@ -609,6 +614,9 @@ cp config-*.py %{buildroot}/%{python3_sitelib}/cv2/
%changelog
* Wed Jul 29 2026 Nicolas Chauvet <kwizart@gmail.com> - 5.0.0-1
- Update to 5.0.0
* Wed Jul 22 2026 Python Maint <python-maint@redhat.com> - 4.13.0-10
- Rebuilt for Python 3.15.0b4 ABI change

View file

@ -1,6 +1,6 @@
SHA512 (face_landmark_model.dat.xz) = 7558f29431bb9cad1f22ee067ad3ed41be8f68b865992eb7d3a5ce6b6b9e1d031cb03e33c3c149220ef8faebd0471703a8a3bbb06402bcc8ce76bd28317aa307
SHA512 (962ce79e0b95591f226431f7b5f152cd-v0.1.2e.zip) = 87c65716498ca2e4f64fb9a1f78f7e5c48fffff5fc6735027edfb7d7ccc0d9f5b01c85f4b956ddc7e1c35c69ee2513d48a7da91764c2fd01d073ee5a1fc90c6f
SHA512 (wechat-20230712.git3487ef7.tar.gz) = bc4f220465de41df8af0cb35312c1db155976d05f13a60e43c1798b161d8f56388e34a59108fb3e27e8c97b53acfd198256d9ae420b5f70a32ddc1ea65c3c8a6
SHA512 (opencv-clean-4.13.0.tar.gz) = 24a324134c165cce2b08f9ec9d9dea9d4cb9489bfdb07d637c54c8c09bc576d08db082cad4a76bf90a3342ad50f688996f9fd4d41375c849efb4c09fb0cb013e
SHA512 (opencv_contrib-clean-4.13.0.tar.gz) = 7ec3d559ccc6932ab8a11851f2fc509df9db8db1f044027eb75b5476d4c37274c475f0f15378f20d57f0cbe309212a641000cff0050541f93e040b821991b095
SHA512 (opencv_extra-clean-4.13.0.tar.gz) = 821fcf069ee959fea30d9b7c530e15cf5da805980130581edda6526c0a458e9a94265df457bf605e4faba115c846e580c2be1fbbfe45f6a270e24ad427d41fbf
SHA512 (opencv-clean-5.0.0.tar.gz) = 29a995f03b9a3fe9fe6e9e2ed7927df286abf7c9306a7f161ab7fc510613a650f6a2aa7bd7ba8010d326a6e41f6273206d105ce7d3f459db70d23839517784a5
SHA512 (opencv_contrib-clean-5.0.0.tar.gz) = 4c44d4609ef1b1d3e17e5a08901df5da7e6f79164f321013d9c2466435a1eacb969f171b54a407ccc664331ba974606c0262af765105681cdc3b7a9428688273
SHA512 (opencv_extra-clean-5.0.0.tar.gz) = 7125e8c6788014ad9810df4b0d57f7957f4fdf9dd2287504bc21f06e6d6708d0dd31adafb24c14c5f49aca11a5bf5ab425a743539066b08cce21a5e5b90b1a0b