| 96 | // VarShape into --------------------------------------------------------------- |
| 97 | |
| 98 | ImageBatchVarShape VarShapeRemapInto(ImageBatchVarShape &dst, ImageBatchVarShape &src, Tensor &map, |
| 99 | NVCVInterpolationType srcInterp, NVCVInterpolationType mapInterp, |
| 100 | NVCVRemapMapValueType mapValueType, bool alignCorners, NVCVBorderType borderMode, |
| 101 | const pyarray &borderValue, std::optional<Stream> pstream) |
| 102 | { |
| 103 | if (!pstream) |
| 104 | { |
| 105 | pstream = Stream::Current(); |
| 106 | } |
| 107 | |
| 108 | float4 bValue = GetFloat4FromPyArray(borderValue); |
| 109 | |
| 110 | auto op = CreateOperator<cvcuda::Remap>(); |
| 111 | |
| 112 | ResourceGuard guard(*pstream); |
| 113 | guard.add(LockMode::LOCK_MODE_READ, {src, map}); |
| 114 | guard.add(LockMode::LOCK_MODE_WRITE, {dst}); |
| 115 | guard.add(LockMode::LOCK_MODE_NONE, {*op}); |
| 116 | |
| 117 | op->submit(pstream->cudaHandle(), src, dst, map, srcInterp, mapInterp, mapValueType, alignCorners, borderMode, |
| 118 | bValue); |
| 119 | |
| 120 | return std::move(dst); |
| 121 | } |
| 122 | |
| 123 | ImageBatchVarShape VarShapeRemap(ImageBatchVarShape &src, Tensor &map, NVCVInterpolationType srcInterp, |
| 124 | NVCVInterpolationType mapInterp, NVCVRemapMapValueType mapValueType, bool alignCorners, |
no test coverage detected