1
0
mirror of https://github.com/opencv/opencv.git synced 2026-07-29 15:23:05 +04:00
Commit Graph

36944 Commits

Author SHA1 Message Date
Alexander Smorkalov 7afa28bd1f Merge pull request #28863 from SheliaJimenez:dnn-bug-fix
add CV_64S type support to modules/dnn/src/layers/gatherND.cpp
2026-04-25 11:33:59 +03:00
Alexander Smorkalov 7bde3f9ae9 Merge branch 4.x 2026-04-24 11:11:26 +03:00
Alexander Smorkalov 323ea1782d Merge pull request #28860 from asmorkalov:as/no_optional
Get rid of redundant C++ optional.
2026-04-23 10:14:51 +03:00
Alexander Smorkalov aab70b9a63 Merge pull request #28857 from asmorkalov:as/dnn_fast_math
Use fast math for dnn module.
2026-04-23 10:13:25 +03:00
SheliaJimenez 50ba8fdbdb add CV_64S type support to modules/dnn/src/layers/gatherND.cpp 2026-04-23 09:08:17 +08:00
Alexander Smorkalov fa0954db82 Get rid of redundant C++ optional. 2026-04-22 17:00:44 +03:00
Jeevan Mohan Pawar 273e52ce8d Merge pull request #28818 from jeevan6996:fix-charuco-detectdiamonds-clear-stale-output
objdetect: clear stale outputs in CharucoDetector::detectDiamonds #28818

## Summary
- clear `diamondCorners`/`diamondIds` outputs at the beginning of `CharucoDetector::detectDiamonds`
- prevent stale detections from previous calls when the current call has fewer than 4 markers or finds no diamonds
- add a regression test that pre-fills outputs, calls `detectDiamonds` with 3 markers, and verifies outputs are empty

Fixes #28783.

## Testing
- built `opencv_test_objdetect` locally
- ran `opencv_test_objdetect --gtest_filter=Charuco.detectDiamondsClearsOutputsWithLessThanFourMarkers`
- result: PASS
2026-04-22 15:42:37 +03:00
Abhishek Gola d95badefa4 Merge pull request #28821 from abhishek-gola:optimized_layers
Parallelize DNN layers using chunking #28821

At a high level, I replaced tensor-level parallelism with chunk-level parallelism. Previously, parallel_for_ was dispatched over the number of input or output tensors i.e. one thread handled one whole tensor's copy.

The new approach precomputes each tensor's destination offset and per-slice size upfront, then slices the total byte work into fixed 64 KB chunks. The full chunk count is handed to parallel_for_ as a single flat range, and each worker decodes its chunk index back into (tensor, slice, byte_offset) using a prefix-sum table before running a plain memcpy on its piece. A small-size threshold falls back to the sequential path so we don't get threading overhead on small tensors.

Performance numbers after these optimizations:

For Device:  Intel(R) Core(TM) i9-14900KS, x86, 32 Cores, ubuntu 24.04,
| Model | `ENGINE_NEW` | `ENGINE_ORT` |
| :--- | :--- | :--- | 
| **YOLOv8n** |10.9 ms| 12.15 ms|
| **YOLOv5n** | 8.36 ms| 9.23 ms|
| **YOLOX-S** | 23.46 ms| 25.16 ms|

For Device: Macbook M1 Air
| Model | `ENGINE_NEW` | `ENGINE_ORT` |
| :--- | :--- | :--- | 
| **YOLOv8n** |34.45 ms| 42.52 ms|
| **YOLOv5n** | 31.62 ms| 25.52 ms|
| **YOLOX-S** | 88.9 ms| 116.7 ms|

### Pull Request Readiness Checklist

See details at https://github.com/opencv/opencv/wiki/How_to_contribute#making-a-good-pull-request

- [x] I agree to contribute to the project under Apache 2 License.
- [x] To the best of my knowledge, the proposed patch is not based on a code under GPL or another license that is incompatible with OpenCV
- [x] The PR is proposed to the proper branch
- [x] There is a reference to the original bug report and related work
- [x] There is accuracy test, performance test and test data in opencv_extra repository, if applicable
      Patch to opencv_extra has the same branch name.
- [x] The feature is well documented and sample code can be built with the project CMake
2026-04-22 14:53:12 +03:00
Alexander Smorkalov 7fcfafff8b Use fast math for dnn module. 2026-04-22 13:05:39 +03:00
Alexander Smorkalov 0102afa86f Merge pull request #28854 from asmorkalov:as/no_hal_ci_5.x
Added CI pipeline with vendored 3rdparties and no HAL 5.x
2026-04-22 11:08:25 +03:00
Alexander Smorkalov 1e61a2283d Merge pull request #28628 from GideokKim:fix/fitellipse-det-threshold
imgproc: fix fitEllipseDirect/AMS determinant threshold for near-circular data
2026-04-22 10:47:13 +03:00
Alexander Smorkalov 65e9cb43d4 Merge pull request #28853 from asmorkalov:as/no_hal_ci_4.x
Added CI pipeline with vendored 3rdparties and no HAL 4.x
2026-04-22 10:19:36 +03:00
Varun Jaiswal 562628eb71 Merge pull request #28836 from varun-jaiswal17:fix-dnn-nan-bugs
Fix dnn NaN bugs in GELU SIMD and softmax for large inputs #28836

### Bug Description

- **GELU SIMD bug:** `exp(2*inner)` overflows to `inf` for large inputs (e.g. `x=10.6` → `inner≈51`), causing `inf/inf = NaN`; fixed by clamping `inner` to [-9, 9] as `tanh` already saturates to ±1.0 beyond this range.
- **Softmax bug:** All `-inf` inputs (masked attention rows) produce `sum=0`, then `1/0 = inf` and `0*inf = NaN`; 
fixed by outputting zeros when `sum == 0`.
- Add regression tests for both fixes

Depends on : https://github.com/opencv/opencv/pull/28837

### Pull Request Readiness Checklist

See details at https://github.com/opencv/opencv/wiki/How_to_contribute#making-a-good-pull-request

- [x] I agree to contribute to the project under Apache 2 License.
- [x] To the best of my knowledge, the proposed patch is not based on a code under GPL or another license that is incompatible with OpenCV
- [x] The PR is proposed to the proper branch
- [x] There is a reference to the original bug report and related work
- [x] There is accuracy test, performance test and test data in opencv_extra repository, if applicable
      Patch to opencv_extra has the same branch name.
- [x] The feature is well documented and sample code can be built with the project CMake
2026-04-22 10:00:51 +03:00
Alexander Smorkalov 4e722f9904 Added CI pipeline with vendored 3rdparties and no HAL. 2026-04-22 09:41:23 +03:00
Alexander Smorkalov e458ff16f3 Added CI pipeline with vendored 3rdparties and no HAL. 2026-04-22 09:39:38 +03:00
Alexander Smorkalov 5e315bcc97 Merge pull request #28799 from Prasadayus:Perf_Tests_Modification
Add more models in perf tests
2026-04-21 14:01:17 +03:00
kjg0724 5d88781f74 Merge pull request #28782 from kjg0724:reduce-simd-optimization
core: add platform-specific SIMD for cv::reduce REDUCE_SUM

### Pull Request

Rewrite `cv::reduce` SIMD optimization using platform-specific instructions as discussed in #28763.

#### Changes

**Col reduce (dim=1) — horizontal sum per row:**
- ARM DOTPROD: `vdotq_u32()` — single-instruction byte sum, no intermediate flush needed
- ARM AArch64 fallback: `vpaddlq` chain (u8→u16→u32)
- Intel AVX2: `_mm256_sad_epu8()` — 32 bytes → 4×u64 partial sums per cycle
- Intel SSSE3: `_mm_shuffle_epi8` + `_mm_sad_epu8` for cn=4 channel separation
- Intel SSE2: `_mm_sad_epu8` for cn=1
- cn=4: hardware deinterleave (`vld4q_u8` on ARM, shuffle+SAD on Intel)

**Row reduce (dim=0) — vertical accumulation across rows:**
- u16 intermediate accumulator with 256-row flush (halves memory bandwidth vs direct u32)
- ARM AArch64: `vaddw_u8` widening add (single instruction vs expand+add)
- Intel: unpack + add with u16 buffer

**Coverage:** All REDUCE_SUM type combinations — 8U→32S, 8U→32F, 16U→32F, 16S→32F, 32F→32F, 32F→64F, 64F→64F. Non-8U types use universal intrinsics where platform-specific gain is minimal (widening is single-stage, FP has limited alternatives). `REDUCE_AVG` benefits automatically (uses SUM internally).

**Dispatch:** `CV_CPU_DISPATCH` with SSE2/AVX2/NEON_DOTPROD/LASX. Fallback hierarchy: DOTPROD → AArch64 NEON → Universal Intrinsics → scalar.

#### Benchmark (Apple M3 Pro, MacBook Pro 16-inch 2023)

| Path | Type | Speedup vs scalar |
|------|------|-------------------|
| Col reduce (dim=1) | 8UC1 | **3.0–4.5x** |
| Col reduce (dim=1) | 8UC4 | **2.7–5.0x** |
| Col reduce (dim=1) | 32FC1 | 1.7–2.3x |
| Row reduce (dim=0) | 8UC1 | 1.1–1.5x |

Row reduce gains are modest due to memory-bandwidth bound (as expected for vertical accumulation). No regressions on non-target paths (MAX, MIN, SUM2).

#### Testing

- `opencv_test_core --gtest_filter="*Reduce*:*reduce*"` — 483 tests PASSED
- Edge cases: non-aligned dimensions (127×61), cn=2/3 scalar fallback, REDUCE_SUM2 unmodified

#### Files changed

- `modules/core/src/reduce.simd.hpp` — new, platform-dispatched SIMD implementation
- `modules/core/src/reduce.dispatch.cpp` — new, CV_CPU_DISPATCH wrapper
- `modules/core/CMakeLists.txt` — add `NEON_DOTPROD` to dispatch list
- `modules/core/src/matrix_operations.cpp` — wire dispatch functions into ReduceC/R_Invoker
2026-04-21 12:24:38 +03:00
Alexander Smorkalov beec5c28df Merge pull request #28838 from vrabaud:triangulate
Allow applyColorMap for 1d arrays
2026-04-21 09:48:27 +03:00
Vincent Rabaud 69020c6517 Allow applyColorMap for 1d arrays 2026-04-20 18:10:25 +02:00
4ekmah 9f101a126f Merge pull request #28802 from 4ekmah:pyr_ecc
Multiscale ECC #28802

OpenCV Extra: https://github.com/opencv/opencv_extra/pull/1338

### Pull Request Readiness Checklist

See details at https://github.com/opencv/opencv/wiki/How_to_contribute#making-a-good-pull-request

- [x] I agree to contribute to the project under Apache 2 License.
- [x] To the best of my knowledge, the proposed patch is not based on a code under GPL or another license that is incompatible with OpenCV
- [x] The PR is proposed to the proper branch
- [ ] There is a reference to the original bug report and related work
- [x] There is accuracy test, performance test and test data in opencv_extra repository, if applicable
      Patch to opencv_extra has the same branch name.
- [x] The feature is well documented and sample code can be built with the project CMake
2026-04-20 17:22:19 +03:00
Alexander Smorkalov f327f0669e Merge pull request #28813 from Lurie97:fix_flip_inplace
core/ocl: fix incorrect results for in-place flip on strict OpenCL implementations
2026-04-20 14:59:37 +03:00
jiajia Qian ba879cd60f core/ocl: fix incorrect results for in-place flip on strict OpenCL implementations
Previously, OpenCL in-place flip kernels (rows/cols/both) could produce
incorrect results compared to the CPU implementation on strict OpenCL
drivers such as Mesa. The kernels relied on implicit load–load–store–store
(LLSS) ordering when src and dst alias, which is not guaranteed by the
OpenCL memory model and may be reordered.

Some vendor drivers happened to preserve the expected ordering, masking
the issue, but Mesa correctly exposes the undefined behavior.

This change introduces dedicated in-place flip kernels that:
- Explicitly detect in-place execution (src == dst)
- Stage data through local memory tiles
- Enforce correct ordering with work-group barriers
- Avoid global memory read/write aliasing hazards

The non in-place path is unchanged.

With this fix, OpenCL in-place flip produces correct and consistent results
across drivers, matches CPU behavior, and complies with the OpenCL memory
model.

Signed-off-by: jiajia Qian <jiajia.qian@nxp.com>
2026-04-21 08:54:52 +08:00
Alex 30178be800 Merge pull request #28833 from 0lekW:avfoundation-fractional-fps-seek-fix
Avfoundation fractional fps seek fix #28833

Accompanied by PR on [opencv_extra](https://github.com/opencv/opencv_extra/pull/1345)

Fixes https://github.com/opencv/opencv/issues/28831

AVFoundation backend seeking slowly drifts for any video which has a non-integer frame rate.   
Narrowing of a float `mAssetTrack.nominalFrameRate` to int32_t means fractional rates are treated as integer when seeking by frame number. 

Solution implemented in this branch is to use the tracks native rational frame duration when seeking (and available).
I've also included an AVF only test case which uses a new test file in opencv_extra. This test just compares the video caps expected ms vs actual for a known rate file (23.976). 

Could consider extending this test to more then just AVF, as from what I can see there are no fractional rate tests / files.

### Pull Request Readiness Checklist

See details at https://github.com/opencv/opencv/wiki/How_to_contribute#making-a-good-pull-request

- [x] I agree to contribute to the project under Apache 2 License.
- [x] To the best of my knowledge, the proposed patch is not based on a code under GPL or another license that is incompatible with OpenCV
- [x] The PR is proposed to the proper branch
- [x] There is a reference to the original bug report and related work
- [x] There is accuracy test, performance test and test data in opencv_extra repository, if applicable
      Patch to opencv_extra has the same branch name.
- [x] The feature is well documented and sample code can be built with the project CMake
2026-04-20 14:58:58 +03:00
Rohan Mistry 924a10069c Merge pull request #28817 from Ron12777:codex/fix-multiview-oneline-tests
Fix issues with MultiViewTest.OneLineInitialGuess and MultiViewTest.OneLine #28817

To fix issues caused by https://github.com/opencv/opencv/issues/28789 
This probably can be fixed for 4.x, but honestly I don't believe it is worth it to have to deal with users tests failing because it was 0.02% off so we can save them like 2 minutes, so I believe it is best to leave the optimization for 5.x. 

### Pull Request Readiness Checklist

See details at https://github.com/opencv/opencv/wiki/How_to_contribute#making-a-good-pull-request

- [x] I agree to contribute to the project under Apache 2 License.
- [x] To the best of my knowledge, the proposed patch is not based on a code under GPL or another license that is incompatible with OpenCV
- [x] The PR is proposed to the proper branch
- [x] There is a reference to the original bug report and related work
- [x] There is accuracy test, performance test and test data in opencv_extra repository, if applicable
      Patch to opencv_extra has the same branch name.
- [x] The feature is well documented and sample code can be built with the project CMake
2026-04-20 12:04:22 +03:00
Alexander Smorkalov 590b99f478 Merge pull request #28814 from vrabaud:intrin
Rewrite getBitsFromByteList to avoid harmless buffer overflow
2026-04-20 12:02:13 +03:00
Alexander Smorkalov ad08edab42 Merge pull request #28829 from vrabaud:triangulate
Fix triangulatePoints with 2-channel arrays.
2026-04-20 11:59:55 +03:00
Alexander Smorkalov 4e70ee722f Merge pull request #28828 from manand881:chore/faster-ocl-bfmatcher-crosscheck
OpenCL BFMatcher optimization for crosscheck case
2026-04-20 10:57:18 +03:00
Vincent Rabaud 7d3a764ba5 Fix triangulatePoints with 2-channel arrays. 2026-04-20 00:12:46 +02:00
Kumataro 1ae5a8586b Merge pull request #28615 from Kumataro:fix28606
imgcodecs(png): support cICP metadata for imreadWithMetadata() #28615

Close https://github.com/opencv/opencv/issues/28606
Related https://github.com/opencv/opencv/pull/27741 (support for imwriteWithMetadata)

### Pull Request Readiness Checklist

See details at https://github.com/opencv/opencv/wiki/How_to_contribute#making-a-good-pull-request

- [x] I agree to contribute to the project under Apache 2 License.
- [x] To the best of my knowledge, the proposed patch is not based on a code under GPL or another license that is incompatible with OpenCV
- [x] The PR is proposed to the proper branch
- [x] There is a reference to the original bug report and related work
- [x] There is accuracy test, performance test and test data in opencv_extra repository, if applicable
      Patch to opencv_extra has the same branch name.
- [ ] The feature is well documented and sample code can be built with the project CMake
2026-04-19 20:11:33 +03:00
Anand Mahesh ab0def4854 chore/faster-ocl-bfmatcher-crosscheck
The existing 2-pass cross-check implementation requires both forward and
reverse distance computations on GPU, followed by CPU-side filtering.
This adds a single-pass kernel using int64 atomics to eliminate the
reverse pass. The BruteForceMatch_CrossCheckMatch kernel performs forward
matching and tracks best train->query mappings in one GPU pass, reducing
memory transfers. Falls back to 2-pass approach on devices without
cl_khr_int64_base_atomics extension.

Tested on NVIDIA RTX 5060 Ti: 1.65x-1.97x faster than 2-pass GPU,
3.49x-7.33x faster than CPU at 640x480 to 1920x1080 resolutions.
2026-04-19 22:08:29 +05:30
Alexander Smorkalov c244bc3279 Merge pull request #28810 from asmorkalov:as/calib_tests_cleanup
Moved irrelevant tests and functions from calib module to 3d.
2026-04-18 11:15:27 +03:00
Alexander Smorkalov a5295015b2 Merge pull request #28820 from asmorkalov:as/win32_disable_alpha_check
Disable FFmpeg tests that need FFmpeg wrapper rebuild on Windows.
2026-04-17 16:06:23 +03:00
Alexander Smorkalov 9dc7dc89d7 Merge pull request #28780 from ssam18:fix-lapack-cblas-link
cmake: link libcblas explicitly for LAPACK/Generic backend
2026-04-17 15:18:43 +03:00
Alexander Smorkalov 6aba6fda2d Disable FFmpeg tests that need FFmpeg wrapper rebuild on Windows. 2026-04-17 10:56:46 +03:00
Jesus Armando Anaya 166c235603 Merge pull request #28745 from JesusAnaya:fix-bundled-protobuf-include-priority
build: fix bundled protobuf headers being overridden by system-installed protobuf #28745

On macOS with Apple Clang 17, the compiler implicitly injects `/usr/local/include` as a high-priority user include (`-I`). The `SYSTEM` keyword in `target_include_directories` emits `-isystem` for the bundled protobuf path, which is searched after user `-I` paths, allowing a system-installed protobuf v4+ (which requires C++17 and abseil-cpp) to override the bundled headers.

Removing `SYSTEM` causes CMake to emit `-I` instead of `-isystem`, placing the bundled path before the implicit system include, restoring the intended header resolution order regardless of what protobuf version is installed on the host.

### Background

Apple Clang 17 (shipped with macOS 26 Tahoe Command Line Tools) changed the compiler driver behavior: it now unconditionally adds `-I/usr/local/include` to the search path, which is where Homebrew installs headers. Previous Apple Clang versions either omitted this path or added it as a lower-priority system include.

When Homebrew's `protobuf` is installed (v4+, e.g. `33.4_1`), its headers at `/usr/local/include/google/protobuf/` are resolved before the bundled `3rdparty/protobuf/src/` because `SYSTEM PUBLIC` in `target_include_directories` causes the bundled path to be emitted as `-isystem`, which ranks below `-I` in compiler search order. This was confirmed by inspecting the generated `flags.make`:

```
# before fix
-isystem /path/to/opencv/3rdparty/protobuf/src

# after fix
-I /path/to/opencv/3rdparty/protobuf/src   (first in the include list)
```

The system protobuf v4+ headers require C++17 and abseil-cpp. Since OpenCV 4.x compiles with `-std=c++11`, every translation unit in `3rdparty/protobuf/` fails:

```
/usr/local/include/google/protobuf/port_def.inc: error: Protobuf only supports C++17 and newer.
/usr/local/include/absl/base/policy_checks.h: error: C++ versions less than C++17 are not supported.
```

Note that `include_directories(BEFORE ...)` on the line above was intended to prevent exactly this, but it was overridden by `target_include_directories(SYSTEM PUBLIC ...)` deduplicating the path into a single `-isystem` entry. This is essentially the same class of problem tracked in #13328.

### Impact

The change is a one-line diff. Removing `SYSTEM` has no effect on Linux or Windows since those toolchains do not inject `/usr/local/include` implicitly. Warning suppression for protobuf headers in dependent modules is unaffected because OpenCV already applies explicit `-Wno-*` flags for all protobuf-related warnings in `3rdparty/protobuf/CMakeLists.txt`.

### Tested on

- macOS 26.3 (Tahoe), Apple Clang 17.0.0 (`clang-1700.6.4.2`), Homebrew `protobuf 33.4_1`, full build passes with `BUILD_PROTOBUF=ON`.

Fixes #28743, related to #27886.

### Pull Request Readiness Checklist

See details at https://github.com/opencv/opencv/wiki/How_to_contribute#making-a-good-pull-request

- [x] I agree to contribute to the project under Apache 2 License.
- [x] To the best of my knowledge, the proposed patch is not based on a code under GPL or another license that is incompatible with OpenCV
- [x] The PR is proposed to the proper branch
- [x] There is a reference to the original bug report and related work
- [ ] There is accuracy test, performance test and test data in opencv_extra repository, if applicable
  Patch to opencv_extra has the same branch name.
- [ ] The feature is well documented and sample code can be built with the project CMake
2026-04-17 10:53:45 +03:00
Alexander Smorkalov fa2bb7358a Merge pull request #28816 from varun-jaiswal17:fix-flatten-onnx-axis-4x
fix Flatten axis=rank bug
2026-04-17 09:10:28 +03:00
vrooomy 3215d7e6ea fix Flatten axis=rank bug 2026-04-16 18:09:36 +05:30
Varun Jaiswal 8dfc236476 Merge pull request #28812 from varun-jaiswal17:fix-flatten-onnx-axis
Fix flatten onnx axis==rank case #28812

fix ONNX Flatten layer incorrect output when axis equals input rank edge case

Resolves : https://github.com/opencv/opencv/pull/28781#discussion_r3060088247
OpenCV Extra: https://github.com/opencv/opencv_extra/pull/1342

### Pull Request Readiness Checklist

See details at https://github.com/opencv/opencv/wiki/How_to_contribute#making-a-good-pull-request

- [x] I agree to contribute to the project under Apache 2 License.
- [x] To the best of my knowledge, the proposed patch is not based on a code under GPL or another license that is incompatible with OpenCV
- [x] The PR is proposed to the proper branch
- [x] There is a reference to the original bug report and related work
- [x] There is accuracy test, performance test and test data in opencv_extra repository, if applicable
      Patch to opencv_extra has the same branch name.
- [x] The feature is well documented and sample code can be built with the project CMake
2026-04-16 14:04:26 +03:00
Alexander Smorkalov 1492b5e8a2 Merge pull request #28815 from vrabaud:wasm
Add wasm support for int64
2026-04-16 12:16:29 +03:00
Vincent Rabaud 519b88cbc3 Add wasm support for int64
This has been around since 2021 and is part of the wasm spec:
https://github.com/llvm/llvm-project/commit/502f54049d17f5a107f833596fb2c31297a99773
This makes 5.x compile for wasm because convertTo needs it at:
https://github.com/opencv/opencv/blob/6751304b3556082cc79b63624024419ee15c1ed4/modules/core/src/convert.hpp#L204
2026-04-15 21:19:16 +02:00
Vincent Rabaud ae6198e000 Rewrite getBitsFromByteList to avoid harmless buffer overflow
At the end, currentByte = byteList.ptr()[base + currentByteIdx];
could be out of bound though never used.
2026-04-15 16:14:25 +02:00
Alexander Smorkalov 6751304b35 Merge pull request #28808 from abhishek-gola:engine_issue_fixed
Fixed forcing of ENGINE_AUTO to ORT when built with ONNX Runtime
2026-04-15 11:36:29 +03:00
Alexander Smorkalov 934c0716d2 Merge pull request #28735 from manand881:feature/ocl-bfmatcher-crosscheck
features2d: add OpenCL acceleration for BFMatcher cross-check
2026-04-15 08:48:14 +03:00
Varun Jaiswal c0ab6b69a8 Merge pull request #28781 from varun-jaiswal17:work-next
Add Qwen2.5 tokenizer support for dnn #28781

OpenCV extra: https://github.com/opencv/opencv_extra/pull/1334

Extended the dnn tokenizer support to qwen2.5 tokenization.

-  Add QWEN2_5 pre-tokenizer regex pattern to utils.hpp
- Generalised buildTokenizerGPT to buildTokenizerFromJson to handle gpt2/gpt4/ and qwen2.5
- Add qwen2/qwen2.5 model type support with special token handling
- Add Qwen2.5 tests
- Add end-to-end qwen_inference script for Qwen2.5 ONNX model


### Pull Request Readiness Checklist

See details at https://github.com/opencv/opencv/wiki/How_to_contribute#making-a-good-pull-request

- [x] I agree to contribute to the project under Apache 2 License.
- [x] To the best of my knowledge, the proposed patch is not based on a code under GPL or another license that is incompatible with OpenCV
- [x] The PR is proposed to the proper branch
- [x] There is a reference to the original bug report and related work
- [x] There is accuracy test, performance test and test data in opencv_extra repository, if applicable
      Patch to opencv_extra has the same branch name.
- [x] The feature is well documented and sample code can be built with the project CMake
2026-04-15 08:42:49 +03:00
Alexander Smorkalov 6e8e90c664 Merge pull request #28803 from asmorkalov:as/gftt_migration
Migrated goodFeaturesToTrack to features module.
2026-04-15 08:36:33 +03:00
Alexander Smorkalov bc0dff8c3e Merge pull request #28757 from AlrIsmail:fix-issue-22056
photo: remove redundant code in illuminationChange
2026-04-14 17:26:00 +03:00
Alexander Smorkalov 99fc573913 Moved irrelevant tests and functions from calib module to 3d. 2026-04-14 13:26:35 +03:00
Abhishek Gola b883454620 fixed forced ORT engine 2026-04-14 14:24:40 +05:30
Alexander Smorkalov 5166a6b716 Migrated goodFeaturesToTrack to features module. 2026-04-14 11:25:29 +03:00
Alexander Smorkalov 66e994d839 Merge pull request #28807 from abhishek-gola:eyelike_layer_add
Added EyeLike layer support
2026-04-14 11:20:53 +03:00