diff --git a/orbbec_camera/SDK/include/libobsensor/h/Filter.h b/orbbec_camera/SDK/include/libobsensor/h/Filter.h index 475745a1..a03f857e 100644 --- a/orbbec_camera/SDK/include/libobsensor/h/Filter.h +++ b/orbbec_camera/SDK/include/libobsensor/h/Filter.h @@ -245,6 +245,16 @@ OB_EXPORT uint32_t ob_filter_config_schema_list_get_count(const ob_filter_config OB_EXPORT ob_filter_config_schema_item ob_filter_config_schema_list_get_item(const ob_filter_config_schema_list *config_schema_list, uint32_t index, ob_error **error); +/** + * @brief Set the align to stream profile for the align filter. + * @breif It is useful when the align target stream dose not started (without any frame to get intrinsics and extrinsics). + * + * @param filter A filter object. + * @param align_to_stream_profile The align target stream profile. + * @param error Pointer to an error object that will be set if an error occurs. + */ +OB_EXPORT void ob_align_filter_set_align_to_stream_profile(ob_filter *filter, const ob_stream_profile *align_to_stream_profile, ob_error **error); + // The following interfaces are deprecated and are retained here for compatibility purposes. #define ob_get_filter ob_filter_list_get_filter #define ob_get_filter_name ob_filter_get_name diff --git a/orbbec_camera/SDK/include/libobsensor/h/ObTypes.h b/orbbec_camera/SDK/include/libobsensor/h/ObTypes.h index 90c8e60c..e1a2bcf1 100644 --- a/orbbec_camera/SDK/include/libobsensor/h/ObTypes.h +++ b/orbbec_camera/SDK/include/libobsensor/h/ObTypes.h @@ -1,9 +1,6 @@ // Copyright (c) Orbbec Inc. All Rights Reserved. // Licensed under the MIT License. -// License: Apache 2.0. See LICENSE file in root directory. -// Copyright(c) 2020 Orbbec Corporation. All Rights Reserved. - /** * @file ObTypes.h * @brief Provide structs commonly used in the SDK, enumerating constant definitions. diff --git a/orbbec_camera/SDK/include/libobsensor/h/Property.h b/orbbec_camera/SDK/include/libobsensor/h/Property.h index c418f2f3..f5250b33 100644 --- a/orbbec_camera/SDK/include/libobsensor/h/Property.h +++ b/orbbec_camera/SDK/include/libobsensor/h/Property.h @@ -97,7 +97,7 @@ typedef enum { /** * @brief Software filter switch */ - OB_PROP_DEPTH_SOFT_FILTER_BOOL = 24, + OB_PROP_DEPTH_NOISE_REMOVAL_FILTER_BOOL = 24, /** * @brief LDP status @@ -105,14 +105,14 @@ typedef enum { OB_PROP_LDP_STATUS_BOOL = 32, /** - * @brief soft filter maxdiff param + * @brief maxdiff for depth noise removal filter */ - OB_PROP_DEPTH_MAX_DIFF_INT = 40, + OB_PROP_DEPTH_NOISE_REMOVAL_FILTER_MAX_DIFF_INT = 40, /** - * @brief soft filter maxSpeckleSize + * @brief maxSpeckleSize for depth noise removal filter */ - OB_PROP_DEPTH_MAX_SPECKLE_SIZE_INT = 41, + OB_PROP_DEPTH_NOISE_REMOVAL_FILTER_MAX_SPECKLE_SIZE_INT = 41, /** * @brief Hardware d2c is on @@ -759,7 +759,9 @@ typedef enum { #define OB_PROP_LASER_ENERGY_LEVEL_INT OB_PROP_LASER_POWER_LEVEL_CONTROL_INT #define OB_PROP_LASER_HW_ENERGY_LEVEL_INT OB_PROP_LASER_POWER_ACTUAL_LEVEL_INT #define OB_PROP_DEVICE_USB3_REPEAT_IDENTIFY_BOOL OB_PROP_DEVICE_USB2_REPEAT_IDENTIFY_BOOL -#define OB_PROP_DEPTH_NOISE_REMOVAL_FILTER_BOOL OB_PROP_DEPTH_SOFT_FILTER_BOOL +#define OB_PROP_DEPTH_SOFT_FILTER_BOOL OB_PROP_DEPTH_NOISE_REMOVAL_FILTER_BOOL +#define OB_PROP_DEPTH_MAX_DIFF_INT OB_PROP_DEPTH_NOISE_REMOVAL_FILTER_MAX_DIFF_INT +#define OB_PROP_DEPTH_MAX_SPECKLE_SIZE_INT OB_PROP_DEPTH_NOISE_REMOVAL_FILTER_MAX_SPECKLE_SIZE_INT /** * @brief The data type used to describe all property settings diff --git a/orbbec_camera/SDK/include/libobsensor/hpp/Filter.hpp b/orbbec_camera/SDK/include/libobsensor/hpp/Filter.hpp index 337c0375..d124c35e 100644 --- a/orbbec_camera/SDK/include/libobsensor/hpp/Filter.hpp +++ b/orbbec_camera/SDK/include/libobsensor/hpp/Filter.hpp @@ -440,6 +440,18 @@ public: void setMatchTargetResolution(bool state) { setConfigValue("MatchTargetRes", state); } + + /** + * @brief Set the Align To Stream Profile + * @brief It is useful when the align target stream dose not started (without any frame to get intrinsics and extrinsics). + * + * @param profile The Align To Stream Profile. + */ + void setAlignToStreamProfile(std::shared_ptr profile) { + ob_error *error = nullptr; + ob_align_filter_set_align_to_stream_profile(impl_, profile->getImpl(), &error); + Error::handle(&error); + } }; /** diff --git a/orbbec_camera/SDK/lib/arm64/extensions/filters/libFilterProcessor.so b/orbbec_camera/SDK/lib/arm64/extensions/filters/libFilterProcessor.so index 5b78bd76..c7ee22bb 100644 Binary files a/orbbec_camera/SDK/lib/arm64/extensions/filters/libFilterProcessor.so and b/orbbec_camera/SDK/lib/arm64/extensions/filters/libFilterProcessor.so differ diff --git a/orbbec_camera/SDK/lib/arm64/extensions/filters/libob_priv_filter.so b/orbbec_camera/SDK/lib/arm64/extensions/filters/libob_priv_filter.so index 50484df3..83d8b2c8 100644 Binary files a/orbbec_camera/SDK/lib/arm64/extensions/filters/libob_priv_filter.so and b/orbbec_camera/SDK/lib/arm64/extensions/filters/libob_priv_filter.so differ diff --git a/orbbec_camera/SDK/lib/arm64/extensions/firmwareupdater/libfirmwareupdater.so b/orbbec_camera/SDK/lib/arm64/extensions/firmwareupdater/libfirmwareupdater.so index 5a6c10a0..a7dec724 100644 Binary files a/orbbec_camera/SDK/lib/arm64/extensions/firmwareupdater/libfirmwareupdater.so and b/orbbec_camera/SDK/lib/arm64/extensions/firmwareupdater/libfirmwareupdater.so differ diff --git a/orbbec_camera/SDK/lib/arm64/extensions/frameprocessor/libob_frame_processor.so b/orbbec_camera/SDK/lib/arm64/extensions/frameprocessor/libob_frame_processor.so index 59c12056..79bdedde 100644 Binary files a/orbbec_camera/SDK/lib/arm64/extensions/frameprocessor/libob_frame_processor.so and b/orbbec_camera/SDK/lib/arm64/extensions/frameprocessor/libob_frame_processor.so differ diff --git a/orbbec_camera/SDK/lib/arm64/libOrbbecSDK.so b/orbbec_camera/SDK/lib/arm64/libOrbbecSDK.so index b66c4395..af8eaefd 100644 Binary files a/orbbec_camera/SDK/lib/arm64/libOrbbecSDK.so and b/orbbec_camera/SDK/lib/arm64/libOrbbecSDK.so differ diff --git a/orbbec_camera/SDK/lib/x64/extensions/filters/libFilterProcessor.so b/orbbec_camera/SDK/lib/x64/extensions/filters/libFilterProcessor.so index 1d03cacf..4c904543 100644 Binary files a/orbbec_camera/SDK/lib/x64/extensions/filters/libFilterProcessor.so and b/orbbec_camera/SDK/lib/x64/extensions/filters/libFilterProcessor.so differ diff --git a/orbbec_camera/SDK/lib/x64/extensions/firmwareupdater/libfirmwareupdater.so b/orbbec_camera/SDK/lib/x64/extensions/firmwareupdater/libfirmwareupdater.so index 1fb33bbd..d45350dd 100644 Binary files a/orbbec_camera/SDK/lib/x64/extensions/firmwareupdater/libfirmwareupdater.so and b/orbbec_camera/SDK/lib/x64/extensions/firmwareupdater/libfirmwareupdater.so differ diff --git a/orbbec_camera/SDK/lib/x64/extensions/frameprocessor/libob_frame_processor.so b/orbbec_camera/SDK/lib/x64/extensions/frameprocessor/libob_frame_processor.so index d84ff34b..fb90e6b6 100644 Binary files a/orbbec_camera/SDK/lib/x64/extensions/frameprocessor/libob_frame_processor.so and b/orbbec_camera/SDK/lib/x64/extensions/frameprocessor/libob_frame_processor.so differ diff --git a/orbbec_camera/SDK/lib/x64/libOrbbecSDK.so b/orbbec_camera/SDK/lib/x64/libOrbbecSDK.so index 81090a1b..f2adde2b 100644 Binary files a/orbbec_camera/SDK/lib/x64/libOrbbecSDK.so and b/orbbec_camera/SDK/lib/x64/libOrbbecSDK.so differ