FT_DSP.gitlink.net/master/html/functionlib/dsplib/resizegrad.html

538 lines
64 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE html>
<html class="writer-html5" lang="zh-CN">
<head>
<meta charset="utf-8" /><meta name="viewport" content="width=device-width, initial-scale=1" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Resizegrad &mdash; MindSpore Signal+ 使用手册 alpha 文档</title>
<link rel="stylesheet" type="text/css" href="../../_static/pygments.css?v=03e43079" />
<link rel="stylesheet" type="text/css" href="../../_static/css/theme.css?v=e59714d7" />
<link rel="stylesheet" type="text/css" href="../../_static/table.css?v=72b86d3e" />
<link rel="stylesheet" type="text/css" href="../../_static/pageviews.css?v=ff0ce7dc" />
<script src="../../_static/jquery.js?v=5d32c60e"></script>
<script src="../../_static/_sphinx_javascript_frameworks_compat.js?v=2cd50e6c"></script>
<script data-url_root="../../" id="documentation_options" src="../../_static/documentation_options.js?v=595569a8"></script>
<script src="../../_static/doctools.js?v=888ff710"></script>
<script src="../../_static/sphinx_highlight.js?v=4825356b"></script>
<script src="../../_static/translations.js?v=beaddf03"></script>
<script async="async" src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js"></script>
<script src="../../_static/table.js?v=99ed15ba"></script>
<script src="../../_static/js/theme.js"></script>
<link rel="index" title="索引" href="../../genindex.html" />
<link rel="search" title="搜索" href="../../search.html" />
<link rel="next" title="ReverseSequence" href="reverse_sequence.html" />
<link rel="prev" title="Resize" href="resize.html" />
</head>
<body class="wy-body-for-nav">
<div class="wy-grid-for-nav">
<nav data-toggle="wy-nav-shift" class="wy-nav-side">
<div class="wy-side-scroll">
<div class="wy-side-nav-search" >
<a href="../../index.html" class="icon icon-home">
MindSpore Signal+ 使用手册
</a>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="../../search.html" method="get">
<input type="text" name="q" placeholder="搜索文档" aria-label="搜索文档" />
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
</form>
</div>
</div><div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="导航菜单">
<ul class="current">
<li class="toctree-l1"><a class="reference internal" href="../../quickstart/index.html">快速入门</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../appdevelop/index.html">应用开发示例</a></li>
<li class="toctree-l1 current"><a class="reference internal" href="../index.html">算子库支持</a><ul class="current">
<li class="toctree-l2"><a class="reference internal" href="../supported_op.html">算子库支持情况</a></li>
<li class="toctree-l2"><a class="reference internal" href="../custom_op/index.html">自定义算子列表</a></li>
<li class="toctree-l2 current"><a class="reference internal" href="dsplib_index.html">DSP Library C API Reference</a><ul class="current">
<li class="toctree-l3"><a class="reference internal" href="abs.html">Abs</a></li>
<li class="toctree-l3"><a class="reference internal" href="abs_grad.html">AbsGrad</a></li>
<li class="toctree-l3"><a class="reference internal" href="activation.html">Activation</a></li>
<li class="toctree-l3"><a class="reference internal" href="activation_grad.html">ActivationGrad</a></li>
<li class="toctree-l3"><a class="reference internal" href="adam.html">Adam</a></li>
<li class="toctree-l3"><a class="reference internal" href="adamweightdecay.html">AdamWeightDecay</a></li>
<li class="toctree-l3"><a class="reference internal" href="adder.html">Adder</a></li>
<li class="toctree-l3"><a class="reference internal" href="addfusion.html">Addfusion</a></li>
<li class="toctree-l3"><a class="reference internal" href="addgrad.html">Addgrad</a></li>
<li class="toctree-l3"><a class="reference internal" href="addn.html">AddN</a></li>
<li class="toctree-l3"><a class="reference internal" href="affine.html">Affine</a></li>
<li class="toctree-l3"><a class="reference internal" href="all.html">All</a></li>
<li class="toctree-l3"><a class="reference internal" href="allgather.html">AllGather</a></li>
<li class="toctree-l3"><a class="reference internal" href="apply_momentum.html">ApplyMomentum</a></li>
<li class="toctree-l3"><a class="reference internal" href="argmax.html">Argmax</a></li>
<li class="toctree-l3"><a class="reference internal" href="argmin.html">Argmin</a></li>
<li class="toctree-l3"><a class="reference internal" href="assert.html">Assert</a></li>
<li class="toctree-l3"><a class="reference internal" href="assign.html">Assign</a></li>
<li class="toctree-l3"><a class="reference internal" href="assignadd.html">AssignAdd</a></li>
<li class="toctree-l3"><a class="reference internal" href="attention.html">Attention</a></li>
<li class="toctree-l3"><a class="reference internal" href="audio_spectrogram.html">AudioSpectrogram</a></li>
<li class="toctree-l3"><a class="reference internal" href="avgpooling.html">Avgpooling</a></li>
<li class="toctree-l3"><a class="reference internal" href="avg_pool_grad.html">AvgPoolGrad</a></li>
<li class="toctree-l3"><a class="reference internal" href="batchnorm.html">BatchNorm</a></li>
<li class="toctree-l3"><a class="reference internal" href="batchnormgrad.html">Batchnormgrad</a></li>
<li class="toctree-l3"><a class="reference internal" href="batch_to_space.html">BatchToSpace</a></li>
<li class="toctree-l3"><a class="reference internal" href="batchtospacend.html">BatchToSpaceND</a></li>
<li class="toctree-l3"><a class="reference internal" href="biasadd.html">Biasadd</a></li>
<li class="toctree-l3"><a class="reference internal" href="biasaddgrad.html">Biasaddgrad</a></li>
<li class="toctree-l3"><a class="reference internal" href="binarycrossentropy.html">Binarycrossentropy</a></li>
<li class="toctree-l3"><a class="reference internal" href="binary_cross_entropy_grad.html">BinaryCrossEntropyGrad</a></li>
<li class="toctree-l3"><a class="reference internal" href="broadcastto.html">BroadcastTo</a></li>
<li class="toctree-l3"><a class="reference internal" href="cast.html">Cast</a></li>
<li class="toctree-l3"><a class="reference internal" href="ceil.html">Ceil</a></li>
<li class="toctree-l3"><a class="reference internal" href="clip.html">Clip</a></li>
<li class="toctree-l3"><a class="reference internal" href="concat.html">Concat</a></li>
<li class="toctree-l3"><a class="reference internal" href="constant_of_shape.html">ConstantOfShape</a></li>
<li class="toctree-l3"><a class="reference internal" href="conv2d.html">Conv2d</a></li>
<li class="toctree-l3"><a class="reference internal" href="conv2d_transpose.html">Conv2dTranspose</a></li>
<li class="toctree-l3"><a class="reference internal" href="conv2dbackpropfilterfusion.html">Conv2DBackpropFilterFusion</a></li>
<li class="toctree-l3"><a class="reference internal" href="conv2dbackpropinputfusion.html">Conv2DBackpropInputFusion</a></li>
<li class="toctree-l3"><a class="reference internal" href="cos.html">Cos</a></li>
<li class="toctree-l3"><a class="reference internal" href="crop.html">Crop</a></li>
<li class="toctree-l3"><a class="reference internal" href="crop_and_resize.html">CropAndResize</a></li>
<li class="toctree-l3"><a class="reference internal" href="cumsum.html">Cumsum</a></li>
<li class="toctree-l3"><a class="reference internal" href="customextractfeatures.html">CustomExtractFeatures</a></li>
<li class="toctree-l3"><a class="reference internal" href="customnormalize.html">Customnormalize</a></li>
<li class="toctree-l3"><a class="reference internal" href="custompredict.html">CustomPredict</a></li>
<li class="toctree-l3"><a class="reference internal" href="deconvgradfilter.html">DeconvGradFilter</a></li>
<li class="toctree-l3"><a class="reference internal" href="depthtospace.html">DepthToSpace</a></li>
<li class="toctree-l3"><a class="reference internal" href="detection_post_process.html">DetectionPostProcess</a></li>
<li class="toctree-l3"><a class="reference internal" href="div_fusion.html">DivFusion</a></li>
<li class="toctree-l3"><a class="reference internal" href="divgrad.html">Divgrad</a></li>
<li class="toctree-l3"><a class="reference internal" href="dropout.html">Dropout</a></li>
<li class="toctree-l3"><a class="reference internal" href="dropoutgrad.html">Dropoutgrad</a></li>
<li class="toctree-l3"><a class="reference internal" href="dynamicquant.html">DynamicQuant</a></li>
<li class="toctree-l3"><a class="reference internal" href="eltwise.html">Eltwise</a></li>
<li class="toctree-l3"><a class="reference internal" href="elu.html">Elu</a></li>
<li class="toctree-l3"><a class="reference internal" href="embeddinglookup.html">EmbeddingLookup</a></li>
<li class="toctree-l3"><a class="reference internal" href="equal.html">Equal</a></li>
<li class="toctree-l3"><a class="reference internal" href="erf.html">Erf</a></li>
<li class="toctree-l3"><a class="reference internal" href="expand_dims.html">ExpandDims</a></li>
<li class="toctree-l3"><a class="reference internal" href="expfusion.html">ExpFusion</a></li>
<li class="toctree-l3"><a class="reference internal" href="fake_quant_with_min_max_vars.html">FakeQuantWithMinMaxVars</a></li>
<li class="toctree-l3"><a class="reference internal" href="fake_quant_with_min_max_vars_per_channel.html">FakeQuantWithMinMaxVarsPerChannel</a></li>
<li class="toctree-l3"><a class="reference internal" href="fftimag.html">FFTImag</a></li>
<li class="toctree-l3"><a class="reference internal" href="fftreal.html">FFTReal</a></li>
<li class="toctree-l3"><a class="reference internal" href="fill.html">Fill</a></li>
<li class="toctree-l3"><a class="reference internal" href="fillv2.html">FillV2</a></li>
<li class="toctree-l3"><a class="reference internal" href="flatten.html">Flatten</a></li>
<li class="toctree-l3"><a class="reference internal" href="flattengrad.html">FlattenGrad</a></li>
<li class="toctree-l3"><a class="reference internal" href="floor.html">Floor</a></li>
<li class="toctree-l3"><a class="reference internal" href="floordiv.html">FloorDiv</a></li>
<li class="toctree-l3"><a class="reference internal" href="floormod.html">Floormod</a></li>
<li class="toctree-l3"><a class="reference internal" href="formattranspose.html">FormatTranspose</a></li>
<li class="toctree-l3"><a class="reference internal" href="fullconnection.html">FullConnection</a></li>
<li class="toctree-l3"><a class="reference internal" href="fusedbatchnorm.html">FusedBatchNorm</a></li>
<li class="toctree-l3"><a class="reference internal" href="gather.html">Gather</a></li>
<li class="toctree-l3"><a class="reference internal" href="gatherd.html">GatherD</a></li>
<li class="toctree-l3"><a class="reference internal" href="gather_nd.html">GatherNd</a></li>
<li class="toctree-l3"><a class="reference internal" href="glu.html">GLU</a></li>
<li class="toctree-l3"><a class="reference internal" href="greater.html">Greater</a></li>
<li class="toctree-l3"><a class="reference internal" href="greaterequal.html">GreaterEqual</a></li>
<li class="toctree-l3"><a class="reference internal" href="groupnormfusion.html">GroupNormFusion</a></li>
<li class="toctree-l3"><a class="reference internal" href="gru.html">GRU</a></li>
<li class="toctree-l3"><a class="reference internal" href="hashtablelookup.html">HashtableLookup</a></li>
<li class="toctree-l3"><a class="reference internal" href="instancenorm.html">InstanceNorm</a></li>
<li class="toctree-l3"><a class="reference internal" href="invertpermutation.html">InvertPermutation</a></li>
<li class="toctree-l3"><a class="reference internal" href="isfinite.html">Isfinite</a></li>
<li class="toctree-l3"><a class="reference internal" href="l2norm.html">L2norm</a></li>
<li class="toctree-l3"><a class="reference internal" href="layernormfusion.html">LayerNormFusion</a></li>
<li class="toctree-l3"><a class="reference internal" href="layernormgrad.html">Layernormgrad</a></li>
<li class="toctree-l3"><a class="reference internal" href="leaky_relu.html">LeakyReLu</a></li>
<li class="toctree-l3"><a class="reference internal" href="less.html">Less</a></li>
<li class="toctree-l3"><a class="reference internal" href="lessequal.html">LessEqual</a></li>
<li class="toctree-l3"><a class="reference internal" href="linspace.html">LinSpace</a></li>
<li class="toctree-l3"><a class="reference internal" href="log.html">Log</a></li>
<li class="toctree-l3"><a class="reference internal" href="log1p.html">Log1p</a></li>
<li class="toctree-l3"><a class="reference internal" href="loggrad.html">LogGrad</a></li>
<li class="toctree-l3"><a class="reference internal" href="logicaland.html">LogicalAnd</a></li>
<li class="toctree-l3"><a class="reference internal" href="logical_not.html">LogicalNot</a></li>
<li class="toctree-l3"><a class="reference internal" href="logical_or.html">LogicalOr</a></li>
<li class="toctree-l3"><a class="reference internal" href="logsoftmax.html">LogSoftmax</a></li>
<li class="toctree-l3"><a class="reference internal" href="lpnormalization.html">LpNormalization</a></li>
<li class="toctree-l3"><a class="reference internal" href="lrn.html">Lrn</a></li>
<li class="toctree-l3"><a class="reference internal" href="lsh_projection.html">LshProjection</a></li>
<li class="toctree-l3"><a class="reference internal" href="lstm.html">LSTM</a></li>
<li class="toctree-l3"><a class="reference internal" href="lstmgrad.html">LstmGrad</a></li>
<li class="toctree-l3"><a class="reference internal" href="lstmgraddata.html">LstmGradData</a></li>
<li class="toctree-l3"><a class="reference internal" href="lstmgradweight.html">LstmGradWeight</a></li>
<li class="toctree-l3"><a class="reference internal" href="matmulfusion.html">MatMulFusion</a></li>
<li class="toctree-l3"><a class="reference internal" href="maximum.html">Maximum</a></li>
<li class="toctree-l3"><a class="reference internal" href="maximumgrad.html">Maximumgrad</a></li>
<li class="toctree-l3"><a class="reference internal" href="maxpoolfusion.html">MaxPoolFusion</a></li>
<li class="toctree-l3"><a class="reference internal" href="maxpoolgrad.html">MaxPoolGrad</a></li>
<li class="toctree-l3"><a class="reference internal" href="mfcc.html">MFCC</a></li>
<li class="toctree-l3"><a class="reference internal" href="minimum.html">Minimum</a></li>
<li class="toctree-l3"><a class="reference internal" href="minimumgrad.html">Minimumgrad</a></li>
<li class="toctree-l3"><a class="reference internal" href="mod.html">Mod</a></li>
<li class="toctree-l3"><a class="reference internal" href="mul.html">Mul</a></li>
<li class="toctree-l3"><a class="reference internal" href="mulgrad.html">Mulgrad</a></li>
<li class="toctree-l3"><a class="reference internal" href="neg.html">Neg</a></li>
<li class="toctree-l3"><a class="reference internal" href="neg_grad.html">NegGrad</a></li>
<li class="toctree-l3"><a class="reference internal" href="nllloss.html">NLLLoss</a></li>
<li class="toctree-l3"><a class="reference internal" href="nlllossgrad.html">NLLLossGrad</a></li>
<li class="toctree-l3"><a class="reference internal" href="non_max_suppression.html">NonMaxSuppression</a></li>
<li class="toctree-l3"><a class="reference internal" href="nonzero.html">NonZero</a></li>
<li class="toctree-l3"><a class="reference internal" href="not_equal.html">NotEqual</a></li>
<li class="toctree-l3"><a class="reference internal" href="onehot.html">OneHot</a></li>
<li class="toctree-l3"><a class="reference internal" href="ones_like.html">OnesLike</a></li>
<li class="toctree-l3"><a class="reference internal" href="padfusion.html">PadFusion</a></li>
<li class="toctree-l3"><a class="reference internal" href="power_grad.html">PowerGrad</a></li>
<li class="toctree-l3"><a class="reference internal" href="pow_fusion.html">PowFusion</a></li>
<li class="toctree-l3"><a class="reference internal" href="prelufusion.html">PReLUFusion</a></li>
<li class="toctree-l3"><a class="reference internal" href="priorbox.html">Priorbox</a></li>
<li class="toctree-l3"><a class="reference internal" href="quantdtypecast.html">QuantDTypeCast</a></li>
<li class="toctree-l3"><a class="reference internal" href="raggedrange.html">RaggedRange</a></li>
<li class="toctree-l3"><a class="reference internal" href="random_normal.html">RandomNormal</a></li>
<li class="toctree-l3"><a class="reference internal" href="random_standard_normal.html">RandomStandardNormal</a></li>
<li class="toctree-l3"><a class="reference internal" href="range.html">Range</a></li>
<li class="toctree-l3"><a class="reference internal" href="rank.html">Rank</a></li>
<li class="toctree-l3"><a class="reference internal" href="real_div.html">RealDiv</a></li>
<li class="toctree-l3"><a class="reference internal" href="reciprocal.html">Reciprocal</a></li>
<li class="toctree-l3"><a class="reference internal" href="reduce.html">Reduce</a></li>
<li class="toctree-l3"><a class="reference internal" href="reducescatter.html">ReduceScatter</a></li>
<li class="toctree-l3"><a class="reference internal" href="reshape.html">Reshape</a></li>
<li class="toctree-l3"><a class="reference internal" href="resize.html">Resize</a></li>
<li class="toctree-l3 current"><a class="current reference internal" href="#">Resizegrad</a></li>
<li class="toctree-l3"><a class="reference internal" href="reverse_sequence.html">ReverseSequence</a></li>
<li class="toctree-l3"><a class="reference internal" href="reversev2.html">ReverseV2</a></li>
<li class="toctree-l3"><a class="reference internal" href="rfft.html">RFFT</a></li>
<li class="toctree-l3"><a class="reference internal" href="roipooling.html">ROIPooling</a></li>
<li class="toctree-l3"><a class="reference internal" href="round.html">Round</a></li>
<li class="toctree-l3"><a class="reference internal" href="rsqrt.html">Rsqrt</a></li>
<li class="toctree-l3"><a class="reference internal" href="rsqrtgrad.html">Rsqrtgrad</a></li>
<li class="toctree-l3"><a class="reference internal" href="scale_fusion.html">ScaleFusion</a></li>
<li class="toctree-l3"><a class="reference internal" href="scatter_elements.html">ScatterElements</a></li>
<li class="toctree-l3"><a class="reference internal" href="scatter_nd.html">ScatterNd</a></li>
<li class="toctree-l3"><a class="reference internal" href="scatter_nd_update.html">ScatterNdUpdate</a></li>
<li class="toctree-l3"><a class="reference internal" href="select.html">Select</a></li>
<li class="toctree-l3"><a class="reference internal" href="sgd.html">SGD</a></li>
<li class="toctree-l3"><a class="reference internal" href="shape.html">Shape</a></li>
<li class="toctree-l3"><a class="reference internal" href="sigmoidcrossentropywithlogits.html">SigmoidCrossEntropyWithLogits</a></li>
<li class="toctree-l3"><a class="reference internal" href="sigmoidcrossentropywithlogitsgrad.html">SigmoidCrossEntropyWithLogitsGrad</a></li>
<li class="toctree-l3"><a class="reference internal" href="sin.html">Sin</a></li>
<li class="toctree-l3"><a class="reference internal" href="size.html">Size</a></li>
<li class="toctree-l3"><a class="reference internal" href="skipgram.html">Skipgram</a></li>
<li class="toctree-l3"><a class="reference internal" href="slice.html">Slice</a></li>
<li class="toctree-l3"><a class="reference internal" href="smooth1loss.html">SmoothL1Loss</a></li>
<li class="toctree-l3"><a class="reference internal" href="smoothl1lossgrad.html">Smoothl1lossgrad</a></li>
<li class="toctree-l3"><a class="reference internal" href="softmax.html">Softmax</a></li>
<li class="toctree-l3"><a class="reference internal" href="softmax_cross_entropy_with_logits.html">SoftmaxCrossEntropyWithLogits</a></li>
<li class="toctree-l3"><a class="reference internal" href="spacetobatch.html">SpaceToBatch</a></li>
<li class="toctree-l3"><a class="reference internal" href="spacetobatchnd.html">SpaceToBatchND</a></li>
<li class="toctree-l3"><a class="reference internal" href="spacetodepth.html">SpaceToDepth</a></li>
<li class="toctree-l3"><a class="reference internal" href="sparsefillemptyrows.html">SparseFillEmptyRows</a></li>
<li class="toctree-l3"><a class="reference internal" href="sparsereshape.html">Sparsereshape</a></li>
<li class="toctree-l3"><a class="reference internal" href="sparsesegmentsum.html">Sparsesegmentsum</a></li>
<li class="toctree-l3"><a class="reference internal" href="sparse_softmax_cross_entropy_with_logits.html">SparseSoftmaxCrossEntropyWithLogits</a></li>
<li class="toctree-l3"><a class="reference internal" href="sparsetodense.html">Sparsetodense</a></li>
<li class="toctree-l3"><a class="reference internal" href="splice.html">Splice</a></li>
<li class="toctree-l3"><a class="reference internal" href="split.html">Split</a></li>
<li class="toctree-l3"><a class="reference internal" href="split_with_overlap.html">SplitWithOverlap</a></li>
<li class="toctree-l3"><a class="reference internal" href="sqrt.html">Sqrt</a></li>
<li class="toctree-l3"><a class="reference internal" href="sqrt_grad.html">SqrtGrad</a></li>
<li class="toctree-l3"><a class="reference internal" href="square.html">Square</a></li>
<li class="toctree-l3"><a class="reference internal" href="squaredifference.html">Squaredifference</a></li>
<li class="toctree-l3"><a class="reference internal" href="squeeze.html">Squeeze</a></li>
<li class="toctree-l3"><a class="reference internal" href="stack.html">Stack</a></li>
<li class="toctree-l3"><a class="reference internal" href="stridedslice.html">Stridedslice</a></li>
<li class="toctree-l3"><a class="reference internal" href="stridedslicegrad.html">Stridedslicegrad</a></li>
<li class="toctree-l3"><a class="reference internal" href="subfusion.html">Subfusion</a></li>
<li class="toctree-l3"><a class="reference internal" href="subgrad.html">Subgrad</a></li>
<li class="toctree-l3"><a class="reference internal" href="switch.html">Switch</a></li>
<li class="toctree-l3"><a class="reference internal" href="switchlayer.html">Switchlayer</a></li>
<li class="toctree-l3"><a class="reference internal" href="tensorarray.html">Tensorarray</a></li>
<li class="toctree-l3"><a class="reference internal" href="tensorarrayread.html">Tensorarrayread</a></li>
<li class="toctree-l3"><a class="reference internal" href="tensorarraywrite.html">TensorarrayWrite</a></li>
<li class="toctree-l3"><a class="reference internal" href="tensorlistfromtensor.html">Tensorlistfromtensor</a></li>
<li class="toctree-l3"><a class="reference internal" href="tensorlistgetitem.html">Tensorlistgetitem</a></li>
<li class="toctree-l3"><a class="reference internal" href="tensorlistreserve.html">Tensorlistreserve</a></li>
<li class="toctree-l3"><a class="reference internal" href="tensorlistsetitem.html">Tensorlistsetitem</a></li>
<li class="toctree-l3"><a class="reference internal" href="tensorliststack.html">Tensorliststack</a></li>
<li class="toctree-l3"><a class="reference internal" href="tensor_scatter_add.html">TensorScatterAdd</a></li>
<li class="toctree-l3"><a class="reference internal" href="tile.html">Tile</a></li>
<li class="toctree-l3"><a class="reference internal" href="topkfusion.html">TopkFusion</a></li>
<li class="toctree-l3"><a class="reference internal" href="transpose.html">Transpose</a></li>
<li class="toctree-l3"><a class="reference internal" href="tril.html">Tril</a></li>
<li class="toctree-l3"><a class="reference internal" href="triu.html">Triu</a></li>
<li class="toctree-l3"><a class="reference internal" href="uniform_real.html">UniformReal</a></li>
<li class="toctree-l3"><a class="reference internal" href="unique.html">Unique</a></li>
<li class="toctree-l3"><a class="reference internal" href="unsortedsegmentsum.html">UnsortedSegmentSum</a></li>
<li class="toctree-l3"><a class="reference internal" href="unstack.html">Unstack</a></li>
<li class="toctree-l3"><a class="reference internal" href="unsqueeze.html">UnSqueeze</a></li>
<li class="toctree-l3"><a class="reference internal" href="where.html">Where</a></li>
<li class="toctree-l3"><a class="reference internal" href="zeroslike.html">ZerosLike</a></li>
<li class="toctree-l3"><a class="reference internal" href="call.html">Call</a></li>
<li class="toctree-l3"><a class="reference internal" href="custom.html">Custom</a></li>
<li class="toctree-l3"><a class="reference internal" href="depend.html">Depend</a></li>
<li class="toctree-l3"><a class="reference internal" href="genop.html">GenOp</a></li>
<li class="toctree-l3"><a class="reference internal" href="partialfusion.html">PartialFusion</a></li>
</ul>
</li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="../../refdoc/index.html">参考资料</a></li>
</ul>
</div>
</div>
</nav>
<section data-toggle="wy-nav-shift" class="wy-nav-content-wrap"><nav class="wy-nav-top" aria-label="移动版导航菜单" >
<i data-toggle="wy-nav-top" class="fa fa-bars"></i>
<a href="../../index.html">MindSpore Signal+ 使用手册</a>
</nav>
<div class="wy-nav-content">
<div class="rst-content">
<div role="navigation" aria-label="页面导航">
<ul class="wy-breadcrumbs">
<li><a href="../../index.html" class="icon icon-home" aria-label="Home"></a></li>
<li class="breadcrumb-item"><a href="../index.html">算子库支持</a></li>
<li class="breadcrumb-item"><a href="dsplib_index.html">DSP Library C API Reference</a></li>
<li class="breadcrumb-item active">Resizegrad</li>
<li class="wy-breadcrumbs-aside">
<a href="../../_sources/functionlib/dsplib/resizegrad.rst.txt" rel="nofollow"> 查看页面源码</a>
</li>
</ul>
<hr/>
</div>
<div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
<div itemprop="articleBody">
<section id="resizegrad">
<h1>Resizegrad<a class="headerlink" href="#resizegrad" title="此标题的永久链接"></a></h1>
<p>计算 Resize 操作的梯度。该算子包含两种实现最近邻插值梯度ResizeNearestNeighborGrad和双线性插值梯度ResizeBiLinearGrad。用于将上游梯度从输出尺寸反向传播到输入尺寸。</p>
<p>最近邻插值梯度ResizeNearestNeighborGrad</p>
<p>对于最近邻插值,输入梯度通过最近邻映射反向传播到输出梯度。</p>
<div class="math notranslate nohighlight">
\[\begin{split}out_y =
\begin{cases}
\mathrm{round}(in_y \cdot height\_scale), &amp; \text{if } align\_corners \\
\lfloor in_y \cdot height\_scale \rfloor, &amp; \text{otherwise}
\end{cases}\end{split}\]</div>
<div class="math notranslate nohighlight">
\[\begin{split}out_x =
\begin{cases}
\mathrm{round}(in_x \cdot width\_scale), &amp; \text{if } align\_corners \\
\lfloor in_x \cdot width\_scale \rfloor, &amp; \text{otherwise}
\end{cases}\end{split}\]</div>
<div class="math notranslate nohighlight">
\[out\_addr[out\_offset] \mathrel{+}= in\_addr[in\_offset]\]</div>
<p>其中 <cite>in_addr</cite> 是上游梯度(输出尺寸),<cite>out_addr</cite> 是输入梯度(输入尺寸)。注意使用累加操作(+=),因为多个输入位置可能映射到同一个输出位置。</p>
<p>双线性插值梯度ResizeBiLinearGrad</p>
<p>对于双线性插值输入梯度通过双线性插值的反向传播分配到4个相邻的输出位置。</p>
<div class="math notranslate nohighlight">
\[in_y = h \cdot height\_scale\]</div>
<div class="math notranslate nohighlight">
\[top_y = \max(\lfloor in_y \rfloor, 0)\]</div>
<div class="math notranslate nohighlight">
\[bottom_y = \min(\lceil in_y \rceil, out\_height - 1)\]</div>
<div class="math notranslate nohighlight">
\[y_{\mathrm{lerp}} = in_y - \lfloor in_y \rfloor\]</div>
<div class="math notranslate nohighlight">
\[inverse\_y\_lerp = 1.0 - y_{\mathrm{lerp}}\]</div>
<p>对于 x 维度有类似的公式:</p>
<div class="math notranslate nohighlight">
\[in_x = w \cdot width\_scale\]</div>
<div class="math notranslate nohighlight">
\[left_x = \max(\lfloor in_x \rfloor, 0)\]</div>
<div class="math notranslate nohighlight">
\[right_x = \min(\lceil in_x \rceil, out\_width - 1)\]</div>
<div class="math notranslate nohighlight">
\[x_{\mathrm{lerp}} = in_x - \lfloor in_x \rfloor\]</div>
<div class="math notranslate nohighlight">
\[inverse\_x\_lerp = 1.0 - x_{\mathrm{lerp}}\]</div>
<p>输入梯度按权重分配到4个相邻位置</p>
<div class="math notranslate nohighlight">
\[out\_addr[top_y, left_x] \mathrel{+}= in\_addr[h, w] \cdot
(inverse\_y\_lerp \cdot inverse\_x\_lerp)\]</div>
<div class="math notranslate nohighlight">
\[out\_addr[top_y, right_x] \mathrel{+}= in\_addr[h, w] \cdot
(inverse\_y\_lerp \cdot x_{\mathrm{lerp}})\]</div>
<div class="math notranslate nohighlight">
\[out\_addr[bottom_y, left_x] \mathrel{+}= in\_addr[h, w] \cdot
(y_{\mathrm{lerp}} \cdot inverse\_x\_lerp)\]</div>
<div class="math notranslate nohighlight">
\[out\_addr[bottom_y, right_x] \mathrel{+}= in\_addr[h, w] \cdot
(y_{\mathrm{lerp}} \cdot x_{\mathrm{lerp}})\]</div>
<dl class="simple">
<dt>输入:</dt><dd><ul class="simple">
<li><p><strong>in_addr</strong> - 指向上游梯度数据的指针(输出尺寸的梯度)。</p></li>
<li><p><strong>out_addr</strong> - 指向输出梯度数据的指针输入尺寸的梯度需要初始化为0。</p></li>
<li><p><strong>batch_size</strong> - 批次大小。</p></li>
<li><p><strong>channel</strong> - 通道数。</p></li>
<li><p><strong>format</strong> - 数据格式0 表示 NHWC1 表示 NCHW。</p></li>
<li><p><strong>align_corners</strong> - 是否对齐角点标志0 表示不对齐1 表示对齐。</p></li>
<li><p><strong>in_height</strong> - 输入高度。</p></li>
<li><p><strong>in_width</strong> - 输入宽度。</p></li>
<li><p><strong>out_height</strong> - 输出高度。</p></li>
<li><p><strong>out_width</strong> - 输出宽度。</p></li>
<li><p><strong>height_scale</strong> - 高度缩放因子,通常为 (out_height - 1) / (in_height - 1) 或 out_height / in_height。</p></li>
<li><p><strong>width_scale</strong> - 宽度缩放因子,通常为 (out_width - 1) / (in_width - 1) 或 out_width / in_width。</p></li>
</ul>
</dd>
<dt>输出:</dt><dd><ul class="simple">
<li><p><strong>out_addr</strong> - 计算后的输入梯度(输入尺寸的梯度)。</p></li>
</ul>
</dd>
<dt>支持平台:</dt><dd><p><code class="docutils literal notranslate"><span class="pre">FT78NE</span></code>
<code class="docutils literal notranslate"><span class="pre">MT7004</span></code></p>
</dd>
</dl>
<div class="admonition note">
<p class="admonition-title">备注</p>
<ul class="simple">
<li><p>FT78NE 支持 fp32</p></li>
<li><p>MT7004 支持 fp16, fp32</p></li>
</ul>
</div>
<p><strong>共享存储版本:</strong></p>
<dl class="c function">
<dt class="sig sig-object c" id="c.fp_resizenearestneighborgrad_s">
<span class="kt"><span class="pre">void</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">fp_resizenearestneighborgrad_s</span></span></span><span class="sig-paren">(</span><span class="kt"><span class="pre">float</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="n"><span class="pre">in_addr</span></span>, <span class="kt"><span class="pre">float</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="n"><span class="pre">out_addr</span></span>, <span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="n"><span class="pre">batch_size</span></span>, <span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="n"><span class="pre">channel</span></span>, <span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="n"><span class="pre">format</span></span>, <span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="n"><span class="pre">align_corners</span></span>, <span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="n"><span class="pre">in_height</span></span>, <span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="n"><span class="pre">in_width</span></span>, <span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="n"><span class="pre">out_height</span></span>, <span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="n"><span class="pre">out_width</span></span>, <span class="kt"><span class="pre">float</span></span><span class="w"> </span><span class="n"><span class="pre">height_scale</span></span>, <span class="kt"><span class="pre">float</span></span><span class="w"> </span><span class="n"><span class="pre">width_scale</span></span>, <span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="n"><span class="pre">core_mask</span></span><span class="sig-paren">)</span><a class="headerlink" href="#c.fp_resizenearestneighborgrad_s" title="永久链接至目标"></a><br /></dt>
<dd></dd></dl>
<dl class="c function">
<dt class="sig sig-object c" id="c.hp_resizenearestneighborgrad_s">
<span class="kt"><span class="pre">void</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">hp_resizenearestneighborgrad_s</span></span></span><span class="sig-paren">(</span><span class="n"><span class="pre">half</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="n"><span class="pre">in_addr</span></span>, <span class="n"><span class="pre">half</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="n"><span class="pre">out_addr</span></span>, <span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="n"><span class="pre">batch_size</span></span>, <span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="n"><span class="pre">channel</span></span>, <span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="n"><span class="pre">format</span></span>, <span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="n"><span class="pre">align_corners</span></span>, <span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="n"><span class="pre">in_height</span></span>, <span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="n"><span class="pre">in_width</span></span>, <span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="n"><span class="pre">out_height</span></span>, <span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="n"><span class="pre">out_width</span></span>, <span class="kt"><span class="pre">float</span></span><span class="w"> </span><span class="n"><span class="pre">height_scale</span></span>, <span class="kt"><span class="pre">float</span></span><span class="w"> </span><span class="n"><span class="pre">width_scale</span></span>, <span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="n"><span class="pre">core_mask</span></span><span class="sig-paren">)</span><a class="headerlink" href="#c.hp_resizenearestneighborgrad_s" title="永久链接至目标"></a><br /></dt>
<dd></dd></dl>
<dl class="c function">
<dt class="sig sig-object c" id="c.fp_resizebilineargrad_s">
<span class="kt"><span class="pre">void</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">fp_resizebilineargrad_s</span></span></span><span class="sig-paren">(</span><span class="kt"><span class="pre">float</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="n"><span class="pre">in_addr</span></span>, <span class="kt"><span class="pre">float</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="n"><span class="pre">out_addr</span></span>, <span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="n"><span class="pre">batch_size</span></span>, <span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="n"><span class="pre">channel</span></span>, <span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="n"><span class="pre">format</span></span>, <span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="n"><span class="pre">align_corners</span></span>, <span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="n"><span class="pre">in_height</span></span>, <span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="n"><span class="pre">in_width</span></span>, <span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="n"><span class="pre">out_height</span></span>, <span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="n"><span class="pre">out_width</span></span>, <span class="kt"><span class="pre">float</span></span><span class="w"> </span><span class="n"><span class="pre">height_scale</span></span>, <span class="kt"><span class="pre">float</span></span><span class="w"> </span><span class="n"><span class="pre">width_scale</span></span>, <span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="n"><span class="pre">core_mask</span></span><span class="sig-paren">)</span><a class="headerlink" href="#c.fp_resizebilineargrad_s" title="永久链接至目标"></a><br /></dt>
<dd></dd></dl>
<dl class="c function">
<dt class="sig sig-object c" id="c.hp_resizebilineargrad_s">
<span class="kt"><span class="pre">void</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">hp_resizebilineargrad_s</span></span></span><span class="sig-paren">(</span><span class="n"><span class="pre">half</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="n"><span class="pre">in_addr</span></span>, <span class="n"><span class="pre">half</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="n"><span class="pre">out_addr</span></span>, <span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="n"><span class="pre">batch_size</span></span>, <span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="n"><span class="pre">channel</span></span>, <span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="n"><span class="pre">format</span></span>, <span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="n"><span class="pre">align_corners</span></span>, <span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="n"><span class="pre">in_height</span></span>, <span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="n"><span class="pre">in_width</span></span>, <span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="n"><span class="pre">out_height</span></span>, <span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="n"><span class="pre">out_width</span></span>, <span class="kt"><span class="pre">float</span></span><span class="w"> </span><span class="n"><span class="pre">height_scale</span></span>, <span class="kt"><span class="pre">float</span></span><span class="w"> </span><span class="n"><span class="pre">width_scale</span></span>, <span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="n"><span class="pre">core_mask</span></span><span class="sig-paren">)</span><a class="headerlink" href="#c.hp_resizebilineargrad_s" title="永久链接至目标"></a><br /></dt>
<dd></dd></dl>
<p><strong>C调用示例最近邻插值梯度:</strong></p>
<div class="highlight-c notranslate"><div class="highlight"><pre><span></span><span class="linenos"> 1</span><span class="cp">#include</span><span class="w"> </span><span class="cpf">&lt;stdio.h&gt;</span>
<span class="linenos"> 2</span><span class="cp">#include</span><span class="w"> </span><span class="cpf">&lt;resizegrad.h&gt;</span>
<span class="linenos"> 3</span>
<span class="linenos"> 4</span><span class="kt">int</span><span class="w"> </span><span class="nf">main</span><span class="p">(</span><span class="kt">int</span><span class="w"> </span><span class="n">argc</span><span class="p">,</span><span class="w"> </span><span class="kt">char</span><span class="o">*</span><span class="w"> </span><span class="n">argv</span><span class="p">[])</span><span class="w"> </span><span class="p">{</span>
<span class="linenos"> 5</span><span class="w"> </span><span class="kt">float</span><span class="w"> </span><span class="o">*</span><span class="n">in_addr</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="p">(</span><span class="kt">float</span><span class="w"> </span><span class="o">*</span><span class="p">)</span><span class="mh">0x10010000</span><span class="p">;</span>
<span class="linenos"> 6</span><span class="w"> </span><span class="kt">float</span><span class="w"> </span><span class="o">*</span><span class="n">out_addr</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="p">(</span><span class="kt">float</span><span class="w"> </span><span class="o">*</span><span class="p">)</span><span class="mh">0x10020000</span><span class="p">;</span>
<span class="linenos"> 7</span>
<span class="linenos"> 8</span><span class="w"> </span><span class="kt">int</span><span class="w"> </span><span class="n">batch_size</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mi">4</span><span class="p">;</span>
<span class="linenos"> 9</span><span class="w"> </span><span class="kt">int</span><span class="w"> </span><span class="n">channel</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mi">3</span><span class="p">;</span>
<span class="linenos">10</span><span class="w"> </span><span class="kt">int</span><span class="w"> </span><span class="n">format</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mi">1</span><span class="p">;</span>
<span class="linenos">11</span><span class="w"> </span><span class="kt">int</span><span class="w"> </span><span class="n">align_corners</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mi">1</span><span class="p">;</span>
<span class="linenos">12</span><span class="w"> </span><span class="kt">int</span><span class="w"> </span><span class="n">in_height</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mi">4</span><span class="p">,</span><span class="w"> </span><span class="n">in_width</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mi">4</span><span class="p">;</span>
<span class="linenos">13</span><span class="w"> </span><span class="kt">int</span><span class="w"> </span><span class="n">out_height</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mi">6</span><span class="p">,</span><span class="w"> </span><span class="n">out_width</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mi">6</span><span class="p">;</span>
<span class="linenos">14</span><span class="w"> </span><span class="kt">int</span><span class="w"> </span><span class="n">core_mask</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mh">0xff</span><span class="p">;</span>
<span class="linenos">15</span>
<span class="linenos">16</span><span class="w"> </span><span class="kt">float</span><span class="w"> </span><span class="n">height_scale</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="p">(</span><span class="kt">float</span><span class="p">)(</span><span class="n">out_height</span><span class="w"> </span><span class="o">-</span><span class="w"> </span><span class="mi">1</span><span class="p">)</span><span class="w"> </span><span class="o">/</span><span class="w"> </span><span class="p">(</span><span class="n">in_height</span><span class="w"> </span><span class="o">-</span><span class="w"> </span><span class="mi">1</span><span class="p">);</span>
<span class="linenos">17</span><span class="w"> </span><span class="kt">float</span><span class="w"> </span><span class="n">width_scale</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="p">(</span><span class="kt">float</span><span class="p">)(</span><span class="n">out_width</span><span class="w"> </span><span class="o">-</span><span class="w"> </span><span class="mi">1</span><span class="p">)</span><span class="w"> </span><span class="o">/</span><span class="w"> </span><span class="p">(</span><span class="n">in_width</span><span class="w"> </span><span class="o">-</span><span class="w"> </span><span class="mi">1</span><span class="p">);</span>
<span class="linenos">18</span>
<span class="linenos">19</span><span class="w"> </span><span class="kt">int</span><span class="w"> </span><span class="n">output_size</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">in_height</span><span class="w"> </span><span class="o">*</span><span class="w"> </span><span class="n">in_width</span><span class="w"> </span><span class="o">*</span><span class="w"> </span><span class="n">channel</span><span class="w"> </span><span class="o">*</span><span class="w"> </span><span class="n">batch_size</span><span class="p">;</span>
<span class="linenos">20</span><span class="w"> </span><span class="n">memset</span><span class="p">(</span><span class="n">out_addr</span><span class="p">,</span><span class="w"> </span><span class="mi">0</span><span class="p">,</span><span class="w"> </span><span class="n">output_size</span><span class="w"> </span><span class="o">*</span><span class="w"> </span><span class="k">sizeof</span><span class="p">(</span><span class="kt">float</span><span class="p">));</span>
<span class="linenos">21</span>
<span class="hll"><span class="linenos">22</span><span class="w"> </span><span class="n">fp_resizenearestneighborgrad_s</span><span class="p">(</span><span class="n">in_addr</span><span class="p">,</span><span class="w"> </span><span class="n">out_addr</span><span class="p">,</span><span class="w"> </span><span class="n">batch_size</span><span class="p">,</span><span class="w"> </span><span class="n">channel</span><span class="p">,</span>
</span><span class="hll"><span class="linenos">23</span><span class="w"> </span><span class="n">format</span><span class="p">,</span><span class="w"> </span><span class="n">align_corners</span><span class="p">,</span><span class="w"> </span><span class="n">in_height</span><span class="p">,</span><span class="w"> </span><span class="n">in_width</span><span class="p">,</span>
</span><span class="hll"><span class="linenos">24</span><span class="w"> </span><span class="n">out_height</span><span class="p">,</span><span class="w"> </span><span class="n">out_width</span><span class="p">,</span><span class="w"> </span><span class="n">height_scale</span><span class="p">,</span><span class="w"> </span><span class="n">width_scale</span><span class="p">,</span><span class="w"> </span><span class="n">core_mask</span><span class="p">);</span>
</span><span class="linenos">25</span><span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="mi">0</span><span class="p">;</span>
<span class="linenos">26</span><span class="p">}</span>
</pre></div>
</div>
<p><strong>私有存储版本:</strong></p>
<dl class="c function">
<dt class="sig sig-object c" id="c.fp_resizenearestneighborgrad_p">
<span class="kt"><span class="pre">void</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">fp_resizenearestneighborgrad_p</span></span></span><span class="sig-paren">(</span><span class="kt"><span class="pre">float</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="n"><span class="pre">in_addr</span></span>, <span class="kt"><span class="pre">float</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="n"><span class="pre">out_addr</span></span>, <span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="n"><span class="pre">batch_size</span></span>, <span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="n"><span class="pre">channel</span></span>, <span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="n"><span class="pre">format</span></span>, <span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="n"><span class="pre">align_corners</span></span>, <span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="n"><span class="pre">in_height</span></span>, <span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="n"><span class="pre">in_width</span></span>, <span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="n"><span class="pre">out_height</span></span>, <span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="n"><span class="pre">out_width</span></span>, <span class="kt"><span class="pre">float</span></span><span class="w"> </span><span class="n"><span class="pre">height_scale</span></span>, <span class="kt"><span class="pre">float</span></span><span class="w"> </span><span class="n"><span class="pre">width_scale</span></span><span class="sig-paren">)</span><a class="headerlink" href="#c.fp_resizenearestneighborgrad_p" title="永久链接至目标"></a><br /></dt>
<dd></dd></dl>
<dl class="c function">
<dt class="sig sig-object c" id="c.hp_resizenearestneighborgrad_p">
<span class="kt"><span class="pre">void</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">hp_resizenearestneighborgrad_p</span></span></span><span class="sig-paren">(</span><span class="n"><span class="pre">half</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="n"><span class="pre">in_addr</span></span>, <span class="n"><span class="pre">half</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="n"><span class="pre">out_addr</span></span>, <span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="n"><span class="pre">batch_size</span></span>, <span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="n"><span class="pre">channel</span></span>, <span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="n"><span class="pre">format</span></span>, <span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="n"><span class="pre">align_corners</span></span>, <span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="n"><span class="pre">in_height</span></span>, <span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="n"><span class="pre">in_width</span></span>, <span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="n"><span class="pre">out_height</span></span>, <span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="n"><span class="pre">out_width</span></span>, <span class="kt"><span class="pre">float</span></span><span class="w"> </span><span class="n"><span class="pre">height_scale</span></span>, <span class="kt"><span class="pre">float</span></span><span class="w"> </span><span class="n"><span class="pre">width_scale</span></span><span class="sig-paren">)</span><a class="headerlink" href="#c.hp_resizenearestneighborgrad_p" title="永久链接至目标"></a><br /></dt>
<dd></dd></dl>
<dl class="c function">
<dt class="sig sig-object c" id="c.fp_resizebilineargrad_p">
<span class="kt"><span class="pre">void</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">fp_resizebilineargrad_p</span></span></span><span class="sig-paren">(</span><span class="kt"><span class="pre">float</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="n"><span class="pre">in_addr</span></span>, <span class="kt"><span class="pre">float</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="n"><span class="pre">out_addr</span></span>, <span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="n"><span class="pre">batch_size</span></span>, <span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="n"><span class="pre">channel</span></span>, <span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="n"><span class="pre">format</span></span>, <span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="n"><span class="pre">align_corners</span></span>, <span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="n"><span class="pre">in_height</span></span>, <span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="n"><span class="pre">in_width</span></span>, <span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="n"><span class="pre">out_height</span></span>, <span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="n"><span class="pre">out_width</span></span>, <span class="kt"><span class="pre">float</span></span><span class="w"> </span><span class="n"><span class="pre">height_scale</span></span>, <span class="kt"><span class="pre">float</span></span><span class="w"> </span><span class="n"><span class="pre">width_scale</span></span><span class="sig-paren">)</span><a class="headerlink" href="#c.fp_resizebilineargrad_p" title="永久链接至目标"></a><br /></dt>
<dd></dd></dl>
<dl class="c function">
<dt class="sig sig-object c" id="c.hp_resizebilineargrad_p">
<span class="kt"><span class="pre">void</span></span><span class="w"> </span><span class="sig-name descname"><span class="n"><span class="pre">hp_resizebilineargrad_p</span></span></span><span class="sig-paren">(</span><span class="n"><span class="pre">half</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="n"><span class="pre">in_addr</span></span>, <span class="n"><span class="pre">half</span></span><span class="w"> </span><span class="p"><span class="pre">*</span></span><span class="n"><span class="pre">out_addr</span></span>, <span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="n"><span class="pre">batch_size</span></span>, <span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="n"><span class="pre">channel</span></span>, <span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="n"><span class="pre">format</span></span>, <span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="n"><span class="pre">align_corners</span></span>, <span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="n"><span class="pre">in_height</span></span>, <span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="n"><span class="pre">in_width</span></span>, <span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="n"><span class="pre">out_height</span></span>, <span class="kt"><span class="pre">int</span></span><span class="w"> </span><span class="n"><span class="pre">out_width</span></span>, <span class="kt"><span class="pre">float</span></span><span class="w"> </span><span class="n"><span class="pre">height_scale</span></span>, <span class="kt"><span class="pre">float</span></span><span class="w"> </span><span class="n"><span class="pre">width_scale</span></span><span class="sig-paren">)</span><a class="headerlink" href="#c.hp_resizebilineargrad_p" title="永久链接至目标"></a><br /></dt>
<dd></dd></dl>
<p><strong>C调用示例双线性插值梯度:</strong></p>
<div class="highlight-c notranslate"><div class="highlight"><pre><span></span><span class="linenos"> 1</span><span class="cp">#include</span><span class="w"> </span><span class="cpf">&lt;stdio.h&gt;</span>
<span class="linenos"> 2</span><span class="cp">#include</span><span class="w"> </span><span class="cpf">&lt;resizegrad.h&gt;</span>
<span class="linenos"> 3</span>
<span class="linenos"> 4</span><span class="kt">int</span><span class="w"> </span><span class="nf">main</span><span class="p">(</span><span class="kt">int</span><span class="w"> </span><span class="n">argc</span><span class="p">,</span><span class="w"> </span><span class="kt">char</span><span class="o">*</span><span class="w"> </span><span class="n">argv</span><span class="p">[])</span><span class="w"> </span><span class="p">{</span>
<span class="linenos"> 5</span><span class="w"> </span><span class="kt">float</span><span class="w"> </span><span class="o">*</span><span class="n">in_addr</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="p">(</span><span class="kt">float</span><span class="w"> </span><span class="o">*</span><span class="p">)</span><span class="mh">0x10010000</span><span class="p">;</span>
<span class="linenos"> 6</span><span class="w"> </span><span class="kt">float</span><span class="w"> </span><span class="o">*</span><span class="n">out_addr</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="p">(</span><span class="kt">float</span><span class="w"> </span><span class="o">*</span><span class="p">)</span><span class="mh">0x10020000</span><span class="p">;</span>
<span class="linenos"> 7</span>
<span class="linenos"> 8</span><span class="w"> </span><span class="kt">int</span><span class="w"> </span><span class="n">batch_size</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mi">4</span><span class="p">;</span>
<span class="linenos"> 9</span><span class="w"> </span><span class="kt">int</span><span class="w"> </span><span class="n">channel</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mi">3</span><span class="p">;</span>
<span class="linenos">10</span><span class="w"> </span><span class="kt">int</span><span class="w"> </span><span class="n">format</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mi">0</span><span class="p">;</span>
<span class="linenos">11</span><span class="w"> </span><span class="kt">int</span><span class="w"> </span><span class="n">align_corners</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mi">0</span><span class="p">;</span>
<span class="linenos">12</span><span class="w"> </span><span class="kt">int</span><span class="w"> </span><span class="n">in_height</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mi">4</span><span class="p">,</span><span class="w"> </span><span class="n">in_width</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mi">4</span><span class="p">;</span>
<span class="linenos">13</span><span class="w"> </span><span class="kt">int</span><span class="w"> </span><span class="n">out_height</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mi">6</span><span class="p">,</span><span class="w"> </span><span class="n">out_width</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="mi">6</span><span class="p">;</span>
<span class="linenos">14</span>
<span class="linenos">15</span><span class="w"> </span><span class="kt">float</span><span class="w"> </span><span class="n">height_scale</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="p">(</span><span class="kt">float</span><span class="p">)</span><span class="n">out_height</span><span class="w"> </span><span class="o">/</span><span class="w"> </span><span class="n">in_height</span><span class="p">;</span>
<span class="linenos">16</span><span class="w"> </span><span class="kt">float</span><span class="w"> </span><span class="n">width_scale</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="p">(</span><span class="kt">float</span><span class="p">)</span><span class="n">out_width</span><span class="w"> </span><span class="o">/</span><span class="w"> </span><span class="n">in_width</span><span class="p">;</span>
<span class="linenos">17</span>
<span class="linenos">18</span><span class="w"> </span><span class="kt">int</span><span class="w"> </span><span class="n">output_size</span><span class="w"> </span><span class="o">=</span><span class="w"> </span><span class="n">in_height</span><span class="w"> </span><span class="o">*</span><span class="w"> </span><span class="n">in_width</span><span class="w"> </span><span class="o">*</span><span class="w"> </span><span class="n">channel</span><span class="w"> </span><span class="o">*</span><span class="w"> </span><span class="n">batch_size</span><span class="p">;</span>
<span class="linenos">19</span><span class="w"> </span><span class="n">memset</span><span class="p">(</span><span class="n">out_addr</span><span class="p">,</span><span class="w"> </span><span class="mi">0</span><span class="p">,</span><span class="w"> </span><span class="n">output_size</span><span class="w"> </span><span class="o">*</span><span class="w"> </span><span class="k">sizeof</span><span class="p">(</span><span class="kt">float</span><span class="p">));</span>
<span class="linenos">20</span>
<span class="hll"><span class="linenos">21</span><span class="w"> </span><span class="n">fp_resizebilineargrad_p</span><span class="p">(</span><span class="n">in_addr</span><span class="p">,</span><span class="w"> </span><span class="n">out_addr</span><span class="p">,</span><span class="w"> </span><span class="n">batch_size</span><span class="p">,</span><span class="w"> </span><span class="n">channel</span><span class="p">,</span>
</span><span class="hll"><span class="linenos">22</span><span class="w"> </span><span class="n">format</span><span class="p">,</span><span class="w"> </span><span class="n">align_corners</span><span class="p">,</span><span class="w"> </span><span class="n">in_height</span><span class="p">,</span><span class="w"> </span><span class="n">in_width</span><span class="p">,</span>
</span><span class="hll"><span class="linenos">23</span><span class="w"> </span><span class="n">out_height</span><span class="p">,</span><span class="w"> </span><span class="n">out_width</span><span class="p">,</span><span class="w"> </span><span class="n">height_scale</span><span class="p">,</span><span class="w"> </span><span class="n">width_scale</span><span class="p">);</span>
</span><span class="linenos">24</span><span class="w"> </span><span class="k">return</span><span class="w"> </span><span class="mi">0</span><span class="p">;</span>
<span class="linenos">25</span><span class="p">}</span>
</pre></div>
</div>
</section>
</div>
</div>
<div class="pageviews-container">
访问量:<span id="busuanzi_page_uv"></span>
</div>
<footer><div class="rst-footer-buttons" role="navigation" aria-label="页脚">
<a href="resize.html" class="btn btn-neutral float-left" title="Resize" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left" aria-hidden="true"></span> 上一页</a>
<a href="reverse_sequence.html" class="btn btn-neutral float-right" title="ReverseSequence" accesskey="n" rel="next">下一页 <span class="fa fa-arrow-circle-right" aria-hidden="true"></span></a>
</div>
<hr/>
<div role="contentinfo">
<p>&#169; 版权所有 2025 - 2026, NUDT-674。</p>
</div>
利用 <a href="https://www.sphinx-doc.org/">Sphinx</a> 构建,使用的
<a href="https://github.com/readthedocs/sphinx_rtd_theme">主题</a>
<a href="https://readthedocs.org">Read the Docs</a> 开发.
</footer>
</div>
</div>
</section>
</div>
<script>
jQuery(function () {
SphinxRtdTheme.Navigation.enable(true);
});
</script>
<script src="//cdn.busuanzi.cc/busuanzi/3.6.9/busuanzi.min.js" defer></script>
</body>
</html>