Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Conversation

hzcyf
Copy link
Contributor

@hzcyf hzcyf commented Feb 11, 2023

videoio: add support for Orbbec Femto Mega RGB-D camera

About Femto Mega

New feature

Be able to open the depth and color stream of the Orbbec Femto Mega Camera

Bug Fix

OBSensor:Fix the problem that takes too long to turn off the stream on Windows platform

  • I agree to contribute to the project under Apache 2 License.
  • 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
  • The PR is proposed to the proper branch
OS Compiler Camera Result
Windows11 (VS2022)MSVC17.3 Femto Mega Pass
Ubuntu22.04 GCC11.2 Femto Mega Pass

@ShiqiYu
Copy link
Member

ShiqiYu commented Feb 11, 2023

Could you provide more details on the PR? Any other features, or bug fixing?

Copy link
Member

@zihaomu zihaomu left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pass test on Khadas Vim3. ✅
image

@asmorkalov asmorkalov self-requested a review February 17, 2023 06:39
@zihaomu zihaomu requested a review from alalek March 1, 2023 06:07
@opencv-pushbot opencv-pushbot merged commit 0052d46 into opencv:4.x Mar 1, 2023
@AndreV84
Copy link

AndreV84 commented Mar 25, 2023

@zihaomu @hzcyf @asmorkalov
Could you list the steps to get the depth+rgbd outputs from the camera using your patch, please?Is there a reference example for playing network rgbd from Femto Mega?

@asmorkalov asmorkalov mentioned this pull request May 31, 2023
@kaingwade
Copy link
Contributor

@hzcyf I found out lately that Femto Mega fails to work on Windows 10. The output error message is something like:

[ WARN:[email protected]] global cap.cpp:304 cv::VideoCapture::open VIDEOIO(OBSENSOR): raised OpenCV exception:

OpenCV(4.10.0) d:\a\opencv-python\opencv-python\opencv\modules\videoio\src\cap_obsensor\obsensor_stream_channel_msmf.hpp:78: error: (-215:Assertion failed) p != NULL in function 'cv::obsensor::ComPtr::operator ->'

[ WARN:[email protected]] global cap.cpp:344 cv::VideoCapture::open VIDEOIO(OBSENSOR): backend is generally available but can't be used to capture by index

@asmorkalov
Copy link
Contributor

@AndreV84 Could you file dedicated bug about it. Let's continue investigation there to make the issue visible to all.

@zhonghong322
Copy link

@hzcyf I found out lately that Femto Mega fails to work on Windows 10. The output error message is something like:

[ WARN:[email protected]] global cap.cpp:304 cv::VideoCapture::open VIDEOIO(OBSENSOR): raised OpenCV exception:

OpenCV(4.10.0) d:\a\opencv-python\opencv-python\opencv\modules\videoio\src\cap_obsensor\obsensor_stream_channel_msmf.hpp:78: error: (-215:Assertion failed) p != NULL in function 'cv::obsensor::ComPtr::operator ->'

[ WARN:[email protected]] global cap.cpp:344 cv::VideoCapture::open VIDEOIO(OBSENSOR): backend is generally available but can't be used to capture by index
Is this reproducible on your Windows 10 system, or is it intermittent?

@kaingwade
Copy link
Contributor

@zhonghong322 The error is reproducible. And the info from this PR showed that Femto Mega wasn't tested on Windows 10.

asmorkalov pushed a commit that referenced this pull request Apr 25, 2025
videoio: add Orbbec Gemini 330 camera support #27230

### 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] The feature is well documented and sample code can be built with the project CMake

### Description of Changes
#### motivated:
- Orbbec has launched a new RGB-D camera — the Gemini 330. To fully leverage the capabilities of the Gemini 330, Orbbec simultaneously released version 2 of the open-source OrbbecSDK. This PR adapts the support for the Gemini 330 series cameras to better meet and respond to users’ application requirements.
#### change:
- Add support for the Orbbec Gemini330 camera.
- Fixed an issue with Femto Mega on Windows 10/11; for details, see [issue](#23237 (comment)).
- When enabling `HAVE_OBSENSOR_ORBBEC_SDK`, the build now fetches version 2 of the OrbbecSDK, and the sample API calls have been updated to the v2 format.

### Testing
|     OS     |                Compiler                 |      Camera       | Result |
|:----------:|:---------------------------------------:|:-----------------:|:------:|
| Windows 11 | (VS2022) MSVC runtime library version 14.40       | Gemini 335/336L   | Pass   |
| Windows 11 | (VS2022) MSVC runtime library version 14.19       | Gemini 335/336L   | Pass   |
| Ubuntu22.04| GCC 11.4                               | Gemini 335/336L   | Pass   |
| Ubuntu18.04| GCC 7.5                                | Gemini 335/336L   | Pass   |

### Acknowledgements
Thank you to the OpenCV team for the continuous support and for creating such a robust open source project. I appreciate the valuable feedback from the community and reviewers, which has helped improve the quality of this contribution!
fengyuentau pushed a commit to fengyuentau/opencv that referenced this pull request Apr 25, 2025
videoio: add Orbbec Gemini 330 camera support opencv#27230

### 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] The feature is well documented and sample code can be built with the project CMake

### Description of Changes
#### motivated:
- Orbbec has launched a new RGB-D camera — the Gemini 330. To fully leverage the capabilities of the Gemini 330, Orbbec simultaneously released version 2 of the open-source OrbbecSDK. This PR adapts the support for the Gemini 330 series cameras to better meet and respond to users’ application requirements.
#### change:
- Add support for the Orbbec Gemini330 camera.
- Fixed an issue with Femto Mega on Windows 10/11; for details, see [issue](opencv#23237 (comment)).
- When enabling `HAVE_OBSENSOR_ORBBEC_SDK`, the build now fetches version 2 of the OrbbecSDK, and the sample API calls have been updated to the v2 format.

### Testing
|     OS     |                Compiler                 |      Camera       | Result |
|:----------:|:---------------------------------------:|:-----------------:|:------:|
| Windows 11 | (VS2022) MSVC runtime library version 14.40       | Gemini 335/336L   | Pass   |
| Windows 11 | (VS2022) MSVC runtime library version 14.19       | Gemini 335/336L   | Pass   |
| Ubuntu22.04| GCC 11.4                               | Gemini 335/336L   | Pass   |
| Ubuntu18.04| GCC 7.5                                | Gemini 335/336L   | Pass   |

### Acknowledgements
Thank you to the OpenCV team for the continuous support and for creating such a robust open source project. I appreciate the valuable feedback from the community and reviewers, which has helped improve the quality of this contribution!
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

9 participants