Argus 0.97.3 setting camera sharpness in edge enhancement having issue

Hello,
We are using TX2 and two leopard imaging IMX577 cameras. The OS of TX2 is L4T 32.5.0. Argus 0.97.3.

I found that if I set the strength of edge enhancement to say 0.15, then when I read the strength value from the meta data of the frames, its value is 0.85, which is 1 minus 0.15. I have tried multiple values with all 3 modes (EDGE_ENHANCE_MODE_OFF, EDGE_ENHANCE_MODE_FAST and EDGE_ENHANCE_MODE_HIGH_QUALITY), this applies to all of them.

Is there any reason why the strength value read from the metadata of the frame equals 1 minus the value set?

Here is how I set the edge enhancement:

bool IMX577StereoCamera::configCameraSharpness(IEdgeEnhanceSettings *iEdgeEnhanceSettings, const IMX577Sharpness& sharpnessConfig)
{
    bool res = false;
    Argus::Status status = STATUS_OK;
    if(iEdgeEnhanceSettings != nullptr)
    {
        if(sharpnessConfig.m_strength >= 0 && sharpnessConfig.m_strength <= 1)
        {
            status = iEdgeEnhanceSettings->setEdgeEnhanceMode(*(sharpnessConfig.m_mode));
            if(status == STATUS_OK)
            {
                status = iEdgeEnhanceSettings->setEdgeEnhanceStrength(sharpnessConfig.m_strength);
                if(status == STATUS_OK)
                {
                    res = true;
                }
                else
                {
                    logAndThrow("Error setting sharpness strength", __FILE__, __LINE__);
                }
            }
            else
            {
                logAndThrow("Error setting sharpness mode", __FILE__, __LINE__);
            }
        }
        else
        {
            std::stringstream ss;
            ss << VAR_VAL_STREAM(sharpnessConfig.m_strength) << " out of range [0,1]";
            logAndThrow(ss.str(), __FILE__, __LINE__);
        }
    }
    else
    {
        std::stringstream ss;
        ss << "nullptr found, " << VAR_VAL_STREAM(iEdgeEnhanceSettings);
        logAndThrow(ss.str(), __FILE__, __LINE__);
    }
    return res;
}

Here is how I read the settings from the frame:

void LIIMX577Camera::getCurCamSettings(Argus::UniqueObj<EGLStream::Frame>& frame)
{
    LIIMX577CameraSetting setting;
    EGLStream::IArgusCaptureMetadata *iArgusCaptureMetadata = interface_cast<EGLStream::IArgusCaptureMetadata>(frame);
    if(iArgusCaptureMetadata == nullptr)
    {
        logAndThrow("Cannot get IArgusCaptureMetadata", __FILE__, __LINE__);
    }

    CaptureMetadata *metadata = iArgusCaptureMetadata->getMetadata();
    if(metadata == nullptr)
    {
        logAndThrow("Cannot get CaptureMetadata", __FILE__, __LINE__);
    }

    ICaptureMetadata *iMetadata = interface_cast<ICaptureMetadata>(metadata);
    if(metadata == nullptr)
    {
        logAndThrow("Cannot get ICaptureMetadata", __FILE__, __LINE__);
    }

    IEdgeEnhanceMetadata *iEdgeEnahenceMetadata = interface_cast<IEdgeEnhanceMetadata>(metadata);
    if(iEdgeEnahenceMetadata == nullptr)
    {
        logAndThrow("Cannot get IEdgeEnhanceMetadata", __FILE__, __LINE__);
    }

    /* sharpness setting */
    setting.m_sharpness.m_mode.reset(new Argus::EdgeEnhanceMode(iEdgeEnahenceMetadata->getEdgeEnhanceMode()));
    setting.m_sharpness.m_strength = iEdgeEnahenceMetadata->getEdgeEnhanceStrength();
    MMI_INFO_LOG_L << "setting.m_sharpness.m_strength" << setting.m_sharpness.m_strength;

    // .... More code
}