MCPcopy Create free account
hub / github.com/MegEngine/MegEngine / rotate_8uc1_clockwise

Function rotate_8uc1_clockwise

dnn/src/armv7/rotate/opr_impl.cpp:196–222  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

194}
195
196void rotate_8uc1_clockwise(
197 const uchar* src, uchar* dst, const size_t rows, const size_t cols,
198 const size_t src_step, const size_t dst_step) {
199 const size_t block = 16;
200 (void)block;
201 size_t i = 0;
202
203 for (; i + block <= rows; i += block) {
204 size_t j = 0;
205 for (; j + block <= cols; j += block) {
206 rotate_8uc1_clockwise_16x16(
207 src + i * src_step + j, dst + j * dst_step + (rows - (i + block)),
208 src_step, dst_step);
209 }
210 for (; j < cols; ++j) {
211 for (size_t k = 0; k < block; ++k) {
212 dst[j * dst_step + (rows - 1 - (i + k))] = src[(i + k) * src_step + j];
213 }
214 }
215 }
216
217 for (; i < rows; ++i) {
218 for (size_t j = 0; j < cols; ++j) {
219 dst[j * dst_step + (rows - 1 - i)] = src[i * src_step + j];
220 }
221 }
222}
223
224void rotate_8uc1_counterclockwise(
225 const uchar* src, uchar* dst, const size_t rows, const size_t cols,

Callers 1

rotateFunction · 0.70

Calls 1

Tested by

no test coverage detected