Skip to content

Commit cacda4f

Browse files
committed
Complete features/xfeatures2d namespace move sweep in migration guide
Cross-check every type in OpenCvSharp.Features2D (v4) against the features/xfeatures2d modules (v5) instead of only the classes that surfaced through sample code. AgastFeatureDetector also moved from OpenCvSharp to OpenCvSharp.XFeatures2D, alongside the previously documented SIFT/BRISK/KAZE/AKAZE moves. Closes #1993
1 parent f0b9262 commit cacda4f

1 file changed

Lines changed: 13 additions & 3 deletions

File tree

docs/migration-4-to-5.md

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -148,17 +148,27 @@ var net = Cv2.Dnn.ReadNetFromONNX("m.onnx"); // was: CvDnn.ReadNetFromOnnx(...)
148148
149149
### Feature detector and Bag-of-Words namespace churn
150150
151-
Following the OpenCV 5 `features2d`/`xfeatures2d` reshuffle, several detector and Bag-of-Words classes changed namespace:
151+
Following the OpenCV 5 `features2d`/`xfeatures2d` reshuffle, several detector and Bag-of-Words classes changed namespace. This table is the result of a full sweep of every type in `OpenCvSharp.Features2D` (OpenCvSharp4) and the `features`/`xfeatures2d` modules (OpenCvSharp5), not just the ones that happened to surface through sample code:
152152
153153
| Class | Before (OpenCvSharp4) | After (OpenCvSharp5) |
154154
|---|---|---|
155155
| `SIFT` | `OpenCvSharp.Features2D` | `OpenCvSharp` (the `Features2D` namespace no longer exists) |
156156
| `BRISK` | `OpenCvSharp` | `OpenCvSharp.XFeatures2D` |
157157
| `KAZE` | `OpenCvSharp` | `OpenCvSharp.XFeatures2D` |
158158
| `AKAZE` | `OpenCvSharp` | `OpenCvSharp.XFeatures2D` |
159+
| `AgastFeatureDetector` | `OpenCvSharp` | `OpenCvSharp.XFeatures2D` |
159160
| `BOWTrainer` / `BOWKMeansTrainer` / `BOWImgDescriptorExtractor` | `OpenCvSharp` | `OpenCvSharp.XFeatures2D` |
160-
| `SURF` | `OpenCvSharp.XFeatures2D` | unchanged |
161-
| `ORB`, `FastFeatureDetector` | `OpenCvSharp` | unchanged |
161+
162+
Everything else in these two modules keeps its OpenCvSharp4 namespace:
163+
164+
| Class | Namespace (unchanged) |
165+
|---|---|
166+
| `SURF`, `BriefDescriptorExtractor`, `FREAK`, `LATCH`, `LUCID`, `StarDetector` | `OpenCvSharp.XFeatures2D` |
167+
| `ORB`, `FastFeatureDetector`, `MSER`, `GFTTDetector`, `SimpleBlobDetector`, `DenseFeatureDetector`, `Feature2D`, `DescriptorMatcher`, `BFMatcher`, `FlannBasedMatcher`, `KeyPointsFilter`, `KeyPoint`, `DMatch`, `AKAZEDescriptorType`, `KAZEDiffusivityType`, `ORBScoreType`, `FASTType`, `DrawMatchesFlags` | `OpenCvSharp` |
168+
169+
Note that `AKAZEDescriptorType` and `KAZEDiffusivityType` stay in `OpenCvSharp` even though the `AKAZE`/`KAZE` classes that use them moved to `OpenCvSharp.XFeatures2D`.
170+
171+
`ALIKED`, `DISK`, `AffineFeature`, `LightGlueMatcher`, and `ANNIndex`/`ANNIndexDistance` are new in OpenCvSharp5 (no OpenCvSharp4 equivalent) and live in `OpenCvSharp`.
162172
163173
## 5. Removed APIs
164174

0 commit comments

Comments
 (0)