mirror of
https://github.com/saymrwulf/onnxruntime.git
synced 2026-06-26 03:00:54 +00:00
35 lines
No EOL
808 B
C++
35 lines
No EOL
808 B
C++
// Copyright (c) Microsoft Corporation. All rights reserved.
|
|
// Licensed under the MIT License.
|
|
|
|
#pragma once
|
|
|
|
#include "inc/ImageConversionTypes.h"
|
|
|
|
namespace _winml {
|
|
|
|
class NominalRangeConverter {
|
|
public:
|
|
NominalRangeConverter() = delete;
|
|
NominalRangeConverter(winml::LearningModelPixelRange pixelRange);
|
|
|
|
float Normalize(float val) const;
|
|
|
|
DirectX::PackedVector::HALF Normalize(DirectX::PackedVector::HALF val) const;
|
|
|
|
#if defined(_M_AMD64) || defined(_M_IX86)
|
|
__m128 Normalize(__m128 sse_data) const;
|
|
#endif
|
|
|
|
float Denormalize(float val) const;
|
|
|
|
DirectX::PackedVector::HALF Denormalize(DirectX::PackedVector::HALF val) const;
|
|
|
|
#if defined(_M_AMD64) || defined(_M_IX86)
|
|
__m128 Denormalize(__m128 sse_data) const;
|
|
#endif
|
|
|
|
private:
|
|
float scale;
|
|
int32_t shift;
|
|
};
|
|
} // namespace _winml
|