Simd Library Release Notes (2017).

Home | Release Notes | Download | Documentation | Issues | GitHub | SourceForge

2017 | 2016 | 2015 | 2014 | 2013

December 1, 2017 (version 4.1.60.1325)

Algorithms

New features
  • Base implementation, SSE4.1, AVX, AVX2 and AVX-512BW optimizations of function HogLiteFilterSeparable.
  • Base implementation, SSE4.1 and AVX2 optimizations of function HogLiteFindMax7x7.
  • Mask parameter for function HogLiteFilterFeatures.
  • Base implementation, SSE4.1, AVX2 and AVX-512BW optimizations of function HogLiteCreateMask.
  • Function Copy (to copy pyramids).
  • Method View::Row.
  • Font class.
  • Overloading of function DrawRectangle.
  • Multithreading to function Neural::Predict.
  • Method Neural::SetThreadNumber.
  • Motion framework.
Improved features
  • SSE4.1 optimization of function DetectionHaarDetect32fp.
  • SSE4.1 optimization of function DetectionHaarDetect32fi.
Bug fixing
  • Crash in AVX-512BW optimization of function SimdResizeBilinear.
  • Fixed bug in the function Neural::Save.

Test framework

New features
  • Performance report in HTML file format.
  • Tests for verifying functionality of function HogLiteFilterSeparable.
  • Tests for verifying functionality of function HogLiteFindMax7x7.
  • Tests for verifying functionality of function HogLiteCreateMask.
  • Special tests for verifying functionality of Font class.
  • Special tests for verifying functionality of Motion::Detector class.

Infrastructure

Bug fixing
  • Clang compiler error: "unknown argument: '-fabi-version=4'".
  • Clang compiler error concerned with FP16.
Home

November 1, 2017 (version 4.0.59.1282)

Algorithms

New features
  • Method Neural::Network::Save to save net weights to an external buffer.
  • Method Neural::Network::Load to load net weights from the external buffer.
  • Method Neural::Network::Empty.
  • Method View::Save supports PPM(Portable Pixel Map) image file format.
  • Method View::Load supports PPM(Portable Pixel Map) image file format.
  • AVX-512F optimization of function NeuralConvolutionForward.
  • Base implementation of function NormalizedColors.
  • Base implementation and AVX-512BW optimization of function ChangeColors.
  • AVX-512BW optimization of function NormalizeHistogram.
  • Base implementation, SSE4.1, AVX, AVX2 and AVX-512BW optimizations of function HogLiteExtractFeatures.
  • Base implementation, SSE4.1, AVX, AVX2 and AVX-512BW optimizations of function HogLiteFilterFeatures.
  • Base implementation, SSE4.1, AVX, AVX2 and AVX-512BW optimizations of function HogLiteResizeFeatures.
  • Base implementation, SSE4.1, AVX, AVX2 and AVX-512BW optimizations of function HogLiteCompressFeatures.
Bug fixing
  • A bug in base implementation of function PseudoHogExtractHistogram8x8x8.
  • A compiler error in function Avx512bw::FirstNotZero64.
  • A compiler error in function Avx512bw::LastNotZero64.
Improved features
  • SSE4.1, AVX2 and AVX-512BW optimizations of function HogExtractFeatures

Test framework

New features
  • Tests for verifying functionality of AVX-512F version of function NeuralConvolutionForward.
  • Tests for verifying functionality of function ChangeColors.
  • Tests for verifying functionality of AVX-512BW version of function NormalizeHistogram.
  • Tests for verifying functionality of function HogLiteExtractFeatures.
  • Tests for verifying functionality of function HogLiteFilterFeatures.
  • Tests for verifying functionality of function HogLiteResizeFeatures.
  • Tests for verifying functionality of function HogLiteCompressFeatures.

Infrastructure

Improving
  • Code formating.
Bug fixing
  • Wrong options for AVX-512F and AVX-512BW in Visual Stidio 2017 project files.
  • Error during project building for Visual Studio if path to project directory contains spaces.
Home

October 2, 2017 (version 4.0.58.1229)

Algorithms

New features
  • AVX-512BW optimization of function BgrToYuv422p.
  • AVX-512BW optimization of function BgrToYuv444p.
  • AVX-512BW optimization of function Binarization.
  • AVX-512BW optimization of function AveragingBinarization.
  • AVX-512BW optimization of function ConditionalCount8u.
  • AVX-512BW optimization of function ConditionalCount16i.
  • AVX-512BW optimization of function ConditionalSum.
  • AVX-512BW optimization of function ConditionalSquareSum.
  • AVX-512BW optimization of function ConditionalSquareGradientSum.
  • AVX-512BW optimization of function ConditionalFill.
  • AVX-512BW optimization of function DeinterleaveUv.
  • AVX-512BW optimization of function DeinterleaveBgr.
  • AVX-512BW optimization of function DeinterleaveBgra.
  • AVX-512BW optimization of function EdgeBackgroundGrowRangeSlow.
  • AVX-512BW optimization of function EdgeBackgroundGrowRangeFast.
  • AVX-512BW optimization of function EdgeBackgroundIncrementCount.
  • AVX-512BW optimization of function EdgeBackgroundAdjustRange.
  • AVX-512BW optimization of function EdgeBackgroundAdjustRangeMasked.
  • AVX-512BW optimization of function EdgeBackgroundShiftRangeMasked.
  • AVX-512BW optimization of function FillBgr.
  • AVX-512BW optimization of function FillBgra.
  • AVX-512BW optimization of function Float32ToFloat16.
  • AVX-512BW optimization of function Float16ToFloat32.
  • AVX-512BW optimization of function SquaredDifferenceSum16f.
  • AVX-512BW optimization of function Float32ToUint8.
  • AVX-512BW optimization of function Uint8ToFloat32.
  • AVX-512BW optimization of function GaussianBlur3x3.
  • AVX-512BW optimization of function GrayToBgr.
  • AVX-512BW optimization of function GrayToBgra.
  • AVX-512BW optimization of function AbsSecondDerivativeHistogram.
  • AVX-512BW optimization of function HistogramMasked.
  • AVX-512BW optimization of function HistogramConditional.
  • AVX-512BW optimization of function Int16ToGray.
  • AVX-512BW optimization of function InterferenceIncrement.
  • AVX-512BW optimization of function InterferenceIncrementMasked.
  • AVX-512BW optimization of function InterferenceDecrement.
  • AVX-512BW optimization of function InterferenceDecrementMasked.
  • AVX-512BW optimization of function DetectionHaarDetect32fp.
  • AVX-512BW optimization of function DetectionHaarDetect32fi.
  • AVX-512BW optimization of function DetectionLbpDetect32fp.
  • AVX-512BW optimization of function DetectionLbpDetect32fi.
  • AVX-512BW optimization of function DetectionLbpDetect16ip.
  • AVX-512BW optimization of function DetectionLbpDetect16ii.
  • AVX-512BW optimization of function Laplace.
  • AVX-512BW optimization of function LaplaceAbs.
  • AVX-512BW optimization of function LaplaceAbsSum.
  • AVX-512BW optimization of function InterleaveUv.
  • AVX-512BW optimization of function InterleaveBgr.
  • AVX-512BW optimization of function InterleaveBgra.
  • AVX-512BW optimization of function LbpEstimate.
  • AVX-512BW optimization of function MeanFilter3x3.
  • AVX-512BW optimization of function MedianFilterRhomb3x3.
  • AVX-512BW optimization of function MedianFilterRhomb5x5.
  • AVX-512BW optimization of function MedianFilterSquare3x3.
  • AVX-512BW optimization of function MedianFilterSquare5x5.
  • AVX-512BW optimization of function ReduceGray2x2.
  • AVX-512BW optimization of function ReduceGray3x3.
  • AVX-512BW optimization of function ReduceGray4x4.
  • AVX-512BW optimization of function ReduceGray5x5.
  • AVX-512BW optimization of function Reorder16bit.
  • AVX-512BW optimization of function Reorder32bit.
  • AVX-512BW optimization of function Reorder64bit.
  • AVX-512BW optimization of function SegmentationChangeIndex.
  • AVX-512BW optimization of function SegmentationFillSingleHoles.
  • AVX-512BW optimization of function SegmentationPropagate2x2.
  • AVX-512BW optimization of function SegmentationShrinkRegion.
  • AVX-512BW optimization of function SobelDx.
  • AVX-512BW optimization of function SobelDxAbs.
  • AVX-512BW optimization of function SobelDxAbsSum.
  • AVX-512BW optimization of function SobelDy.
  • AVX-512BW optimization of function SobelDyAbs.
  • AVX-512BW optimization of function SobelDyAbsSum.
  • AVX-512BW optimization of function ContourMetrics.
  • AVX-512BW optimization of function ContourMetricsMasked.
  • AVX-512BW optimization of function ContourAnchors.
  • AVX-512BW optimization of function SquaredDifferenceSum.
  • AVX-512BW optimization of function SquaredDifferenceSumMasked.
  • AVX-512BW optimization of function GetStatistic.
  • AVX-512BW optimization of function GetMoments.
  • AVX-512BW optimization of function GetRowSums.
  • AVX-512BW optimization of function GetColSums.
  • AVX-512BW optimization of function GetAbsDyRowSums.
  • AVX-512BW optimization of function GetAbsDxColSums.
  • AVX-512BW optimization of function ValueSum.
  • AVX-512BW optimization of function SquareSum.
  • AVX-512BW optimization of function CorrelationSum.
  • AVX-512BW optimization of function StretchGray2x2.
  • AVX-512BW optimization of function TextureBoostedSaturatedGradient.
  • AVX-512BW optimization of function TextureBoostedUv.
  • AVX-512BW optimization of function TextureGetDifferenceSum.
  • AVX-512BW optimization of function TexturePerformCompensation.
  • AVX-512BW optimization of function Yuv420pToBgr.
  • AVX-512BW optimization of function Yuv422pToBgr.
  • AVX-512BW optimization of function Yuv444pToBgr.
  • AVX-512BW optimization of function Yuv420pToBgra.
  • AVX-512BW optimization of function Yuv422pToBgra.
  • AVX-512BW optimization of function Yuv444pToBgra.
  • AVX-512BW optimization of function Yuv420pToHue.
  • AVX-512BW optimization of function Yuv444pToHue.
  • AVX-512BW optimization of function ShiftBilinear.
  • AVX-512BW optimization of function ResizeBilinear.
  • AVX-512F optimization of function SvmSumLinear.
  • AVX2 and AVX-512BW optimizations of function Integral.
  • AVX-512F optimization of function SquaredDifferenceSum32f.
  • AVX-512F optimization of function SquaredDifferenceKahanSum32f.
  • AVX-512BW optimization of function HogDeinterleave.
  • AVX-512BW optimization of function HogDirectionHistograms.
  • AVX-512BW optimization of function HogExtractFeatures.
  • AVX-512BW optimization of function HogFilterSeparable.
  • Base implementation of function PseudoHogExtractHistogram8x8x8.
Bug fixing
  • Potential overflow of short integer in function DetectionLbpDetect16ip.
  • Potential overflow of short integer in function DetectionLbpDetect16ii.
  • Visual Studio compiler bug in AVX-512BW optimization of function BgraToYuv420p.
  • Visual Studio compiler bug in AVX-512BW optimization of function BgraToYuv422p.
  • Visual Studio compiler bug in base implementation of function Yuv444pToHue.
Improved features
  • AVX2 optimization of function ReduceGray3x3.
  • AVX-512BW optimization of function AbsDifferenceSum.
  • AVX-512BW optimization of function AbsDifferenceSumMasked.
  • AVX2 optimization of function ResizeBilinear for gray images
  • AVX2 optimization of function HogDirectionHistograms
  • Base implementation, SSE4.1 and AVX2 optimizations of function HogExtractFeatures
  • Base implementation, SSE and AVX2 optimizations of function HogFilterSeparable
Removed features
  • SSE2, AVX2, NEON and VMX optimizations of function EdgeBackgroundShiftRange.

Test framework

New features
  • Tests for verifying functionality of AVX-512BW version of function BgrToYuv422p.
  • Tests for verifying functionality of AVX-512BW version of function BgrToYuv444p.
  • Tests for verifying functionality of AVX-512BW version of function Binarization.
  • Tests for verifying functionality of AVX-512BW version of function AveragingBinarization.
  • Tests for verifying functionality of AVX-512BW version of function ConditionalCount8u.
  • Tests for verifying functionality of AVX-512BW version of function ConditionalCount16i.
  • Tests for verifying functionality of AVX-512BW version of function ConditionalSum.
  • Tests for verifying functionality of AVX-512BW version of function ConditionalSquareSum.
  • Tests for verifying functionality of AVX-512BW version of function ConditionalSquareGradientSum.
  • Tests for verifying functionality of AVX-512BW version of function ConditionalFill.
  • Tests for verifying functionality of AVX-512BW version of function DeinterleaveUv.
  • Tests for verifying functionality of AVX-512BW version of function DeinterleaveBgr.
  • Tests for verifying functionality of AVX-512BW version of function DeinterleaveBgra.
  • Tests for verifying functionality of AVX-512BW version of function EdgeBackgroundGrowRangeSlow.
  • Tests for verifying functionality of AVX-512BW version of function EdgeBackgroundGrowRangeFast.
  • Tests for verifying functionality of AVX-512BW version of function EdgeBackgroundIncrementCount.
  • Tests for verifying functionality of AVX-512BW version of function EdgeBackgroundAdjustRange.
  • Tests for verifying functionality of AVX-512BW version of function EdgeBackgroundAdjustRangeMasked.
  • Tests for verifying functionality of AVX-512BW version of function EdgeBackgroundShiftRangeMasked.
  • Tests for verifying functionality of AVX-512BW version of function FillBgr.
  • Tests for verifying functionality of AVX-512BW version of function FillBgra.
  • Tests for verifying functionality of AVX-512BW version of function Float32ToFloat16.
  • Tests for verifying functionality of AVX-512BW version of function Float16ToFloat32.
  • Tests for verifying functionality of AVX-512BW version of function SquaredDifferenceSum16f.
  • Tests for verifying functionality of AVX-512BW version of function Float32ToUint8.
  • Tests for verifying functionality of AVX-512BW version of function Uint8ToFloat32.
  • Tests for verifying functionality of AVX-512BW version of function GaussianBlur3x3.
  • Tests for verifying functionality of AVX-512BW version of function GrayToBgr.
  • Tests for verifying functionality of AVX-512BW version of function GrayToBgra.
  • Tests for verifying functionality of AVX-512BW version of function AbsSecondDerivativeHistogram.
  • Tests for verifying functionality of AVX-512BW version of function HistogramMasked.
  • Tests for verifying functionality of AVX-512BW version of function HistogramConditional.
  • Tests for verifying functionality of AVX-512BW version of function Int16ToGray.
  • Tests for verifying functionality of AVX-512BW version of function InterferenceIncrement.
  • Tests for verifying functionality of AVX-512BW version of function InterferenceIncrementMasked.
  • Tests for verifying functionality of AVX-512BW version of function InterferenceDecrement.
  • Tests for verifying functionality of AVX-512BW version of function InterferenceDecrementMasked.
  • Tests for verifying functionality of AVX-512BW version of function DetectionHaarDetect32fp.
  • Tests for verifying functionality of AVX-512BW version of function DetectionHaarDetect32fi.
  • Tests for verifying functionality of AVX-512BW version of function DetectionLbpDetect32fp.
  • Tests for verifying functionality of AVX-512BW version of function DetectionLbpDetect32fi.
  • Tests for verifying functionality of AVX-512BW version of function DetectionLbpDetect16ip.
  • Tests for verifying functionality of AVX-512BW version of function DetectionLbpDetect16ii.
  • Tests for verifying functionality of AVX-512BW version of function Laplace.
  • Tests for verifying functionality of AVX-512BW version of function LaplaceAbs.
  • Tests for verifying functionality of AVX-512BW version of function LaplaceAbsSum.
  • Tests for verifying functionality of AVX-512BW version of function InterleaveUv.
  • Tests for verifying functionality of AVX-512BW version of function InterleaveBgr.
  • Tests for verifying functionality of AVX-512BW version of function InterleaveBgra.
  • Tests for verifying functionality of AVX-512BW version of function LbpEstimate.
  • Tests for verifying functionality of AVX-512BW version of function MeanFilter3x3.
  • Tests for verifying functionality of AVX-512BW version of function MedianFilterRhomb3x3.
  • Tests for verifying functionality of AVX-512BW version of function MedianFilterRhomb5x5.
  • Tests for verifying functionality of AVX-512BW version of function MedianFilterSquare3x3.
  • Tests for verifying functionality of AVX-512BW version of function MedianFilterSquare5x5.
  • Tests for verifying functionality of AVX-512BW version of function ReduceGray2x2.
  • Tests for verifying functionality of AVX-512BW version of function ReduceGray3x3.
  • Tests for verifying functionality of AVX-512BW version of function ReduceGray4x4.
  • Tests for verifying functionality of AVX-512BW version of function ReduceGray5x5.
  • Tests for verifying functionality of AVX-512BW version of function Reorder16bit.
  • Tests for verifying functionality of AVX-512BW version of function Reorder32bit.
  • Tests for verifying functionality of AVX-512BW version of function Reorder64bit.
  • Tests for verifying functionality of AVX-512BW version of function SegmentationChangeIndex.
  • Tests for verifying functionality of AVX-512BW version of function SegmentationFillSingleHoles.
  • Tests for verifying functionality of AVX-512BW version of function SegmentationPropagate2x2.
  • Tests for verifying functionality of AVX-512BW version of function SegmentationShrinkRegion.
  • Tests for verifying functionality of AVX-512BW version of function SobelDx.
  • Tests for verifying functionality of AVX-512BW version of function SobelDxAbs.
  • Tests for verifying functionality of AVX-512BW version of function SobelDxAbsSum.
  • Tests for verifying functionality of AVX-512BW version of function SobelDy.
  • Tests for verifying functionality of AVX-512BW version of function SobelDyAbs.
  • Tests for verifying functionality of AVX-512BW version of function SobelDyAbsSum.
  • Tests for verifying functionality of AVX-512BW version of function ContourMetrics.
  • Tests for verifying functionality of AVX-512BW version of function ContourMetricsMasked.
  • Tests for verifying functionality of AVX-512BW version of function ContourAnchors.
  • Tests for verifying functionality of AVX-512BW version of function SquaredDifferenceSum.
  • Tests for verifying functionality of AVX-512BW version of function SquaredDifferenceSumMasked.
  • Tests for verifying functionality of AVX-512BW version of function GetStatistic.
  • Tests for verifying functionality of AVX-512BW version of function GetMoments.
  • Tests for verifying functionality of AVX-512BW version of function GetRowSums.
  • Tests for verifying functionality of AVX-512BW version of function GetColSums.
  • Tests for verifying functionality of AVX-512BW version of function GetAbsDyRowSums.
  • Tests for verifying functionality of AVX-512BW version of function GetAbsDxColSums.
  • Tests for verifying functionality of AVX-512BW version of function ValueSum.
  • Tests for verifying functionality of AVX-512BW version of function SquareSum.
  • Tests for verifying functionality of AVX-512BW version of function CorrelationSum.
  • Tests for verifying functionality of AVX-512BW version of function StretchGray2x2.
  • Tests for verifying functionality of AVX-512BW version of function TextureBoostedSaturatedGradient.
  • Tests for verifying functionality of AVX-512BW version of function TextureBoostedUv.
  • Tests for verifying functionality of AVX-512BW version of function TextureGetDifferenceSum.
  • Tests for verifying functionality of AVX-512BW version of function TexturePerformCompensation.
  • Tests for verifying functionality of AVX-512BW version of function Yuv420pToBgr.
  • Tests for verifying functionality of AVX-512BW version of function Yuv422pToBgr.
  • Tests for verifying functionality of AVX-512BW version of function Yuv444pToBgr.
  • Tests for verifying functionality of AVX-512BW version of function Yuv420pToBgra.
  • Tests for verifying functionality of AVX-512BW version of function Yuv422pToBgra.
  • Tests for verifying functionality of AVX-512BW version of function Yuv444pToBgra.
  • Tests for verifying functionality of AVX-512BW version of function Yuv420pToHue.
  • Tests for verifying functionality of AVX-512BW version of function Yuv444pToHue.
  • Tests for verifying functionality of AVX-512BW version of function ShiftBilinear.
  • Tests for verifying functionality of AVX-512BW version of function ResizeBilinear.
  • Tests for verifying functionality of AVX-512F version of function SvmSumLinear.
  • Tests for verifying functionality of AVX2 and AVX-512BW versions of function Integral.
  • Tests for verifying functionality of AVX-512F version of function SquaredDifferenceSum32f.
  • Tests for verifying functionality of AVX-512F version of function SquaredDifferenceKahanSum32f.
  • Tests for verifying functionality of AVX-512BW version of function HogDeinterleave.
  • Tests for verifying functionality of AVX-512BW version of function HogDirectionHistograms.
  • Tests for verifying functionality of AVX-512BW version of function HogExtractFeatures.
  • Tests for verifying functionality of AVX-512BW version of function HogFilterSeparable.
  • Tests for verifying functionality of base implementation of function PseudoHogExtractHistogram8x8x8.
Removed features
  • Tests for verifying functionality of SSE2, AVX2, NEON and VMX versions of function EdgeBackgroundShiftRange.
Home

September 1, 2017 (version 4.0.57.1091)

Algorithms

New features
  • Base implementation, SSE3, AVX and AVX2 optimizations of function NeuralConvolutionForward.
  • AVX-512F optimization of function NeuralDerivativeSigmoid.
  • AVX-512F optimization of function NeuralRoughTanh.
  • AVX-512F optimization of function NeuralDerivativeTanh.
  • AVX-512F optimization of function NeuralRelu.
  • AVX-512F optimization of function NeuralDerivativeRelu.
  • AVX-512BW optimization of function NeuralConvert.
  • AVX-512F optimization of function NeuralUpdateWeights.
  • AVX-512F optimization of function NeuralAdaptiveGradientUpdate.
  • AVX-512F optimization of function NeuralPooling2x2Max2x2.
  • AVX-512F optimization of function NeuralPooling1x1Max3x3.
  • AVX-512F optimization of function NeuralPooling2x2Max3x3.
  • AVX-512F optimization of function NeuralAddConvolution2x2Forward.
  • AVX-512F optimization of function NeuralAddConvolution2x2Backward.
  • AVX-512F optimization of function NeuralAddConvolution2x2Sum.
  • AVX-512F optimization of function NeuralAddConvolution3x3Forward.
  • AVX-512F optimization of function NeuralAddConvolution3x3Backward.
  • AVX-512F optimization of function NeuralAddConvolution4x4Forward.
  • AVX-512F optimization of function NeuralAddConvolution4x4Backward.
  • AVX-512F optimization of function NeuralAddConvolution5x5Forward.
  • AVX-512F optimization of function NeuralAddConvolution5x5Backward.
  • AVX-512F optimization of function NeuralAddConvolution3x3Sum.
  • AVX-512F optimization of function NeuralAddConvolution4x4Sum.
  • AVX-512F optimization of function NeuralAddConvolution5x5Sum.
  • AVX-512BW optimization of function OperationBinary8u.
  • AVX-512BW optimization of function OperationBinary16i.
  • AVX-512BW optimization of function VectorProduct.
  • AVX-512BW optimization of function AbsDifferenceSum.
  • AVX-512BW optimization of function AbsDifferenceSumMasked.
  • AVX-512BW optimization of function AbsDifferenceSum3x3.
  • AVX-512BW optimization of function AbsDifferenceSum3x3Masked.
  • AVX-512BW optimization of function AbsGradientSaturatedSum.
  • AVX-512BW optimization of function AddFeatureDifference.
  • AVX-512BW optimization of function AlphaBlending.
  • AVX-512BW optimization of function BackgroundGrowRangeSlow.
  • AVX-512BW optimization of function BackgroundGrowRangeFast.
  • AVX-512BW optimization of function BackgroundIncrementCount.
  • AVX-512BW optimization of function BackgroundAdjustRange.
  • AVX-512BW optimization of function BackgroundAdjustRangeMasked.
  • AVX-512BW optimization of function BackgroundShiftRange.
  • AVX-512BW optimization of function BackgroundShiftRangeMasked.
  • AVX-512BW optimization of function BackgroundInitMask.
  • AVX-512BW optimization of function BgraToGray.
  • AVX-512BW optimization of function BgraToBgr.
  • AVX-512BW optimization of function BgraToBayer.
  • AVX-512BW optimization of function BgraToYuv420p.
  • AVX-512BW optimization of function BgraToYuv422p.
  • AVX-512BW optimization of function BgraToYuv444p.
  • AVX-512BW optimization of function BgrToBayer.
  • AVX-512BW optimization of function BgrToBgra.
  • AVX-512BW optimization of function Bgr48pToBgra32.
  • AVX-512BW optimization of function BgrToGray.
  • AVX-512BW optimization of function BgrToYuv420p.
Improving
  • Tail processing in AVX-512F version of function NeuralProductSum.
  • Tail processing in AVX-512F version of function NeuralAddVectorMultipliedByValue.
  • Tail processing in AVX-512F version of function NeuralAddVector.
  • Tail processing in AVX-512F version of function NeuralAddValue.
  • Tail processing in AVX-512F version of function NeuralRoughSigmoid.
  • Tail processing in AVX-512F version of function NeuralRoughSigmoid2.
  • Forward propagation of Neural::ConvolutionLayer.
Bug fixing
  • GCC compiler bug in function Allocator::Alignment.
  • Program crashes in Simd::Detection when small value of parameter scaleFactor is used.
  • ARM FP16 GCC compiler error in file SimdNeonFloat16.cpp.
  • Error in function Neural::MaxPoolingLayer::Forward.

Test framework

New features
  • Tests for verifying functionality of function NeuralConvolutionForward.
  • AVX-512 performance statistic.
  • Tests for verifying functionality of AVX-512F version of function NeuralDerivativeSigmoid.
  • Tests for verifying functionality of AVX-512F version of function NeuralRoughTanh.
  • Tests for verifying functionality of AVX-512F version of function NeuralDerivativeTanh.
  • Tests for verifying functionality of AVX-512F version of function NeuralRelu.
  • Tests for verifying functionality of AVX-512F version of function NeuralDerivativeRelu.
  • Tests for verifying functionality of AVX-512BW version of function NeuralConvert.
  • Tests for verifying functionality of AVX-512F version of function NeuralUpdateWeights.
  • Tests for verifying functionality of AVX-512F version of function NeuralAdaptiveGradientUpdate.
  • Tests for verifying functionality of AVX-512F version of function NeuralPooling2x2Max2x2.
  • Tests for verifying functionality of AVX-512F version of function NeuralPooling1x1Max3x3.
  • Tests for verifying functionality of AVX-512F version of function NeuralPooling2x2Max3x3.
  • Tests for verifying functionality of AVX-512F version of function NeuralAddConvolution2x2Forward.
  • Tests for verifying functionality of AVX-512F version of function NeuralAddConvolution2x2Backward.
  • Tests for verifying functionality of AVX-512F version of function NeuralAddConvolution2x2Sum.
  • Tests for verifying functionality of AVX-512F version of function NeuralAddConvolution3x3Forward.
  • Tests for verifying functionality of AVX-512F version of function NeuralAddConvolution3x3Backward.
  • Tests for verifying functionality of AVX-512F version of function NeuralAddConvolution4x4Forward.
  • Tests for verifying functionality of AVX-512F version of function NeuralAddConvolution4x4Backward.
  • Tests for verifying functionality of AVX-512F version of function NeuralAddConvolution5x5Forward.
  • Tests for verifying functionality of AVX-512F version of function NeuralAddConvolution5x5Backward.
  • Tests for verifying functionality of AVX-512F version of function NeuralAddConvolution3x3Sum.
  • Tests for verifying functionality of AVX-512F version of function NeuralAddConvolution4x4Sum.
  • Command line parameters -w and -h to set width and height of test image.
  • Tests for verifying functionality of AVX-512F version of function NeuralAddConvolution5x5Sum.
  • Tests for verifying functionality of AVX-512BW version of function OperationBinary8u.
  • Tests for verifying functionality of AVX-512BW version of function OperationBinary16i.
  • Tests for verifying functionality of AVX-512BW version of function VectorProduct.
  • Tests for verifying functionality of AVX-512BW version of function AbsDifferenceSum.
  • Tests for verifying functionality of AVX-512BW version of function AbsDifferenceSumMasked.
  • Tests for verifying functionality of AVX-512BW version of function AbsDifferenceSum3x3.
  • Tests for verifying functionality of AVX-512BW version of function AbsDifferenceSum3x3Masked.
  • Tests for verifying functionality of AVX-512BW version of function AbsGradientSaturatedSum.
  • Tests for verifying functionality of AVX-512BW version of function AddFeatureDifference.
  • Tests for verifying functionality of AVX-512BW version of function AlphaBlending.
  • Tests for verifying functionality of AVX-512BW version of function BackgroundGrowRangeSlow.
  • Tests for verifying functionality of AVX-512BW version of function BackgroundGrowRangeFast.
  • Tests for verifying functionality of AVX-512BW version of function BackgroundIncrementCount.
  • Tests for verifying functionality of AVX-512BW version of function BackgroundAdjustRange.
  • Tests for verifying functionality of AVX-512BW version of function BackgroundAdjustRangeMasked.
  • Tests for verifying functionality of AVX-512BW version of function BackgroundShiftRange.
  • Tests for verifying functionality of AVX-512BW version of function BackgroundShiftRangeMasked.
  • Tests for verifying functionality of AVX-512BW version of function BackgroundInitMask.
  • Tests for verifying functionality of AVX-512BW version of function BgraToGray.
  • Tests for verifying functionality of AVX-512BW version of function BgraToBgr.
  • Tests for verifying functionality of AVX-512BW version of function BgraToBayer.
  • Tests for verifying functionality of AVX-512BW version of function BgraToYuv420p.
  • Tests for verifying functionality of AVX-512BW version of function BgraToYuv422p.
  • Tests for verifying functionality of AVX-512BW version of function BgraToYuv444p.
  • Tests for verifying functionality of AVX-512BW version of function BgrToBayer.
  • Tests for verifying functionality of AVX-512BW version of function BgrToBgra.
  • Tests for verifying functionality of AVX-512BW version of function Bgr48pToBgra32.
  • Tests for verifying functionality of AVX-512BW version of function BgrToGray.
  • Tests for verifying functionality of AVX-512BW version of function BgrToYuv420p.
Bug fixing
  • An error in function NeuralAddConvolutionAutoTest.
Home

August 1, 2017 (version 3.6.56.1005)

Algorithms

New features
  • Base implementation, SSE, AVX, AVX2 and NEON optimizations of function NeuralAddConvolution4x4Forward.
  • Base implementation, SSE, AVX, AVX2 and NEON optimizations of function NeuralAddConvolution2x2Backward.
  • Base implementation, SSE, AVX, AVX2 and NEON optimizations of function NeuralAddConvolution4x4Backward.
  • Base implementation, SSE, SSE3, AVX, AVX2 and NEON optimizations of function NeuralAddConvolution2x2Sum.
  • Base implementation, SSE, SSE3, AVX, AVX2 and NEON optimizations of function NeuralAddConvolution4x4Sum.
  • AVX2 optimization of function NeuralAddConvolution3x3Backward.
  • AVX2 optimization of function NeuralAddConvolution5x5Backward.
  • DrawPolygon function.
  • DrawFilledRectangle function.
  • DrawEllipse function.
  • DrawCircle function.
  • AVX-512F optimization of function NeuralAddVectorMultipliedByValue.
  • AVX-512F optimization of function NeuralAddVector.
  • AVX-512F optimization of function NeuralAddValue.
  • AVX-512F optimization of function NeuralProductSum.
  • AVX-512F optimization of function NeuralRoughSigmoid.
  • AVX-512F optimization of function NeuralRoughSigmoid2.
  • SimdCpuInfo function.
  • Parameters poolingStride and poolingPad in constructor of Neural::MaxPoolingLayer.
  • Parameters poolingStride and poolingPad in constructor of Neural::AveragePoolingLayer.
  • Base implementation, SSE, AVX2 and NEON optimizations of function NeuralPooling2x2Max3x3.
  • Abstract class Neural::PoolingLayer.
  • Base implementation, SSE, AVX2 and NEON optimizations of function NeuralPooling1x1Max3x3.
Improving
  • Removed restriction of input image size in function NeuralPooling2x2Max2x2.
Renaming
  • Function NeuralMax2x2 to NeuralPooling2x2Max2x2.

Test framework

New features
  • Tests for verifying functionality of function NeuralAddConvolution4x4Forward.
  • Tests for verifying functionality of function NeuralAddConvolution2x2Backward.
  • Tests for verifying functionality of function NeuralAddConvolution4x4Backward.
  • Tests for verifying functionality of function NeuralAddConvolution2x2Sum.
  • Tests for verifying functionality of function NeuralAddConvolution4x4Sum.
  • Tests for verifying functionality of AVX2 version of function NeuralAddConvolution3x3Backward.
  • Tests for verifying functionality of AVX2 version of function NeuralAddConvolution5x5Backward.
  • Special tests for verifying functionality of function DrawPolygon.
  • Special tests for verifying functionality of function DrawFilledRectangle.
  • Special tests for verifying functionality of function DrawFilledPolygon.
  • Special tests for verifying functionality of function DrawEllipse.
  • Special tests for verifying functionality of function DrawCircle.
  • Tests for verifying functionality of AVX-512F version of function NeuralAddVectorMultipliedByValue.
  • Tests for verifying functionality of AVX-512F version of function NeuralAddVector.
  • Tests for verifying functionality of AVX-512F version of function NeuralAddValue.
  • Tests for verifying functionality of AVX-512F version of function NeuralProductSum.
  • Tests for verifying functionality of AVX-512F version of function NeuralRoughSigmoid.
  • Tests for verifying functionality of AVX-512F version of function NeuralRoughSigmoid2.
  • Tests for verifying functionality of function NeuralPooling2x2Max3x3.
  • Tests for verifying functionality of function NeuralPooling1x1Max3x3.

Infrastructure

New features
  • Avx512f section for AVX-512F extension (CMake and Visual Studio).
  • Avx512bw section for AVX-512BW extension (CMake and Visual Studio).

Documentation

Bug fixing
  • Error in the library description.
Home

July 4, 2017 (version 3.6.55.971)

Algorithms

New features
  • NEON optimization of function Float32ToFloat16.
  • NEON optimization of function Float16ToFloat32.
  • NEON optimization of function SquaredDifferenceSum16f.
  • NEON optimization of function Float32ToUint8.
  • NEON optimization of function Uint8ToFloat32.
  • NEON optimization of function NeuralAddVector.
  • NEON optimization of function NeuralAddValue.
  • NEON optimization of function HogDeinterleave.
  • NEON optimization of function HogFilterSeparable.
  • NEON optimization of function HogExtractFeatures.
  • Base implementation, SSE, AVX, AVX2 and NEON optimizations of function NeuralAddConvolution2x2Forward.
Bug fixing
  • Clang specific: using of unknown compiler options.
  • Error in AVX2 optimization of function HogFilterSeparable.

Test framework

New features
  • Tests for verifying functionality of NEON version of function Float32ToFloat16.
  • Tests for verifying functionality of NEON version of function Float16ToFloat32.
  • Tests for verifying functionality of NEON version of function SquaredDifferenceSum16f.
  • Tests for verifying functionality of NEON version of function Float32ToUint8.
  • Tests for verifying functionality of NEON version of function Uint8ToFloat32.
  • Tests for verifying functionality of NEON version of function NeuralAddVector.
  • Tests for verifying functionality of NEON version of function NeuralAddValue.
  • Tests for verifying functionality of NEON version of function HogDeinterleave.
  • Tests for verifying functionality of NEON version of function HogFilterSeparable.
  • Tests for verifying functionality of NEON version of function HogExtractFeatures.
  • Tests for verifying functionality of function NeuralAddConvolution2x2Forward.
Bug fixing
  • Clang compiler error in file TestImageMatcher.
  • Compiler warning in file TestHog.
Home

June 1, 2017 (version 3.6.54.954)

Algorithms

New features
  • Base implementation, SSE and AVX optimizations of function NeuralAddValue.
  • Optional random shuffle of training set in Neural::Train.
  • Function DrawFilledPolygon.
  • AVX2 optimization of function NeuralAddConvolution3x3Forward.
  • Base implementation and AVX2 optimizations of function Float32ToFloat16.
  • Base implementation and AVX2 optimizations of function Float16ToFloat32.
  • Base implementation and AVX2 optimizations of function SquaredDifferenceSum16f.
  • New constructor in structure Frame.
  • MSA optimization of function OperationBinary8u.
  • MSA optimization of function OperationBinary16i.
  • Base implementation, SSE2 and AVX2 optimizations of function Float32ToUint8.
  • Base implementation, SSE2 and AVX2 optimizations of function Uint8ToFloat32.
  • Base implementation, SSE and AVX2 optimizations of function HogFilterSeparable.
  • Base implementation, SSE and AVX2 optimizations of function HogDeinterleave.
Improving
  • Forward and backward propagation in Neural::ConvolutionalLayer for core size 1x1.
Bug fixing
  • Error in method Neural::FullyConnectedLayer::Forward.
  • Compiler error in file SimdDetection.hpp.
  • Clang compiler warning in file SimdDrawing.hpp.

Test framework

New features
  • Tests for verifying functionality of function NeuralAddValue.
  • Tests for verifying functionality of AVX2 version of function NeuralAddConvolution3x3Forward.
  • Tests for verifying functionality of function Float32ToFloat16.
  • Tests for verifying functionality of function Float16ToFloat32.
  • Tests for verifying functionality of function SquaredDifferenceSum16f.
  • Tests for verifying functionality of MSA version of function OperationBinary8u.
  • Tests for verifying functionality of MSA version of function OperationBinary16i.
  • Tests for verifying functionality of function Float32ToUint8.
  • Tests for verifying functionality of function Uint8ToFloat32.
  • Tests for verifying functionality of function HogFilterSeparable.
  • Tests for verifying functionality of function HogDeinterleave.

The use examples

New features
  • An example how to detect faces with using of Simd::Detection in the video captured by OpenCV.

Documentation

New features
  • An example how to detect faces with using of Simd::Detection in the video captured by OpenCV.
Bug fixing
  • Doxygen warning in file SimdRectangle.hpp.

Infrastructure

New features
  • Use.vcxprj (Visual Studio 2015 project) for the use examples.
  • Added to CMakeLists.txt a section for building of the library for MIPS CPU architecture.
  • Msa project for MIPS MSA extension (CMake and Visual Studio).
  • Refactoring of CMakeLists.txt.
Home

May 2, 2017 (version 3.6.53.927)

Algorithms

New features
  • CrossEntropy loss function type in Neural framework.
  • Improving of SSE4.1 optimization of function HogDirectionHistograms.
  • Improving of AVX2 optimization of function HogDirectionHistograms.
  • Base implementation, SSE4.1 and AVX2 optimizations of function HogExtractFeatures.
  • Improving performance of method Neural::Network::Load.
  • Not square shape of convolution core in Neural::ConvolutionalLayer.
  • Class Neural::AveragePoolingLayer.
  • Parameter regionAreaMin in method ShiftDetector::Estimate.
  • Base implementation, SSE and AVX optimizations of function NeuralAddVector.
Renaming
  • Function NeuralAddConvolution3x3 to NeuralAddConvolution3x3Forward.
  • Function NeuralAddConvolution5x5 to NeuralAddConvolution5x5Forward.
  • Function NeuralAddConvolution3x3Back to NeuralAddConvolution3x3Backward.
  • Function NeuralAddConvolution5x5Back to NeuralAddConvolution5x5Backward.
Bug fixing
  • Compiler warning in ImageMatcher structure.
  • GCC compiler error in Neural::Function structure.
  • Visual Studio 2017 compiler warning in function Shift::InitLevels.
  • Visual Studio 2017 compiler warning in function Avx2::TexturePerformCompensation.
  • Float point number overflow in function Neural::Function::SoftmaxFunction.
  • Float point number overflow in function Avx2::HogDirectionHistograms.
  • Compiler error in SimdEnable.h on PowerPC platform.
  • Program crash in function Int16ToGray.

Test framework

New features
  • Tests for verifying functionality of function HogExtractFeatures.
  • Additional special tests for verifying functionality of Neural framework.
  • Tests for verifying functionality of function NeuralAddVector.

Documentation

Improving
  • Description of interaction Simd Library and OpenCV.
  • Download link to current master on GitHub.
Changes
  • Changed location of help documentation (./docs/ instead of ./doc/).
Bug fixing
  • An error in Doxygen's description of ImageMatcher structure.
  • An error in Doxygen's header and footer HTML template files.

Infrastructure

New features
  • Visual Studio 2017 solution for Windows.
  • Visual Studio 2017 solution for Android.
Changes
  • Changed location of scripts for help generation and release building.
  • Changed project site location (from http://simd.sourceforge.net to http://ermig1979.github.io/Simd).
Bug fixing
  • Removing of unwanted files in release build script.
  • Incorrect path to save build log in Visual Studio 2017.
  • Error in UpdateCopyrights.cmd script.
Home

April 3, 2017 (version 3.5.52.900)

Algorithms

New features
  • ImageMatcher structure.
  • Improving of AVX2 optimization of function HogDirectionHistograms.
  • dstStride parameter in function NeuralConvert.
  • Softmax activation function type in Neural framework.
  • CrossEntropyMulticlass loss function type in Neural framework.
Bug fixing
  • Link error in function Simd::Neural::Detail::InitWeight.

Test framework

New features
  • Special tests for verifying functionality of structure ImageMatcher.

Infrastructure

New features
  • UpdateCopyrights.cmd script.
Home

March 2, 2017 (version 3.4.51.886)

Algorithms

New features
  • Function Simd::ReduceGray.
Improving
  • Using of Simd::Parallel in Simd::Detection instead of its own implementation of multithreading.
  • Improving of AVX2 optimization of function Binarization.
  • Improving of AVX2 optimization of function AveragingBinarization.
  • Improving of AVX2 optimization of function ConditionalFill.
  • Improving of AVX2 optimization of function HogDirectionHistograms.
  • Improving of AVX2 optimization of function SegmentationChangeIndex.
  • Improving of AVX2 optimization of function SegmentationPropagate2x2.
  • Improving of AVX2 optimization of function SegmentationFillSingleHoles.
  • Improving of SSE4.1 optimization of function DetectionLbpDetect32fp.
  • Improving of SSE4.1 optimization of function DetectionLbpDetect32fi.
  • Improving of SSE4.1 optimization of function DetectionLbpDetect16ip.
  • Improving of SSE4.1 optimization of function DetectionLbpDetect16ii.
Changes
  • Enumeration SimdReduceType instead of enumeration Simd::Pyramid::BuildType.
  • Function Simd::Fill instead of method Simd::Pyramid::Fill.
  • Function Simd::Build instead of method Simd::Pyramid::Build.
  • Refactoring (template parameter Allocator) in structure View and connected with it functions and structures.
Bug fixing
  • Clang compiler error in View struct.
  • Clang compiler error in Frame struct.
  • Clang compiler error in Pixel file.
  • Clang compiler error in ContourDetector struct.
  • Clang specific bug in AVX2 optimization of functions BgrToGray and BgrToBgra.
  • Clang compiler error in function Sse2::ExtractInt32Sum on OSX.
  • GCC build error on Aarch64.
  • Error in base implementation of function FillBgr on Aarch64.
  • Error in base implementation of function FillBgra on Aarch64.

Infrastructure

New features
  • Compatibility with Clang C++ compiler.
  • Compatibility with Aarch64 platform.
Home

February 2, 2017 (version 3.4.50.872)

Algorithms

New features
  • ContourDetector structure.
  • DrawLine function.
  • DrawRectangle function.
  • ShiftDetector structure.

Test framework

New features
  • Special tests for verifying functionality of structure ContourDetector.
  • Special tests for verifying functionality of function DrawLine.
  • Special tests for verifying functionality of function DrawRectangle.
  • Special tests for verifying functionality of structure ShiftDetector.
Bug fixing
  • Incorrect common statistic of influence of memory alignment.
Home

January 3, 2017 (version 3.3.49.861)

Algorithms

New features
  • Base implementation, SSE2, AVX2 and NEON optimizations of function Int16ToGray.
  • SSE2, AVX2 and NEON optimizations of function HistogramConditional.
  • Neural::DropoutLayer.
  • AVX2 optimization of function NeuralProductSum.
  • Extended functionality of function OperationBinary8u (added bitwise OR operation).
  • AVX2 optimization of function NeuralAddVectorMultipliedByValue.
  • Added operator + (const Rectangle &, const Rectangle &).
Improving
  • Improving of AVX2 optimization of function NeuralAddConvolution5x5.
  • Improving of AVX2 optimization of function NeuralAddConvolution5x5Sum.
  • Improving of AVX2 optimization of function NeuralAddConvolution3x3Sum.
Bug fixing
  • GCC compiler error in file SimdAvx2Neural.
  • Crash during restoring of training process in function Neural::Train.
  • Visual Studio 2013 compiler bug in file SimdAvx2Neural.

Test framework

New features
  • Tests for verifying functionality of function Int16ToGray.
  • Tests for verifying functionality of AVX2 version of function NeuralProductSum.
  • Tests for verifying functionality of AVX2 version of function NeuralAddVectorMultipliedByValue.

Infrastructure

Bug fixing
  • SimdVersion.h generation error in CMakeLists.txt.
Home
2017 | 2016 | 2015 | 2014 | 2013