rga修改为dma传输

This commit is contained in:
zengqile 2026-01-19 13:06:51 +08:00
parent f1dd9a9b7b
commit b2c6ec5c01
25 changed files with 2121 additions and 1734 deletions

View File

@ -1512,16 +1512,16 @@ CMakeFiles/edge_proxy_lib.dir/src/algorithm/HumanDetectionModule.cc.o
/app/src/rknn/rkYolov8.hpp
/app/src/rknn/postprocess.h
/app/src/rknn/rknn_api.h
/usr/include/rga/im2d.h
/usr/include/rga/im2d_version.h
/usr/include/rga/im2d_type.h
/usr/include/rga/rga.h
/usr/include/rga/im2d_common.h
/usr/include/rga/im2d_buffer.h
/usr/include/rga/im2d_single.h
/usr/include/rga/im2d_task.h
/usr/include/rga/im2d_mpi.h
/usr/include/rga/rga.h
/usr/include/im2d.h
/usr/include/im2d_version.h
/usr/include/im2d_type.h
/usr/include/rga.h
/usr/include/im2d_common.h
/usr/include/im2d_buffer.h
/usr/include/im2d_single.h
/usr/include/im2d_task.h
/usr/include/im2d_mpi.h
/usr/include/rga.h
/app/src/rknn/rknnPool.hpp
/app/src/rknn/ThreadPool.hpp
/usr/include/c++/11/condition_variable
@ -15859,21 +15859,21 @@ CMakeFiles/edge_proxy_lib.dir/src/rknn/preprocess.cc.o
/usr/include/aarch64-linux-gnu/bits/stdio_lim.h
/usr/include/aarch64-linux-gnu/bits/floatn.h
/usr/include/aarch64-linux-gnu/bits/floatn-common.h
/usr/include/rga/im2d.h
/usr/include/rga/im2d_version.h
/usr/include/rga/im2d_type.h
/usr/include/im2d.h
/usr/include/im2d_version.h
/usr/include/im2d_type.h
/usr/lib/gcc/aarch64-linux-gnu/11/include/stdint.h
/usr/include/stdint.h
/usr/include/aarch64-linux-gnu/bits/wchar.h
/usr/include/aarch64-linux-gnu/bits/stdint-intn.h
/usr/include/aarch64-linux-gnu/bits/stdint-uintn.h
/usr/include/rga/rga.h
/usr/include/rga/im2d_common.h
/usr/include/rga/im2d_buffer.h
/usr/include/rga/im2d_single.h
/usr/include/rga/im2d_task.h
/usr/include/rga/im2d_mpi.h
/usr/include/rga/rga.h
/usr/include/rga.h
/usr/include/im2d_common.h
/usr/include/im2d_buffer.h
/usr/include/im2d_single.h
/usr/include/im2d_task.h
/usr/include/im2d_mpi.h
/usr/include/rga.h
/usr/include/opencv4/opencv2/core/core.hpp
/usr/include/opencv4/opencv2/core.hpp
/usr/include/opencv4/opencv2/core/cvdef.h
@ -16312,16 +16312,16 @@ CMakeFiles/edge_proxy_lib.dir/src/rknn/rkYolov5s.cc.o
/usr/include/c++/11/bits/vector.tcc
/app/src/rknn/postprocess.h
/app/src/rknn/preprocess.h
/usr/include/rga/im2d.h
/usr/include/rga/im2d_version.h
/usr/include/rga/im2d_type.h
/usr/include/rga/rga.h
/usr/include/rga/im2d_common.h
/usr/include/rga/im2d_buffer.h
/usr/include/rga/im2d_single.h
/usr/include/rga/im2d_task.h
/usr/include/rga/im2d_mpi.h
/usr/include/rga/rga.h
/usr/include/im2d.h
/usr/include/im2d_version.h
/usr/include/im2d_type.h
/usr/include/rga.h
/usr/include/im2d_common.h
/usr/include/im2d_buffer.h
/usr/include/im2d_single.h
/usr/include/im2d_task.h
/usr/include/im2d_mpi.h
/usr/include/rga.h
/usr/include/opencv4/opencv2/core/core.hpp
/usr/include/opencv4/opencv2/core.hpp
/usr/include/opencv4/opencv2/core/cvdef.h
@ -16794,16 +16794,16 @@ CMakeFiles/edge_proxy_lib.dir/src/rknn/rkYolov8.cc.o
/usr/include/opencv4/opencv2/core/cvdef.h
/app/src/rknn/postprocess.h
/app/src/rknn/rknn_api.h
/usr/include/rga/im2d.h
/usr/include/rga/im2d_version.h
/usr/include/rga/im2d_type.h
/usr/include/rga/rga.h
/usr/include/rga/im2d_common.h
/usr/include/rga/im2d_buffer.h
/usr/include/rga/im2d_single.h
/usr/include/rga/im2d_task.h
/usr/include/rga/im2d_mpi.h
/usr/include/rga/rga.h
/usr/include/im2d.h
/usr/include/im2d_version.h
/usr/include/im2d_type.h
/usr/include/rga.h
/usr/include/im2d_common.h
/usr/include/im2d_buffer.h
/usr/include/im2d_single.h
/usr/include/im2d_task.h
/usr/include/im2d_mpi.h
/usr/include/rga.h
/usr/include/opencv4/opencv2/imgproc/imgproc.hpp
/usr/include/opencv4/opencv2/imgproc.hpp
/usr/include/opencv4/opencv2/imgproc/segmentation.hpp
@ -18503,16 +18503,16 @@ CMakeFiles/edge_proxy_lib.dir/src/videoServiceManager/video_service_manager.cc.o
/app/src/algorithm/bytetrack/include/ByteTrack/lapjv.h
/app/src/algorithm/bytetrack/include/ByteTrack/Object.h
/app/src/rknn/rkYolov8.hpp
/usr/include/rga/im2d.h
/usr/include/rga/im2d_version.h
/usr/include/rga/im2d_type.h
/usr/include/rga/rga.h
/usr/include/rga/im2d_common.h
/usr/include/rga/im2d_buffer.h
/usr/include/rga/im2d_single.h
/usr/include/rga/im2d_task.h
/usr/include/rga/im2d_mpi.h
/usr/include/rga/rga.h
/usr/include/im2d.h
/usr/include/im2d_version.h
/usr/include/im2d_type.h
/usr/include/rga.h
/usr/include/im2d_common.h
/usr/include/im2d_buffer.h
/usr/include/im2d_single.h
/usr/include/im2d_task.h
/usr/include/im2d_mpi.h
/usr/include/rga.h
/usr/include/c++/11/fstream
/usr/include/aarch64-linux-gnu/c++/11/bits/basic_file.h
/usr/include/aarch64-linux-gnu/c++/11/bits/c++io.h

View File

@ -1510,16 +1510,16 @@ CMakeFiles/edge_proxy_lib.dir/src/algorithm/HumanDetectionModule.cc.o: ../src/al
../src/rknn/rkYolov8.hpp \
../src/rknn/postprocess.h \
../src/rknn/rknn_api.h \
/usr/include/rga/im2d.h \
/usr/include/rga/im2d_version.h \
/usr/include/rga/im2d_type.h \
/usr/include/rga/rga.h \
/usr/include/rga/im2d_common.h \
/usr/include/rga/im2d_buffer.h \
/usr/include/rga/im2d_single.h \
/usr/include/rga/im2d_task.h \
/usr/include/rga/im2d_mpi.h \
/usr/include/rga/rga.h \
/usr/include/im2d.h \
/usr/include/im2d_version.h \
/usr/include/im2d_type.h \
/usr/include/rga.h \
/usr/include/im2d_common.h \
/usr/include/im2d_buffer.h \
/usr/include/im2d_single.h \
/usr/include/im2d_task.h \
/usr/include/im2d_mpi.h \
/usr/include/rga.h \
../src/rknn/rknnPool.hpp \
../src/rknn/ThreadPool.hpp \
/usr/include/c++/11/condition_variable \
@ -15830,21 +15830,21 @@ CMakeFiles/edge_proxy_lib.dir/src/rknn/preprocess.cc.o: ../src/rknn/preprocess.c
/usr/include/aarch64-linux-gnu/bits/stdio_lim.h \
/usr/include/aarch64-linux-gnu/bits/floatn.h \
/usr/include/aarch64-linux-gnu/bits/floatn-common.h \
/usr/include/rga/im2d.h \
/usr/include/rga/im2d_version.h \
/usr/include/rga/im2d_type.h \
/usr/include/im2d.h \
/usr/include/im2d_version.h \
/usr/include/im2d_type.h \
/usr/lib/gcc/aarch64-linux-gnu/11/include/stdint.h \
/usr/include/stdint.h \
/usr/include/aarch64-linux-gnu/bits/wchar.h \
/usr/include/aarch64-linux-gnu/bits/stdint-intn.h \
/usr/include/aarch64-linux-gnu/bits/stdint-uintn.h \
/usr/include/rga/rga.h \
/usr/include/rga/im2d_common.h \
/usr/include/rga/im2d_buffer.h \
/usr/include/rga/im2d_single.h \
/usr/include/rga/im2d_task.h \
/usr/include/rga/im2d_mpi.h \
/usr/include/rga/rga.h \
/usr/include/rga.h \
/usr/include/im2d_common.h \
/usr/include/im2d_buffer.h \
/usr/include/im2d_single.h \
/usr/include/im2d_task.h \
/usr/include/im2d_mpi.h \
/usr/include/rga.h \
/usr/include/opencv4/opencv2/core/core.hpp \
/usr/include/opencv4/opencv2/core.hpp \
/usr/include/opencv4/opencv2/core/cvdef.h \
@ -16282,16 +16282,16 @@ CMakeFiles/edge_proxy_lib.dir/src/rknn/rkYolov5s.cc.o: ../src/rknn/rkYolov5s.cc
/usr/include/c++/11/bits/vector.tcc \
../src/rknn/postprocess.h \
../src/rknn/preprocess.h \
/usr/include/rga/im2d.h \
/usr/include/rga/im2d_version.h \
/usr/include/rga/im2d_type.h \
/usr/include/rga/rga.h \
/usr/include/rga/im2d_common.h \
/usr/include/rga/im2d_buffer.h \
/usr/include/rga/im2d_single.h \
/usr/include/rga/im2d_task.h \
/usr/include/rga/im2d_mpi.h \
/usr/include/rga/rga.h \
/usr/include/im2d.h \
/usr/include/im2d_version.h \
/usr/include/im2d_type.h \
/usr/include/rga.h \
/usr/include/im2d_common.h \
/usr/include/im2d_buffer.h \
/usr/include/im2d_single.h \
/usr/include/im2d_task.h \
/usr/include/im2d_mpi.h \
/usr/include/rga.h \
/usr/include/opencv4/opencv2/core/core.hpp \
/usr/include/opencv4/opencv2/core.hpp \
/usr/include/opencv4/opencv2/core/cvdef.h \
@ -16763,16 +16763,16 @@ CMakeFiles/edge_proxy_lib.dir/src/rknn/rkYolov8.cc.o: ../src/rknn/rkYolov8.cc \
/usr/include/opencv4/opencv2/core/cvdef.h \
../src/rknn/postprocess.h \
../src/rknn/rknn_api.h \
/usr/include/rga/im2d.h \
/usr/include/rga/im2d_version.h \
/usr/include/rga/im2d_type.h \
/usr/include/rga/rga.h \
/usr/include/rga/im2d_common.h \
/usr/include/rga/im2d_buffer.h \
/usr/include/rga/im2d_single.h \
/usr/include/rga/im2d_task.h \
/usr/include/rga/im2d_mpi.h \
/usr/include/rga/rga.h \
/usr/include/im2d.h \
/usr/include/im2d_version.h \
/usr/include/im2d_type.h \
/usr/include/rga.h \
/usr/include/im2d_common.h \
/usr/include/im2d_buffer.h \
/usr/include/im2d_single.h \
/usr/include/im2d_task.h \
/usr/include/im2d_mpi.h \
/usr/include/rga.h \
/usr/include/opencv4/opencv2/imgproc/imgproc.hpp \
/usr/include/opencv4/opencv2/imgproc.hpp \
/usr/include/opencv4/opencv2/imgproc/segmentation.hpp \
@ -18467,16 +18467,16 @@ CMakeFiles/edge_proxy_lib.dir/src/videoServiceManager/video_service_manager.cc.o
../src/algorithm/bytetrack/include/ByteTrack/lapjv.h \
../src/algorithm/bytetrack/include/ByteTrack/Object.h \
../src/rknn/rkYolov8.hpp \
/usr/include/rga/im2d.h \
/usr/include/rga/im2d_version.h \
/usr/include/rga/im2d_type.h \
/usr/include/rga/rga.h \
/usr/include/rga/im2d_common.h \
/usr/include/rga/im2d_buffer.h \
/usr/include/rga/im2d_single.h \
/usr/include/rga/im2d_task.h \
/usr/include/rga/im2d_mpi.h \
/usr/include/rga/rga.h \
/usr/include/im2d.h \
/usr/include/im2d_version.h \
/usr/include/im2d_type.h \
/usr/include/rga.h \
/usr/include/im2d_common.h \
/usr/include/im2d_buffer.h \
/usr/include/im2d_single.h \
/usr/include/im2d_task.h \
/usr/include/im2d_mpi.h \
/usr/include/rga.h \
/usr/include/c++/11/fstream \
/usr/include/aarch64-linux-gnu/c++/11/bits/basic_file.h \
/usr/include/aarch64-linux-gnu/c++/11/bits/c++io.h \
@ -19924,8 +19924,6 @@ CMakeFiles/edge_proxy_lib.dir/src/web/web_server.cc.o: ../src/web/web_server.cc
/usr/include/opencv4/opencv2/dnn.hpp:
../src/rknn/rkYolov5s.cc:
../src/rknn/preprocess.cc:
/usr/include/c++/11/stdlib.h:
@ -20108,8 +20106,6 @@ CMakeFiles/edge_proxy_lib.dir/src/web/web_server.cc.o: ../src/web/web_server.cc
/usr/include/boost/predef/compiler/microtec.h:
/usr/include/boost/predef/compiler/metaware.h:
/usr/include/boost/predef/compiler/kai.h:
/usr/include/boost/predef/compiler/intel.h:
@ -20204,6 +20200,8 @@ CMakeFiles/edge_proxy_lib.dir/src/web/web_server.cc.o: ../src/web/web_server.cc
/usr/include/boost/asio/packaged_task.hpp:
/usr/include/boost/asio/local/stream_protocol.hpp:
/usr/include/boost/asio/local/connect_pair.hpp:
../src/rknn/coreNum.hpp:
@ -20266,8 +20264,6 @@ CMakeFiles/edge_proxy_lib.dir/src/web/web_server.cc.o: ../src/web/web_server.cc
/usr/include/boost/asio/detail/strand_service.hpp:
/usr/include/boost/asio/generic/stream_protocol.hpp:
/usr/include/boost/asio/generic/detail/endpoint.hpp:
/usr/include/boost/asio/generic/basic_endpoint.hpp:
@ -20284,8 +20280,6 @@ CMakeFiles/edge_proxy_lib.dir/src/web/web_server.cc.o: ../src/web/web_server.cc
/usr/include/boost/asio/impl/connect.hpp:
/usr/include/boost/asio/impl/compose.hpp:
/usr/include/boost/asio/co_spawn.hpp:
/usr/include/boost/asio/buffers_iterator.hpp:
@ -20462,17 +20456,29 @@ CMakeFiles/edge_proxy_lib.dir/src/web/web_server.cc.o: ../src/web/web_server.cc
../src/rknn/rknnPool.hpp:
/usr/include/rga/im2d_task.h:
/usr/include/boost/asio/impl/compose.hpp:
/usr/include/rga/im2d_single.h:
/usr/include/im2d_mpi.h:
/usr/include/boost/asio/local/stream_protocol.hpp:
/usr/include/boost/asio/generic/stream_protocol.hpp:
/usr/include/rga/rga.h:
/usr/include/im2d_task.h:
/usr/include/rga/im2d_type.h:
../src/rknn/rkYolov5s.cc:
/usr/include/rga/im2d_version.h:
/usr/include/im2d_single.h:
/usr/include/im2d_buffer.h:
/usr/include/im2d_common.h:
/usr/include/boost/predef/compiler/metaware.h:
/usr/include/rga.h:
/usr/include/im2d_version.h:
/usr/include/im2d.h:
../src/rknn/postprocess.h:
@ -20736,8 +20742,6 @@ CMakeFiles/edge_proxy_lib.dir/src/web/web_server.cc.o: ../src/web/web_server.cc
/usr/include/boost/exception/exception.hpp:
/usr/include/rga/im2d.h:
/usr/include/boost/asio/traits/require_free.hpp:
/usr/include/asm-generic/posix_types.h:
@ -21482,8 +21486,6 @@ CMakeFiles/edge_proxy_lib.dir/src/web/web_server.cc.o: ../src/web/web_server.cc
/usr/include/eigen3/Eigen/src/Core/products/TriangularSolverVector.h:
/usr/include/rga/im2d_buffer.h:
/usr/include/boost/asio/require.hpp:
/usr/include/c++/11/codecvt:
@ -22604,10 +22606,10 @@ CMakeFiles/edge_proxy_lib.dir/src/web/web_server.cc.o: ../src/web/web_server.cc
/usr/include/boost/asio/posix/stream_descriptor.hpp:
/usr/include/rga/im2d_common.h:
/usr/include/opencv4/opencv2/opencv_modules.hpp:
/usr/include/im2d_type.h:
/usr/include/boost/mpl/int_fwd.hpp:
/usr/include/boost/asio/ip/impl/network_v4.ipp:
@ -22866,8 +22868,6 @@ CMakeFiles/edge_proxy_lib.dir/src/web/web_server.cc.o: ../src/web/web_server.cc
/usr/include/eigen3/Eigen/src/Core/GenericPacketMath.h:
/usr/include/rga/im2d_mpi.h:
/usr/include/boost/asio/detail/op_queue.hpp:
/usr/include/boost/mpl/multiplies.hpp:

View File

@ -478,15 +478,13 @@ CMakeFiles/edge_proxy_lib.dir/src/algorithm/HumanDetectionModule.cc.o: \
/app/src/algorithm/bytetrack/include/ByteTrack/lapjv.h \
/app/src/algorithm/bytetrack/include/ByteTrack/Object.h \
/app/src/rknn/postprocess.h /app/src/rknn/rkYolov8.hpp \
/app/src/rknn/postprocess.h /app/src/rknn/rknn_api.h \
/usr/include/rga/im2d.h /usr/include/rga/im2d_version.h \
/usr/include/rga/im2d_type.h /usr/include/rga/rga.h \
/usr/include/rga/im2d_common.h /usr/include/rga/im2d_buffer.h \
/usr/include/rga/im2d_single.h /usr/include/rga/im2d_task.h \
/usr/include/rga/im2d_mpi.h /usr/include/rga/rga.h \
/app/src/rknn/rknnPool.hpp /app/src/rknn/ThreadPool.hpp \
/usr/include/c++/11/condition_variable /usr/include/c++/11/future \
/usr/include/c++/11/bits/atomic_futex.h \
/app/src/rknn/postprocess.h /app/src/rknn/rknn_api.h /usr/include/im2d.h \
/usr/include/im2d_version.h /usr/include/im2d_type.h /usr/include/rga.h \
/usr/include/im2d_common.h /usr/include/im2d_buffer.h \
/usr/include/im2d_single.h /usr/include/im2d_task.h \
/usr/include/im2d_mpi.h /usr/include/rga.h /app/src/rknn/rknnPool.hpp \
/app/src/rknn/ThreadPool.hpp /usr/include/c++/11/condition_variable \
/usr/include/c++/11/future /usr/include/c++/11/bits/atomic_futex.h \
/usr/include/c++/11/bits/std_thread.h /usr/include/c++/11/queue \
/usr/include/c++/11/deque /usr/include/c++/11/bits/stl_deque.h \
/usr/include/c++/11/bits/deque.tcc /usr/include/c++/11/bits/stl_queue.h \

View File

@ -23,17 +23,16 @@ CMakeFiles/edge_proxy_lib.dir/src/rknn/preprocess.cc.o: \
/usr/include/aarch64-linux-gnu/bits/types/cookie_io_functions_t.h \
/usr/include/aarch64-linux-gnu/bits/stdio_lim.h \
/usr/include/aarch64-linux-gnu/bits/floatn.h \
/usr/include/aarch64-linux-gnu/bits/floatn-common.h \
/usr/include/rga/im2d.h /usr/include/rga/im2d_version.h \
/usr/include/rga/im2d_type.h \
/usr/include/aarch64-linux-gnu/bits/floatn-common.h /usr/include/im2d.h \
/usr/include/im2d_version.h /usr/include/im2d_type.h \
/usr/lib/gcc/aarch64-linux-gnu/11/include/stdint.h /usr/include/stdint.h \
/usr/include/aarch64-linux-gnu/bits/wchar.h \
/usr/include/aarch64-linux-gnu/bits/stdint-intn.h \
/usr/include/aarch64-linux-gnu/bits/stdint-uintn.h \
/usr/include/rga/rga.h /usr/include/rga/im2d_common.h \
/usr/include/rga/im2d_buffer.h /usr/include/rga/im2d_single.h \
/usr/include/rga/im2d_task.h /usr/include/rga/im2d_mpi.h \
/usr/include/rga/rga.h /usr/include/opencv4/opencv2/core/core.hpp \
/usr/include/aarch64-linux-gnu/bits/stdint-uintn.h /usr/include/rga.h \
/usr/include/im2d_common.h /usr/include/im2d_buffer.h \
/usr/include/im2d_single.h /usr/include/im2d_task.h \
/usr/include/im2d_mpi.h /usr/include/rga.h \
/usr/include/opencv4/opencv2/core/core.hpp \
/usr/include/opencv4/opencv2/core.hpp \
/usr/include/opencv4/opencv2/core/cvdef.h \
/usr/include/opencv4/opencv2/core/version.hpp /usr/include/c++/11/limits \

View File

@ -132,12 +132,12 @@ CMakeFiles/edge_proxy_lib.dir/src/rknn/rkYolov5s.cc.o: \
/usr/include/c++/11/bits/stl_vector.h \
/usr/include/c++/11/bits/stl_bvector.h \
/usr/include/c++/11/bits/vector.tcc /app/src/rknn/postprocess.h \
/app/src/rknn/preprocess.h /usr/include/rga/im2d.h \
/usr/include/rga/im2d_version.h /usr/include/rga/im2d_type.h \
/usr/include/rga/rga.h /usr/include/rga/im2d_common.h \
/usr/include/rga/im2d_buffer.h /usr/include/rga/im2d_single.h \
/usr/include/rga/im2d_task.h /usr/include/rga/im2d_mpi.h \
/usr/include/rga/rga.h /usr/include/opencv4/opencv2/core/core.hpp \
/app/src/rknn/preprocess.h /usr/include/im2d.h \
/usr/include/im2d_version.h /usr/include/im2d_type.h /usr/include/rga.h \
/usr/include/im2d_common.h /usr/include/im2d_buffer.h \
/usr/include/im2d_single.h /usr/include/im2d_task.h \
/usr/include/im2d_mpi.h /usr/include/rga.h \
/usr/include/opencv4/opencv2/core/core.hpp \
/usr/include/opencv4/opencv2/core.hpp \
/usr/include/opencv4/opencv2/core/cvdef.h \
/usr/include/opencv4/opencv2/core/version.hpp /usr/include/c++/11/limits \

View File

@ -254,12 +254,11 @@ CMakeFiles/edge_proxy_lib.dir/src/rknn/rkYolov8.cc.o: \
/usr/include/opencv4/opencv2/core/optim.hpp \
/usr/include/opencv4/opencv2/core/ovx.hpp \
/usr/include/opencv4/opencv2/core/cvdef.h /app/src/rknn/postprocess.h \
/app/src/rknn/rknn_api.h /usr/include/rga/im2d.h \
/usr/include/rga/im2d_version.h /usr/include/rga/im2d_type.h \
/usr/include/rga/rga.h /usr/include/rga/im2d_common.h \
/usr/include/rga/im2d_buffer.h /usr/include/rga/im2d_single.h \
/usr/include/rga/im2d_task.h /usr/include/rga/im2d_mpi.h \
/usr/include/rga/rga.h /usr/include/opencv4/opencv2/imgproc/imgproc.hpp \
/app/src/rknn/rknn_api.h /usr/include/im2d.h /usr/include/im2d_version.h \
/usr/include/im2d_type.h /usr/include/rga.h /usr/include/im2d_common.h \
/usr/include/im2d_buffer.h /usr/include/im2d_single.h \
/usr/include/im2d_task.h /usr/include/im2d_mpi.h /usr/include/rga.h \
/usr/include/opencv4/opencv2/imgproc/imgproc.hpp \
/usr/include/opencv4/opencv2/imgproc.hpp \
/usr/include/opencv4/opencv2/imgproc/segmentation.hpp \
/usr/include/c++/11/iostream /usr/include/opencv4/opencv2/dnn.hpp \

View File

@ -499,12 +499,11 @@ CMakeFiles/edge_proxy_lib.dir/src/videoServiceManager/video_service_manager.cc.o
/app/src/algorithm/bytetrack/include/ByteTrack/KalmanFilter.h \
/app/src/algorithm/bytetrack/include/ByteTrack/lapjv.h \
/app/src/algorithm/bytetrack/include/ByteTrack/Object.h \
/app/src/rknn/rkYolov8.hpp /usr/include/rga/im2d.h \
/usr/include/rga/im2d_version.h /usr/include/rga/im2d_type.h \
/usr/include/rga/rga.h /usr/include/rga/im2d_common.h \
/usr/include/rga/im2d_buffer.h /usr/include/rga/im2d_single.h \
/usr/include/rga/im2d_task.h /usr/include/rga/im2d_mpi.h \
/usr/include/rga/rga.h /usr/include/c++/11/fstream \
/app/src/rknn/rkYolov8.hpp /usr/include/im2d.h \
/usr/include/im2d_version.h /usr/include/im2d_type.h /usr/include/rga.h \
/usr/include/im2d_common.h /usr/include/im2d_buffer.h \
/usr/include/im2d_single.h /usr/include/im2d_task.h \
/usr/include/im2d_mpi.h /usr/include/rga.h /usr/include/c++/11/fstream \
/usr/include/aarch64-linux-gnu/c++/11/bits/basic_file.h \
/usr/include/aarch64-linux-gnu/c++/11/bits/c++io.h \
/usr/include/c++/11/bits/fstream.tcc

File diff suppressed because it is too large Load Diff

View File

@ -23,17 +23,15 @@ CMakeFiles/rknn_refactor_test.dir/src/rknn_test/preprocess.cc.o: \
/usr/include/aarch64-linux-gnu/bits/types/cookie_io_functions_t.h \
/usr/include/aarch64-linux-gnu/bits/stdio_lim.h \
/usr/include/aarch64-linux-gnu/bits/floatn.h \
/usr/include/aarch64-linux-gnu/bits/floatn-common.h \
/usr/include/rga/im2d.h /usr/include/rga/im2d_version.h \
/usr/include/rga/im2d_type.h \
/usr/include/aarch64-linux-gnu/bits/floatn-common.h /usr/include/im2d.h \
/usr/include/im2d_version.h /usr/include/im2d_type.h \
/usr/lib/gcc/aarch64-linux-gnu/11/include/stdint.h /usr/include/stdint.h \
/usr/include/aarch64-linux-gnu/bits/wchar.h \
/usr/include/aarch64-linux-gnu/bits/stdint-intn.h \
/usr/include/aarch64-linux-gnu/bits/stdint-uintn.h \
/usr/include/rga/rga.h /usr/include/rga/im2d_common.h \
/usr/include/rga/im2d_buffer.h /usr/include/rga/im2d_single.h \
/usr/include/rga/im2d_task.h /usr/include/rga/im2d_mpi.h \
/usr/include/opencv4/opencv2/core/core.hpp \
/usr/include/aarch64-linux-gnu/bits/stdint-uintn.h /usr/include/rga.h \
/usr/include/im2d_common.h /usr/include/im2d_buffer.h \
/usr/include/im2d_single.h /usr/include/im2d_task.h \
/usr/include/im2d_mpi.h /usr/include/opencv4/opencv2/core/core.hpp \
/usr/include/opencv4/opencv2/core.hpp \
/usr/include/opencv4/opencv2/core/cvdef.h \
/usr/include/opencv4/opencv2/core/version.hpp /usr/include/c++/11/limits \
@ -260,5 +258,5 @@ CMakeFiles/rknn_refactor_test.dir/src/rknn_test/preprocess.cc.o: \
/usr/include/opencv4/opencv2/core/cvdef.h \
/usr/include/opencv4/opencv2/imgcodecs.hpp \
/usr/include/opencv4/opencv2/imgproc.hpp \
/usr/include/opencv4/opencv2/imgproc/segmentation.hpp \
/usr/include/rga/rga.h /app/src/rknn_test/postprocess.h
/usr/include/opencv4/opencv2/imgproc/segmentation.hpp /usr/include/rga.h \
/app/src/rknn_test/postprocess.h

View File

@ -268,9 +268,8 @@ CMakeFiles/rknn_refactor_test.dir/src/rknn_test/rkYolov5s.cc.o: \
/usr/include/opencv4/opencv2/imgproc/segmentation.hpp \
/app/src/rknn/coreNum.hpp /app/src/rknn/rknn_api.h \
/app/src/rknn/rknn_api.h /app/src/rknn_test/preprocess.h \
/usr/include/rga/im2d.h /usr/include/rga/im2d_version.h \
/usr/include/rga/im2d_type.h /usr/include/rga/rga.h \
/usr/include/rga/im2d_common.h /usr/include/rga/im2d_buffer.h \
/usr/include/rga/im2d_single.h /usr/include/rga/im2d_task.h \
/usr/include/rga/im2d_mpi.h /app/src/rknn_test/postprocess.h \
/usr/include/rga/rga.h
/usr/include/im2d.h /usr/include/im2d_version.h /usr/include/im2d_type.h \
/usr/include/rga.h /usr/include/im2d_common.h /usr/include/im2d_buffer.h \
/usr/include/im2d_single.h /usr/include/im2d_task.h \
/usr/include/im2d_mpi.h /app/src/rknn_test/postprocess.h \
/usr/include/rga.h

View File

@ -1,6 +1,7 @@
CMakeFiles/rknn_refactor_test.dir/src/rknn_test/rkYolov8.cc.o: \
/app/src/rknn_test/rkYolov8.cc /usr/include/stdc-predef.h \
/app/src/rknn_test/rkYolov8.hpp /usr/include/c++/11/string \
/app/src/rknn_test/rkYolov8.hpp /usr/include/c++/11/memory \
/usr/include/c++/11/bits/stl_algobase.h \
/usr/include/aarch64-linux-gnu/c++/11/bits/c++config.h \
/usr/include/aarch64-linux-gnu/c++/11/bits/os_defines.h \
/usr/include/features.h /usr/include/features-time64.h \
@ -12,10 +13,6 @@ CMakeFiles/rknn_refactor_test.dir/src/rknn_test/rkYolov8.cc.o: \
/usr/include/aarch64-linux-gnu/gnu/stubs-lp64.h \
/usr/include/aarch64-linux-gnu/c++/11/bits/cpu_defines.h \
/usr/include/c++/11/pstl/pstl_config.h \
/usr/include/c++/11/bits/stringfwd.h \
/usr/include/c++/11/bits/memoryfwd.h \
/usr/include/c++/11/bits/char_traits.h \
/usr/include/c++/11/bits/stl_algobase.h \
/usr/include/c++/11/bits/functexcept.h \
/usr/include/c++/11/bits/exception_defines.h \
/usr/include/c++/11/bits/cpp_type_traits.h \
@ -30,14 +27,43 @@ CMakeFiles/rknn_refactor_test.dir/src/rknn_test/rkYolov8.cc.o: \
/usr/include/c++/11/bits/stl_iterator.h \
/usr/include/c++/11/bits/ptr_traits.h /usr/include/c++/11/debug/debug.h \
/usr/include/c++/11/bits/predefined_ops.h \
/usr/include/c++/11/bits/postypes.h /usr/include/c++/11/cwchar \
/usr/include/wchar.h \
/usr/include/c++/11/bits/allocator.h \
/usr/include/aarch64-linux-gnu/c++/11/bits/c++allocator.h \
/usr/include/c++/11/ext/new_allocator.h /usr/include/c++/11/new \
/usr/include/c++/11/bits/exception.h \
/usr/include/c++/11/bits/memoryfwd.h \
/usr/include/c++/11/bits/stl_construct.h \
/usr/include/c++/11/bits/stl_uninitialized.h \
/usr/include/c++/11/ext/alloc_traits.h \
/usr/include/c++/11/bits/alloc_traits.h \
/usr/include/c++/11/bits/stl_tempbuf.h \
/usr/include/c++/11/bits/stl_raw_storage_iter.h \
/usr/include/c++/11/bits/align.h /usr/include/c++/11/bit \
/usr/lib/gcc/aarch64-linux-gnu/11/include/stdint.h /usr/include/stdint.h \
/usr/include/aarch64-linux-gnu/bits/libc-header-start.h \
/usr/include/aarch64-linux-gnu/bits/types.h \
/usr/include/aarch64-linux-gnu/bits/typesizes.h \
/usr/include/aarch64-linux-gnu/bits/time64.h \
/usr/include/aarch64-linux-gnu/bits/wchar.h \
/usr/include/aarch64-linux-gnu/bits/stdint-intn.h \
/usr/include/aarch64-linux-gnu/bits/stdint-uintn.h \
/usr/include/c++/11/bits/uses_allocator.h \
/usr/include/c++/11/bits/unique_ptr.h /usr/include/c++/11/utility \
/usr/include/c++/11/bits/stl_relops.h \
/usr/include/c++/11/initializer_list /usr/include/c++/11/tuple \
/usr/include/c++/11/array /usr/include/c++/11/bits/range_access.h \
/usr/include/c++/11/bits/invoke.h \
/usr/include/c++/11/bits/stl_function.h \
/usr/include/c++/11/backward/binders.h \
/usr/include/c++/11/bits/functional_hash.h \
/usr/include/c++/11/bits/hash_bytes.h \
/usr/include/c++/11/bits/shared_ptr.h /usr/include/c++/11/iosfwd \
/usr/include/c++/11/bits/stringfwd.h /usr/include/c++/11/bits/postypes.h \
/usr/include/c++/11/cwchar /usr/include/wchar.h \
/usr/include/aarch64-linux-gnu/bits/floatn.h \
/usr/include/aarch64-linux-gnu/bits/floatn-common.h \
/usr/lib/gcc/aarch64-linux-gnu/11/include/stddef.h \
/usr/lib/gcc/aarch64-linux-gnu/11/include/stdarg.h \
/usr/include/aarch64-linux-gnu/bits/wchar.h \
/usr/include/aarch64-linux-gnu/bits/types/wint_t.h \
/usr/include/aarch64-linux-gnu/bits/types/mbstate_t.h \
/usr/include/aarch64-linux-gnu/bits/types/__mbstate_t.h \
@ -45,37 +71,18 @@ CMakeFiles/rknn_refactor_test.dir/src/rknn_test/rkYolov8.cc.o: \
/usr/include/aarch64-linux-gnu/bits/types/FILE.h \
/usr/include/aarch64-linux-gnu/bits/types/locale_t.h \
/usr/include/aarch64-linux-gnu/bits/types/__locale_t.h \
/usr/include/c++/11/cstdint \
/usr/lib/gcc/aarch64-linux-gnu/11/include/stdint.h /usr/include/stdint.h \
/usr/include/aarch64-linux-gnu/bits/types.h \
/usr/include/aarch64-linux-gnu/bits/typesizes.h \
/usr/include/aarch64-linux-gnu/bits/time64.h \
/usr/include/aarch64-linux-gnu/bits/stdint-intn.h \
/usr/include/aarch64-linux-gnu/bits/stdint-uintn.h \
/usr/include/c++/11/bits/allocator.h \
/usr/include/aarch64-linux-gnu/c++/11/bits/c++allocator.h \
/usr/include/c++/11/ext/new_allocator.h /usr/include/c++/11/new \
/usr/include/c++/11/bits/exception.h \
/usr/include/c++/11/bits/localefwd.h \
/usr/include/aarch64-linux-gnu/c++/11/bits/c++locale.h \
/usr/include/c++/11/clocale /usr/include/locale.h \
/usr/include/aarch64-linux-gnu/bits/locale.h /usr/include/c++/11/iosfwd \
/usr/include/c++/11/cctype /usr/include/ctype.h \
/usr/include/aarch64-linux-gnu/bits/endian.h \
/usr/include/aarch64-linux-gnu/bits/endianness.h \
/usr/include/c++/11/bits/ostream_insert.h \
/usr/include/c++/11/bits/cxxabi_forced.h \
/usr/include/c++/11/bits/stl_function.h \
/usr/include/c++/11/backward/binders.h \
/usr/include/c++/11/bits/range_access.h \
/usr/include/c++/11/initializer_list \
/usr/include/c++/11/bits/basic_string.h \
/usr/include/c++/11/bits/shared_ptr_base.h /usr/include/c++/11/typeinfo \
/usr/include/c++/11/bits/allocated_ptr.h \
/usr/include/c++/11/bits/refwrap.h \
/usr/include/c++/11/ext/aligned_buffer.h \
/usr/include/c++/11/ext/atomicity.h \
/usr/include/aarch64-linux-gnu/c++/11/bits/gthr.h \
/usr/include/aarch64-linux-gnu/c++/11/bits/gthr-default.h \
/usr/include/pthread.h /usr/include/sched.h \
/usr/include/aarch64-linux-gnu/bits/types/time_t.h \
/usr/include/aarch64-linux-gnu/bits/types/struct_timespec.h \
/usr/include/aarch64-linux-gnu/bits/endian.h \
/usr/include/aarch64-linux-gnu/bits/endianness.h \
/usr/include/aarch64-linux-gnu/bits/sched.h \
/usr/include/aarch64-linux-gnu/bits/types/struct_sched_param.h \
/usr/include/aarch64-linux-gnu/bits/cpu-set.h /usr/include/time.h \
@ -99,14 +106,39 @@ CMakeFiles/rknn_refactor_test.dir/src/rknn_test/rkYolov8.cc.o: \
/usr/include/aarch64-linux-gnu/bits/pthread_stack_min-dynamic.h \
/usr/include/aarch64-linux-gnu/c++/11/bits/atomic_word.h \
/usr/include/aarch64-linux-gnu/sys/single_threaded.h \
/usr/include/c++/11/ext/alloc_traits.h \
/usr/include/c++/11/bits/alloc_traits.h \
/usr/include/c++/11/bits/stl_construct.h /usr/include/c++/11/string_view \
/usr/include/c++/11/bits/functional_hash.h \
/usr/include/c++/11/bits/hash_bytes.h \
/usr/include/c++/11/bits/string_view.tcc \
/usr/include/c++/11/ext/string_conversions.h /usr/include/c++/11/cstdlib \
/usr/include/stdlib.h /usr/include/aarch64-linux-gnu/bits/waitflags.h \
/usr/include/c++/11/ext/concurrence.h /usr/include/c++/11/exception \
/usr/include/c++/11/bits/exception_ptr.h \
/usr/include/c++/11/bits/cxxabi_init_exception.h \
/usr/include/c++/11/bits/nested_exception.h \
/usr/include/c++/11/bits/shared_ptr_atomic.h \
/usr/include/c++/11/bits/atomic_base.h \
/usr/include/c++/11/bits/atomic_lockfree_defines.h \
/usr/include/c++/11/backward/auto_ptr.h \
/usr/include/c++/11/pstl/glue_memory_defs.h \
/usr/include/c++/11/pstl/execution_defs.h \
/usr/include/opencv4/opencv2/opencv.hpp \
/usr/include/opencv4/opencv2/opencv_modules.hpp \
/usr/include/opencv4/opencv2/core.hpp \
/usr/include/opencv4/opencv2/core/cvdef.h \
/usr/include/opencv4/opencv2/core/version.hpp /usr/include/c++/11/limits \
/usr/include/opencv4/opencv2/core/hal/interface.h \
/usr/include/c++/11/cstddef /usr/include/c++/11/cstdint \
/usr/include/opencv4/opencv2/core/cv_cpu_dispatch.h \
/usr/lib/gcc/aarch64-linux-gnu/11/include/arm_neon.h \
/usr/lib/gcc/aarch64-linux-gnu/11/include/arm_fp16.h \
/usr/lib/gcc/aarch64-linux-gnu/11/include/arm_bf16.h \
/usr/include/opencv4/opencv2/core/base.hpp /usr/include/c++/11/climits \
/usr/lib/gcc/aarch64-linux-gnu/11/include/limits.h \
/usr/lib/gcc/aarch64-linux-gnu/11/include/syslimits.h \
/usr/include/limits.h /usr/include/aarch64-linux-gnu/bits/posix1_lim.h \
/usr/include/aarch64-linux-gnu/bits/local_lim.h \
/usr/include/linux/limits.h \
/usr/include/aarch64-linux-gnu/bits/posix2_lim.h \
/usr/include/aarch64-linux-gnu/bits/xopen_lim.h \
/usr/include/aarch64-linux-gnu/bits/uio_lim.h \
/usr/include/c++/11/algorithm /usr/include/c++/11/bits/stl_algo.h \
/usr/include/c++/11/cstdlib /usr/include/stdlib.h \
/usr/include/aarch64-linux-gnu/bits/waitflags.h \
/usr/include/aarch64-linux-gnu/bits/waitstatus.h \
/usr/include/aarch64-linux-gnu/sys/types.h /usr/include/endian.h \
/usr/include/aarch64-linux-gnu/bits/byteswap.h \
@ -115,7 +147,34 @@ CMakeFiles/rknn_refactor_test.dir/src/rknn_test/rkYolov8.cc.o: \
/usr/include/aarch64-linux-gnu/bits/select.h \
/usr/include/aarch64-linux-gnu/bits/types/sigset_t.h \
/usr/include/alloca.h /usr/include/aarch64-linux-gnu/bits/stdlib-float.h \
/usr/include/c++/11/bits/std_abs.h /usr/include/c++/11/cstdio \
/usr/include/c++/11/bits/std_abs.h \
/usr/include/c++/11/bits/algorithmfwd.h \
/usr/include/c++/11/bits/stl_heap.h \
/usr/include/c++/11/bits/uniform_int_dist.h \
/usr/include/c++/11/pstl/glue_algorithm_defs.h \
/usr/include/c++/11/functional /usr/include/c++/11/bits/std_function.h \
/usr/include/c++/11/unordered_map /usr/include/c++/11/bits/hashtable.h \
/usr/include/c++/11/bits/hashtable_policy.h \
/usr/include/c++/11/bits/enable_special_members.h \
/usr/include/c++/11/bits/node_handle.h \
/usr/include/c++/11/bits/unordered_map.h \
/usr/include/c++/11/bits/erase_if.h /usr/include/c++/11/vector \
/usr/include/c++/11/bits/stl_vector.h \
/usr/include/c++/11/bits/stl_bvector.h \
/usr/include/c++/11/bits/vector.tcc \
/usr/include/opencv4/opencv2/core/cvstd.hpp /usr/include/c++/11/cstring \
/usr/include/string.h /usr/include/strings.h /usr/include/c++/11/cctype \
/usr/include/ctype.h /usr/include/c++/11/string \
/usr/include/c++/11/bits/char_traits.h \
/usr/include/c++/11/bits/localefwd.h \
/usr/include/aarch64-linux-gnu/c++/11/bits/c++locale.h \
/usr/include/c++/11/clocale /usr/include/locale.h \
/usr/include/aarch64-linux-gnu/bits/locale.h \
/usr/include/c++/11/bits/ostream_insert.h \
/usr/include/c++/11/bits/cxxabi_forced.h \
/usr/include/c++/11/bits/basic_string.h /usr/include/c++/11/string_view \
/usr/include/c++/11/bits/string_view.tcc \
/usr/include/c++/11/ext/string_conversions.h /usr/include/c++/11/cstdio \
/usr/include/stdio.h \
/usr/include/aarch64-linux-gnu/bits/types/__fpos_t.h \
/usr/include/aarch64-linux-gnu/bits/types/__fpos64_t.h \
@ -128,59 +187,7 @@ CMakeFiles/rknn_refactor_test.dir/src/rknn_test/rkYolov8.cc.o: \
/usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \
/usr/include/aarch64-linux-gnu/bits/types/error_t.h \
/usr/include/c++/11/bits/charconv.h \
/usr/include/c++/11/bits/basic_string.tcc /usr/include/c++/11/vector \
/usr/include/c++/11/bits/stl_uninitialized.h \
/usr/include/c++/11/bits/stl_vector.h \
/usr/include/c++/11/bits/stl_bvector.h \
/usr/include/c++/11/bits/vector.tcc /usr/include/rga/im2d.h \
/usr/include/rga/im2d_version.h /usr/include/rga/im2d_type.h \
/usr/include/rga/rga.h /usr/include/rga/im2d_common.h \
/usr/include/rga/im2d_buffer.h /usr/include/rga/im2d_single.h \
/usr/include/rga/im2d_task.h /usr/include/rga/im2d_mpi.h \
/usr/include/opencv4/opencv2/core/core.hpp \
/usr/include/opencv4/opencv2/core.hpp \
/usr/include/opencv4/opencv2/core/cvdef.h \
/usr/include/opencv4/opencv2/core/version.hpp /usr/include/c++/11/limits \
/usr/include/opencv4/opencv2/core/hal/interface.h \
/usr/include/c++/11/cstddef \
/usr/include/opencv4/opencv2/core/cv_cpu_dispatch.h \
/usr/lib/gcc/aarch64-linux-gnu/11/include/arm_neon.h \
/usr/lib/gcc/aarch64-linux-gnu/11/include/arm_fp16.h \
/usr/lib/gcc/aarch64-linux-gnu/11/include/arm_bf16.h \
/usr/include/c++/11/array /usr/include/c++/11/utility \
/usr/include/c++/11/bits/stl_relops.h \
/usr/include/opencv4/opencv2/core/base.hpp \
/usr/include/opencv4/opencv2/opencv_modules.hpp \
/usr/include/c++/11/climits \
/usr/lib/gcc/aarch64-linux-gnu/11/include/limits.h \
/usr/lib/gcc/aarch64-linux-gnu/11/include/syslimits.h \
/usr/include/limits.h /usr/include/aarch64-linux-gnu/bits/posix1_lim.h \
/usr/include/aarch64-linux-gnu/bits/local_lim.h \
/usr/include/linux/limits.h \
/usr/include/aarch64-linux-gnu/bits/posix2_lim.h \
/usr/include/aarch64-linux-gnu/bits/xopen_lim.h \
/usr/include/aarch64-linux-gnu/bits/uio_lim.h \
/usr/include/c++/11/algorithm /usr/include/c++/11/bits/stl_algo.h \
/usr/include/c++/11/bits/algorithmfwd.h \
/usr/include/c++/11/bits/stl_heap.h \
/usr/include/c++/11/bits/stl_tempbuf.h \
/usr/include/c++/11/bits/uniform_int_dist.h \
/usr/include/c++/11/pstl/glue_algorithm_defs.h \
/usr/include/c++/11/functional /usr/include/c++/11/tuple \
/usr/include/c++/11/bits/uses_allocator.h \
/usr/include/c++/11/bits/invoke.h /usr/include/c++/11/bits/refwrap.h \
/usr/include/c++/11/bits/std_function.h /usr/include/c++/11/typeinfo \
/usr/include/c++/11/unordered_map \
/usr/include/c++/11/ext/aligned_buffer.h \
/usr/include/c++/11/bits/hashtable.h \
/usr/include/c++/11/bits/hashtable_policy.h \
/usr/include/c++/11/bits/enable_special_members.h \
/usr/include/c++/11/bits/node_handle.h \
/usr/include/c++/11/bits/unordered_map.h \
/usr/include/c++/11/bits/erase_if.h \
/usr/include/c++/11/pstl/execution_defs.h \
/usr/include/opencv4/opencv2/core/cvstd.hpp /usr/include/c++/11/cstring \
/usr/include/string.h /usr/include/strings.h /usr/include/c++/11/cmath \
/usr/include/c++/11/bits/basic_string.tcc /usr/include/c++/11/cmath \
/usr/include/math.h /usr/include/aarch64-linux-gnu/bits/math-vector.h \
/usr/include/aarch64-linux-gnu/bits/libm-simd-decl-stubs.h \
/usr/include/aarch64-linux-gnu/bits/flt-eval-method.h \
@ -203,22 +210,6 @@ CMakeFiles/rknn_refactor_test.dir/src/rknn_test/rkYolov8.cc.o: \
/usr/include/c++/11/tr1/poly_laguerre.tcc \
/usr/include/c++/11/tr1/riemann_zeta.tcc \
/usr/include/opencv4/opencv2/core/cvstd_wrapper.hpp \
/usr/include/c++/11/memory \
/usr/include/c++/11/bits/stl_raw_storage_iter.h \
/usr/include/c++/11/bits/align.h /usr/include/c++/11/bit \
/usr/include/c++/11/bits/unique_ptr.h \
/usr/include/c++/11/bits/shared_ptr.h \
/usr/include/c++/11/bits/shared_ptr_base.h \
/usr/include/c++/11/bits/allocated_ptr.h \
/usr/include/c++/11/ext/concurrence.h /usr/include/c++/11/exception \
/usr/include/c++/11/bits/exception_ptr.h \
/usr/include/c++/11/bits/cxxabi_init_exception.h \
/usr/include/c++/11/bits/nested_exception.h \
/usr/include/c++/11/bits/shared_ptr_atomic.h \
/usr/include/c++/11/bits/atomic_base.h \
/usr/include/c++/11/bits/atomic_lockfree_defines.h \
/usr/include/c++/11/backward/auto_ptr.h \
/usr/include/c++/11/pstl/glue_memory_defs.h \
/usr/include/opencv4/opencv2/core/neon_utils.hpp \
/usr/include/opencv4/opencv2/core/vsx_utils.hpp /usr/include/assert.h \
/usr/include/opencv4/opencv2/core/check.hpp \
@ -261,9 +252,13 @@ CMakeFiles/rknn_refactor_test.dir/src/rknn_test/rkYolov8.cc.o: \
/usr/include/c++/11/bits/unique_lock.h \
/usr/include/opencv4/opencv2/core/optim.hpp \
/usr/include/opencv4/opencv2/core/ovx.hpp \
/usr/include/opencv4/opencv2/core/cvdef.h /usr/include/rga/rga.h \
/app/src/rknn/rknn_api.h /app/src/rknn_test/postprocess.h \
/usr/include/c++/11/stdlib.h /usr/include/c++/11/iostream \
/usr/include/opencv4/opencv2/core/cvdef.h \
/usr/include/opencv4/opencv2/calib3d.hpp \
/usr/include/opencv4/opencv2/features2d.hpp \
/usr/include/opencv4/opencv2/flann/miniflann.hpp \
/usr/include/opencv4/opencv2/flann/defines.h \
/usr/include/opencv4/opencv2/flann/config.h \
/usr/include/opencv4/opencv2/core/affine.hpp \
/usr/include/opencv4/opencv2/dnn.hpp \
/usr/include/opencv4/opencv2/dnn/dnn.hpp \
/usr/include/opencv4/opencv2/core/async.hpp \
@ -274,9 +269,119 @@ CMakeFiles/rknn_refactor_test.dir/src/rknn_test/rkYolov8.cc.o: \
/usr/include/opencv4/opencv2/dnn/layer.hpp \
/usr/include/opencv4/opencv2/dnn/dnn.inl.hpp \
/usr/include/opencv4/opencv2/dnn/utils/inference_engine.hpp \
/usr/include/opencv4/opencv2/dnn/dnn.hpp /usr/include/c++/11/set \
/usr/include/opencv4/opencv2/dnn/dnn.hpp \
/usr/include/opencv4/opencv2/flann.hpp \
/usr/include/opencv4/opencv2/flann/flann_base.hpp \
/usr/include/opencv4/opencv2/flann/general.h \
/usr/include/opencv4/opencv2/flann/matrix.h \
/usr/include/opencv4/opencv2/flann/params.h \
/usr/include/opencv4/opencv2/flann/any.h \
/usr/include/opencv4/opencv2/flann/defines.h \
/usr/include/c++/11/iostream /usr/include/opencv4/opencv2/flann/saving.h \
/usr/include/opencv4/opencv2/flann/nn_index.h \
/usr/include/opencv4/opencv2/flann/result_set.h /usr/include/c++/11/set \
/usr/include/c++/11/bits/stl_set.h \
/usr/include/c++/11/bits/stl_multiset.h \
/usr/include/opencv4/opencv2/imgproc/imgproc.hpp \
/usr/include/opencv4/opencv2/flann/all_indices.h \
/usr/include/opencv4/opencv2/flann/kdtree_index.h \
/usr/include/opencv4/opencv2/flann/dynamic_bitset.h \
/usr/include/opencv4/opencv2/flann/dist.h \
/usr/include/opencv4/opencv2/flann/heap.h \
/usr/include/opencv4/opencv2/flann/allocator.h \
/usr/include/c++/11/stdlib.h /usr/include/opencv4/opencv2/flann/random.h \
/usr/include/opencv4/opencv2/flann/kdtree_single_index.h \
/usr/include/opencv4/opencv2/flann/kmeans_index.h \
/usr/include/opencv4/opencv2/flann/logger.h \
/usr/include/opencv4/opencv2/flann/composite_index.h \
/usr/include/opencv4/opencv2/flann/linear_index.h \
/usr/include/opencv4/opencv2/flann/hierarchical_clustering_index.h \
/usr/include/opencv4/opencv2/flann/lsh_index.h \
/usr/include/opencv4/opencv2/flann/lsh_table.h \
/usr/include/c++/11/iomanip /usr/include/c++/11/locale \
/usr/include/c++/11/bits/locale_facets_nonio.h \
/usr/include/aarch64-linux-gnu/c++/11/bits/time_members.h \
/usr/include/aarch64-linux-gnu/c++/11/bits/messages_members.h \
/usr/include/libintl.h /usr/include/c++/11/bits/codecvt.h \
/usr/include/c++/11/bits/locale_facets_nonio.tcc \
/usr/include/c++/11/bits/locale_conv.h \
/usr/include/c++/11/bits/quoted_string.h /usr/include/c++/11/math.h \
/usr/include/opencv4/opencv2/flann/autotuned_index.h \
/usr/include/opencv4/opencv2/flann/ground_truth.h \
/usr/include/opencv4/opencv2/flann/index_testing.h \
/usr/include/opencv4/opencv2/flann/timer.h \
/usr/include/opencv4/opencv2/flann/sampling.h \
/usr/include/opencv4/opencv2/highgui.hpp \
/usr/include/opencv4/opencv2/imgcodecs.hpp \
/usr/include/opencv4/opencv2/videoio.hpp \
/usr/include/opencv4/opencv2/imgproc.hpp \
/usr/include/opencv4/opencv2/imgproc/segmentation.hpp
/usr/include/opencv4/opencv2/imgproc/segmentation.hpp \
/usr/include/opencv4/opencv2/ml.hpp \
/usr/include/opencv4/opencv2/ml/ml.inl.hpp \
/usr/include/opencv4/opencv2/objdetect.hpp \
/usr/include/opencv4/opencv2/objdetect/detection_based_tracker.hpp \
/usr/include/opencv4/opencv2/objdetect/face.hpp \
/usr/include/opencv4/opencv2/photo.hpp \
/usr/include/opencv4/opencv2/stitching.hpp \
/usr/include/opencv4/opencv2/stitching/warpers.hpp \
/usr/include/opencv4/opencv2/stitching/detail/warpers.hpp \
/usr/include/opencv4/opencv2/core/cuda.hpp \
/usr/include/opencv4/opencv2/core/cuda_types.hpp \
/usr/include/opencv4/opencv2/core/cuda.inl.hpp \
/usr/include/opencv4/opencv2/stitching/detail/warpers_inl.hpp \
/usr/include/opencv4/opencv2/stitching/detail/warpers.hpp \
/usr/include/opencv4/opencv2/stitching/detail/matchers.hpp \
/usr/include/opencv4/opencv2/stitching/detail/motion_estimators.hpp \
/usr/include/opencv4/opencv2/stitching/detail/matchers.hpp \
/usr/include/opencv4/opencv2/stitching/detail/util.hpp \
/usr/include/c++/11/list /usr/include/c++/11/bits/stl_list.h \
/usr/include/c++/11/bits/list.tcc \
/usr/include/opencv4/opencv2/stitching/detail/util_inl.hpp \
/usr/include/c++/11/queue /usr/include/c++/11/deque \
/usr/include/c++/11/bits/stl_deque.h /usr/include/c++/11/bits/deque.tcc \
/usr/include/c++/11/bits/stl_queue.h \
/usr/include/opencv4/opencv2/stitching/detail/camera.hpp \
/usr/include/opencv4/opencv2/stitching/detail/exposure_compensate.hpp \
/usr/include/opencv4/opencv2/stitching/detail/seam_finders.hpp \
/usr/include/opencv4/opencv2/stitching/detail/blenders.hpp \
/usr/include/opencv4/opencv2/stitching/detail/camera.hpp \
/usr/include/opencv4/opencv2/video.hpp \
/usr/include/opencv4/opencv2/video/tracking.hpp \
/usr/include/opencv4/opencv2/video/background_segm.hpp \
/app/src/rknn/rknn_api.h /app/src/rknn_test/postprocess.h \
/app/src/rknn_test/dma_allocator.hpp /usr/include/fcntl.h \
/usr/include/aarch64-linux-gnu/bits/fcntl.h \
/usr/include/aarch64-linux-gnu/bits/fcntl-linux.h \
/usr/include/aarch64-linux-gnu/bits/types/struct_iovec.h \
/usr/include/linux/falloc.h /usr/include/aarch64-linux-gnu/bits/stat.h \
/usr/include/aarch64-linux-gnu/bits/struct_stat.h /usr/include/im2d.h \
/usr/include/im2d_version.h /usr/include/im2d_type.h /usr/include/rga.h \
/usr/include/im2d_common.h /usr/include/im2d_buffer.h \
/usr/include/im2d_single.h /usr/include/im2d_task.h \
/usr/include/im2d_mpi.h /usr/include/linux/types.h \
/usr/include/aarch64-linux-gnu/asm/types.h \
/usr/include/asm-generic/types.h /usr/include/asm-generic/int-ll64.h \
/usr/include/aarch64-linux-gnu/asm/bitsperlong.h \
/usr/include/asm-generic/bitsperlong.h /usr/include/linux/posix_types.h \
/usr/include/linux/stddef.h \
/usr/include/aarch64-linux-gnu/asm/posix_types.h \
/usr/include/asm-generic/posix_types.h /usr/include/rga.h \
/usr/include/aarch64-linux-gnu/sys/ioctl.h \
/usr/include/aarch64-linux-gnu/bits/ioctls.h \
/usr/include/aarch64-linux-gnu/asm/ioctls.h \
/usr/include/asm-generic/ioctls.h /usr/include/linux/ioctl.h \
/usr/include/aarch64-linux-gnu/asm/ioctl.h \
/usr/include/asm-generic/ioctl.h \
/usr/include/aarch64-linux-gnu/bits/ioctl-types.h \
/usr/include/aarch64-linux-gnu/sys/ttydefaults.h \
/usr/include/aarch64-linux-gnu/sys/mman.h \
/usr/include/aarch64-linux-gnu/bits/mman.h \
/usr/include/aarch64-linux-gnu/bits/mman-map-flags-generic.h \
/usr/include/aarch64-linux-gnu/bits/mman-linux.h \
/usr/include/aarch64-linux-gnu/bits/mman-shared.h /usr/include/unistd.h \
/usr/include/aarch64-linux-gnu/bits/posix_opt.h \
/usr/include/aarch64-linux-gnu/bits/environments.h \
/usr/include/aarch64-linux-gnu/bits/confname.h \
/usr/include/aarch64-linux-gnu/bits/getopt_posix.h \
/usr/include/aarch64-linux-gnu/bits/getopt_core.h \
/usr/include/aarch64-linux-gnu/bits/unistd_ext.h \
/usr/include/linux/close_range.h

View File

@ -147,12 +147,7 @@ CMakeFiles/rknn_refactor_test.dir/src/rknn_test/video_service.cc.o: \
/usr/include/c++/11/bits/stl_relops.h /usr/include/c++/11/tuple \
/usr/include/c++/11/array /usr/include/c++/11/bits/uses_allocator.h \
/usr/include/c++/11/ext/aligned_buffer.h \
/usr/include/c++/11/ext/concurrence.h /usr/include/c++/11/map \
/usr/include/c++/11/bits/stl_tree.h \
/usr/include/c++/11/bits/node_handle.h \
/usr/include/c++/11/bits/stl_map.h \
/usr/include/c++/11/bits/stl_multimap.h \
/usr/include/c++/11/bits/erase_if.h /usr/include/c++/11/memory \
/usr/include/c++/11/ext/concurrence.h /usr/include/c++/11/memory \
/usr/include/c++/11/bits/stl_uninitialized.h \
/usr/include/c++/11/bits/stl_tempbuf.h \
/usr/include/c++/11/bits/stl_raw_storage_iter.h \
@ -161,28 +156,8 @@ CMakeFiles/rknn_refactor_test.dir/src/rknn_test/video_service.cc.o: \
/usr/include/c++/11/backward/auto_ptr.h \
/usr/include/c++/11/pstl/glue_memory_defs.h \
/usr/include/c++/11/pstl/execution_defs.h /usr/include/c++/11/mutex \
/usr/include/opencv4/opencv2/core/core.hpp \
/usr/include/opencv4/opencv2/core.hpp \
/usr/include/opencv4/opencv2/core/cvdef.h \
/usr/include/opencv4/opencv2/core/version.hpp \
/usr/include/opencv4/opencv2/core/hal/interface.h \
/usr/include/c++/11/cstddef \
/usr/include/opencv4/opencv2/core/cv_cpu_dispatch.h \
/usr/lib/gcc/aarch64-linux-gnu/11/include/arm_neon.h \
/usr/lib/gcc/aarch64-linux-gnu/11/include/arm_fp16.h \
/usr/lib/gcc/aarch64-linux-gnu/11/include/arm_bf16.h \
/usr/include/opencv4/opencv2/core/base.hpp \
/usr/include/opencv4/opencv2/opencv_modules.hpp \
/usr/include/c++/11/climits \
/usr/lib/gcc/aarch64-linux-gnu/11/include/limits.h \
/usr/lib/gcc/aarch64-linux-gnu/11/include/syslimits.h \
/usr/include/limits.h /usr/include/aarch64-linux-gnu/bits/posix1_lim.h \
/usr/include/aarch64-linux-gnu/bits/local_lim.h \
/usr/include/linux/limits.h \
/usr/include/aarch64-linux-gnu/bits/posix2_lim.h \
/usr/include/aarch64-linux-gnu/bits/xopen_lim.h \
/usr/include/aarch64-linux-gnu/bits/uio_lim.h \
/usr/include/c++/11/algorithm /usr/include/c++/11/bits/stl_algo.h \
/app/src/vendor/nlohmann/json.hpp /usr/include/c++/11/algorithm \
/usr/include/c++/11/bits/stl_algo.h \
/usr/include/c++/11/bits/algorithmfwd.h \
/usr/include/c++/11/bits/stl_heap.h \
/usr/include/c++/11/bits/uniform_int_dist.h \
@ -191,13 +166,24 @@ CMakeFiles/rknn_refactor_test.dir/src/rknn_test/video_service.cc.o: \
/usr/include/c++/11/unordered_map /usr/include/c++/11/bits/hashtable.h \
/usr/include/c++/11/bits/hashtable_policy.h \
/usr/include/c++/11/bits/enable_special_members.h \
/usr/include/c++/11/bits/unordered_map.h /usr/include/c++/11/vector \
/usr/include/c++/11/bits/node_handle.h \
/usr/include/c++/11/bits/unordered_map.h \
/usr/include/c++/11/bits/erase_if.h /usr/include/c++/11/vector \
/usr/include/c++/11/bits/stl_vector.h \
/usr/include/c++/11/bits/stl_bvector.h \
/usr/include/c++/11/bits/vector.tcc \
/usr/include/opencv4/opencv2/core/cvstd.hpp /usr/include/c++/11/cstring \
/usr/include/string.h /usr/include/strings.h /usr/include/c++/11/cmath \
/usr/include/math.h /usr/include/aarch64-linux-gnu/bits/math-vector.h \
/usr/include/c++/11/bits/vector.tcc /usr/include/c++/11/cstddef \
/usr/include/c++/11/iterator /usr/include/c++/11/bits/stream_iterator.h \
/usr/include/c++/11/bits/streambuf_iterator.h \
/usr/include/c++/11/streambuf /usr/include/c++/11/bits/ios_base.h \
/usr/include/c++/11/bits/locale_classes.h \
/usr/include/c++/11/bits/locale_classes.tcc \
/usr/include/c++/11/bits/streambuf.tcc /usr/include/c++/11/forward_list \
/usr/include/c++/11/bits/forward_list.h \
/usr/include/c++/11/bits/forward_list.tcc /usr/include/c++/11/map \
/usr/include/c++/11/bits/stl_tree.h /usr/include/c++/11/bits/stl_map.h \
/usr/include/c++/11/bits/stl_multimap.h /usr/include/c++/11/valarray \
/usr/include/c++/11/cmath /usr/include/math.h \
/usr/include/aarch64-linux-gnu/bits/math-vector.h \
/usr/include/aarch64-linux-gnu/bits/libm-simd-decl-stubs.h \
/usr/include/aarch64-linux-gnu/bits/flt-eval-method.h \
/usr/include/aarch64-linux-gnu/bits/fp-logb.h \
@ -218,9 +204,64 @@ CMakeFiles/rknn_refactor_test.dir/src/rknn_test/video_service.cc.o: \
/usr/include/c++/11/tr1/poly_hermite.tcc \
/usr/include/c++/11/tr1/poly_laguerre.tcc \
/usr/include/c++/11/tr1/riemann_zeta.tcc \
/usr/include/c++/11/bits/valarray_array.h \
/usr/include/c++/11/bits/valarray_array.tcc \
/usr/include/c++/11/bits/valarray_before.h \
/usr/include/c++/11/bits/slice_array.h \
/usr/include/c++/11/bits/valarray_after.h \
/usr/include/c++/11/bits/gslice.h \
/usr/include/c++/11/bits/gslice_array.h \
/usr/include/c++/11/bits/mask_array.h \
/usr/include/c++/11/bits/indirect_array.h /usr/include/c++/11/version \
/usr/include/c++/11/cassert /usr/include/assert.h \
/usr/include/c++/11/cstring /usr/include/string.h /usr/include/strings.h \
/usr/include/c++/11/filesystem /usr/include/c++/11/bits/fs_fwd.h \
/usr/include/c++/11/bits/fs_path.h /usr/include/c++/11/locale \
/usr/include/c++/11/bits/locale_facets.h /usr/include/c++/11/cwctype \
/usr/include/wctype.h /usr/include/aarch64-linux-gnu/bits/wctype-wchar.h \
/usr/include/aarch64-linux-gnu/c++/11/bits/ctype_base.h \
/usr/include/aarch64-linux-gnu/c++/11/bits/ctype_inline.h \
/usr/include/c++/11/bits/locale_facets.tcc \
/usr/include/c++/11/bits/locale_facets_nonio.h \
/usr/include/aarch64-linux-gnu/c++/11/bits/time_members.h \
/usr/include/aarch64-linux-gnu/c++/11/bits/messages_members.h \
/usr/include/libintl.h /usr/include/c++/11/bits/codecvt.h \
/usr/include/c++/11/bits/locale_facets_nonio.tcc \
/usr/include/c++/11/bits/locale_conv.h /usr/include/c++/11/iomanip \
/usr/include/c++/11/bits/quoted_string.h /usr/include/c++/11/sstream \
/usr/include/c++/11/istream /usr/include/c++/11/ios \
/usr/include/c++/11/bits/basic_ios.h \
/usr/include/c++/11/bits/basic_ios.tcc /usr/include/c++/11/ostream \
/usr/include/c++/11/bits/ostream.tcc \
/usr/include/c++/11/bits/istream.tcc \
/usr/include/c++/11/bits/sstream.tcc /usr/include/c++/11/codecvt \
/usr/include/c++/11/bits/fs_dir.h /usr/include/c++/11/bits/fs_ops.h \
/usr/include/c++/11/optional /usr/include/c++/11/numeric \
/usr/include/c++/11/bits/stl_numeric.h \
/usr/include/c++/11/pstl/glue_numeric_defs.h /usr/include/c++/11/any \
/usr/include/opencv4/opencv2/opencv.hpp \
/usr/include/opencv4/opencv2/opencv_modules.hpp \
/usr/include/opencv4/opencv2/core.hpp \
/usr/include/opencv4/opencv2/core/cvdef.h \
/usr/include/opencv4/opencv2/core/version.hpp \
/usr/include/opencv4/opencv2/core/hal/interface.h \
/usr/include/opencv4/opencv2/core/cv_cpu_dispatch.h \
/usr/lib/gcc/aarch64-linux-gnu/11/include/arm_neon.h \
/usr/lib/gcc/aarch64-linux-gnu/11/include/arm_fp16.h \
/usr/lib/gcc/aarch64-linux-gnu/11/include/arm_bf16.h \
/usr/include/opencv4/opencv2/core/base.hpp /usr/include/c++/11/climits \
/usr/lib/gcc/aarch64-linux-gnu/11/include/limits.h \
/usr/lib/gcc/aarch64-linux-gnu/11/include/syslimits.h \
/usr/include/limits.h /usr/include/aarch64-linux-gnu/bits/posix1_lim.h \
/usr/include/aarch64-linux-gnu/bits/local_lim.h \
/usr/include/linux/limits.h \
/usr/include/aarch64-linux-gnu/bits/posix2_lim.h \
/usr/include/aarch64-linux-gnu/bits/xopen_lim.h \
/usr/include/aarch64-linux-gnu/bits/uio_lim.h \
/usr/include/opencv4/opencv2/core/cvstd.hpp \
/usr/include/opencv4/opencv2/core/cvstd_wrapper.hpp \
/usr/include/opencv4/opencv2/core/neon_utils.hpp \
/usr/include/opencv4/opencv2/core/vsx_utils.hpp /usr/include/assert.h \
/usr/include/opencv4/opencv2/core/vsx_utils.hpp \
/usr/include/opencv4/opencv2/core/check.hpp \
/usr/include/opencv4/opencv2/core/traits.hpp \
/usr/include/opencv4/opencv2/core/matx.hpp \
@ -234,62 +275,99 @@ CMakeFiles/rknn_refactor_test.dir/src/rknn_test/video_service.cc.o: \
/usr/include/opencv4/opencv2/core/persistence.hpp \
/usr/include/opencv4/opencv2/core/operations.hpp \
/usr/include/opencv4/opencv2/core/cvstd.inl.hpp \
/usr/include/c++/11/complex /usr/include/c++/11/sstream \
/usr/include/c++/11/istream /usr/include/c++/11/ios \
/usr/include/c++/11/bits/ios_base.h \
/usr/include/c++/11/bits/locale_classes.h \
/usr/include/c++/11/bits/locale_classes.tcc \
/usr/include/c++/11/streambuf /usr/include/c++/11/bits/streambuf.tcc \
/usr/include/c++/11/bits/basic_ios.h \
/usr/include/c++/11/bits/locale_facets.h /usr/include/c++/11/cwctype \
/usr/include/wctype.h /usr/include/aarch64-linux-gnu/bits/wctype-wchar.h \
/usr/include/aarch64-linux-gnu/c++/11/bits/ctype_base.h \
/usr/include/c++/11/bits/streambuf_iterator.h \
/usr/include/aarch64-linux-gnu/c++/11/bits/ctype_inline.h \
/usr/include/c++/11/bits/locale_facets.tcc \
/usr/include/c++/11/bits/basic_ios.tcc /usr/include/c++/11/ostream \
/usr/include/c++/11/bits/ostream.tcc \
/usr/include/c++/11/bits/istream.tcc \
/usr/include/c++/11/bits/sstream.tcc \
/usr/include/c++/11/complex \
/usr/include/opencv4/opencv2/core/utility.hpp \
/usr/include/opencv4/opencv2/core/optim.hpp \
/usr/include/opencv4/opencv2/core/ovx.hpp \
/usr/include/opencv4/opencv2/core/cvdef.h \
/usr/include/opencv4/opencv2/videoio.hpp /usr/include/c++/11/thread \
/usr/include/c++/11/bits/std_thread.h \
/usr/include/c++/11/bits/this_thread_sleep.h \
/app/src/algorithm/IAnalysisModule.h /app/src/vendor/nlohmann/json.hpp \
/usr/include/c++/11/iterator /usr/include/c++/11/bits/stream_iterator.h \
/usr/include/c++/11/forward_list /usr/include/c++/11/bits/forward_list.h \
/usr/include/c++/11/bits/forward_list.tcc /usr/include/c++/11/valarray \
/usr/include/c++/11/bits/valarray_array.h \
/usr/include/c++/11/bits/valarray_array.tcc \
/usr/include/c++/11/bits/valarray_before.h \
/usr/include/c++/11/bits/slice_array.h \
/usr/include/c++/11/bits/valarray_after.h \
/usr/include/c++/11/bits/gslice.h \
/usr/include/c++/11/bits/gslice_array.h \
/usr/include/c++/11/bits/mask_array.h \
/usr/include/c++/11/bits/indirect_array.h /usr/include/c++/11/version \
/usr/include/c++/11/cassert /usr/include/c++/11/filesystem \
/usr/include/c++/11/bits/fs_fwd.h /usr/include/c++/11/bits/fs_path.h \
/usr/include/c++/11/locale \
/usr/include/c++/11/bits/locale_facets_nonio.h \
/usr/include/aarch64-linux-gnu/c++/11/bits/time_members.h \
/usr/include/aarch64-linux-gnu/c++/11/bits/messages_members.h \
/usr/include/libintl.h /usr/include/c++/11/bits/codecvt.h \
/usr/include/c++/11/bits/locale_facets_nonio.tcc \
/usr/include/c++/11/bits/locale_conv.h /usr/include/c++/11/iomanip \
/usr/include/c++/11/bits/quoted_string.h /usr/include/c++/11/codecvt \
/usr/include/c++/11/bits/fs_dir.h /usr/include/c++/11/bits/fs_ops.h \
/usr/include/c++/11/optional /usr/include/c++/11/numeric \
/usr/include/c++/11/bits/stl_numeric.h \
/usr/include/c++/11/pstl/glue_numeric_defs.h /usr/include/c++/11/any \
/usr/include/opencv4/opencv2/calib3d.hpp \
/usr/include/opencv4/opencv2/features2d.hpp \
/usr/include/opencv4/opencv2/flann/miniflann.hpp \
/usr/include/opencv4/opencv2/flann/defines.h \
/usr/include/opencv4/opencv2/flann/config.h \
/usr/include/opencv4/opencv2/core/affine.hpp \
/usr/include/opencv4/opencv2/dnn.hpp \
/usr/include/opencv4/opencv2/dnn/dnn.hpp \
/usr/include/opencv4/opencv2/core/async.hpp \
/usr/include/opencv4/opencv2/dnn/version.hpp \
/usr/include/opencv4/opencv2/dnn/dict.hpp \
/usr/include/opencv4/opencv2/dnn/layer.hpp \
/usr/include/opencv4/opencv2/dnn/dnn.inl.hpp \
/usr/include/opencv4/opencv2/dnn/utils/inference_engine.hpp \
/usr/include/opencv4/opencv2/dnn/dnn.hpp \
/usr/include/opencv4/opencv2/flann.hpp \
/usr/include/opencv4/opencv2/flann/flann_base.hpp \
/usr/include/opencv4/opencv2/flann/general.h \
/usr/include/opencv4/opencv2/flann/matrix.h \
/usr/include/opencv4/opencv2/flann/params.h \
/usr/include/opencv4/opencv2/flann/any.h \
/usr/include/opencv4/opencv2/flann/defines.h \
/usr/include/c++/11/iostream /usr/include/opencv4/opencv2/flann/saving.h \
/usr/include/opencv4/opencv2/flann/nn_index.h \
/usr/include/opencv4/opencv2/flann/result_set.h /usr/include/c++/11/set \
/usr/include/c++/11/bits/stl_set.h \
/usr/include/c++/11/bits/stl_multiset.h \
/usr/include/opencv4/opencv2/flann/all_indices.h \
/usr/include/opencv4/opencv2/flann/kdtree_index.h \
/usr/include/opencv4/opencv2/flann/dynamic_bitset.h \
/usr/include/opencv4/opencv2/flann/dist.h \
/usr/include/opencv4/opencv2/flann/heap.h \
/usr/include/opencv4/opencv2/flann/allocator.h \
/usr/include/c++/11/stdlib.h /usr/include/opencv4/opencv2/flann/random.h \
/usr/include/opencv4/opencv2/flann/kdtree_single_index.h \
/usr/include/opencv4/opencv2/flann/kmeans_index.h \
/usr/include/opencv4/opencv2/flann/logger.h \
/usr/include/opencv4/opencv2/flann/composite_index.h \
/usr/include/opencv4/opencv2/flann/linear_index.h \
/usr/include/opencv4/opencv2/flann/hierarchical_clustering_index.h \
/usr/include/opencv4/opencv2/flann/lsh_index.h \
/usr/include/opencv4/opencv2/flann/lsh_table.h \
/usr/include/c++/11/math.h \
/usr/include/opencv4/opencv2/flann/autotuned_index.h \
/usr/include/opencv4/opencv2/flann/ground_truth.h \
/usr/include/opencv4/opencv2/flann/index_testing.h \
/usr/include/opencv4/opencv2/flann/timer.h \
/usr/include/opencv4/opencv2/flann/sampling.h \
/usr/include/opencv4/opencv2/highgui.hpp \
/usr/include/opencv4/opencv2/imgcodecs.hpp \
/usr/include/opencv4/opencv2/imgproc/imgproc.hpp \
/usr/include/opencv4/opencv2/videoio.hpp \
/usr/include/opencv4/opencv2/imgproc.hpp \
/usr/include/opencv4/opencv2/imgproc/segmentation.hpp \
/usr/include/opencv4/opencv2/ml.hpp \
/usr/include/opencv4/opencv2/ml/ml.inl.hpp \
/usr/include/opencv4/opencv2/objdetect.hpp \
/usr/include/opencv4/opencv2/objdetect/detection_based_tracker.hpp \
/usr/include/opencv4/opencv2/objdetect/face.hpp \
/usr/include/opencv4/opencv2/photo.hpp \
/usr/include/opencv4/opencv2/stitching.hpp \
/usr/include/opencv4/opencv2/stitching/warpers.hpp \
/usr/include/opencv4/opencv2/stitching/detail/warpers.hpp \
/usr/include/opencv4/opencv2/core/cuda.hpp \
/usr/include/opencv4/opencv2/core/cuda_types.hpp \
/usr/include/opencv4/opencv2/core/cuda.inl.hpp \
/usr/include/opencv4/opencv2/stitching/detail/warpers_inl.hpp \
/usr/include/opencv4/opencv2/stitching/detail/warpers.hpp \
/usr/include/opencv4/opencv2/stitching/detail/matchers.hpp \
/usr/include/opencv4/opencv2/stitching/detail/motion_estimators.hpp \
/usr/include/opencv4/opencv2/stitching/detail/matchers.hpp \
/usr/include/opencv4/opencv2/stitching/detail/util.hpp \
/usr/include/c++/11/list /usr/include/c++/11/bits/stl_list.h \
/usr/include/c++/11/bits/list.tcc \
/usr/include/opencv4/opencv2/stitching/detail/util_inl.hpp \
/usr/include/c++/11/queue /usr/include/c++/11/deque \
/usr/include/c++/11/bits/stl_deque.h /usr/include/c++/11/bits/deque.tcc \
/usr/include/c++/11/bits/stl_queue.h \
/usr/include/opencv4/opencv2/stitching/detail/camera.hpp \
/usr/include/opencv4/opencv2/stitching/detail/exposure_compensate.hpp \
/usr/include/opencv4/opencv2/stitching/detail/seam_finders.hpp \
/usr/include/opencv4/opencv2/stitching/detail/blenders.hpp \
/usr/include/opencv4/opencv2/stitching/detail/camera.hpp \
/usr/include/opencv4/opencv2/video.hpp \
/usr/include/opencv4/opencv2/video/tracking.hpp \
/usr/include/opencv4/opencv2/video/background_segm.hpp \
/usr/include/c++/11/thread /usr/include/c++/11/bits/std_thread.h \
/usr/include/c++/11/bits/this_thread_sleep.h \
/usr/include/opencv4/opencv2/imgproc/imgproc.hpp \
/usr/include/spdlog/spdlog.h /usr/include/spdlog/common.h \
/usr/include/spdlog/tweakme.h /usr/include/spdlog/details/null_mutex.h \
/usr/include/spdlog/fmt/fmt.h /usr/include/fmt/core.h \

View File

@ -191,7 +191,27 @@ CMakeFiles/rknn_refactor_test.dir/src/test.cc.o: /app/src/test.cc \
/usr/include/c++/11/bits/locale_facets.tcc \
/usr/include/c++/11/bits/basic_ios.tcc \
/usr/include/c++/11/bits/ostream.tcc /usr/include/c++/11/istream \
/usr/include/c++/11/bits/istream.tcc \
/usr/include/c++/11/bits/istream.tcc /usr/include/c++/11/memory \
/usr/include/c++/11/bits/stl_uninitialized.h \
/usr/include/c++/11/bits/stl_tempbuf.h \
/usr/include/c++/11/bits/stl_raw_storage_iter.h \
/usr/include/c++/11/bits/align.h /usr/include/c++/11/bit \
/usr/include/c++/11/bits/uses_allocator.h \
/usr/include/c++/11/bits/unique_ptr.h /usr/include/c++/11/utility \
/usr/include/c++/11/bits/stl_relops.h /usr/include/c++/11/tuple \
/usr/include/c++/11/array /usr/include/c++/11/bits/invoke.h \
/usr/include/c++/11/bits/shared_ptr.h \
/usr/include/c++/11/bits/shared_ptr_base.h \
/usr/include/c++/11/bits/allocated_ptr.h \
/usr/include/c++/11/bits/refwrap.h \
/usr/include/c++/11/ext/aligned_buffer.h \
/usr/include/c++/11/ext/concurrence.h \
/usr/include/c++/11/bits/shared_ptr_atomic.h \
/usr/include/c++/11/bits/atomic_base.h \
/usr/include/c++/11/bits/atomic_lockfree_defines.h \
/usr/include/c++/11/backward/auto_ptr.h \
/usr/include/c++/11/pstl/glue_memory_defs.h \
/usr/include/c++/11/pstl/execution_defs.h \
/usr/include/opencv4/opencv2/opencv.hpp \
/usr/include/opencv4/opencv2/opencv_modules.hpp \
/usr/include/opencv4/opencv2/core.hpp \
@ -203,8 +223,6 @@ CMakeFiles/rknn_refactor_test.dir/src/test.cc.o: /app/src/test.cc \
/usr/lib/gcc/aarch64-linux-gnu/11/include/arm_neon.h \
/usr/lib/gcc/aarch64-linux-gnu/11/include/arm_fp16.h \
/usr/lib/gcc/aarch64-linux-gnu/11/include/arm_bf16.h \
/usr/include/c++/11/array /usr/include/c++/11/utility \
/usr/include/c++/11/bits/stl_relops.h \
/usr/include/opencv4/opencv2/core/base.hpp /usr/include/c++/11/climits \
/usr/lib/gcc/aarch64-linux-gnu/11/include/limits.h \
/usr/lib/gcc/aarch64-linux-gnu/11/include/syslimits.h \
@ -217,26 +235,18 @@ CMakeFiles/rknn_refactor_test.dir/src/test.cc.o: /app/src/test.cc \
/usr/include/c++/11/algorithm /usr/include/c++/11/bits/stl_algo.h \
/usr/include/c++/11/bits/algorithmfwd.h \
/usr/include/c++/11/bits/stl_heap.h \
/usr/include/c++/11/bits/stl_tempbuf.h \
/usr/include/c++/11/bits/uniform_int_dist.h \
/usr/include/c++/11/pstl/glue_algorithm_defs.h \
/usr/include/c++/11/functional /usr/include/c++/11/tuple \
/usr/include/c++/11/bits/uses_allocator.h \
/usr/include/c++/11/bits/invoke.h /usr/include/c++/11/bits/refwrap.h \
/usr/include/c++/11/bits/std_function.h \
/usr/include/c++/11/unordered_map \
/usr/include/c++/11/ext/aligned_buffer.h \
/usr/include/c++/11/bits/hashtable.h \
/usr/include/c++/11/functional /usr/include/c++/11/bits/std_function.h \
/usr/include/c++/11/unordered_map /usr/include/c++/11/bits/hashtable.h \
/usr/include/c++/11/bits/hashtable_policy.h \
/usr/include/c++/11/bits/enable_special_members.h \
/usr/include/c++/11/bits/node_handle.h \
/usr/include/c++/11/bits/unordered_map.h \
/usr/include/c++/11/bits/erase_if.h /usr/include/c++/11/vector \
/usr/include/c++/11/bits/stl_uninitialized.h \
/usr/include/c++/11/bits/stl_vector.h \
/usr/include/c++/11/bits/stl_bvector.h \
/usr/include/c++/11/bits/vector.tcc \
/usr/include/c++/11/pstl/execution_defs.h \
/usr/include/opencv4/opencv2/core/cvstd.hpp /usr/include/c++/11/cstring \
/usr/include/string.h /usr/include/strings.h /usr/include/c++/11/cmath \
/usr/include/math.h /usr/include/aarch64-linux-gnu/bits/math-vector.h \
@ -261,19 +271,6 @@ CMakeFiles/rknn_refactor_test.dir/src/test.cc.o: /app/src/test.cc \
/usr/include/c++/11/tr1/poly_laguerre.tcc \
/usr/include/c++/11/tr1/riemann_zeta.tcc \
/usr/include/opencv4/opencv2/core/cvstd_wrapper.hpp \
/usr/include/c++/11/memory \
/usr/include/c++/11/bits/stl_raw_storage_iter.h \
/usr/include/c++/11/bits/align.h /usr/include/c++/11/bit \
/usr/include/c++/11/bits/unique_ptr.h \
/usr/include/c++/11/bits/shared_ptr.h \
/usr/include/c++/11/bits/shared_ptr_base.h \
/usr/include/c++/11/bits/allocated_ptr.h \
/usr/include/c++/11/ext/concurrence.h \
/usr/include/c++/11/bits/shared_ptr_atomic.h \
/usr/include/c++/11/bits/atomic_base.h \
/usr/include/c++/11/bits/atomic_lockfree_defines.h \
/usr/include/c++/11/backward/auto_ptr.h \
/usr/include/c++/11/pstl/glue_memory_defs.h \
/usr/include/opencv4/opencv2/core/neon_utils.hpp \
/usr/include/opencv4/opencv2/core/vsx_utils.hpp /usr/include/assert.h \
/usr/include/opencv4/opencv2/core/check.hpp \
@ -393,6 +390,30 @@ CMakeFiles/rknn_refactor_test.dir/src/test.cc.o: /app/src/test.cc \
/usr/include/opencv4/opencv2/video.hpp \
/usr/include/opencv4/opencv2/video/tracking.hpp \
/usr/include/opencv4/opencv2/video/background_segm.hpp \
/app/src/rknn_test/rkYolov8.hpp /app/src/rknn/rknn_api.h \
/app/src/rknn_test/postprocess.h /app/src/rknn_test/dma_allocator.hpp \
/usr/include/fcntl.h /usr/include/aarch64-linux-gnu/bits/fcntl.h \
/usr/include/aarch64-linux-gnu/bits/fcntl-linux.h \
/usr/include/aarch64-linux-gnu/bits/types/struct_iovec.h \
/usr/include/linux/falloc.h /usr/include/aarch64-linux-gnu/bits/stat.h \
/usr/include/aarch64-linux-gnu/bits/struct_stat.h /usr/include/im2d.h \
/usr/include/im2d_version.h /usr/include/im2d_type.h /usr/include/rga.h \
/usr/include/im2d_common.h /usr/include/im2d_buffer.h \
/usr/include/im2d_single.h /usr/include/im2d_task.h \
/usr/include/im2d_mpi.h /usr/include/rga.h \
/usr/include/aarch64-linux-gnu/sys/ioctl.h \
/usr/include/aarch64-linux-gnu/bits/ioctls.h \
/usr/include/aarch64-linux-gnu/asm/ioctls.h \
/usr/include/asm-generic/ioctls.h /usr/include/linux/ioctl.h \
/usr/include/aarch64-linux-gnu/asm/ioctl.h \
/usr/include/asm-generic/ioctl.h \
/usr/include/aarch64-linux-gnu/bits/ioctl-types.h \
/usr/include/aarch64-linux-gnu/sys/ttydefaults.h \
/usr/include/aarch64-linux-gnu/sys/mman.h \
/usr/include/aarch64-linux-gnu/bits/mman.h \
/usr/include/aarch64-linux-gnu/bits/mman-map-flags-generic.h \
/usr/include/aarch64-linux-gnu/bits/mman-linux.h \
/usr/include/aarch64-linux-gnu/bits/mman-shared.h \
/usr/include/spdlog/spdlog.h /usr/include/spdlog/common.h \
/usr/include/spdlog/tweakme.h /usr/include/spdlog/details/null_mutex.h \
/usr/include/c++/11/atomic /usr/include/spdlog/fmt/fmt.h \
@ -405,18 +426,8 @@ CMakeFiles/rknn_refactor_test.dir/src/test.cc.o: /app/src/test.cc \
/usr/include/spdlog/details/circular_q.h /usr/include/c++/11/cassert \
/usr/include/spdlog/version.h \
/usr/include/spdlog/details/synchronous_factory.h \
/app/src/rknn_test/rkYolov8.hpp /usr/include/rga/im2d.h \
/usr/include/rga/im2d_version.h /usr/include/rga/im2d_type.h \
/usr/include/rga/rga.h /usr/include/rga/im2d_common.h \
/usr/include/rga/im2d_buffer.h /usr/include/rga/im2d_single.h \
/usr/include/rga/im2d_task.h /usr/include/rga/im2d_mpi.h \
/usr/include/opencv4/opencv2/core/core.hpp /usr/include/rga/rga.h \
/app/src/rknn/rknn_api.h /app/src/rknn_test/postprocess.h \
/app/src/rknn_test/video_service.h \
/usr/include/c++/11/condition_variable /usr/include/c++/11/thread \
/usr/include/c++/11/bits/std_thread.h \
/usr/include/c++/11/bits/this_thread_sleep.h \
/app/src/algorithm/IAnalysisModule.h /app/src/vendor/nlohmann/json.hpp \
/usr/include/c++/11/condition_variable /app/src/vendor/nlohmann/json.hpp \
/usr/include/c++/11/forward_list /usr/include/c++/11/bits/forward_list.h \
/usr/include/c++/11/bits/forward_list.tcc /usr/include/c++/11/valarray \
/usr/include/c++/11/bits/valarray_array.h \
@ -433,4 +444,6 @@ CMakeFiles/rknn_refactor_test.dir/src/test.cc.o: /app/src/test.cc \
/usr/include/c++/11/bits/fs_dir.h /usr/include/c++/11/bits/fs_ops.h \
/usr/include/c++/11/optional /usr/include/c++/11/numeric \
/usr/include/c++/11/bits/stl_numeric.h \
/usr/include/c++/11/pstl/glue_numeric_defs.h /usr/include/c++/11/any
/usr/include/c++/11/pstl/glue_numeric_defs.h /usr/include/c++/11/any \
/usr/include/c++/11/thread /usr/include/c++/11/bits/std_thread.h \
/usr/include/c++/11/bits/this_thread_sleep.h

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1,126 @@
#ifndef DMA_ALLOCATOR_HPP
#define DMA_ALLOCATOR_HPP
#include <fcntl.h>
#include <im2d.h>
#include <linux/types.h>
#include <rga.h>
#include <sys/ioctl.h>
#include <sys/mman.h>
#include <unistd.h>
#include <cstring>
#include <iostream>
#include <opencv2/opencv.hpp>
#include <vector>
// --- 定义 DMA Heap 相关结构 (防止编译环境缺少 linux/dma-heap.h) ---
#define DMA_HEAP_IOCTL_MAGIC 'H'
struct dma_heap_allocation_data {
__u64 len;
__u32 fd;
__u32 fd_flags;
__u64 heap_flags;
};
#define DMA_HEAP_IOCTL_ALLOC _IOWR(DMA_HEAP_IOCTL_MAGIC, 0, struct dma_heap_allocation_data)
class DmaBuffer {
public:
void* vaddr = nullptr; // CPU 虚拟地址
int fd = -1; // DMA 文件描述符 (核心)
rga_buffer_handle_t handle = 0; // RGA 句柄
size_t size = 0;
int width = 0;
int height = 0;
int format = 0;
DmaBuffer(int w, int h, int fmt) : width(w), height(h), format(fmt) {
// 1. 计算大小 (简单的 4字节对齐估算RGBA8888)
int bpp = (fmt == RK_FORMAT_RGB_888) ? 3 : 4;
// 为了安全起见,通常按页(4096)对齐,或者稍微大一点
size = (w * h * bpp + 4095) & (~4095);
// 2. 分配 DMA 内存 (使用自定义的实现,不依赖外部库)
if (alloc_dma_buffer(size, &fd, &vaddr) < 0) {
std::cerr << "Error: Failed to allocate DMA buffer!" << std::endl;
return;
}
// 3. 这里的 handle 在纯 fd 模式下可以不需要,或者设为 fd
// 但为了兼容 im2d 的 importbuffer我们保留 fd 即可
handle = (rga_buffer_handle_t)fd;
}
~DmaBuffer() {
if (vaddr && vaddr != MAP_FAILED) {
munmap(vaddr, size);
}
if (fd >= 0) {
close(fd);
}
}
// 获取 OpenCV Mat (Zero-Copy 视图)
cv::Mat getMat() {
if (fd < 0 || !vaddr)
return cv::Mat();
int type = (format == RK_FORMAT_RGB_888 || format == RK_FORMAT_BGR_888) ? CV_8UC3 : CV_8UC4;
return cv::Mat(height, width, type, vaddr);
}
// 获取 RGA Buffer 结构体
rga_buffer_t getRgaBuffer() {
// 使用 wrapbuffer_fd 告诉 RGA 使用物理内存
return wrapbuffer_fd(fd, width, height, format);
}
bool isValid() const {
return fd >= 0 && vaddr != nullptr;
}
private:
// --- 核心:手动实现 DMA Buffer 分配器 ---
int alloc_dma_buffer(size_t size, int* fd, void** vaddr) {
// RK3588 通常使用 system-uncached 或 system heap
// uncached 性能更好,因为不需要频繁刷 Cache
const char* heap_path = "/dev/dma_heap/system-uncached";
int heap_fd = open(heap_path, O_RDWR | O_CLOEXEC);
if (heap_fd < 0) {
// 如果 uncached 不存在,尝试普通的 system heap
heap_path = "/dev/dma_heap/system";
heap_fd = open(heap_path, O_RDWR | O_CLOEXEC);
if (heap_fd < 0) {
std::cerr << "Error: Could not open DMA heap: " << heap_path << std::endl;
return -1;
}
}
struct dma_heap_allocation_data data = {0};
data.len = size;
data.fd_flags = O_CLOEXEC | O_RDWR;
// 调用 ioctl 分配内存
if (ioctl(heap_fd, DMA_HEAP_IOCTL_ALLOC, &data) < 0) {
std::cerr << "Error: DMA_HEAP_IOCTL_ALLOC failed" << std::endl;
close(heap_fd);
return -1;
}
*fd = data.fd;
close(heap_fd); // heap fd 可以关掉了,只保留 buffer fd
// 映射到 CPU 虚拟地址
*vaddr = mmap(NULL, size, PROT_READ | PROT_WRITE, MAP_SHARED, *fd, 0);
if (*vaddr == MAP_FAILED) {
std::cerr << "Error: mmap failed" << std::endl;
close(*fd);
*fd = -1;
return -1;
}
return 0;
}
};
#endif // DMA_ALLOCATOR_HPP

View File

@ -0,0 +1,60 @@
// rga_utils.hpp
#ifndef RGA_UTILS_HPP
#define RGA_UTILS_HPP
#include <im2d.h>
#include <rga.h>
#include <iostream>
#include <opencv2/opencv.hpp>
class RgaUtils {
public:
static int init() {
// 实际上 RGA 是无状态的,这里只是为了确认库版本
// 你的环境已经验证过版本了,这里可以留空或做检查
return 0;
}
// 核心函数:执行 Resize 和 Color Convert
// input: 源图像 (cv::Mat)
// output: 目标图像 (cv::Mat, 必须预先分配好内存!)
static bool align_and_process(const cv::Mat& src, cv::Mat& dst) {
if (src.empty() || dst.empty()) {
std::cerr << "Error: Input or Output mat is empty!" << std::endl;
return false;
}
// 1. 获取输入图像信息
int src_width = src.cols;
int src_height = src.rows;
int src_format = RK_FORMAT_BGR_888; // OpenCV 默认是 BGR
// 2. 获取输出图像信息
int dst_width = dst.cols;
int dst_height = dst.rows;
int dst_format = RK_FORMAT_RGB_888; // 假设模型需要 RGB
// 3. 封装 RGA Buffer 句柄
// wrapbuffer_virtualaddr 只是把虚拟地址打包,几乎不耗时
rga_buffer_t src_buf =
wrapbuffer_virtualaddr((void*)src.data, src_width, src_height, src_format);
rga_buffer_t dst_buf =
wrapbuffer_virtualaddr((void*)dst.data, dst_width, dst_height, dst_format);
// 4. 执行硬件操作 (Resize + Format Convert)
// usage 标志位:表明我们要进行同步操作
// imresize 是 im2d api 的高级封装,会自动处理缩放和格式转换
IM_STATUS status = imresize(src_buf, dst_buf);
if (status != IM_STATUS_SUCCESS) {
std::cerr << "RGA Error: imresize failed. Code: " << status << std::endl;
return false;
}
return true;
}
};
#endif // RGA_UTILS_HPP

View File

@ -7,30 +7,24 @@
#include <cstring>
#include <iostream>
#include <opencv2/dnn.hpp>
#include <set>
#include <vector>
// RGA 头文件
#include "im2d.h"
#include "opencv2/imgproc/imgproc.hpp"
#include "rga.h"
namespace rknn_test {
static inline float sigmoid(float x) {
return 1.0f / (1.0f + expf(-x));
}
// DFL 算法辅助函数
static void compute_dfl(float* tensor, int dfl_len, float* box) {
for (int b = 0; b < 4; b++) {
float exp_t[16];
float exp_sum = 0;
float acc_sum = 0;
for (int i = 0; i < dfl_len; i++) {
exp_t[i] = expf(tensor[i + b * dfl_len]);
exp_sum += exp_t[i];
}
for (int i = 0; i < dfl_len; i++) {
acc_sum += (exp_t[i] / exp_sum) * i;
}
@ -58,11 +52,13 @@ rkYolov8::rkYolov8(const std::string& model_path, const std::string& label_path,
this->model_path = model_path;
this->m_label_path = label_path;
this->m_class_num = class_num;
this->conf_threshold = 0.3f;
this->nms_threshold = 0.5f;
this->conf_threshold = 0.45f;
this->nms_threshold = 0.45f;
this->model_data = nullptr;
this->input_attrs = nullptr;
this->output_attrs = nullptr;
// ctx 必须初始化为 0否则 rknn_destroy 可能崩溃
this->ctx = 0;
}
rkYolov8::~rkYolov8() {
@ -72,9 +68,11 @@ rkYolov8::~rkYolov8() {
free(output_attrs);
if (model_data)
free(model_data);
if (rga_buffer_ptr)
free(rga_buffer_ptr);
rknn_destroy(ctx);
// input_dma_buf_ 是 unique_ptr会自动释放
if (ctx)
rknn_destroy(ctx);
}
rknn_context* rkYolov8::get_pctx() {
@ -82,6 +80,7 @@ rknn_context* rkYolov8::get_pctx() {
}
int rkYolov8::init(rknn_context* ctx_in, bool is_slave) {
int ret = 0; // [修改点] 声明局部变量 ret
int model_data_size = 0;
model_data = load_model(model_path.c_str(), &model_data_size);
if (!model_data)
@ -121,9 +120,14 @@ int rkYolov8::init(rknn_context* ctx_in, bool is_slave) {
printf("[rkYolov8] Init: %dx%d, Output Num: %d\n", width, height, io_num.n_output);
rga_buffer_size = width * height * channel;
rga_buffer_ptr = malloc(rga_buffer_size);
memset(rga_buffer_ptr, 114, rga_buffer_size);
// 使用 DmaBuffer 分配 NPU 输入内存
input_dma_buf_ = std::make_unique<DmaBuffer>(width, height, RK_FORMAT_RGB_888);
if (!input_dma_buf_->isValid()) {
printf("Error: Failed to allocate DMA buffer for input!\n");
return -1;
}
printf("[rkYolov8] DMA Input Buffer allocated successfully. FD: %d\n", input_dma_buf_->fd);
return 0;
}
@ -138,44 +142,45 @@ detect_result_group_t rkYolov8::infer(const cv::Mat& ori_img) {
int img_w = ori_img.cols;
int img_h = ori_img.rows;
// 1. 计算缩放比例 (保持长宽比)
// 1. 计算 Letterbox 参数
float scale = std::min((float)width / img_w, (float)height / img_h);
int new_w = (int)(img_w * scale);
int new_h = (int)(img_h * scale);
int pad_w = (width - new_w) / 2;
int pad_h = (height - new_h) / 2;
// 2. 准备 RGA 数据
// input: OpenCV 的 Mat 数据 (BGR 格式)
// 2. 准备 RGA 句柄
// Input: 来自 OpenCV 的虚拟地址
rga_buffer_t src_img =
wrapbuffer_virtualaddr((void*)ori_img.data, img_w, img_h, RK_FORMAT_BGR_888);
// output: NPU 需要的 Buffer (RGB 格式)
rga_buffer_t dst_img = wrapbuffer_virtualaddr(rga_buffer_ptr, width, height, RK_FORMAT_RGB_888);
// Output: 目标的 DMA 物理内存
rga_buffer_t dst_img = input_dma_buf_->getRgaBuffer();
// 3. 计算区域
// 3. 设置 RGA 区域 (Letterbox 核心)
im_rect src_rect = {0, 0, img_w, img_h};
im_rect dst_rect = {pad_w, pad_h, new_w, new_h}; // 居中放置
im_rect dst_rect = {pad_w, pad_h, new_w, new_h}; // 将图像缩放并放置在中间
// 4. 填充背景色 (114 灰色)
// 这一步代替了 Letterbox 的填充功能
memset(rga_buffer_ptr, 114, rga_buffer_size);
// 4. 清空背景 (填充灰色 114)
if (input_dma_buf_->vaddr) {
memset(input_dma_buf_->vaddr, 114, input_dma_buf_->size);
}
// 5. 调用 RGA (核心步骤)
// 自动完成Resize缩放 + BGR转RGB + 放入指定区域
// 5. 执行 RGA 硬件加速
IM_STATUS status = improcess(src_img, dst_img, {}, src_rect, dst_rect, {}, IM_SYNC);
if (status != IM_STATUS_SUCCESS) {
printf("RGA process failed: %s\n", imStrError(status));
return detect_result;
}
// 6. 塞给 NPU
// 6. 设置 NPU 输入
inputs[0].index = 0;
inputs[0].type = RKNN_TENSOR_UINT8;
inputs[0].size = rga_buffer_size;
inputs[0].size = input_dma_buf_->size;
inputs[0].fmt = RKNN_TENSOR_NHWC;
inputs[0].buf = rga_buffer_ptr;
// 使用 vaddr + DMA heap memory
inputs[0].buf = input_dma_buf_->vaddr;
rknn_inputs_set(ctx, io_num.n_input, inputs);
// 7. 推理
@ -184,8 +189,10 @@ detect_result_group_t rkYolov8::infer(const cv::Mat& ori_img) {
for (int i = 0; i < io_num.n_output; i++)
outputs[i].want_float = 1;
rknn_run(ctx, nullptr);
rknn_outputs_get(ctx, io_num.n_output, outputs, nullptr);
int ret =
rknn_run(ctx, nullptr); // 这里 ret 已经是局部变量了,上面 infer 内部其实没用到 ret
// 接收返回值,但这行如果不接收会 warning可以加上 int ret = ...
ret = rknn_outputs_get(ctx, io_num.n_output, outputs, nullptr);
// 8. 后处理
post_process_v8_dfl(outputs, scale, pad_w, pad_h, &detect_result);
@ -212,62 +219,31 @@ void rkYolov8::post_process_v8_dfl(rknn_output* outputs, float scale, int pad_w,
int grid_h = output_attrs[box_idx].dims[2];
int grid_w = output_attrs[box_idx].dims[3];
int stride = height / grid_h;
int box_channel = output_attrs[box_idx].dims[1];
int dfl_len = box_channel / 4;
int grid_len = grid_h * grid_w;
for (int h = 0; h < grid_h; h++) {
for (int w = 0; w < grid_w; w++) {
int offset = h * grid_w + w;
float max_score = 0.0f;
int max_class_id = -1;
for (int c = 0; c < m_class_num; c++) {
int idx = c * grid_len + offset;
float score = cls_tensor[idx];
// printf("Raw: %f, Sigmoid: %f\n", raw_score, sigmoid(raw_score));
// float score = sigmoid(cls_tensor[idx]);
if (score > max_score) {
max_score = score;
max_class_id = c;
}
}
if (max_score > conf_threshold && max_class_id == 0) {
float box_pred[4];
float dfl_buffer[64];
for (int k = 0; k < 4 * dfl_len; k++) {
dfl_buffer[k] = box_tensor[k * grid_len + offset];
}
compute_dfl(dfl_buffer, dfl_len, box_pred);
float x1 = (-box_pred[0] + w + 0.5f) * stride;
float y1 = (-box_pred[1] + h + 0.5f) * stride;
float x2 = (box_pred[2] + w + 0.5f) * stride;
float y2 = (box_pred[3] + h + 0.5f) * stride;
filterBoxes.push_back(x1);
filterBoxes.push_back(y1);
filterBoxes.push_back(x2 - x1);
filterBoxes.push_back(y2 - y1);
objProbs.push_back(max_score);
classId.push_back(max_class_id);
}
if (max_score > conf_threshold) {
float box_pred[4];
float dfl_buffer[64];
for (int k = 0; k < 4 * dfl_len; k++) {
dfl_buffer[k] = box_tensor[k * grid_len + offset];
}
compute_dfl(dfl_buffer, dfl_len, box_pred);
float x1 = (-box_pred[0] + w + 0.5f) * stride;
@ -279,7 +255,6 @@ void rkYolov8::post_process_v8_dfl(rknn_output* outputs, float scale, int pad_w,
filterBoxes.push_back(y1);
filterBoxes.push_back(x2 - x1);
filterBoxes.push_back(y2 - y1);
objProbs.push_back(max_score);
classId.push_back(max_class_id);
}
@ -300,9 +275,7 @@ void rkYolov8::post_process_v8_dfl(rknn_output* outputs, float scale, int pad_w,
for (int idx : indices) {
if (count >= OBJ_NUMB_MAX_SIZE)
break;
cv::Rect box = cvBoxes[idx];
int x = (int)((box.x - pad_w) / scale);
int y = (int)((box.y - pad_h) / scale);
int width = (int)(box.width / scale);
@ -315,7 +288,6 @@ void rkYolov8::post_process_v8_dfl(rknn_output* outputs, float scale, int pad_w,
det->box.bottom = y + height;
det->prop = objProbs[idx];
snprintf(det->name, OBJ_NAME_MAX_SIZE, "%d", classId[idx]);
count++;
}
group->count = count;

View File

@ -1,44 +1,20 @@
#ifndef RKYOLOV8_H
#define RKYOLOV8_H
#ifndef RKYOLOV8_HPP
#define RKYOLOV8_HPP
#include <memory>
#include <opencv2/opencv.hpp>
#include <string>
#include <vector>
#include "im2d.h"
#include "opencv2/core/core.hpp"
#include "rga.h"
#include "rknn/rknn_api.h"
#include "rknn_test/postprocess.h"
// 引入我们刚才修复的 DMA 分配器
#include "rknn_test/dma_allocator.hpp"
namespace rknn_test {
class rkYolov8 {
private:
int ret;
std::string model_path;
unsigned char* model_data;
rknn_context ctx;
rknn_input_output_num io_num;
rknn_tensor_attr* input_attrs;
rknn_tensor_attr* output_attrs;
rknn_input inputs[1];
int channel, width, height;
float nms_threshold;
float conf_threshold;
std::string m_label_path;
int m_class_num;
void* rga_buffer_ptr = nullptr;
int rga_buffer_size = 0;
static unsigned char* load_model(const char* filename, int* model_size);
void post_process_v8_dfl(rknn_output* outputs, float scale, int pad_w, int pad_h,
detect_result_group_t* group);
public:
rkYolov8(const std::string& model_path, const std::string& label_path, int class_num);
~rkYolov8();
@ -46,6 +22,38 @@ public:
int init(rknn_context* ctx_in, bool is_slave);
rknn_context* get_pctx();
detect_result_group_t infer(const cv::Mat& ori_img);
private:
unsigned char* load_model(const char* filename, int* model_size);
void post_process_v8_dfl(rknn_output* outputs, float scale, int pad_w, int pad_h,
detect_result_group_t* group);
private:
std::string model_path;
std::string m_label_path;
int m_class_num;
rknn_context ctx;
bool is_slave = false;
unsigned char* model_data = nullptr;
rknn_input_output_num io_num;
rknn_tensor_attr* input_attrs = nullptr;
rknn_tensor_attr* output_attrs = nullptr;
rknn_input inputs[1];
int width = 0;
int height = 0;
int channel = 0;
float conf_threshold;
float nms_threshold;
// 【修改点】使用 DmaBuffer 智能指针管理 NPU 输入内存
std::unique_ptr<DmaBuffer> input_dma_buf_;
};
} // namespace rknn_test
#endif
#endif // RKYOLOV8_HPP

View File

@ -1,59 +1,70 @@
// video_service.h (修改后)
#pragma once
#ifndef VIDEO_SERVICE_H
#define VIDEO_SERVICE_H
#include <atomic>
#include <condition_variable>
#include <map>
#include <memory>
#include <mutex>
#include <opencv2/core/core.hpp>
#include <opencv2/videoio.hpp>
#include <nlohmann/json.hpp>
#include <opencv2/opencv.hpp>
#include <string>
#include <thread>
#include "algorithm/IAnalysisModule.h"
#include "nlohmann/json.hpp"
namespace rknn_test {
// 定义分析模块接口 (抽象基类)
class IAnalysisModule {
public:
virtual ~IAnalysisModule() = default;
// 初始化接口
virtual bool init(const nlohmann::json& config) = 0;
// 处理接口 (直接修改 frame)
virtual bool process(cv::Mat& frame) = 0;
// 停止接口
virtual void stop() = 0;
};
class VideoService {
public:
/**
* @brief
* model_path thread_num
* AI
*/
VideoService(std::unique_ptr<IAnalysisModule> module, std::string input_url,
std::string output_rtsp_url, nlohmann::json module_config);
~VideoService();
bool start();
void stop();
private:
void processing_loop();
void reading_loop();
void processing_loop();
private:
std::unique_ptr<IAnalysisModule> module_;
nlohmann::json module_config_;
std::string input_url_;
std::string output_rtsp_url_;
nlohmann::json module_config_;
int frame_width_ = 0;
int frame_height_ = 0;
double frame_fps_ = 0.0;
// GStreamer / OpenCV
cv::VideoCapture capture_;
cv::VideoWriter writer_;
std::thread processing_thread_;
// 线程控制
std::atomic<bool> running_;
std::thread reading_thread_;
std::atomic<bool> running_{false};
std::thread processing_thread_;
// 帧缓存
std::mutex frame_mutex_;
std::condition_variable frame_cv_;
cv::Mat latest_frame_;
bool new_frame_available_{false};
bool new_frame_available_ = false;
// 元数据
int frame_width_ = 0;
int frame_height_ = 0;
double frame_fps_ = 0.0;
std::string log_prefix_;
};
} // namespace rknn_test
} // namespace rknn_test
#endif // VIDEO_SERVICE_H

View File

@ -2,51 +2,39 @@
#include <unistd.h>
#include <iostream>
#include <memory>
#include <opencv2/opencv.hpp>
#include <string>
#include "spdlog/spdlog.h"
// 引用相关头文件
#include "rkYolov8.hpp"
#include "spdlog/spdlog.h"
#include "video_service.h"
using namespace rknn_test;
// 全局标志用于优雅退出
volatile sig_atomic_t g_running = 1;
void signal_handler(int signum) {
g_running = 0;
}
// =======================================================
// 定义具体的算法适配器 (Adapter Pattern)
// =======================================================
// 定义具体的算法适配器
// 将其放在 rknn_test 命名空间内,或者使用 using
using namespace rknn_test;
class YoloModule : public IAnalysisModule {
public:
YoloModule() : detector_(nullptr) {}
virtual ~YoloModule() = default;
// =========================================================
// 【修改点】 加上 const 和 &,与父类接口保持一致
// =========================================================
bool init(const nlohmann::json& config) override { // <--- 修改这一行
// 注意:因为是 const 引用,如果需要修改
// config得先拷贝一份但这里只是读取所以不用改逻辑 如果 config["xxx"] 报错,可以用
// config.at("xxx") 或者转存一下
// 为了安全读取 json (防止 key 不存在报错),建议用 value() 或 contains()
// 但为了保持你原有逻辑简洁,先直接用,或者转存一下:
// std::string model_path = config.value("model_path", "");
bool init(const nlohmann::json& config) override {
// 读取配置
std::string model_path = config["model_path"];
std::string label_path = config["label_path"];
int class_num = config["class_num"];
// 初始化检测器
detector_ = std::make_unique<rkYolov8>(model_path, label_path, class_num);
// rkYolov8 的 init 可能需要传入 context这里 demo 传 nullptr
if (detector_->init(nullptr, false) != 0) {
spdlog::error("YoloModule: Failed to init rkYolov8!");
return false;
@ -61,7 +49,7 @@ public:
// 1. 推理
detect_result_group_t result = detector_->infer(frame);
// 2. 画框 (直接修改 frameVideoService 会把画好的帧推流出去)
// 2. 画框
for (int i = 0; i < result.count; i++) {
detect_result_t* det = &result.results[i];
int x1 = det->box.left;
@ -80,7 +68,6 @@ public:
}
void stop() override {
// 可以在这里释放资源unique_ptr 会自动清理 detector_
spdlog::info("YoloModule stopped.");
}
@ -89,7 +76,7 @@ private:
};
// =======================================================
// 主函数
// 主函数 (必须在全局命名空间,不能在 namespace rknn_test 里)
// =======================================================
int main(int argc, char** argv) {
// 捕获 Ctrl+C
@ -97,8 +84,8 @@ int main(int argc, char** argv) {
signal(SIGTERM, signal_handler);
// 配置
// 请根据实际情况修改 RTSP 地址
std::string rtsp_in = "rtsp://admin:hzx12345@192.168.1.10:554/Streaming/Channels/1301";
// 推流地址,你可以用 VLC 播放这个地址查看结果
std::string rtsp_out = "rtsp://127.0.0.1:8554/yolov8_stream";
// 模型配置
@ -132,4 +119,103 @@ int main(int argc, char** argv) {
std::cout << ">>> 服务已停止 <<<" << std::endl;
return 0;
}
}
// #include <chrono>
// #include <cstring>
// #include <iostream>
// #include <vector>
// #include "rknn_test/dma_allocator.hpp"
// // 计时宏
// #define TICK(x) auto x##_start = std::chrono::steady_clock::now();
// #define TOCK(x) \
// auto x##_end = std::chrono::steady_clock::now(); \
// auto x##_time = \
// std::chrono::duration_cast<std::chrono::microseconds>(x##_end - x##_start).count(); \
// std::cout << #x " time: " << x##_time / 1000.0 << " ms" << std::endl;
// int main() {
// std::cout << "=== RGA DMA Buffer (Zero-Copy) Test ===" << std::endl;
// // 1. 定义尺寸
// int src_w = 1920;
// int src_h = 1080;
// int dst_w = 640;
// int dst_h = 640;
// // 2. 分配 DMA 内存 (Source)
// // 模拟摄像头输入:通常是 BGR 格式
// DmaBuffer src_mem(src_w, src_h, RK_FORMAT_BGR_888);
// if (!src_mem.isValid())
// return -1;
// // 3. 分配 DMA 内存 (Destination)
// // 模拟模型输入:通常是 RGB 格式
// DmaBuffer dst_mem(dst_w, dst_h, RK_FORMAT_RGB_888);
// if (!dst_mem.isValid())
// return -1;
// // 4. 初始化数据 (通过 CPU 映射操作 DMA 内存)
// {
// cv::Mat src_mat = src_mem.getMat();
// // 填充随机数据模拟图像
// cv::randu(src_mat, cv::Scalar(0, 0, 0), cv::Scalar(255, 255, 255));
// // 确保 CPU 写入的数据同步到物理内存 (Flush Cache)
// // librga 的 im_dma_alloc 通常分配的是 WriteCombine 或 Uncached 内存,
// // 或者在 imresize 内部会自动处理 cache但在某些场景下可能需要手动 sync。
// // 对于演示代码,我们暂时依赖 librga 内部的 cache 管理。
// }
// // 准备对比用的 CPU Mat (用于 Benchmark)
// cv::Mat cpu_src = src_mem.getMat().clone(); // 深拷贝一份用于 CPU 测试
// cv::Mat cpu_dst(dst_h, dst_w, CV_8UC3);
// std::cout << "Task: Resize " << src_w << "x" << src_h << " (BGR) -> " << dst_w << "x" << dst_h
// << " (RGB)" << std::endl;
// // --- Benchmark 1: OpenCV CPU ---
// TICK(OpenCV_CPU);
// for (int i = 0; i < 100; i++) {
// cv::Mat temp;
// cv::resize(cpu_src, temp, cv::Size(dst_w, dst_h));
// cv::cvtColor(temp, cpu_dst, cv::COLOR_BGR2RGB);
// }
// TOCK(OpenCV_CPU);
// // --- Benchmark 2: RGA DMA (Zero-Copy) ---
// // 预获取 buffer 结构体,避免计时循环里的开销 (虽然开销极小)
// rga_buffer_t rga_src = src_mem.getRgaBuffer();
// rga_buffer_t rga_dst = dst_mem.getRgaBuffer();
// // 预热
// imresize(rga_src, rga_dst);
// TICK(RGA_DMA);
// for (int i = 0; i < 100; i++) {
// // 核心调用:直接操作 FDCPU 甚至不知道发生了什么
// IM_STATUS status = imresize(rga_src, rga_dst);
// if (status != IM_STATUS_SUCCESS) {
// std::cerr << "RGA Error: " << status << std::endl;
// break;
// }
// }
// TOCK(RGA_DMA);
// // --- 验证结果 ---
// cv::Mat rga_result_mat = dst_mem.getMat(); // 获取 DMA 的 CPU 映射
// cv::Vec3b p_cpu = cpu_dst.at<cv::Vec3b>(320, 320);
// cv::Vec3b p_rga = rga_result_mat.at<cv::Vec3b>(320, 320);
// std::cout << "\n=== Verification (Center Pixel) ===" << std::endl;
// std::cout << "CPU: " << (int)p_cpu[0] << "," << (int)p_cpu[1] << "," << (int)p_cpu[2]
// << std::endl;
// std::cout << "RGA: " << (int)p_rga[0] << "," << (int)p_rga[1] << "," << (int)p_rga[2]
// << std::endl;
// return 0;
// }